以太坊簽名從數學原理到安全應用
前言
最近審計的時候有涉及到簽名與驗簽的內容,所以想著補一下這方面的知識。但是因為簽名涉及到密碼學的內容,以及對自己的實力有著清楚的認識,所以本篇文章第一部分提供一個學習路線,第二部分是在隨著學習路線一直深入過程中的一些疑問,以及關于這些疑問的一些文章。希望對你有幫助。
技術路線
-
離散數學-群論
-
橢圓曲線
-
ECC 橢圓曲線加密算法 -> ECDSA 加密算法 -> secp256k1 簽名算法

-
Solidity 實現簽名與驗簽
-
密碼學層面的安全事件
參考文章
每篇文章所涉及的知識點,以及它能夠解答你的哪些疑問:
- 離散數學(群、環、域) - 離散數學定義
- 代數系統與群的定義;
- 群的性質與運算;
- 有限域上的橢圓曲線 - 橢圓曲線運算
- 橢圓曲線的數學定義,橢圓曲線長什么樣子;
- 在橢圓曲線上的運算在群上是如何進行的;
- 【知乎】ECC橢圓曲線加密算法:介紹 - 橢圓曲線,群論,ECC
- 橢圓曲線和群論結合起來的形式;
- 代數加法與標量積的計算過程;
- 以太坊的數字簽名算法 secp256k1 - secp256k1,RSV格式
- secp256k1 算法在以太坊上的應用情況;
- secp256k1 的返回值RSV格式與含義;
- secp256k1 的校驗;
- ECC橢圓曲線加密算法:ECDH 和 ECDSA - ECDSA 加密算法,RS
- 橢圓曲線為什么可以應用在密碼學上;
- ECDH 和 ECDSA 兩個算法的使用過程及算術推導;
- 返回值RS的含義;
- 一個數字引發的探索——ECDSA解析 - ECDSA 加密算法,V
- secp256k1 曲線中 p 值和 n 值的大小關系;
- 為什么根據簽名結果RS可以倒推出4個公鑰,而不是其他的數量;
- 返回值V的含義及作用;
- WTF Solidity極簡入門: 37. 數字簽名 Signature - Solidity 實現簽名與驗簽
- 以太坊上信息簽名與交易簽名的區別;
- 簽名與驗簽在solidity上的實現;
- 簽名在實際場景的使用案例;
- 利用隨機數沖突的ECDSA簽名恢復以太坊私鑰 - 安全漏洞實踐
- 使用相同隨機數如何導致漏洞;
- 私鑰推導過程;

浙公網安備 33010602011771號