ssl 协议讲解,ssl 是什么层加密协议

SSL全称Secure Sockets Layer,中文译作安全套接层。协议栈里面这个“层”并不是随意命名,它确实占据独立位置。访问网页、发送邮件,数据从应用层向下传递,依次经过传输层、网络层、链路层,最后转为网络信号传输。SSL处在应用层和传输层中间。应用层数据先交给SSL,加密之后再递交给传输层。接收端收到数据,传输层把数据交给SSL解密,再向上传递至应用层。SSL不属于应用层协议,也不属于传输层协议,是夹在两层中间的安全层。OSI七层模型,有人归类到会话层与表示层之间,也有观点认为跨两层。TCP/IP模型简化处理,直接视作应用层、传输层中间的安全子层。

ssl 协议讲解,ssl 是什么层加密协议

TLS是SSL的后续版本。SSL3.0版本之后,IETF完成标准化,重新命名为TLS1.0,后续迭代出TLS1.1、1.2、1.3。当前浏览器和服务器实际运行的都是TLS协议,SSL只是沿用旧称呼。市场购买SSL证书,实际拿到的是TLS证书。清楚二者属于同一技术体系的两个名称即可,不用纠结名称差异。

SSL的工作流程分为握手阶段与数据传输阶段。握手阶段,客户端发送ClientHello,附带支持的TLS版本、加密套件清单、随机数。服务器返回ServerHello,选定TLS版本、加密套件,生成另一组随机数,同时下发服务器证书。证书包含公钥、域名、有效期、签发机构信息。客户端拿到证书,校验签发CA是否被本机信任、域名与访问站点匹配、证书没有过期、没有被吊销。校验失败浏览器弹出安全警告。校验通过,客户端生成预备主密钥,使用证书内公钥加密,发送给服务器。服务器使用自身私钥解密,获取预备主密钥。两端利用两组随机数和预备主密钥,各自计算出相同会话密钥,握手流程结束。

握手完成之后的数据传输依靠对称加密。非对称加密运算速度慢,不适合大批量数据加密。SSL使用协商生成的会话密钥执行对称加密,速度更高。每一条传输记录都会加密,附带消息认证码,用来校验数据有没有被篡改。接收端解密,校验认证码,校验失败直接丢弃数据包。整套机制对应用层透明,HTTP照常发起请求,SMTP正常传输邮件,上层协议感知不到SSL的加密动作。

SSL协议内部划分多个子协议。记录协议属于底层模块,负责上层数据分片、加密、附加认证码、发送数据包。握手协议负责协商加密参数,交换密钥。警报协议用来传递异常通知,握手失败、证书异常、解密报错都依靠它传递消息。变更密码规格协议是简短通知消息,告知对端切换新协商密钥。多个子协议分工配合,组成完整SSL体系。

回到SSL所属层级的问题。SSL依托传输层传输数据,但本身不属于传输层;为应用层提供安全能力,却不属于应用层。位于两层中间,为应用层协议提供加密、可校验的传输通道。访问HTTPS站点,HTTP运行在SSL/TLS之上,端口由80变更为443。邮件客户端使用SSL/TLS连接SMTP,端口从25改成465或者587。应用层协议本身没有改动,底层新增一层安全防护。

免责声明:本文提供的方法与建议仅供技术参考,实际部署效果受机房环境、运营商线路、系统配置等多重因素影响。请在专业人员指导下操作,因自行操作导致的业务损失本站不承担责任。

相关推荐

免备案 cdn 空间是否支持部署 ssl 证书

免备案CDN空间能不能部署SSL证书,要看选用哪一类CDN产品,免备案这个标签下面包含多种完全不同的产品,它们对SSL证书的支持能力差异很大。选用Cloudflare这类国际厂商免费版,是可以部署,操作起