• MD5的使用


    首先是我的源代码


    /***
    * MD5加码 生成32位md5码
    */
    public static String backMD5(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 DecryptMD5(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 void main(String args[]) {

        //可以在这里设置自己的数据
        List<String> list=new ArrayList<String>();

        list.add("liuhao");
        list.add("liu hao");

        for (int i = 0; i < list.size(); i++) {

            System.out.println("原始:" + list.get(i));
            System.out.println("MD5后:" + backMD5(list.get(i)));
            System.out.println("加密的:" + DecryptMD5(list.get(i)));
            System.out.println("解密的:" + DecryptMD5(DecryptMD5(list.get(i))));
    }


    }

    输出的结果为

    好啦..就是这么的简单

  • 相关阅读:
    (14) go 结构体
    (13) go map
    (12) go make初始化
    (11)go 数组和切片
    (10) go 错误
    (9) go 时间日期
    (8)go 字符串
    (7) go 函数
    (6) go 流程控制
    (5) go 格式化输入输出 类型转换
  • 原文地址:https://www.cnblogs.com/hhao/p/6601684.html
Copyright © 2020-2023  润新知