前一篇已己經介紹了使用CA證書的安全性,下面來具體介紹 iOS中怎樣使用。
SDK由北京CA云簽名平臺提供,SDK包涵靜態文件libSignet-SDK.a、資源文件包Signet-SDK-Bundle.bundle和頭文件 SignetManager.h,另SDK依賴openssl的靜態庫文件libcrypto.a(該文件可以從openssl.org開源項目獲取,也可使用北京數字認證股份有限公司提供的文件)。
Xcode設置(以Xcode7.2為例)
1、Build Option – Enable Bitcode 設置為NO
2、info設定 :
在iOS9設備情增加App Tranport Security Setting? 設定增加? exception domain 為 mssp.isignet.cn? 域名,并請增加TLSV1.1的許可,設定NSExceptionRequiresForwardSecrecy 為NO;如App本身允許Http連接也可設定Allow Arbitrary Loads為YES。
3、Build Fase設定:
添加iOS系統框架SystemConfig.framework 、MobileCoreServices.framework;添加iOS動態庫libz.tbd;添加licrypto.a靜態庫鏈接。
4、App只能進行真機調試和運行,不支持模擬器運行。
部署流程
在link binary with Libraries 設定里添加云簽名靜態庫libSignet-SDK.a ;在Copy Bundle Resource設定里添加云簽名資源文件包Signet-SDK-Bundle.bundle;引入云簽名SDK的頭文件SignetManger.h
接口調用
所有類接口可以直接以SignetManger類名直接調用,調用接口直接返回結果;所有對象接口均需調用initManager接口初始化對象,使用初始化對象來調用相應接口,delegateObject為回調協議處理對象。delegateObject實現如下delegate
-(void)isProcessFinished:(NSDictionary*)backParam{
}
例如?
#import "SignetManager.h" //引入該類
@interface ViewController ()//聲明云簽名delegate
SignetManager * mySignet =? [ SignetManager initManager:self delegate:self.myDelegate];
NSError *error = [ mySignet selfRegisterandBackUserInfo:DEMO_APP_ID];//調用自注冊接口
(完)