上个图

要求计算出开头为ae3da且盐值为3c6e的字符串
简单的思路就是直接进行枚举,然后筛选符合条件的MD5加密字符,代码如下
#-*- coding:utf-8 -*-
import hashlib
def md5(s):
return hashlib.md5(s).hexdigest()
salt='3c6e'
starts='ae3da'
for i in range(1, 9999999):
if md5(str(i)+salt).startswith(starts):#筛选加盐的hash值前五位符合条件的字符串
print i
break
加盐计算一下md5,验证一下

同样的,如果不需要加盐值,将代码中的salt置空即可