|
|
|
第三方认证是指两个实体在鉴别过程中通过可信的第三方来实现。可信的第三方简称TTP(Trusted Third Party)。如下图所示,第三方与每个认证的实体共享秘密,实体A和实体B分别与它共享秘密密钥KPA、KPB。当实体A发起认证请求时,实体A向可信第三方申请获取实体A和实体B的密钥KAB,然后实体A和实体B使用KAB加密保护双方的认证消息。
|
|
|
|
|
|
|
|
实体A和实体B基于第三方的认证方案有多种形式,本文选取一种基于第三方挑战响应的技术方案进行阐述。设A和B各生成随机数为RA、RB,IDA为实体A的标识,IDB为实体B的标识,则认证过程简要描述如下:
|
|
|
|
第一步,实体A向第三方P发送加密消息KPA(IDB,RA)。
|
|
|
|
第二步,第三方收到KPA(IDB,RA)的消息后,解密获取实体A消息。生成消息KPA(RA,KAB)和KPB(IDA,KAB),发送到实体A。
|
|
|
|
第三步,实体A发送KPB(IDA,KAB)到实体B。
|
|
|
|
第四步,实体B解密消息KPB(IDA,KAB),生成消息KAB(IDA,RB),然后发送给实体A。
|
|
|
|
第五步,实体A解密KAB(IDA,RB),生成消息KAB(IDB,RB)发送给实体B。
|
|
|
|
第六步,实体B解密消息KAB(IDB,RB),检查RB的正确性,若正确,则实体A认证通过。
|
|
|
|
|