欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JAVA开发经验(二):常用工具类1.7-加解密-SHA

程序员文章站 2022-06-05 08:52:45
...

摘要说明:

SHA:安全散列算法(英语:Secure Hash Algorithm,缩写为SHA)是一个密码散列函数家族,是FIPS所认证的安全散列算法。能计算出一个数字消息所对应到的,长度固定的字符串(又称消息摘要)的算法。且若输入的消息不同,它们对应到不同字符串的机率很高。

SHA本质上是一个不可逆加密方式:

Maven依赖:

	<dependencies>
		<!-- Apache Commons Codec软件包包含各种格式的简单编码器和解码器,如Base64和Hexadecimal。除了这些广泛使用的编码器和解码器之外,编解码器包还维护着一组语音编码实用程序。 -->
		<dependency>
			<groupId>commons-codec</groupId>
			<artifactId>commons-codec</artifactId>
			<version>1.9</version>
		</dependency>
	</dependencies>

java工具类:

SHA主要包括SHA,SHA-1,SHA-256,SHA-512等加密方法:


package com.tit.taf.encryption;

import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

import org.apache.commons.codec.binary.Hex;

/**
 * @模块名:taf
 * @包名:com.tit.taf.encryption
 * @类名称: SHAUtil
 * @类描述:【类描述】
 * @版本:1.0
 * @创建人:cc
 * @创建时间:2018年8月27日上午11:01:39
 */
public class SHAUtil {
    public static final String CHARSET = "UTF-8";

    /**
     * 
     * @方法名:eccrypt
     * @方法描述【方法功能描述】
     * @param info
     * @return
     * @throws NoSuchAlgorithmException
     * @throws UnsupportedEncodingException
     * @修改描述【修改描述】
     * @版本:1.0
     * @创建人:cc
     * @创建时间:2018年8月27日 上午11:10:46
     * @修改人:cc
     * @修改时间:2018年8月27日 上午11:10:46
     */
    public static String eccrypt(String info, String type) throws NoSuchAlgorithmException,
            UnsupportedEncodingException {
        MessageDigest messageDigest;
        String encdeStr = "";
        messageDigest = MessageDigest.getInstance(type);
        byte[] hash = messageDigest.digest(info.getBytes("UTF-8"));
        encdeStr = Hex.encodeHexString(hash);
        return encdeStr;
    }

    public static void main(String[] args) throws NoSuchAlgorithmException {
        try {
            System.out.println("密文是:" + SHAUtil.eccrypt("cc", "SHA"));
            System.out.println("密文是:" + SHAUtil.eccrypt("cc", "SHA-256"));
            System.out.println("密文是:" + SHAUtil.eccrypt("cc", "SHA-512"));
        }
        catch (UnsupportedEncodingException e) {
        }
    }

}

 

相关标签: SHA JAVA