iOS系统库中定义了软件开发中常用的加解密算法,接口为C语言形式。具体包括了以下几个大类:

1 #include <CommonCrypto/CommonCryptor.h>  //常用加解密算法2 #include <CommonCrypto/CommonDigest.h>  //摘要算法3 #include <CommonCrypto/CommonHMAC.h>4 #include <CommonCrypto/CommonKeyDerivation.h>5 #include <CommonCrypto/CommonSymmetricKeywrap.h>

  其中第一类常用加解密算法就包含了AES,DES,和已经废弃的RC4,第二类摘要算法,包括如MD5,SHA等。本文主要介绍AES,MD5,SHA三种最常用算法的实现。

  1 对称密码算法--AES

  AES主要应用在关键数据和文件的的保密同时又需要解密的情形,其加密密钥和解密密钥相同,根据密钥长度分为128、192和256三种级别,密钥长度越大安全性也就越大,但性能也就越低,根据实际业务的安全要求来决定就好。通常情况,对一些关键数据进行加密的对象都是字符串,加密结果也以字符串进行保存,所以在设计接口的时候参数和返回值均为字符串。(关于关键参数的意义放在代码后讲解。)

  1.1 加密过程

大数据培训,云培训,数据挖掘培训,云计算培训,高端软件开发培训,项目经理培训

 1 -(NSString *)aes256_encrypt:(NSString *)key 2 { 3     const char *cst
        
		

网友评论