三个月前,币安宣布开源基于门限签名的ECDSA(椭圆曲线数字签名算法)库。这一举措体现了我们在于区块链行业的长期努力和构建数字资产基础设施的坚定承诺。该TSS库对所有基于ECDSA的区块链兼容并重用,包括Binance Chain,比特币和以太坊网络等。它已被其他项目用于构建代币交换bridge。
币安链开发团队币安为了扩展TSS投入了许多开发资源。今天,我们宣布开源适用于 EdDSA的门限签名库。这几举措将扩大TSS库的支持范围,包括:Cardano, NANO, Stellar Lumens, WAVES甚至 Libra!
EdDSA
椭圆曲线是当今广泛使用的最强大的加密方法之一,而Edwards曲线是椭圆曲线中最新的也是很强大的一种。 椭圆曲线数字签名算法可以比现有的签名算法(例如RSA,DSA或ElGamal)更快地签署消息。 Edwards曲线数字签名算法(简称为EdDSA)是一种先进的数字签名方案。该方案基于扭曲的Edwards曲线,它也是Schnorr签名的变体。
一些区块链项目,例如Tezos,Libra和Cardano选择使用基于Ed25519曲线的EdDSA算法,而不是使用secp256k1曲线的ECDSA。 EdDSA有如下先进性:
更快的验证:EdDSA算法比ECDSA复杂度低,并且易于理解和实现。 因此EdDSA的性能通常比ECDSA略好。
可证明的安全性[1]:Schnorr签名可证明是安全的。 更具体地说,若被攻击,签名消息几乎不可伪造,并且不具有可延展性的。 另一方面,ECDSA签名方案中存在可延展性的可能,该问题会导致比特币中的安全问题。
线性度[1]:我们可以累加几个Schnorr签名,结果仍然是有效的签名。 这可以节约签名验证的计算能力。在处理例如多签名交易等情况时,EdDSA可用于提高效率和保护隐私。
首重安全
币安一直把安全放在第一位。 我们之前邀请了Kudelski Security作为独立第三方审查员对本次开源的TSS解决方案中的加密方法及代码的安全性进行了审计。EdDSA实现中重用了大部分现有的代码,并且经过仔细检查。你可以在GitHub上追踪相关报告。
TSS库是Binance白帽黑客赏金计划的一部分,我们欢迎研究人员报告漏洞并获得奖励。 由于TSS研究和技术还很新,因此密码学家正在积极分析我们的实现情况。 到目前为止,这已经发布了两个安全增强功能的补丁:
https://github.com/binance-chain/tss-lib/releases/tag/v1.1.0
https://github.com/binance-chain/tss-lib/releases/tag/v1.2.0
这两个发现都使币安的TSS库成为目前最安全的TSS实现之一。 我们要感谢他们的专家分析和对这些问题的及时报告。
未来计划
在TSS库 v1.3.0中你可以了解到EdDSA相关库的具体实现。未来TSS将有更多的应用场景,例如:钱包、资产托管服务等。
我们有关TSS的工作尚未结束。未来,我们还计划对这个项目进行扩展。我们计划携手币安链社区,为更先进的用例提供TSS支持。从长远来看,我们希望开源共建一个健康,可持续的密码学开发者社区,这不仅可以使币安链社区也可以使整个区块链和加密货币社区受益。
注释
https://github.com/sipa/bips/blob/bip-schnorr/bip-schnorr.mediawiki#Motivation
推荐阅读: