文:财神下山 / ID:caishen-wdd
这是财神下山的第(6)篇简书
使用过数字钱包的人,应该都会遇到助记词,用一句话来解释助记词就是:它是私钥的明文显示。
意如其名,帮助你记忆私钥的单词。因为,一串长长的字符总没有几个单词好记忆。
在写完《比特币里的私钥,公钥,地址是如何产生的?》文章后,其实财神还是有点迷惑的,就是当时在写助记词的时候,只是顺带一句话,并不知道它的真实产生过程。
好在,最近又看了精通以太坊这本书的介绍。
回顾一下私钥空间,比特币,以太坊的私人密钥空间的大小(2^256)是一个难以置信的大数目。十进制大约是10^77。可见宇宙估计含有10^80原子。
要从这么大的空间里找到一个私钥,它刚好是V神的钱包,这概率……比大海捞针,而且是不能借助任何工具,还难。
后来,财神了解到,所有的助记词字典,其实只有2048个单词。
通过下面这个连接就可以访问:
https://github.com/bitcoin/bips/blob/master/bip-0039/english.txt
今天,学一学助记词是怎么计算出来的。
教学开始!
生成助记词
1. 先从熵开始,熵的长度是32的整数倍,分别为 128, 160, 192, 224, 256,也就是我们私钥的长度。
2. 熵的长度再加上校验和的长度。为熵的长度/32 位, 所以校验和长度可为 4,5,6,7,8 位;
3. 一共有2048个助记词,用二进制表示的话需要11位。 2的11次方等于2048。所以,上面助记词的个数分别是12,15,18,21,24。
例如: 128位的熵,加上 4位校验和,等于132位长度的二进制,每11个切割成一组,那需要12组。
(128+4)/11 =12, 也即128长度的熵需要12个助记词
(256+8)/11 =24, 也即256长度的熵需要24个助记词
画张流程图就是
每个单词有唯一一个码,好了,上面就是助记词生成的整个过程。
12个助记词安全吗?
我们的钱包只有12-24个单词,从表面看上去,假如全球用户的所有帐户加起来有10亿个钱包,那我从2048个字典里随机挑出12个单词,这个好像有机会瞎猫碰到死耗子一样,再不行,我拿计算机一直尝试12个单词的随机组合,然后看看是不是一个钱包的私钥……
哈哈……哈哈……
直到财神求值了一下……不算不知道,一算吓我一跳。
下面分别是2个单词 到 24个单词的随机组合个数,到第4个单词时已经17万亿了,再往上就不知道怎么读了。
4194304
8589934592
17592186044416
36028797018963968
73786976294838206464
151115727451828646838272
309485009821345068724781056
633825300114114700748351602688
1298074214633706907132624082305024
2658455991569831745807614120560689152
5444517870735015415413993718908291383296 (已经40位数了,除以10亿,还有31位)
继续13个单词
11150372599265311570767859136324180752990208
22835963083295358096932575511191922182123945984
46768052394588893382517914646921056628989841375232
95780971304118053647396689196894323976171195136475136
196159429230833773869868419475239575503198607639501078528
401734511064747568885490523085290650630550748445698208825344
822752278660603021077484591278675252491367932816789931674304512
1684996666696914987166688442938726917102321526408785780068975640576
3450873173395281893717377931138512726225554486085193277581262111899648
7067388259113537318333190002971674063309935587502475832486424805170479104
14474011154664524427946373126085988481658748083205070504932198000989141204992
29642774844752946028434172162224104410437116074403984394101141506025761187823616
真相竟然那么残酷,啥也不要想了,还是好好研究搬砖吧。
参考资料:《精通以太坊》,初学者,如有疏略,还请指教。
如果这篇文章对你有帮助,
就分享给朋友吧!