首页主机资讯java messagedigest如何加密

java messagedigest如何加密

时间2025-09-27 05:47:03发布访客分类主机资讯浏览819
导读:Java MessageDigest 类是用于生成消息摘要的,例如 MD5、SHA-1、SHA-256 等。消息摘要是一种固定长度的唯一表示,用于验证数据的完整性。以下是使用 Java MessageDigest 类进行 SHA-256 加...

Java MessageDigest 类是用于生成消息摘要的,例如 MD5、SHA-1、SHA-256 等。消息摘要是一种固定长度的唯一表示,用于验证数据的完整性。以下是使用 Java MessageDigest 类进行 SHA-256 加密的示例:

import java.security.MessageDigest;
    
import java.security.NoSuchAlgorithmException;
    
import java.nio.charset.StandardCharsets;
    
import java.util.Base64;


public class Main {

    public static void main(String[] args) {
    
        String input = "Hello, World!";
    
        String hashedInput = sha256Hash(input);
    
        System.out.println("Original text: " + input);
    
        System.out.println("Hashed text: " + hashedInput);

    }


    public static String sha256Hash(String input) {

        try {
    
            // 创建一个 MessageDigest 实例,指定 SHA-256 算法
            MessageDigest messageDigest = MessageDigest.getInstance("SHA-256");
    

            // 使用指定的字符集将输入字符串转换为字节数组
            byte[] inputBytes = input.getBytes(StandardCharsets.UTF_8);
    

            // 使用 MessageDigest 实例对字节数组进行哈希运算
            byte[] hashedBytes = messageDigest.digest(inputBytes);
    

            // 将哈希结果转换为 Base64 编码的字符串
            return Base64.getEncoder().encodeToString(hashedBytes);

        }
 catch (NoSuchAlgorithmException e) {
    
            throw new RuntimeException("Error hashing input using SHA-256", e);

        }

    }

}
    

在这个示例中,我们首先创建了一个 MessageDigest 实例,指定了 SHA-256 算法。然后,我们将输入字符串转换为字节数组,并使用 MessageDigest 实例对其进行哈希运算。最后,我们将哈希结果转换为 Base64 编码的字符串,以便于查看和传输。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: java messagedigest如何加密
本文地址: https://pptw.com/jishu/709553.html
java中构造方法有哪些类型 asp.net ajax如何实现实时通信

游客 回复需填写必要信息