—
撰文|?Cobo金库大掌柜
相信所有用过“去中心化钱包”的同学对助记词都不陌生。
不管是硬件钱包还是软件钱包,创建钱包都有两种方式:
创建助记词:钱包随机生成一组助记词,用户需要抄写备份
导入助记词:用户导入一套已有的助记词到钱包内恢复资产
那助记词又是如何变成我们的主私钥,进而用HD的方式生成所有子私钥的呢?
其实很简单。一套助记词,经过2048轮的HMAC-SHA512算法的狂虐,生成一个主私钥,进而派生出一套HD钱包。
所以,助记词和主私钥是一一对应的关系,一套助记词对应一个主私钥,也就是对应一个HD钱包。
大家这里有没有想过一个很恐怖的问题:
比方说这是掌柜手里的12个助记词:
cattonightsadnesswalnutfancaptainsureassumegorillacautionstorypull?方便起见,我们称这套词为
但是,当掌柜把导入钱包的时候,第一个词手抖输入成了dog,于是助记词变成了:
dogtonightsadnesswalnutfancaptainsureassumegorillacautionstorypull方便起见,我们称这套词为
这时候就是悲剧的开始。
作为一名纯24K囤币党,掌柜千辛万苦省吃俭用,把所有信仰都充值到了下的地址上。
以太坊基金会现任EIP Editor与William将参与Timely与ETHDenver联合举办的时间NFT公益拍卖:2月27日消息,以太坊基金会现任EIP Editor Victor Zhou 与 ERC721(NFT)协议第一作者 William 将参与支持 Timely 与 ETHDenver 联合举办的 Donate 1 Hour 时间NFT公益拍卖活动。竞拍获得者将有机会与对应时间NFT捐赠者一对一线上交流。本次活动所获得资金将全部捐赠至ETHDenver Scholarship以帮助更多Builder能获得资助。
据悉,Victor Zhou为现任EIP Editor六人之一,也是以太坊社区第一位华人EIP Editor。EIP Editor负责审核所有提交ETH社区EIP协议,对以太坊社区生态发展至关重要。Victor Zhou也是ERC1202,ERC5750等协议作者,为以太坊DAO投票治理相关协议作出过重大贡献。William是 ERC721 第一作者,打开了加密世界的 NFT 大门。William对区块链的见解独到,对全球社会,历史,经济制度等也有深刻思考。[2023/2/27 12:31:42]
然后有一天,可能因为手机或者硬件钱包坏了,也可能是又手抖删除了钱包App,总之种种原因,导致需要拿出助记词才能恢复资产。
此时,掌柜掏出了那套尘封已久的,将它导入了钱包。
前面已经提过,一套助记词跟一个HD钱包是一一对应的。此时用恢复得到的地址,跟的地址是不一样的。也就是说,下,没有任何资产。
因为误输入了一个助记词dog,掌柜的所有资产和信仰,全丢了。
Dora Factory正在Substrate上实现MolochDAO:根据Web3 Foundation GitHub公开信息,Dora Factory开发者社区正在进行将MolochDAO迁移至Substrate的工作(Pull Request #393)。这项工作包含对MolochDAO V1和MolochDAO V2的Pallet实现。此前,Dora Factory已经完成基于Substrate的二次方资助Pallet模块开发,并已将此Pallet前端整合至开发者平台HackerLink。[2021/5/4 21:21:47]
是不是很恐怖?
其实机智的比特币开发者早就想到了这一切。他们定义了助记词的标准协议,会对所有助记词有效与否,进行校验。
在讲“校验原理”之前,掌柜先普及一个关于助记词的基础知识。
BIP39?定义了助记词的标准,标准内含有一份2048个词的词表。所有钱包只要遵循BIP39,生成的助记词都是从这个2048个词的词表中获得的,的所有词也不例外。
2048词表的每个单词我们都标上序号,从“0”到“2047”。最大的序号“2047”用二进制表示刚好是11位“11111111111”。所以词表里的每一个词,我们都可以根据它的序号对应一个11位的二进制数。对于转换二进制后不满11位的,我们在它的二进制数前面补“0”,直至满足11位。
比如cat是第287个词,序列号为“286”,其对应的11位二进制数就是“100011110”,我们补足11位,将其表示为“00100011110”。
ZG.COM于12月22日16:00上线杠杆代币ETHUP、ETHDOWN:据ZG.COM官方公告,ZG.COM将于2020年12月22日16:00上线杠杆代币ETF交易——ETHUP(做多ETH)、ETHDOWN(做空ETH),并开通ETHUP/USDT、ETHDOWN/USDT交易市场。
据悉,ZG.COM杠杆代币是由ZG.COM发行的一种带有杠杆功能的代币(非链上代币),该杠杆代币具有浮动杠杆、智能调仓机制、低费率等特点,并且每个杠杆代币的背后都对应了一篮子的ZG.COM合约持仓,杠杆代币价格将跟踪ZG.COM合约市场的价格变化,并随之产生杠杆水平的涨跌。目前已上线BTCUP/USDT、BTCDOWN/USDT交易市场。[2020/12/22 16:04:07]
接下来我们看看具体的
“校验”步骤:
第一步:我们按照上面的方法,根据2048词表找到12个词对应的11位二进制数。
第二步:我们把这12个词对应的11位二进制数串在一起,
HDAO 主席:将NFTs融入到DeFi环境是全球金融包容性的完美结合:9月29日晚8点,达尔文网络CMO Bree做客 HDAO中文社区,与社区成员及HDAO 主席Ben Leff共同探讨近期DeFi行业的发展,以及NFT流动性挖矿的实施等话题。
Bree表示,NFT 发展的难点其实还是生态应用,达尔文去中心化桥接技术主要应用于DeFi,NFT和blockchain game。
HDAO主席Ben Leff表示, NFTs代表了区-块-链最伟大的用例之一,拥有具有数字代币的物理物品的能力是又一场创新。NFTs在美国变得很火爆,名人创建的NFTs包罗一切,从音乐、视频到从未见过的照片。这些NFTs非常罕见,因此非常有价值。最重要的是要记住,NNFT是一件物品的数字呈现,它可以很容易地转交到世界各地的任何人,有价值,并且可以在任何时候在公开市场上出售。将NFTs融入到DeFi环境是全球金融包容性的完美结合,它通过NFT为人们提供具有实际价值的东西。HyperDAO的目标就是要为这种成功的组合提供解决方案。[2020/9/29]
得到一个132位的二进制数:
001000111101110010010010111101111111101101100101001011000100010001110110100000000110111101100100101001001001011101011010010101101010
第三步:我们把这个132位的二进制数拆成两部分,左边的128位,以及右边的4位。
左边128位:00100011110111001001001011110111111110110110010100101100010001000111011010000000011011110110010010100100100101110101101001010110右边4位:1010
BHD日内最高上涨约13.75%:据火币全球站显示,目前比特硬币BHD上涨13.75%,当前报价39.4元/枚,24小时成价额2.02亿。比特硬币BHD是新一代基于POC容量证明的硬盘挖矿货币,硬盘挖矿天然具有低能耗、绿色环保、抗ASIC的特性,目前BHD全网算力已经超过1000PB,全网矿机设备价值超2.5亿元人民币。[2020/4/16]
第四步:我们开始校验这套助记词的有效性。
判断有效性的原理:左边128位二进制数的SHA256的结果的前4位,必须等于右边的4位二进制数。
我们验算一下的结果。
把左边128位二进制数放进一个在线SHA256计算器
可以看到,SHA256的结果的前4位,正好就是132位二进制数的右边4位“1010”。
这就说明,通过了校验,是一套有效助记词,然后就能进入后面的主私钥生成流程。
那我们马上来做个练习,看看输错一个单词的能否通过校验:
第一步:12个词对应词表的11位二进制数如下:
第二步:把这12个词对应的11位二进制数串在一起,得到一个132位的二进制数:
010000001001110010010010111101111111101101100101001011000100010001110110100000000110111101100100101001001001011101011010010101101010
第三步:把这个132位的二进制数拆成两部分,左边的128位,以及右边的4位:
左边128位:01000000100111001001001011110111111110110110010100101100010001000111011010000000011011110110010010100100100101110101101001010110右边4位:1010
第四步:把左边128位二进制数放进SHA256计算器。
可以看到,SHA256的结果的前4位是“0010”,与132位二进制数的右边4位“1010”不一致。
这样,这组就无法通过校验,符合标准BIP39协议开发的钱包App会提醒用户检查自己的助记词。此时用户会发现错误,把“dog”改成正确的“cat”,才能通过校验,完成钱包创建,也就能避免悲剧的发生。
最后,我们来检查一下作业,来看看在输入一套无效助记词时,中外知名的HD钱包们会不会根据标准BIP39协议,检查出助记词的错误呢?
因为只要输入一套无效助记词,就可以达到检查的目的,所以方便起见我们就不输入复杂的助记词,直接输入12个cat。检查结果如下:
第一家:imToken
第二家:火币钱包
第三家:TrustWallet
第四家:BRD
第五家:BitPay
第六家:imKey
第七家:CoboWallet和Cobo金库
Cobo金库
第八家:比特派钱包和硬件钱包比特护盾。比特护盾的助记词是在手机端输入,在输入12个助记词的时候会有混淆词,输入24个助记词的时候没有,所以我们输入24个cat试了一下,结果是没有提示助记词错误的。
最后,给大家提醒一个
硬件钱包风险点:
掌柜在检查各校验助记词的作业时发现,有些硬件钱包是在手机端完成助记词输入的。
我们之所以使用硬件钱包,就是为了将助记词/私钥脱网保存,在联网设备上输入助记词就完全失去了硬件钱包的意义。
这里有一种解决办法是在手机端导入助记词到硬件钱包的时候,在手机端打乱词序并加入混淆词,混淆词的工作原理是:比如我们的助记词是11个abandon+about,当我们在手机端输入助记词时,冷端会提示:
请在手机输入第3个助记词
请在手机输入cat
请在手机输入第12个助记词
请在手机输入dog
…
请在手机输入第6个助记词
请在手机输入region
cat,dog,region就是混淆词
但是混淆词+打乱词序导入,真的有用吗?
如果12个词的助记词,加上12个混淆词,都被黑客劫持,黑客通过上文提到的校验助记词有效性的形式暴力破解出正确的助记词,需要做1295295050649600次哈希,这个数字看着很大,但是蚂蚁S17+的算力已经达到了每秒73000000000000次哈希。暴力破解出正确的12个助记词只需要18秒。
2019年9月,美国总统唐纳德·特朗普通过Twitter建议美联储将利率从零下调至负数区域,为美国政府目前的23万亿美元债务再融资并延长其到期日。用零利率刺激增长的想法很诱人.
1900/1/1 0:00:00推特CEOJackDorsey的Square支付公司的比特币开发部门SquareCrypto今天通过向两个开发者JonAtack和TankredHase授予赠款,扩大了其在比特币社区的参与.
1900/1/1 0:00:00来源:CointelegraphChina编者注:原标题为《零售需求可能迫使SEC批准比特币ETF》 几位投资公司高管在3月7日的CNBC?广播中就美国证券交易委员会批准成立美国比特币交易所交易.
1900/1/1 0:00:00近日,美国财政部外国资产控制办公室宣布,两名中国公民因为通过比特币场外兑换业务帮助朝鲜Lazarus黑客团队而遭受制裁,据OFAC公开的信息,涉案金额达到了9100万美元.
1900/1/1 0:00:00原文:彭博社,原文作者:JoeLight、BenjaminBain、OlgaKharif来源:Odaily星球日报.
1900/1/1 0:00:00作者|哈希派分析团队金色财经行情播报丨BTC巨幅波动 出现门洞行情:据火币行情显示,昨日上午BTC大幅拉升,最高触及10299USDT,在横盘整理14小时后,晚间大幅下跌.
1900/1/1 0:00:00