大家好,又见面了,我是你们的朋友全栈君。
目的
为了防止中间人攻击和钓鱼
基础概念(要求预先了解的知识概念)
- 对称密钥体系(对称加密)和非对称密钥体系(非对称加密)都提供2份秘钥。
- 公钥私钥是概念上的,发布出去的为公钥,留在手上的为私钥,实质上不存在公私钥区别。
- 特殊的:在实际操作中,生成RSA(特别的:一种加密方式)密钥时会有两个秘钥,其中一份包含另一份的完整信息【此时默认命名为私钥】——->这就是为什么私钥可以推导出公钥的原因—–在实际操作中默认私钥由2把秘钥组成。
- 对称密钥体系中,公私钥可以互相推导或者内容一。
- 非对称密钥体系,公私钥,不可互推,且内容上不一样.
- 公私钥都可以做加密方,也可以做解密方。
基本原理
采用第三方担保,确保数字签名中的发出来的公钥是服务器所提供的。再用证书中服务器的公钥对信息加密,与服务器通信。
证书使用
1.服务器把公钥(指发布出去的密钥)和个人信息发送给证书商(CA),证书商用私钥加密(打个戳),CA证书形成。(这个过程确保:如果获得的证书合法,则CA为证书内的服务器公钥的正确性提供担保)
2.证书商把CA给服务器。
3.用户向服务器(比如说网站)申请CA,用户获得CA,用户用证书商的公钥解密,拿到服务器信息和服务器公钥。(这个过程中:由于大家都只有公钥,所以你发的信息理论上不可解密,不可伪造,这就说明你发的信息必定是自己写的,所以不可抵赖)
4.用户使用服务器公钥与服务器进行通信(这个过程中由于非对称加密的局限,在实际中服务器与客户端会互相约定用指定的某对对称秘钥进行加密通信)
5.怎么传递对称秘钥?可以在https中,浏览器生成对称秘钥,用证书中公钥加密对称秘钥,然后传输到服务器上进行约定。
综述
CA证书是建立在非对称秘钥体系上的。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/137646.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...