Cointime

扫码下载App
iOS & Android

Safeheron 正式开源全球首个基于 C++ 的 MPC 门限签名协议库

作者:Safeheron team

Safeheron 是一家透明、开源的数字资产自托管平台,创始初心即为加密世界贡献透明、开源、可验证的安全自托管基础设施。本着这个原则,Safeheron 坚持密码学研究并积极推进 MPC 技术应用,核心算法相继开源,今日正式开源多个 MPC-ECDSA 协议,包括著名的 MPC-CMP 协议。 开源地址:https://github.com/Safeheron/multi-party-ecdsa-cppSafeheron 此次开源 GG18 、GG20、MPC-CMP 三种被头部钱包托管技术商广泛采用的 MPC-ECDSA 协议 ,同时对密码学原语库也做了扩充。

本次开源填补两项市场空白:1. 这是全球首个 C++ 语言版本的开源 MPC 门限协议库,便于低成本移植到多个平台。2. 这是全球首个亚洲安全技术团队自主设计、开源的 MPC 门限协议库,有助于更好地为亚洲企业和开发者提供安全技术研究,提高亚洲技术在全球数字资产市场的竞争力。

为推进行业开源生态建设,Safeheron 已邀请 SlowMist、Amber Group 安全团队和 PlatON 科研团队,参与验证开源代码的正确性和安全性,一起推动开源库以及开源社区的建设,在此向他们致谢。

MPC 介绍

安全多方计算(Secure Multi-Party Computation),记为 SMPC/ MPC,它是指在无可信第三方的情况下,多个参与方协同计算一个约定的函数。MPC 起源于姚期智先生于 1982 年提出的百万富翁问题及其密码学解法,后来不断发展和完善,已成为当前密码学的一个重要分支。Safeheron Lab 一直以来深耕 MPC 研究,与姚期智院士创建的图灵研究院共建联合实验室,深度参与可信计算与区块链融合的研究,Safeheron Lab 已将部分 MPC 研究课题开源。从 2018 年开始,MPC 技术被应用在区块链数字资产领域的私钥安全设计中。据不完全统计,4 年时间内,超过 3 万亿美元的数字资产转移通过 MPC 私钥方案签署完成,这一方案被纽约梅隆等上千家银行和顶级机构采用。2010 年后,MPC 开始越来越频繁地进入实用阶段。目前 MPC 协议可以分成两大类:通用 MPC 协议和专用 MPC 协议。通用 MPC 协议,顾名思义,具有通用性,理论上可支持任何计算任务。它一般基于混淆电路(Garbled Circuit)实现。具体实现步骤是将计算逻辑编译成电路,然后混淆执行。然而,随着问题的复杂化(大部分常见问题就很复杂),电路的规模也会迅速扩大,导致计算效率大大降低。专用 MPC 协议则是指为解决特定问题所构造出的特殊 MPC 协议。由于是针对性构造并进行优化,专用算法的效率会比基于混淆电路的通用框架高很多。常见 MPC 专用算法包含,四则运算、比较运算、矩阵运算、隐私集合求交集、隐私数据查询、私钥门限签名等。在实际应用场景中,人们常常会寻求快速高效的专用 MPC 协议。

区块链领域的 MPC 研究

为了更好地保护区块链上的数字资产,MPC 被引入到多签场景中来。在任何时间,任何地点,公钥对应的私钥都未存在过,取而代之的是多个私钥分片,即,通过密码学技术,彻底去除私钥单点风险。也就是说,要求单私钥不出现,通过多个私钥分片,不同参与方在签名时通过 MPC 协议计算出最终签名,且此签名能通过对应的单个公钥的验签。这一类技术称为 MPC 多签。随着研究的推进,一些重要的 MPC 多签协议相继被发表。在 MPC-ECDSA 研究方向,典型的有,Lin17 提出的关于 ECDSA 的两方签名算法和 GG18 提出的多方参与的门限签名协议。此后,算法协议层出不穷,比如 DKLS18、DKLS19、GG20、MPC-CMP、DMZ-21 等等。这些算法研究的重心在于:

  • 减少通信次数
  • 降低计算工作量
  • 安全性分析与安全增强
  • 增强对恶意敌手的识别能力
  • 降低生成私钥的算力要求

更快、更高效、更安全始终是 MPC 研究的目标。

开源 MPC-ECDSA 协议

Safeheron 此次一共开源 3 种具有代表性的 MPC-ECDSA 协议:

  • GG18
  • GG20
  • MPC-CMP

其中,GG18 是 Rosario Gennaro 和 Steven Goldfeder 提出来的,并且是第一个有影响力的、进入实用阶段的 MPC-ECDSA 门限多签协议。大部分后续提出的 MPC-ECDSA 门限多签协议,都可以看作是 GG18 不同角度的优化版本。需要注意的是,GG18 早期版本存在一些安全隐患,在安全分析报告的基础上,此次开源的算法对其进行了针对性的修正。GG20 是对 GG18 的优化,除了将通信轮数从 9 轮降低到 6 轮,还增强对恶意敌手的识别能力,并支持 Offline-Sign 模式。MPC-CMP,由 Fireblocks 提出,是对 GG18 的进一步优化,主要是将通信轮数(包含 pre-sign 阶段)降低到 4 轮。为了使描述更加简洁,MPC-CMP 论文采用 n-n 签名的方式描述整个算法,并提到可以适应 t-n 门限签名,但尚未展开详细说明。我们对如何将 MPC-CMP 修改为 t-n 门限签名算法进行细节描述补充,参考文档为《Modify MPC-CMP as a Threshold Signature Scheme》。值得一提的是,上述的开源协议库不仅仅支持 Secp256k1,还支持多种椭圆曲线,全部如下:

  • Secp256k1
  • P-256 (Secp256r1)
  • STARK 曲线

去年 Safeheron 已经开源 TSS-RSA 协议,感兴趣的朋友可以查看。

支持 STARK 曲线

近期,Safeheron 已披露某些 dApp 的授权设计在特定的场景下存在潜在风险的信息,即,基于签名派生密钥风险(Signature-derived Key Risk)。dApp 在授权连接时可以绕过硬件钱包(冷钱包)对私钥的安全防护,亦或者, MPC 自托管钱包提供商可未经用户授权,掌握用户 dApp 中资金的控制权限。此次开源的 MPC-ECDSA 协议库支持 STARK 曲线,即,针对 StarkEx 所使用的 ECDSA 算法设计 MPC 协议,在私钥管理层面实现多人共管。MPC 钱包用户能在 StarkEx 场景下更安全地保护私钥,高效进行多方资产管理,无需担心内外部作恶。另外,社区也可以基于此开源协议定制不同的解决方案。

丰富的基础密码学原语

在开源 MPC 应用层协议的同时,Safeheron 也开源丰富的密码学原语库:

算法库功能
crypto-bn-cpp大整数计算
crypto-curve-cpp统一的椭圆曲线库计算
crypto-commitment-cppCommit Scheme
crypto-hash-cpp杂凑函数计算
crypto-encode-cppBase64、base58 和 hex 编解码运算
crypto-paillier-cppPaillier 快速加解密算法
crypto-sss-cpp可验证的密钥分享算法
crypto-zkp-cpp一系列零知识证明协议
crypto-bip32-cpp实现 Bip32 中的核心功能
crypto-bip39-cpp实现 Bip39 中的核心功能
crypto-ecies-cpp实现 IEEE 1362a 中定义的 椭圆曲线公钥加密算法和认证加密算法

所有这些密码学原语,可以通过 safeheron-crypto-suites-cpp 来统一安装。

多平台支持

设计之初我们就考虑到跨平台的需求,结合性能方面的综合考量后,Safeheron 的 MPC 协议和基础密码学原语最终都采用 C++ 语言来开发。因为良好的设计,可以便捷高效地将所有算法移植到大部分平台,包括 Windows、Mac、Linux、Sgx in Linux、SGX in Windows、Android、iOS、WASM 等等。

关于审计

Safeheron 的内部算法库(https://github.com/safeheron/mpc-dsa-lib)早在 2020 年 12 月就通过瑞士顶尖安全审计方Kudelski Security的审计。此算法库涵盖 GG18 实现和大量基础密码学原语。为保证开源透明和高效维护,Safeheron 后续会将不同类型的密码学原语从内部库独立出来,作为项目库单独开发。GG18 在 2020 年 12 月也已通过 Kudelski Security 的审计,今后我们会继续对其他 MPC 协议开展审计。

未来开源计划

Safeheron 深耕安全行业多年,始终秉持知行合一的理念,致力于贯彻安全与去中心化的统一。为积极推进行业开源生态建设,Safeheron 正在联合 SlowMist、Amber Group 安全团队和 PlatON 科研团队一起推动开源库以及开源社区的建设,并邀请其参与验证开源代码的正确性和安全性,同时,社区可以基于此开源协议定制不同的解决方案,真正享受开源的福利。

开源是一个持续化的过程,除此次开源的 MPC-ECDSA 协议之外,Safeheron 的开源计划还有:

2023 年 12 月

1. 开源 MPC-EdDSA 协议

2. 开源 MPC-BLS 协议

在未来我们还会适时开源:1. MPC-ECDSA 中的其它协议,比如 DKLS19 等2. MPC-HMAC 协议3. SGX 库

参考文献

【1】[Lin17] Fast Secure Two-Party ECDSA Signing

【2】[GG18] Fast Multiparty Threshold ECDSA with Fast Trustless Setup

【3】[DKLS18] Secure Two-party Threshold ECDSA from ECDSA Assumptions

【4】[DKLS19] Threshold ECDSA from ECDSA Assumptions: The Multiparty Case

【5】[GG20] One Round Threshold ECDSA with Identifiable Abort

【6】[MPC-CMP] UC Non-Interactive, Proactive, Threshold ECDSA

【7】[DMZ-21] Promise Σ-protocol: How to Construct Efficient Threshold ECDSA from Encryptions Based on Class Groups

【8】Enhancing Security on MPC Wallet-dYdX Connections

【9】EverPay Collaborates With Safeheron To Increase Security Performance By 47 Times

来源:https://mp.weixin.qq.com/s/-cP-heE84rUHd7iCu6sXZg

MPC
评论

所有评论

推荐阅读

  • 名义价值12亿美元的BTC期权和9.3亿美元的ETH期权即将到期

    Greeks.live数据显示,5月17日期权交割数据:1.8万张BTC期权即将到期,Put Call Ratio为0.63,最大痛点63000美元,名义价值12亿美元。 32万张ETH期权即将到期,Put Call Ratio为0.28,最大痛点3000美元,名义价值9.3亿美元。 Greeks.live表示,本周受美股Meme风潮的激励,BTC ETF也收获了明显的资金流入,BTC大幅上涨突破65000美元,但Meme以外的加密市场较为弱势,成交量继续下跌,BTC和ETH的期权数据分化就可以体现这一点。 从大宗交易和市场交易结构看,各主要期限IV下降趋势结束进入横盘,目前下跌的空间不大。BTC多空较为均衡,而ETH币价弱势导致市场信心持续减弱,卖出看涨成为绝对主力成交。

  • Binance协助中国台湾执法部门破获涉案近2亿新台币的重大虚拟资产案件

    5月17日消息,Binance发布公告称,近日,Binance金融犯罪合规部(FCC)联合中国台湾司法部调查局破获一起涉及虚拟资产洗钱的重大刑事案件,涉案金额近新台币2亿元。Binance在整个案件中为台湾犯罪斗士提供支持,提供关键情报和援助,在推进调查方面发挥了关键作用。 除了业务协助外,Binance还在台湾推出了一系列执法培训计划,与十多个不同单位合作,涉及千多名执法人员,这些努力都得到了非常积极的反馈。

  • Tether CEO:Tron Network上增发10亿枚USDT,已授权未发行

    5月17日,Tether CEO Paolo Ardoino表示,已于北京时间今日凌晨在Tron Network上增发10亿枚USDT,已授权未发行,这意味着该金额将用作下一期发行请求和链交换的库存。

  • 链上索引服务Subsquid完成总额1750万美元融资,DFG等参投

    链上索引服务Subsquid宣布通过CoinList社区销售完成630万美元融资,截至目前其融资总额已达到1750万美元,DFG、Hypersphere、Zee Prime、Blockchange和Lattice参投,据悉其原生代币SQD拟于本周五上市,而Subsquid SDK已与Google BigQuery集成,允许开发人员使用Google的技术来分析区块链数据,继而降低业内区块链和开发者社区大规模部署的数据成本。

  • Optimism 2024 Q1报告:EIP-4844的实施使L1提交成本降低了99%

    Optimism发布2024 Q1报告,其中日活地址达到89,000个(环比增长23%),每日交易量增至470,000笔(环比增长39%)。这些指标均略低于2023年第三季度的历史高点。 OP主网的稳定币市值达到8.09亿美元(环比增长32%)。过去六个月,USDT在OP主网上的市值大幅飙升,达到5.12亿美元(环比增长64%),占总市值的63%。 EIP-4844的实施使L1提交成本降低了99%,将平均每日成本从前几周的420,000美元减少到830美元。2024年Q1 OP主网的链上利润为200万美元(环比增长14%)。

  • Peaq通过CoinList Launch完成2000万美元募资

    适用于DePIN和机器RWA的Layer1区块链Peaq在X平台宣布,其通过5月9日至5月16日在CoinList上推出的原生代币Launch中完成2000万美元募资,截至目前超过14.5万名社区成员完成超3600万美元的超额认购,新资金将用于加速peqosystem的增长,并推动各种生态系统和社区计划的进一步巩固。

  • 印度NFT市场NFTFN完成5000万卢比融资

    印度NFT市场NFTFN宣布通过代币分配方式完成5000万印度卢比融资,约合60万美元,新资金将用于其拓展旗下低成本NFT交易平台SuperNova。

  • 新火科技技术团队又一篇MPC论文在世界三大文献数据库之一IEEE Xplore发表

    4月11日,新火科技控股有限公司(简称“新火科技”,股票代码:1611.HK)旗下技术团队又一篇MPC论文在学术文献数据库IEEE Xplore正式发表,论文主要成果是行业最快、最安全的2-n ECDSA门限签名,实现虚拟资产的高效、安全托管。3月26日,新火科技技术团队在IEEE Xplore上发表了第一篇MPC论文,其主要研究MPC多方计算技术在区块链和虚拟资产管理领域的应用。新火科技SINOHOPE旗下MPC自托管平台通过采用 MPC-CMP技术支持用户分布式管理私钥分片与协同签名,解决私钥单点风险,帮助每一个企业安全、便捷的管理和使用数字资产。

  • 为什么 MPC 是非托管解决方案的未来

    非托管服务的准则需要改进,以建立更安全的加密货币生态系统。

  • 解析 MPC 和智能合约两种钱包方案

    MPC 表面上灵活高效,然而,随着我们深入研究,发现 MPC 固有的一些安全漏洞和攻击途径,我们无法否认这些问题的存在。