第八章 密钥分配与管理
密钥管理
密钥托管是具有备份解密密钥的加密技术,它允许获得 授权者(包括用户、民间组织和政府机构)在特定的条件下, 借助于一个以上持有数据恢复密钥可信赖的委托人的支持来 解密密文。
•密钥的分类
在一个密码系统中所使用的密钥的种类是非常繁杂的。对 应于层次化的密钥结构,密钥种类的不同表现在层次结构上可 能位于不同的层次上,但同时也可能是在相同的层次上具有不 同的功能,例如文件加密密钥和数据加密密钥等;此外,同一 密钥在不同的使用环境中也可能属于不同的种类。从具体的功 能来看,在一般的密码系统中,密钥可以分为基本密钥、会话 密钥(数据加密密钥)、密钥加密密钥和主密钥。 (1)基本密钥(Base Key):又称为初始密钥(primary key) 或用户密钥(user key)。它是由用户选定或由系统分配给用 户的,可以在较长时间内(相对于会话密钥)由一对用户(例 如密钥分配中心与某一用户之间,或者两个用户之间)所专用 的密钥。在某种程度上,基本密钥还起到了标识用户的作用。
都是固化在Clipper芯片上。
(2)用芯片加密通信 通信双方为了通信,都必须有一个装有Clipper芯片 的安全防窜扰设备,该设备主要实现建立安全信道所需 的协议,包括协商或分配用于加密通信的80比特秘密会 话密钥KS。 (3)无密钥存取 在需要对加密的通信进行解密监控时(即在无密钥 且合法的情况下),可通过一个安装好的同样的密码算 法、族密钥KF和密钥加密密钥K的解密设备来实现。由于 被监控的通信双方使用相同的会话密钥,解密设备不需 要都取出通信双方的LEAF及芯片的单元密钥,而只需取 出被监听一方的LEAF及芯片的单元密钥。
Escrow Encryption Standard,托管加密标准),该标准 体现了一种新思想,即对密钥实行法定托管代理的机制。
密钥分配与管理PPT精选文档
2020/10/7
13
解决办法
为解决这种情况,同时支持没有共同密钥分配中 心的终端之间的密钥信息的传输,我们可以建立 一系列的密钥分配中心,各个密钥分配中心之间 存在层次关系。各个密钥分配中心按一定的方式 进行协作,这样,一方面主密钥分配所涉及的工 作量减至最少,另一方面也可以使得某个KDC失效 时,只影响其管辖的区域,而不至于影响整个网 络。
要使公开加密有效地进行,信息接收的一方必须发布其 公开密钥,同时要防止其私有密钥被其他人获得。
2020/10/7
7
密钥分配的四种方法
(1)密钥可以由A选定,然后通过物理的方法安全地传递给B。
(2) 密钥可以由可信任的第三方C选定,然后通过物理的方 法安全地传递给A和B。 上述方法由于需要对密钥进行人工传递,对于大量连接的 现代通信而言,显然不适用。
目前这方面的主流技术是密钥分配中心KDC技术。我们 假定每个通信方与密钥分配中心KDC之间都共享一个惟一 的主密钥,并且这个惟一的主密钥是通过其他安全的途径 传递的。
2020/10/7
10
密钥分配中心KDC的密钥分配方案
(1) AKDC:IDa || IDb || N1 (2) KDCA:EKa[Ks || IDa|| IDb ||N1||EKb[Ks||IDa]]
2020/10/7
12
问题
单个密钥分配中心KDC无法支持大型的通信网络。 每两个可能要进行安全通信的终端都必须同某个 密钥分配中心共享主密钥。当通信的终端数量很 大时,将出现这样的情况:
每个终端都要同许多密钥分配中心共享主密钥,增加 了终端的成本和人工分发密钥分配中心和终端共享的 主密钥的成本。
ch-08密钥管理
复习:共享密钥分配的基本办法复习:共享密钥分配的基本办法-3
方法3 如果A 方法3:如果A、B事先已有一密钥,则其中 事先已有一密钥, 一方选取新密钥后, 一方选取新密钥后,用已有的密钥加密新密 钥并发送给另一方。 钥并发送给另一方。 讨论: 讨论:
• 既可用于链路加密也可用于端对端加密 • 但是,攻击者一旦获得一个密钥就可很方便地 但是, 获取以后的所有密钥 。 • 并且,成千上万的初始密钥还是要想办法分发 并且, 下去。 下去。
KUa KUa KUb KUb
… …
… …
A
KUa KUa
B
KUb
KUb
公开发布的特点
特点: 特点: • 简单、方便 简单、 • 任何人都可伪造这种公开发布,即发布伪 任何人都可伪造这种公开发布,即发布伪 造的公钥。 造的公钥。假冒者既可以用伪造的公私钥 获得本该发给他人的消息, 获得本该发给他人的消息,也可以用其获 得认证。 得认证。
密钥管理综合了密钥的生成 密钥管理综合了密钥的生成、分 生成、 存储、销毁等各环节中的保密 配、存储、销毁等各环节中的保密 措施。所有的工作都围绕一个宗旨: 措施。所有的工作都围绕一个宗旨: 确保使用中的密钥是安全的。 确保使用中的密钥是安全的。
在密钥管理的各个环节中, 在密钥管理的各个环节中,密钥 分配是最棘手的问题。 分配是最棘手的问题。大中型网络 中多采用快速、安全地自动密钥分 中多采用快速、安全地自动密钥分 方法。 配方法。 一定程度的手工交换密钥仍然是 必需的, 必需的,只是应用的范围明显地减 小了。 小了。
其中的C通常是一个可信的负责为用户(主机、 其中的C通常是一个可信的负责为用户(主机、进 密钥分配中心(KDC)。 应用程序)分配密钥的密钥分配中心 程、应用程序)分配密钥的密钥分配中心(KDC)。 每一用户X KDC之间有一共享密钥 每一用户X和KDC之间有一共享密钥Kx,称为主密 之间有一共享密钥K 称为主密 此密钥专用于密钥分配。 钥,此密钥专用于密钥分配。 两个用户A 两个用户A和B需要进行通信时,KDC选取一个临 需要进行通信时,KDC选取一个临 时密钥称为会话密钥 会话密钥K 并分别在主密钥K 时密钥称为会话密钥Ks ,并分别在主密钥KA 、KB 的保护下,将会话密钥密钥分配给用户, 的保护下,将会话密钥密钥分配给用户,用于这一 对用户之间的保密通信。通信完成后, Ks即被销毁。 对用户之间的保密通信。通信完成后, 即被销毁。
密钥分配与密钥管理
第5章密钥分配与密钥管理5.1单钥加密体制的密钥分配5.1.1密钥分配的基本方法5.1.2一个实例图5.1密钥分配实例2现代密码学(第2版)5.1.3密钥的分层控制5.1.4会话密钥的有效期5.1.5无中心的密钥控制图5.2无中心的密钥分配5.1.6密钥的控制使用图5.3控制矢量的使用方式现代密码学(第2版) 3 5.2公钥加密体制的密钥管理5.2.1公钥的分配1. 公开发布2. 公用目录表3. 公钥管理机构图5.4公钥管理机构分配公钥4. 公钥证书图5.5证书的产生过程5.2.2用公钥加密分配单钥密码体制的密钥1. 简单分配4现代密码学(第2版)图5.6简单使用公钥加密算法建立会话密钥2. 具有保密性和认证性的密钥分配图5.7具有保密性和认证性的密钥分配5.2.3 Diffie Hellman 密钥交换图5.8 Diffie Hellman密钥交换5.3密钥托管5.3.1美国托管加密标准简介1. Skipjack算法2. 托管加密芯片现代密码学(第2版) 5图5.9托管加密芯片的编程过程3. 用托管加密芯片加密图5.10 LEAF产生过程示意图4. 法律实施存取6现代密码学(第2版)图5.11对加密通信的法律实施存取过程5.3.2密钥托管密码体制的组成成分图5.12密钥托管密码体制的组成成分现代密码学(第2版)7 5.4随机数的产生5.4.1随机数的使用1. 随机性2. 不可预测性5.4.2随机数源5.4.3伪随机数产生器5.4.4基于密码算法的随机数产生器1. 循环加密图5.13循环加密产生伪随机数2. DES的输出反馈(OFB)模式3. ANSI X9.17的伪随机数产生器8现代密码学(第2版)图5.14 ANSI X9.17伪随机数产生器5.4.5随机比特产生器1. BBS(blum blum shub)产生器2. Rabin产生器3. 离散指数比特产生器现代密码学(第2版)9 5.5秘密分割5.5.1秘密分割门限方案5.5.2 Shamir门限方案5.5.3基于中国剩余定理的门限方案习题10现代密码学(第2版)。
密钥分配与密钥管理课件
异常情况处理机制
密钥泄露处理
一旦发现密钥泄露,立即启动应急响 应机制,撤销泄露密钥,重新分发新 密钥,并对泄露原因进行调查和处理 。
密钥失效处理
备份与恢复
定期备份密钥,并制定详细的密钥恢 复方案,以防意外情况导致密钥丢失 。
当密钥过期或因其他原因失效时,及 时通知相关用户更新或重新申请密钥 ,确保业务正常运行。
持续改进方向和目标设定
改进方向
根据风险评估结果,确定需要改进的方面,如加强密钥管理、完善审计机制等。
目标设定
明确改进的具体目标,如提高密钥的安全性、降低密钥泄露风险等。
效果评估及反馈机制
效果评估
定期对改进措施的效果进行评估,包括安全 风险发生的频率、影响程度等。
反馈机制
建立用户反馈渠道,收集用户对改进措施的 意见和建议,以便及时调整和优化。
非对称加密算法原理及实践
原理
采用公钥和私钥进行加密和解密操作,其中公钥用于加密,私钥用于解密,常见 算法包括RSA、ECC等。
实践
在通信双方未共享密钥的情况下,使用非对称加密算法进行安全通信。发送方使 用接收方的公钥加密信息,接收方使用自己的私钥解密信息。
数字签名技术应用场景
数据完整性验证
发送方使用自己的私钥对信息进行数 字签名,接收方使用发送方的公钥验 证签名的有效性,确保信息在传输过 程中未被篡改。
时效性保障
设定密钥有效期限,过期 密钥自动失效,确保密钥 在有效期内使用。
更新周期确定和执行
更新周期确定
根据密钥使用频率、重要性和安 全需求,制定合理的密钥更新周
期,如季度、半年或一年等。
定期提醒
设置定期提醒机制,提醒用户及时 更新密钥,确保密钥持续有效。
密钥管理与分发 - 西安电子科技大学
三层结构 基本依据
性能 向后兼容性
2020/2/28
西安电子科技大学计算机学院
24
§14.3 公钥分发
公钥的分配 公钥密码用于传统密码体制的密钥分配
2020/2/28
西安电子科技大学计算机学院
25
公钥的分配
公钥分配方法
公开发布 公开可访问目录 公钥授权 公钥证书
SET (电子商务交易,SET是一种开放的加密安全规范,用 于保护Internet上的信用卡交易)
S/MIME(保证电子邮件安全,侧重于作为商业和团体使用 的标准,而PGP则倾向于为许多用户提供个人电子邮件的安 全性)
2020/2/28
西安电子科技大学计算机学院
36
2020/2/28
公钥证书的使用
单向认证 双向认证 三向认证
三种方法都采用公钥签名
2020/2/28
西安电子科技大学计算机学院
45
单向认证
1 消息 ( A->B) 完成单向认证
A的标识和A创建的消息 B所需要的消息 消息的完整性和原创性(不能多次发送)
消息必须含有时间戳,临时交互号和B的 标识,并由A签名
西安电子科技大学计算机学院
8
一种透明的密钥控制方案
密钥分发方案
2020/2/28
西安电子科技大学计算机学院
9
密钥分配模式
2020/2/28
西安电子科技大学计算机学院
10
层次式密钥控制
单个KDC在网络规模很大时不实际 层次式可提高效率并降低风险
2020/2/28
西安电子科技大学计算机学院
1. 用户的密钥被认为不安全了 2. 用户不再信任该CA 3. CA证书被认为不安全了
密钥分配与密钥管理
密钥分配与密钥管理
17
5.2.1 公钥的分配
1. 公开发布
公开发布指用户将自己的公钥发给每一其他用户,或向 某一团体广播
如PGP(pretty good privacy)中采用了RSA算法,它的很多用 户都是将自己的公钥附加到消息上,然后发送到公开(公共) 区域,如因特网邮件列表
控制向量(CV) 主密钥(Km) 加密的会话密钥(Kout)
杂凑函数
杂凑函数
+
密钥输入(Kin)
明文输入
加密函数
+
密钥输入(Kin)
密文输入
解密函数
加密的会话密钥(Kout)
(a) 结合
密钥分配与密钥管理
控制矢量的使用方式
会话密钥(Ks)
(b) 恢复
15
首先由一杂凑函数将控制矢量压缩到与加密密钥等长,然后与 主密钥异或后作为加密会话密钥的密钥,即
公用目录表还易受到敌手的窜扰(破坏)
用户需要登录到公钥目录表中自己查找收方的公钥
密钥分配与密钥管理
20
3. 公钥管理机构
为防止用户自行对公钥目录表操作所带来的安全威胁,假定有一 个公钥管理机构来为各用户建立、维护动态的公钥目录
即由用户提出请求,公钥管理机构通过认证信道将用户所需要查 找公钥传给用户
密钥分配与密钥管理
9
5.1.4 会话密钥的有效期
会话密钥更换得越频繁,系统的安全性就越高。
因为敌手即使获得一个会话密钥,也只能获得很少的密文。
但另一方面,会话密钥更换得太频繁,又将延迟用户之间 的交换,同时还造成网络负担。
所以在决定会话密钥的有效期时,应权衡矛盾的两个方面
对面向连接的协议(如TCP)
第08章 密钥管理
计算机科学与技术学院
10
公钥证书
每个证书包含一个公开密钥以及其他信息,它由一个证书管理 机构制作,并发给具有相匹配的私有密钥的参与者。一个参与 者通过传输它的证书将其密钥信息传送给另一个参与者,其他 参与者可以验证证书是否是管理机构制作的
密钥分配 中心(KDC)
KUa
KUb
CA = EKRauth[时间 1, IDA, KUa] CB = EKRauth[时间 2, IDB, KUb]
(1)CA A (2)CB B
计算机科学与技术学院
11
公钥证书
• 采用公钥证书须满足以下要求:
– – – – 任何参与者都可以阅读证书以确定证书拥有者的名字和公 开密钥。 任何参与者都可以验证证书是来自证书管理机构还是赝品。 只有证书管理机构才能制作和更新证书。 任何通信方可以验证证书的当前性。
计算机科学与技术学院
• 结果是A和B都得到了Ks,并且不知道Ks也被E获知。
计算机科学与技术学院
15
具有保密和认证的密钥分配
• 假定A和B已经交换了公开密钥。接下来进行的步骤是:
– A使用B的公开密钥加密一个发给B的报文,这个报文包含一 个A的标识符ID和一个现时N1 – B给A发送一个用KUa加密的报文,其中包含A的现时N1以及 一个B产生的新现时N2 – A返回一个用B的公开密钥加密的N2以便使B确信它的对方是 A – A选择一个秘密密钥Ks并发送M = EKUb[EKRa[Ks]]给B – B计算DKUa[DKRb[M]]恢复秘密密钥。
12
秘密密钥的公钥加密分配
• 公钥分配后,可以使用公钥进行安全通信
– 缺点:加密速度慢
• 更合理的做法:将公钥加密当作一个分配对称 加密所用的秘密密钥的工具。 • 如何使用公钥进行秘密密钥分配?
密码学密钥分配和密钥管理共66页文档
静态分配
一个有n个用户的系统,需实现两两之间通信
用户1 用户2 … 用户n
对称密钥配置
非对称密钥配置
K1-2,K1-3,…,K1-n n个用户公钥,用户1自己私钥
K2-1, K2-3,…,K2-n n个用户公钥,用户2自己私钥
Kn-1, Kn-2,…,Kn-n-1 n个用户公钥,用户n自己私钥
• n个用户,需要n(n-1)/2个共享密钥
通常把密钥分为两大类型,即数据加密密 钥和密钥加密密钥。
密钥加密密钥又可分为:
主密钥:对现有的密钥或存储在主机中的 密钥加密,加密对象初级密钥和二级密钥。
初级密钥:用来保护数据的密钥。它也叫 数据加密/解密密钥。当初级密钥用来进行 通讯保护时,叫做通讯密钥。用来保护文 件时叫做文件密钥。
二级密钥:它是用来加密保护初级密钥的密钥。
n=100 时, C(100,2)=4,995 n=5000时, C(500,2)=12,497,500
(2)数字签名的问题 传统加密算法无法实现抗抵赖的需求。
概述
从理论上说,密钥也是数据,不过它是用来 加密其它数据的数据,因此,在密码学的研 究中,不妨把密钥数据与一般数据区分开来。 在设计密码系统时,对于密钥必须考虑以下 问题:
动态分配
中心化的密钥管理方式,由一个可信赖的联机服务器作为 密钥分配中心(KDC)或密钥转递中心(KTC)
KDC
① ②
K
KTC
① ② ③
K
K
A
B
③
K
A
B
(a)
KTC
① ②
K K
A
B
K
③
KTC
K K
①
②
第八章__密钥分配与管理
分散式密钥分配方案中会话密钥的产生通过 如下的步骤实现:
(1) AB:IDa||N1 A给B发出一个要求会话密钥的请求,报文内 容包括A的标识符IDa和一个现时N1,告知:
A希望与B进行通信, 并请B产生一个会话密钥用于安全通信。
(2) BA:EMKm[Ks||IDa||IDb||f(N1)||N2] B使用一个用A和B之间共享的主密钥加密的 报文进行响应。响应的报文包括:
(5) B计算DKUa[DKRb[EKUb[EKRa[Ks]]]]得到 Ks,从而获得与A共享的常规加密密钥,因而通 过Ks可以与之安全通信。
其分发过程如图8.4所示。
8.2 密钥的管理
1)常规加密体制通常是设立KDC来管理密钥, 但增加了网络成本,降低了网络的性能。
2)或者利用公开密钥加密技术来实现对常规密 钥的管理,这使密钥管理变得简单,同时解 决了对称密钥中的可靠性和鉴别的问题。
采用的是密钥认证中心技术,可信任的第三 方C就是证书授权中心CA,更多用于公开加密 密钥的分配。
8.1.1 常规加密密钥的分配 1. 集中式密钥分配方案
由一个中心节点或者由一组节点组成层次结 构负责密钥产生并分配给通信双方,用户只需 保存同中心节点的加密主密钥,用于安全传送 由中心节点产生的即将用于与第三方通信的会 话密钥。
致命的漏洞:任何人都可以伪造一个公开的 告示,冒充其他人,发送一个公开密钥给另一 个参与者或者广播这样一个公开密钥。
2. 公开可用目录 1)由一个可信任组织负责维护一个公开的公开
密钥动态目录。 2)公开目录为每个参与者维护一个目录项{标识,
公开密钥},每项信息都需经过安全认证。 3)任何其他方都可以从这里获得所需要通信方
3)公开密钥的管理通常采用数字证书。
密钥分配与管理ppt课件
3.2.3 证书的认证 1.拆封数字证书 2.证书链的认证 3.序列号验证 4.有效期验证 5.查询CRL 6.证书使用策略的认证
3.3 公钥基础设施简介
PKI(Public Key Infrustructure)又 称为公钥基础设施,是一种遵循既定标 准的密钥管理平台,它能够为所有网络应 用提供加密和数字签名等密码服务及所 必需的密钥和证书管理体系。 完整的 PKI 系统必须具有权威认证机 关 (CA) 、数字证书库、密钥备份及恢复 系统、证书作废系统、应用接口等基本 构成部分 , 构建PKI 也将围绕着这五大系 统来着手构建。
3.2.1 Kerberos模型的工作原理和步骤
Kerberos是为TCP/IP网络设计的基于对称密码体系的可 信第三方鉴别协议,负责在网络上进行可信仲裁及会 话密钥的分配。 Kerberos有一个所有客户和它们的秘密密钥的数据库, 对于个人用户来说,秘密密钥是一个加密口令,需要 对访问客户身份进行鉴别的服务器以及要访问此类服 务器的客户,需要用Kerberos注册其秘密密钥,由于 Kerberos知道每个人的秘密密钥,故而它能产生消息向 一个实体证实另一个实体的身份。Kerberos还能产生会 话密钥,供两个实体加密通信消息,通信完毕后销毁 会话密钥。
3.3.3 CA系统的结构
R oot C A
Policy CA
Operation C A
个人证书、代码证书、服务器证书、企业证书等
3.3.4 CA的功能
CA的主要功能包括: 1、证书颁发 2、证书更新 3、证书撤销 4、证书和证书撤销列表(CRL)的公布 5、证书状态的在线查询 6、证书认证 7、制定政策等。
后面内容直接删除就行 资料可以编辑修改使用 资料可以编辑修改使用
密钥的管理和分配
5.3 密钥的管理和分配
5.3.1 密钥的产生
密钥的产生必须考虑具体密码体制的公认的限制。在网络系统 中加密需要大量的密钥,以分配给各主机、节点和用户。可以用手工 的方法,也可以用密钥产生器产生密钥。 基本密钥是控制和产生其他加密密钥的密钥,而且长度使用, 其安全性非常关键,须要保证其完全随机性、不可重复性和不可预测 性。 基本密钥量小,可以用掷硬币等方法产生。密钥加密密钥可以 用伪随机数产生器、安全算法等产生。 会话密钥、数据加密密钥可在密钥加密密钥控制下通过安全算 法产生。
5.3 密钥的管理和分配
5.3.2 密码体制的密钥分配
在大型网络中,不可能每对用户共享一个密钥。因此采用中心 化密钥分配方式,由一个可信懒的联机服务器作为密钥分配中心 (KDC)来实现 。
5-8
5.3 密钥的管理和分配
5.3.2 密码体制的密钥分配
用户A和B要建立共享密钥,可以采用如下5个步骤: (1)A向KDC发出会话密钥请求。该请求由两个数据项组成,一 个是A与B的身份,另一个是一次性随机数N1。 (2)KDC为A的请求发出应答。应答是用A与KDc的共享主密钥加 密的,因而只有A能解密这一消息,并确信消息来自KDC。消息中包 含A希望得到的一次性会话密钥K以及A的请求,还包括一次性随机数 N1。因此A能验证自己的请求有没有被篡改,并能通过一次性随机 数N1得知收到的应答是不是过去应答的重放。消息中还包含A要转 发给B的部分,这部分包括一次性会话密钥Ks和A的身份,它们是用 B与KDC的共享主密钥加密的。
5.3.3 公钥密码体制的密钥分配
(1)公开发布 用户将自己的公钥发给所有其他用户或向某一团体广播。这种 方法简单,但有一个非常大的缺陷,就是别人能容易地伪造这种公开 的发布。
应用密码学 8 密钥管理
密钥种类繁多,在不同的应用环境和不同的密码方案中有着 不同的设计和使用方式,同一个密钥可以有多种不同的作用, 同一系统也可以涉及多个密钥。
密钥的种类
(1)基本密钥(Base Key)
又称初始密钥(Primary Key),用户密钥(User key),是参与或 控制密码变换,在一定范围配置、一定时间更换的密钥。 (2)会话密钥(Session Key) 在一次通话或交换数据时使用的密钥。通常与基本密钥相结
8.3密钥的分配
• 密钥分配要解决两个问题: (1)密钥的自动分配机制,自动分配密钥以提高系统的效率; (2)应该尽可能减少系统中驻留的密钥量。
• 根据密钥信息的交换方式,密钥分配可以分成三类:
(1)人工密钥分发;
(2)基于中心的密钥分发;
(3)基于认证的密钥分发。
人工密钥分发
密钥产生
• 对密钥的基本要求 – 具有良好的随机性,包括长周期性、非线性、统计意义上 的等概率性以及不可预测性等。
• 主密钥的产生
– 用于加解密主密钥应当是高质量的真随机序列,通常用诸如 掷硬币、骰子,随机选取等方法,保证密钥的随机性。 • 加密密钥 – 利用真随机数产生器芯片来产生二级密钥 – 使用主密钥和一个强的密码算法来产生二级密钥
8.1密钥管理的定义
密钥管理就是在授权各方之间实现密钥关系的建立和维护的一整套 技术和程序。负责密钥从产生到最终销毁的整个过程,包括密钥的 生成、存储、分配、使用、备份/恢复、更新、撤销和销毁等。
主要内容:密钥的产生、分配和维护。其中维护涉及
密钥的存储、更新、备份、恢复、销毁等方面。
密钥基本类型
是在密钥保护的机密信息的安全受到威胁或密码面临敌人获取的
危险情况下,为保护该信息或密码的安全,需要立即销毁密钥。
8.2密钥分配
第二节密钥分配1所谓密钥分配(Key distribution)是指一方选择密钥, 然后把它发送给另一方或许多方. 利用密钥分配协议可以在一个不安全的信道上传送用户之间的共享密钥,并且每个用户不需要存储很多的密钥.2基于对称密码体制的密钥分配协议⎯Kerberos Kerboros密钥分配协议是一种在线式密钥分配协议(on-line key distribution protocol). 所谓在线指的是当两个用户U和V想要进行保密通信时,就根据协议产生一个新的密钥(会话密钥),而不是事先确定一个密钥.3在线式密钥分配协议每次产生的密钥是随机的, 也就是说密钥随时在更新, 避免了由于一个密钥使用过久而存在的密钥泄露问题, 从而提高了用户之间的保密通信的安全性.4网络上的Kerberos服务起着可信仲裁者的作用,基于Needam, Schroeder的可信第三方鉴别协议.在有可信第三方TA参与的在线式密钥分配协议中, TA和通信网络中的每个用户之间都分别拥有他们的共享秘密密钥, 是否知道该秘密密钥便是身份的证明.5TA还能产生会话密钥, 供两个客户通话使用.TA和用户之间的保密通信利用分组密码来实现. Kerboros 密钥分配方案是一个基于单钥体制的密钥服务系统. 在这个系统中, 每个用户A和可信中心TA共享一个秘密的DES密钥. 在方案的最新版本中, 传送的所有消息都通过CBC模式进行加密. 我们用ID(A)表示用户A的身份识别信息.67使用Kerboros 方案传输一个会话密钥的过程可分两步进行:1 用户A 为了和用户B 通信, 他就向可信中心TA 申请一个会话密钥, 其申请过程是:(1) 可信中心TA 随机地选择一个会话密钥k , 一个时戳t 和一个生存期L, 计算c 1=E kA (k , ID (A ), t , L )和c 2=E kB (k , ID (A ), t , L ), 并将c 1和c 2发送给A.(2) 用户A 首先解密c 1获得密钥k , ID(B), t 和L.2)用户A和用户B交换密钥k的过程(1) A计算c3=Ek(ID(A), t), 并将c3和可信中心发送来的c2一起发送给B.(2) 用户B首先解密c2获得密钥k, ID(A), t和L, 然后使用k解密c3, 获得t和ID(A), 并检测t的两个值和ID(A)的两个值是否一样. 如果是一样的, 那么B计算c4=Ek(t+1), 并将c4发送给A;(3) A使用k解密c4获得t+1, 并验证解密结果是t+1.8TA中心(C1, C2)A (C2, C3) B(C4)910消息c 1和c 2用来提供会话密钥k 在传输过程中的秘密性.c 3和c 4用来提供密钥k 的确证性(keyconfirmation), 也就是能使A 和B 相互相信他们拥有同样的会话密钥.时戳t和生存期L的目的是阻止一个主动的敌手存贮旧消息并在后来重发. 这种攻击称为重放攻击(replay attack). 这种方法之所以奏效是因为一旦密钥过期, 它不能再被作为合法的密钥接收.11Kerboros协议的缺点之一是网络中的所有用户都要有同步时钟, 因为目前的时间被用来确定一个给定的会话密钥是否是合法的. 在实际中, 提供完全的同步是困难的, 所以允许有一定量的时差.12基于公钥密码系统的密钥传发方案在公钥密码系统中,不在需要秘密的信道来传送私钥,且总是假定已经掌握对方的真实公钥. 因此对方公钥的真实性是保证公钥系统安全的保障之一. 要保证公钥或公共参数的真实性或者这种真实性是可以验证的,主要采用的方法是公钥证书管理.13公钥证书(X.509)简介(1) CA中心数字证书作为网上交易双方真实身份证明的依据,是一个经证书授权中心(CA)数字签名的、包含证书申请者(公开密钥拥有者)个人信息及其公开密钥的文件. CA作为可信第三方通过签名担保公钥及公钥所属主体的真实性.14CA有自己的签名密钥对, 每个已在系统中注册的用户都能获得CA真实的公钥, 并用它对证书中的CA签名进行验证. 系统用户验证签名成功, 获得对公钥真实性的信任.15由此看到,公钥证书是传递信任的一种手段. 证书帮助证实个人身份. 当你把你的证书送给某人,并将消息用你的密钥加密,接受者就能用证书中的公钥来证实你的身份. 你的证书和你的公钥就是你是谁的证据.16(2)证书的内容证书的格式定义在IUT标准X.509里,根据这项标准,证书包括申请证书个人的信息和发行证书的CA的信息。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目前,大部分加密算法都已经公开了, 目前,大部分加密算法都已经公开了,像DES 等加密算法甚至作为国际标准来推行. 和RSA等加密算法甚至作为国际标准来推行. 等加密算法甚至作为国际标准来推行 因此明文的保密在相当大的程度上依赖于密钥 的保密. 的保密. 1)设计安全的密钥算法和协议是不容易的,但 )设计安全的密钥算法和协议是不容易的, 可以依靠大量的学术研究. 可以依靠大量的学术研究. 2)相对来说,对密钥进行保密更加困难.如何 )相对来说,对密钥进行保密更加困难. 安全可靠,迅速高效地分配密钥, 安全可靠,迅速高效地分配密钥,如何管理密 钥一直是密码学领域的重要问题. 钥一直是密码学领域的重要问题.
3. 公开密钥管理机构 1)更严格控制公开密钥从目录中分配的过程就 ) 可以使得公开密钥的分配更安全. 可以使得公开密钥的分配更安全. 2)比公开可用目录多了公开密钥管理机构和通 ) 信方的认证以及通信双方的认证. 信方的认证以及通信双方的认证. 3)每个通信方都由安全渠道得到该中心权威机 ) 构的公开密钥, 构的公开密钥,而其对应的私有密钥只有该 中心权威机构才持有. 中心权威机构才持有.
解决方案: 解决方案: 1)为了同时支持没有共同密钥分配中心的终端 ) 之间的密钥信息的传输,可以建立一系列的密 之间的密钥信息的传输, 钥分配中心,各个密钥分配中心之间存在层次 钥分配中心,各个密钥分配中心之间存在层次 关系. 关系. 2)各个密钥分配中心按一定方式进行协作,这 各个密钥分配中心按一定方式进行协作, 样,一方面主密钥分配所涉及的工作量减至最 另一方面也可以使得某个KDC失效时, 失效时, 少,另一方面也可以使得某个 失效时 只影响其管辖区域,而不至于影响整个网络. 只影响其管辖区域,而不至于影响整个网络.
目前这方面的主流技术是密钥分配中心 目前这方面的主流技术是密钥分配中心KDC 密钥分配中心 技术.我们假定: 技术.我们假定: 1)每个通信方与密钥分配中心 )每个通信方与密钥分配中心KDC之间共享 之间共享 一个惟一的主密钥; 一个惟一的主密钥; 2)这个主密钥通过其他安全的途径传递. )这个主密钥通过其他安全的途径传递. 实际上,到第(3)步已经完成密钥的分配过 实际上,到第 步已经完成密钥的分配过 步已经完成密钥的分配 程,通信的双方已经共享了当前的会话密钥 Ks,第(1)步到第 步共完成了两次鉴别功能. 步到第(5)步共完成了两次鉴别功能. , 步到第 步共完成了两次鉴别功能
(4) 如果 和B都由可信任的第三方发布自己的公 如果A和 都由可信任的第三方发布自己的公 开密钥,它们就可用彼此公开密钥加密通信. 开密钥,它们就可用彼此公开密钥加密通信. 采用的是密钥认证中心技术,可信任的第三 采用的是密钥认证中心技术, 就是证书授权中心CA, 方C就是证书授权中心 ,更多用于公开加密 就是证书授权中心 密钥的分配. 密钥的分配.
8.1.2 公开加密密钥的分配
公开加密密钥的分配要求和常规加密密钥的 分配要求有着本质的区别. 分配要求有着本质的区别. 公开密钥技术使得密钥较易分配,但它也有 公开密钥技术使得密钥较易分配, 自己的问题. 自己的问题. 获取一个人的公开密钥有如下四种途径. 获取一个人的公开密钥有如下四种途径.
1. 公开密钥的公开宣布 任何参与者都可以将他的公开密钥发送给另外 任何一个参与者, 任何一个参与者,或者把这个密钥广播给相关 人群,比如PGP. 人群,比如 . 致命的漏洞: 致命的漏洞:任何人都可以伪造一个公开的 告示,冒充其他人, 告示,冒充其他人,发送一个公开密钥给另一 个参与者或者广播这样一个公开密钥. 个参与者或者广播这样一个公开密钥.
8.1.1 常规加密密钥的分配 1. 集中式密钥分配方案 由一个中心节点或者由一组节点组成层次结 构负责密钥产生并分配给通信双方,用户只需 构负责密钥产生并分配给通信双方, 保存同中心节点的加密主密钥, 保存同中心节点的加密主密钥,用于安全传送 由中心节点产生的即将用于与第三方通信的会 话密钥. 话密钥. 这种方式缺点是通信量大, 这种方式缺点是通信量大,同时需要较好的 鉴别功能以鉴别中心节点和通信方. 鉴别功能以鉴别中心节点和通信方.
第八章 密钥分配与管理
8.1 密钥分配方案 8.2 密钥的管理 本章重点和复习要点
本章重点和复习要点
通信方A, 的主密钥如何进行安全分配 的主密钥如何进行安全分配; 通信方 ,B的主密钥如何进行安全分配;通 信方A和 共享的对话密钥如何进行安全分配 信方 和B共享的对话密钥如何进行安全分配 D-H中有无 中有无KDC?D-H是对称加密算法还是公 中有无 ? 是对称加密算法还是公 开加密算法? 是对称加密密钥还是公开加密 开加密算法?K是对称加密密钥还是公开加密 密钥?该方案有无鉴别通信双方的功能, 密钥?该方案有无鉴别通信双方的功能,所以 容易遭受什么攻击? 容易遭受什么攻击? N-S算法有无 N-S算法有无KDC?它是一个对称加密算法还 算法有无KDC? 是公开加密算法? 是对称加密密钥还是公 是公开加密算法?KS是对称加密密钥还是公 开加密密钥? 开加密密钥? N-S的密钥分配和相互鉴别过程 的密钥分配和相互鉴别过程 为什么说CA相对 相对KDC来说不容易形成瓶颈? 来说不容易形成瓶颈? 为什么说 相对 来说不容易形成瓶颈
(1) 密钥可以由 选定,然后通过物理的方法安 密钥可以由A选定 选定, 全地传递给B. 全地传递给 . (2) 密钥可以由可信任的第三方 选定,然后通 密钥可以由可信任的第三方C选定 选定, 过物理的方法安全地传递给A和 . 过物理的方法安全地传递给 和B. 上述方法由于需要对密钥进行人工传递, 上述方法由于需要对密钥进行人工传递,对 于大量连接的现代通信而言,显然不适用. 于大量连接的现代通信而言,显然不适用.
单个密钥分配中心KDC无法支持大型的通信 无法支持大都必 因为每两个可能要进行安全通信的终端都必 须 同某个密钥分配中心共享主密钥. 同某个密钥分配中心共享主密钥. 所以当通信的终端数量很大时, 所以当通信的终端数量很大时,将出现这样 当通信的终端数量很大时 的 情况: 情况:
2. 公开可用目录 1)由一个可信任组织负责维护一个公开的公开 ) 密钥动态目录. 密钥动态目录. 2)公开目录为每个参与者维护一个目录项 标识, 标识, )公开目录为每个参与者维护一个目录项{标识 公开密钥},每项信息都需经过安全认证. 公开密钥 ,每项信息都需经过安全认证. 3)任何其他方都可以从这里获得所需要通信方 ) 的公开密钥. 的公开密钥. 致命的弱点: 致命的弱点:如果一个敌对方成功地得到或 者计算出目录管理机构的私有密钥, 者计算出目录管理机构的私有密钥,就可以伪 造公开密钥,并发送给其他人达到欺骗的目的. 造公开密钥,并发送给其他人达到欺骗的目的.
分散式密钥分配方案中会话密钥的产生通过 分散式密钥分配方案中会话密钥的产生通过 会话密钥的产生 如下的步骤实现: 如下的步骤实现: (1) A→B:IDa||N1 → : A给B发出一个要求会话密钥的请求,报文内 发出一个要求会话密钥的请求, 给 发出一个要求会话密钥的请求 容包括A的标识符 的标识符IDa和一个现时 1,告知: 和一个现时N 告知: 容包括 的标识符 和一个现时 A希望与 进行通信, 希望与B进行通信 希望与 进行通信, 并请B产生一个会话密钥用于安全通信 产生一个会话密钥用于安全通信. 并请 产生一个会话密钥用于安全通信.
(3) 如果 和B都有一个到可信任的第三方 的加 如果A和 都有一个到可信任的第三方 都有一个到可信任的第三方C的加 密连接,那么C就可以通过加密连接将密钥安 密连接,那么 就可以通过加密连接将密钥安 全地传递给A和 . 全地传递给 和B. 采用的是密钥分配中心技术,可信任的第三 采用的是密钥分配中心技术, 就是密钥分配中心KDC,常用于常规加密 方C就是密钥分配中心 就是密钥分配中心 , 密钥的分配. 密钥的分配.
优缺点: 优缺点: 1)每个通信方都必须保存多达(n一1)个主 )每个通信方都必须保存多达 一 个主 密钥; 密钥; 2)但是需要多少会话密钥就可以产生多少; )但是需要多少会话密钥就可以产生多少; 3)同时,使用主密钥传输的报文很短,所 )同时,使用主密钥传输的报文很短, 以对主密钥的分析也很困难. 以对主密钥的分析也很困难.
8.1 密钥分配方案
1)要使常规加密有效进行,通信双方必须共享 )要使常规加密有效进行, 常规加密有效进行 一个密钥,这个密钥还要防止被他人获得. 一个密钥,这个密钥还要防止被他人获得. 2)要使公开加密有效进行,通信双方必须发布 公开加密有效进行 )要使公开加密有效进行, 其公开密钥,并防止其私钥被其他人获得. 其公开密钥,并防止其私钥被其他人获得. 此外,密钥还需经常更换 经常更换, 此外,密钥还需经常更换,以便在攻击者知 道密钥的情况下使得泄漏的数据量最小化. 道密钥的情况下使得泄漏的数据量最小化. 对于通信的双方A和 , 对于通信的双方 和B,密钥的分配可以有以 下的几种方法: 下的几种方法: 返回首页
4)任何通信方都可以向该中心权威机构获得其 ) 他任何通信方的公开密钥, 他任何通信方的公开密钥,通过该中心权威 机构的公开密钥便可判断它所获得的其他通 信方的公开密钥的可信度. 信方的公开密钥的可信度.
2. 分散式密钥分配方案 使用KDC进行密钥的分配要求 进行密钥的分配要求KDC是可信任 使用 进行密钥的分配要求 是可信任 的并且应该保护它免于被破坏. 的并且应该保护它免于被破坏. 1)如果KDC被破坏,那么所有依靠该 )如果 被破坏,那么所有依靠该KDC分配 分配 会话密钥进行通信的所有通信方将不能进行正 常的安全通信. 常的安全通信. 2)如果 )如果KDC被控制,那么所有依靠该 被控制,那么所有依靠该KDC分配 分配 会话密钥进行通信的所有通信方之间的通信信 息将被窃听. 息将被窃听.
(2) B→A:EMKm[Ks||IDa||IDb||f(N1)||N2] → : B使用一个用 和B之间共享的主密钥加密的 使用一个用A和 之间共享的主密钥加密的 使用一个用 报文进行响应.响应的报文包括: 报文进行响应.响应的报文包括: B产生的会话密钥, 产生的会话密钥, 产生的会话密钥 A的标识符 的标识符IDa, 的标识符 , B的标识符 的标识符IDb, , 的标识符 f(N1)的值, 的值, 的值 另一个现时N 另一个现时 2 . (3) A→B:EKs[f(N2)] → : A使用 产生的会话密钥 对f(N2)进行加密, 使用B产生的会话密钥 进行加密, 使用 产生的会话密钥Ks对 进行加密 返回给B. 返回给 .