签到
本题考查rot47、键盘替换
密文:W9@F0>:2?0D9:07=28X/3/TUW/o/7/PUo/ST7/T/6/R
题目提示先rot在键盘
在在线网站进行rot47转换
得到(hou_mian_shi_flag)^b^%&(^@^f^!&@^$%f^%^e^#
将^b^%&(^@^f^!&@^$%f^%^e^#对照键盘转换为数字
6b6579626f6172645f656e6
在hex解密即可
rsaEZ
本题考查:rsa密钥解析
这题直接套脚本即可
from Crypto.PublicKey import RSA
import libnum
import gmpy2
#导入公钥
with open("public.key","rb") as f:
key = RSA.import_key(f.read())
n =key.n
e =key.e
with open("encrypted.message1","rb") as f:
c1=libnum.s2n(f.read())
with open("encrypted.message2","rb") as f:
c2=libnum.s2n(f.read())
with open("encrypted.message3","rb") as f:
c3=libnum.s2n(f.read())
p=302825536744096741518546212761194311477
q=325045504186436346209877301320131277983
d=libnum.invmod(e,(p-1)*(q-1))
c=[c1,c2,c3]
flag=''
for i in c:
m=pow(i,d,n)
m1=str(libnum.n2s(int(m)))
flag+=(m1.split("x00")[1])[:-3] #以x00分段取后面那段,将 \n' 去掉
print(flag)
justShow
本题考查:简单的移位、playfair密码
题目给出密文:
hlcgoyfsjqknyifnpd:bcdefghijklmnopqrstuvwxyza
看后面的规律是将密文往后移了移位
所以将hlcgoyfsjqknyifnpd往前移一位得:
gkbfnxeripjmxhemoc
在用上面的密文进行playfair密码解密,密钥为abcdefghijklmnopqrstuvwxyz
解密出来:flagisctfshowicome
飞鸽传书
本题考查:base64、md5
打开有数字、有字母、有等号,很明显是base64,解密一下,还是base64,在解密一下得到1b08af276dbc7593271f4ee616289324%0Ae2ae3a2350743c516cda412499ba3be9%0Abde52cb31de33e46245e05fbdbd6fb24%0Ae23e00be39d36f3462e576a67a7f9199%0A18c79285b514c63fc9035e3f920ae477%0Ada44dd192defd1be79f63c350d2920cf%0A4251c4c649c7d2f86327efde23992fa7%0Aaae7b2d482382aaad75fde64df8ff86f%0A296f7ffc2e4545dc7792050ceb4a8711%0A6107ac1a55f1e0fecb7ddb60fb3bf109%0Aaec2333321d73000161682d3c4ebc009%0A5005b3bf00050bf4f7e43ac33a0454b8%0A
搜一下%0A是可以替换换行的URL编码,将%0A变成换行得到12个32为字符串
1b08af276dbc7593271f4ee616289324
e2ae3a2350743c516cda412499ba3be9
bde52cb31de33e46245e05fbdbd6fb24
e23e00be39d36f3462e576a67a7f9199
18c79285b514c63fc9035e3f920ae477
da44dd192defd1be79f63c350d2920cf
4251c4c649c7d2f86327efde23992fa7
aae7b2d482382aaad75fde64df8ff86f
296f7ffc2e4545dc7792050ceb4a8711
6107ac1a55f1e0fecb7ddb60fb3bf109
aec2333321d73000161682d3c4ebc009
5005b3bf00050bf4f7e43ac33a0454b8
一个个md5解密即可