zoukankan      html  css  js  c++  java
  • SHA信息摘要

    SHA算法是在MD4的基础上演进而来的,通过SHA算法能够获得一个固定长度的摘要信息。
     

    SHA算法系列有SHA-1(也成为SHA),SHA-224,SHA-256,SHA-384和SHA-512这五种算法,通常后面四中算法并称为SHA-2算法,它们都是以长度来命名的。


    SHA与MD算法的不同之处主要在于摘要长度,SHA算法的摘要长度更长,安全性更高
     
    SHA算法的长度说明
     
     
    SHA算法实现(类似MD5的实现)
    1、Java自带的MessageDigest类
     注意:仅支持SHA-1,SHA-256,SHA-384和SHA-512
    使用Java自带的MessageDigest类实现SHA和实现MD5一样,具体实现见例子代码
    /**
         * SHA1实现消息摘要
         */
        public static byte[] SHA1() throws Exception{
            MessageDigest sha1 = MessageDigest.getInstance("SHA"); //注意这里填SHA,而不是SHA1
            byte[] result = sha1.digest("中国".getBytes("gbk"));
            System.out.println(result.length);
            return result;
        }
        
        
        /**
         * SHA1实现消息摘要
         */
        public static byte[] SHA256() throws Exception{
            MessageDigest sha1 = MessageDigest.getInstance("SHA-256"); //其他的SHA2算法同理
            byte[] result = sha1.digest("中国".getBytes("gbk"));
            System.out.println(result.length);
            return result;
        }  
     
    2、Apache的消息摘要工具类org.apache.commons.codec.digest.DigestUtils实现
    DigestUtils.sha256("中国".getBytes("gbk"));  //其他的摘要算的函数名以算法名进行类推





  • 相关阅读:
    诊断
    HIS内号码说明
    ASP.NET Page life cycle
    ASP.NET Simple page life cycle
    java多线程
    ibatis sqlmap
    cglib和asm
    利用ant编译maven项目
    Spring Cache与Tair结合
    USACO 1.2 MILKING COWS
  • 原文地址:https://www.cnblogs.com/itmanxgl/p/8af82b2e7eb5a3149b1598f06cca6d37.html
Copyright © 2011-2022 走看看