硬分叉后,BCH的錢包解決方案

?  上周BCH進(jìn)行了硬分叉,分叉成了兩條鏈:BCH和BCHSV,對于分叉后的BCH如何進(jìn)行交易呢?錢包是否有相關(guān)的危險因素?


  由于分叉后的兩條鏈沒做重放保護(hù),可能導(dǎo)致一條鏈上發(fā)起的交易,在另一條鏈上做重放攻擊,造成相關(guān)對象的財產(chǎn)損失(依實際攻擊場景而定)。

  在無重放保護(hù)的情況下,分離這兩種鏈上資產(chǎn)的方法,目前社區(qū)的解決方法主要有如下兩個:

1.input污染法

  原理是引入了一筆非法交易的輸出作為輸入,那么這筆非法交易的輸入將會使得這筆交易也會變?yōu)榉欠?。例如:一筆交易廣播到了BCHSV鏈中,引用了非法交易(在

BCH 合法,在 BCHSV 非法)的 UTXO 作為輸入,那么這筆交易相當(dāng)于被污染了,不會被 BCHSV

鏈承認(rèn),那么這筆交易就被重放免疫了;對應(yīng)的,一筆交易廣播到了 BCH 鏈中,引用了非法交易(在 BCHSV 合法,在 BCH 非法)的 UTXO

作為輸入,那么這筆交易相當(dāng)于被污染了,不會被 BCH 鏈承認(rèn),那么這筆交易就被重放免疫了。

2.構(gòu)造特有操作碼交易

  兩條鏈的共識是有差別的,如果出構(gòu)造一個本鏈合法,對方鏈上不合法的交易也可以進(jìn)行分離,本次分叉雙方的共識差別也體現(xiàn)在操作碼上,可以在BCH鏈中,構(gòu)造含有

OP_CHECKDATASIG 的輸出,那么該筆交易在 BCH 上是合法的,但在 BCHSV 上是不合法的;同理在 BCHSV 鏈中,構(gòu)造含有 OP_MUL

的輸出,那么該筆交易在 BCHSV 上是合法的,但在 BCH 上是不合法的。結(jié)合社區(qū)的方式及交易所相關(guān)工程實踐經(jīng)驗,我們推薦使用第 1 種 input

污染法,但這需要有分叉后的 BCH 或 BCHSV 的 coinbase 交易(創(chuàng)幣交易) UTXO 作為污染源,從這個 coinbase

交易中可以劃分大量的小額 output,在用戶提現(xiàn)時,可以將這些小額的 output 作為新交易的 input

之一來構(gòu)建提現(xiàn)交易,從而較方便地完成分離。

  另外,從工程實踐上,我們也建議充提幣的確認(rèn)數(shù)可以適當(dāng)提高,雖然目前來看兩條分叉鏈未發(fā)生明顯的攻擊情況。

  對于普通用戶來說,等著先,不著急。

  作者:慢霧安全團(tuán)隊

  千氪鏈接:https://www.kg.com/article/513691712565153792

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容