重点:
1、区分加密解密和签名验签(在非对称加密情景下)
- 加密解密:#A给B发消息# A用B的公钥进行运算(加密),B收到后用B自己的私钥进行逆向运算(解密)
- 签名验签:#A给B发消息# A用A自己的私钥进行运算(签名),B收到后用A的公钥进行逆向运算(验签)
2、证书签发的原理
- CA 对用户签发证书:对某个用户公钥,使用 CA 的私钥对其进行签名。这样任何人都可以用 CA 的公钥对该证书进行合法性验证。验证成功则认可该证书中所提供的用户公钥内容, 实现用户公钥的安全分发 。
附:有一篇文章采用图文讲解公私钥、加解密、签名和数字证书很清楚,值得一看~https://www.ruanyifeng.com/blog/2011/08/what_is_a_digital_signature.html
1、什么是公钥与私钥?
-
公钥与私钥是通过 椭圆曲线算法得到的一个密钥对,它们代表的是用户信息的一个数字证书
-
公钥是公开的,私钥是非公开的
-
公钥通常用于 加密会话密钥, 验证数字签名,而 私钥则是用来 解密和数字签名的,两个密钥是互解的关系,即用公钥加密的内容只能用私钥解密,用私钥加密的内容只能用公钥解密。
-
例如,当你发送文件时,用私钥签名,别人用你给的公钥验证签名,就可以保证该信息是你发送的
-
2、Hash算法与数字摘要
-
Hash算法
-
Hash 算法并不是一种加密算法,不能用于对信息的保护
-
定义:能将任意长度的二进制明文串映射为较短的(通常是固定长度的)二进制串( Hash 值),并且不同的明文很难映射为相同的 Hash 值。
-
目前常见的 Hash 算法包括 MD5 和 SHA 系列算法
-
MD5 已被证明不具备“强抗碰撞性”
-
SHA (Secure Hash Algorithm )并非一个算法,而是一个 Hash 函数族
-
目前, MD5 和 SHAl 已经
-
-