java加密解密技术(2) 单向加密MD5
来源:互联网 发布:软件协会会员牌匾 编辑:程序博客网 时间:2024/06/09 17:34
单向加密MD5 SHA算法用于消息摘要,验证文件的完整性,防篡改。
import java.security.MessageDigest;import org.apache.commons.codec.digest.DigestUtils;public class MD5Util { public final static String MD5(String s) { char hexDigits[]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'}; 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; } } public static void main(String[] args) { System.out.println(MD5Util.MD5("20121221")); System.out.println(MD5Util.MD5("加密")); try {MessageDigest md= MessageDigest.getInstance("MD5");System.out.println("MessageDigest==="+md.digest("20121221".getBytes()));System.out.println("DigestUtils--md5Hex==="+DigestUtils.md5Hex("20121221"));System.out.println("DigestUtils--sha256Hex==="+DigestUtils.sha256Hex("20121221"));} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();} }}
/*
MessageDigest md= MessageDigest.getInstance("MD5");
byte[] b= md.digest("20121221".getBytes());
System.out.println("MessageDigest==="+b);
System.out.println(Hex.encodeHexString(b));
*/
0 0
- java加密解密技术(2) 单向加密MD5
- Java加密解密技术系列之MD5
- java md5加密解密
- java MD5加密解密
- java MD5加密解密
- Java MD5加密解密
- java md5 加密解密
- Java加密解密算法-MD5加密解密
- MD5加密解密2
- 【加密解密】加解密技术之 MD5
- java 采用MD5加密解密
- java MD5加密和解密
- java的MD5加密、解密
- Java的MD5加密解密
- java 采用MD5加密解密
- java的MD5加密、解密
- java的MD5加密、解密
- java中MD5加密解密
- dSYM 文件分析工具
- typedef 用法
- iOS-基本知识汇总
- Spark入门实战系列--1.Spark及其生态圈简介
- thinkphp+ueditor 上传图片显示:正在读取目录
- java加密解密技术(2) 单向加密MD5
- tomcat自动加载改变的class文件(无需重启tomcat)
- 程序员那些事
- SAPUI5 标准控件 事件 addEventDelegate
- 【移动开发-Android】androidpn实现消息推送
- android binder机制(一)
- 深入理解AngularJs-Ui-router
- Linux 进程间通信 --- 信号通信 --- signal --- signal(SIGINT, my_func); --- 按键驱动异步通知
- Tornado 概览