主权项 |
一种用于在第一实体和第二实体之间进行双向认证的方法,包括:所述第一实体通过向所述第二实体发送消息来发起双向认证,其中,发起双向认证的所述消息包括具有至少一个信任根密钥的散列和对应的所述第一实体的证书链;所述第二实体对与所述第一实体相关联的第一公钥进行验证,生成第一随机数,使用所述第一公钥对所述第一随机数进行加密并在消息中向所述第一实体发送经加密的第一随机数,其中,从所述第二实体向所述第一实体发送的包括所述经加密的第一随机数的所述消息还包括所述第二实体的证书链;所述第一实体对与所述第二实体相关联的第二公钥进行验证,使用对应于所述第一公钥的第一私钥对所述经加密的第一随机数进行解密,生成第二随机数,根据至少所述第一随机数生成第一散列,使用所述第二公钥对所述第二随机数和所述第一散列进行加密,并在消息中向所述第二实体发送经加密的第二随机数和第一散列;所述第二实体使用对应于所述第二公钥的第二私钥对所述经加密的第二随机数和第一散列进行解密,验证所述第一散列以便认证所述第一实体并且确定所述第一实体知道所述第一随机数,根据至少所述第二随机数生成第二散列,并将所述第二散列发送到所述第一实体;以及所述第一实体验证所述第二散列以便认证所述第二实体并且确定所述第二实体知道所述第二随机数。 |