假设现在有个大哥钱包里有 100 个比特币(大概价值一千万美元),但他把私钥丢了。理论上说,这些比特币还在链上,只要有人"碰巧"生成了同样的私钥或地址,就能把钱拿走。
那么问题来了:我能不能写个程序,疯狂生成随机地址,碰碰运气,说不定就撞到一个有钱的地址了呢?
想象一下:
这就是区块链的"地址碰撞"——随机生成地址,期望碰撞到一个有余额的地址。
简化版流程:
1. 生成一个随机数(私钥)
2. 用数学公式算出公钥
3. 对公钥做哈希,得到地址
就这么简单!一个地址就出来了。

新建一个文件「 create-wallet.js 」:


输出类似:

就这样!你已经生成了一个钱包地址。