美文网首页加解密
JAVA加解密5-java6本身支持的MD2和MD5的消息摘要算

JAVA加解密5-java6本身支持的MD2和MD5的消息摘要算

作者: K1024 | 来源:发表于2016-04-11 22:17 被阅读75次

    大家可以对同一个串进行多次的摘要计算,查看多次摘要算法的值是否相同。
    目前java6本身只是支持MD2和MD5的消息摘要实现
    应用:这种摘要算法主要用来校验文件是否被获取的准确性。大家到apache的官方下载的文件的时候通常配备一些消息摘要算法进行验证

    如下是实现的代码:

    package com.ca.test;
    import java.security.MessageDigest;
    
    /**
     * jdk6本身支持的MD2和MD5的算法实现
     * @author kongqz
     * */
    public class MDCoder {
        
        
        /**
         * MD2的消息摘要算法实现
         * @param data 要做消息摘要的数据
         * @return byte[] 消息摘要
         * 
         * */
        public static byte[] encodeMD2(byte[] data) throws Exception{
            //初始化MessageDigest
            MessageDigest md=MessageDigest.getInstance("MD2");
            
            return md.digest(data);
        }
        
        /**
         * MD5的消息摘要算法实现
         * @param data 要做消息摘要的数据
         * @return byte[] 消息摘要
         * 
         * */
        public static byte[] encodeMD5(byte[] data) throws Exception{
            //初始化MessageDigest
            MessageDigest md=MessageDigest.getInstance("MD5");
            
            return md.digest(data);
        }
        /**
         * @param args
         * @throws Exception 
         */
        public static void main(String[] args) throws Exception {
            String str="java 6 的消息摘要算法";
            System.out.println("原文:"+str);
            byte[] data1=MDCoder.encodeMD2(str.getBytes());
            System.out.println("MD2的消息摘要算法值:"+data1.toString());
            
            byte[] data2=MDCoder.encodeMD5(str.getBytes());
            System.out.println("MD5的消息摘要算法值:"+data2.toString());
            
            
        }
    }
    控制台输出如下:
    原文:java 6 的消息摘要算法
    MD2的消息摘要算法值:[B@1fb8ee3
    MD5的消息摘要算法值:[B@14318bb
    
    

    相关文章

      网友评论

        本文标题:JAVA加解密5-java6本身支持的MD2和MD5的消息摘要算

        本文链接:https://www.haomeiwen.com/subject/ioablttx.html