windows部署网站php,礼品公司网站模板,服装网络营销方案策划,wordpress 工具安装教程这里是Themberfue ✨上节课我们聊到了对称加密和非对称加密#xff0c;实际上#xff0c;单纯地非对称加密并不能保证数据不被窃取#xff0c;我们还需要一个更加重要的东西——证书 中间人攻击 通过非对称加密生成私钥priKey和公钥pubKey用来加密对称加密生成的密钥… 这里是Themberfue ✨上节课我们聊到了对称加密和非对称加密实际上单纯地非对称加密并不能保证数据不被窃取我们还需要一个更加重要的东西——证书 中间人攻击 通过非对称加密生成私钥priKey和公钥pubKey用来加密对称加密生成的密钥确实可以有效的对数据的传输进行保护但其中还存在一个非常严重的漏洞。✨中间人攻击Man-In-The-Middle AttackMITM 是一种网络攻击形式攻击者通过拦截和篡改两方通信内容冒充通信的某一方与另一方对话从而获取敏感信息或进行恶意操作。整个过程通常对通信双方是不可见的因此具有很大的隐蔽性。中间人攻击通常冒充双方之一假装是服务器与客户端通信、假装是客户端与服务器通信攻击者在通信中插入、修改或窃取数据而通信双方误以为彼此直接对话。中间人攻击的常见手段有很多种这里我们只讲其中的一种通过特殊手段拿到加密的密钥。✨客户端服务端通信前客户端向服务端请求获得 公钥pub1服务端接受请求返回 公钥pub1此时黑客拦截到响应但黑客自己又生成了一对 公钥pub2 和 私钥pri2黑客伪造响应数据包将 公钥pub2 返回客户端客户端没有能力辨别该公钥的真假便直接拿来用了随后将客户端生成的 密钥key 使用 公钥pub2 进行加密随后再度发送请求给服务端此时又被黑客拦截了黑客将使用 私钥pri2 对通过 公钥pub2 加密的 密钥 key 进行解密从而得到 密钥key随后再使用 公钥pub1 再度对该 密钥key 加密并伪造请求数据包发送给服务端服务端得到之后使用 私钥pri1 进行解密得到密钥key此时服务端也不会有所怀疑。在整个过程中服务端和客户端根本不知道它们的通信还有一个中间人黑客进行篡改密钥key 就这样被拿到了往后的通信都会被破解。 如果依然有点模糊这边还有一个比喻希望可以加深理解❤️假设你在咖啡馆里想给朋友发一封信。你把信交给服务员请他送到朋友手中。然而服务员偷偷打开信读了内容还伪造了一份不同的回复信交给你。你以为在和朋友直接通信但实际上服务员中间人在整个过程中窃取并操控了你的信息。✨✨✨防御中间人攻击的关键在于确保通信双方能够相互验证身份并通过加密保护通信数据的完整性和机密性。 CA证书 ✨上述提到的中间人攻击关键就在于服务端和客户端不知道对方的身份是否正确所以引入校验机制以检验对方的身份是否合法通常校验客户端请求服务器的公钥是否被中间人修改过。如何验证就是验证 证书。CA证书Certificate Authority Certificate是由证书颁发机构CA签发的电子文件用于在网络通信中证明服务器或客户端的身份并帮助建立安全的通信。CA 证书是 HTTPS 和其他加密协议的重要组成部分。 证书的组成 证书持有者信息 持有者名称通常是域名。组织信息如公司名、地点。 CA 信息 签发证书的证书颁发机构名称。 公钥 用于加密通信的公钥。 证书序列号 证书的唯一标识。 有效期 证书的开始时间和到期时间。 签名算法 用于签名的哈希算法如 SHA256。 数字签名 由 CA 对证书内容进行签名确保证书未被篡改。 ✨在正式对广大客户端提供前服务器先向第三方权威认证机构申请颁发一个证书通过提交一些服务器的域名、公钥等信息随后机构颁发一个数字证书证书的组成如上证书的内容会被签名算法算出一个校验和随后机构这边也会有一对公钥pub2和私钥pri2私钥pub2用于加密先前求出的校验和得到数字签名校验和通常与内容有关若内容相同得到的校验和一定相同若内容不相同得到的校验和大概率不同这和hash函数有一定的类似。✨在客户端和服务器通信时客户端会先向服务器请求其的证书客户端得到证书后对证书上述的组成内容使用相同的签名算法算出一个新的校验和随后使用第三方权威认证机构生成的公钥pub2对数字签名进行解密得到服务器那边原始的校验和将原始的校验和与客户端新算出的校验和进行比对如果相同则表明内容没有被篡改不存在中间人拦截如果不同则表明内容被篡改存在中间人拦截立刻停止通信。❓看到这里你或许会有点疑问在这个过程中怎么就保证内容一定没被修改了别急且听我一一道来。黑客会不会对公钥pub2进行修改中间人攻击那样故技重施。答案是不会的因为公钥pub2就不是通过网络传输的而是操作系统内置的你当然也可以查看自己操作系统内置的一些第三方机构。输入winR输入certmgr.msc后可以直接查看、打开控制面板找到Internet选项有一个内容tab栏点击证书按钮便可查看。这些第三方生成的公钥pub2黑客当然也可以看到但是只能看不能修改无可奈何。除非你安装的操作系统不是正版而是黑客魔改的那当我没说。黑客可以自己申请或者伪造一个证书然后替换吗确实可以申请或者伪造但是证书的内容通常有许多唯一标识标志着该证书的唯一性就比如域名黑客申请的域名的正规服务器的域名肯定不能相同第三方机构肯定能知道你这个域名冲突了那如果是黑客自己伪造的证书这当然不需要通过第三方机构但这也并不行因为数字签名是通过第三方机构生成的私钥pri2加密的如果黑客使用了自己的私钥加密那么客户端使用第三方机构生成的公钥pub2解密时就会解密失败从而中断通信。如果黑客修改证书内容呢那也一样同样需要在修改完后使用第三方机构的私钥pri2加密否则客户端就会解密失败。那黑客能拿到私钥pri2要真能拿到那也是厉害这是真厉害没得黑。 我们也可以通过浏览器查看你当前访问网站的一些证书信息在域名左侧有个锁的图标就可以查看 如果你访问的网站的证书是不合法的浏览器通常会警告你查询你是否继续访问还是退出该网页。经常网上冲浪的应该对这个不陌生。面对这种情况还是建议不要无视风险继续安装了。 SSL/TLS ✨SSLSecure Sockets Layer和TLSTransport Layer Security是网络安全协议用于在客户端和服务器之间建立安全加密的通信通道。它们在保护数据传输的机密性、完整性和身份验证方面发挥关键作用。 SSL 和 TLS 的关系 SSL 是最初由 Netscape (网景) 开发的安全协议。TLS 是 SSL 的继任者属于更安全的版本。 SSL 3.0 是最后一个 SSL 版本之后改进的版本被命名为 TLS 1.0。当前截至 2025 年推荐使用的是 TLS 1.2 或 TLS 1.3SSL 以及 TLS 1.0/1.1 已被淘汰。 SSL/TLS 的核心功能 数据加密 通过对称加密保证数据传输的机密性。防止传输中的数据被窃听。 数据完整性 使用消息摘要如 HMAC防止数据被篡改。如果数据被修改接收方会发现并丢弃。 身份验证 使用数字证书验证服务器身份。可选客户端身份验证如双向认证。 SSL/TLS 的工作流程 1. 握手阶段Handshake 建立安全连接的过程包括协商加密算法、验证身份和生成密钥。 主要步骤 客户端 Hello 客户端向服务器发送支持的 TLS 版本、加密套件、随机数等信息。 服务器 Hello 服务器响应确认使用的 TLS 版本、加密算法等并发送服务器证书。 服务器证书验证 客户端验证服务器证书的有效性包括是否由受信任的 CA 签发、是否过期等。 密钥交换 双方通过密钥交换算法如 Diffie-Hellman 或 RSA协商生成会话密钥。TLS 1.3 直接采用预共享密钥PSK或密钥交换跳过部分步骤。 完成握手 客户端和服务器通过对称加密会话密钥开始加密通信。 2. 加密通信阶段 使用会话密钥对数据进行加密保证传输的安全性。 3. 连接关闭阶段 使用 TLS 关闭机制确保剩余数据完整传输并正确断开连接。 主要特性 向后兼容性 允许客户端和服务器协商最低的 SSL/TLS 版本。 加密算法灵活性 支持多种加密算法如 AES、ChaCha20并根据安全性逐步淘汰不安全的算法。 支持扩展 如 ALPN应用层协议协商支持 HTTP/2。 TLS 1.3 的改进 简化握手 减少握手过程中的往返次数从两次减少到一次。更快的连接建立速度。 更强的安全性 移除弱加密算法和协议如 RSA 和 MD5。默认启用前向保密Perfect Forward SecrecyPFS。 效率提升 提供 0-RTT零延迟握手机制加速后续连接。 SSL/TLS 的典型应用场景 HTTPSHTTP over TLS 为网站提供安全加密通信。 邮件传输 如 SMTPS、IMAPS。 虚拟专用网络VPN 如 OpenVPN 使用 TLS 进行隧道加密。 实时通信 WebRTC 中的加密。 常见的挑战与问题 性能开销 TLS 加密和握手过程增加了 CPU 和带宽开销。解决启用硬件加速如 AES-NI、使用更高效的协议如 TLS 1.3。 证书管理复杂性 证书需要定期更新、配置和管理。 攻击风险 如中间人攻击MITM、TLS 降级攻击POODLE等。解决强制使用最新版本的 TLS启用 HSTS。 总结 SSL/TLS 是保障互联网安全的重要基石通过加密、验证和完整性检查确保数据安全传输。随着 TLS 的不断发展特别是 TLS 1.3 的普及性能和安全性得到了进一步提升。理解其原理有助于更好地设计和保护网络应用。 至此HTTP/HTTPS 协议的相关内容就已经全部讲完了如有遗漏私信我~~~下一节我们将进入传输层 UDP/TCP 协议的讲解大家敬请期待哦~~~毕竟不知后事如何且听下回分解 ❤️❤️❤️❤️❤️❤️❤️