您的位置:

java签名,java签名验签

本文目录一览:

java中签名是什么意思

签名一般是使用公私密钥对。自己使用私钥加密,其他人可以任意获取到公钥用来解密,既然解出来了,就说明是私钥加密的。 用私钥加密的过程叫做签名。

当然实际过程没这么简单,还包括,找个合适的第三方再次签名公钥已证明公钥的安全性等。不过只要知道上面的东西基本就可以了。

Java里边的签名是神马意思?

签名是对外发布的内容里带了一段密文,用户接收到以后可以解密,然后证明这段内容的确是你的。就像你签字授权一样,从笔迹说明这是你。

签名也有可能伪造,但是难度比较大,是加密的手段之一。

JAVA中 什么是方法签名

其实对于同名不同类、同类不同名的方法,方法签名的意义并不是很大,但是对于重载方法来说,方法签名的意义就十分巨大了。由于重载方法之间的方法名是相同的,那么我们势必要从构成方法的其他几个要素中找到另一个要素与方法名组成能够唯一标示方法的签名,方法体当然不予考虑。那么就是形参列表和返回值了,但是由于对于调用方法的人来说,方法的形参数据类型列表的重要程度要远远高于返回值,所以方法签名就由方法名+形参列表构成,也就是说,方法名和形参数据类型列表可以唯一的确定一个方法,与方法的返回值一点关系都没有,这是判断重载重要依据,所以,以下的代码是不允许的。

public long aaaa(){

}

public int aaaa(){

}

接下来,就来解释一下,当程序出现NoSuchMethodException时,JVM为我们提供的异常信息究竟是什么意思。首先我们先看几个方法以及他们的方法签名:

public void test1(){} test1()V

public void test2(String str) test2(Ljava/lang/String;)V

public int test3(){} test3()I

从以上三个例子,我们就可以很简单的看出一些小小的规律:

JVM为我们提供的方法签名实际上是由方法名(上文的例子为了简单没有写出全类名)、形参列表、返回值三部分构成的,基本形式就是:

全类名.方法名(形参数据类型列表)返回值数据类型

我们知道了JVM提供的方法签名的结构之后还是不够,因为JVM是并没有特别明确的将数据类型写出来,而是提供了特殊的表示法,下表就是对特殊表示字符、字母与对应数据类型的关系:

Java方法签名中特殊字符/字母含义

特殊字符 数据类型 特殊说明

V void 一般用于表示方法的返回值

Z boolean

B byte

C char

S short

I int

J long

F float

D double

[ 数组 以[开头,配合其他的特殊字符,表示对应数据类型的数组,几个[表示几维数组

L全类名; 引用类型 以L开头、;结尾,中间是引用类型的全类名