首页 > 其他分享 >[WP] 攻防世界 CSFJ1070 steg没有py

[WP] 攻防世界 CSFJ1070 steg没有py

时间:2023-06-22 23:44:25浏览次数:48  
标签:steg stegpy py CSFJ1070 密码 flag 仿射

「附件」

下载附件,解压后是一张图片 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对应的字符,改为与密文相符的大小写,再次提交,成功。

「工具」

「知识拓展」

仿射密码(Affine密码)

仿射密码是一种表单代换密码,字母表的每个字母相应的值使用一个简单的数学函数对应一个数值,再把对应数值转换成字母。

标签:steg,stegpy,py,CSFJ1070,密码,flag,仿射
From: https://www.cnblogs.com/stonechen/p/CSFJ1070.html

相关文章

  • 算法岗必读中文-0天吃掉pyspark实战
    pyspark......
  • 使用pyinstaller打包python为exe文件
    将Python图形界面程序打包成可执行文件,可以在没有Python环境的电脑上运行,可以使用PyInstaller或者cx_Freeze等工具。使用PyInstaller打包Python程序首先,在命令行中安装PyInstaller:pipinstallpyinstaller在命令行中进入Python程序所在目录。输入以下命令:pyinstaller--onef......
  • Python json 字符串插入变量值
    在json字符串中,对某个key插入一个变量值而非固定的值可以照以下的例子来实现:beep_status="ON"f"{{\"Beep\":\"{beep_status}\"}}"在json字符串外套一层{}和f,在取变量时通过{beep_status}来取。......
  • 使用 python 插入 sql 字符串时将对象转换为元组插入占位符
    sql插入的值肯定是动态的,通过%s占位符插入变量:definsert_cover(data:pojos.Cover):sql="insertintocovers(temp,accel_x,accel_y,accel_z,cover_status,date,name,sno)values(%s,%s,%s,%s,%s,%s,%s,%s)"exeSql(sql,tuple(data))data是一个......
  • Python开发系列课程(13) - 文件和异常
    文件和异常在实际开发中,常常需要对程序中的数据进行持久化操作,而实现数据持久化最直接简单的方式就是将数据保存到文件中。说到“文件”这个词,可能需要先科普一下关于文件系统的知识,对于这个概念,维基百科上给出了很好的诠释,这里不再浪费笔墨。在Python中实现文件的读写操作其实非常......
  • Python开发系列课程(0) - 公告
    这里我们先为大家普及一下编程语言的基本知识。日常生活中有很多任务都可以通过计算机来解决,我们可以通过编程来控制计算机工作,当然编程可能对很多人来说并不是一件容易的事情,尤其是当你从C或者C++这样的语言开始起步的时候。今天你也可能会听到很多类似于“每个人都应该学习编程......
  • 历史最全GAN模型PyTorch代码实现整理分享
        如果你是第一次接触AE自编码器和GAN生成对抗网络,那这将会是一个非常有用且效率的学习资源。所有的内容使用PyTorch编写,编写格式清晰,非常适合PyTorch新手作为学习资源。本项目的所有模型目前都是基于MNIST数据库进行图片生成。MNIST数据集是一个比较小,一个光CPU就能跑起来的......
  • python实现批量重命名与批量删除
    python实现文件批量重命名这里我是用正则表达式,把文件名包含“[中间是任意字母或者数字]”替换成空字符串importosimportre#指定目录路径directory=r"D:\\音乐"#匹配的正则表达式pattern=r"\[.+?\]"#遍历目录下的文件forfilenameinos.listdir(directory):......
  • 斜率熵Slop entropy,多尺度斜率熵,层次斜率熵,时移多尺度斜率熵,复合多尺度斜率熵,精细复合
    斜率熵Slopentropy,多尺度斜率熵,层次斜率熵,时移多尺度斜率熵,复合多尺度斜率熵,精细复合多尺度斜率熵(Matlab)熵或复杂性度量区分时间序列类别和理解潜在动态的能力是众所周知的。斜率熵(Slopentropy)使用一种基于两个连续数据样本生成的斜率的新颖编码方法来保持子序列的符号表示。该......
  • 安装Python
    转载请注明来源:http://www.eword.name/Author:ewordEmail:[email protected]专题目录安装Python一、查询是否安装了Python及安装路径#查看当前Python版本python--versionPython2.7.16#查看当前所有Python版本路径appledeMBP:~apple$whichpython2.7/usr/lo......