密码学密钥分配和密钥管理
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
金融机构密钥管理需要通过一个多级层次密钥 机构来实现。 ANSI X9.17三层密钥层次结构: 1)主密钥(KKMs),通过手工分配; 2)密钥加密密钥(KKs),通过在线分配; 3)数据密钥(KDs)。 KKMs保护KKs的传输,用KKs保护KDs的传输。
主密钥是通信双方长期建立密钥关系的基础, 是用户和密钥分配中心的共享密钥。
特点
是一种由中心以脱 线方式预分配的技 术,是“面对面” 的分发, 是“请求—分发” 的在线分发技术
优点
缺点
适用范围
安全性好,是长 必须解决密钥的 静态分发只 存储技术 期沿用的传统密 能以集中式 机制存在 钥管理技术 需要有专门的协 有中心和无 议的支持 中心的机制 都可以采用
两种密钥分配体制
名称
主密钥的分配方式
利用安全信道实现
-(1)直接面议或通过可靠信使递送
-(2)将密钥分拆成几部分分别传送
信使 发送方 分解密钥 挂号信 K1 K2 K3 K4 K5 k1 k2 k3 k4 k5 接收方 组合密钥
特快专递 电话 信鸽 k1 k2 k3 k4 k5
两种密钥分配技术
名 称
静 态 分 配 动 态 分 配
• 具有保密和鉴别能力的分配Secret key distribution with confidentiality and auhtentication
• 混合方案Hybrid scheme
Simple secret key distribution
•Merkle的建议:[Merkle 79]
A生成{PKa,SKa}, AB: (IDA,PKa) B生成随机密钥Ks, BA: EPKa(Ks) A解密EPKa(Ks)得到Ks: DSKa(EPKa(Ks)) A丢弃{PKa,SKa},B丢弃PKa •通讯前不需存在密钥,通讯后也不存在密钥 •能抵抗偷听,不能抵抗主动攻击(中间人攻击)
/或B N个用户集需要N(N-1)/2个共享密钥
密钥分发中心
密钥分发中心(Key Distribution Center) 每个用户与KDC有共享密钥(Master Key) N个用户,KDC只需分发N个Master Key 两个用户间通信用会话密钥(Session Key) 用户必须信任KDC KDC能解密用户间通信的内容
用于机密和认证的密钥分配协议
假定A和B已经获得了双方的公钥: AB: EKUb(IDA,N1) BA: EKUa(N1 ,N2) AB: EKUb(N2) AB: Y=EKUb(EKRa(Ks)) B解密Y获得会话密钥Ks=DKUa(DKRb(Y))
Diffie-Hellman密钥交换协议
基于公开密钥体制 的密钥管理
公钥加密的一个主要用途是分配单钥密码体制 中所使用的密钥。下面介绍两方面的内容:公 开密钥体制中所使用的公钥的分配;如何使用 公钥体制分配单密钥体制所需的密钥。 公钥的分配 公开发布 公用的目录表
1. 2.
3. 公钥管理机构
公钥管理机构 (4) Request||Time2 (1) Request||Time1 (2) ESKAU[PKB||Request||Time1 (5) ESKBU[PKA||Request||Time2
带鉴别与抗重放机制的密钥分配方案
(有中心)
• 用户必须信任KDC • KDC能解密用户间通信的内容
无中心的密钥分配
•Decentralized key distribution •适合于小型网络环境
密钥的控制使用
密钥可根据期不同的用途分为会话密钥和主密钥。 会话密钥又称为数据加密密钥,而主密钥称为 密钥加密密钥。主密钥的安全性高于会话密钥。 在对称密码体制中,有以下两种密钥控制技术: 密钥标签 用于DES的密钥控制,将DES的64比特密钥中 的8个校验位作为控制使用这一密钥的标签。
1.
2.
控制矢量:该方案为每一个会话密钥都指 定了一个控制矢量。
控制矢量CV 主密钥 加密的会话密钥 会话密钥
实现算法:
杂凑函数
H h(CV )
+
Kin K m H K out EKin [ K s ]
解密函数 加密函数
加密的会话密钥 会话密钥 结合过程 恢复过程
秘密密钥的管理
密钥由用户使用,用以保护存储在文件中的 数据,最简单的方法是不把密钥存储在系统中。 仅仅在加密、解密时才把密钥输入系统。 比如我们在DES加密算法中,要求输入56位 密钥通常有两种方法; 一种是直接输入8字节密钥,在这种情况 下,只有完全随机选择56位密钥的情况下才 能使用这种格式,因为仅有由英文字母或数字 构成的密钥太容易被穷举法破译,因为用户比 较容易记忆有意义的字母。
用主密钥对所有初级密钥加密,使它们在密 码装置之外也受到保护。 象这样用一个密钥保护许多其他密钥的方 法,在密码学中叫主密钥原理。 它从本质上把保护大量密钥的问题,简 化成了集中保护和使用一个密钥问题。 这实际上也是数据加密思想的进一步深 化。从原则上说,数据加密就是把保护大量 数据的问题简化为保护和使用少量数据的问 题。
缺点
动态分发 时,中心 服务器必 须随时都 是在线的
代表
Kerboros协 议
分布 式
但Diffie比较著名的 Hellman密 有Diffie钥交换协 Hellman密钥 交换协议 议没有提 供鉴别机 制,不能 抵抗中间 人攻击
静态分配
一个有n个用户的系统,需实现两两之间通信
对称密钥配置
用户1 用户2 K1-2,K1-3,…,K1-n K2-1, K2-3,…,K2-n
二级密钥:它是用来加密保护初级密钥的密钥。
密钥保护的基本原则: 密钥永远不可以以明文的形式出现在密码装置 之外。 密码装置是一种保密工具,即可以是硬件,也 可以是软件。
密钥分配 (Key Distribution)
• 保密通信双方需共享密钥 • 共享密钥要经常更换 • 分配方式: – A选择密钥并手工传递给B – 第三方C选择密钥分别手工传递给A,B – 用A,B原有共享密钥传送新密钥 – 与A,B分别有共享密钥的第三方C传送新密钥给A和
(3) EPKB[IDA||N1] A (6) EPKA[N1||N2] (7) EPKB[N2] 公钥管理机构分配公钥 B
4. 公钥分配的另一类方法是公钥证书。
信封 姓名 CA的密钥 公钥 私钥
随机数 产生器
公钥
产生密钥 私钥
公钥 证书 签字
证书的产生过程
基于公开密钥体制 的秘密密钥分配
• 简单的秘密密钥分配Simple secret key distribution
集中 式
特点
集中式分配是引入一个中心服务器(通 常称作密钥分配中心或KDC),在这个 体系中,团体中的任何一个实体与中心 服务器共享一个密钥。在这样的系统中, 需要存储的密钥数量和团体的人数量差 不多,KDC接受用户的请求,为用户提 供安全的密钥分配服务 网络中的主机具有相同的地位,他们之 间的密钥分配取决于他们之间的协商
用户U选择 一随机数aU, 计算
aU
用户V选择 一随机数aV, 计算
aV
Yu mod p
aU
Yv aV mod p
K YvaU mod p
生成的会话密钥为
K YuaV mod p
基本模式
Diffie-Hellman密钥交换协议
•Diffie-Hellman密钥交换协议: 双方选择素数p以及p的一个原根 U随机选择aUZp,计算aU mod p并发给V V随机选择aVZp,计算aV mod p并发给U U计算(aV mod p)aU mod p = aUaV mod p V计算(aU mod p)aV mod p = aUaV mod p 双方获得共享密钥(aUaV mod p) •与Diffie-Hellman密钥分配协议不同:此处的aU,aV是变 化的 •这个协议可以被中间人攻击
4.如何对密钥进行严格的保护。 为了产生可靠的总体安全设计,对于不同 的密钥应用场合,应当规定不同类型的密 钥,所以根据密钥使用场合的不同,可以 把密钥分成不同的等级。 通常把密钥分为两大类型,即数据加密密 钥和密钥加密密钥。
密钥加密密钥又可分为: 主密钥:对现有的密钥或存储在主机中的 密钥加密,加密对象初级密钥和二级密钥。 初级密钥:用来保护数据的密钥。它也叫 数据加密/解密密钥。当初级密钥用Fra Baidu bibliotek进行 通讯保护时,叫做通讯密钥。用来保护文 件时叫做文件密钥。
Merkle协议的中间人攻击
A生成{PKa,SKa}, AB: (IDA,PKa) E截获,生成{PKe,SKe}冒充AB: (IDA,PKe) B生成随机密钥Ks, BA: EPKe(Ks) E截获,解密后再用EPKa加密KsA: EPKa(Ks) A丢弃{PKa,SKa},B丢弃PKa •E获得了Ks,故以后只需进行窃听. •A,B并不知晓它们被攻击了
第五章 密钥分配与密钥管理
单钥加密体制的密钥分配 公钥加密体制的密钥管理 密钥托管 随机数的产生 秘密分割
问题的提出
建立安全的密码系统要解决的一个赖手的问 题就是密钥的管理问题。即使密码体制的算 法是计算上的安全,如果缺泛对密钥的管理, 那么整个系统仍然是脆弱的。
(1)密钥管理量的困难 传统密钥管理:两两分别用一对密钥时,则n个用 户需要C(n,2)=n(n-1)/2个密钥,当用户量增大时,密 钥空间急剧增大。如: n=100 时, C(100,2)=4,995 n=5000时, C(500,2)=12,497,500
另一种用户可输入一个长字符串作为密钥输入, 在加密时从该串中取56位用作密钥。 对密钥的存储,也可以把密钥记录在只读 存储器或磁卡上。这种由硬件实现的密钥可以 直接插入与用户终端连接的专用阅读机而输入 系统。 当使用单密钥体制时,用户向系统登记其 秘密密钥以便在他们的终端和中心计算机之间 建立安全通道,从而使密钥得到保护。 此外,一个最简单的办法是把他们存储在 用系统密钥加密的文件中。 与口令不同,密钥不能用单向函数加密保 护,否则将无法解密恢复。
(2)数字签名的问题
传统加密算法无法实现抗抵赖的需求。
概述
从理论上说,密钥也是数据,不过它是用来 加密其它数据的数据,因此,在密码学的研 究中,不妨把密钥数据与一般数据区分开来。 在设计密码系统时,对于密钥必须考虑以下 问题: 1.系统的那些地方要用到密钥,它们是如何 设置和安装在这些地方. 2.密钥预计使用期限是多长,每隔多久需要 更换一次密钥。 3.密钥在系统的什么地方。
KDC
① K K ② ① K K
KTC
② ③
A
③
B
A
B
(a)
KTC
① K K ② ① K
KTC
K ②
A
K
B
③
A
B
(b)
会话密钥的有效期
原则上,会话密钥更换的越频繁,系统的安全性就越高。 因为这样的话,即使敌手获得了一个会话密钥,也只能解 密很少的密文。但是,会话密钥更换的太频繁,将会延迟 用户之间的交换,同时还造成网络的负担。所以,应对会 话密钥的有效期作出合理的权衡。 对于面向连接的协议,在连接还未建立或断开时,会 话密钥的有效期可以延长。而每次连接时,都应该使用新 的会话密钥。如果逻辑连接的时间长,则应定期更换会话 密钥。 对于无连接的协议(如面向业务的协议),无法决定 更换密钥的频率。为安全起见,用户每进行一次交换,都 要使用新的会话密钥。这又影响了协议本身的优势,因此 最好的办法是在一固定的周期内或对一定数目的业务使用 同一会话密钥。
非对称密钥配置
n个用户公钥,用户1自己私钥 n个用户公钥,用户2自己私钥
…
用户n Kn-1, Kn-2,…,Kn-n-1 n个用户公钥,用户n自己私钥
• n个用户,需要n(n-1)/2个共享密钥
动态分配
中心化的密钥管理方式,由一个可信赖的联机服务器作为 密钥分配中心(KDC)或密钥转递中心(KTC)
密钥分配方案
基于对称密码体制的密钥分配 基于公开密码体制的秘密密钥分配 几个密钥分配方案
基于对称密码体制的密钥分配
对称密码体制的主要商业应用起始于八十年代早 期,特别是在银行系统中,采纳了DES标准和银 行工业标准ANSI数据加密算法(DEA)。实际上, 这两个标准所采用的算法是一致的。 随着DES的广泛应用带来了一些研究话题,比如 如何管理DES密钥。从而导致了ANSI X9.17标准 的发展,该标准于1985年完成,是有关金融机构 密钥管理的一个标准。