区块链技术之数字签名的简单Python代码实现

本文通过Python代码展示了如何实现区块链中的数字签名过程,包括消息哈希、私钥加密和解密验证,确保消息的完整性和来源真实性。通过随机选择素数生成公钥和私钥,使用SHA256进行哈希计算,实现加密和解密操作。
摘要由CSDN通过智能技术生成


假设你要发送一段消息,首先对这段消息进行hash变化(这张图用的是MD‘Message Digest Algorithm 消息摘要算法’方法,代码中用的是sha256 'Secure Hash Algorithm' 方法),以形成摘要,然后对摘要用私匙进行加密,形成数字签名。

最后将   消息+数字签名    一起发出去 



接受方进行三个操作,一是对收到的数字签名进行解密,还原出摘要A,二是对收到的消息(也就是报文)进行hash变化,三是比对两个结果,如果一致就说明消息确认是某某所发,并且没有任何的篡改!



我参考了别人的代码,稍微进行了一点修改,在Spyder上运行良好:

下面是具体的Python代码实现:

# -*- coding: utf-8 -*-




"""


This is the answer to the homework of

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值