這是財神下山的第(6)篇
使用過數字錢包的人,應該都會遇到助記詞,用壹句話來解釋助記詞就是: 它是私鑰的明文顯示。
意如其名,幫助妳記憶私鑰的單詞。因為,壹串長長的字符總沒有幾個單詞好記憶。
在寫完《比特幣裏的私鑰,公鑰,地址是如何產生的?》文章後,其實財神還是有點迷惑的,就是當時在寫助記詞的時候,只是順帶壹句話,並不知道它的真實產生過程。
好在,最近又看了精通以太坊這本書的介紹。
回顧壹下私鑰空間,比特幣,以太坊的私人密鑰空間的大小(2^256)是壹個難以置信的大數目。十進制大約是10^77。可見宇宙估計含有10^80原子。
要從這麽大的空間裏找到壹個私鑰,它剛好是V神的錢包,這概率……比大海撈針,而且是不能借助任何工具,還難。
後來,財神了解到,所有的助記詞字典,其實只有2048個單詞。
通過下面這個連接就可以訪問:
/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
真相竟然那麽殘酷,啥也不要想了,還是好好研究搬磚吧。
參考資料: 《精通以太坊》,初學者,如有疏略,還請指教。
如果這篇文章對妳有幫助,
就分享給朋友吧!