| 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
6d6d
9年前发布

iOS与PHP加密解密

原文  http://www.ideawu.net/blog/archives/890.html
 

之前说过,iOS 的加密解密方法非常不方便, 不易于和 PHP 或者 Java 之间交互, 比较封闭.

为了和PHP服务器端方便地进行加密解密操作, 我封装了 RSA 类. 使用这个类, 你可以用你喜欢的工具, 如 openssl 命令行, PHP 脚本, 生成友好的公钥或者私租文本, 然后 iOS 使用这些密钥进行加密, PHP 进行解密, 或者 PHP 进行解密, 由 iOS 进行解密.

方法如下:

// return base64 encoded string  + (NSString *)encryptString:(NSString *)str publicKey:(NSString *)pubKey;  // return raw data  + (NSData *)encryptData:(NSData *)data publicKey:(NSString *)pubKey;  // TODO:  //+ (NSString *)encryptString:(NSString *)str privateKey:(NSString *)privKey;  //+ (NSData *)encryptData:(NSData *)data privateKey:(NSString *)privKey;    // decrypt base64 encoded string, convert result to string(not base64 encoded)  + (NSString *)decryptString:(NSString *)str publicKey:(NSString *)pubKey;  + (NSData *)decryptData:(NSData *)data publicKey:(NSString *)pubKey;  // TODO:  //+ (NSString *)decryptString:(NSString *)str privateKey:(NSString *)privKey;  //+ (NSData *)decryptData:(NSData *)data privateKey:(NSString *)privKey;

目前能实现:

  1. iOS 用公钥加密, PHP 用私钥解密
  2. PHP 用私钥加密, iOS 用公钥解密
  3. iOS 用私钥加密, PHP 用公钥解密( 未实现 )
  4. PHP 用公钥加密, iOS 用私钥解密( 未实现 )

后面两种场景的需求还未实现, 但很快会实现. 欢迎你来补充. 项目地址: https://github.com/ideawu/Objective-C-RSA

 本文由用户 6d6d 自行上传分享,仅供网友学习交流。所有权归原作者,若您的权利被侵害,请联系管理员。
 转载本站原创文章,请注明出处,并保留原始链接、图片水印。
 本站是一个以用户分享为主的开源技术平台,欢迎各类分享!
 本文地址:https://www.open-open.com/lib/view/open1436922686974.html
IOS 加密/解密软件包