5.4.4 基于公钥的仲裁方案
第三种方案,利用公钥体系,仲裁者无法看到消息明文。X代表签名的发送方,Y代表签名的接收方,A代表仲裁者,M代表待签消息,则主要过程包括:
其中,skX为发送方的私钥,pkY为接收方的公钥,skA为仲裁者私钥。
例5-3 利用RSA公钥密码体制,若发送发的公钥为(5,119),私钥为(77,119);接收方的公钥为(17,2 773),私钥为(157,2 773);仲裁者公钥为(3 533,11 513),私钥为(6 597,11 513);传送的消息m=2。按照本节介绍的方案进行签名。
首先,X对消息m=2利用自己的私钥skX进行加密
然后利用接收方Y的公钥pkY再次加密得到
最后利用自己的私钥skX对二次加密后的结果进行签名得到
于是,X将签名后的结果发给仲裁者A。
其次,A收到X发送的信息后,利用X的公钥(5,119)对信息进行解密得到
可以得到发送方的身份,并对根据身份与密钥是否对应来验证发送方的身份。通过验证后,利用自己的私钥对信息加密得到
然后将此信息发给Y。
最后,Y接收到A发送的信息后,先利用A的公钥(3 533,11 513)和自己的私钥(157,2 773)进行解密得到
然后再利用X的公钥对此信息解密得到
m=(277)5 mod 119=2
在此方案中,发送方利用自己的私钥和接收方的公钥对消息进行加密,从而实现消息的签名和保密。利用这种方式,仲裁者将无法看到消息明文。仲裁者收到发送方发来的信息后,利用发送方的公钥对信息进行解密,将解密得到的IDX和接收到的IDX进行比较看是否相同,从而可以判断消息是否确实来自此发送方。为了防止重放攻击,仲裁者在发往接收方的信息中增加了时间戳。
与前两个方案相比,利用公钥体制的数字签名至少有以下三个优点。
(1)方案执行前,三方之间都不必有共享的信道,有利于防止和谋的实现。
(2)只要仲裁者的私钥不被泄露,任何人都不能实施重放攻击。
(3)对于仲裁者来说,消息是保密的。
仲裁者签名方案的安全性基于所选的对称密钥加密方案的安全性以及密钥以可信方式分配给共享者的安全性。由于对称密钥算法通常比公钥技术快得多,因此基于对称密钥的仲裁系统签名的生成和验证效率比较高。具有仲裁者的签名系统的缺点是签名的收发双发都需要与仲裁者进行交互,使得仲裁者的负载大大增加,系统的负载也随之增大。