Author

Topic: 【硬分叉】如何防范重放攻击 (Read 284 times)

member
Activity: 88
Merit: 10
May 20, 2017, 05:55:58 PM
#2
无聊的话题
full member
Activity: 162
Merit: 100
硬分叉后,如何愉快的在两条链发交易而不怕重放攻击,我想这是小白们最关心的问题
假设在硬分叉前,你的币都在A地址,分叉后,可以用以下步骤防止重放攻击

1. 先去BU链,把你的A地址币发到B地址,这是交易TU(当然这个B地址也是属于你的,也就是有拥有B的私钥)
2. 等待发到B地址的交易在BU链得到确认后,再去CORE链,把A地址的币发到地址C(这也是你的私人地址),这次交易费一定设置的比发到B地址的交易高

如果TU这交易被重放到CORE链,而TU先在CORE被确认,那么等BU链也确认了TU,这时候把B当成A,把前面那两个步骤重来就可以了。

这个做法背后的理由是BU链是大区块而且拥有绝大部分算力,因此BU链你可以用比较小交易费就能把发到B交易给确认了。假设BU链的最佳手续费是FU,而CORE的最佳手续费是FC,那么FC必定远远大于FU。那么你在BU链发到地址B的交易TU就算被重放到CORE链,大多数情况之下,BU链会先于CORE确认这个交易。然后,你再去CORE链发交易把地址A发到地址C,只要你给手续费大于FU,那么这个新交易肯定会先于TU(被重放攻击的交易)被确认。

成功做完以上两个步骤,你在BU链会有专属的地址B和CORE链专属的地址C,之后任意一个链发交易都不怕重放攻击了。
Jump to: