java文件md5值 什么意思

Python07

java文件md5值 什么意思,第1张

MD5是常用的一种加密方式,原数据加过加密算法后的得到的数据就是MD5值

用户的密码很多是以MD5值(或类似的其它算法)的方式保存的,这样即使数据库被侵入,也不能直接得到用户的原始密码

可以利用JDK自带的MD5来加密。

public class MD5Util {

    public final static String MD5(String s) {

        char hexDigits[]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'}       

        try {

            byte[] btInput = s.getBytes()

            // 获得MD5摘要算法的 MessageDigest 对象

            MessageDigest mdInst = MessageDigest.getInstance("MD5")

            // 使用指定的字节更新摘要

            mdInst.update(btInput)

            // 获得密文

            byte[] md = mdInst.digest()

            // 把密文转换成十六进制的字符串形式

            int j = md.length

            char str[] = new char[j * 2]

            int k = 0

            for (int i = 0 i < j i++) {

                byte byte0 = md[i]

                str[k++] = hexDigits[byte0 >>> 4 & 0xf]

                str[k++] = hexDigits[byte0 & 0xf]

            }

            return new String(str)

        } catch (Exception e) {

            e.printStackTrace()

            return null

        }

    }

    public static void main(String[] args) {

        System.out.println(MD5Util.MD5("20121221"))

        System.out.println(MD5Util.MD5("加密"))

    }

}