我是一個新手,但我有一個受MITM攻擊的應用程序。ssl在Swift中鎖定AlamoFire
經過我的一些研究,聽起來我需要做SSL Pining,即保留我的服務器公鑰/證書的副本,以便可以確定響應是否來自它。
我不知道如何做到這一點,我在Swift中使用AlamoFire來處理網絡。
我是一個新手,但我有一個受MITM攻擊的應用程序。ssl在Swift中鎖定AlamoFire
經過我的一些研究,聽起來我需要做SSL Pining,即保留我的服務器公鑰/證書的副本,以便可以確定響應是否來自它。
我不知道如何做到這一點,我在Swift中使用AlamoFire來處理網絡。
由於此處表示:https://github.com/Alamofire/Alamofire/issues/366
這當然是社會正在尋求支持的東西,但有沒有周圍有一個堅實的時間框架呢。我想說,暫時你會想繼續AFNetworking,並密切關注Alamofire項目的新功能。
Alamofire現在實施了證書鎖定。 您所需要的文檔是在Readme.md
https://github.com/Alamofire/Alamofire
看到自己的示例實現:
let serverTrustPolicies: [String: ServerTrustPolicy] = [
"test.example.com": .PinCertificates(
certificates: ServerTrustPolicy.certificatesInBundle(),
validateCertificateChain: true,
validateHost: true
),
"insecure.expired-apis.com": .DisableEvaluation
]
let manager = Manager(
serverTrustPolicyManager: ServerTrustPolicyManager(policies: serverTrustPolicies)
)
枚舉類型 'ServerTrustPolicy' 沒有情況 'PinCertificates';你的意思是'pinCertificates' – 2018-02-22 14:52:17