Java で文字列から SHA-256 ハッシュを生成するにはどうすればよいですか?
Java: SHA-256 による文字列のハッシュ
SHA-256 を使用した文字列ハッシュは、データの整合性の確保、安全なパスワード ストレージの提供、または一意の識別子の生成に一般的に使用されます。 Java では、この操作を迅速かつ簡単に実行できます。
ステップ 1: SHA-256 アルゴリズムを理解する
SHA-256 (セキュア ハッシュ アルゴリズム 256) は、一方向の暗号化ハッシュ関数です。入力文字列から固定サイズのハッシュ値を生成します。このハッシュ値は一意であり、元の文字列を取得するために元に戻すことはできません。
ステップ 2: エンコーディングを選択する
SHA-256 はバイト配列で機能するため、文字列をハッシュする前に、次のことを行う必要があります。それをバイト配列に変換します。ほとんどのプログラミング言語がデフォルトでサポートしている UTF-8 などのエンコーディングを使用します。
ステップ 3: MessageDigest インスタンスを作成する
MessageDigest クラスを使用して、SHA-256 アルゴリズムのインスタンスを作成します。 .
<code class="java">MessageDigest digest = MessageDigest.getInstance("SHA-256");</code>
ステップ 4: 文字列をハッシュする
文字列のダイジェストまたはハッシュには、バイト配列をダイジェスト インスタンスに渡すことが含まれます。この操作の結果は、バイト配列の形式の SHA-256 ハッシュ値です。
<code class="java">byte[] hash = digest.digest(text.getBytes(StandardCharsets.UTF_8));</code>
バイト配列から文字列への変換
ハッシュ値はバイト配列であるため、表示または保存のために、より読みやすい形式に変換する必要がある場合があります。一般的なオプションには、base64 または 16 進数が含まれます。
コード例
<code class="java">import java.nio.charset.StandardCharsets; import java.security.MessageDigest; public class SHA256Hashing { public static byte[] hashSHA256(String text) { try { MessageDigest digest = MessageDigest.getInstance("SHA-256"); return digest.digest(text.getBytes(StandardCharsets.UTF_8)); } catch (NoSuchAlgorithmException e) { throw new RuntimeException(e); } } }</code>
上記の hashSHA256 メソッドを使用すると、文字列値を簡単かつ安全にハッシュできるようになります。
以上がJava で文字列から SHA-256 ハッシュを生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











一部のアプリケーションが適切に機能しないようにする会社のセキュリティソフトウェアのトラブルシューティングとソリューション。多くの企業は、内部ネットワークセキュリティを確保するためにセキュリティソフトウェアを展開します。 ...

多くのアプリケーションシナリオでソートを実装するために名前を数値に変換するソリューションでは、ユーザーはグループ、特に1つでソートする必要がある場合があります...

システムドッキングでのフィールドマッピング処理は、システムドッキングを実行する際に難しい問題に遭遇することがよくあります。システムのインターフェイスフィールドを効果的にマッピングする方法A ...

intellijideaultimatiateバージョンを使用してスプリングを開始します...

データベース操作にMyBatis-Plusまたはその他のORMフレームワークを使用する場合、エンティティクラスの属性名に基づいてクエリ条件を構築する必要があることがよくあります。あなたが毎回手動で...

Javaオブジェクトと配列の変換:リスクの詳細な議論と鋳造タイプ変換の正しい方法多くのJava初心者は、オブジェクトのアレイへの変換に遭遇します...

eコマースプラットフォーム上のSKUおよびSPUテーブルの設計の詳細な説明この記事では、eコマースプラットフォームでのSKUとSPUのデータベース設計の問題、特にユーザー定義の販売を扱う方法について説明します。

Redisキャッシュソリューションは、製品ランキングリストの要件をどのように実現しますか?開発プロセス中に、多くの場合、ランキングの要件に対処する必要があります。
