当前位置:文档之家› 现代密码学与应用

现代密码学与应用


2008-11-3
2
大纲
一、密钥管理的概念 二、机密密钥分发技术 三、公钥分发技术 四、控制密钥使用的技术 五、多个域的密钥管理 六、密钥生命周期问题
2008-11-3
3
一、密钥管理的概念
密钥管理
• 是一组技术和过程,它能够在授权方间提 供密钥关系的建立和维护 • 包括 指通信实体共享密钥
材料(包括公钥、私钥 –域中系统用户的初始化 、初始值以及额外的 –密钥材料的生成、分发和安装 非秘密参数)的状态 –控制密钥材料的使用 –密钥材料的更新、撤销和销毁 –密钥材料的存储、备份/恢复和存档
2008-11-3
10
二、机密密钥分发技术
密钥分层
• 主密钥:不受密码学的保护。它们被手工分发或 在一开始时建立,受程序上的控制以及物理或电 子隔离的保护 (最高层) • 加密密钥的密钥:用于传输或存储其他密钥的对 称密钥或加密公钥,如保护会话密钥的密钥。 • 数据密钥:用于对用户数据提供密钥操作(如加 密、认证)。
2008-11-3 5
密钥分类
统称为秘密密钥
① 对称密钥:对称密码系统中使用的相同的 秘密密钥 ② 公钥和私钥:非对称密码系统中使用的成 对密钥
2008-11-3
6
密钥管理的目标
• 在遇到如下威胁时,仍能保持密钥关系和 密钥材料:
–危及秘密密钥的机密性 –危及秘密密钥或公钥的真实性 –危及密钥或公钥的未授权使用
X.509证书的获取
• 设用户A已从证书颁发机构X1处获取了公钥证书, 用户B已从证书颁发机构X2处获取了证书。如果A 不知X2的公开密钥,他虽然能读取B的证书,但却 无法验证X2的签字,因此B的证书对A来说是没有 用的。 • 若两个CA X1和X2彼此间已经安全地交换了公开密 钥,则A可通过以下过程获取B的公开秘钥:
–A从目录中获取X1签署的X2的证书,因A知道X1的公 开密钥,所以能验证X2的证书,并从中得到X2的公 开密钥。 –A再从目录中获取由X2签署的B的证书,并由X2的公 开密钥对此验证,然后从中得到B的公开密钥。
• 目的:使一个实体的公钥可用于其他实体,并能 验证公钥的真实性和有效性. • 是一个由数据部分和签名部分组成的数据结构
– 数据部分:包括明文数据,最少包括一个公钥和一个 参与方的标识符 – 签名部分:证书颁发机构CA (Certification Authority)对 数据部分的数字签名,以保证公钥的真实性
2008-11-3
24
3.1 可信信道上的点对点传输
• 具体方式:
–通过亲自交换 –通过连接相关用户的直接信道 –从其他用户处直接获取某用户的可信公钥,并提供 (程序上的)完整性和真实性保证。
• 适用于:不常用的情况或是小且封闭的系统中 • 其他相关方法:
–通过不可信的信道交换公钥和相关信息 –并通过一个独立的低宽带可信信道传送这些信息的杂 凑值以便进行完整性认证
3. E p B ( k 2 )
PA,PB分别为 Alice 和Bob 的公钥

Alice
Bob
会话密钥W=f(k1,k2)
可实现相互的实体认证、密钥认证和密钥传输
2008-11-3 19
密钥转换中心KTC
• E是对称加密算法 • KAT是A和KTC之间的共享密钥 • KBT是B和KTC之间的共享密钥
2008-11-3
27
3.3 在线可信服务器的使用
• 通过在线可信服务器获取指定用户的公钥 • 在线可信服务器对公钥进行签名后再传送 • 参与方可验证接收到的签名的真实性
• 缺点:
–可信服务器必须在线 –可信服务器可能会成为瓶颈 –必须建立预定的通信方与可信服务器的通信链 接
2008-11-3 28
2008-11-3
39
X.509证书的获取
• CA为用户产生的证书应有以下特征: (同 一CA)
–其他任一用户只要得到CA的公开密钥,就 能由此得到CA为该用户签署的公开密钥。 –除CA以外,任何其他人都不能以不被察觉 的方式修改证书的内容。
• 可直接从其他用户处获取,或从CA处获 取
2008-11-3 40
指与之共享密钥或与之 关联的参与方的真实身 的知识及其可炎症性
• 如,使用一个过期密钥,或误用一个用于其他用途 的密钥
2008-11-3
7
简单密钥建立模式
• n2个密钥分发问题
• 点对点和中心化的密钥管理
–点对点机制 –利用KDC –利用KTC
2008-11-3
8
2008-11-3
9
密钥管理:对称密钥 vs.公钥加密
• 用户通过公钥证书来互相交换自己的公钥,而无 须与公钥管理机构联系 • 公钥证书能以明文的形式进行存储和分配
2008-11-3 31
X.509证书
• 目前应用最广泛的证书格式是国际电信联 盟ITU(International telecommunication Union)提出的X.509版本3格式。 • X.509标准最早于1988年颁发,此后又于 1993年和1995年进行了两次修改 • Internet工程任务组(IETF)针对X.509在 Internet环境的应用,颁发了一个作为 X.509子集的RFC2459。从而使得X.509在 Internet环境中得到广泛应用。
• M是建立的会话密钥
2008-11-3 20
对称密钥证书
• 为了避免对KTC上存储的共享密钥数据库进 行集中维护管理,引入了对称密钥证书
其中
KT:只有KTC知道的对称主密钥;
对称密钥证书SCertA:包含KTC和A的长期共享密钥、 实体A的身份信息,也可以包含时戳信息;
由各个实体保存自己的对称密钥证书
16
4.
E K S [ N1 ]
要求各方时钟同步 如果发方时钟超前B方时钟,可能 导致等待重放攻击
2008-11-3
Yahalom协议
• 这个协议中Alice和Bob两人各与KDC共享一个秘密密 钥。 A、B分别为Alice和Bob的名字;
RA, RB为随机数
KDC
Alice
(A, RA) EB(A, RA, RB)
2008-11-3 37
公钥证书的建立
2008-11-3
38
• 如果所有用户都由同一CA为自己签署证书,则这 一CA就必须取得所有用户的信任。用户证书除了 能放在目录中以供他人访问外,还可以由用户直 接发给其他用户。 • 如果用户数量极多,则仅一个CA负责为用户签署 证书是不现实的,因为每一用户都必须以绝对安 全的方式得到CA的公开密钥,以验证CA签署的证 书。因此在用户数目极多的情况下,应有多个CA, 每一CA仅为一部分用户签署证书。
A, B
Bob
A、B分别为Alice和Bob 的名字; RA, RB为随机数 EK(A,T), EB(T,L,K,A) EK(T+1)
EA(T,L,K,B), EB(T,L,K,A)
2008-11-3
18
Needham-Schroeder公钥协议
1. E pB (k1 , A)
2. E p A (k1 , k 2 )
2008-11-3 34
• 主体的公钥信息:包括主体的公开密钥、使用这 一公开密钥算法的标识符及相关参数 • 颁发者唯一识别符:当CA名称被重新用于其它实 体时,则用这一识别符来唯一的识别发行者. (可选) • 主体唯一识别符:当主体的名称被重新用于其它 实体时,则用这一识别符来唯一的识别主体. (可选) • 扩展域:包括一个或多个扩展的数据项,仅在第3 版中使用 • 签名:CA用自己的私钥对上述域的哈希值的数字 签名.
2008-11-3 32
X.509证书格式
版本号 顺序号 算法 参数 发放者名称
第1版 第2版 第3版
}签字算法识别符 }有效期
起始时间 终止时间 主体名称 算法 参数 公开密钥 发放者惟一识别符 主体惟一识别符 扩充域 算法 参数 签字
}
主体的公钥信息
}
签字
33
2008-11-3
• 版本号:如v3 • 序列号:由同一发行者(CA)发放的每个 证书的序列号是唯一的 • 签名算法识别符:签署证书所用的算法及 相关参数. • 发行者名称:指建立和签署证书的CA名称. • 有效期:包括证书有效期的起始时间和终 止时间. • 主体名称:持有该证书的最终实体.
2008-11-3 21
三、公钥分发技术
例:Needham-Schroeder公钥协议
1. E pB (k1 , A)
2. E p A (k1 , k 2 )
3. E p B ( k 2 )
PA,PB分别为 Alice 和Bob 的公钥
如何可 信分发 ?
Alice
Bob
会话密钥W=f(k1,k2)
Bob
EA(B, k, RA, RB), EB(A, k)
解密得k和RA并 确认RA的有效性
EB(A, k), Ek(RB)
解密得k,再解密得RB, 确认RA的有效性
通过该协议,Alice、Bob互相确信是正在同对方谈话,而不是跟第三方
2008-11-3 17
Kerberos认证协议
KDC
Alice
2008-11-3 36
公钥证书的好处
• 用户只要获得其他用户的证书,就可以获 得其他用户的公钥 • 用户只要获得CA的公钥,就可以安全地认 证其他用户的公钥 • 公钥证书为公钥的分发奠定了基础,成为 公钥密码在大型网络系统中应用的关键技 术
–电子政务、电子商务等大型网络应用系统都采 用公钥证书技术
可实现相互的实体认证、密钥认证和密钥传输
2008-11-3 23
选择方案
• 可信信道上的点对点传输 • 直接访问一个可信的公开文件(公钥注册) (见13.4.1节) • 在线可信服务器的使用 • 离线服务器和证书的使用 (见13.4.2节) • 隐式确保公开参数真实性的系统的使用 (见13.4.3和13.4.4节)
相关主题