标签:浏览器 随机 span hash 疑问 知识 href 算法 .net
为什么要使用https?
因为http协议下,数据都是明文传输的,容易被截获、修改转发。
https实现原理:
概要:通过非对称加密进行交互协商获得对称加密算法与密钥,使用协商获得的加密算法与秘钥对交互数据加密
疑问:
为什么最终使用对称加密算法加密数据?
因为非对称加密算法加密数据的消耗远远大于对称加密算法
为什么需要ca证书与数字签名?
因为对数据进行加密,客户端与服务器之间必须要一个协商过程:
使用对称加密则要协商加密算法与密钥,无法保证协商的过程的数据安全
使用非对称加密无法保证公钥传递安全
使用第三方证书为什么可以避免这个问题?
因为使用第三方证书后,避免了公钥的传递这个问题。公钥内置在浏览器的ca证书列表里。(浏览求通过服务器发送过来ca证书去匹配浏览器内置的ca上级证书获得公钥验证签名)
浏览器是如何验证ca证书与数字签名?
浏览器收到服务器发送的证书后,需要验证其真实性。而证书的签名是通过签名算法和上级CA的私钥生成的,并非很多文章里简单说的靠CA私钥生成。浏览器需要用上级CA的公钥才能解密签名,并与生成的指纹对比。(上级CA即颁发证书的第三方机构,上级CA证书是内置于浏览器或系统)
标签:浏览器 随机 span hash 疑问 知识 href 算法 .net
原文地址:https://www.cnblogs.com/dudeyouth/p/10004919.html