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


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


目录
  • 摩斯密码
  • 栅栏密码
  • brainfuck加密
  • ook加密


摩斯密码




一看到.-/这三个字符,明显就是一串摩斯密码,可以去在线网站上解密

其中%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='')


栅栏密码




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



栅栏密码比较简单

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

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


brainfuck加密




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



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


ook加密




ook加密和brainfuck加密很相似



丢工具里,直接得到flag