2026/6/1 8:04:29
网站建设
项目流程
app建设网站公司,苏州网站建设主页,苏州网站 制作 公司,做一个公司的门户网站多少钱自Web诞生以来#xff0c;我们所接触的互联网时代#xff0c;都有可能存在信息的截断#xff0c;而SSL协议及其后代TLS提供了加密和安全性#xff0c;使现代互联网安全成为可能。
这些协议已有将近二十多年的历史#xff0c;其特点是不断更新#xff0c;旨在与日趋复杂的…自Web诞生以来我们所接触的互联网时代都有可能存在信息的截断而SSL协议及其后代TLS提供了加密和安全性使现代互联网安全成为可能。这些协议已有将近二十多年的历史其特点是不断更新旨在与日趋复杂的攻击者保持同步。什么是SSL什么是TLSSSL代表安全套接字层该协议是由Netscape于1990年代中期开发的Netscape是当时最受欢迎的Web浏览器。SSL 1.0从未向公众发布而SSL 2.0具有严重的缺陷。1996年发布的SSL 3.0进行了彻底的改进为后续工作奠定了基础。而TLS与SSL当一版本于1999年发布时它由Internet工程任务组IETF进行了标准化并被赋予了一个新名称传输层安全性 TLS。正如TLS规范指出的那样“此协议与SSL 3.0的区别并不明显。” 因此TLS和SSL并不是真正的问题。而是这两者形成了一系列不断更新的协议并且经常被合并为SSL / TLS。这样我们就明白了TLS传输层安全性只是SSL的更新更安全的版本。目前已经升级到TLS1.3版本TLS协议对所有类型的Internet通信进行加密。最常见的是网络流量简而言之它们是保持Internet连接安全并保护两个系统之间发送的任何敏感数据的标准技术可防止犯罪分子读取和修改所传输的任何信息包括潜在的个人详细信息。SSL/TLS握手过程握手过程非常复杂并且协议允许有多种变体。以下步骤提供了一个大致的概述。第一客户端与服务器联系并请求安全连接。服务器以密码套件列表即创建加密连接的算法工具包答复客户端将其与其自己的受支持密码套件列表进行比较选择一个然后让服务器知道它们都将使用它。第二服务器提供其数字证书该数字证书是由第三方机构颁发的确认服务器身份的电子文档。包含服务器的公共加密密钥等等。客户端收到证书后便会确认证书的真实性。第三客户端和服务器使用服务器的公共密钥建立会话密钥这两个会话密钥将用于会话的其余部分以加密通信。有几种技术可以做到这一点。客户端可以使用公共密钥对随机数进行加密然后将其发送到服务器进行解密然后双方都可以使用该数字来建立会话密钥。或者两方可以使用所谓的Diffie-Hellman密钥交换来建立会话密钥。TLS1.2和TLS1.3比较TLS1.2它也允许使用较旧的加密技术以支持较旧的计算机。不幸的是这使它容易受到攻击在中间人攻击中黑客拦截了通信中的数据包并在读取或更改数据包后将其发送出去。幸运的是TLS1.3通过抛弃对旧加密系统的支持填补了许多此类漏洞。使通信中的数据包受到了保护。什么是SNIServer Name Indication (SNI) 是TLS协议以前称为SSL协议的扩展该协议在HTTPS中使用。它包含在TLS/SSL握手流程中以确保客户端设备能够看到他们尝试访问的网站的正确SSL证书。该扩展使得可以在TLS握手期间指定网站的主机名或域名而不是在握手之后打开HTTP连接时指定。SNI的技术原理SNI通过让客户端发送虚拟域的名称作为TLS协商的ClientHello消息的一部分来解决此问题。这使服务器可以及早选择正确的虚拟域并向浏览器提供包含正确名称的证书。这样要说一下服务器名称指示SNI有效负载未加密因此客户端尝试连接的服务器的主机名对于被动的窃听者是可见的。TLS的SNI扩展有什么作用Web服务器通常负责多个主机名–或域名。如果网站使用HTTPS 则每个主机名将具有其自己的SSL证书。在HTTPS中先有TLS握手然后才能开始HTTP对话。如果没有SNI客户端将无法向服务器指示正在与之通信的主机名。如果服务器可能为错误的主机名生成SSL证书。那么SSL证书上的名称与客户端尝试访问的名称不匹配则客户端浏览器将返回错误信息并通常会终止连接。通过 SNI拥有多虚拟机主机和多域名的服务器就可以正常建立 TLS 连接了。下面我们就开始对TLS协议的SNI进行解析。TLS协议的SNI识别这里给出的只是一部分代码实现。int main(int argc, char* argv[]) { char errbuf[1024]; pcap_t *desc 0; char *filename argv[1]; if (argc ! 2) { printf(usage: ./dissect_tls [pcap file]\n); return -1; } return 0; }编译运行在客户端到服务端方向的 ClientHello 包中提取 SNI 扩展字段中的 SNI_NAME 字段通过数据包偏移量进行逐步匹配得到 SNI_NAME。对 SNI_NAME 进行规则匹配。总结这篇文章只是对SSL/TLS做一些简单的介绍想通过更多认识可以阅读官方的RFC文档对于SNIServer Name Indication是 TLS 的扩展它主要是用来解决一个服务器拥有多个域名的情况。通过 SNI拥有多虚拟机主机和多域名的服务器就可以正常建立 TLS 连接了。欢迎关注微信公众号【程序猿编码】需要SSL/TLS源码和报文的添加本人微信号(17865354792)网络安全学习资源分享:给大家分享一份全套的网络安全学习资料给那些想学习 网络安全的小伙伴们一点帮助对于从来没有接触过网络安全的同学我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线大家跟着这个大的方向学习准没问题。因篇幅有限仅展示部分资料朋友们如果有需要全套《网络安全入门进阶学习资源包》需要点击下方链接即可前往获取读者福利 |CSDN大礼包《网络安全入门进阶学习资源包》免费分享安全链接放心点击1.成长路线图学习规划要学习一门新的技术作为新手一定要先学习成长路线图方向不对努力白费。对于从来没有接触过网络安全的同学我们帮你准备了详细的学习成长路线图学习规划。可以说是最科学最系统的学习路线大家跟着这个大的方向学习准没问题。2.网安入门到进阶视频教程很多朋友都不喜欢晦涩的文字我也为大家准备了视频教程其中一共有21个章节每个章节都是当前板块的精华浓缩。全套教程文末领取哈3.SRC黑客文档大家最喜欢也是最关心的SRC技术文籍黑客技术也有收录SRC技术文籍黑客资料由于是敏感资源这里不能直接展示哦全套教程文末领取哈4.护网行动资料其中关于HW护网行动也准备了对应的资料这些内容可相当于比赛的金手指5.黑客必读书单6.网络安全岗面试题合集当你自学到这里你就要开始思考找工作的事情了而工作绕不开的就是真题和面试题。所有资料共282G朋友们如果有需要全套《网络安全入门进阶学习资源包》可以扫描下方二维码或链接免费领取~读者福利 |CSDN大礼包《网络安全入门进阶学习资源包》免费分享安全链接放心点击