来源:链闻,原题《安全多方计算MPC正热,如何通过MPC管理密钥?》
受访者:谢翔,PlatON算法科学家
采访/撰文:李画
密钥管理是一个正在变得越来越重要的概念,已经成为区块链领域重要的基础设施。当数字货币或Token更多的被交易和使用,而不仅仅被一劳永逸地存储时,通过私钥或钱包密码使用资产的方式既不安全,也不友好,更难以满足诸多应用场景的需求。
基于?MPC的门限签名方式与多重签名方式是两种不同的密钥管理方法,在这篇文章中,我们采访了?PlatON算法科学家谢翔博士,他将为我们介绍基于MPC的密钥管理,以及这种方式与多重签名方式的本质区别。
谢翔是数学与密码学专业出身,现为PlatON算法科学家及?KeyShard?产品负责人,专注于密码算法的研究、实现和产品化。KeyShard提供的是基于MPC的密钥管理服务,为数字货币密钥管理和恢复的痛点提供解决方案。
什么是基于MPC的密钥管理
问:为什么我们需要密钥管理?
谢翔:个人可以在区块链或比特币网络上自由地注册账户、转账,不需要任何第三方,这个功能是通过一套数字签名机制来完成的。在数字货币里,最核心的就是如何去管理这个签名,因为所有的东西都会依赖于这个签名。
对于用户而言,管理签名其实就是去管理密钥。因此我们说密钥就是钱,密钥管理很重要。
在传统的行业里,你可以通过银行也好,通过一系列的流程设计也好来管理钱,比如说可以多个人来管,投资经理同意了、投资总监同意了、财务同意了、CEO同意了,这笔钱才能转出去。但是一旦挪到数字货币这个行业,传统那套是做不了的,为什么?因为谁有私钥谁就能转钱,传统那一套审批流程是形同虚设的,没有任何意义。
所以我们做密钥管理这件事情最初的一个想法,就是说能不能把传统的对于钱的授权管理机制挪到数字货币的世界里面来。这个肯定是需要的,因为现在很多人已经开始用Token在投资了,比如说基金,比如说家族的VC,他们是需要有一种内部管理的机制的,但是传统的那套审批机制在技术上过不来。
问:多签可以解决这个问题吗?
CZ:币安已将用户安全资产基金再次充值至10亿美元等值:11月9日消息,币安创始人赵长鹏(CZ)发推称,为了适应最近的价格波动,币安已将用户安全资产基金(SAFU)再次充值至10亿美元等值,BUSD和BNB地址约7亿美元,BTC地址约3亿美元。
注,用户安全资产基金(SAFU)是币安于2018年7月为保障用户资金安全而设立的应急保险基金。该基金成立时,币安承诺了一定比例的交易费用,以将其增长到可观的水平以保护用户。[2022/11/9 12:37:51]
谢翔:多签是基于脚本或智能合约的。它是设计一个规则,比如说三个人同时签了或者两个人同时签了,将这些签名传递给一份智能合约,合约就开始运行,把钱转出去。多签能解决一部分问题,它其实已经用到很多企业里了,但是随着时间的进展会碰到越来越多的问题,问题在哪里呢?
多签针对不同的主链需要实现不同的智能合约,现在的链至少有一千多个了,每个链的智能合约体系不一样,每个人去写合约写得还不一样。拿VC来说,VC可能会投很多链,这些Token怎么管?你要他们去写十几个合约,而且都还要经过安全认证?这是一个大的人力成本。
此外,区块链上合约的任何细节都会被看见,这是有一层安全性问题在那里的。任何人都可以来看这个合约有没有漏洞,而且很多新的链不像比特币或以太坊那样经过了时间的验证,它的合约体系本身有没有问题是不知道的。你会发现一些新的Token出问题,90%?都是合约出问题,这是一个大的风险。
所以在多链的情况下,多签还能方便地支持密钥管理吗?目前看其实是很难的。用多签通过合约的方式来管理密钥,使用成本高,安全风险高。
问:如果这些不同的链都是基于相同的数字签名算法,比如Schnorr,那么不同链的密钥管理方法是不是就可以通用?
谢翔:不,逻辑不是这样的,我给你画一下。多签是这样的,最下边是区块链,中间是数字签名,它有个签名算法,可以是?ECDSA,可以是?Schnorr?等等,最上边是智能合约。
Huobi安全提醒:警惕虚假平台谣言,保护个人资产安全:近期接用户反馈,目前有不法分子通过搭建虚假平台,以所谓“官方通知”的名义恐吓、诱用户进行资产转换操作,Huobi提醒广大用户:注意正确辨别平台官方网址,不要轻易点击或扫描任何非官方渠道推送的链接和二维码,保护好个人财产安全,对于任何涉及到账户登录、划转/转账、提现等操作的一定要保持万分警惕。
为防止不法分子借用火币全球站名义进行,火币全球站已上线官方验证通道,用户可通过此页面确认联系电话、微信、网站等是否为火币官方渠道。[2021/7/8 0:36:10]
多签是怎么做的呢?就是在最上边的智能合约部分来数合法签名的个数,一个、两个、三个……够了,就把钱转出去。这种方式不在乎下边用的是什么签名算法,Schnorr?也好、BLS?也好,对它来说没有半点区别。
这是多签的一个基本原理,也可以说是好处,它能够和底层的签名算法做到一定程度的解耦。但它的问题是要适配不同链系统,一千条链就需要一千个智能合约,多链的兼容性很弱。
问:那基于MPC的门限签名是怎样的?
谢翔:我把这张图重新画一下。最下边还是这条链,中间还是数字签名,上边是智能合约。基于MPC的门限签名不会去管下边的链,也不会去管上边的合约,两头它都不会管,它只管右边这部分,也就是链下创建签名的部分。
它的思路是说一个签名一定是有一个私钥的,它把这个私钥以某种方式分成很多「碎片」,这些碎片可以被很多人同时拿着,然后通过一套MPC协议,保证这些碎片不需要被拼起来就可以直接产生一个合法的签名。「不需要被拼起来」代表着真正的私钥始终没有、而且也不需要出现。
问:签名是在链下完成的?
谢翔:需要签名的时候,比如说我们公司三个人会在链下跑一个协议,生成一个签名,再把签名放到链上。生成签名的逻辑是放在MPC里实现的,出来的是一个标准的签名,但怎么跑这个协议别人是不知道的。
imToken安全团队:立即停止使用LCS钱包管理过的地址:据imToken公众号消息,今天imToken安全团队收到用户邮件举报,钱包中的ETH被恶意盗取。通过第一时间对被盗钱包地址的分析,并找到被盗共性,所有被盗地址均是使用LCS钱包创建的钱包地址。imToken安全团队提醒LCS钱包用户,请立即停止使用LCS钱包管理过(生成或导入)的地址,在imToken中生成新的钱包地址,并将资产进行转移。被盗币的LCS受害用户,请尽快前往当地机关报警。[2021/6/2 23:03:06]
把这个签名结果放到链上去,别人分不清它后面是一个人签的还是多个人签的,因为它的形态、样子就是一个签名,和直接用私钥签出来是一模一样的。这一套签名机制可以完全独立于链,部署在企业的内部。
发现了没有,多重签名主要是去数合法签名的个数,它不依赖于签名算法,但要去适配链系统;基于?MPC?的门限签名主要是去产生一个签名,它依赖于签名算法,但不需要去适配合约和链系统。
基于MPC的门限签名与合约模块是完全解耦的,合约是怎么写的、链是怎么样的,它完全不在乎。它只要区别签名算法,只要签名算法是链系统支持的,它就能很好地衔接。算法的话现在可能就是ECDSA、Schnorr、BLS?,所以兼容算法就能兼容很多链。基于MPC的密钥管理能做到对多链友好,这是一个大的优势。
另外一个优势就是这套签名机制的策略是链下的,因此更加安全,它避免了合约被黑客攻击的风险,而且设计策略可以更加灵活,因为除了验签外的大部分流程都搬到链下了,使用方可以根据场景,制定自己的碎片管理策略。
问:MPC在这个过程中的作用是什么?
谢翔:MPC是一种基于密码学的协同计算框架,广义地理解就是多方各自有私密的输入,一起来完成一个计算任务,在成功完成任务的同时,可以保证整个过程中各自的私密输入不会泄露。
比如一个「2-3模式」的基于MPC的密钥管理协议,意味着一共有3个碎片,只要任意的2个碎片参与执行协议,就可以产生一个合法签名。这里的签名产生过程,包括碎片产生过程,都可以看成一种安全多方计算,因为在协议执行过程中,产生和交换的所有中间数据都不会直接或者间接地造成碎片明文的泄露。
声音 | 比特币安全专家:对在物联网设备中使用区块链技术持怀疑态度:据ambcrypto.com消息,比特币安全专家Andreas Antonopoulos最近表示,对在物联网设备中使用区块链技术持怀疑态度,因为不知道这么做有什么好处,认为这与使用专用的IOT数据库没有不同。他表示,很多人使用区块链这个术语来解决实际上是数字签名数据库的问题,大多情况是将IOT和区块链这两个术语混合在一起产生一些新的解决方案。[2019/5/18]
问:基于MPC的门限签名为什么要跟签名算法相关?
谢翔:我有多块碎片,怎么去实现这一个签名出来?这和算法结构是强相关的,所以会存在某个算法容易做MPC,某个算法不容易做MPC的问题。比特币要升级到Schnorr,Schnorr?是非常兼容MPC的,ECDSA?不那么兼容MPC。
问:在基于MPC的密钥管理中,真正的那个私钥存储在哪儿?
谢翔:你会发现有个很好玩的事情,就是在整个密钥管理的生命周期里,真正的私钥从来没有出现过,也就没有私钥存储在哪里这个问题了。这是基于MPC的密钥管理的精髓所在,它能够保证密钥能用但不存在。
在传统的密钥管理中,密钥是一种确实存在的数据资产,保管它是一件非常难的事情。基于MPC的门限签名在物理层面直接从系统里剥离了密钥,这与传统系统在安全理念上是截然不同的。
在传统方式下,黑客盯住一个点就行,因为私钥就存在那个点上;但基于MPC的密钥管理将密钥的安全性分散在多个托管节点里,私钥在任何时刻都会被分成多份在多个地方,黑客可能要攻破第一个、第二个、第三个、第四个,要把四个碎片全部搞定才能拿到密钥,而且必须在某一时间范围内同时拿到四个碎片才能得到密钥,因为密钥碎片是在不断刷新的。
比如密钥是10,把它拆成两个碎片,分在两个地方。你可以把10拆成5+5,但过一分钟后把它拆成1+9,再过一分钟后把它拆成2+8。黑客要在一分钟之内把两个点都攻破才能拿到10,如果第一分钟攻破第一个地方、第二分钟攻破第二个地方,黑客拿到的是5和9,不是正确的密钥。
问:多签是无法做这种刷新的?
谢翔:没有办法。对于多签,比如参与多签的是三个人,其中一个人的私钥被偷了,那对应的方法不是说刷新密钥,而是要赶紧换地址,把钱转到新的地址里,这在很多应用场景里是个痛点;或者比如说现在是三个人参与多签,需要加第四个人,这个时候也要换地址,然后需要一个新的多签的合约,这是很费劲的,而且转钱到新地址还需要手续费。
动态 | 浙江移动特权账号关键操作日志审计系统入选十大网络安全创新成果:据经济参考报消息,浙江移动基于区块链技术的特权账号关键操作日志审计系统入选“2019西湖论剑·网络安全大会十大网络安全”创新成果。[2019/4/23]
但这些对于MPC来说就很容易,它可以保证对外的地址一直不变,内部刷新就好。这个好处也是我们看重的点。
基于MPC的密钥管理的应用
问:基于MPC的密钥管理可以降低私钥的使用门槛吗?这或许是最让普通用户头疼的地方。
谢翔:它可以做到与传统的中心化的方式没有区别,做到用户体验一样:使用数字货币时的操作和你使用微信钱包时的操作是一样的,你不需要去记助记词、或者把助记词存硬件、用本子抄写下来等等。
用MPC一个好玩的事情是什么呢?比方说A和B用MPC共同管理一个账户,那么他们俩就可以同时来控制这个账户,但同时都不需要记助记词。如果A想用的时候,要发一个请求给B,B同意后,A和B通过一套既定的规则,在本地利用各自的碎片计算出一些中间变量,通过信息交换,A就可以在本地生成一个合法的完整签名,验签通过后,A就可以把账户里的钱转出去。
当然这里还有一个问题,如何为A和B生成碎片。事实上,利用MPC技术可以实现A和B各自在本地生成一个碎片,这两个碎片可以隐式地拼接成一个私钥,注意,这种拼接只是一种蕴含的数学关系,碎片实际上从未在任何时刻被拼接过。
这个时候,B那个角色也可以是一个第三方的服务器。服务器确认一下KYC,核实是不是你发起的,是你发起的之后它就自动通过,也就是自动给出另一个碎片来一起生成签名。KYC就是通过发短信、人脸识别、发邮件等等方式,这样一来,用户的操作方式就和传统的操作方式一模一样。这就和实际的应用场景很挂钩了。
我们做了一个叫?KeyShard?的App,是为了告诉用户基于MPC的密钥管理可以怎么用,可以试着体验一下,现在只支持以太坊。它就是模拟的传统的权限管理,要两个人同意才能动账户。
问:回到最开始。你说把传统的对于钱的授权管理机制挪到数字货币领域。在传统审批流程里,可能需要A先通过,然后B签字,然后C签字,这是MPC现在就可以做到的吗?
谢翔:这其实是一个很关键的问题。在传统的流程里这叫做传签,传签在MPC里会有一些障碍,我画一下MPC大概的逻辑。
MPC这个算法协议是要彼此相连和交互的,比如说经理、财务、CEO三个人参与生成签名,它是要求这三个人必须同时在线的,所以MPC纯算法本身很难做到传签。
但我们可以利用工程架构在产品层面实现传签功能,让上层的用户不用去管也不用去想底层是怎么运行的,对于用户而言,产品的操作体验和传统传签是一样的。所以算法和产品之间是有很大差异的,这里有两套东西,除了算法本身,还需要把技术和业务逻辑结合起来。
问:可以这么理解吗,基于MPC的密钥管理不仅是为了安全地存储密钥,它更是为了个人或企业能够方便地、满足业务逻辑地使用密钥?
谢翔:它有多个优势,安全存储是一方面;而让个人或者企业更安全便捷地使用密钥是另一方面。前者是指基于MPC的密钥管理对密钥或者资产的「托管能力」,体现了静态的安全性;后者是指基于MPC的密钥管理可以主动设计出多样化的策略管理,是一种动态的业务赋能。
问:如果有一个需要管理多种Token的投资机构,它是不是可以买一套基于MPC的密钥管理算法,然后用这套算法实现对不同链的签名,进而实现对不同链上资产的管理?
谢翔:它不太可能直接买算法,它会买产品,比如买一套基于MPC的密钥管理软件装在公司内部的服务器上,然后就可以通过一个界面去管理资产。你可以理解为它买了一套基于MPC的财务管理系统。
密钥管理的最底层是一套算法,但可以把它包成产品,也可以包成?App、包成SDK。
问:如果有一个钱包公司,希望钱包添加一个让用户能基于MPC管理私钥的功能,是不是可以找专业的提供MPC解决方案的公司合作?
谢翔:对。你可以理解为这个市场有投资机构、有钱包、有交易所,还有其它的一些业务公司,它们各自有自己的业务,但它们一定都会有怎么管钱这个问题,我们就是提供一套基于MPC的密钥管理能力,也就是基于MPC的管钱的能力,来跟它们自己现在的这套系统对接。
从公司的定位来说,KeyShard?其实是一个技术提供商或一个基础设施公司,它把自己往下沉得多一点,不碰上面的业务。它主导的是底层的密钥管理的SDK,希望把授权管理的业务流程揉到SDK里面去,当然难点在于要抽象出一套相对来说足够灵活、好用的SDK。
基于MPC的密钥管理面临的挑战
问:基于MPC的密钥管理现在碰到的难点是什么?
谢翔:技术的、非技术的都有。非技术的是有人会问为什么它是安全的?给我个证书。传统KMS?是有证书的,但因为基于MPC的密钥管理时间没有那么长,没有认证。
这是这个学科的特殊性引发的问题。密码学虽然有坚实的理论基础,但是它分理论安全和实际安全,实际安全是不是能达到理论安全这个层面是需要时间检验的。所以一是需要标准机构,二是需要学术研究的推动。我们会积极地去推进类似标准、去推进工业界对这个技术的认可,但需要时间,没那么快。
技术上的难点就是刚才说的,需要把这一套新的技术和复杂的业务逻辑结合起来。此外,MPC是一套分布式的技术,分布式的话就会有同步,也就是共识的问题。
原来的授权管理是一个纯中心化的东西,业务流程会很好配;但分布式的场景下会有一定的难度,比如使用者在不在线的问题,网络好不好的问题,如果在密钥刷新的时候有延时,是用后面那个碎片还是用前面那个碎片的问题。这种细节会有很多,都要去考虑。
问:基于MPC的密钥管理没有可追究性这种说法是准确的吗?就是说不知道谁签了谁没有签,无法追查责任?
谢翔:其实是可以知道的,从算法层面就可以抓到是谁签的。算法底层可以通过引入检查和举报机制,追查到谁没有签,甚至知道是谁在签名过程中给了不遵循规则的错误信息。
来自使用的需求:
密钥管理是一个正在变得越来越重要的概念,它甚至有可能成为区块链领域一类重要的基础设施。因为当数字货币或Token更多的被交易和使用,而不仅仅被一劳永逸地存储时,通过私钥或钱包密码使用资产的方式既不安全,也不友好,更难以满足诸多应用场景的需求。
多重签名和基于MPC的门限签名都是实现密钥管理的方法,但它们是截然不同的设计路线:前者在链上,依靠智能合约数合法签名的个数;后者在链下,依靠MPC用碎片生成合法签名。本文重点介绍的是后者,也就是基于MPC的密钥管理,希望能对你了解这种技术和方案有一些帮助。
重新认识「私钥」:私钥不是钥匙
「私钥」这个词带来的直觉反应是,它是一种「钥匙」,作用是打开保管着数字货币的保险柜,想一想也似乎有道理,使用私钥就能拿到币。但实际上,在区块链和数字货币领域,私钥就意味着资产本身。
试想,你的保险柜钥匙丢了,你的钱是依然还在的,你可以再配一把钥匙;但如果私钥被忘了,钱可就永远消失了。你的保险柜钥匙被偷了,你的钱可能依然安全,因为小偷还需要溜进大楼、撬开房间的门锁;但如果私钥被偷了,钱几乎立马就不再属于你。
私钥不是那把打开保险柜的钥匙,它是要被放进保险柜的资产本身。而如何设计一个保险柜系统存放私钥,使得柜中的私钥既安全、又易用,就是密钥管理。届时,交到用户手中的就不是私钥,而是一套打开保险柜的钥匙。
多重签名和基于MPC的门限签名都是实现密钥管理的方法,但它们是截然不同的设计路线:前者在链上,依靠智能合约数合法签名的个数;后者在链下,依靠MPC用碎片生成合法签名。本文重点介绍的是后者,也就是基于MPC的密钥管理,希望能对你了解这种技术和方案有一些帮助。
标签:MPCTOKEN区块链TOKgmpc币上哪个交易所AEN Smart Token区块链存证平台法院BSB Token
有用户最近决定尝试使用他们的特斯拉电动车运行比特币全节点,而且还成功了。 当特斯拉成为比特币全节点人们通常都不会把电动汽车和数字货币联系在一起,但两者确实有一些共同点.
1900/1/1 0:00:00本期要点 综述:根据标准共识情绪指数反映,目前市场情绪良好,最新指数为1.12,市场处于震荡上涨阶段,成交量方面持续增长,市场心态逐渐转变,由观望状态转变为进场试水.
1900/1/1 0:00:00文:AAX团队 大部分数字货币投资者应该知道,2020年5月,比特币即将“减半”。这是一个周期性的事件,有时也写为“Halvening”。历史上,“减半”通常与令人瞩目的价格暴涨密切相关.
1900/1/1 0:00:00新华社记者吴雨 来源:新华网 贸易金融是横跨多个主体、多个环节的复杂场景,涉及行业面广、交易链条长,需要彼此之间互信共享.
1900/1/1 0:00:00原文:ambcrypto.com 来源:星球日报 译者:秦晓峰 2020年1月21日,「灰度比特币信托」成功在美国?SEC注册登记,并成为首个向SEC报告的加密货币投资工具。「灰度比特币信托」是美国加密资产管理公司灰度投资旗下产品.
1900/1/1 0:00:00原文:新华网 编者按:新一轮科技革命和产业变革方兴未艾,数字经济正为中国经济增长注入新活力。近期召开的中央经济工作会议明确提出“要大力发展数字经济”.
1900/1/1 0:00:00