4.4 指定的确认者签名

    Alice公司销售DEW软件的生意非常兴隆,事实上,Alice验证不可抵赖签名的时间比编写新的功能部件的时间更多。

    Alice很希望有一种办法可以在公司中指定一个特殊的人负责对整个公司的签名验证。Alice或任何其他程序员能够用不可抵赖协议对文件签名。但是所有的验证都由Carol处理。

    结果表明,用指定的确认人签名[333,1213]是可行的。Alice能够对文件签名,而Bob相信签名是有效的,但他不能使第三方相信。同时,Alice能够指定Carol作为她签名后的确认人。Alice甚至事先不需要得到Carol的同意,她只需要Carol的公开密钥。如果Alice不在家,已经离开公司,或者突然死亡了,Carol仍然能够验证Alice的签名。

    指定的确认人签名是标准的数字签名和不可抵赖签名的折中。肯定有一些场合Alice可能想要限制能验证她的签名的人。另一方面,如果Alice完全控制则破坏了签名的可实施性:Alice可能在确认或否认方面拒绝合作,她可能声称用于确认或否认的密钥丢失了,或者她可能正好身份不明。指定的确认人签名让Alice既能保护不可抵赖签名同时又不让她滥用这种保护。Alice可能更喜欢那种方式:指定的确认人签名能够帮助她防止错误的应用,如果她确实丢失了密钥,可以保护她,如果她是在渡假、在医院、甚至死了,也可以插手干预。

    这种想法有各种可能的应用。Carol能够把她自己作为公证人公开。她能够在一些地方的一些目录中发布她的公开密钥,人们能够指定她作为他们签名的确认人。她向大众收取少量的签名确认费用,使她可以生活得很好。

    Carol可能是版权事务所、政府机构、其它的很多事物。这个协议允许组织机构把签署文件的人同帮助验证签名的人分开。

4.5 代理签名

    指定确认人签名允许签名者指定其他某个人来验证他的签名。例如,Alice需要到一些地方进行商业旅行,这些地方不能很好地访问计算机网络(例如,到非洲丛林)。或者也许她在大手术后,无能为力。她希望接受一些重要的电子邮件,并指示她的秘书Bob作相应的回信。Alice在不把她的私钥给Bob的情况下,该如何让Bob行使她的消息签名的权利呢?

    代理签名是一种解决方案[1001]。Alice可以给Bob代理,这种代理具有下面的特性:

  • 可区别性。任何人都可区别代理签名和正常的签名。
  • 不可伪造性。只有原始签名者和指定的代理签名者能够产生有效的代理签名。
  • 代理签名者的不符合性。代理签名者必须创建一个能检测到是代理签名的有效代理签名。
  • 可验证性。从代理签名中,验证者能够相信原始的签名者认同了这份签名消息。
  • 可识别性。原始签名者能够从代理签名中识别代理签名者的身份。
  • 不可抵赖性。代理签名者不能否认他创立的且被认可的代理签名。

    在某些情况中,需要更强的可识别性形式,即既任何人都能从代理签名中确定代理签名者的身份。基于不同的数字签名方案的代理签名体制在[1001]中描述。