MD5工具类
来源:互联网 发布:一个皇冠什么软件 编辑:程序博客网 时间:2024/06/06 04:46
public class Md5Utils { /** 16进制的字符数组 */ private final static String[] hexDigits = { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f" }; /** * * * @param source * 需要加密的原字符串 * @param encoding * 指定编码类型 * @param uppercase * 是否转为大写字符串 * @return */ public static String MD5Encode(String source, String encoding, boolean uppercase) { String result = null; try { result = source; // 获得MD5摘要对象 MessageDigest messageDigest = MessageDigest.getInstance("MD5"); // 使用指定的字节数组更新摘要信息 messageDigest.update(result.getBytes(encoding)); // messageDigest.digest()获得16位长度 result = byteArrayToHexString(messageDigest.digest()); } catch (Exception e) { e.printStackTrace(); } return uppercase ? result.toUpperCase() : result; } /** * 转换字节数组为16进制字符串 * * @param bytes * 字节数组 * @return */ private static String byteArrayToHexString(byte[] bytes) { StringBuilder stringBuilder = new StringBuilder(); for (byte tem : bytes) { stringBuilder.append(byteToHexString(tem)); } return stringBuilder.toString(); } /** * 转换byte到16进制 * * @param b * 要转换的byte * @return 16进制对应的字符 */ private static String byteToHexString(byte b) { int n = b; if (n < 0) { n = 256 + n; } int d1 = n / 16; int d2 = n % 16; return hexDigits[d1] + hexDigits[d2]; }}
阅读全文
0 0
- MD5 加密工具类
- MD5工具类
- MD5工具类
- Md5加密工具类
- MD5加密工具类
- MD5工具类
- MD5工具类
- MD5加密工具类
- MD5工具类
- MD5加密工具类
- MD5 加密工具类
- java MD5工具类
- MD5 加密工具类
- MD5加密算法工具类
- md5 加密工具类
- MD5 Tool 工具类
- Java MD5工具类
- java Md5工具类
- SpringBoot中连接MYSQL数据库,并使用JPA进行数据库的相关操作
- 二分基础入门
- iOS App 签名的原理
- 含有百度富文本框的用户添加
- PyQt5系列(一)第一个helloworld
- MD5工具类
- BZOJ 4510 Radio Contact
- 欢迎使用CSDN-markdown编辑器
- Oracle RAC技术笔记4-11gr2集群新增的集群守护进程
- 用ARCGIS处理影像的时候遇到的一个小问题及处理方法
- pycharm更新包出现 [WinError 17] 系统无法将文件移到不同的磁盘驱动器 的问题
- Github使用之常用操作命令
- entity pojo vo 转换为 string 或 json
- 网页前端设计之多选按钮