自定义MD5加密
2015-06-17 13:21
260 查看
1.Objective-c 代码
2.Java代码
#import <CommonCrypto/CommonDigest.h> + (NSString *) md5:(NSString *)oldString { const char *cStr = [oldString UTF8String]; unsigned char result[16]; CC_MD5( cStr, strlen(cStr), result ); unsigned char str[32]; char hexDigits[]={'2','0','1','5','V','T','H','A','P','P','0','6','A','T','0','1'}; int k = 0; for (int i = 0; i < 16; i++) { Byte byte0 = result[i]; str[k++] = hexDigits[byte0>>4& 0xf]; str[k++] = hexDigits[byte0 & 0xf]; } NSString *mdString =@""; for (int i=0; i<32; i++) { mdString= [mdString stringByAppendingString:[NSString stringWithFormat:@"%c",str[i]]]; } return mdString; }
2.Java代码
public static String getEncryptedStr(String s) { char hexDigits[]={'2','0','1','5','V','T','H','A','P','P','0','6','A','T','0','1'}; try { byte[] btInput = s.getBytes(); // 获得MD5摘要算法的 MessageDigest 对象 MessageDigest mdInst = MessageDigest.getInstance("MD5"); // 使用指定的字节更新摘要 mdInst.update(btInput); // 获得密文 byte[] md = mdInst.digest(); // 把密文转换成十六进制的字符串形式 int j = md.length; char str[] = new char[j * 2]; int k = 0; for (int i = 0; i < j; i++) { byte byte0 = md[i]; str[k++] = hexDigits[byte0 >>> 4 & 0xf]; str[k++] = hexDigits[byte0 & 0xf]; } return new String(str); } catch (Exception e) { e.printStackTrace(); return null; } }
相关文章推荐
- Gitserver几家互联网代理安装方法未能解决。
- asp(utf-8) set cookie 用 javascript 读cookie发现一个问题
- Android手机分辨率基础知识(DPI,DIP计算)
- Android MaterialDesign中颜色
- linux 命令——36 diff(转)
- 学长们的求职血泪史(C/C++/JAVA)
- PP生产订单状态显示(rel等)如何查询表,字段
- 【我们都爱Paul Hegarty】斯坦福IOS8公开课个人笔记33 LifeCycle生命周期
- 那些年优秀的HTML5活动页面
- VB|xp风格:终于解决了“图片优化软件”在部分xp系统上无法启动的问题。
- CenOs安装中文输入法
- 少说多听,延迟判断,能让人看到新的视角
- 自己做QQ–后台搭建
- Windows7在自由的虚拟机(微软官方虚拟机)
- OC3-父类指针指向子类对象
- nyoj 1022 最少步数【优先队列+广搜】
- Android开发笔记—— layout_weight
- 推荐算法:协同过滤算法的介绍
- 最简单的基于Flash的流媒体示例:网页播放器(HTTP,RTMP,HLS)
- Android实战简易教程-第十九枪(SwipeRefreshLayout下拉刷新使用实例)