上篇文章写的公钥加密后台进行验签,这片文章是后台加密过数据ios就行验签。就是后台给了txt文件,里面有加签和加密过的文本字符串,需要把这个文本字符串处理下,和原来数据验签,看看是不是被修改过。这篇文章也是上篇文章的需求二。
1.读取本地txt文本文件获取字符串----decode-base64(反编译)--拿到加密数据data---从本地获取原有的数据data---利用公钥把取出加密数据和原数据进行验签。
读取本地txt我就不粘代码了,比如:获取字符串放到muDic[@"key"]。
//反编译base64
NSData * signatureData = base64_decode(muDic[@"key"]);
//base64解码data
static NSData *base64_decode(NSString *str){
NSData *data = [[NSData alloc] initWithBase64EncodedString:str options:NSDataBase64DecodingIgnoreUnknownCharacters];
return data;
}
这个就是反编译后的NSData数据。
2.获取公钥 ----根据der格式的证书获取公钥。------pubkey
//获取公钥
NSString *cerPath = [[NSBundle mainBundle] pathForResource:@"aaa" ofType:@"der"];
NSData *certData = [NSData dataWithContentsOfFile:cerPath];