1、1第3章 密码管理2为什么要管理密钥?不同的密钥管理方法相同吗?3 3.1 密钥管理的目标和内容密钥管理的目标和内容4n密钥管理涉及到密钥自密钥管理涉及到密钥自产生产生到最终到最终销毁销毁的整个过的整个过程,包括密钥的产生、存储、备份、装入、分配、程,包括密钥的产生、存储、备份、装入、分配、保护、更新、控制、丢失、销毁等内容。保护、更新、控制、丢失、销毁等内容。n密钥生存期指用户授权使用密钥的周期,包括:密钥生存期指用户授权使用密钥的周期,包括:密钥的产生密钥的产生密钥的分配密钥的分配密钥的保护密钥的保护密钥的归档密钥的归档密钥的恢复密钥的恢复 3.1 密钥管理的目标和内容密钥管理的目标和内容
2、53.2 密钥的组织结构密钥的组织结构63.2 密钥的组织结构密钥的组织结构73.2 密钥的组织结构密钥的组织结构83.2 密钥的组织结构密钥的组织结构9 密钥产生要考虑密钥产生要考虑密钥空间密钥空间、弱密钥弱密钥、随即过程选择随即过程选择 密钥的产生与所使用的算法有关。如果生成的密钥强度密钥的产生与所使用的算法有关。如果生成的密钥强度不一致,则称该算法构成的是非线性密钥空间,否则称不一致,则称该算法构成的是非线性密钥空间,否则称为是线性密钥空间。为是线性密钥空间。好的密钥:由设备随即产生(随机数生成器)、生成的好的密钥:由设备随即产生(随机数生成器)、生成的各个密钥有相同可能性(强度一样)、
3、要经过密钥碾碎各个密钥有相同可能性(强度一样)、要经过密钥碾碎处理(单向散列函数)处理(单向散列函数)密钥设置应选择强密钥,防字典攻击密钥设置应选择强密钥,防字典攻击3.3 密钥的产生密钥的产生103.3 密钥的产生密钥的产生 多长合适?多长合适?密钥长度(位)密钥长度(位)405664801121280.2秒秒3.5小时小时37天天700年年1013年年1018年年113.3 密钥的产生密钥的产生123.3 密钥的产生密钥的产生133.4 密钥的分配密钥的分配从旧的密钥中产生新的密钥(从旧的密钥中产生新的密钥(Key UpdatingKey Updating)原因:针对当前加密算法和密钥长度
4、的可破译性分析原因:针对当前加密算法和密钥长度的可破译性分析 密钥长期存储可能被窃取或泄露密钥长期存储可能被窃取或泄露密钥必须有一定的更换频度,才能得到密钥使用的安全性。密钥必须有一定的更换频度,才能得到密钥使用的安全性。密钥生存周期被用到密钥生存周期被用到8080时,密钥更新就应发生。时,密钥更新就应发生。新的密钥资料应该被用到更新后的所有的密码操作中。新的密钥资料应该被用到更新后的所有的密码操作中。143.4 密钥的分配密钥的分配153.4 密钥的分配密钥的分配16 3.4 密钥的分配密钥的分配173.4 密钥的分配密钥的分配CBDAKC-AKC-BKC-DKD-AKD-BKD-CKB-A
5、KB-CKB-D183.4 密钥的分配密钥的分配19KDCKDC模式模式 KDCKDC模式解决的是在网络环境中需要进行安全通信的端模式解决的是在网络环境中需要进行安全通信的端实体之间建立共享的会话密钥问题。实体之间建立共享的会话密钥问题。会话密钥:端实体在建立通信连接时,用来加密所有会话密钥:端实体在建立通信连接时,用来加密所有用户数据的一次性密钥。用户数据的一次性密钥。永久密钥:为了分配会话密钥而在端实体之间一直使永久密钥:为了分配会话密钥而在端实体之间一直使用的密钥。用的密钥。3.4 密钥的分配密钥的分配203.4 密钥的分配密钥的分配2122动态分发:动态分发:KDCKDC,拉方式拉方式
6、分发协议:分发协议:1)1)acac:request/n1;request/n1;2)ca2)ca:E EKAKA(KS/request/n1/E(KS/request/n1/EKBKB(KS,ID(KS,IDA A)3)ab3)ab:E EKBKB(KS,ID(KS,IDA A)这样这样a,ba,b双方都有相同的密钥双方都有相同的密钥KSKS。验证协议:验证协议:4)4)baba:E EKSKS(N2)(N2)5)ab5)ab:E EKSKS(fN2),(fN2),其中其中f f是简单函数,是加是简单函数,是加1 1等简单变换。等简单变换。3.4 密钥的分配密钥的分配23KDCAB3.4 密
7、钥的分配密钥的分配243.4 密钥的分配密钥的分配25KDCAB3.4 密钥的分配密钥的分配263.4.3 kerberos(Network Authentication Protocol)3.4 密钥的分配密钥的分配27Kerberos工作过程工作过程3.4 密钥的分配密钥的分配28kerberos优缺点优缺点3.4 密钥的分配密钥的分配293.5 密钥的保护密钥的保护密钥的注入密钥的注入30密钥的存储密钥的存储密钥既可以作为一个整体保存,也可以分散保存。密钥既可以作为一个整体保存,也可以分散保存。整体保存的方法有人工记忆、外部记忆装置、密钥恢整体保存的方法有人工记忆、外部记忆装置、密钥恢复
8、、系统内部保存;分散保存的目的是尽量降低由于复、系统内部保存;分散保存的目的是尽量降低由于某个保管人或保管装置的问题而导致密钥的泄漏某个保管人或保管装置的问题而导致密钥的泄漏3.5 密钥的保护密钥的保护313.5 密钥的保护密钥的保护密钥的有效期密钥的有效期密钥不能无限期使用。密钥不能无限期使用。不同的密钥有效期应该不同,会话密钥有效期短,不同的密钥有效期应该不同,会话密钥有效期短,数据加密密钥有效期长。数据加密密钥有效期长。公钥体制中的私钥:用于数字签名和身份识别有效公钥体制中的私钥:用于数字签名和身份识别有效期长、用于抛掷硬币协议的有效期极短。期长、用于抛掷硬币协议的有效期极短。323.5
9、 密钥的保护密钥的保护密钥的更换密钥的更换333.5 密钥的保护密钥的保护密钥必须拥有合理的有效期,尽可能防止密钥泄漏密钥必须拥有合理的有效期,尽可能防止密钥泄漏或受到攻击。有效期后,不管密钥是否受到威胁密或受到攻击。有效期后,不管密钥是否受到威胁密码都必须被更换并停止使用。但旧密钥仍需保留。码都必须被更换并停止使用。但旧密钥仍需保留。密钥更换方法有三种:密钥更换方法有三种:l个别更换:个别更换:一个申请名称的个别性更换密钥,必须一个申请名称的个别性更换密钥,必须更换申请名称,重新领取私钥证书。更换申请名称,重新领取私钥证书。l定期更换:定期更换:比如一年一次,只在中心进行,不影响比如一年一次
10、,只在中心进行,不影响用户私钥证书,购买或下载公钥因子就可以。用户私钥证书,购买或下载公钥因子就可以。l统一更换:统一更换:比如五年一次,中心的私钥因子表和申比如五年一次,中心的私钥因子表和申请名称的私钥证书统一更换。请名称的私钥证书统一更换。343.5 密钥的保护密钥的保护密钥的销毁密钥的销毁不再使用的密钥要用磁盘写覆盖或磁盘切碎的方式销不再使用的密钥要用磁盘写覆盖或磁盘切碎的方式销 毁,并清除所有密钥副本。毁,并清除所有密钥副本。包括:密钥本体、密钥副本、临时文件和交换文件。包括:密钥本体、密钥副本、临时文件和交换文件。方法:方法:l 密钥写在纸上,把纸切碎烧毁。密钥写在纸上,把纸切碎烧毁
11、。l 密钥存在密钥存在EEPROMEEPROM时,应进行多次重写。时,应进行多次重写。l 密钥存在密钥存在EPROMEPROM时,应打碎成小片。时,应打碎成小片。l 密钥存在磁盘时,应多次重写覆盖原密钥,或打碎密钥存在磁盘时,应多次重写覆盖原密钥,或打碎l 密钥分割存放时,应同时销毁。密钥分割存放时,应同时销毁。353.5.1 密钥的传输密钥的传输3.5 密钥的保护密钥的保护363.5 密钥的保护密钥的保护3.5.2 密钥的验证密钥的验证373.5.5 密钥的备份密钥的备份密钥备份:解决因丢失解密数据的密钥,使得被加密钥备份:解决因丢失解密数据的密钥,使得被加密的密文无法解开,而造成数据丢失的
12、问题。密的密文无法解开,而造成数据丢失的问题。方法:密钥托管和秘密共享协议方法:密钥托管和秘密共享协议关键:只能由可信赖的机构来完成关键:只能由可信赖的机构来完成3.5 密钥的保护密钥的保护38密钥托管:国家强制规定进行的私钥托管是一种能够密钥托管:国家强制规定进行的私钥托管是一种能够在紧急情况下获取解密信息的技术。由信任的第三方在紧急情况下获取解密信息的技术。由信任的第三方保管密钥,在特殊情况下可由第三方提供密钥解密数保管密钥,在特殊情况下可由第三方提供密钥解密数据。现常用于政府对密码使用的调控管理(美国据。现常用于政府对密码使用的调控管理(美国ESSESS标准)。标准)。秘密共享:将密钥分
13、开,由不同的第三方分开保管,秘密共享:将密钥分开,由不同的第三方分开保管,防止单保管方的恶意滥用密钥。(门限方案)防止单保管方的恶意滥用密钥。(门限方案)3.6 密钥的托管密钥的托管39用于保存用户的私钥备份,既可在必要时帮助国家司用于保存用户的私钥备份,既可在必要时帮助国家司法或安全等部门获取原始明文信息,也可在用户丢失、法或安全等部门获取原始明文信息,也可在用户丢失、损坏自己的密钥的情况下恢复明文。损坏自己的密钥的情况下恢复明文。美国和一些国家规定:必须在加密系统中加入能够保美国和一些国家规定:必须在加密系统中加入能够保证法律执行部门可方便获得明文的密钥恢复机制,否证法律执行部门可方便获得明文的密钥恢复机制,否则将不允许该加密系统推广使用。则将不允许该加密系统推广使用。执行密钥托管功能的是密钥托管代理(执行密钥托管功能的是密钥托管代理(KEAKEA)。)。KEAKEA和和CACA是是PKIPKI的重要组成部分,的重要组成部分,KEAKEA管理用户私钥,管理用户私钥,CACA管理用户公钥。管理用户公钥。3.6 密钥的托管密钥的托管40过程:过程:3.6 密钥的托管密钥的托管41密钥托管的功能密钥托管的功能3.6 密钥的托管密钥的托管