IDF实验室-简单编程-特殊的日子 writeup

题目:http://ctf.idf.cn/index.php?g=game&m=article&a=index&id=50

题目提示要爆破,代表加密应该是不可逆的。

密文:4D1FAE0B

只有八个字符。容易猜测是CRC32加密的。

python有直接可以用的模块binascii 

py代码:

#!usr/bin/env python
#!coding=utf-8

__author__ = 'zhengjim'


import binascii
flag = 0x4D1FAE0B
for year in range(1500,2500):
    for mon in range(1,10):
        for day in range(1,10):
            a = str(year)+'0'+str(mon)+'0'+str(day)
            b= binascii.crc32(a)
            if b == flag:
                print a

  因为1-10月的0显示不出来,所以要分成1-10月 1-10天 与  10-12月 10-30天两次。这里放出1-10月 1-10天 的算法,因为刚好出了答案。

改的话直接修改即可。

跑出答案:

20190804

原文地址:https://www.cnblogs.com/zhengjim/p/6127304.html