名词说明
- SSL:Security Socket Layer
- TLS:Transport Layer Security,TLS是在SSL基础上设计的协议,相当于SSL协议的后续版本(可以理解为SSL改名成了TLS)
- TLS证书:TLS协议中使用的数字证书
基本思想
- 使用数字证书验证身份(可以双向认证,一般只需认证服务器)
- 数字证书添加数字签名防止证书被修改
- 开始阶段使用非对称加密协商对称加密的秘钥
- 后续会话采用对称加密传递数据
数字证书
- 数字证书可分为CA证书和自签名证书。CA证书是由权威机构CA颁发的数字证书,是被浏览器等外界信任的;自签名证书是由自己颁发的数字证书,外界是不信任的,可通过openssl生成。
- 数字证书一般使用X.509标准,证书文件编码格式分为der(二进制)和pem(ASCII)
- 数字证书含有证书签发机构、证书所有者的信息、域名相关信息、公钥、使用的加密算法、数字签名等信息
- 客户端向服务器发送请求,服务器将自己的证书发送给客户端,客户端验证证书的内容和数字签名
数字签名如何防止证书被修改?
- 生成数字签名:首先对证书的内容通过hash等算法生成数据摘要,对数据摘要使用私钥(由证书颁发机构提供,自签名证书则是自己的私钥)进行非对称加密则得到数字签名,添加在证书上
- 验证数字签名:客户端收到证书,对证书的内容使用相同的算法生成数据摘要A,再使用证书上的公钥对数字签名进行解密得到数据摘要B,比较数据摘要A和B,若相同则表示证书没有被修改过
协议流程(Wireshark抓包演示)
TCP三次握手
Client Hello
Server Hello
- 证书
本文深入解析SSL和TLS协议,包括身份验证过程、数字证书的作用,以及数字签名确保证书完整性的方法。重点讲解了数字证书的类型(CA与自签名)、验证流程及Wireshark示例,适合了解网络安全协议的读者。
5683

被折叠的 条评论
为什么被折叠?



