使用自定义加密系统覆盖ATS中使用的默认加密系统

时间:2017-04-10 07:58:52

标签: ios security app-transport-security

  1. 有没有办法覆盖iOS应用中的默认传输层安全性? 即。为ATS使用自定义openssl库。 https://developer.apple.com/reference/security/secure_transport

  2. 有没有办法在ATS中使用自定义版本覆盖默认加密系统? 如果是这样怎么办?任何文件

  3. 谢谢, Abhilash。

1 个答案:

答案 0 :(得分:1)

ATS仅适用于NSURLSession,现已弃用的NSURLConnection,以及在它们之上分层的API。它不适用于使用较低级别API(如BSD套接字)的应用程序,包括那些在这些较低级别API之上实现TLS的应用程序。如果您使用的是像openssl这样的第三方库,则不会强制执行A​​TS要求。

ATS本身不提供任何加密。 ATS是使用NSURLSession进行的连接的加密/握手的一组强制性最小值。因此要求最低TLS为1.2,强密钥,前向保密等。我认为您可能无法清楚地了解应用传输安全性。

如果您想编写自己的SSL实现,或者使用第三方库来执行此操作,则ATS根本不会发挥作用,除非您尝试在实现中使用NSURLSession。