区块链密码学和量子威胁

昕阳小编 127 0

自古以来,人们一般都需要以一种只有目标接收者才能看到的方式来传递信息。加密文本和信息被用于从军事应用到外交和商业的各个领域。经过几个世纪的发展,加密以密码学的形式出现,密码学是一门基于信息保护的复杂科学。如果没有现代加密技术,我们今天使用的大多数现代互联网服务,如网上银行、私人信息和个人数据保护都是不可能的。由于密码学是一门相当复杂的科学,我们希望在本文的开头简要介绍一下它的历史。这将使你更好地理解现代加密算法的工作原理。密码学的历史可以分为以下几个时期:

直到16世纪,迷惑敌人的手段都相当原始,使用的方法都是简单的密码,其中每个文字符号都有一个特殊的代码。隐写术也非常流行。它将秘密信息隐藏在另一种信息或媒介中(如用隐形墨水书写在一定条件下可以透露的文本)。这些方法与密码学相关,但又不尽相同。

使用的大多数密码都是单字母替换法的变体。这涉及到根据某种算法创建一个加密表,其中每个明文字母对应一个密文字母。最早记录的例子之一是凯撒密码,这是一种替代密码。

区块链密码学和量子威胁-第1张图片-昕阳网尚力财经小编2022

凯撒密码是如何工作的

形式密码学这一时期的特点是出现了相对抗人工密码分析的形式密码。当时大部分密码分为单字母密码和多字母密码(后者是基于多个备选字母的使用)。在科学之前的密码学中,最后一个词是转子系统,它提供了更大的密码抵抗力,并允许加密过程机械化。借助转子机械,通过改变转轮的相对位置来完成多字母替换,每个转轮执行自己预设的替换模式。这种机器最早的例子之一是英格玛,二战期间在纳粹德国用于秘密通信。

区块链密码学和量子威胁-第2张图片-昕阳网Enigma,最早也是最突出的转子系统应用之一

Enigma是最早也是最突出的转子系统应用之一。随着早期计算机的出现,对转子系统的攻击成为可能,因此密码学进入了下一个发展阶段。在这个阶段,扩散和混淆的方法出现了。分组密码也出现了。它们比旋翼系统具有更强的抗攻击能力,但只能由电子计算设备在实际中应用。本质上,分组密码非常类似于多字母密码。在多字母密码中,明文消息被分成特定长度的块,然后每个块用自己的替换表加密。

计算机密码学计算机密码学的出现是由于计算机的发展,其性能水平足以创造出比人工和机械密码具有更高加密率和更高密码抗力的密码系统。在这个阶段,最常用的加密方法最初是基于相当简单的原理的对称算法。假设Alice和Bob需要交换消息,以确保在拦截消息时没有其他人可以读取它们的内容。因此,Alice和Bob有一个公钥(本质上是一个密码)。有了这个密钥,鲍勃可以加密一条信息,并把它传送给爱丽丝。相反,Alice可以在她这边使用相同的密钥来解密接收到的消息并读取其内容。从Alice到Bob的反向通信将以相同的方式进行。尽管这些类型的算法简单快速,但它们也有一些严重的缺点。主要问题是需要有一种安全的方式将公钥传递给参与者。理论上,爱丽丝可以见到鲍勃并把钥匙交给他。但是,如果他们想要与大量的对等体交换消息,或者他们彼此相距很远,那么这种方法是行不通的。现在最突出的对称算法是高级加密标准(AES)、数据加密标准(DES)、国际数据加密算法(IDEA)和世界自动密钥加密算法。1975年,为了满足更高级加密方法的需要,引入了非对称加密的概念。让我们回到爱丽丝对鲍勃。 现在他们每个人都有自己的密钥,也叫私钥,因为除了它的所有者,没有人知道这个密钥。对于任何人都能知道的每一个私钥,也有一个可能的公开公钥。这对密钥的工作方式是,公钥只能用于消息加密,而不能用于解密。为了解密用公钥加密的消息,您需要相应的私钥。现在,如果Bob想给Alice发送消息,他将获得她的公钥(在开放网络上可以免费获得),加密消息并发送。而爱丽丝可以用自己的私钥解密,私钥是她唯一知道的,不用担心消息内容会暴露给第三方。

区块链密码学和量子威胁-第3张图片-昕阳网非对称加密的工作原理

区块链上的密码学现在我们可以讨论如何在区块链使用密码学了。密码学是任何区块链的核心,它提供了系统的基本功能。区块链架构意味着网络参与者之间的信任建立在数学和经济学的基础上,即形式化。密码学还保证了安全性,这种安全性是建立在所有操作的透明性和可验证性基础上的,这与业界传统的方法不同,传统的方法限制了系统关键组件的可见性。各种加密技术保证了区块链交易账本的大概率不变性,并为网络和区块链数据提供通用的认证和访问控制。

比特币首先,我们将详细描述第一种加密货币的加密技术,因为它将为理解这个复杂的问题提供一个起点。哈希函数是大多数现有加密货币的加密基础。它可以将任意输入数据映射成固定大小的数据,即可以将随机长度的数据数组转换成固定长度的位串。这个操作是不可逆的,也就是在函数f(x)=y中,如果我们知道x,就可以找到y,但是知道y就找不到x,在比特币中,函数是由SHA-256执行的。哈希函数的另一个重要特性是,即使对输入数据的最小更改也会导致哈希值的急剧变化。因此,在区块链中应用哈希函数是为了保证整个交易链的完整性。每个新的事务块都引用分类帐中前一个块的哈希值。之前的hash值依赖于所有过去事务的hash值,所有hash函数合并成一个hash行,通过things在二进制情况下建立hash树(Merkle tree)。

区块链密码学和量子威胁-第4张图片-昕阳网

Merkle Tree

这样,哈希值就被用来替代传统的数据结构指针。通过使用哈希函数,您可以表达区块链的一般状态。因此,任何块的哈希值的不变性保证了整个区块链的不变性。接下来,我们将考虑在交易本身中使用加密技术。现在我们需要回忆一下什么是非对称加密。当我们要进行比特币交易时,接收方的公钥(通过哈希函数转换)会被用作接收地址。然后,发送者的私钥将用于签署交易,因此任何网络参与者都将能够验证交易是否是由特定比特币的实际所有者发起的。私钥是随机生成的,可以是1到22之间的任何自然数?通过数学计算可以变成大家熟悉的16位代码转换。然后使用ECDSA从私钥中获取公钥。

以太坊ECDSA也用于在以太坊中生成公钥。利用SHA-3 (KECCCAK-256)哈希函数实现了其区块链的完整性和不变性。

量子威胁虽然当代计算机对私钥的攻击在数学上极其复杂,但由于量子计算机的出现,未来解决这一问题的可能性很大。量子计算机是一种新级别的计算机器,在计算能力上大大超越了现有的计算机。首先,我们来看看为什么量子计算机会构成威胁。在传统计算中,信息处理的单位是比特。每个位只能处于两种可能的状态之一:0或1。注册表的2 n n n位可以包含一的可能组合的状态和形式。经典算法是一系列简单的后续操作。 在量子器件中,用量子位(qubits)代替比特。位和位的主要区别在于它们可以同时处于1,0状态(叠加)。在经典计算中,将2 n个尚力财经小编2022数据变量中的一个加载到计算机内存中,并计算该变量的函数值。因此,一次只能处理2 N个可能的数据集中的一个。但是在量子计算机的内存中,初始数据的所有2 n种组合都是存在的,并且是同时处理的。这意味着在一次运算中计算出一个数据集的2 n个变量的所有可能函数(最终只会得到一个解)。这样,量子器件的计算能力将有助于通过使用Shor算法(减少阻力和应用新的计算方法)获得私钥。

区块链密码学和量子威胁-第5张图片-昕阳网

量子计算机作为时间的函数破解签名方案所需时间(秒)的两种估计

目前保护用户免受量子计算机攻击的方法主要只有几种:基于散列值的加密;基于代码的加密;多变量加密;超奇异椭圆曲线同源密码系统:对称键量子理论;基于格的加密。这些方法具有足够长的密钥并遵循安全要求,能够抵抗经典攻击和量子攻击。不幸的是,由于技术困难和大尺寸的量子电阻签名(存储这种签名的需要将大大增加区块链的大小),现有的解决方案无法应对即将到来的威胁。这就是为什么比特币、以太坊、NEO和其他一些加密货币的开发者都在寻找解决这个问题的方法。然而,有几个项目已经将后量子加密作为保护数据的基本技术。1.IOTA为物联网(IoT)打造的加密货币。它使用DAG(有向无环图)代替标准的区块链。其抗量子攻击能力由Winternitz signature提供,这是一种一次性的轻量级签名技术。遗憾的是,目前这种类型的签名还没有得到数学上的证实。2.反量子账本项目的名字不言自明。它使用扩展的Merkle签名方案(XMSS)来实现量子电阻。3.GEO协议在GEO网络中,每个节点存储其当前余额和与所有邻居节点的信用关系(本地存储)。协议的这一特性,加上缺乏通用的分布尚力财经小编2022式账本(GEO是非区块链解决方案),使我们能够使用——Lamport签名,这是解决量子问题的最佳方法之一。这种方法的本质是对每笔交易使用一次性密钥。这些密钥是预先生成的,数量有限。在所有预先生成的密钥被使用后,将生成一个新的密钥。这使我们能够安全快速地进行无限制的交易。

结论

标签: 2022 以太坊

抱歉,评论功能暂时关闭!

微信号已复制,请打开微信添加咨询详情!