DSA:签名在数字资产和加密货币中的作用

撰文: ?Iraklis Leontiadis

编译:Hahaho

可能你正在阅读本文的时,所使用的浏览器和内容终端之间的通信保密也正在运行中,这一过程得益于核心密码原语实现的身份验证。可能你没听说过类似加密(encryption)、签名(signatures)、消息认证代码(message authentication code)等抽象名词,但端到端的安全也正被这些技术保护着,外部某一方是无法在不被发现的情况下阅读传输的内容亦或改变内容的。在本文中,我们将重点分析数字签名的内部结构以及它们在数字资产和加密货币中的作用。

传统签名

银行支票本质是从发送方到接收方的资金转移指令,而这一指令由发行支票的银行确认。出票人要在支票上指定收款人及金额,随后需要出票人在支票纸上的亲笔签名来验证。在理想状态下,不会出现任何问题,指定接收者去银行,银行验证后进行资金转移。但事实是,每张支票纸上的签名不是唯一的,经常是相同的,这就使支票签名容易被伪造。设想一下,如果你的支票被人篡改,转账金额多了位 0 的损失将是巨大的。

三份希望亚马逊采用SHIB的请愿书获得超17万个签名:金色财经报道,目前在Change.org上有三份希望亚马逊采用SHIB的请愿书,总共收集了大约173,373个签名。其中题为“要求亚马逊将SHIB添加为支付方式”的请愿书获得了47,526人签名,题为“请亚马逊开始接受SHIBA INU作为付款方式”的请愿书获得了44,878人签名,题为“请接受Shiba Inu作为亚马逊产品和服务的支付方式”的请愿书获得了80,969人签名。[2021/11/4 6:30:31]

银行支票

数字签名

这个问题如何解决呢?在传统签名中,发送人签发信息的手写签名是唯一的(或同一的),数字签名采取的方式是将需要签名的信息与签名本身绑定,每一个签发信息的电子签名都是一个新的字节流。在这一基础上想伪造电子签名,需要解决的难题以目前已有的工具和知识几乎是不可能的,所以它相对更安全。

Autographia将拍卖由ElonMusk签名的特斯拉模型及相关NFT:8月25日消息,签名纪念品供应商Autographia宣布与去中心化金融社区HODLToken合作,将在其HODLDiamond市场上拍卖由ElonMusk签名并经Beckett认证的特斯拉模型及相关NFT。拍卖会将于美国东部时间8月29日8点开始,持续10天。起拍价将被设定为7.5ETH(约合2.4万美元)。(PRNewswire)[2021/8/25 22:36:14]

发送者可以指定其签名钥匙公开和保密的部分,接收者将发送者的公共信息与它的公共密钥(通常是证书的形式)结合起来,验证签名的正确性。

电子签名

验证机构将发送者的公钥及其元数据签名(可公开识别)进行绑定。协议的安全性不仅依赖于签名的安全保证、整个过程的安全实现、秘钥的安全存储和可靠的通信渠道,还依赖于验证机构本身是否足够安全。攻击者可以执行中间人攻击或冒充相关方,攻击验证机构和发行「虚假」证书的后果是糟糕的,相关例子屡见不鲜,比如 Diginotar、Comodo 和 MonPass。

动态 | 加密货币托管商BitGo将为Algorand区块链提供多重签名钱包和托管服务:据theblockcrypto报道,加密货币托管商BitGo今天宣布,它将为Algorand区块链提供多重签名钱包和托管服务。根据该公司的一份声明,现在可以通过BitGo访问Algorand钱包和监护权。[2019/8/2]

数字资产中的签名

随着分布式账本技术和在此基础上的金融应用(加密货币)出现,人们提起了对数字签名的兴趣。数字签名是数字资产系统的核心,保证了数字资产所有权,并防止了双花问题(花费的比持有的多)。

在一个加密货币系统中,当史蒂夫想发送特定数量的数字资产(例如比特币)给劳拉时,史蒂夫会在自己的账户签署一个包含支出信息的字节流,然后,拥有公开信息的矿工(验证者)验证签名的有效性,并根据基本的共识机制,将其作为主分布式账本上的一个区块,最终完成交易。

数字签名如果出现缺陷,会对系统的公平性和安全性产生破坏性的影响。攻击者可以通过不安全的私钥存储,或底层算法的潜在缺陷,启动未经授权的交易,造成的损失可能永远无法恢复。在传统金融系统中,卡号和密码就是秘钥,所以金融数字资产的安全就包括秘钥的安全和数字签名的安全。

动态 | EOSIO Labs发布“签名显示安全模型”:据WhaleEx消息,5月10日,新发布的一期EOSIO Labs包括EOSIO Manifests、 Assert Contract 以及相关安全模型,提高用户在使用DApp签名时的安全性Application Manifest、Assert Contract与符合认证的认证器同时应用时,认证器能够显示Ricardian合约,以解决DAPP在让用户签名时的错误显示或误导行为。[2019/5/10]

目前有三种签名管理分布式账本系统:ECDSA、Schnorr 和 EdDSA。这些签名方案都依赖于椭圆曲线组和数学难题。不同的曲线提供不同的效率和安全保证,例如爱德华曲线通常被认为更安全,因为它更容易在恒定的时间内实现,以避免因其通用形式而产生的侧信道攻击。

在下文,我们将把底层的椭圆曲线运算组作为一个「黑匣子」,只强调上面的代数方程。下文的所有签名,都在一个质数阶为 q 的基础组 G 进行算术运算,所有的运算都是 q 的模运算且存在一个散列函数 H,输入任意字节流,输出的是 Zq 中的元素。

声音 | 许子敬:区块链隐私保护技术库里 环签名方案仍是最佳选择:火星人许子敬在微博转发区块律动BlockBeats的文章《你的币去哪了?资产追踪成了币圈猪年第一个风口》 并表示,混币方案可以反向倒推,零知识证明高度依赖初始参数并且对暗币池大小有需求,基于网络通信层的匿名解决不了区块链层的签名安全……在目前所有的区块链隐私保护技术库里,环签名方案依然是最好的选择。[2019/2/15]

ECDSA 签名

比特币网络上线时,中本聪决定将 ECDSA 定为基础签名方案。签名算法的第一步,是对新的随机 k 进行采样,如果不这样,对手可以通过不同信息的两个不同的签名提取密钥(例如 PS3 被黑事件)。如果重复随机性听起来比较极端,那么只要重复 k 中的一部分字节,就足够以良好的概率提取剩余的随机性。

签名的另一个缺点是,它不易与区块链所需的签名副产品兼容,即:多重签名、聚合签名和 MPC 协议。原因是逆元素 k^-1 对计算签名的 s 部分的非线性方程的影响。

最后重要的是,ECDSA 根据定义是可塑的(可延展的):两个不同的签名可以映射同一个信息。这是可行的,因为 (r,s) 和 (r,-s modq) 可以通过对 s 的形式实施限制来缓解(始终考虑较小的 s),验证信息 m。

ECDSA 签名

Schnorr 签名

Schnorr 签名方案,克服了 ECDSA 的一些缺点,它具有线性形式,可以更轻松地实现其 MPC 版本,使聚合和多重签名的工作量变得更少。与 ECDSA 相比,它不具有可塑性,但有更强的理论安全证明分析。然而,对新的随机性的需求仍然存在,这使它容易受到实施错误的影响。

Schnorr 签名

EdDSA 签名

EdDSA 消除了对每个消息的新随机性的需要。如下所述,签名算法从密钥和消息中确定地获取随机性。此外,EdDSA 是在 Edward 曲线上实现的,如 Curve25519 和 Curve448,这使得它们在实施正确的情况下很容易保持恒定,并提供更有效的代数实现。

EdDSA 签名

结论

密码学研究随着区块链生态系统的设计、实施和部署而发展:阈值密码学、零知识证明、聚合签名、VDF、VRF、分布式随机信标等。在过去的几年里,从研究和工程方面投入到数字签名的工作量呈指数级增长,我们见证了从协议描述到 POC 到实现生产的最短时间周期。

我们也将看到替代上述签名的新签名;更快、更安全、更易于实施。从协议描述到 POC 再到生产的每一步都需要进行彻底的审查,一个小缺陷都会造成巨大的损失。早期采用到成为标准需要数年时间的积累,加密协议是每个数字金融系统的核心,确保数字资产的安全,一个最佳选择总是需要权衡取舍。

加密协议在生产环境中不是独立存在的,安全分析仅是第一步,产品所有者、工程师、QA 和 devops 需要与密码学家加强合作,了解部署加密代码的风险,并确保免受恶意用户的影响。完美安全永远不会存在,在 Parfin 我们采取了所有必要的步骤来保护相关基础设施,尽可能地信任并尽量减少潜在的关键信息暴露。

DoraFactory

个人专栏

阅读更多

金色早8点

Bress

链捕手

财经法学

PANews

成都链安

Odaily星球日报

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

地球链

欧易交易所WEB:Web3的最低可行薪酬

在 web3 中,赏金和资助作为贡献者的奖励机制被广泛采用。部分原因是,从技术角度来看,赏金和资助都相对简单:它们是一次性转移.

[0:15ms0-0:952ms