Yellow-Paper

黃皮書 eq 221:為什麼以及如何簽名交易的發送者等於簽名者的地址?

  • May 4, 2018

乙太坊黃皮書:請參見方程 220 和 221。

在此處輸入圖像描述

在等式 220 中,我們獲得了可以發送到網路的交易,並將通過 256 位交易 ID 進行跟踪。它最右邊的 160 位等於S(T),它被定義為交易的發送方函式S。

我的問題與方程式 221 有關,這是一個關於:的斷言:

簽名交易的發送者等於簽名者地址的斷言應該是不言而喻的

**$$ Q $$**為什麼以及如何簽名交易的發送者(S(T) on the eq. 220)等於簽名者(A(pr))的地址?是否有任何與此相關的解釋清楚的文件。

我們能否總結以下陳述:

B96...255(KEC(ECDSARECOVER(h(T),Tw,Tr,Ts))) == B96...255((KEC(ECDSAPUBKEY(pr)))

感謝您寶貴的時間和幫助。

這被稱為 ECDSA 公鑰恢復技巧,請參閱https://crypto.stackexchange.com/questions/18105/how-does-recovering-the-public-key-from-an-ecdsa-signature-work如何橢圓曲線數學作品。

乙太坊簽名具有三個參數r和。使用,和 ECDSA 方程,您有兩個候選公鑰,然後使用您可以消除歧義並準確知道哪個是簽名者的公鑰。s``v``r``s``v

一旦你有了公鑰,你就可以計算出最後 20 個字節的地址keccak256(publicKey)

引用自:https://ethereum.stackexchange.com/questions/33559