1. 签名过程:
a. 发送方使用哈希函数对待发送的数据进行哈希运算,得到一个固定长度的哈希值。
b. 发送方使用自己的私钥对哈希值进行加密,生成数字签名。
c. 发送方将签名和原始数据一起发送给接收方。
2. 验签过程:
a. 接收方收到签名和原始数据后,使用发送方的公钥对签名进行解密,得到解密后的哈希值。
b. 接收方使用相同的哈希函数对接收到的原始数据进行哈希运算,得到一个新的哈希值。
c. 接收方将解密后的哈希值与新的哈希值进行比较,如果相同,则说明数据未被篡改,验签成功;如果不同,则说明数据被篡改,验签失败。