22

特定の文字列が有効なチェックサムであるかどうかを知るためだけに、ファイルのチェックサムを計算したくありません

4

5 に答える 5

56

SHA1 ベリファイア:

public boolean isValidSHA1(String s) {
    return s.matches("^[a-fA-F0-9]{40}$");
}

MD5 検証者:

public boolean isValidMD5(String s) {
    return s.matches("^[a-fA-F0-9]{32}$");
}
于 2009-12-13T14:55:07.277 に答える
14

160ビットのシーケンスはSHA1ハッシュの可能性があります。128ビットシーケンスはMD5ハッシュの可能性があります。

それらの16進文字列表現を見ると、sha1は40桁の16進数のように見え、md5は32桁の16進数のように見えます。

于 2009-12-13T14:47:20.280 に答える
-1

MD5 検証者:

public boolean isValidMD5(String s) {
return s.matches("[a-fA-F0-9]{32}");}

文字列値の「-」を削除します。

于 2015-02-28T12:02:39.303 に答える