现在我们经常在区块链中看到数字签名这一术语是非常常见的。在发送交易时,无论是比特币、Ethereum、Hyperledger Fabric还是任何其他平台,都在使用数字签名进行签名和验证。
区块链中的数字签名
ECDSA算法
从A点到B点在椭圆曲线上的切线
根据wiki ECDSA为:
椭圆曲线密码体制是一种基于有限域椭圆曲线代数结构的公钥密码体制。与非对称密码学相比,ECC需要更小的密钥来提供同等的安全性。椭圆曲线适用于密钥协议、数字签名、伪随机发生器等任务。通过将密钥协议与对称加密方案相结合,它们可以间接用于加密。它们也被用于一些基于椭圆曲线的整数分解算法中,这些算法在密码学中有广泛的应用,例如Lenstra椭圆曲线分解。
简单来说,ECDSA算法可以使用公钥密码学方法生成公钥/私钥集合,用于签名和验证签名。让我们看看公钥密码学是什么样子的。
公钥和私钥由加密算法生成,如RSA,ECDSA。发件人通过收件人公钥加密邮件并发送。在另一端,收件人通过自己的私钥解密消息并获取消息。
现在回过头来看看ECDSA,利用椭圆曲线在给定的源点G上画切线,生成密钥。p是一个具有很大值的有限模。
椭圆曲线上的切线
椭圆曲线上的切线定义为
Y²mod p=(x³+7)mod p
G:来源点
p:为椭圆曲线定义范围。
生成数字签名的私钥和公钥:
从一个随机生成的数字为dA的私钥开始,我们将它乘以曲线上的一个预定点,称为生成点G,在曲线的另一个地方产生另一个点,也就是对应的公钥Qa。生成点被指定为secp256k1标准的一部分,对所有键都是相同的。
从私钥dA生成公钥Qa
使用ECDSA算法生成数字签名

利用私钥dA生成签名
验证签名
验证是签名生成函数的逆值,使用R、S值和公钥计算一个值P,这是椭圆曲线上的一个点(创建签名时使用的临时公钥P)。

总结
数字签名可以使用自己的私钥签名,并且可以使用公钥独立进行验证。公开签名在任何情况下都不会导致获取用户的私钥。因此,ECDSA算法在保证私钥安全的同时生成签名。

相关热词:#区块链
为什么需要MOSFET栅极电阻?MOSFET栅极电阻...
时间:2026-03-05
NTC/PTC/CTR热敏电阻是什么?热敏电阻的使用...
时间:2026-03-05
解析单电阻采样的原理以及注意点
时间:2026-03-05
共源极放大器的设计方法
时间:2026-03-05
关于STM32WL LSE 添加反馈电阻后无法起振的...
时间:2026-03-05
如何直观地判断两级放大器的零点位置呢?
时间:2026-03-05
时序分析基本概念介绍<wire load model&...
时间:2026-03-05
电子元器件解析—电阻
时间:2026-03-05
3PEAK高压零漂放大器契合精密应用
时间:2026-03-05
助力绿色5G数字式电流和功率监测芯片-TPA62...
时间:2026-03-05
未来什么技术占主流?会是区块链吗?
时间:2026-03-05
浅谈区块链下的智能合约
时间:2026-03-05
浅显易懂地揭开.Net生态系统的神秘面纱!
时间:2026-03-05
对技术的执着和美的追求变成了程序员的“诗...
时间:2026-03-05
什么是区块链技术_区块链技术解析
时间:2026-03-05
脑洞大开:玻璃窗也能发电?
时间:2026-03-05
如何布置无人值守变电站?
时间:2026-03-05
SCADA系统懂多少?
时间:2026-03-05
灰尘对光伏电站效率影响究竟多大
时间:2026-03-05
一种基于Agent的智能电网集成优化控制策略
时间:2026-03-05