2

我想在我的项目中实现 ssl pinning(固定公钥)。为此,我使用 react-native-ssl-pinning。

我按照说明进行安装,它适用于 android。

但是,在 iOS 上,我总是收到“已取消”错误。从 xcode 运行时,我收到此错误:

HTTP 加载失败,0/0 字节(错误代码:-999 [1:89])

证书似乎有问题,但我无法识别它。

根据苹果的文档,证书必须:

  1. 具有大于或等于 2048 位的密钥大小
  2. 使用 SHA-2 系列算法
  3. 在主题备用名称扩展中显示服务器的 DNS 名称
  4. 包含一个包含 id-kp-serverAuth OID 的 ExtendedKeyUsage (EKU) 扩展
  5. 有效期为 825 天或更短(在证书的 NotBefore 和 NotAfter 字段中表示)。

我使用的证书似乎是有效的,我决定在这里询问是否有人有一个可行的解决方案,或者在我自己搜索不成功后至少有一个提示。

4

0 回答 0