参考本blog:
数字签名基础知识
1. 数字签名和数据加密都是需要用到RSA等非对称加密算法
其中数字签名是发送方用私钥加密,接收方用公钥解密, 因为私钥只有发送方所有, 所以就可以保证发送方的身份。
通讯中的数据加密正好相反, 发送方用公钥加密, 只有拥有私钥的接收方才能解密数据, 从而保证了数据不会被第三方获取。
2. 数字签名的时候, 发送个接收方的信息往往包含一个数字证书, 该证书主要包含了与发送方私钥对应的公钥, 接收方可以使用这个公钥进行解密。
3. MD5, SHA都是单向散列函数, 他们经常用来在数字签名的时候生成信息摘要, 通过这些函数生成的摘要都是定长的。
单向散列函数还经常用于应用中的密码password的加密保存。
4.