AES 加密解密库, 兼容PHP, Android, iOS, Python, C#平台。
可以在五个平台间加密解密数据,确保某个平台加密的数据,在另外四个平台能够解密。
String text = "this is pliat text.";
EasyAES aes = new EasyAES("password here", 256, "iv here");
// 加密
String data = aes.encrypt(text);
// 解密
String plainText = aes.decrypt(data);
$text = "this is plain text.";
$aes = new EasyAES('password here', 256, 'iv here');
// 加密
$data = $aes->encrypt($text);
// 解密
$plainText = $aes->decrypt($data);
注意:php5.x版本用到了mcrypt扩展,需要安装并在php.ini中开启。7.0及以上版本使用ssl模块,无需mcrypt。
NSString *text = @"this is plain text.";
EasyAES *aes = [[EasyAES alloc] initWithKey:@"your key" bit:256 andIV:@"your iv"];
// encrypt
NSString *data = [aes encrypt:text];
// decrypt
NSString *plainText = [aes decrypt:data];
// 加密/解密 NSData对象
NSData *pData = ...//已经加密的NSData对象
NSData *plainData = [aes decryptedData:pData];
NSData *encData = [aes encryptedData:plainData];
text = "this is plain text."
aes = EasyAES('password here', 256, 'iv here')
# 加密字符串
data = aes.encrypt(text)
# 解密字符串
plainText = aes.decrypt(data)
string text = "this is plain text.";
EasyAES aes = new EasyAES("password here", 256, "iv here");
// 加密
string encText = aes.Encrypt(text);
// 解密
string decText = aes.Decrypt(encText);
以上所有版本都需要设置下自己的加密密码以及偏移向量iv,不能为空。
256位的AES加密算法有着更高的安全性,因此强烈推荐使用256位的加密方法,不过会造成一些性能损失。
如果对性能非常敏感,可以使用128位的方法,只需要将构造函数的第二个参数改为128即可。
后期计划加上C, C++版本,敬请期待。
更多信息请访问我的博客帝都码农