【问题标题】:Is it possible to identify a hash type?是否可以识别哈希类型?
【发布时间】:2020-09-25 19:15:21
【问题描述】:

我知道您可以比较长度,但许多哈希类型的长度相同。

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

例如:

hash=2bf231b0e98be99a969bd6724f42a691
hash=4ac5a4ff764807d6ef464e27e4d1bee3
hash=4d177cec31d658ed22cc229e45d7265e

【问题讨论】:

标签: security hash


【解决方案1】:

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

SHA-1 通常以 40 个字符的字母数字字符串形式出现(SHA-0 也是如此)

MD5 和 SHA-1 占您在野外发现的绝大多数哈希值。

【讨论】:

  • 今天仍然如此吗?
【解决方案2】:

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

我经常使用的一个工具是hash-identifier。

比如我创建了一个Hash_ID.py文件的哈希:

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

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

$ 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))

哈希 ID 的工作方式是根据它支持的所有哈希类型的标准检查给出的哈希,并给出可能的哈希类型列表。

【讨论】:

    【解决方案3】:

    没有;你几乎只能通过长度来识别它。

    -- 编辑:

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

    如果你真的卡住了,你也可以从正在使用的语言中推断出来(即如果是 PHP,它很可能是 MD5),等等。

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

    【讨论】:

      【解决方案4】:

      来自未来的帖子:

      2bf231b0e98be99a969bd6724f42a691 MD5 : gombaliste0
      4ac5a4ff764807d6ef464e27e4d1bee3 MD5 : gombaliste2
      4d177cec31d658ed22cc229e45d7265e MD5 : gombaliste129

      【讨论】:

      • 我认为他想了解如何识别它们,而不仅仅是原始文本。
      猜你喜欢
      • 1970-01-01
      • 2018-12-27
      • 1970-01-01
      • 2010-12-01
      相关资源
      最近更新 更多