Wallet

輕量級錢包如何確定 0-conf 交易的有效性?

  • January 15, 2019

我發現很多人對 0 確認付款的安全性感興趣。但是,似乎大多數討論都集中在雙花上(例如廣播兩個或多個衝突但有效的交易,或 Finney 攻擊),而不是交易的有效性。接受 0-conf 的商家是否必須執行自己的完整節點,或信任其他人(如公共區塊瀏覽器服務)來驗證交易?在這種 0-conf 場景下,輕量級錢包是否具有與全節點相同的安全性?

零確認交易很容易被另一個花費相同 UTXO 的簽名交易雙花,但費用任意高,從而獲得更高的先被探勘的可能性,從而使原始交易無效。

商家仍然需要一個全節點來接受記憶體池的新交易,因為它需要驗證它看到的每筆新交易。

輕量級錢包不具備與全節點相同的安全性,因為它依賴於驗證累積的 POW,而不是實際的交易有效性。假設是累積 POW 最多的鏈必須是有效的。

但是,似乎大多數討論都集中在雙花上(例如廣播兩個或多個衝突但有效的交易,或 Finney 攻擊),而不是交易的有效性。

這是因為在考慮是否已付款時,交易是否“有效”是無關緊要的。重要的是交易在區塊鏈記錄中得到確認。即使是一次確認也可能不夠,因此等待多次確認將意味著永久確認付款的可能性更高。

顯然,無效交易是不好的,但也不能保證有效但未經確認的交易最終會被包含在區塊鏈中。

這並不是說您永遠不應該接受 0-conf 付款。也許您經營的服務中,雙花支付的風險與您的賺錢方式無關緊要。如果客戶行為不端,您將其切斷,這就是它的結束。您沒有重大損失。

但是如果你的工作是賣非常昂貴的火箭飛船,你可能應該等待幾次確認,然後才能讓你的客戶起飛,以防他們惡意重複支付給你的款項,並免費獲得一艘甜蜜的新火箭飛船.

在這種 0-conf 場景下,輕量級錢包是否具有與全節點相同的安全性?

我認為您列出的攻擊經常被提及的原因是因為更重要的一點是**“0-conf”事務本質上是不安全的**,而這些攻擊就是造成這種情況的原因。你的錢包/節點是否可以確認交易的有效性並不重要。

但是為了更直接地回答你的問題,我認為輕量級錢包將很難確定交易是否有效,而不僅僅是在本地驗證所有數據本身。

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