0

8A-25-A5-14-E9-E0-A8-02-0E-91-32-46-44-7E-EE-11

上記はハッシュ化されたテキストです。原文は「welcome1」です。誰かがここで使用されているアルゴリズムを特定できますか?

4

1 に答える 1

2

このサイトによると、明らかに「welcome1」の Unicode 表現の md5 ハッシュです。

MD5 (ユニコード):
...
8a25a514e9e0a8020e913246447eee11:welcome1

具体的には、文字列「welcome1」の UTF-16LE ( UTF16リトルエンディアン) 表現です。

        MessageDigest md = MessageDigest.getInstance("MD5");
        byte[] output = md.digest("welcome1".getBytes("UTF-16LE"));
        for(byte out: output){
            System.out.printf("%x", out);
        }
        System.out.println();

出力:

8a25a514e9e0a82e913246447eee11

ダッシュはハッシュ出力の一部ではなく、16 進文字のみです。それらを取り出してハッシュをグーグルで検索すると、特に「welcome1」のような一般的なフレーズの場合、通常は結果が表示されます

これは、文字ではなくバイトを操作するため、ハッシュ アルゴリズムを扱うときに文字エンコーディングを覚えておくことが重要である理由を示す、優れたオブジェクト レッスンです。ASCII または UTF8 (または UTF-16BE) で「welcome1」をハッシュすると、文字の基になるバイト表現が異なるため、出力が大幅に異なります。

于 2013-01-21T17:35:21.127 に答える