• MD5的加密和解密(总结)


    效果图例如以下:



    package com.test;
    import java.security.MessageDigest;
    
    public class MD5 {
    
     // 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("123456");
      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))));
      System.out.println("加密的:" + KL(s));
      System.out.println("解密的:" + JM(KL(s)));
      
     }
    
    }


  • 相关阅读:
    LeetCode#191 Number of 1 Bits
    敏捷编程
    过程模型
    磁盘阵列
    RAM和ROM
    cache
    局部性原理
    栈的应用(一)——括号的匹配
    猫狗收养问题
    全局变量和局部变量
  • 原文地址:https://www.cnblogs.com/bhlsheji/p/5250540.html
Copyright © 2020-2023  润新知