是否可以识别哈希类型?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了是否可以识别哈希类型?相关的知识,希望对你有一定的参考价值。

我知道你可以比较长度,但许多散列类型具有相同的长度。

有没有办法识别哈希的类型以及它是否已被盐渍?

例如:

hash=2bf231b0e98be99a969bd6724f42a691
hash=4ac5a4ff764807d6ef464e27e4d1bee3
hash=4d177cec31d658ed22cc229e45d7265e
答案

没有;你几乎只能用它来识别它。

- 编辑:

但是,显然,如果您可以访问生成哈希的程序,并且您可以提供输入,那么您可以与某些结果进行比较,您也可以计算(假设您知道盐。

如果你真的被卡住了,你也可以从正在使用的语言中推断它(例如,如果它是php,它很可能是MD5),依此类推。

但从技术角度来看,没有办法识别哈希;因为它会对安全性目标产生反作用:)(它会占用散列本身中无用的位来进行此识别)。

另一答案

该特定示例是32个字符的字母数字表示,几乎可以肯定是MD5。

SHA-1通常是一个40个字符的字母数字字符串(与SHA-0一样)

MD5和SHA-1占据了你在野外发现的绝大多数哈希。

另一答案

是的,可以在一定程度上确定所使用的散列算法的类型。

我经常使用的一个工具是hash-identifier https://code.google.com/p/hash-identifier/

例如,我创建了Hash_ID.py文件的哈希:

$ openssl sha -sha256 Hash_ID.py 
SHA256(Hash_ID.py)= 5382a8826c972f8fa8687efe1f68e475c02af4bf542b0d7e68b9deffd388db96

运行Hash_ID.py时,它会要求输入Hash:

$ python Hash_ID.py 
   #########################################################################
   #     __  __                     __           ______    _____           #
   #    / /                    /          /\__  _  /  _ `         #
   #      \_      __      ____   \___     /_/ /    /         #
   #        _    /'__`   / ,__    _ `                      #
   #          / \_ \_/\__, `           \_ \__   \_       #
   #        \_ \_ \___ \_/\____/   \_ \_     /\_____  \____/      #
   #        /_//_//__//_//___/    /_//_/     /_____/  /___/  v1.1 #
   #                                                             By Zion3R #
   #                                                    www.Blackploit.com #
   #                                                   Root@Blackploit.com #
   #########################################################################

   -------------------------------------------------------------------------
 HASH: 5382a8826c972f8fa8687efe1f68e475c02af4bf542b0d7e68b9deffd388db96

Possible Hashs:
[+]  SHA-256
[+]  Haval-256

Least Possible Hashs:
[+]  GOST R 34.11-94
[+]  RipeMD-256
[+]  SNEFRU-256
[+]  SHA-256(HMAC)
[+]  Haval-256(HMAC)
[+]  RipeMD-256(HMAC)
[+]  SNEFRU-256(HMAC)
[+]  SHA-256(md5($pass))
[+]  SHA-256(sha1($pass))

Hash ID的工作方式是检查针对其支持的所有散列类型的条件给出的散列,并给出可能的散列类型列表。

另一答案

从未来发布: 2bf231b0e98be99a969bd6724f42a691 MD5:gombaliste0 4ac5a4ff764807d6ef464e27e4d1bee3 MD5:gombaliste2 4d177cec31d658ed22cc229e45d7265e MD5:gombaliste129

以上是关于是否可以识别哈希类型?的主要内容,如果未能解决你的问题,请参考以下文章

是否有标准或首选标签类型可用于向某个位置添加额外的锚点/片段链接?

URL的PHP​​和哈希/片段部分

如何识别核心数据托管对象模型——哈希?

我的片段中的按钮无法识别

URL片段的最大长度(哈希)

如何从 URL 获取片段标识符(哈希 # 后的值)?