美文网首页
2048个助记词,能不能破解一下?算完让我崩溃

2048个助记词,能不能破解一下?算完让我崩溃

作者: 财神下山 | 来源:发表于2018-10-20 09:16 被阅读0次

 文:财神下山  /  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

真相竟然那么残酷,啥也不要想了,还是好好研究搬砖吧。

参考资料:《精通以太坊》,初学者,如有疏略,还请指教。

如果这篇文章对你有帮助,

就分享给朋友吧!

相关文章

  • 2048个助记词,能不能破解一下?算完让我崩溃

    文:财神下山 / ID:caishen-wdd 这是财神下山的第(6)篇简书 使用过数字钱包的人,应该都会遇到助记...

  • ETH钱包助记词、私钥、Keystore以及创建过程

    助记词 助记词拥有钱包的所有权,可以通过助记词随意转移该钱包下的资产而无需密码。助记词可以生成很多子钱包,目前大部...

  • 我居然破解了imToken钱包的助记词

    最近一直在“得到”App上学习卓克老师的密码学课,学到了不少关于密码学的知识,并且我也将所学到的和想到的一些重点和...

  • 助记词

    助记词是明文私钥的另一种表现形式, 最早是由 BIP39 提案提出, 其目的是为了帮助用户记忆复杂的私钥 (64位...

  • OH MY GOD!

    de词根含义:god;助记词:deity,de(神)+ity(状态)=》神 the词根含义:god;助记词:ath...

  • HD Wallet 系列 - 助记词与种子

    原文地址:tpkeep.com 参考 bip39 定义了助记词的生成规则 定义了由助记词导出种子的规则 定义了助记...

  • 【HD-新钱包】BIP39生成助记词

    BIP39标准定义了钱包助记词和种子生成规则。 通过九个步骤即可生成钱包助记词和种子: > 步骤 1~6 生成助记...

  • 助记词ChecksumException

    binarySearch无法对中文助记词排序,看英文文件是从a开始排序好的,中文没有规则,无法二分查找,只能看索引...

  • 221021 助记词

    电梯每下降一层,你的心脏跳动一次。一些记忆被唤醒而其余被埋藏。太久了你已经分不清是墓地选择了你还是你自己把石碑放在...

  • 24个助记词怎么保存最安全

    长期保存比特币等加密货币的小伙伴一定知道助记词的重要性:掌握了助记词也就等用掌握了财富的控制权。因此助记词一定需要...

网友评论

      本文标题:2048个助记词,能不能破解一下?算完让我崩溃

      本文链接:https://www.haomeiwen.com/subject/ggppzftx.html