Java_md5应用

来源:互联网 发布:机器视觉算法与应用 编辑:程序博客网 时间:2024/05/14 07:01

Message Digest Algorithm MD5(中文名为消息摘要算法第五版)为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护。
MD5算法具有以下特点:
1、压缩性:任意长度的数据,算出的MD5值长度都是固定的。
2、容易计算:从原数据计算出MD5值很容易。
3、抗修改性:对原数据进行任何改动,哪怕只修改1个字节,所得到的MD5值都有很大区别。
4、强抗碰撞:已知原数据和其MD5值,想找到一个具有相同MD5值的数据(即伪造数据)是非常困难的。

Java code:

package javastudy.basics;import java.math.BigInteger;import java.security.MessageDigest;public class MD5Test {    public static void main(String[] args) {        System.out.println(getMD5("102abdexxd"));    }    public static String getMD5(String str) {        try {            // 生成一个MD5加密计算摘要            MessageDigest md = MessageDigest.getInstance("MD5");            // 计算md5函数            md.update(str.getBytes());            // digest()最后确定返回md5 hash值,返回值为8为字符串。因为md5 hash值是16位的hex值,实际上就是8位的字符            // BigInteger函数则将8位的字符串转换成16位hex值,用字符串来表示;得到字符串形式的hash值            return new BigInteger(1, md.digest()).toString(16);        } catch (Exception e) {            e.printStackTrace();            return null;        }           }}
0 0
原创粉丝点击