【网络信息安全】鉴别和密钥分配协议

主要内容

  • 鉴别协议

    • Needham-Schroeder双向鉴别协议
    • 改进的Needham-Schroeder协议
    • 单向鉴别协议
  • 密钥分配协议

    • 对称密钥的分配
    • 公开密钥的分配
    • 使用公开加密算法分配对称密钥

鉴别和密钥分配的作用:

  • 鉴别能正确识别信息发送方身份,且检测信息内容的任何修改。

  • 加密明文的保密主要依赖于密钥的保密

    • 密钥管理涉及密钥生成、分配、使用、存储、备份、恢复以及销毁
    • 如何分配已生成密钥是密码学领域的难点问题;

7.1 鉴别协议

鉴别:实体之间建立身份认证的过程,包括通信实体鉴别和通信内容鉴别。

鉴别易受重放攻击:攻击者发送一个目的主机已接收的包,来达到欺骗目的主机目的。
• 最坏情况下:冒充合法方;
• 其他情况下:扰乱正常操作。

对付重放攻击的现时(Nonce)
鉴别消息中增加一项:现时(仅使用一次):

  • 随机数:不可猜测,性质最好,但不适合无连接应用。
  • 时间戳:需要时钟同步,协议必须能容错。
  • 序列号:每一方都要记住其它各方与其通信时的最后一个序列号,难以实现;还要求系统抗毁。
  • 生存期

7.1.1 Needham-Schroeder双向鉴别协议

双向鉴别:能够正确鉴别出通信对方的身份,同时可以交换会话密钥,用于保证信息的安全传输。

Needham-Schroeder协议实现双向鉴别和密钥分配

  • 采用对称加密体制密钥分配中心KDC技术
  • 后来很多鉴别协议(如Kerberos)都基于N-S协议

两层对称加密结构:需要使用一个可信任的密钥分配中心KDC
在这里插入图片描述

N-S协议的双向鉴别和密钥分配过程:

在这里插入图片描述
N-S 协议的实现过程:
步骤2:A 安全获得新会话密钥 Ks,N1说明不是重放。
步骤3:消息只能被 B 解密,A 证实对方是 B,解密后报文中的IDA使得 B 证实对方是 A。
步骤4 说明 B 已知道 Ks,步骤5 使 B 确信 A 也知道 Ks,现时f(N2)使B确信这是一条新的消息。
增加步骤4 和5 可防止攻击者截获步骤3 中的报文并直接重放。

较难实现的重放攻击

  • 假设攻击者 X 已获得一个旧的会话密钥 Ks
  • X 假冒 A 重放步骤3 的消息诱使 B 使用旧的会话密钥进行通信。
  • 若 X 可截获步骤4 中的握手消息,就可模仿步骤5 中 A 的应答。
  • X 可发送伪造的消息给 B,而 B 以为这是 A 使用才分发的会话密钥加密发送过来的消息。

7.1.2 改进的Needham-Schroeder协议

Denning 对 N-S 协议进行改进,加入了一个时间戳
在这里插入图片描述
时间戳 T 使 A 和 B 确信该会话密钥 Ks 刚刚产生

一个可抗重放的鉴别协议

同时解决了重放攻击和 “禁止-重放攻击”
在这里插入图片描述
使 A 拥有一个可向 B 进行后续认证的 “证明书”
在这里插入图片描述

老师总结

我们重点讲的是3。
在这里插入图片描述

7.1.3 单向鉴别协议

一、使用对称加密算法

修改N-S协议就能用于电子邮件的单向鉴别(不能要求发送方A和接收方B同时在线):
在这里插入图片描述
不能抗重放攻击,且加入时间戳的作用非常有限。

二、使用公开加密算法

  1. 保证消息的机密性
    A → B : E(PUB, Ks) || E(Ks, M)
  2. 实现鉴别(数字签名)
    A → B : M || E(PRA, H(M)) (并不能真正实现)
  3. 同时实现鉴别和机密性
    A → B : E(PUB, [M || E(PRA, H(M))])
  4. 提高加密效率还需使用数字信封
    A → B : E(PUB, Ks) || E(Ks, [M || E(PRA, H(M))]) (PGP加密系统)

7.2 密钥分配协议

  1. 加密算法公开且是国际标准,安全算法可依靠大量学术研究。

  2. 明文保密依赖于密钥保密,密钥保密更加困难。

如何安全可靠、迅速高效地分配和管理密钥是密码学领域的重要研究课题。

不同性质密钥的管理问题

  1. 要使对称加密有效进行,通信双方必须共享一个密钥,这个密钥还要防止被他人获得;
  2. 要使公开加密有效进行,通信各方必须发布其公开密钥,并防止其私钥被其他人获得。

密钥还需经常更换,以便攻击者知道密钥的情况下使得泄漏的数据量最小。

密钥分配的四种方法
前两种方法不适用于大量连接的现代通信

  1. A 选定密钥,通过物理方法安全传递给 B。
  2. 可信任第三方 C 选定密钥,通过物理方法安全传递给 A 和 B。
  3. 若 A 和 B 都有到第三方 C 的加密连接,C 通过该连接将密钥传递给 A 和 B
    —— 密钥分配中心KDC,常用于对称密钥的分配。
  4. 若第三方 C 发布 A 和 B 的公钥,它们可用彼此的公钥来加密通信
    —— 认证中心CA,常用于公开密钥的分配。

7.2.1 对称密钥的分配

一、集中式密钥分配方案

N-S协议存在的问题:

  • 通信量大,需要较好的鉴别功能以鉴别 KDC 和通信方。
  • 主密钥多,单个 KDC 易形成瓶颈,无法支持大型网络。

解决方案:

  • 多个 KDC 之间存在层次关系。
  • 某个 KDC 既不会形成瓶颈,也不会单点失效。

二、分散式密钥分配方案

使用 KDC 进行密钥分配要求 KDC 是可信任的并且应该保护它免于被破坏。

解决方案:

  1. 把单个 KDC 分散成几个 KDC 会降低这种风险。
  2. 更进一步把 KDC 分散到所有通信方,即通信方同时也是 KDC,自己保存同其他所有通信方的主密钥。

在这里插入图片描述
n 个通信方的网络要保存 [n(n一1)/2] 个主密钥。对于小型网络或大型网络的局部范围,该方案可行。
在这里插入图片描述

7.2.2 公开密钥的分配

获取公开密钥的四种途径:

  1. 公开密钥的公开宣布
    PGP 用户可将自己公钥附加到消息上发送出去
    —— 公钥很容易被冒充。

  2. 公开可用目录
    由可信任组织维护一个公开目录,为每个参与者维护一个目录项{用户名,用户的公开密钥}
    —— 公钥很容易被冒充。

  3. 公开密钥管理机构
    CA 对通信双方进行认证,每个通信方都有 CA 公钥并通过 CA 获得其他任何通信方的公钥
    —— 每一用户想与他人联系需求助 CA,CA 易成瓶颈。

  4. 公开密钥证书
    CA 事先为用户颁发数字证书,用户通信时只需下载并验证对方证书得到对方公钥,无需再联系 CA。

数字证书的概念

  • 作为可信第三方,CA需检验用户公钥的合法性。

  • CA为每个用户发放数字证书(经CA私钥签名的包含公钥拥有者信息及其公钥的遵循X.509标准的文件)。CA的签名使得攻击者不能伪造和篡改证书。

  • 数字证书的作用:证明证书中列出的用户合法地拥有对应的公钥。

利用数字证书分配公开密钥 :在这里插入图片描述

7.2.3 使用公开加密算法分配对称密钥

在这里插入图片描述

使用公开加密算法分配对称密钥的原理

假定通信双方A和B已通过某种方法得到对方公钥
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

萌宅鹿同学

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值