「附件」
下载附件,解压后是一张图片 Do_you_like_misc.png
「思路」
题目是 steg没有py,猜测是某种python库,搜索一下steg py。
stegpy是一种将编码信息隐写在图像和音频文件中的程序。使用Python编写。
那就根据教程安装 https://blog.51cto.com/u_15274949/5250478
安装完成后使用stegpy解密
stegpy xxxxx -p
需要密码,试试文件名。
解压出一个txt,打开后观察其内容
eyjd{4e71wf_H1uc3s_15_EEEEpwwl!!}
a,b∈(1,25]
a=x**2;
b=(x-2)**2;
print(a,b)
第一行的格式类似flag,猜测是某种加密方法。
观察第二部分,a、b的值范围都是(1,25],需要两个参数的,且参数范围符合的加密方法是 仿射密码(Affine密码)
仿射密码在线解密工具: http://www.hiencode.com/affine.html
从x=1开始遍历,若a的结果不为奇数,则跳过该x,不计算b,最后发现当x=5时,a=25,b=9解密成功,得到明文flag。
提交flag,平台提示错误。
继续深入学习一下仿射密码:需要注意大小写。
将flag对应的字符,改为与密文相符的大小写,再次提交,成功。
「工具」
- stegpy
- 仿射密码在线解密工具: http://www.hiencode.com/affine.html
「知识拓展」
仿射密码(Affine密码)
标签:steg,stegpy,py,CSFJ1070,密码,flag,仿射 From: https://www.cnblogs.com/stonechen/p/CSFJ1070.html仿射密码是一种表单代换密码,字母表的每个字母相应的值使用一个简单的数学函数对应一个数值,再把对应数值转换成字母。