《java学习笔记》MD5加密算法
来源:互联网 发布:淘宝怎么好友代付 编辑:程序博客网 时间:2024/05/01 19:10
import java.security.MessageDigest;/** * Created by dell on 2017/4/18. */public class Encryption { // MD5加码:32位 public static String MD5(String inStr) { MessageDigest md5 = null; try { md5 = MessageDigest.getInstance("MD5"); } catch (Exception e) { System.out.println(e.toString()); e.printStackTrace(); return ""; } char[] charArray = inStr.toCharArray(); byte[] byteArray = new byte[charArray.length]; for (int i = 0; i < charArray.length; i++) byteArray[i] = (byte) charArray[i]; byte[] md5Bytes = md5.digest(byteArray); StringBuffer hexValue = new StringBuffer(); for (int i = 0; i < md5Bytes.length; i++) { int val = ((int) md5Bytes[i]) & 0xff; if (val < 16) hexValue.append("0"); hexValue.append(Integer.toHexString(val)); } return hexValue.toString(); } // 可逆的加密算法 public static String KL(String inStr) { // String s = new String(inStr); char[] a = inStr.toCharArray(); for (int i = 0; i < a.length; i++) { a[i] = (char) (a[i] ^ 't'); } String s = new String(a); return s; } // 加密后解密 public static String JM(String inStr) { char[] a = inStr.toCharArray(); for (int i = 0; i < a.length; i++) { a[i] = (char) (a[i] ^ 't'); } String k = new String(a); return k; } /*// 测试主函数 public static void main(String args[]) { String s = new String("123123"); System.out.println("原始:" + s); System.out.println("MD5后:" + MD5(s)); System.out.println("MD5后再加密:" + KL(MD5(s))); System.out.println("解密为MD5后的:" + JM(KL(MD5(s)))); }*/ /** * 创建指定数量的随机字符串 * * @param numberFlag * 是否是数字 * @param length * @return */ public static String generateQC(boolean numberFlag, int length) { String retStr = ""; String strTable = numberFlag ? "1234567890" : "1234567890abcdefghijkmnpqrstuvwxyz"; int len = strTable.length(); boolean bDone = true; do { retStr = ""; int count = 0; for (int i = 0; i < length; i++) { double dblR = Math.random() * len; int intR = (int) Math.floor(dblR); char c = strTable.charAt(intR); if (('0' <= c) && (c <= '9')) { count++; } retStr += strTable.charAt(intR); } if (count >= 2) { bDone = false; } } while (bDone); return retStr; }}
0 0
- 《java学习笔记》MD5加密算法
- Java MD5加密算法学习
- 【黑马程序员】MD5加密算法(学习笔记)
- 学习笔记-C语言实现MD5加密算法
- md5加密算法学习
- JAVA MD5 加密算法
- java加密算法(md5)
- MD5加密算法(java)
- Java加密算法(DES,MD5)
- java MD5加密算法
- java MD5 加密算法
- MD5 java 加密算法
- JAVA MD5加密算法
- JAVA MD5加密算法
- Java版MD5加密算法
- Java MD5加密算法
- java MD5加密算法
- MD5加密算法,java实现
- 杭电oj 1175连连看
- 紫书例题6-3 UVa442 (栈
- nginx 常见错误及优化
- 单例模式
- 表达式计算(中缀转后缀,然后求值)
- 《java学习笔记》MD5加密算法
- mysql-按天或者按月统计数据
- SSM框架整合(三)
- ORA-12519: TNS:no appropriate service handler found 解决
- ubuntu下安装lua的时候出现 lua.c:80:31: fatal error: readline/readline.h: 没有那个文件或目录 这样的报错
- [POI2010]TES-Intelligence Test 洛谷3500 二分
- 安卓目录res/menu中showAsAction用法
- gradle下载更新依赖库失败的解决办法
- 理解Javascript的状态容器Redux