package com.rscode.credits.util;

/**
* MD5加密类
* @author 12
*/
import java.security.MessageDigest; public class MD5 {
static char hexChars[] = { '0', '1', '2', '3', '4', '5', '6', '7', '8',
'9', 'A', 'B', 'C', 'D', 'E', 'F' };
static char hexChars2[] = { '0', '1', '2', '3', '4', '5', '6', '7', '8',
'9', 'a', 'b', 'c', 'd', 'e', 'f' };
/**
* 32位大写
* @param password
* @return encryptPassword
* @author
*/
public static String upperConvert32(String str) {
try {
byte[] bytes = str.getBytes();
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(bytes);
bytes = md.digest();
int j = bytes.length;
char[] chars = new char[j * 2];
int k = 0;
for (int i = 0; i < bytes.length; i++) {
byte b = bytes[i];
chars[k++] = hexChars[b >>> 4 & 0xf];
chars[k++] = hexChars[b & 0xf];
}
return new String(chars);
} catch (Exception e) {
return null;
}
}
/**
* 32位小写
* @param password
* @return encryptPassword
* @author
*/
public static String lowerConvert32(String str) {
try {
byte[] bytes = str.getBytes();
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(bytes);
bytes = md.digest();
int j = bytes.length;
char[] chars = new char[j * 2];
int k = 0;
for (int i = 0; i < bytes.length; i++) {
byte b = bytes[i];
chars[k++] = hexChars2[b >>> 4 & 0xf];
chars[k++] = hexChars2[b & 0xf];
}
return new String(chars);
} catch (Exception e) {
return null;
}
} /**
* 16位大写
* @param s
* @return
*/
public String upperConvert16(String s) {
String ns = upperConvert32(s).substring(8, 24);
return ns;
}
/**
* 16位小写
* @param s
* @return
*/
public String lowerConvert16(String s) {
String ns = lowerConvert32(s).substring(8, 24);
return ns;
}
// public static void main(String[] args) {
// System.out.println(MD5.convert32("12345"));
// }
}

md5Util的更多相关文章

  1. Java MD5Util

    package util; import java.security.MessageDigest; public class MD5Util {  public static String strin ...

  2. 【加密】Md5Util

    import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; public class Md5U ...

  3. 44.Android MD5Util

    44.Android MD5Util public class MD5Util { public static String getMD5String(String key) { char hexDi ...

  4. MD5工具类--可以直接拿来用不抛异常的MD5Util

    public class MD5Util { private static String byteArrayToHexString(byte b[]) { StringBuffer resultSb ...

  5. 支付签名 MD5Util 排序工具类

    package com.skynet.wechat.wxPay.common; import java.security.MessageDigest; import java.util.Iterato ...

  6. MD5 加密工具类MD5Util

    我们在使用MD5 在线加密的时候,会发现下面情况,大小写的区别就不说啦,那么16位和32位有啥区别呢,其实16 位实际上是从 32 位字符串中,取中间的第 9 位到第 24 位的部分,就是str.su ...

  7. MD5用户密码加密工具类 MD5Util

    一般记录用户密码,我们都是通过MD5加密配置的形式.这里记录一下,MD5加密的工具类. package com.mms.utils; import java.security.MessageDiges ...

  8. Socket聊天程序——服务端

    写在前面: 昨天在博客记录自己抽空写的一个Socket聊天程序的初始设计,那是这个程序的整体设计,为了完整性,今天把服务端的设计细化记录一下,首页贴出Socket聊天程序的服务端大体设计图,如下图: ...

  9. MD5验证

    commons-codec包可以从apache下载:http://commons.apache.org/codec/download_codec.cgi MD5现在是用来作为一种数字签名算法,即A向B ...

随机推荐

  1. json对象转对象

    方式1:var obj = JSON.parse(jsonObject); 方式2:var obj = eval("("+jsonObject+")");

  2. sed应用

    删除每行空白字符 sed -i 's/^[[:space:]]*//' user.txt 删除空白行 sed -i '/^$/d' user.txt

  3. tomcat启动正常,但是访问项目时,404. Eclipse没有正确部署工程项目

    解决方案URL:http://blog.csdn.net/lynn_wgr/article/details/7751228

  4. Spark 中Java实现数据库Row转Rating

    Dataset<Row> ratings = mlsc.sql("SELECT user,movie,rating FROM data");JavaRDD<Row ...

  5. 软件151 王楚博 aodp

    一.AOP是OOP的延续,是(Aspect Oriented Programming)的缩写,意思是面向切面编程. AOP(Aspect Orient Programming),作为面向对象编程的一种 ...

  6. jjava:将jar包引入环境变量的一个骚操作以及因此搞出来的扑街问题

    现在我有一个java文件,我只想javac启动,但是这货import了一堆jar里面的东西. 于是我下回了所有的jar包,将这些jar包丢到jdk1.8.0_162\jre\lib\ext里面就ok了 ...

  7. Altium designer 新建快捷键

    示例: 1.按下Ctrl: 2.点击需要建立快捷键的图标:点击交互式布线图标,然后在选择性输入要用到的快捷键:

  8. 小飞侠带你精通Python网络编程系列04-Python内置的数据类型

    在Python中有以下几种标准的内置数据类型: 1.NoneType: The Null object--空对象2.Numerics(数值): int-整数, long-长整数, float-浮点数, ...

  9. linux 迁移项目ProtocolException

    背景:服务器跟换机房,虚拟机完整迁移项目,只修改ip和主机名 1.检查/etc/hosts 中ip 和主机名映射 2.检查网络端口是否有限制以及端口开放是否全了,检查ip有没有配对.RMI注册不上.

  10. Python处理数据库

    使用数据库驱动连接数据库 (Connection对象) 打开游标(Cursor对象),并通过它执行SQL语句(execute方法) 提交操作(commit()) 关闭连接(close()) ORM将表 ...