文章目录

  • 前言
  • 一、转轮机加密
  • 二、使用步骤
    • 1.下载附件
    • 2.脚本解密
  • 总结

前言

题目描述:你俩继续往前走,来到了前面的下一个关卡,这个铺面墙上写了好多奇奇怪怪的 英文字母,排列的的整整齐齐,店面前面还有一个大大的类似于土耳其旋转烤肉的架子,上面一圈圈的 也刻着很多英文字母,你是一个小历史迷,对于二战时候的历史刚好特别熟悉,一拍大腿:“嗨呀!我知道 是什么东西了!”。提示:托马斯·杰斐逊。 flag,是字符串,小写。


提示:以下是本篇文章正文内容,下面案例可供参考

一、转轮机加密

题目链接:https://adworld.xctf.org.cn/task/answer?type=crypto&number=5&grade=0&id=5109&page=1

二、使用步骤

1.下载附件

1:  < ZWAXJGDLUBVIQHKYPNTCRMOSFE <
2:  < KPBELNACZDTRXMJQOYHGVSFUWI <
3:  < BDMAIZVRNSJUWFHTEQGYXPLOCK <
4:  < RPLNDVHGFCUKTEBSXQYIZMJWAO <
5:  < IHFRLABEUOTSGJVDKCPMNZQWXY <
6:  < AMKGHIWPNYCJBFZDRUSLOQXVET <
7:  < GWTHSPYBXIZULVKMRAFDCEONJQ <
8:  < NOZUTWDCVRJLXKISEFAPMYGHBQ <
9:  < XPLTDSRFHENYVUBMCQWAOIKZGJ <
10: < UDNAJFBOWTGVRSCZQKELMXYIHP <
11: < MNBVCXZQWERTPOIUYALSKDJFHG <
12: < LVNCMXZPQOWEIURYTASBKJDFHG <
13: < JZQAWSXCDERFVBGTYHNUMKILOP <密钥为:2,3,7,5,13,12,9,1,8,10,4,11,6
密文为:NFQKSEVOQOFNP

2.脚本解密

import retable=[2,3,7,5,13,12,9,1,8,10,4,11,6]
Ciphertext='NFQKSEVOQOFNP'
with open(r'F:\桌面\tmp\6.txt','r') as f:data=f.read()#转轮机根据table重新排列
def wheel_decode(data,table):resultList=[]pattern = re.compile('[A-Z]{26}')result = pattern.findall(data)for i in table:resultList.append(result[i-1])return resultListresultList = wheel_decode(data,table)#根据密文重新排列
def rearrange(List,Ciphertext):resultList=[]for i in range(0,13):resultList.append(List[i][List[i].find(Ciphertext[i]):]+List[i][:List[i].find(Ciphertext[i])])return resultList
resultList= rearrange(resultList,Ciphertext)选取每一列,列出结果
def rearrange2(List):resultList=[]s=''for i in range(0,26):for j in List:s += j[i]resultList.append(s)s=''return resultListresultList = rearrange2(resultList)
for i in resultList:print(i)

结果:

NFQKSEVOQOFNP
AHGCXIUSNWCBN
CTWPCUBFOTUVY
ZETMDRMEZGKCC
DQHNEYCZUVTXJ
TGSZRTQWTREZB
RYPQFAWAWSBQF
XXYWVSAXDCSWZ
MPBXBBOJCZXED
JLXYGKIGVQQRR
QOIITJKDRKYTU
OCZHYDZLJEIPS
YKUFHFGULLZOL
HBLRNHJBXMMIO
GDVLUGXVKXJUQ
VMKAMLPIIYWYX
SAMBKVLQSIAAV
FIREINTHEHOLE
UZAULCDKFPRST
WVFOOMSYAUPKA
IRDTPXRPPDLDM
KNCSJZFNMNNJK
PSEGZPHTYADFG
BJOJQQECGJVHH
EUNVAONRHFHGI
LWJDWWYMBBGMW

发现FIREINTHEHOLE是有语义得

得到flag:fireinthehole


总结

密学技术在几个世纪中不断地发展。托马斯杰斐逊,在17世纪末时,描述发表了一个在加密学中一个重大突破,但理论当时并没有实质建立过。他的发表,称为加密轮,由移动轮上的36个字母环组成,可用于实现复杂的编码上。这个概念是如此的先进,以至于它可以在第二次世界大战末期时,作为美国军事编码的基础。

我讲讲它得原理,

1.首先我们根据密钥来进行重新排列轮子

2.密钥得数字就代表第几个轮子,如2,3,7,5…代表第一行换成原来第二行得,第二行换成原来第三行得,依次类推

3.排好后根据密文,进行行内排列,如 KPBELNACZDTRXMJQOYHGVSFUWI 进行重新排列后,找到N所在位置,然后重新拼接 ‘NACZDTRXMJQOYHGVSFUWI’+‘KPBEL’

4.对所有行排好后按照列取

【愚公系列】2021年12月 攻防世界-简单题-CRYPTO-010(转轮机加密)相关推荐

  1. 【愚公系列】2021年12月 攻防世界-简单题-MOBILE-010(easy-dex)

    文章目录 前言 一.easy-dex 二.使用步骤 1.dex和odex文件结构 2.jadx分析apk 3.IDA 4.jadx打开easy-dex.dex 总结 前言 APK解包后是没有dex文件 ...

  2. 【愚公系列】2021年12月 攻防世界-简单题-REVERSE-005(game)

    文章目录 一.game 二.使用步骤 1.IDA静态分析 2.OD动态分析 总结 一.game 题目链接:https://adworld.xctf.org.cn/task/task_list?type ...

  3. 【愚公系列】2021年12月 攻防世界-简单题-CRYPTO-002(Caesar)

    文章目录 前言 一.Caesar 二.使用步骤 1.下载附件 2.凯撒密码 总结 前言 题目描述:你成功的解出了来了灯谜,小鱼一脸的意想不到"没想到你懂得这么多啊!" 你心里面有点 ...

  4. 【愚公系列】2021年12月 攻防世界-简单题-MOBILE-002(app1)

    文章目录 一.app1 二.答题步骤 1.运行app 2.jadx反编译apk文件 总结 一.app1 题目链接:https://adworld.xctf.org.cn/task/task_list? ...

  5. 【愚公系列】2021年12月 攻防世界-简单题-CRYPTO-003(Morse)

    文章目录 前言 一.Morse 二.使用步骤 1.下载附件 2.莫尔斯电码 总结 前言 题目描述:小鱼得意的瞟了你一眼,神神气气的拿走了答对谜语的奖励,你心里暗暗较劲 想着下一个谜题一定要比小鱼更快的 ...

  6. 【愚公系列】2021年12月 攻防世界-简单题-REVERSE-001(Hello, CTF)

    文章目录 一.Hello, CTF 二.使用步骤 1.IDA 总结 一.Hello, CTF 题目链接:https://adworld.xctf.org.cn/task/task_list?type= ...

  7. 【愚公系列】2021年12月 攻防世界-简单题-WEB-004(cookie)

    文章目录 一.cookie 二.使用步骤 1.点击获取在线场景 2.查看cookie 总结 1.概念 2.机制 3.修改或者删除cookie 一.cookie 题目链接:https://adworld ...

  8. 【愚公系列】2021年12月 攻防世界-进阶题-MISC-063(saleae)

    文章目录 一.saleae 二.答题步骤 1.logicdata 总结 一.saleae 题目链接:https://adworld.xctf.org.cn/task/task_list?type=mi ...

  9. 【愚公系列】2021年12月 攻防世界-进阶题-MISC-074(latlong)

    文章目录 一.latlong 二.答题步骤 1.file 2.AX.25 3.sox 4.multimon-ng 总结 一.latlong 题目链接:https://adworld.xctf.org. ...

最新文章

  1. 【Java】阿里巴巴java开发手册总结(我能看懂的)
  2. CTO集体怒吼:我到底要不要继续写代码(上篇)
  3. 【安装PHP】如何在openSUSE42.1下编译安装PHP7
  4. [密码学] Shannon保密系统的信息理论 熵与完美保密性
  5. cnsul linux环境后台启动_Redis安装和配置(Windows和Linux)
  6. Echarts文字大小自适应,案例详解
  7. c 语言赋值运算符,C/C+编程笔记:运算符—所有编程语言的基础!一文带你搞懂它...
  8. matlab中值滤波实现
  9. 4线-2线优先编码器
  10. 解决Win10无法安装运行SqlServer 2000
  11. 计算机操作和电子技术应用,电子技术应用是学什么
  12. spark大数据的学习
  13. Mybatis-四大神兽
  14. 筛选出一些个人常用的快捷键
  15. 个人所得税法应充分体现经济法原则
  16. java小白日常报错
  17. 新税码不显示或者税码被人隐藏,发票校验不显示
  18. Intel(R)Dual Band Wireless-AC 3165网卡驱动程序出现问题,WiFi,热点和以太网无法连接
  19. 通过HttpURLConnection连接上传文件和参数
  20. Zephyr UART

热门文章

  1. oracle导seq_ORACLE SEQUENCE用法(转)
  2. 燕京理工学院计算机答辩难吗,燕京理工学院:一腔热血答与辩,满腹经纶方成功...
  3. python人脸识别门禁系统生产厂家_人脸识别门禁硬件生产厂家
  4. 从海尔工业平台数字化案例看产业生态平台的几点分享
  5. 用java做日记本系统_jsp+servlet开发java web个人日记本系统
  6. ADNI以及study design简介
  7. Python探索性数据分析(EDA)统计数据和建模
  8. 百度ERNIE-Gram: Pre-Training with Explicitly N-Gram Masked Language Modeling
  9. 【前端】实际开发案例
  10. 分享快手极速版助手APK和源代码