参考书籍:《图解HTTP》 HTTP的不足 (1)通信使用明文可能会被窃听 HTTP本身不具备加密的功能,无法对通信整体加密,即HTTP使用的是明文方式发送 加密技术可以防止被窃听 加密对象: 通信的加密 HTTP和SSL的组合被称为HTTPS
内容的加密 要求客户端和服务器同时具有加密和解密的机制 (2)可能遭遇伪装 解决方法:SSL不仅提供了加密处理,而且使用了一种被称为证书的手段,可用于确定方 (3)无法证明报文完整性,可能已经遭遇篡改 请求或响应在传输途中,遭攻击者拦截并篡改内容的攻击称为中间人攻击 防止信息被篡改的方法:常用的是MD5,SHA-1等散列值校验的方法,以及用来确认文件的数字签名方法
于是引入HTTPS HTTPS实际就是身披SSL外衣的HTTP,通常HTTP直接和TCP通信,当使用HTTPS时,一般是HTTP先和SSL通信,然后SSL和TCP通信 相互交换密钥的公开密钥加密技术 加密算法是公开的,而密钥确实保密的,加密和解密都会用到密钥 共享密钥加密(对称密钥加密):加密和解密使用同一个密钥 使用两把密钥的公开密钥加密: 公开密钥:公开发布 私有密钥:不能让任何其他人知道 HTTPS使用共享密钥加密和公开密钥加密两者并用的混合加密机制 使用由数字证书认证机构和其他相关机关颁发的公开密钥证书 证明公开密钥本身就是货真价实的公开密钥(未被替换) 该证书可以证明组织真实性 HTTPS的安全通信机制