前言:
最近买了本《码农翻身》,这本书以故事的形式阐述了技术体系中的各种知识点,其中对于http和https这段讲解也让我感触颇深,虽然内容很基础,但是会让从人理解很深刻,这比官方的那些晦涩难懂的专业词汇更容易让人接受。下面结合专业词汇来来记录一下http和https。
HTTP是HyperText Transfer Protocol的缩写,它是一种用于在Web浏览器和Web服务器之间进行通信的协议。HTTP协议定义了Web服务器和客户端之间如何传输数据的规则和格式。 HTTPS是HTTP的安全版本,也被称为HTTP over SSL(Secure Socket Layer)或TLS(Transport Layer Security)。HTTPS使用加密技术来保护Web浏览器和Web服务器之间的通信,确保数据在传输过程中不会被攻击者窃取或篡改。在本文中,我们将讨论HTTP和HTTPS之间的区别以及它们之间的优缺点。
HTTP和HTTPS之间的区别
1.安全
HTTP是一种不安全的协议,因为数据在传输过程中未加密,并且可能被攻击者窃取或篡改。而HTTPS使用SSL / TLS协议进行加密,确保客户端和服务器之间的通信是安全的。
2.性能
HTTPS比HTTP更慢,因为它使用了SSL / TLS协议来加密和解密数据。这会增加服务器处理负载和客户端的处理时间,从而降低了网站的性能。但是,随着现代处理器和网络带宽的增强,HTTPS的性能影响已经变得相对较小。
3.证书
HTTPS使用数字证书来认证Web服务器并建立安全通信。证书包含Web服务器的公钥和其他信息,客户端可以使用这些信息来验证通信的合法性。而HTTP没有数字证书,因此数据的合法性无法得到确认。
HTTP和HTTPS之间的优缺点
HTTP的优点:
1.快速
HTTP是一种快速且简单的协议。它不包括任何加密和解密过程,因此可以更快地传输数据。
2.易于使用
HTTP易于使用和理解,使其成为Web开发人员的首选协议。
3.兼容性
HTTP是一种广泛使用的协议,并且与各种计算机系统和操作系统兼容。
HTTPS的优点:
1.安全
HTTPS通过加密机制确保了数据的安全性。它为客户端和服务器之间的通信提供了保密性、完整性和身份验证。
2.保障
HTTPS可以防止窃听和数据篡改,使其成为在线支付、电子邮件和其他敏感信息交换的理想选择。
3.信任
HTTPS使用数字证书来建立安全通信,这些数字证书由经过认证的CA(Certificate Authority)颁发。这增强了客户对网站信任的程度。
为什么会有https?
web技术起初并没有https,当使用http进行传输时考虑到被攻击的可能性,于是进化出了加密通信,加密通信如果使用对称加密,那密钥的传递也会有被劫持或监听的可能性,于是又衍生出了非对称加密,非对称加密的原理就是利用公钥加密使用自己的私钥进行解密,但是私钥在交换的过程中也有被劫持的风险,因为客户端和服务端交换公钥时有可能被第三方攻击者劫持,从而导致客户端和服务端拿到的都是第三方攻击者的公钥。于是又诞生了数字签名。这种使用数字证书进行加密通信的技术便是https。
数字证书是哪里来的?
CA证书是一种具有等级概念的可以用来证明身份的文件,最高级别(最顶层)的证书(root CA是操作系统/浏览器内核内置的。一些普通数字证书的证明者则是顶层证书。