JavaでSHA-256ハッシュ値の16進数ダイジェストを生成する方法


まず、Java標準ライブラリのMessageDigestクラスを使用します。以下のコード例を参考にしてください。

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class HashExample {
    public static void main(String[] args) {
        try {
            // ハッシュ関数の選択
            MessageDigest digest = MessageDigest.getInstance("SHA-256");
            // ハッシュを計算するデータを指定
            String data = "Hello, World!";
            byte[] dataBytes = data.getBytes();
            // ハッシュ値を計算
            byte[] hashBytes = digest.digest(dataBytes);
            // ハッシュ値を16進数文字列に変換
            StringBuilder hexDigest = new StringBuilder();
            for (byte b : hashBytes) {
                hexDigest.append(String.format("%02x", b));
            }
// 結果の表示
            System.out.println("SHA-256ハッシュ値 (16進数ダイジェスト): " + hexDigest.toString());
        } catch (NoSuchAlgorithmException e) {
            e.printStackTrace();
        }
    }
}

上記のコードでは、MessageDigest.getInstance("SHA-256")でSHA-256ハッシュ関数を選択し、digest.digest(dataBytes)で指定したデータのハッシュ値を計算します。その後、計算されたハッシュ値を16進数文字列に変換して表示しています。

この方法でSHA-256ハッシュ値の16進数ダイジェストを生成することができます。応用する場合は、データをファイルから読み込んだり、複数のデータに対してハッシュ値を計算することも可能です。詳細な使い方については、Javaの公式ドキュメントや関連するリソースを参照してください。