实验吧-围在栅栏中的爱WriteUp
题目:最近一直在好奇一个问题,QWE到底等不等于ABC?
-.- .. –.- .-.. .– - ..-. -.-. –.- –. -. … — —
flag格式:CTF{xxx}
0X00
先拿去摩斯密码解密得到:kiqlwtfcqgnsoo
根据 QWE到底等不等于ABC 想到密码替换
#include <iostream>
#include <string>
using namespace std;
string a="qwertyuiopasdfghjklzxcvbnm";
string b="abcdefghijklmnopqrstuvwxyz";
int main()
{ int j,i;
string pwd="kiqlwtfcqgnsoo";
for(i=0;i<pwd.size();i++)
{
for(j=0;j<a.size();j++)
{
if(pwd[i] == a[j])
break;
}
cout<<b[j];
}
cout<<endl;
return 0;
}
PS:其实就是从键盘第一排,第一个开始排A,B,C,D,…..
替换后得到:rhasbenvaoylii
对于这种字串,咋一看还以为解错了。其实可以在串中看出一些常见的英文单词,然后题目也提示了有栏栅加密,就拿串去跑栏栅。
0X01
这道题其实还有一个坑点,坑了我一会,一度让我认为自己的思路是错的。
前面得到的 rhasbenvaoylii 还要倒序
得到新的串:iilyoavnebsahr
跑栏栅:
2栏:
inielbysoaahvr
7栏:
iloveshiyanbar
所以flag就是Flag{Iloveshiyanbar}