Transactions

具有相同雜湊的兩個交易如何導致雙花

  • March 30, 2018

讓我們考慮以下情況:

  1. 供應商擁有地址X
  2. 對手使用雜湊YX發送交易**T1並從供應商處接收產品。
  3. 對手將交易T2發送到他擁有的具有相同雜湊 Y 的地址到其他節點。
  4. 供應商收到的交易T2與**T1具有相同的雜湊值,因此從他的角度來看,這是同一筆交易。他忽略了它。
  5. 其他節點在T2之後收到交易T1 ,因此它們忽略T1
  6. 交易T2被發送到多數,因此T2將包含在下一個塊中的機率高於包含T1的機率。
  7. 根據機率,交易T2被包含在下一個區塊中。

這種雙花場景正確嗎?

您試圖想像的場景幾乎是正確的。

關鍵是“攻擊者”將從他的地址 X 到“供應商”地址 Y 的相同未使用輸出生成兩個相同的交易。他將同時生成 T1 和 T2,從同一來源獲取資金發送,但他將為每筆交易附加不同的費用。當然,這兩項交易中的一項將收取更高的費用。

費用較高的交易(即“攻擊者”發送回他擁有的地址的 tx,如您所說的 T2)將是網路接受的交易。T1 將被拒絕,因為它來自與 T2 相同的未使用輸出,但它的費用較低,所以一段時間後它會被比特幣網路的記憶體池修剪。

總之,偽雙花,這是一個費用問題,而不是 tx 時間戳。

希望這有幫助。

因為交易 T2 有不同的內容(地址對手擁有而不是地址供應商擁有),它會有不同的雜湊。

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