密钥建立协议的结构有三个分类准则:哪些密钥是已经建立的、会话密钥是如何生成的、协议服务的用户有多少。
1.已建立的密钥
两个协议参与者建立一个新的会话密钥主要有三种可能的方式:两个实体已经共享一个秘密密钥,该密钥可用于加密、消息验证码等密码操作;使用离线服务器,参与者使用公钥加密体制进行通信,为了验证公钥的可靠性,有必要验证数字证书,我们把公钥证书的使用看作是使用离线的可信服务器;使用在线服务器,每个实体与可信任服务器共享一个密钥,通过服务器转发彼此的通信内容。
2.会话密钥的生成方法
在一个密钥建立协议中,可以使用不同的方法来生成会话密钥。我们用“用户”表示一个想用会话密钥进行通信的实体,用“参与者”表示一个将参与协议的实体。例如,在图4.1中,A和B是用户,而S不是。A、B和S都是参与者。
根据密钥生成方法对密钥建立协议进行以下分类。
(1)密钥传输协议:协议中一个参与者生成密钥,之后这个密钥被传输给所有的协议用户。
(2)密钥协商协议:协议中会话密钥是由密钥生成函数生成的,该函数的输入是协议用户的密钥参数。(www.daowen.com)
(3)混合协议:在协议中,会话密钥是一个以上的参与者输入参数的函数值,但并不是所有的用户。这就意味着协议是代表部分用户观点的协商协议,也是代表其他用户观点的密钥传输协议。
3.用户的数量
根据协议参与者的数量可以对密钥建立协议进行分类,如两个用户建立点到点通信的密钥建立协议,3个及3个以上用户的会议密钥协议。
以上提到的三个准则可以用来对密钥建立协议进行分类。我们给出一个特殊的实例,如图4.1所示,这个协议使用在线服务器,有两个用户,使用混合密钥生成方法。
首先,A和B分别与S共享长期密钥KAS和KBS。会话密钥KAB=f(NB,NS),f是一个密钥生成函数,NB和NS分别是B和S产生的随机值。从B的角度来看,它像一个密钥协商协议,因为B有密钥的输入参数。从A的角度来看,它是一个密钥传输协议。
图4.1 一个特殊类别的协议
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。