加密,解密

1. iOS 常用加密,解密方式:MD5, Base64, AES, DES 

其中MD5是不可逆转的加密,通常用于密码明文加密。其他均为可逆,可进行加密,解密。

在iOS中实现以上加密,解密,需要引入相关库,并进行c语言编程,实际开发中会借助于将c语言封装的第三方库或者自己封装。

> MD5 见代码 CusMD5

> Base64 一般使用GTMBase64 ,也可以使用iOS7后系统封装好的。下载地址:https://github.com/r258833095/GTMBase64

因此代码中涉及MRC的编码,所以需要将GTMBase64.m文件在Build Phases - Compile Sources 下设置混编选项 -fno-objc-arc

> AES 使用密匙的区块加密,替代原先的DES,对称密匙加密。 可使用 AESCrypt-ObjC ,下载地址:https://github.com/Gurpartap/AESCrypt-ObjC 

> DES 使用密匙加密的块算法 出现的比AES早。 

上述几种加密方式,基于iOS自带加密库<CommonCrypto/CommonCryptor.h>实现,在开发中有时会组合使用,要注意与服务端沟通加密解密规则,以免产生数据不一致,无法解密等情况。

[扩展]

RSA加密解密,公匙用来加密,私匙用来解密

原文地址:https://www.cnblogs.com/ljcgood66/p/5538871.html