设施加签名的算法为SIG,产生签名的密钥为K,被签名的数据为M,产生的签名信息为S,则有SIG(M,K)=S。
以下关于签名函数必要性的说法,不正确的有(17)。

2023-09-01

A.当M’≠M时,有SIG(M’,K)≠SIG(M,K)
B.签名S只能由接收者产生,否则别人便可伪造。
C.收信者可以验证签名S的真伪。这使得当签名S为假时收信者不致上当。
D.签名者也应有办法鉴别收信者所出示的签名是否是自己的签名。

参考答案:B

签名函数必须满足以下条件,否则文件内容及签名被篡改或冒充均无法发现:
①当M’≠M时,有SIG(M’,K)≠SIG(M,K)。
条件①要求签名S至少和被签名的数据M一样长。当M较长时,应用很不方便。将条件1改为:虽然当M’≠M时,存在S=S’,但对于给定的M或S,要找出相应的M’在计算上是不可能的。
②签名S只能由签名者产生,否则别人便可伪造,于是签名者也就可以抵赖。
③收信者可以验证签名S的真伪。这使得当签名S为假时收信者不致上当。
④签名者也应有办法鉴别收信者所出示的签名是否是自己的签名。这就给签名者以自卫的能力。