66

重放攻击原理和防范措施——如何安全分离BCH的分裂币

 5 years ago
source link: http://100000p.com/article/2c9f60ef671dca6d016722bde9130019?amp%3Butm_medium=referral
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

第0章引言

即将面临的比特币分裂,如何保证你的币在分裂后肯定留下两种币?一个重点要防范的风险就是重放攻击。

第1章重放攻击原理

首先讲明白, 重放攻击其实根本就不是攻击。目前币圈流传的各种关于重放攻击的言论有点过于危言耸听了

重放攻击,这里的“攻击”根本就不是别人对你发起的某种侵略或偷盗行为。而是因为比特币区块链分裂后的两个分支链,都有相同的地址、私钥和交易格式。你在分裂点前的币,自动会被分裂后的两条链都承认。如果你使用分裂点前的币发起一笔交易,在两条链上这笔交易都会有效。这就是显得你发了两笔交易,这里的另外一笔,就是“重放”。

我打个比方来解释这个,在国军退守台湾后,蒋公将大陆的很多机构都照样在台湾复制了一遍。比如在台湾也建了清华大学。而在大陆的北京,也是有一个清华大学。

如果你在美国给清华大学写一封信,就是用纸,让邮递员送的那种信。但收件地址上只写了“中国清华大学XXX收”

这个收件地址即可以解读为是北京的清华大学,也可以解读为台湾的清华大学。这下邮递员麻烦了,他干脆将你的信复印一遍,送到两个大学去。

这就是重放攻击。因为本来你只想寄给台湾的清华大学,但现在却被重放到了北京的清华大学。

所谓的防范重放攻击,就是想办法让你发的交易,只在一条链上有效,在另一条链上无效。从而可以避免“重放”。第2章  领取分裂币

BCH分裂前用户需要注意的最重要的知识点有两个, 第一个是掌握私钥。第二个是做好重防保护。

不过我们还是要面对现实,比特币确实很难用,对很多用户来说,可能真的搞不清楚私钥是个啥玩意。第一推荐真的自己去搞清楚来,如果实在是搞不清楚,那就存放在讲信用的交易所吧。

分裂后,用户如何领取分裂币呢?

领取分裂币的过程其实非常简单,只要用户将私钥导入到分裂币钱包,就完成了领取。

分裂后, 第一步需要做的就是确认你有多少分裂币。 这个一般使用区块链浏览器就可以查询的到。一般一个区块链币诞生后,一定会有一个区块链浏览器的,你只需要将你分裂前的收币地址复制到区块链浏览器去查看一下,就可以知道自己有多少分裂币了。

现在Bitcoin abc是有区块浏览器的

https://bch.btc.com

Bitcoin sv暂时还没有找到可用的区块浏览器。

第二步是安装分裂后的钱包。分裂后,去下载最新的钱包。一般来说下载一个开发者做的完整节点钱包是最为安全的。但因为要下载整个区块链,所以也是最麻烦的。只要你知道如何导出和导入私钥,使用SPV轻钱包也是一样的,安全性上也是足够的。

bitcoin abc在这里下载钱包:

https://download.bitcoinabc.org/0.18.4/

bitcoin sv在这里下载钱包,目前没有windows版本的

https://github.com/bitcoin-sv/bitcoin-sv/releases

鉴于目前生态比较混乱,不建议使用轻钱包。

第三步就是导入私钥进钱包。

如果用户使用的是完整节点做钱包,比特币都保护在wallet.dat文件里。当分裂后,用户只需要重新下载分裂币的完整节点钱包,并且将wallet.dat文件导入进去就可以完成分裂币的领取了。

如果用户使用的是轻钱包,则需要你想办法将原来的私钥明文导出,并导入到分裂币的轻钱包中。但鉴于目前生态比较混乱,不建议使用轻钱包。

请注意,上述领取分裂币的过程根本就没有发生任何的发币过程。第3章 用户主动设计防重放保护

1.在分裂前,请将自己的币存在自己控制私钥的地址上。

2.为了保险起见,建议一定要存一个只有小余额(比如0.01BCH)的地址,这个地址里的币就是用来测试用的。

3.分裂后,下载新的分裂后的两个BCH钱包,将私钥导入到BCH钱包。

4.分裂后,等一天,到矿池(如果交易所提供提现,就从交易所买)买0.011BCH-abc,和0.012BCH-sv,都往你的地址上发,发就对了。注意一定要带不一样的小数尾数。

这一步需要强调一下,为什么要等一天?因为比特币的区块奖励成熟度是100个区块,即比特币挖矿的Coinbase奖励在100个区块后才能花。这里说的从交易所里买币,最根本有效的应该是从矿池买分裂后100个区块的发出来的coinbase币。因为分裂后的coinbase币绝对是只可能在一条链上有效,在另一条链上是无效的。但为什么我们觉得从交易所买币也可能有用呢?是因为绝大多数交易所都会做好币的防重放保护,否则他们不敢打开提现功能。

5.然后你将你的钱包同步区块,你就会发现,在BCH-abc钱包只能收到0.011BCH,而BCH-sv钱包只能收到0.012BCH。这两笔交易是不能被重放的,因为它们是来自分裂后的区块。这样你的币就被污染了,就不可能被重放了。

6.将你污染的币,全部(注意一定是全部)发到另一个你自己控制私钥的地址上。这样操作,哪怕是这笔交易被重放了,因为目标地址的私钥是你自己控制的,所以哪怕是被重放也是重放到你自己的地址上。

7.记得先使用你分裂前做好的0.01BCH的那个钱包来完成测试。然后再将你的大额钱包做分离。

最后,放轻松。重放不是攻击,没多大事,只要小心一点,就OK。

4 章 分叉知识

下面是广告。我写了一个详细的分叉知识教程,系统性讲解区块链分叉,

请点击左下角“阅读原文”获取购买链接,或者直接长按下面的二维码购买。—–区块链分叉详解—–

bQ73Ani.png!web

—–区块链分叉详解—–第 5 章 结束语

无论怎么样,现在bch是最受人瞩目的了。

我开了一个周边产品的网店求捧场

iEBvIrE.jpg!web

(欢迎加我微信号:HSL13116885 加入我的知识星球) 7BnAzmr.jpg!web

NbIj22i.jpg!web

另请阅读: 吃瓜群众围观BCH算力大战指南 上一篇: 系统性讲解区块链分叉——这里有你要的分叉的完整知识


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK