Java MD5加密算法学习
MD5,即"Message-Digest Algorithm 5(信息-摘要算法)",它由MD2、MD3、MD4发展而来的一种单向函数算法(也就是HASH算法),它是国际著名的公钥加密算法标准RSA的第一设计者R.Rivest于上个世纪90年代初开发出来的。MD5的最大作用在于,将不同格式的大容量文件信息在用数字签名软件来签署私人密钥前"压缩"成一种保密的格式,关键之处在于这种"压缩"是不可逆的。
JavaDemo:Md5Demo.java
package com.zsl.algorithm; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; public class Md5Demo { /** * * @param s:要进行加密的字符串 * @return 字符串的md5值 */ public static String getMd5(String s) { char hexChar[] = {'0', '1', '2', '3', '4', '5', '6', '7', '8' , '9', 'a', 'b', 'c', 'd', 'e', 'f'}; //md5加密算法的加密对象为字符数组,这里是为了得到加密的对象 byte[] b = s.getBytes(); try { MessageDigest md = MessageDigest.getInstance("MD5"); md.update(b); byte[] b2 = md.digest();// 进行加密并返回字符数组 char str[] = new char[b2.length << 1]; int len = 0; //将字符数组转换成十六进制串,形成最终的密文 for (int i = 0; i < b2.length; i++) { byte val = b2[i]; str[len++] = hexChar[(val >>> 4) & 0xf]; str[len++] = hexChar[val & 0xf]; } return new String(str); } catch (NoSuchAlgorithmException e) { // TODO Auto-generated catch block e.printStackTrace(); } return null; } public static void main(String[] args) { String res = getMd5("20130702"); System.out.println(res + "|size = " + res.length()); } }
>更多相关文章
- 09-26多线程开发中线程数量设计问题
- 09-26Go语言和Java、Python等其他语言的对比分析
- 09-26Java语言为什么经久不衰?且总能霸占编程语言排行榜首?
- 09-26浅谈10个提升应用程序10倍性能的技巧
- 06-10利用Python语言判断狗狗年龄的程序
- 12-09用c写了个后台扫描
首页推荐
佛山市东联科技有限公司一直秉承“一切以用户价值为依归
- 01-11全球最受赞誉公司揭晓:苹果连续九年第一
- 12-09罗伯特·莫里斯:让黑客真正变黑
- 12-09谁闯入了中国网络?揭秘美国绝密黑客小组TA
- 12-09警示:iOS6 惊现“闪退”BUG
- 09-28PingPong:数字支付帮助企业实现多业态管理
- 09-28Canalys:2024年第二季度中国大陆PC出货量同
- 09-28针对计算密集型业务,英特尔发布至强6性能核
- 09-28《中国新电商发展报告2024》发布:新电商如
- 09-24华夏利亚德加码户外大屏业务 拓展多元化应用
相关文章
24小时热门资讯
24小时回复排行
热门推荐
最新资讯
操作系统
黑客防御