发现网上对于RSA加密和签名的介绍普遍偏向于使用和概念的说明,今天想说一点不一样的.对于加解密和签名的使用及概念就不再说了,不知道的请自行百度. 签名的本质其实就是加密,但是由于签名无需还原成明文,因此可以在加密前进行哈希处理.所以签名其实就是哈希+加密,而验签就是哈希+解密+比较. 签名过程:对明文做哈希,拼接头信息,用私钥进行加密,得到签名. 验签过程:用公钥解密签名,然后去除头信息,对明文做哈希,比较2段哈希值是否相同,相同则验签成功. 附上一段java代码,可见使用解密方法可以从签名中得