加密与安全_ 解读非对称密钥解决密钥配送问题的四个方案

文章目录

Pre


对称密钥的死穴 - 经典的密钥配送问题

假设 Alice 和 Bob 两个人需要相互发送消息,这封邮件里面的信息比较私密,因此不想让第三人知道.

Alice 思来想去,觉得有必要对内容做个加密. 这样即便被 Eve 窃取了,他也无法知道内容.

是不是 Alice 使用对称密钥将加密数据通过邮件传输给 Bob 就可以高枕无忧了? Alice 加密的数据,Bob 需要解开才行.

那问题就来了:如果 Alice 可以通过安全通道将密钥传递给 Bob,那么还有啥必要搞加密呢? 如果没有这样的安全通道,那么 Bob 又如何接受密钥呢?

这就是密钥配送问题的由来 .


现实世界中,这个问题如何解决呢? 通常需要下发密钥的时候,会同时通过两个渠道发送两个信封。 这两个信封是由两组人走不同的路线到达同一个地点。 只有将两个信封内的数据放到一起才是完整的密钥。否则单纯拿到其中一封并不能解决任何问题。


什么是非对称密钥

非对称密钥就是为了解决密钥配送问题,通常采用的方案有四个

  • 共享密钥
  • 密钥分配中心
  • Diffie-Hellman 密钥交换
  • 公钥密码

接下来我们:

  1. 介绍共享密钥的定义、工作原理、优缺点及应用场景。
  2. 讲解密钥分配中心的定义、工作原理、优缺点及应用场景。
  3. 详细说明Diffie-Hellman密钥交换体系的定义、工作原理、优缺点及应用场景。
  4. 介绍公钥密码体系的定义、工作原理、优缺点及应用场景,并详细说明RSA算法

非对称密钥解决密钥配送问题的四个方案

共享密钥

定义:共享密钥是一种简单的密钥配送方案,通过安全通道事先将密钥传递给通信双方。

工作原理:

  • Alice和Bob通过某种安全通道(如面对面交换、使用安全信道)共享一个密钥。
  • 使用共享密钥进行加解密。

优点:

  • 实现简单,适用于小范围内的通信。

缺点:

  • 随着参与者数量的增加,管理和分发密钥的成本和复杂性急剧上升。
  • 安全性依赖于共享密钥的保密性和安全通道的安全性。

应用场景:

  • 小型闭合网络或组织内部的通信,如银行内部系统。

密钥分配中心(KDC)

定义:密钥分配中心(Key Distribution Center, KDC)是一个集中管理密钥的实体,负责生成和分发临时密钥。

工作原理:

  1. KDC为每个用户生成一个密钥,并存储在数据库中。
  2. 当Alice需要和Bob通信时,向KDC申请临时密钥。
  3. KDC生成临时密钥,并使用Alice和Bob的密钥分别加密临时密钥。
  4. KDC将加密后的临时密钥分别发送给Alice和Bob。
  5. Alice和Bob解密得到临时密钥,使用临时密钥进行加密通信。
  6. 通信结束后,销毁临时密钥。

优点:

  • 扩展性较好,适用于中等规模的用户群体。
  • 减少了每对通信双方需要直接共享密钥的需求。

缺点:

  • 密钥分配中心是一个单点故障,如果KDC失效,所有通信都会中断。
  • 需要高度信任KDC的安全性和可靠性。

应用场景:

  • 中等规模的网络环境,如公司内部网络或组织内的通信。

Diffie-Hellman 密钥交换体系

定义:Diffie-Hellman密钥交换是一种基于数学问题的密钥交换协议,允许通信双方在不安全的信道上协商共享密钥。

工作原理:

  1. Alice和Bob各自选择一个私有密钥,并计算各自的公开值。
  2. Alice和Bob交换公开值。
  3. Alice使用Bob的公开值和自己的私有密钥计算共享密钥。
  4. Bob使用Alice的公开值和自己的私有密钥计算共享密钥。

即使Eve截获了公开值,也无法推导出共享密钥。

优点:

  • 无需事先共享密钥,适用于不安全信道。
  • 提供了良好的安全性。

缺点:

  • 需要适当的数学基础和计算能力。
  • 不提供身份验证,需结合其他机制防止中间人攻击。

应用场景:

  • 安全电子邮件、VPN等需要安全密钥交换的场景。

公钥密码体系

密钥配送问题痛点在于加解密使用的是相同的密钥,所以才需要交换。 如果 Alice 和 Bob 使用的不同的密钥呢? 那是不是就不需要交换了呢? 这正是公钥体系的核心: 双方使用不同的密钥进行加解密。

定义:公钥密码体系使用一对密钥进行加解密:公钥用于加密,私钥用于解密。

工作原理:

  1. Alice和Bob各自生成一对公钥和私钥。
  2. Alice和Bob交换公钥。
  3. Alice使用Bob的公钥加密消息,发送给Bob。
  4. Bob使用自己的私钥解密消息。

在这个过程中,公钥可以任意传递,而私钥决定不能外泄

优点:

  • 无需安全通道传递公钥,私钥无需共享。
  • 提供了身份验证和数字签名功能。

缺点:

  • 加解密速度较慢,不适合大数据量的加密。

应用场景:

  • 安全电子邮件、数字签名、SSL/TLS等需要高安全性的场景。

RSA算法

定义:RSA是一种常见的公钥加密算法,基于大素数分解的难题。

加密公式 :

y = x\^e \\mod N

其中,( x )为明文,( y )为密文,( e )和( N )为公钥。

解密公式 :

x = y\^d \\mod N

其中,( d )和( N )为私钥。

RSA的安全性依赖于大素数分解的计算难度,公钥和私钥是一对不可逆的数学关系。

应用场景:

  • 安全数据传输、数字签名和身份验证等。
相关推荐
程序员-Benothing3 小时前
Linux安全加固指南:账号、权限、服务、审计基线
linux·运维·安全
数据库安全8 小时前
AI数据访问安全 |如何控制AI访问权限,防止越权
数据库·安全
2501_937767169 小时前
面向设计 / 研发部门:终端文件统一归档 + 服务器定时备份实践
运维·安全
珠海西格电力10 小时前
物联网(IoT)在零碳园区中的关键作用:万物互联与数据采集
大数据·人工智能·物联网·安全·系统架构·能源
安教安全员通关宝10 小时前
【证书管理】安全员 C 证延续:条件、时间窗口与各省口径对照
安全
网易易盾12 小时前
直播话术合规改造:六类违规表述判定与改写规则
大数据·人工智能·安全
dk_tjy12 小时前
迪康加密系统技术解析:驱动层透明加密的机制、策略与工程权衡
运维·安全·网络安全·终端安全管理·数据防泄漏
龙亘川12 小时前
城市公共安全治理如何从“人海战术“走向“数据驱动“?
大数据·数据库·人工智能·安全·microsoft·智慧城市·数据可视化
合尘猫13 小时前
给 AI 客服加权限边界:12 项自查清单与一次越权测试
人工智能·安全·llm
QYR_1114 小时前
憎水涂料市场分析:2032年全球规模将达46.49亿美元
网络·安全