banana-princess

题目给了一个pdf文档,却不能打开,换后缀名txt打开

如果是pdf文件,开头应该是pdf,但是这个开头是CQS,所以推测发生了移位

从C到P,从Q到D,从S到F,都是移动了13位,也就是ROT13

写个代码解密

import string
def rot(c, n):if c.isupper():start = ord('A')elif c.islower():start = ord('a')else:return cm = ord(c) - starti = (m + n) % 26 + startreturn chr(i)f = open('b.txt','r',errors='ignore').read()
m = ''for i in f:m += rot(i,13)open('b2.pdf','w').write(m)

但是打开文件用的编码好几个都不对,默认是gbk不对,改成utf-8不对,改成gb18030还是不行,最后强制忽略错误才运行成功,但是打开了确是一片空白

搜了大佬们的解题方法发现他们直接用了工具

cat b.pdf | tr 'A-Za-z' 'N-ZA-Mn-za-m' > new.pdf

然后就得到了

flag在的地方被遮住了

在无数次尝试之后,发现PS才是正确打开方式,管他什么pdf呢

有两层,不看上面那层就出来了

看到了flag:BITSCTF{save_the_kid}

Decrypt-the-Message

The life that I have
Is all that I have
And the life that I have
Is yours.The love that I have
Of the life that I have
Is yours and yours and yours.A sleep I shall have
A rest I shall have
Yet death will be but a pause.For the peace of my years
In the long green grass
Will be yours and yours and yours.decrypted message: emzcf sebt yuwi ytrr ortl rbon aluo konf ihye cyog rowh prhj feom ihos perp twnb tpak heoc yaui usoa irtd tnlu ntke onds goym hmpq

翻译得到:

我的生活
这就是我的全部
还有我的生活
这是你的。
我拥有的爱
我所拥有的生活
是你的,你的,你的。
我要睡一觉
我要休息一下
然而,死亡只是一个停顿。
为了我晚年的安宁
在长长的绿草中
将是你的,你的,你的。
解密消息: emzcf sebt yuwi ytrr ortl rbon aluo konf ihye cyog rowh prhj feom ihos perp twnb tpak heoc yaui usoa irtd tnlu ntke onds goym hmpq

可以明显看出密文是: emzcf sebt yuwi ytrr ortl rbon aluo konf ihye cyog rowh prhj feom ihos perp twnb tpak heoc yaui usoa irtd tnlu ntke onds goym hmpq

而这题的加密方式叫:Poem Code

大概了解一下解密方式,

有大佬的解密代码:https://github.com/abpolym/crypto-tools/blob/master/poemcode/poemcode.py

然后输入python poemcode.py poem msg

poemcode.py是代码名称,poem是那个诗歌,msg是要解密的信息

但是代码需要改一些,因为原代码是python2

运行得到

有一行:ifyouthinkcryptographyistheanswertoyourproblemthenyoudonotknowwhatyourproblemisabcdefghijklmnopqrstu
就是flag了

2021-09-15相关推荐

  1. 《惢客创业日记》2021.09.15(周三)套路的最高境界

    今天,凉粉儿给我发了一段她想的关于惢客的宣传词:"你被套路过吗?想不再被套路吗?上惢客."总结一句话是"不被套路上惢客".我觉得能把惢客跟套路联系在一起,很贴切 ...

  2. 举例说明如何在Go中使用Context | Gopher Daily (2021.09.15) ʕ◔ϖ◔ʔ

    每日一谚:Concurrency is not just for doing more things faster. It's for writing better code. Go技术生态 那些没有 ...

  3. 实习日志 (2021.09.13)

    2021.09.13星期一 今天把之前的算法题终于给弄明白了,并能够按照自己的思路去把他给完成,总结这个题目并不是很难,最重要的是要把链表给弄懂,一开始由于我对链表不是很熟悉,导致我在写该题目的时候花 ...

  4. Python 最近两条好消息:①TIOBE排名超过C和Java②新版本发布3.10.0,还有今天刚发布的《What’s New in Python(2021.10.15)》

    来自TIOBE的最新10月份统计数据显示,Python首次超越Java.JavaScript.C语言等,成为最受欢迎的编程语言.TIOBE过去20年一直在追踪编程语言的受欢迎程度,其数据来自于对25个 ...

  5. 橘子CPS联盟操作手册2021.09

    橘子CPS联盟操作手册2021.09 目录 橘子CPS联盟操作手册2021.09 橘子CPS联盟是干嘛的 橘子CPS基本操作流程 PC端操作 1.注册 2.登陆 3.渠道管理 4.分享网站 5.分享网 ...

  6. 电动力学每日一题 2021/10/15 Fourier变换法计算均匀电流密度产生的磁场

    电动力学每日一题 2021/10/15 Fourier变换法计算均匀电流密度产生的磁场 无限长均匀电流 无限长圆柱面均匀电流密度 无限长均匀电流 假设z轴上有一根非常细的电线,携带均匀电流I0I_0I ...

  7. 2021.09.27 MySQL笔记

    2021.09.27 MySQL笔记 文章目录 2021.09.27 MySQL笔记 一.展示当前存在的所有数据库 二.使用(选中)一个数据库 三.创建一个数据表 四.查询并展示该数据库内的所有数据表 ...

  8. 2021.1.15——星露谷作物计算器的小改进

    2021.1.15--星露谷作物计算器的小改进 前言 目标 excel表格 代码 总结 前言 2021.1.13做的星露谷作物计算器,初步只完成了对excel表内数据和图表的生成,交互也只是input ...

  9. 2021.09青少年软件编程(Python)等级考试试卷(三级)

    2021.09青少年软件编程(Python)等级考试试卷(三级) 一.单选题(共25题,每题2分,共50分) 1.使用map函数可以实现列表数据元素类型的转换,而无需通过循环.则将列表L=['1',' ...

  10. PNET LAB 4.2.8 安装配置 最新版本PNET 2021.2.15 update 附下载地址

    PNETLAB 4.2.8   2021.2.15 官方网站:https://pnetlab.com/pages/download 链接:https://pan.baidu.com/s/1FbMjz4 ...

最新文章

  1. python抓取简单网页_【Python3 爬虫】01_简单页面抓取
  2. python亲和性分析法推荐电影论文_数据挖掘-MovieLens数据集_电影推荐_亲和性分析_Aprioro算法...
  3. Cambridge Website in a page
  4. 猛增 110K Star!年增长数最多的 10 大顶级前端学习资源项目!
  5. android+webview+打不开,webview 在android下无法打开 ?是否为一个bug?请帮忙看下!谢谢!...
  6. Spring和SpringMVC整合
  7. js判断对象为空_在 JavaScript 中如何检查对象为空
  8. MongoDB的存储结构及对空间使用率的影响
  9. 如何减少silverlight XAP包的尺寸
  10. 论文阅读笔记(七)——Thin MobileNet
  11. 2012 苹果第三代iPad3(NewPAD)发布会图文实录
  12. 02【需求调研】的概念,包括那些内容,有哪些方法?
  13. 在线CHM阅读器(2)——文件提取及关键文件解析
  14. centos7 安装mysql8.0超详细步骤
  15. 【已解决】导入tensorflow报错/python已停止工作/The kernel appears to have died
  16. MySQL分区(Partition)功能
  17. linux动态磁盘怎么转换,动态磁盘转换器【使用办法】
  18. HDU 2549 壮志难酬(easy)
  19. 编译OpenCV:opencv/3rdparty/openjpeg/openjp2/opj_stdint.h:48:2: error: #error unsupported platform
  20. k8s和harbor的集成_在Kubernetes集群上部署高可用Harbor镜像仓库

热门文章

  1. 编程小白学python知乎周刊_在知乎上学 Python - 入门篇
  2. ML:MLOps系列讲解之《基于ML的软件的三个层次之01 Data: Data Engineering Pipelines》解读
  3. Python编程语言学习:判断变量是否为NONE或False的几种常见写法(if not用法教程)
  4. DL之CNN:基于CRNN_OCR算法(keras,CNN+RNN)利用数据集(torch,mdb格式)训练来实现新图片上不定长度字符串进行识别—训练过程
  5. hyperopt中文文档:Installation-Notes安装说明
  6. 平凡的世界和你我 (武惠良与杜丽丽)
  7. Python连接Oracle数据库,以字典形式返回结果
  8. loadrunner与事务有关的函数
  9. CGLIB介绍与原理(通过继承的动态代理)
  10. How to learn wxPython