Transaction-Verification

攻擊者可以使用修改後的比特幣節點將虛假交易傳遞到記憶體池嗎?

  • April 24, 2018

惡意攻擊者是否有可能下載比特幣軟體程式碼、修改該程式碼並使用該軟體為自己謀取利益?我知道在比特幣軟體中實現的任何更改都必須被比特幣網路中的大多數節點接受。但是,在這裡,請考慮惡意攻擊者不需要其他使用者使用比特幣軟體的修改版本。

這是一個例子,假設 B 是一個惡意礦工。他想修改交易的驗證條件(20條規則)。然後,他編輯比特幣軟體的程式碼,為交易設置自己的驗證規則,這樣他就可以繞過從他的同夥到記憶體池的所有無效交易。可能嗎?

[礦工] 編輯比特幣軟體的程式碼,設置自己的交易驗證規則,這樣他就可以繞過從他的同夥到記憶體池的所有無效交易。可能嗎?

是和不是。

是的,完全可以修改程式碼以包含您想要的任何類型的交易驗證規則。

不,您不能使用它來欺騙網路的其餘部分接受您的無效交易。您的節點將被網路中的其他節點禁止,因為它不遵守網路規則。該網路由數千個單獨節點的連接形成,這些節點都遵循相同的規則。如果一個節點違反了這些規則,那麼網路的其餘部分將簡單地忽略它們。

通過更改驗證/共識規則,您將有效地創建一個新的山寨幣網路。

雖然攻擊者可以以任何他們喜歡的方式修改他們的軟體,但攻擊者只會傷害自己。完整節點因其“完全獨立執行比特幣的所有共識規則”的特性而被命名。每個完整節點都維護自己的記憶體池。由於您建議的“虛假交易”顯然不符合共識規則,因此每個其他節點都會簡單地拒絕該交易為無效,然後禁止將其轉發給他們的節點。

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