题目
附件
打开附件观察密文发现出现的字符全是二十六键第一排的字符,且无p,q出现,再根据题目提示为键盘,那可能还与九键有关,网上查了一下九键字母分布,如下:
数字2-9对应字符a-z,每个数字最多对应4个字符,与密文里每一段出现最多次数相对应,那么答案就可以解出来了,比如密文第一个为o,在二十六键上对应第九个字符,出现了三次,那就对应九键的数字9对应的第三个字符,也就是y,以此类推即可得到明文。
但手写过于浪费时间,我在网上参考了一下大佬的代码:
cipher="ooo yyy ii w uuu ee uuuu yyy uuuu y w uuu i i rr w i i rr rrr uuuu rrr uuuu t ii uuuu i w u rrr ee www ee yyy eee www w tt ee"
base=" qwertyuiop"
a=[" "," ","abc","def","ghi","jkl","mno","pqrs","tuv","wxyz"]
l=cipher.split(" ") ##cipher里以空格为分隔符
##print(l)
key = ""
for part in l:
s=base.index(part[0]) ##密文对应二十六键上字符的序号
count=len(part)
k = a[s][count-1]
key = key + k
print('key=',key)
结果如下:
成功拿到flag{youaresosmartthatthisisjustapieceofcake} !!!