Hash 使用特定字符模式获取MD5

Hash 使用特定字符模式获取MD5,hash,md5,Hash,Md5,我使用MD5哈希字符串的前6个字符来显示颜色 即: 在我的应用程序中,有一个特定的实例需要特定的颜色。我想输入我知道将提供特定字符模式的数据(在我的例子中是FF0000) 那么有没有办法。。反向生成MD5?还是一种蛮力构建MD5以生成以FF0000开头的MD5哈希的好方法 如果这是不可能的,我可以将此异常硬编码到应用程序中,但是所需的“黑客”数量越少越好 谢谢 无法反转MD5,因为它是单向函数。但我们可以尝试候选人,直到找到一个我们喜欢的 下面是一个小程序,它递增一个计数器,并将该计数器作为md

我使用MD5哈希字符串的前6个字符来显示颜色

即:

在我的应用程序中,有一个特定的实例需要特定的颜色。我想输入我知道将提供特定字符模式的数据(在我的例子中是FF0000)

那么有没有办法。。反向生成MD5?还是一种蛮力构建MD5以生成以FF0000开头的MD5哈希的好方法

如果这是不可能的,我可以将此异常硬编码到应用程序中,但是所需的“黑客”数量越少越好


谢谢

无法反转MD5,因为它是单向函数。但我们可以尝试候选人,直到找到一个我们喜欢的

下面是一个小程序,它递增一个计数器,并将该计数器作为md5哈希的字符串进行测试。 要找到一个以FF0000开头的md5只需几秒钟和200万次尝试

Python 3:

import hashlib

target = 'ff0000'
candidate = 0
while True:
    plaintext = str(candidate)
    hash = hashlib.md5(plaintext.encode('ascii')).hexdigest()
    if hash[:6] == target:
        print('plaintext:"' + plaintext + '", md5:' + hash)
        break
    candidate = candidate + 1
结果:

plaintext:"2237563", md5:ff0000475d94089c1f6c3fb9e19a8015

直截了当。我担心暴力会持续很久。谢谢
plaintext:"2237563", md5:ff0000475d94089c1f6c3fb9e19a8015