区块链之数字签名

区块链之数字签名,第1张

区块链中采用对原本信息的哈希值进行加密的方式来进行签名
数字签名:签名和验证
一个消息M、其哈希摘要D

签名者通过自身的私钥Kp生成对应的签名S=F(D,Kp)
验证者通过公钥K解密S得到消息M的摘要D=F(S,K)

双方通信的时候!!!
公钥加密,私钥解密
私钥签名,公钥解密

发送方将原文密文(用接收方的公钥加密)、签名(发送方的私钥签名),发送给接收方。
接收方用自己的私匙解开密文,解密后算哈希值M1。通过发送方的公钥解开发送方签名,得到摘要M2,并且通过M1和M2进行对比,最后的摘要一致,则认为哈希值是对的。

为什么用接收方的公钥加密?
因为通过这种方式,只有接受方的私钥才能解开。
为什么要用发送方的私钥签名,不用其它人的私钥签名?
因为这种方式,才能让接收方确认这条信息是发送方发出来的。只有发送方的公钥才能解开发送方的签名。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/925235.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-16
下一篇 2022-05-16

发表评论

登录后才能评论

评论列表(0条)

保存