概述
1. RSA 签名验证
A和B分别具有自己的公钥和私钥。A知道自己的公私钥和B的公钥,B知道自己的公私钥和A的公钥匙。
流程如下:
A 方:
1. A利用hash算法对明文信息message进行加密得到hash(message),然后利用自己对私钥进行加密得到签名,如下
PrivateA(hash(message))=sign
2. 利用B的公钥对签名和message进行加密,如下:
PublicB(sign+message)=final
B 方:
1. 利用自己的私钥解密
PrivateB(final)=sign+message
2.利用A的公钥钥对签名进行解密
PublicA(sign)=hash(message)
3.利用与A相同对hash算法对message加密,比较与第二步是否相同。验证信息是否被篡改
一般我认为RSA加解密共有两种方案,一种是通信双方共用一套公私密钥(公钥双方共有,私钥发送者保持);一种是通信双方一人一套公私密钥(通信时互换双方的公钥,安全性比较高)。显然第一种方式安全性低一些,并且复杂度低;第二种方式安全性高,但是复杂度高。
双方公用一套公私密码,这种情况下,对明文数据进行hash,可以验证签名,但是无法比对信息,是否可以验证签名成功,就意味信息没有篡改?这里不太清楚。
流程如下:
A 方:
1. A利用hash算法对明文信息message进行加密得到hash(message),然后利用自己对私钥进行加密得到签名,如下
PrivateA(hash(message))=sign
B 方:
1.利用A的公钥钥对签名进行解密
PublicA(sign)=hash(message)
或者:
A 方:
1. A利用自己对私钥进行加密得到签名,如下
PrivateA(message)=sign
B 方:
1.利用A的公钥钥对签名进行解密
PublicA(sign)=message
2. RSA 加密解密
RSA加密解密相对简单,A用B的公钥加密,B用自己的私钥进行解密就可以
最后
以上就是陶醉鞋垫为你收集整理的RSA 加密,解密,验证签名过程1. RSA 签名验证2. RSA 加密解密的全部内容,希望文章能够帮你解决RSA 加密,解密,验证签名过程1. RSA 签名验证2. RSA 加密解密所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复