zoukankan      html  css  js  c++  java
  • java的加密解密

    1. 使用md5和sha256必须导入commons-codec-1.9.jar包

    2. base64加密和解密是依赖于jdk自带的jar包

    3. md5和sha256是不可逆的,md5加密效率较快,sha256加密安全较高



    public class TestEncode {
    //异或实现加密解密
    public static String xor(String input){
    char[] chs = input.toCharArray();
    for(int i = 0; i < chs.length; i++){
    chs[i] = (char) (chs[i]^3000);
    }
    return new String(chs);
    }

    //md5加密,效率较快
    public static String md5Encode(byte[] input) {
    return DigestUtils.md5Hex(input);
    }

    //sha256加密,安全较高
    public static String sha256Encode(byte[] input) {
    return DigestUtils.sha256Hex(input);
    }

    //base64加密
    public static String base64Encode(byte[] input) {
    String result = null;
    try {
    Class<?> clazz = Class.forName("com.sun.org.apache.xerces.internal.impl.dv.util.Base64");
    Method method = clazz.getMethod("encode", (byte[].class));
    result = (String) method.invoke(null, input);
    } catch (Exception e) {
    e.printStackTrace();
    }
    return result;
    }

    //base64解密
    public static byte[] base64Decode(String input) {
    byte[] result = null;
    try {
    Class<?> clazz = Class.forName("com.sun.org.apache.xerces.internal.impl.dv.util.Base64");
    Method method = clazz.getMethod("decode", (String.class));
    result = (byte[]) method.invoke(null, input);

    } catch (Exception e) {
    e.printStackTrace();
    }
    return result;
    }
    }
  • 相关阅读:
    iframe,modaldialog父子窗口相互通信的问题
    bootstrap基础知识
    基于原生js的图片延迟加载
    通过原生js的ajax或jquery的ajax获取服务器的时间
    转 fiddler教程
    正则表达式
    es6 对象
    ES6
    axios
    javascript闭包和闭包的几种写法和用法
  • 原文地址:https://www.cnblogs.com/pengao/p/10581332.html
Copyright © 2011-2022 走看看