码迷,mamicode.com
首页 > 移动开发 > 详细

iOS版的RC4-Base64加密解密

时间:2016-05-13 07:52:45      阅读:1333      评论:0      收藏:0      [点我收藏+]

标签:

在网上找到不少RC4加解密的,oc写的加密的主要都是http://www.cocoachina.com/bbs/read.php?tid-77608.html这一篇。我用了之后,和我们的PHP不能对应起来,他加密后我解密不对,我加密他解密也不对。所以,我自己重新又写了一个。

1.首先,先下载一个openssl库,把库放到桌面上技术分享

2.新建项目,导入lib-ios里的两个库:libcrypto.a和libssl.a,打开工程,Build Setting ->Header Search Paths 添加字段/Users/xxxx/Desktop/OpenSSL-master/include-ios,Library Search Paths 添加字段$(PROJECT_DIR)/工程名/文件夹名字;

3.导入zhyrc4.c、zhyrc4.h、base64.c、base64.h。

4.使用:导入头文件#include "zhyrc4.h",

//加密

+ (NSString *)encode:(NSString *) data{
char *pwd = "@ndroid !os";
const char * cData = [data UTF8String];

char *base64_data = NULL;
zhyencode(pwd, cData, strlen(cData), &base64_data);

NSString * str = [NSString stringWithUTF8String:base64_data];

if (base64_data) {
free(base64_data);
base64_data = NULL;
}

return str;
}

+ (NSString *)decode:(NSString *) data{
char *pwd = "@ndroid !os";

const char * cData = [data UTF8String];

char *data1=NULL;

zhydecode(pwd, cData, &data1);

NSString * str = [NSString stringWithUTF8String:data1];

if (data1) {
free(data1);
data1 = NULL;
}

return str;
}

 

 

这就可以了。rc4加解密都是同一个方法,如果不需要base64加密,在zhyrc4.c、zhyrc4.h改改就行了,so easy。

 文件太大,给个链接:链接: http://pan.baidu.com/s/1nvpgkdz 密码: n82a

iOS版的RC4-Base64加密解密

标签:

原文地址:http://www.cnblogs.com/zhy-164/p/5485007.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!