公钥、私钥和证书
理解公钥和私钥首先要区分加密和认证这两个概念!
加密和认证:
加密是将数据资料加密,使别人即使获取加密资料,也无法获取正确的资料内容,重点在于数据的安全性。
认证是确定数据的真实发送方,使别人无法伪造或冒充,重点在于用户的真实性。
公钥和私钥:
公钥和私钥就是俗称的不对称加密方式,是对称加密(使用用户名与密码)方式的提高。
使用公钥与私钥的目的是为了安全的数据传输,必须实现如下目的:
- 我发送给你的内容必须加密,在数据传输过程中不能被别人看到真实数据内容。
- 接收数据方能确定是我发送的数据,不是别人冒充我的。
- 公钥:是公布出去的给别人用的,可以被很多人获取。用来加密和验章。
- 私钥:只能自己持有,并且不可以被其他人知道。用来解密和签章。
- 一个公钥对应一个私钥;
- 密钥对中,让大家都知道的是公钥,不告诉大家,只有自己知道的,是私钥;
- 如果用其中一个密钥加密数据,则只有对应的那个密钥才可以解密;
- 如果用其中一个密钥可以进行解密数据,则该数据必然是对应的那个密钥进行的加密;
- 为了数据的安全性,A 需要使用 B 的公钥来给数据加密,这样只有 B 的私钥才可以解密数据,别人无法解密,这样保证了数据的安全性。这是数字签名。
- 为了保证数据发送方的真实性,A 需要使用自己的私钥来给数据加密,这样其他人用 A 的公钥进行解密,由于只有 A 的私钥加密的数据,A 的公钥才能解密,所以他人用 A 的公钥若能解密此数据,则证实了此数据是由 A 发送的,若不能解密,则证明此数据不是用 A 的私钥加密的,即不是 A 发送的,这样保证了发送方的真实性。