iOS应用程序的

时间:2017-10-06 19:15:36

标签: ios swift security ssl ssl-certificate

我是SSL证书的新手,我想验证我的理解。

我们是一家创业公司,我们有一个特定的域名,我们希望用SSL证书保护这些域名。

域与服务器相关联,服务器上安装了Web服务器,另一个服务器应用程序使用自己的协议编写,我们希望用SSL保护这两个服务。

我们正在开发OS X应用程序和iOS客户端应用程序。那些使用Foundation的CFStreamCreatePairWithSocketToHost(...)通过CFReadStream(...)和CFWriteStream(...)连接到Java服务器。

我想证实我的理解:

(1)拥有OV证书而不是DV证书的唯一好处是我们的组织名称将列在证书详细信息中。

(2)只有一个Single SSL证书足以保护Web服务器和自定义Java服务器应用程序,我需要在Apache中安装它并使用Oracle Keytool Utility提供给Java Keystore文件。

(3)我们正在考虑使用Go Daddy EV或DV证书,因为“Go Daddy Class 2 Certification Authority”和“Go Daddy Root Certificate Authority - G2”列在“{ {3}}”。

(4)一旦安装在服务器上,在我的OS X / iOS应用程序中没有什么特别的事情要做,但在打开流之前插入它(在Swift中):

inputStream.setProperty(StreamSocketSecurityLevel.ssLv3, forKey: Stream.PropertyKey.socketSecurityLevelKey)
outputStream.setProperty(StreamSocketSecurityLevel.ssLv3, forKey: Stream.PropertyKey.socketSecurityLevelKey)

感谢您的见解!

1 个答案:

答案 0 :(得分:1)

您应该 绝对不 允许SSLv3。该协议高度不安全。 TLSv1.2是您应该允许的绝对最低版本,假设您的客户端操作系统版本和服务器都支持它,您应该将其限制为TLS v1.3及更高版本。