ECDSA学习笔记

ECDSA是一个基于椭圆曲线的签名算法。对某个消息进行签名的目的是使接收者确认该消息是由签名者发送的,且未经过篡改。

通常用于区块链中(区块链的底层实现),但是和schnorr和BLS相比,它是非线性的

算法介绍

签名生成算法:,输入是被签名的消息的哈希和签名者的私钥

签名验证算法:,输入是和签名者的公钥

如果,则该签名是有效的,且签名的消息没有被修改。

ECDSA 的逻辑与 RSA 的逻辑有些差别。RSA 是用密钥对消息哈希加密,用公钥对解密得到消息哈希,以保证消息没有被篡改;ECDSA 并非对消息哈希进行加密解密,而是将哈希作为两个算法的输入。此外两者的原理也不同,前者是基于椭圆曲线的性质,后者则是基于大素数相乘不可分解的性质

ecdsa

https://blog.csdn.net/weixin_43867940/article/details/130258535

https://blog.csdn.net/qq_41546054/article/details/120667547

https://www.cnblogs.com/Netsharp/p/16075941.html

https://www.sekorm.com/news/73576052.html

https://www.nervos.org/zh/knowledge-base/understanding_ECDSA_(explainCKBot)

https://cloud.baidu.com/article/3164478

https://ic123.xyz/docs/getting-started/code-examples/threshold-ecdsa/

https://web3caff.com/zh/archives/66547

schnorr

https://www.cnblogs.com/lsgxeva/p/12021636.html