摩斯密码,栅栏密码,brainfuck,ook

今天做了四个crypto的题目,因为比较简单,所以放在一起了




摩斯密码

image


一看到.-/这三个字符,明显就是一串摩斯密码,可以去在线网站上解密
image
其中%u7b和%u7d是Unicode编码中的{},这个也可以猜到,比较恶心的是这道题拿到flag之后还要把所有字符变成小写才正确

但是考虑到省赛的时候不允许联网,我写了一个python来实现这个小功能
其实也比较简单,把摩斯密码以/为分隔符分开,再去事先写好的字典里找对应的字符,代码如下

a = input("input the string:")
s = a.split("/")
dict = {'.-': 'A','-...': 'B','-.-.': 'C','-..'😂','.':'E','..-.':'F','--.': 'G','....': 'H','..': 'I','.---':'J','-.-': 'K','.-..': 'L','--': 'M','-.': 'N','---': 'O','.--.': 'P','--.-': 'Q','.-.': 'R','...': 'S','-': 'T','..-': 'U','...-': 'V','.--': 'W','-..-': 'X','-.--': 'Y','--..': 'Z','.----': '1','..---': '2','...--': '3','....-': '4','.....': '5','-....': '6','--...': '7','---..': '8','----.': '9','-----': '0','..--..': '?','-..-.': '/','-.--.': '(','-.--.-'😂','-....-': '-','.-.-.-': '.','----.--':'{','-----.-':'}','---...':':','--..--':',','-.-.-.':';','-...-':'=','.----.':''','-.-.--':'!','..--.-':'_','.-..-.':'"','...-..-':'$','.--.-.':'@','.-.-.':'+'};
for item in s:
print(dict[item],end='')


栅栏密码

image


拿到题目我就想起来之前看到过buctf的工具库里面有一个什么加密就是什么小羊跨栅栏,去找了一下,果然是一个栅栏密码,直接拿到flag
image


栅栏密码比较简单

首先确定一个栏数k,本题中k=2

比如要加密0123456789,先将原文隔(k-1)位分成两组,即02468和13579
然后依次连接,得到0246813579,这就是0123456789用栅栏密码加密后的密文


brainfuck加密

image


brainfuck加密中只有八个关键字,组合再一起能完成C语言中的绝大多数操作
image


实在太难看懂了,建议直接扔到工具里
image


ook加密

image


ook加密和brainfuck加密很相似
image


丢工具里,直接得到flag
image

posted @ 2022-06-24 17:24  ssuxi  阅读(1447)  评论(0编辑  收藏  举报