发送方
数据(A)散列运算生成数字签名(B)
将数据和签名一起打包(A+B),发送数据包(A+B)
接收方
对端收到数据包(A+B),但不确定数据是否被篡改
对端将数据包拆分为数据(A)和签名(B)
对端将数据(A)进行散列运算,生成签名(C)
对端将数据包拆分出的签名(B)与自己从数据生成的签名(C)进行比较
如果,比较结果一致(即 B = C),则认为数据没有被篡改过
总结
发送方和接收方都用数据生成一个标签(签名),如果双方生成的签名一致,则说明数据在传输过程中没有被篡改,即数据是可信任的。