iOS 关于CommonCrypto框架 ①(概述 对称加密|哈希摘要|密匙加密)

前言

这段时间,细致的研究了iOS下的CommonCrypto框架,查阅了网上不少的资料,也有了不少的心得。这算是一篇总结记录的文章吧,欢迎他人一起讨论。

概述

CommonCrypto的中文直译是"常用密码"。顾名思义,它是苹果一种用作加解密算法处理的框架,方便iOS开发者使用,它的接口为C语言形式,我们可以通过函数名、枚举名直观的了解它。

相关内容介绍

首先呢,是CommonCrypto头文件的内容,我们引用#import<CommonCrypto/CommonCrypto.h>之后,可以在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

其中

  • CommonCryptor文件中最上方有一段苹果对该文档的摘要、介绍说明以及如何使用的英文文档。Generic interface for symmetric encryption直译是对称加密的通用接口,包含了块加密和流加密两种类型。它们分别是AESDES3DESCASTBLOWFISHRC2以及RC4
  • CommonDigest文件中包括如MD5,SHA家族等哈希摘要算法。
  • CommonHMAC文件中包含是HMAC+MD5HMAC+SHA1等,是HMAC算法利用哈希算法,以一个密钥和一个消息为输入,生成一个消息摘要作为输出。
  • CommonKeyDerivation是使用PBKDF导出一个可用的密匙。
  • CommonSymmetricKeywrap中文件名称说明是SymmetricKeywrap(对称加密加密密匙),但是在文档中苹果官方声明目前只有AES一种对称加密算法可用.

从以上说明我们可以看出基本常用的加解密,哈希摘要、密钥加密等等相关的内容,苹果大体上已经给我们封装好了,可以直接使用,当然肯定有些细节的地方,需要自己去实现。在这个库里面,还有两个文件分别是,CommonCryproErrorCommonRandom

关于这个框架的文件现在大体上介绍完了,开始第一部分常用加解密CommomCryptor的使用说明。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 本文主要介绍移动端的加解密算法的分类、其优缺点特性及应用,帮助读者由浅入深地了解和选择加解密算法。文中会包含算法的...
    苹果粉阅读 13,957评论 5 29
  • 首先罗列一些知识点: 1.加密算法通常分为对称性加密算法和非对称性加密算法:对于对称性加密算法,信息接收双方都需事...
    JonesCxy阅读 5,282评论 2 4
  • 这里先简单介绍单向散列函数、消息摘要和哈希碰撞的的概念 单向散列函数: 将任意长度的信息转换为较短的固定长度的值,...
    坤_7a1e阅读 8,857评论 0 0
  • 随着对于安全度的不断要求,对于数据加解密与破解之间的斗争,加解密的方式也在不断发生着变化,来看看现在流行的一些加解...
    zhouhao_180阅读 6,399评论 1 12
  • 中午下班,刚敲门,便迅速的打开了。 我大喊着,妈妈,你也不看看,万一是骗子小偷之类的呢。 妈妈却很笃定的说,错不了...
    张玉晶阅读 3,395评论 8 16