

对称密码体制要求双方共享一个共同的密钥
为防止攻击者得到密钥,还必须时常更新密钥
分配密钥的方法有以下几种:
(1) 密钥由A选取,并通过物理手段交给B
(2) 密钥由第三方选取,并由第三方通过物理手段交给A和B
(3) 如果A、B事先已有一密钥,则其中一方选取新密钥后,用已有的密钥加密新密钥并发送给另一方
(4) 如果A和B与可信的第三方C分别有一保密通道,则C为A、B选取密钥后,分别在两个保密信道上发送给A、B。
前两种方法称为人工发送,该方法不可取
对于第3种方法,攻击者一旦获得一个密钥就可获取以后所有的密钥;而且用这种方法对所有用户分配初始密钥时,代价仍然很大
第4种方法比较常用,其中的第三方通常是一个负责为用户分配密钥的密钥分配中心(Key Distribution Certer, KDC)
每一用户必须和密钥分配中心有一个共享密钥,称为主密钥
通过主密钥分配给一对用户的密钥称为会话密钥,用于这一对用户之间的保密通信
通信完成后,会话密钥即被销毁
密钥分配方案需要完成两个功能:一是将密钥分发给双方;二是双方互相认证
图4.45是一个典型的密钥分配过程,由密钥分配中心(KDC)产生会话钥,然后分发给A和B.图中字符的含义如下:
--Ka和Kb分别是A和B各自拥有与KDC共享的主密钥;
--KS是分配给A和B的一次性会话钥;
--N1和N2是 临时交互号(Nonces),可以是时间戳、计数器或随机数,主要用于防止重放攻击;
--IDA和IDB分别是A和B的身份标识(例如A和B的网络地址)
--f(N2)是对N2的某种变换(例如将N2加1)函数,目的是认证。
--|| 表示连接符,如IDA||IDB||N1表示同时传送了IDA、IDB和N1。
| 各省软考办 | ||||||||||