ZeroWallet利用零知识证明(Zero Knowledge Proof)的方式来强化私钥保护,希冀提供脑钱包的便利性与多签钱包的安全特性。本钱包专案是一位在UIUC暑假实习的高中生Aman Ladia在Andrew Miller教授的指导下完成的作品,以下是展示与源码:
Demo: https://app.zerowallet.me/ ( video )Source code: https://github.com/amsee01/ZeroWallet操作方式如果进入到该钱包的demo 页面,会如下图所示:
使用者透过输入
使用者帐号自订的密码一(Password 1)自订的密码二(Password 2)结果:产生用于以太坊钱包的一组私钥及一个share (如图)
ps. 这个demo 只是PoC,证明私钥产生与还原的可行性,并不是真正的钱包应用,但概念上有许多有趣的部分
为了较好理解本文介绍的ZeroWallet,我们先从几种私钥产生的方式与演进,了解其优缺点及背后设计的动机。至于为什么私钥的产生与保管如此重要,本文暂不赘述,可以简单理解为在密码货币(Cryptocurrency) 的世界,私钥代表唯一能够动用钱包资产的钥匙(授权),同时亦扮演着身份(认证)。
第一种:透过随机数(Entropy) 产生这类私钥的产生方法,通常牵涉到产生乱数,而透过该乱数混乱的程度产生一把具有固定长度的私钥,如下图。而私钥产生后,由于它代表你个人资产的授权与认证关系,故私钥一但掉了,也意味着,你的资产将再也回不来。
不同于传统的网页登入密码,你需要记住的是一串64 个字元的十六进位数字,除非你有过人的记忆力,否则通常最好的保存方式是抄在纸上护贝起来,并藏在安全的地方。
与第一种方式不同于,乱数会转成人类易读的助记词(红色部分),例如12 个单字,好处在于若是要抄写十六进位的字元时,容易搞混,而单字也比较不会抄错。如此一来,只要知道助记词如何转换到私钥的计算过程,就可恢复私钥,同时让抄写或输入的部分减少人工的错误。这也是目前手机钱包或硬体钱包中,常见的做法。
这边要提到一种古老的秘密分享技术,Shamir's Secret Sharing (SSS),该种技术可将一个秘密(Secret),根据他的设定拆分成t-of-n的规则,即当你有n个share时,只要拿到任意t份(门槛),就可还原既有的秘密,下图是一个2-of-3的例子,每个蓝色框框里的数值称作share,拿到任意两份就可回推黑色的秘密(私钥)。
与上述两种方法相比,这样设计的好处是一但助记词或私钥遗失,不会立即遭受损失。因为三份share 的其中一份,可以放在保管箱或其他安全地方,用于备份,并且另外两份share 也可放在异地,使有心的窃盗人士要一次性盗走的困难度增加。
但更重要的是,这类需要多个share 来还原秘密的方式,在policy 的设计上也较有弹性。例如share 1 & 2 分别给A & B 两人,每次交易时,A 必须拿出share,并由B 检查交易内容正确无误,才拿出B 的share 来完成交易,相较之前的方式多了再次确认与检查的特性。(类似银行层层签核的流程)
了解第三种私钥的产生方式后,我们能否透过预先计算的Share 来还原私钥?而不是先有私钥,才来计算如何拆分share,这是本专案作者的切入点。
稍微调整计算的步骤后,如下图所示。先前,我们提到,如果share 保管在异地,那么要同时偷走可用share 的难度就会变高。因此,作者将其中一个share 托管给服务商,并且需要同时拿到使用者的密码与服务器的秘密才能够还原share 2。至于share 1 则由使用者自己保管,share 3 做为备份,当使用者自己不慎遗失share 1 或是服务商不慎弄丢使用者的share 2 时,可用于复原私钥。
除此之外,对使用者来讲,需要记住的是使用者帐号与两组一开始设定的密码,而不是冗长的私钥,亦不是12 单字的助记词,比较符合传统的使用体验。
有了SSS 的概念与初步背景介绍后,接下来的挑战是,如何设计share 2 的产生方式?
服务器端会针对不同使用者存一个Secret。如何让服务器端无法知晓share 2 如何产生?这边会利用到OPAQUE的算法,OPAQUE本身是一种PAKE (Password Authenticated Key Exchange)协定的演算法,用于以密码验证的金钥交换协议。
工作原理首先,要理解工作原理之前,需了解不经意伪随机协议(Oblivious Pseudo-Random Function, OPRF)。OPRF 在此主要是生成一个随机乱数,而OPRF 函数的输入来自两个不同方,属多方计算(MPC) 的一种应用,两方的人彼此不知道输入的值是什么,但仅有一方能知道结果。
这对于share 2 的产生有很大的帮助,原因是:
使用者并不想同时储存share 1 与share 2,想委任第三方托管。使用者又不想托管方知道share 2 的产生方式。如果没有使用者的参与,仅有托管方的部分讯息是无法计算share 2。托管方即使掉了参与用的讯息,或是讯息被中间人调包,只会造成使用者生不出share 2 或是产生错误的值,使用者仍保有备份的share 3 可用于还原,但托管方无法学习任何有用的结果,亦即此处零知识证明的用途。下图是share 2 产生的过程,左边是使用者,右边是服务器,红色代表秘密,仅能握有秘密的一方才能知道,即便是中间人都不该拿走秘密值。
Step 1. User -> Server使用者端会产生一组随机数r,并且设定一组使用者密码,仅有使用者才知道这两个秘密。(注:在2-of-3 的情况下,也许先有share 才还原secret 也许可行(线性),但在3-of-5 (二次式)或更高次时,不一定能够直接由share推回secret)
Share 的储存为了分开share 的存放,Share 1 则由使用者自己保存,Share 2 只在每次交互时才产生,Share 3 则可离线备份或藏在安全的地方,如此,即完成ZeroWallet 产生私钥与互动的过程。
小结整个wallet 的运作与流程如上,是个非常有创意的方法,透过传统密码的记忆来产生私钥,让使用者毋须记忆冗长的私钥,并透过多方计算的方式,让私钥必须借助多个share的组装才能进行还原,并且有recover 的概念,让离线备份的share,在Server 无法使用的情况下,可用于还原。
这是个有趣的作品,但值得注意的是,使用者在拿到足够share 之时,即可组出私钥,甚至当下可记住私钥。换言之,在使用的过程中,仍有私钥被组出的可能性,即使他的安全性相对只存私钥的作法更佳。
私钥的保管与防护,在区块链上一直都是重要的研究挑战,不论是在安全性或在使用体验上,都与传统的密码登入有所不同,更重要的是,私钥代表着资产,不像传统上忘记密码就请求重送般简单。
门槛式签名安全的多方计算( Secure Multi-Party Computation , sMPC)以及门槛式密码学( Threshold Cryptography )都是密码学上已有但古老的技术,透过门槛式签名的方法(Threshold Signature Scheme, TSS),让我们可在不还原私钥的任何情况下,每次产生一组针对同一地址的合法签名(Signature),进而保护私钥安全,由于私钥并不会存放在任何资料库,并且多个share分散在不同Server,而增加攻击困难度。除非多个资料库同时被骇,且攻击者取得足够的share,以及知道组装的手法,才有可能被还原回来。细节就暂不叙述。门槛式签名的方法与研究,是目前本团队(AMIS)已有且用于钱包服务上的技术。
以上就是ZeroWallet钱包介绍的全部内容,望能这篇ZeroWallet钱包介绍可以帮助您解决问题,能够解决大家的实际问题是塔岸网一直努力的方向和目标。
香港持牌加密货币交易所HashKey Exchange 周三(1日)正式推出行动端应用程序,为专业投资人和零售用户提供服务。HashKey 营运长Livio Weng 受访表示,HashKey 还计划铸造自己的ERC-20 应用型代币HSK,可能会在明年年中上市。App 正式上线根据《The Blo...
11-15
Sushi 社群成员在治理论坛发布提案,拟议恢复SUSHI 代币的价值与功能,并让DAO 重新掌握协议治理权。Sushi 社群起义重拾治理权社群成员Trantor 表示,自从Kanpai 2.0 于2022 年12 月推出以来,所有协议费用都流入国库,尽管这有助于确保国库能够获得充足的资金,但核心团...
11-15
继贝莱德的IBTC 之后,景顺(Invesco)与Galaxy 共同提交的比特币现货ETF 也在美国证券存托清算公司的清单(DTCC)上架,股票代码为BTCO。标志着这两档ETF 申请正朝着标准程序持续推进。需要再次重申的是,许多人甚至会误将「上架DTCC」视为比特币现货ETF 批准的预告,但事实上...
11-15
由于传统金融体系缺乏信任而诞生的加密行业,逐渐崭露头角,并引发了人们的思考以及全球范围内的广泛关注,迄今已经成长为万亿美元市场。但作为没有任何参考的新兴行业,加密市场为传统金融市场带来创新与注入活力的同时,各种突现的黑天鹅事件也不容忽视,合规透明正成为其未来发展的主旋律。作为全球领先的加密资产交易所...
11-15
根据英国金融行为监理总署 (Financial Conduct Authority, FCA) 官方公告显示,知名交易所 Bitfinex 被列为未经当局授权的警告名单。FCA:Bitfinex 在未经授权下推广英国金融行为监理总署 (Financial Conduct Authority, FCA...
11-15