SHA-256 和SHA-512 加密算法

本文介绍了一种使用Java实现SHA-512加密的方法,包括如何通过MessageDigest类生成SHA-256和SHA-512的哈希值。提供了完整的代码示例,演示了从字符串到哈希值转换的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文章转载自 : 传送门,盗码可耻,我们是代码的搬运工,只搬运,不盗码

package cc.restyle.util;


import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

/**
 * SHA-512 加密
 *
 */
public class SHA512 {

    /** 传入文本内容,返回SHA-256 串*/
    public static String encry256(final String strText){
           return  SHA(strText,"SHA-256");
    }

    /** 传入文本内容,返回SHA-512 串*/
    public static String encry512(final String strText){
          return SHA(strText,"SHA-512");
    }

    /** 字符串 SHA加密*/
    private  static String SHA(final String strText,final String strType){

        // 返回值
        String strResult=null;

        // 是否是有效的字符串
        if (strText != null && strText.length()>0){

            // 加密开始,创建加密对象,并传入加密类型
            try {
                MessageDigest messageDigest = MessageDigest.getInstance(strType);
                // 传入加密的字符串
                messageDigest.update(strText.getBytes());
                // 得到bytes类型结果
                byte[] byteBuffer = messageDigest.digest();
                //将byte转为string
                StringBuffer strHexString = new StringBuffer();
                for (int i =0;i<byteBuffer.length;i++){
                    String hex = Integer.toHexString(0xff & byteBuffer[i]);
                    if (hex.length()==1){
                        strHexString.append('0');
                    }
                    strHexString.append(hex);
                }
                // 得到返回的结果
                strResult = strHexString.toString();


            } catch (NoSuchAlgorithmException e) {
                e.printStackTrace();
            }

        }
        return  strResult;
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值