[安洵杯 2020]密码学?爆破就行了
沉浸式做密码学
题目的内容
首先看到这个python文件可以发现这个调用的这两个模块可以直接注释掉,这个SECRET涉及flag的打印出的密文,为了后续可以好分析代码,就随便用一串字符定义掉。
如果看不懂这些函数就一个一个打印出来看看是什么意思。如下面一样
打印结果:

不难看出这个变量”broken_flag“会把自己的字符串分割然后替换到flag里面进行加密
所以我们只要整出那几个6个*是什么字符就可以解密出flag了。
那怎么整呢?
很简单使用爆破把哈希函数就只要0-f设置一个字典赋值给strings然后堆6次for循环最后跟个if判断,只要最后的加密出的和这个题目给的代码最后注释的密文一样,就输出成功的那个flag
输出的就是flag,理论成立。
代码实现:
效果图:
