https的网站是不是必须让用户装数字证书
https的网站是不是必须让用户装数字证书?
1. 如果用户不装,是否就不能够访问,或者说无法完成,比如交易这种操作。
2. 浏览器识别到https网站的时候,是浏览器负责建立加密通道?还是靠网站开发人员写代码来进行ssl加密?
HTTPS 完成两种任务:
1. 保护客户端的服务器之间的数据安全,即使网络被窃听,也无法获取到被加密的信息(无法解密)
2. 服务端证明自己确实是某个网站,而不是别人伪装出来的。
也可以使用第三个功能(由服务器来决定):
3. 认证客户端是不是拥有授权的客户端。
1 不需要客户端做任何事情,只要支持和服务端相同的协议(加密算法)即可。
2 需要一个第三方机构协助达到目的(CA),客户端根据 CA 等来判断服务端是不是正牌的服务端。
3 需要客户端安装(或者拥有)服务器签发的证书来表明自己的身份。简单来说就是一个服务器发给客户端的密码。
1.有的网站需要用户证书,也有的不要求。这是因为ssl协议可以是单向认证,也可以是双向认证。如果是单向认证,那只要网站有证书就行了,用户就能知道网站是可信的。如果是双向认证,那么在ssl握手阶段用户就要把自己的证书发给对方服务器,服务器要认证用户的身份。
2.建加密通道是网站的开发人员要在写代码的时候写出来,同时用户的浏览器要支持ssl协议。现在流行的浏览器一般都能支持ssl协议。
直接回复你的问题:
1. 如果用户不装,是否就不能够访问,或者说无法完成,比如交易这种操作。
用户浏览器不需要安装数字证书,而是在浏览器和服务器进行认证交换的过程中,浏览器自动完成了数字证书的获取。
2. 浏览器识别到https网站的时候,是浏览器负责建立加密通道?还是靠网站开发人员写代码来进行ssl加密?
不需要开发人员编写ssl加密,是浏览器负责和服务端沟通,创建加密通道,进而在加密通道内建立数据交换。
以上。
https的最主要目的是传输加密。加密是用网站的服务器上面的ssl证书完成的
- 有的网站需要用户证书,也有的不要求。这是因为ssl协议可以是单向认证,也可以是双向认证。如果是单向认证,那只要网站有证书就行了,用户就能知道网站是可信的。如果是双向认证,那么在ssl握手阶段用户就要把自己的证书发给对方服务器,服务器要认证用户的身份。
- 建加密通道是网站的开发人员要在写代码的时候写出来,同时用户的浏览器要支持ssl协议。现在流行的浏览器一般都能支持ssl协议。
- 总之 现在一般做法都是要安装ssl证书
本文来自博客园,作者:河北大学-徐小波,转载请注明原文链接:https://www.cnblogs.com/xuxiaobo/p/17021084.html

【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步