密钥分发
在上一段中,我们讨论的了密码系统使用对称密钥,以及缺乏与室友安全共享密钥的有效方式。密钥分发有助于解决这个缺点。接下来,我们将解释如何通过不受信任的通信通道进行密钥交换。
Diffie-Hellman key exchange (Diffie-Hellman密钥交换)
这种密钥交换基于一种算法,该算法在数学上不能在合理的时间内轻松地计算大数的离散对数。在使用数字和抽象公式直接运行之前,我们将使用颜色概述算法。
1. 第1步:Alice和Bob达成了共同颜色的协议。
2. 第2步:Alice选择她不会告诉Bob的秘密颜色。鲍勃会做同样的事情。
3. 步骤3:Alice将共同颜色与秘密颜色混合,结果是混合物。Bob也将他的秘密颜色与普通颜色混合,并将会得到不同于alice的混合物。
4. 步骤4:Alice和Bob交换混合物。这是沟通中最关键的一步,因为”中间人攻击(man-in-the-middle)”可以访问这两种混合物。如果中间人有双方的混合物,这也将会是一个问题。
颜色分解是不可逆的。因此,找到两个秘密颜色的唯一机会是将所有可能的颜色与第一步中的常见颜色混合。此外,请记住,秘密颜色也可以是许多其他颜色的混合。
更新:Diffie-Hellman不会保护您免受中间人攻击。为了了解原因,想象一下攻击者从Alice接收所有消息并将其重播回Bob。
5. 步骤5:Alice将再次将她的秘密颜色添加到Bob发送给她的混合物中。鲍勃将遵循相同的步骤。
最后Alice和Bob将获得一个共同的秘密颜色。现在,Alice和Bob可以安全地交换我们在前一章中讨论的对称密钥,因为他们可以使用上述秘密颜色加密和解密任何消息(通过通信信道发送)。
区块链技术的出现,促进了信息安全领域的发展。在区块链系统中,密钥的分发就成为了一个重要组成部分。密钥分发可以提供安全、稳定、高效的环境,对企业及其客户都有巨大的用处。