暑假第五周练习(一)Crypto练习

题目来源https://buuoj.cn/challenges

目录:

0×00 丢失的MD5
0×01 老文盲
0×02 Alice与Bob
0×03 大帝的密码武器
0×04 Windows系统密码
0×05 cat_flag
0×06 传统知识+古典密码

0×00 丢失的MD5

附件是一段python代码:

import hashlib
for i in range(32,127):
    for j in range(32,127):
        for k in range(32,127):
            m=hashlib.md5()
            m.update('TASC'.encode('utf-8')+chr(i).encode('utf-8')+'O3RJMV'.encode('utf-8')+chr(j).encode('utf-8')+'WDJKX'.encode('utf-8')+chr(k).encode('utf-8')+'ZM'.encode('utf-8'))
            des=m.hexdigest()
            if 'e9032' in des and 'da' in des and '911513' in des:
                print (des)

放进pycharm,运行不了,直接复制到了python3的IDLE运行得到一串数字。
暑假第五周练习(一)Crypto练习_第1张图片
提交得到flag。

0×01 老文盲

拿到题目是txt文件
暑假第五周练习(一)Crypto练习_第2张图片
看了那么复杂,就想到了新约佛论禅那个加密,试了一下更麻烦了。就换种方法,在线汉语拼音转换
暑假第五周练习(一)Crypto练习_第3张图片
bjd{这就是flag直接交了吧},丧心病狂的出题人,这样还不对。
经过多次尝试flag{淛匶襫黼瀬鎶軄鶛驕鳓哵},这样才对。

0×02 Alice与Bob

暑假第五周练习(一)Crypto练习_第4张图片
第一步先将98554799767分为两个素数,点这

暑假第五周练习(一)Crypto练习_第5张图片
小的在前,大的在后,进行MD5加密
暑假第五周练习(一)Crypto练习_第6张图片
找到符合要求的,就是flag

0×03 大帝的密码武器

在这里插入图片描述
凯撒密码,一个一个试。。。。
暑假第五周练习(一)Crypto练习_第7张图片
安全这个词应该很有意义吧!而且凯撒密码偏移量为13 这不是我第一次见了。

得到了偏移量为13

暑假第五周练习(一)Crypto练习_第8张图片
得到flag。

0×04 Windows系统密码

暑假第五周练习(一)Crypto练习_第9张图片
看着毫无思路,就从ctf那一行,试着对一串符号进行MD5解密,一个一个试吧

暑假第五周练习(一)Crypto练习_第10张图片
这个应该就是flag,交一下就了。

0×05 cat_flag
暑假第五周练习(一)Crypto练习_第11张图片
你能想到什么???

只有两种猫,意味0,1

那么图片就变成了
01000010
01001010
01000100
01111011
01001101
00100001
01100001
00110000
01111110
01111101

二进制ASCII码对照一下,就能得到flag。

0×06 传统知识+古典密码

暑假第五周练习(一)Crypto练习_第12张图片
天干地支

暑假第五周练习(一)Crypto练习_第13张图片
辛卯–28 癸巳–30 丙戌–23 辛未–08 庚辰–17 癸酉–10 己卯–16 癸巳–30

+甲子?应该怎样理解是理解为+1,还是60一甲子,+60呢。

根据直觉先尝试+60就变成了:88,90,83,68,77,70,76,90

对照一下ASCII码表:XZSDMFLZ

先栅栏
暑假第五周练习(一)Crypto练习_第14张图片
暑假第五周练习(一)Crypto练习_第15张图片
然后试一下XMZFSLDZ,进行凯撒密码解密。

拿上面两个解密
暑假第五周练习(一)Crypto练习_第16张图片
人家都选了SHUANGYU这个,说是题目作者的网名就是这个。

(ˉ▽ˉ;)…

你可能感兴趣的:(Crypto)