数字签名原理
- 客户端处理
- 要传输的二进制数据可使用对称加密算法AES加密(报文)
- 对报文进行HASH提取报文摘要(指纹)
- 发送方使用RSA(私钥)对报文摘要进行加密(数字签名)
- 把数字签名附着在报文的末尾一起发送给接收方
- 服务端处理
- 对报文HASH得到报文摘要
- 使用RSA(公钥)对数字签名进行解密
- 判断是否与报文摘要相同,如果一致说明数据有效
数字签名的应用场景
- 需要严格验证发送方身份信息情况
- 使用数字签名能够让接收方确信对象是数字签名者本人
数字签名的安全性
- 能够有效的保证数据来源,数据完整性防止被人伪造
- 前提条件–用于验证数字签名的公钥是正确的,如果公钥是伪造的则无法进行签名验证