区块链中的数学 - EdDSA签名机制

简介: 区块链中的数学 - EdDSA签名机制

Ed25519 使用了扭曲爱德华曲线,签名过程和之前介绍过的 Schnorr,secp256k1, sm2 都不一样,最大的区别在于没有使用随机数,这样产生的签名结果是确定性的,即每次对同一消息签名结果相同。

一般说来随机数是安全措施中重要的一种方法,但是随机数的产生也是安全隐患,著名的索尼公司产品 PS3 密钥泄露事件,就是随机数产生的问题导致的。如果你对之前绍过的 Schnorr,secp256k1,sm2 等签名过程比较熟的的话,就容易理解如果在签名过程中出现了这个相同的随机数 r,那么私钥将很容易被计算出来,造成泄露。

Why EdDSA ?

为什么要有爱德华签名机制?

这就要从其发展历史来看,从前几篇的介绍,我们可以知道,爱德华曲线族的研究比较晚,在爱德华数字签名体制出现之前,已经有了椭圆曲线签名 EcDSA 机制,基于 Weierstrass 曲线, 代表性的是 secp256r1 和 secp256k1,前者就是 NIST P256 椭圆曲线算法。

如同任何事物都是不断发展向前的, 基于椭圆曲线的数字签名亦是如此。EdDSA 旨在克服传统的 EcDSA 的一些不足而诞生。

那么 EcDSA 有哪些不足呢?主要如下:

签名过程中不安全的使用随机数【包括安全的随机数发生器实现的困难性与程序员正确使用随机数的困难性】,可能导致密钥泄露

ECDSA 签名的可锻造性,参考此篇

签名伪造:如果不需要提供签名消息, 可以根据已有签名值伪造对应私钥的签名值

当然效率上的提升是公共点,不单独列出, 关于第三点很有意思,“澳本聪”就曾经利用“伪造‘的签名来冒充”中本聪“,详细的过程下一节在说。

好了, EdDSA 是为改进这些不足和提高效率而产生。

关于 Edwards 曲线和 Weierstrass 曲线的发展,下面一组图很生动形象:

图一:两种曲线原始形状

图二:形状类比海星和乌龟

图三:比赛赛跑

07 年以后,爱德华曲线的研究取得快速发展,后来居上,但都是在学术界,真正的广泛使用是在 13 年斯诺登事件以后。

EdDSA 签名机制优点

实现上做了优化,可在多种计算平台上都能达到较高的性能;

签名过程中不需要唯一的随机数,能够避免随机数引发的安全问题;

无分支和秘密数据索引操作,对于侧信道攻击等具有更好的免疫效果;

公钥和签名值都较小 (Ed25519 公钥为 32 个字节, 签名值为 64 字节),【注:这一点其实不明显,和 secp256r1 和 secp256k1 一样】

计算公式是完备 (Complete), 无需对不相信的点执行点的验证操作;

抵抗碰撞, 弱哈希函数的碰撞不会破坏签名机制 (PureEdDSA).

问题来了,既然 Ed25519 签名比较优秀,比特币为什么没有采用?

因为出现时间较晚!

后来的一些区块链项目开始采用,包括 Stellar、Near Protocol 等。

小结

本文主要说了 EdDSA 签名机制的发展及其优点,当然了也不是完美的,也有若干瑕疵,后续在说吧。

到此我们已经多次提到不安全的随机的可能导致泄漏密钥的问题, 具体是怎样的呢?EcDSA 签名机制的弱点,其中有一项就是可以一定程度是“伪造”签名,通过签名验证。之所以说是一定程度,就代表不是真正意义上的签名。

Ed25519使用了扭曲爱德华曲线,签名过程和之前介绍过的Schnorr,secp256k1, sm2都不一样,最大的区别在于没有使用随机数,这样产生的签名结果是确定性的,即每次对同一消息签名结果相同。


目录
相关文章
|
8天前
|
供应链 安全 分布式数据库
探索区块链技术在供应链管理中的应用
【10月更文挑战第21天】 本文深入探讨了区块链技术如何在供应链管理中发挥关键作用,通过具体案例分析,揭示了区块链提高透明度、降低成本和增强安全性的潜力。文章首先概述了区块链技术的基本原理及其对传统供应链模式的挑战,接着详细讨论了区块链如何在不同供应链环节中实施,并分析了其带来的变革。最后,文章提出了企业在采纳区块链技术时可能面临的挑战和应对策略,为供应链管理者提供了宝贵的参考。
|
18天前
|
存储 安全 物联网
未来已来:区块链技术在物联网与虚拟现实中的应用
随着科技的不断进步,新兴技术如区块链、物联网(IoT)和虚拟现实(VR)正在逐渐改变我们的生活和工作方式。本文将探讨这些技术的发展趋势和应用场景,以及它们如何相互融合,为我们带来更便捷、安全和沉浸式的体验。
|
19天前
|
存储 供应链 算法
深入探索区块链技术:原理、应用与未来展望
本文将带你深入了解区块链技术的基本原理,探讨其在金融、供应链、医疗等多个领域的应用案例,并展望其未来的发展趋势。通过本文,你将对区块链技术有一个全面的认识,理解其背后的技术逻辑和应用场景。
|
26天前
|
供应链 安全 区块链
探索区块链技术在数据安全中的应用
本文深入探讨了区块链技术如何革新数据安全领域,特别是在保护个人隐私、增强数据完整性和透明度方面的作用。通过分析区块链的去中心化特性、加密技术以及智能合约的功能,文章阐述了这一技术如何有效防止数据篡改、确保交易记录的不可逆性,并促进跨组织间的信任建立。此外,还讨论了当前区块链技术面临的挑战及未来发展趋势,为理解其在数据安全领域的潜力提供了全面视角。
|
21天前
|
存储 供应链 监控
深入探索区块链技术在供应链管理中的应用####
本文旨在探讨区块链技术如何革新供应链管理,通过分析其核心特性与实际案例,揭示该技术如何增强透明度、提升效率并降低成本。我们将从区块链的基本原理入手,逐步剖析其在供应链各环节中的具体应用,最终展望其未来发展趋势。 ####
54 3
|
24天前
|
存储 供应链 分布式数据库
深入理解区块链技术:原理、应用与挑战
本文旨在探讨区块链技术的基本原理、主要应用及其面临的挑战。通过分析区块链的分布式账本技术、加密算法和共识机制,我们揭示了其如何在无需中心化权威的情况下确保数据的不可篡改性和透明性。此外,文章还讨论了区块链在金融、供应链管理、智能合约等领域的应用案例,并指出了当前区块链技术面临的可扩展性、隐私保护和法律监管等挑战。通过对这些内容的深入分析,我们希望为读者提供一个全面而深入的区块链技术概览。
50 6
|
24天前
|
供应链 物联网 区块链
未来技术的脉动:探索区块链、物联网与虚拟现实的融合趋势
本文深入探讨了区块链技术、物联网(IoT)和虚拟现实(VR)这三个领域的最新发展趋势,以及它们在现代科技生态中的交互作用。通过分析这些技术的独特优势和面临的挑战,我们揭示了它们如何共同塑造未来的技术景观,特别是在数据安全、智能设备管理和沉浸式体验方面。文章还讨论了这些技术融合后可能带来的社会和文化影响,以及它们如何推动创新和促进经济增长。
50 3
|
27天前
|
供应链 安全 数据挖掘
深度剖析区块链技术在金融科技领域的创新应用与挑战####
本文旨在探讨区块链技术于金融科技(FinTech)领域的革新性应用,分析其如何重塑传统金融服务模式,并深入剖析面临的技术与监管挑战。通过案例研究与数据分析,揭示区块链在提升金融效率、增强安全性及促进金融包容性方面的潜力,同时强调构建健全的法律法规框架与技术创新之间的平衡对于推动行业健康发展的重要性。本文不涉及具体代码实现或技术细节,而是聚焦于区块链应用的战略意义与实践挑战。 ####
|
26天前
|
存储 供应链 安全
智能合约与区块链技术的融合:重塑数字信任###
本文深入探讨了智能合约与区块链技术融合的现状、挑战与未来趋势。不同于传统摘要,本文以高度概括的形式,聚焦于两大核心要点:一是智能合约作为区块链上的自执行协议,如何通过代码自动化地促进信任最小化的交易;二是这种融合如何推动数字经济向更加透明、高效、安全的方向发展。全文围绕智能合约的工作原理、区块链提供的底层支持、以及两者结合所面临的技术与非技术挑战展开讨论,旨在为读者提供一个关于这一前沿技术领域的全面而深入的视角。 ###
|
1月前
|
存储 供应链 安全
探索区块链技术在供应链管理中的应用
本文深入探讨了区块链技术在供应链管理中的应用,分析了其如何提高透明度、安全性和效率。通过具体案例研究,展示了区块链如何解决传统供应链中的信任问题,降低成本,并促进更高效的物流管理。文章还讨论了实施区块链技术面临的挑战和未来发展趋势。