密码学101:区块链安全的基础模块

本文介绍了密码学在区块链中的重要性,重点介绍了OpenZeppelin的Cryptography 101系列视频,该系列视频专为Web3开发者设计,涵盖群论、椭圆曲线群和椭圆曲线配对等主题。通过KoalateeCtrl的讲解,旨在帮助开发者掌握零知识证明并提升Web3安全性。

密码学是区块链网络构建的底层支柱。它为去中心化提供动力,并确保交易和数据的保密性、完整性和真实性。在本文中,我们将探讨密码学的基本概念,正如 OpenZeppelin 的 密码学 101 系列中所介绍的那样,该系列是专门为 Web3 开发者构建的。由安全研究员 @KoalateeCtrl 领导,本系列旨在为区块链开发者提供必要的知识,以最终掌握零知识证明并增强 Web3 安全性。我们将深入研究每一集中涵盖的主题,并强调它们与以太坊生态系统的相关性。

第一集:群论

理解群对于理解零知识证明至关重要。涵盖的主题包括群的概念、它们的属性以及域和有限域,它们在密码学运算中起着至关重要的作用。最后,该视频还涉及离散对数问题,这是一个基本挑战,是许多密码学协议的基础。

群论是现代密码学的基础,并在理解零知识 (ZK) 证明中起着至关重要的作用,零知识证明是一种强大的密码学概念,允许一方在不透露关于该陈述的任何信息(除了它是真的这一事实)的情况下,向另一方证明该陈述是真的。群是一种数学结构,它由一个元素集合和一个操作组成,该操作将任意两个元素组合起来以生成同一集合中的第三个元素。在密码学的上下文中,群具有使其适合密码学应用的特定属性。

群表现出闭包性,这意味着用群的运算组合两个元素总是产生群内的另一个元素。此属性确保可以一致且可靠地执行密码学运算。群还有一个单位元,当与任何其他元素组合时,都会产生相同的元素。此外,群中的每个元素都有一个逆元,当与原始元素组合时,会产生单位元。

域和有限域是利用群论的密码学运算中不可或缺的组成部分。域是一种数学结构,它通过包含两种运算:加法和乘法,扩展了群的概念。在密码学的上下文中,有限域特别令人感兴趣,因为它们具有离散对数问题,这对于密码学很有用。

离散对数问题是群论中的一个基本挑战,它是各种密码学协议的基础。它涉及找到必须将群中的特定元素提升到的指数,以获得另一个给定的元素。以目前的知识来看,对于大的素数,有效地解决离散对数问题在计算上是不可行的。此属性使其成为构建安全密码学方案(例如公钥加密、数字签名和密钥交换协议)的宝贵工具。

如前所述,零知识证明在很大程度上依赖于群论概念。这些证明允许一方(证明者)在不透露超出该陈述有效性的任何附加信息的情况下,说服另一方(验证者)某个陈述的真实性。通过利用群论属性(例如离散对数问题的难度),零知识证明为密码学协议中的保护隐私交互提供了一种强大的机制。

理解群、它们的属性以及它们与域和有限域的关系,使密码学从业者能够设计安全有效的密码学算法。离散对数问题作为群论中具有挑战性的计算任务,增强了各种密码学方案的安全性。通过掌握这些概念,密码学专家可以利用群论的力量来开发强大的加密、身份验证和保护隐私的机制。

第二集:椭圆曲线群

作为一名区块链开发者,掌握椭圆曲线密码学的复杂性至关重要。该视频深入探讨了椭圆曲线的基础知识、它们的代数性质,以及它们在密码学系统中的作用。理解椭圆曲线群为构建安全的数字签名奠定了基础,其中 ECDSA 用于验证以太坊交易,而 BLS 可以在共识以及帐户抽象中实现区块证明。

椭圆曲线是一种特殊的曲线,由 y^2 = x^3 + ax + b 形式的方程定义,其中 ab 是常数。与传统曲线不同,椭圆曲线具有使其适合密码学应用的独特属性。这些曲线是在有限域上定义的,这意味着它们的点由一组有限的坐标组成。此属性允许进行高效的计算,并使 ECC 特别吸引资源受限的环境,例如区块链网络。

椭圆曲线群由椭圆曲线上的一组点组成,包括一个特殊的“无穷远点”。在这些点上定义的加法运算表现出独特的属性,使其适合密码学运算。一种这样的属性是群的闭包性,它保证在曲线上添加两个点会产生曲线上的另一个点。此外,椭圆曲线上的每个点都有一个逆点,确保群内存在减法。

椭圆曲线的代数性质(例如结合律和交换律)有助于构建在其上的密码学算法的安全性和效率。这些属性可以构建安全的数字签名,这对于验证消息的真实性和完整性至关重要。使用椭圆曲线群生成的数字签名提供强大的安全性,同时需要更短的密钥长度,从而实现更高效的计算。

椭圆曲线群的另一个关键应用是在密钥交换协议中,例如 Diffie-Hellman 密钥交换。通过利用椭圆曲线的属性,双方可以在不安全的通道上安全地建立共享密钥,从而使他们能够以保密的方式进行通信。椭圆曲线离散对数问题的计算难度是此类密钥交换协议安全性的基础,使其能够抵抗未经授权的实体的攻击。

椭圆曲线群还在构建零知识证明中发挥着核心作用,零知识证明允许验证一个陈述,而无需泄露任何附加信息,从而促进区块链网络中保护隐私的交易和交互。

第三集:椭圆曲线配对

该视频探讨了配对的概念、其代数性质及其在 BLS 签名和零知识证明中的应用。理解椭圆曲线配对为构建高效的保护隐私机制和高级密码学协议打开了大门。

配对提供了一种强大的工具,用于执行涉及椭圆曲线的密码学运算。

配对的关键特性之一是双线性。此属性允许将对单个元素的操作扩展到对其配对的操作。双线性使得可以在配对上执行各种操作,从而开启了构建高级密码学协议的能力。

配对能够在不泄露敏感信息的情况下验证凭据和交易,从而增强了以太坊生态系统中的用户隐私和保密性。此外,它们促进了高级密码学协议的开发,例如基于属性的加密和函数加密。这些协议能够基于特定属性或函数对数据进行细粒度的访问控制和安全共享。

椭圆曲线群由椭圆曲线点组成,并且该群上的运算是加法和标量乘法。该群在加法下是同态的,这意味着运算的顺序(标量乘法和加法)无关紧要。但是,它在乘法下不是同态的,因为不可能将两个椭圆曲线点相乘。

椭圆曲线配对是从两个群(通常表示为 G0G1)中获取元素并在第三个群 GT 中返回元素的映射。要被视为配对,该映射必须满足三个属性:双线性、非退化和效率。

  1. 双线性意味着将配对应用于元素的总和与乘以单个元素的配对相同。
  2. 非退化可以防止配对将所有内容映射到一个的边缘情况,这将是无用的。
  3. 效率确保可以在合理的时间内计算配对。

密码学是区块链安全性的支柱,并且对密码学基本概念的扎实理解对于区块链开发人员至关重要。掌握这些概念使开发人员能够在以太坊生态系统中构建安全且保护隐私的系统。

请继续关注下一期 ZK 密码学基础知识!

OpenZeppelin 正在积极 寻找有才华的人 加入密码学团队。通过加入该团队,研究人员可以为创新密码学解决方案的开发做出贡献,从而增强区块链安全性。

OpenZeppelin 成立于 2015 年,是领先的区块链安全公司,为 Web3 中最受信任的组织提供产品和审计。OpenZeppelin 开发了最受信任的智能合约库和标准,受到前 50 名 DeFi 和 NFT 项目的 100% 的依赖,OpenZeppelin 已为领先的区块链系统发布了 200 多项审计。

立即联系 OpenZeppelin 讨论你的智能合约安全需求。

  • 原文链接: openzeppelin.com/news/cr...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
OpenZeppelin
OpenZeppelin
江湖只有他的大名,没有他的介绍。