SSL/TLS 具体指什么?
SSL(Secure Sockets Layer)
- 是一种用于在互联网中传输数据的加密协议。
- 主要用于确保数据在客户端和服务器之间传输时的保密性和完整性。
- SSL的开发由
Netscape
发起,最初版本是SSL 2.0,但存在安全漏洞。之后推出了SSL 3.0,进行了许多安全改进。
TLS(Transport Layer Security)
- 是SSL的后继者,TLS 1.0 基本上是SSL 3.0的改进版本。
- 主要用于保护数据在网络上的传输安全,防止数据被窃听和篡改。
- 当前广泛使用的版本包括TLS 1.2和TLS 1.3,TLS 1.3引入了更多的安全性和性能改进。
在iOS项目中,默认情况下不允许使用明文的HTTP请求,这是因为自iOS 9以来,苹果引入了
App Transport Security (ATS)
以增强网络安全。如果你的应用确实需要使用HTTP,可以通过配置Info.plist文件来允许HTTP请求。// ATS中的 TS 同 TLS 中的 TS <key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key> <true/> </dict>
SSL/TLS 的主要功能
- 数据加密:防止数据在传输过程中被窃听。
- 数据完整性:确保数据在传输过程中不被篡改。
- 身份验证:通过数字证书验证通信双方的身份,防止中间人攻击。