数字签名具有不可抵赖性,不可能冒充伪造,而在一些特殊情况下,当本人不方便进行签名时,可以指定一个代理签名者代表原始签名者生成有效的数字签名,而这种签名方案就叫做代理签名。

代理签名简介

代理签名的概念在1996年由Mambo、Usuda和Okamoto首先提出,代理签名是指签名者可以授权他人代理自己,由被指定的代理签名者代表原始签名者生成有效的签名。

一个代理签名系统至少有几个参与者,分别是对他人进行授权的原始签名者、获得授权执行签名的一个或多个代理签名者、对签名进行验证的一个或多个验证者。

代理签名

代理签名的过程

在一个数字签名体制中,A、B为两个用户,A为原始签名者,他的私钥、公钥分别是XA,YA,B为代理签名者,私钥、公钥分别是XB、YB

  1. A利用他的私钥XA计算出一个数K(委托密钥),并将K秘密地交给B。任何人(包括B)在试图求出XA时,K不会对他有任何帮助。
  2. B可以用K和XB生成一个新的签名密钥KA-B(代理签名密钥)。
  3. 通过KA-B可以对消息生成数据签名,而这个数字签名就是A的代理签名。

代理签名

代理签名的要求

  • 不可伪造性:除了原始签名者外,只有指定的代理签名者能够代表原始签名者产生有效代理签名。
  • 可验证性:从代理签名中,验证者能够相信原始签名者认同了这份签名消息。
  • 不可否认性:一旦代理签名者代替原始签名者产生了有效的代理签名,他就不能向原始签名者否认他所签的有效代理签名。
  • 可区分性:任何人能够正确地区分代理签名和原始签名者的签名。
  • 代理签名者的不符合性:代理签名者必须创建一个能检测到是代理签名的有效代理签名。
  • 可识别性:原始签名者能够从代理签名中确定代理签名者的身份。

代理签名

代理签名的分类

完全代理签名

指原始签名者直接把自己的签名密钥通过安全信道发送给代理签名者,代理签名者产生的签名与原始签名者所产生的签名完全相同。

但由于代理签名者所产生的签名与原始签名者所产生的签名是不可区分的,不具有可识别性和不可否认性,与代理签名的基本要求不符,也不能防止可能出现的签名滥用,因此在多数场景下并不适用。

部分代理签名

代理非保护代理签名:除了原始签名者,指定的代理签名者能够代替原始签名者产生有效代理签名。但是,没有指定为代理签名者的第三方不能产生有效代理签名。

代理保护代理签名:只有指定的代理签名者能够代替原始签名者产生有效代理签名。但是,原始签名者和第三方都不能产生有效代理签名。

具有证书的代理签名

授权代理签名:指原始签名者用他的签名密钥使用普通的签名方案签一个文件(称某某为代理签名者),然后把产生的证书发给代理签名者。

持票代理签名:指证书是由消息部分和原始签名者对新产生的公钥的签名组成,原始签名者把新产生的公钥所对应的秘密钥以安全的方式发给代理签名者。

免责声明:素材源于网络,如有侵权,请联系删稿。