数字签名

通过散列函数可以确保数据内容的完整性,但这还远远不够。此外,还需要确保数据来源的可认证(鉴别)性和数据发送行为的不可否认性。
数字签名针对以数字形式存储的消息进行处理,产生一种带有操作者身份信息的编码。执行数字签名的实体称为签名者,签名过程中所使用的算法称为签名算法(Signature Algorithm),签名操作中生成的编码称为签名者对该消息的数字签名。
发送者通过网络将消息连同其数字签名一起发送给接收者。接收者在得到该消息及其数字签名后,可以通过一个算法来验证签名的真伪以及识别相应的签名者。这一过程称为验证过程,其过程中使用的算法称为验证算法(Verification Algorithm),执行验证的实体称为验证者。
数字签名离不开非对称密码体制,签名算法受私钥控制,且由签名者保密;验证算法受公钥控制,且对外公开。

J6EngK.png