私はJavaで何かをハッシュする必要があることに気づきました.ハッシュを理解していないので、私はここにいます.
簡単な方法がないことはすでにわかっています。
だから私の質問: Javaでワールプールハッシュはどのように行われますか?
編集:GNU Whirlpoolを提案されましたが、動作させることができません
Whirlpool wp = new Whirlpool();
String s = "The quick brown fox jumps over the lazy dog";
byte[] b = s.getBytes(Charset.forName("UTF-8"));
wp.update(b, 0, s.length());
byte[] r = wp.digest();
String str = new String(r,Charset.forName("UTF-8"));
System.out.println(str);
出力は次のとおり
<?R??XF
????n?g?Tl??H?po??????? m?
5?F ??
y?QhTM?|?I???
です。それとも、その仕組みを理解していませんでしたか?
解決:メソッドが未加工のバイト データdigest
を出力しているようです。Apache 共通コーデックライブラリのメソッドを使用して HEX 形式に変換しました。