ホームページ >Java >&#&チュートリアル >Java 関数ライブラリで一般的に使用されるハッシュ アルゴリズム ツールは何ですか?
Java 関数ライブラリでは、MessageDigest クラスをハッシュ アルゴリズムに使用でき、次のような MD5、SHA、およびその他のハッシュ アルゴリズムの実装を提供します。 1. MD5 アルゴリズム: MessageDigest.getInstance("MD5") を使用してインスタンスを取得します。 。 2. SHA アルゴリズム: SHA-1、SHA-256、SHA-384、SHA-512 を含み、MessageDigest.getInstance("SHA-256") を使用してインスタンスを取得します。 3. その他のハッシュ アルゴリズム: Algorithms.MessageDigest や Bouncy Castle ライブラリなどのサードパーティ ライブラリを使用できます。
Java 関数ライブラリで一般的に使用されるハッシュ アルゴリズム ツール
ハッシュ アルゴリズムは、入力データを固定サイズに変換する方法です。値(ハッシュ値と呼ばれます)を出力する関数です。ハッシュ アルゴリズムは、暗号化、データ構造、情報検索などの多くのアプリケーションで役立ちます。
Java 関数ライブラリは、さまざまなハッシュ アルゴリズム ツールを提供します。最も一般的に使用されるものは次のとおりです:
MessageDigest
MessageDigest
は、Java のハッシュ アルゴリズムの基本クラスです。これは、さまざまなハッシュ アルゴリズムを使用してデータをハッシュできるようにする共通のメソッド セットを提供します。 MessageDigest
クラスを使用して文字列の MD5 ハッシュ値を計算する方法は次のとおりです。
import java.security.MessageDigest; public class MD5Hashing { public static String getMD5(String input) throws Exception { MessageDigest md = MessageDigest.getInstance("MD5"); byte[] hash = md.digest(input.getBytes()); StringBuilder sb = new StringBuilder(); for (byte b : hash) { sb.append(String.format("%02x", b)); } return sb.toString(); } public static void main(String[] args) throws Exception { String input = "Hello World"; String hashed = getMD5(input); System.out.println("MD5 hash of '" + input + "': " + hashed); } }
セキュア ハッシュ アルゴリズム (SHA)
によって提供されます。 Java 関数ライブラリ SHA-1
、SHA-256
、SHA-384
、SHA-512
などの SHA ハッシュ アルゴリズムが多数あります。 。これらのアルゴリズムは、MD5 よりも強力なセキュリティを提供します。
import java.security.MessageDigest; public class SHAHashing { public static String getSHA256(String input) throws Exception { MessageDigest md = MessageDigest.getInstance("SHA-256"); byte[] hash = md.digest(input.getBytes()); StringBuilder sb = new StringBuilder(); for (byte b : hash) { sb.append(String.format("%02x", b)); } return sb.toString(); } public static void main(String[] args) throws Exception { String input = "Hello World"; String hashed = getSHA256(input); System.out.println("SHA-256 hash of '" + input + "': " + hashed); } }
その他のハッシュ アルゴリズム
Java 関数ライブラリでは、
MessageDigest# などの他のハッシュ アルゴリズムも提供しています。 ## (OpenSSL ベースの実装)
(Bouncy Castle ライブラリの一部)
以上がJava 関数ライブラリで一般的に使用されるハッシュ アルゴリズム ツールは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。