如何检查字符串是有效的 md5 还是 sha1 校验和字符串

2022-09-02 00:09:22

我不想计算文件的校验和,只是为了知道给定的字符串是否是有效的校验和


答案 1

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}$");
}

答案 2

任何 160 位序列都是可能的 SHA1 哈希。任何 128 位序列都是可能的 MD5 哈希。

如果您正在查看它们的十六进制字符串表示形式,则 sha1 将看起来像 40 个十六进制数字,而 md5 将看起来像 32 个十六进制数字。


推荐