Transactions
簽名是如何工作的?
只是好奇,如果我將交易從一個地址發送到另一個地址,他們如何在不知道我的私鑰的情況下驗證它?
比特幣使用橢圓曲線數字簽名算法(ECDSA)。您的私鑰用於創建簽名,而您的公鑰用於驗證簽名。這允許任何人驗證您的簽名,只要他們擁有您的公鑰。
簡短的答案似乎是正確的。但更詳細的解釋說,你的比特幣數字簽名由 tx 數據的散列加密和你的私鑰的散列組成。
我不明白為什麼您的私鑰的雜湊值需要包含在數字簽名中。
請參閱以下步驟將對您有所幫助,並且肯定會起作用:
- 您創建 tx 數據的散列。然後,您使用您的私鑰對雜湊進行*簽名。*這會產生您的數字簽名。
- 然後,您通過網路傳播 tx 數據,以及您的數字簽名和驗證簽名所需的相應公鑰。
- 然後,網路上的任何人都可以使用公鑰來驗證您的簽名並恢復 tx 數據的雜湊值。
- 然後,他們自己使用您在步驟 1 中使用的相同散列函式創建 tx 數據的散列。
- 如果他們自己的 tx 數據雜湊與他們通過使用您的簽名簽名恢復的雜湊相匹配,則證明您的數字簽名中的 tx 雜湊一定是由您創建的。