iOS - 使用 TLS-PSK 连接到套接字



我正在构建一个iOS客户端,该客户端连接到具有SSL/TLS和预共享密钥的TCP套接字,没有证书文件。我试图弄清楚iOS中是否有对TLS-PSK的内置支持,但我似乎在任何地方都找不到任何信息。我是否错过了什么,或者我是否必须使用像OpenSSL这样的东西(已经让我哭了两次)才能让它工作?

我一直在玩CFStream,NSStream和CocoaAsyncSocket,但没有成功。

对于Android,我使用的是SpongyCastle。

如果有人能指出我正确的方向,真的很感激。

谢谢!

如果你使用OpenSSL,你绝对可以使用TLS-PSK。您需要启用 PSK 密码套件,并使用SSL_set_psk_client_callback设置客户端回调,然后从中提供 PSK。

附言在 Android 上,自 API 级别 21 以来,平台默认的 TLS 堆栈也提供 TLS-PSK(参见 https://developer.android.com/reference/android/net/PskKeyManager.html)。

我刚刚创建了一个软件包来处理 TLS 上的 iOS 到 NodeJS,同时考虑到最新的 Apple 限制,请查看它 - https://github.com/eamonwhiter73/IOSObjCWebSockets

最新更新