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

标签 ios sockets ssl encryption tls1.2

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

我一直在研究 CFStream、NSStream 和 CocoaAsyncSocket没有成功。

对于 Android,我使用的是 SpongyCastle .

如果有人能指出我正确的方向,我将不胜感激。

谢谢!

最佳答案

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

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

关于iOS - 使用 TLS-PSK 连接到套接字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34812834/

相关文章:

android - Android N网络安全配置自签名证书用什么?

ios - 返回时发生奇怪的崩溃

iphone - "May not respond to "警告

c++ - 更简单的 CORBA 协议(protocol)?它存在吗?

c++ - 在同一链中执行异步操作

asp.net-mvc - WebAPI + Azure 网站 + 客户端网站 + SSL - 我需要多少个证书?

ios - 包装在 UIViewController 中的 UICollectionView

ios - 有没有更有效的方法来比较 C 中的字节数组

c - tcp 服务器未绑定(bind)到特定端口

ssl - 如何保护身份验证而不是有效负载?