前言
公司项目要做数据加密处理。经查阅相关资料。 整理一下iOS CommonCrypto 框架相关知识点。
1 头文件介绍
首先可以看到在导入的#include <CommonCrypto/CommonCrypto.h> 包含四个头文件
<CommonCrypto/CommonCryptor.h> //常用加解密算法,例如AES、DES等
<CommonCrypto/CommonDigest.h> //常用摘要算法, 例如MD5、SHA1等
<CommonCrypto/CommonHMAC.h> //HMAC相关算法加密
<CommonCrypto/CommonKeyDerivation.h> //PBKDF导出密钥相关.
<CommonCrypto/CommonSymmetricKeywrap.h> AES Key Wrap
下面我们讲一一对其进行讲解
1.1 CommonCryptor.h
该接口提供对多个对称加密算法。包含块密码和流密码。包含
enum {
kCCAlgorithmAES128 = 0,
kCCAlgorithmAES = 0,
kCCAlgorithmDES,
kCCAlgorithm3DES,
kCCAlgorithmCAST,
kCCAlgorithmRC4,
kCCAlgorithmRC2,
kCCAlgorithmBlowfish
};
typedef uint32_t CCAlgorithm
1.2 CommonDigest.h
该接口提供哈希(散列)摘要算法。包含常用的 MD5 、SHA1、SHA256、SHA512等
1.3 CommonHMAC.h
密钥消息验证码(HMAC)功能,是HMAC算法利用哈希算法,以一个密钥和一个消息为输入,生成一个消息摘要作为输出。
enum {
kCCHmacAlgSHA1,
kCCHmacAlgMD5,
kCCHmacAlgSHA256,
kCCHmacAlgSHA384,
kCCHmacAlgSHA512,
kCCHmacAlgSHA224
};
网友评论