文件名称:PublicKeyPinningExample:使用NSURLConnection实现公钥SSL固定的示例
文件大小:16KB
文件格式:ZIP
更新时间:2024-05-31 18:17:40
ssl certificate trust pinning nsurlconnection
这是什么 这是使用NSURLConnection为iOS进行SSL公钥固定的示例实现。 当客户端通过SSL / TLS连接到服务器时,服务器将提供证书。 该证书包含一个公共密钥。 在此示例中,我们提取公钥并将其与本地副本进行比较。 如果服务器公钥与预期不符,我们将不信任它,也将不会连接。 使用公钥比检查整个证书具有优势。 证书包含公共密钥,有关证书的信息以及其他密钥。 证书可以经常更改,而证书中的公钥更改的频率要少得多。 如果您使用的是自签名证书,则此功能尤其有用。 有关SSL信任评估的更多信息,请参见信任评估。 入门 为了实现SSL固定,您将需要在您的应用程序中使用证书来验证远程凭据。 该证书的公共密钥应与您要信任的服务器的公共密钥相匹配。 显然,您需要一种以正确格式获取这些证书的方法。 此示例项目期望数据为OpenSSL DER格式,证书文件名为“ HOSTNAME.der”。
【文件预览】:
PublicKeyPinningExample-master
----README.md(3KB)
----PublicKeyPinningConnectionTests()
--------PublicKeyPinningConnectionTests-Info.plist(692B)
--------en.lproj()
--------PublicKeyPinningConnectionTests.m(716B)
----PublicKeyPinningConnection()
--------PublicKeyPinningConnection-Prefix.pch(182B)
----PublicKeyPinningExample()
--------AppDelegate.h(297B)
--------ViewController.h(235B)
--------Base.lproj()
--------PublicKeyPinningConnectionDelegate.h(459B)
--------Images.xcassets()
--------PublicKeyPinningConnectionDelegate.m(5KB)
--------AppDelegate.m(2KB)
--------ViewController.m(513B)
----PublicKeyPinningExample.xcodeproj()
--------project.xcworkspace()
--------project.pbxproj(18KB)