`

公钥加密私钥解密&私钥加密公钥解密

    博客分类:
  • JAVA
阅读更多

公钥加密体制


1、公钥加密体制用于保密性时,就是公钥加密,私钥解密。 因为公钥是可以公开了, 那么任何人都可以使用公钥对信息进行加密,但是只有持有私钥的人才能正确解密。这样就保证了信息的保密性,因为只有私钥持有者才能正确解密。
2、公钥加密体制用于认证性时,比如数字签名,即私钥持有者对信息进行签名,验证者可以根据公开的公钥进行验证签名是否正确和有效,即实现了认证性,以及不可抵赖性。

 

先明确一下概念:
公钥加密私钥解密,也可以说是 "公共密钥加密系统 "
私钥加密公钥解密,一般不这么说,应叫 "私钥签名,公钥验证 ",也可以说是“公共密钥签名系统”

再来说一下 "公共密钥签名系统 "目的:(如果晕就多看几遍,这个没搞清,后面的代码就更晕)

A欲传(信息)给B,但又怕B不确信该信息是A发的。
1.A选计算(信息)的HASH值,如用MD5方式计算,得到:[MD5(信息)]
2.然后用自已的私钥加密HASH值,得到:[私钥(MD5(信息))]
3.最后将信息与密文一起传给B:传给B:[(信息)   +   私钥(MD5(信息))]

B接到   :[(信息)   +   私钥(MD5(信息))]
1.先用相同的HASH算法算出(信息)的HASH值,这里也使用MD5方式  
得到:   [MD5(信息)!]
2.   再用A的公钥解密   [   私钥(MD5(信息))]
      [公钥(私钥(MD5(信息)))]   =   [(MD5(信息)]
      如能解开,证明该   [   私钥(MD5(信息))]是A发送的
3.再比效[MD5(信息)!]与[(MD5(信息)]
      如果相同,表示(信息)在传递过程中没有被他人修改过

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics