让人头疼的私钥

  • 七哥
  • 更新于 2022-11-25 14:56
  • 阅读 3833

本文试图用轻松的语言向你介绍钱包私钥,帮助你理解私钥,以便更好的保护私钥。

要进入web3世界,首先需要拥有一个钱包,也就是一张管理个人加密资产的数字银行卡。但这卡不易管理,屡屡爆出资产被盗事件,大部分是因钱包私钥泄露所致。

  1. 2022年4 月,周杰伦价值300万元的BAYC #3738 NFT被盗。
  2. 2022年 8 月,Solana发生大规模盗币事件,有近1万多个 Solana 钱包地址遭到攻击,被盗资产损失价值超600万美元。
  3. 2022年11月,分布式创始人沈波表示个人常用894结尾钱包,共42M价值资产,其中包含38M USDC 在纽约时间11月10日凌晨被盗。
  4. .....

钱包私钥如同摆在街边的保险柜钥匙,小偷拿着钥匙就能大摇大摆地取走财物。如何保护钱包私钥安全,是年年谈日日谈的话题,是亟需解决的重要问题。现有钱包私钥的管理方式,都在挑战新用户心智,初入区块链行业极易被骗。

接下来,七哥(公众号“七哥链道”)试图用轻松的语言向你介绍钱包私钥,帮助你理解私钥,以便更好的保护私钥。

私钥:一串暗语

在《阿里巴巴和四十大盗》故事里,强盗将偷来的金银珠宝全藏在一个山洞中。只需说出暗语“芝麻,开门”便可触动机关打开暗门。

同样,在区块链世界里,每个人都需要在开始闯荡前,给自己开辟新的山洞藏好数字资产,在开辟山洞时会得到一开门暗语。当然,这暗语不是简单的“芝麻,开门”,太简单的暗语能轻松暴力破解,。暗语是一串非常长、毫无规律且随机生成的数字串,可认为是一串“乱码”,如“ac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80”。

如果说山洞是钱包是保险箱,那么这段暗语就是私钥是钥匙,念出私钥才能打开暗门取走珠宝。

芝麻开门

注意,在第一次使用钱包时,钱包会要求设置一个密码。这个密码并非私钥,而是用于在钱包设备中加密存储私钥的,防止私钥明文存存储带来风险。

密码加密私钥

如果忘记密码,会无法解密出私钥,导致钱包资产被永久锁定。所以,设置一个不会忘记的密码很重要,要记得❌没有找回密码机制。

钱包无法找回密码

备份私钥太重要

私钥做为暗语被加密存储在钱包设备中。如果安装钱包的设备(电脑或手机)出现故障、丢失、被盗或数据损坏, MetaMask 等钱包是无法为你恢复出私钥的。当你使用钱包前,记得备份私钥,备份私钥,备份私钥。重要事情说三遍!

阿里巴巴可以记得住“芝麻,开门”,但无法记住“ac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80”这段毫无规律的暗语。他需要找个地方记录下暗语,防止暗语丢失。但不应将暗语明文赤裸裸的记在微信、备忘录、云文档等容易暴露的软件中, 最好的方式是将暗语记录在物理设备上,如纸张,以防止丢失遗忘。

可纸张易潮湿,遇到天灾人祸易损坏,可考虑刻录在不锈钢板上,安全存放上百年。

不锈钢板助记词备份

物理设备备份私钥是可靠方案,不过除非买一个助记词不锈钢板,自己制作一个实属麻烦。七哥(公众号:七哥链道)推荐另一个技术型方案,使用强密码加密私钥,再将密文分割成多个文件,分别存储在不同的云文档中,具体操作方法见看这篇教程。

多签:一群人签字防盗

将刻录着暗语的不锈钢板隐秘保管,就不太担心暗语丢失问题。可另一个问题没能解决,如果阿里巴巴的钱包设备被盗或被黑客入侵,暗语仍然面临泄露风险。

阿里巴巴始终担心在打开山洞时被别人听到暗语,辗转难眠,向他妻子求助。聪明的妻子认为必须换个暗语。可山洞暗语是没法修改的,和钱包一样钱包是根据私钥构建的,打开暗门只认唯一的暗语。因此,阿里巴巴只能再在旁边修建新山洞,并且设置暗门使用三个子暗语,念出三个暗语中的其中两个就可打开暗门。阿里巴巴、妻子和女儿分别掌握一个暗语,并且互相不知道对方的暗语。

这样,新山洞的安全级别大大提升。每次取珠宝时,可以让妻子先独自去山洞念暗语,隔天阿里巴巴再念咒语就好。一是,妻子虽然知道暗语,但她也无法打开暗门,除非她串通女儿。二是,哪怕妻子临时有事,也能找女儿念暗语。

多签

可这隐含的问题也非常明显,阿里巴巴不敢和老婆一起做捕猎,生怕双双遇难,女儿一人就没法再打开暗门取走珠宝。阿里巴巴又陷入困境,守财不易......

在区块链中这种安全管理方式,就叫做多签。由多个人共同管理资产,只有其中大多数签署同意资金使用申请时,钱包中资产才能被使用。https://gnosis-safe.io/ 是一个多签协议,允许设置多人管理合约钱包。 多签优缺点如下:

优点: 分散风险,消除单机故障、异步协作管理资产

缺点: 多签在区块链上执行验证,需额外支付Gas费,参与签名者越多消耗 Gas 越多。无法隐匿签名参与方。

私钥分片:切割私钥成碎片,分散保管

阿里巴巴使用三个暗语控制暗门,新麻烦是每次都需要妻子或女儿一起处理才能打开暗门。虽然安全,但体验差,效率低。如果真遇上妻儿都生病时更是麻烦。因此,他准备使用一种新方案:暗门只使用一个暗语,但这个暗语被分割成多份,由他和妻儿一起保管。即使妻儿不去山洞他一个人拿着合并好的暗语就能打开暗门。如同虎符一般,皇帝和将军各持一半,将军只有手持完整虎符才能调兵遣将。

私钥分片虎符

通过分割保管,阿里巴巴保护的仅是暗语的备份,但因暗语在使用前必须完整现身,依旧面临泄露风险。

这里分割管理暗语,就是私钥的分片管理。将私钥分割成多份,由多人保管。在操作钱包时,则需要多人一起将私钥碎片合并后签署交易。 优缺点如下:

优点: 分散风险,消除单机故障。无需额外支付签名验证Gas费,不暴露签名参与方。

缺点: 私钥在签名时以完整形式存在,存在泄露风险。

门限签名:多人签名

阿里巴巴能否得到一个真正的多暗语系统呢?其中的暗语总是分开的,永远不会彼此相遇,但暗门仍然只有一个暗语,看起来和普通暗门一样?像是上方谈论的多签和私钥分片系统的融合体,消除缺陷,保留优点。

阿里巴巴没啥希望,但他的曾孙们,现在有机会拥有这样的一套系统。

利用 MPC(Secure Muti- Party Computation) 安全多方计算算法,创建一个符合普通暗门的暗语。MPC的优点是可以不用向第三方透露自己的暗语(信息),只需出具一个计算结果就能让第三方相信他的暗语是正确的。

利用MPC,在生成暗门的暗语(私钥)时,不再由个人独自生成,而是由所有参与者根据签名要求(如:n 个参与者需要 t 个签名才能打开暗门),一起求解一个 MPC 方程。当求解结束时,所有参与者都能得到自己的私钥分片和一个公开的暗门门牌号(公钥),真正的私钥需要至少 t 个人才能合成出来。而大家现在只知道门牌号,暗语分片各自保管,攻击者只有盗取不低于 t 个参与者的私钥分片才能恢复出真正的暗语。

MPC- TSS获得私钥分片

为进一步提高安全性,可以要求每隔一段时间后参与方一起重涮私钥分片,旧私钥片全部作废。这种刷新机制能有效防止攻击者窃取有效的 t 个私钥分片。因为,每次刷新私钥分片,攻击者就会前功尽弃,成功窃取的难度系数指数上升。

我们把这种基于MPC 密码学技术的 TSS (Threshold Signature Scheme)多签系统称为 MPC-TSS 签名技术。多方参与签名在密码学中称之为门限签名。

MPC-TSS 完美解决前文中阿里巴巴的烦恼,美中不足的是在签名交易时,它需要至少 t 个参与方同时在线才能成功签名交易。理论上参与方越多越能冗余,但寻找大量独立彼此不联合作恶的参与人成为考验人性的问题,但区块链技术是需要摒除人性的,怎么办呢?

也许这是一个不错的创业方向,这里就不展开了,欢迎关注七哥公众号“七哥链道”留言讨论。

End

上述介绍了什么是私钥,以及私钥管理的多种方式和各自的优缺点。现在你能理解私钥和如何选择适合自己的备份方案吗?还是不会?????点赞就会了!

七哥链道公众号

参考资料

  1. https://www.infoq.cn/article/xur1mzvlo4wgcgsedz1t
  2. https://zengo.com/threshold-signatures-the-future-of-private-keys/
  3. https://medium.com/zengo/mpc-over-signal-977db599de66
  4. 七哥链道公众号文章
点赞 2
收藏 1
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
七哥
七哥
0x7B08...66Fd
区块链项目商业合作请联系微信 triple721