前几天再次被大量比特浏览器钱包被盗事件刷屏,当把数据放在一个可以同步云端的黑盒里面,那么之后或许只能祈祷相关人员,每个都不能作恶。
在Web3这个黑暗森林,很明显这种期待不现实。在你把助记词或私钥直接明文输入指纹浏览器的小狐狸时,就已经埋下了隐患。
这篇推文将用尽可能通俗易懂的方式给大家介绍一种目前的解决方案-无私钥钱包。
OKX的Web3钱包在不久前推出了MPC钱包,使用MPC(全称Multi-party computation,多方安全计算)技术和区块链签名结合,一种无需私钥和助记词的无私钥钱包成为 Web3 入口的破局者。
OKX 的无私钥钱包基于 MPC 技术,将原本的 1 个完整私钥,变成 3 个各自生成的私钥碎片,分开存储,签名时使用其中 2 份私钥碎片即可完成签名,过程中不会产生完整的私钥。
你可以简单理解为我们的12助记词,每8个一组,储存在三个不同的地方,即使其中一组泄露,不完整的助记词/私钥还是无法操作钱包。但是得到其中的任意两组,我们就可以凑出完整的助记词/私钥,所以即使有一组不可用/丢失,也一样能保证钱包能被自己操控。
创建无私钥钱包时,OKX 服务器会生成一份私钥碎片1,用户设备生成私钥碎片2和私钥碎片 3,其中私钥碎片2加密保存在用户设备上,私钥碎片3加密备份到 iCloud 或 Google Drive。交易签名时使用私钥碎片1 + 私钥碎片2,私钥碎片3用作备份。
由于OKX和iCloud 或 Google Drive这些大的云服务商无法串通,理论上两方也都无法获取你用户设备的加密碎片。那么你完整的私钥即处于一个相对安全不被盗的状态,任何 1 个碎片都不具备单独掌握钱包地址中资产的能力。如果OKX倒闭,跑路了,你依然可以通过开源的算法,在拿到云端加密的碎片和本机碎片来恢复钱包。从这两个方面保证了安全。
另外,目前在发现私钥被盗后,唯一的方式只有放弃钱包。但对MPC钱包,如果私钥碎片丢失或被盗,MPC钱包可以执行私钥碎片的刷新功能。用新的私钥碎片,替换掉每一方原有的私钥碎片,此时丢失或被盗的碎片约等于被"挂失",相比之前成本低了很多。
使用OKX Web3钱包创建无私钥钱包
[1] 打开 OKX Web3 钱包,
点击 ▼ > 钱包管理 > 添加钱包;(或选择我没有钱包 > 无私钥钱包)
[2] 选择创建钱包 > 无私钥钱包;
[3] 输入 OKX 交易所的账号和密码,若已经登录则无需此步骤,再点击创建;
[4] 点击备份钱包 > 输入密码完成备份;
对于撸毛党,当然更多活跃在PC端做交互,和移动端类似的操作:创建钱包 > 无私钥钱包 >备份钱包 就完事了。
把移动端的Web3钱包导入PC端的Chrome也很流畅,选择导入钱包,然后先在PC端登陆OKX网页,之后直接手机扫码,把手机端加密的私钥碎片授权过来即可。
这过程个人认为比一个个复制/手动输入私钥/助记词要安全和简便的多,即使下次类似X特浏览器做恶,即使破解了你本地加密的备份,还是无法控制你的钱包。
目前OKX已经再Github开源了MPC钱包的代码:
支持功能:
-
2方ECDSA签名,使用了Feldman的VSS生成密钥共享和Lindell 17协议进行2方签名。
-
2方Ed25519 签名。
-
Bip32密钥派生,支持密钥共享未硬化派生,chaincode由n方生成。
-
密钥共享刷新,当一方密钥共享丢失或有新参与者加入时,支持刷新。
https://github.com/okx/threshold-lib
当然了,这种方式是一种中心化和去中心化结合的方式,只能算是理论上的去中心化和理论上安全。
如果不放心当然也正常,更建议选择大金额放在硬件钱包,只进行偶尔的转账操作。
常用的撸毛交互资金选择导入安全,使用方便的MPC钱包。
祝各位钱包永远安全!
关于OKX移动端Web3钱包生态介绍,之前已经写过很多,里面方便的dex交易,限价交易,链上质押,NFT市场,Cryptopedia任务都是我比较常用的。
具体见之前的一些推文:
https://twitter.com/0xbigpineapple/status/1659654114840551537
https://twitter.com/0xbigpineapple/status/1693457675500011930
https://twitter.com/0xbigpineapple/status/1683018949091373057