美文网首页
CTF-敲错键盘的md5解密,python通解

CTF-敲错键盘的md5解密,python通解

作者: Watanuki | 来源:发表于2018-07-17 19:53 被阅读0次

常常会有无聊的出题人,给出这样的crypto题。md5值可能错了几位,多了几位……

小明想入侵小红的网站,发现小红是用自己的生日作为自己网站的密码,可是小明只知道小红是99年的,小明通过某些手段得到了小红存密码的文件,但是好像有个字符串被篡改了你能解出小红的生日吗?
093bd2299e0d90de4ch96a53ec3d13c1

年轻的时候可以用眼睛找,年纪大了以后就想写通解一劳永逸了。思路是用生成的字典去生成md5字典,再和题目密文比较相似度,正好python里有个difflib库,调用一下就能得到相似度值。
有了这个算法后随便改几位md5值都不怕啦!大不了多输出几位!

执行效果为(按相关度排序)

与君共享

def birthGen():#生日字典生成
    list = []
    for day in range(1,32):
        day = str(day).rjust(2,'0')
        for month in range(1,13):
            month = str(month).rjust(2,'0')
            list.append('1999'+month+day)
    return list
                
def md5Brute(list):#列表生成md5字典
    import hashlib 
    b = {}
    for i in list:
        b[hashlib.md5(i.encode('utf-8')).hexdigest()] = i
    return b

def md5Correct(a,dict):#md5标准化校验
    import difflib
    result = {}
    for i in dict:
        result[i] = difflib.SequenceMatcher(None, a,i).quick_ratio()
    return sorted(result.items(),key = lambda x:x[1],reverse = True)

b = md5Brute(birthGen())
list = md5Correct(a,b)
print(list[0],b[list[0][0]])
print(list[1],b[list[1][0]])


考虑difflib是用类似于in的算法,汉明距离是用操作距离来算,更接近出题思路。但汉明距离只适用于输错的情况,严格要求len(str1)==len(str2),所以留给以后补充吧,现在够用就行了,在苍茫的md5海洋里不会那么巧的https://segmentfault.com/a/1190000002915566

相关文章

  • CTF-敲错键盘的md5解密,python通解

    常常会有无聊的出题人,给出这样的crypto题。md5值可能错了几位,多了几位…… 小明想入侵小红的网站,发现小红...

  • python 加密解密

    Python 利用 pyDes对字符串进行解密 base64加密解密 md5加密

  • 程序员工具箱

    在线JSON校验格式化工具(Be JSON) md5解密 MD5在线解密 破解md5 开发工具箱 - 走南闯北,千...

  • 常用工具

    �把一切脚本化之设计篇 在线JSON校验格式化工具(Be JSON) md5解密 MD5在线解密 破解md5 开发...

  • 带你手撕 AES算法在Python中的使用

    记录一下AES加解密在python中的使用研究AES之前先了解下常用的md5加密,既。然谈到md5,就必须要知道p...

  • 加密

    来源于:MD5加密,Base64加密/解密,AES加密/解密

  • python实现文字加解密常用方法

    一、base64实现加解密 运行结果: 二、MD5实现加密 因为MD5是不可逆算法,不可解密,更安全。 三、使用A...

  • java 加密解密帮助类

    一、MD5帮助类 二、AES加解密工具类 三、RSA加密解密类

  • Objective-C AES 加解密

    iOS AES加解密 hexToByte parseByteToHexString md5 AESEncrypt ...

  • #网络:MD5

    MD5解密网站:http://www.cmd5.com

网友评论

      本文标题:CTF-敲错键盘的md5解密,python通解

      本文链接:https://www.haomeiwen.com/subject/bnigpftx.html