SSLHandshake失败(-9808),带有自签名根证书

雅库布·普雷夏(JakubPrůša)

我有带有REST API的自定义硬件设备。设备具有自签名的根证书。我正在尝试进行简单的GET调用,但是我的所有请求都失败了:

CFNetwork SSLHandshake failed (-9808)
NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9808)

更多说明:

CFNetwork SSLHandshake failed (-9808)
NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9808)
Error Error Domain=NSURLErrorDomain Code=-1202 "The certificate for this server is invalid. You might be connecting to a server that is pretending to be “192.168.68.97” which could put your confidential information at risk." UserInfo={NSURLErrorFailingURLPeerTrustErrorKey=<SecTrustRef: 0x7fa2fb219530>, NSLocalizedRecoverySuggestion=Would you like to connect to the server anyway?, _kCFStreamErrorDomainKey=3, _kCFStreamErrorCodeKey=-9808, NSErrorPeerCertificateChainKey=<CFArray 0x7fa2fb20ffd0 [0x1016d37b0]>{type = immutable, count = 1, values = (
    0 : <cert(0x7fa2f954a2e0) s: selfSignedRootCertificate i: selfSignedRootCertificate>
)}, NSUnderlyingError=0x7fa2fb3018e0 {Error Domain=kCFErrorDomainCFNetwork Code=-1202 "(null)" UserInfo={_kCFStreamPropertySSLClientCertificateState=0, kCFStreamPropertySSLPeerTrust=<SecTrustRef: 0x7fa2fb219530>, _kCFNetworkCFStreamSSLErrorOriginalValue=-9808, _kCFStreamErrorDomainKey=3, _kCFStreamErrorCodeKey=-9808, kCFStreamPropertySSLPeerCertificates=<CFArray 0x7fa2fb20ffd0 [0x1016d37b0]>{type = immutable, count = 1, values = (
    0 : <cert(0x7fa2f954a2e0) s: selfSignedRootCertificate i: selfSignedRootCertificate>
)}}}, NSLocalizedDescription=The certificate for this server is invalid. You might be connecting to a server that is pretending to be “192.168.68.97” which could put your confidential information at risk., NSErrorFailingURLKey=https://192.168.68.97/api/switch/ctrl?switch=1&action=on, NSErrorFailingURLStringKey=https://192.168.68.97/api/switch/ctrl?switch=1&action=on, NSErrorClientCertificateStateKey=0}

我在AFHTTPSessionManger子类中的代码是

  NSData *myCertificate = [NSData dataWithContentsOfFile: [[NSBundle mainBundle] pathForResource:@"selfSignedRootCertificate" ofType:@"cer"]];
    AFSecurityPolicy *securityPolicy = [AFSecurityPolicy policyWithPinningMode:AFSSLPinningModePublicKey];
    securityPolicy.validatesDomainName = NO;
    securityPolicy.allowInvalidCertificates = YES;
    securityPolicy.pinnedCertificates = @[myCertificate];

我试图根据iOS 9.0中的更改将异常添加到plist

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
</dict>

我不知道我在做什么错。我的观点是将我的自签名根证书固定到应用程序,以便能够使用https连接。您能以正确的方式帮助我吗?

我有AFNetworking(2.6.1)。

谢谢你的帮助!

雅库布·普雷夏(JakubPrůša)

所以我终于找到了问题的根源。定制硬件设备上的ssl-library存在问题。在硬件上重新实现后,所有内容都可以发挥作用。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

CFNetwork SSLHandshake因AFNetworking 2.0,自签名cer和[policy setAllowInvalidCertificates:YES]而失败

来自分类Dev

在带有自签名证书的Python中使用请求时,证书验证失败

来自分类Dev

Terraform自签名证书Openssl验证失败

来自分类Dev

如何解决“ CFNetwork SSLHandshake失败(-9806)”

来自分类Dev

CFNetwork SSLHandshake在沼泽连接中失败(-9807)

来自分类Dev

带有自签名证书的TLS

来自分类Dev

使用带有cURL的自签名证书?

来自分类Dev

带有自签名证书的AFNetwork

来自分类Dev

带有自签名证书的后端

来自分类Dev

Hyper-V 复制失败 - 自签名证书

来自分类Dev

具有在运行时导入的自签名证书的SSL客户端-服务器握手失败

来自分类Dev

NSURLSession间歇性SSLHandshake失败(-9810)错误

来自分类Dev

如何在iOS中处理“ CFNetwork SSLHandshake失败”

来自分类Dev

证书验证失败,并带有MechanicalSoup

来自分类Dev

我的代码可以验证自签名证书,但是使用VeriSign颁发的证书时失败

来自分类Dev

带有自签名证书的Swift SSL错误

来自分类Dev

如何使用带有自签名证书/密钥的SslStream / AuthenticateAsServer?

来自分类Dev

Windows:如何创建自签名根证书以及使用自签名根证书签名的自签名证书

来自分类Dev

自连接失败,带有 where 子句

来自分类Dev

Azure云部署失败:找不到带有指纹的证书

来自分类Dev

在Azure Web角色中带有证书的HttpRequest失败

来自分类Dev

Azure云部署失败:找不到带有指纹的证书

来自分类Dev

mac使用带有SSL证书的Node验证失败

来自分类Dev

SSL套接字连接:CFNetwork SSLHandshake失败(-9824)连接到Java SSLServerSocket

来自分类Dev

服务器支持TLS1.2时,MobileFirst 6.3 iOS CFNetwork SSLHandshake失败(-9824)

来自分类Dev

导入根存储的非自签名证书是否需要(自签名)颁发者也导入根存储?

来自分类Dev

OpenSSL自签名根CA证书:设置开始日期

来自分类Dev

C#从自签名的根CA生成中间证书

来自分类Dev

来自https站点的带有自签名证书的Chef remote_file

Related 相关文章

  1. 1

    CFNetwork SSLHandshake因AFNetworking 2.0,自签名cer和[policy setAllowInvalidCertificates:YES]而失败

  2. 2

    在带有自签名证书的Python中使用请求时,证书验证失败

  3. 3

    Terraform自签名证书Openssl验证失败

  4. 4

    如何解决“ CFNetwork SSLHandshake失败(-9806)”

  5. 5

    CFNetwork SSLHandshake在沼泽连接中失败(-9807)

  6. 6

    带有自签名证书的TLS

  7. 7

    使用带有cURL的自签名证书?

  8. 8

    带有自签名证书的AFNetwork

  9. 9

    带有自签名证书的后端

  10. 10

    Hyper-V 复制失败 - 自签名证书

  11. 11

    具有在运行时导入的自签名证书的SSL客户端-服务器握手失败

  12. 12

    NSURLSession间歇性SSLHandshake失败(-9810)错误

  13. 13

    如何在iOS中处理“ CFNetwork SSLHandshake失败”

  14. 14

    证书验证失败,并带有MechanicalSoup

  15. 15

    我的代码可以验证自签名证书,但是使用VeriSign颁发的证书时失败

  16. 16

    带有自签名证书的Swift SSL错误

  17. 17

    如何使用带有自签名证书/密钥的SslStream / AuthenticateAsServer?

  18. 18

    Windows:如何创建自签名根证书以及使用自签名根证书签名的自签名证书

  19. 19

    自连接失败,带有 where 子句

  20. 20

    Azure云部署失败:找不到带有指纹的证书

  21. 21

    在Azure Web角色中带有证书的HttpRequest失败

  22. 22

    Azure云部署失败:找不到带有指纹的证书

  23. 23

    mac使用带有SSL证书的Node验证失败

  24. 24

    SSL套接字连接:CFNetwork SSLHandshake失败(-9824)连接到Java SSLServerSocket

  25. 25

    服务器支持TLS1.2时,MobileFirst 6.3 iOS CFNetwork SSLHandshake失败(-9824)

  26. 26

    导入根存储的非自签名证书是否需要(自签名)颁发者也导入根存储?

  27. 27

    OpenSSL自签名根CA证书:设置开始日期

  28. 28

    C#从自签名的根CA生成中间证书

  29. 29

    来自https站点的带有自签名证书的Chef remote_file

热门标签

归档