Transactions

簽名是如何工作的?

  • February 8, 2018

只是好奇,如果我將交易從一個地址發送到另一個地址,他們如何在不知道我的私鑰的情況下驗證它?

比特幣使用橢圓曲線數字簽名算法(ECDSA)。您的私鑰用於創建簽名,而您的公鑰用於驗證簽名。這允許任何人驗證您的簽名,只要他們擁有您的公鑰。

更多詳細資訊:數字簽名算法橢圓曲線 DSA

簡短的答案似乎是正確的。但更詳細的解釋說,你的比特幣數字簽名由 tx 數據的散列加密和你的私鑰的散列組成。

我不明白為什麼您的私鑰的雜湊值需要包含在數字簽名中。

請參閱以下步驟將對您有所幫助,並且肯定會起作用:

  1. 您創建 tx 數據的散列。然後,您使用您的私鑰對雜湊進行*簽名。*這會產生您的數字簽名。
  2. 然後,您通過網路傳播 tx 數據,以及您的數字簽名和驗證簽名所需的相應公鑰。
  3. 然後,網路上的任何人都可以使用公鑰來驗證您的簽名並恢復 tx 數據的雜湊值。
  4. 然後,他們自己使用您在步驟 1 中使用的相同散列函式創建 tx 數據的散列。
  5. 如果他們自己的 tx 數據雜湊與他們通過使用您的簽名簽名恢復的雜湊相匹配,則證明您的數字簽名中的 tx 雜湊一定是由您創建的。

引用自:https://bitcoin.stackexchange.com/questions/18071