1、变异凯撒
题目:
在CTFtools上用凯撒密码解了半天都只能得到一堆乱码,于是去查密文前4位对应的ASCII码
密文字符 | ASCII |
---|---|
a | 97 |
f | 102 |
Z | 90 |
_ | 95 |
明文字符 | ACSCII |
---|---|
f | 102 |
l | 108 |
a | 97 |
g | 103 |
可看出密文与明文的ASCII码相差5、6、7、8……
代码如下:
#include<stdio.h>
#include<string.h>
int main()
{
int i;
char code[35]="afZ_r9VYfScOeO_UL^RWUc";
for(i=0;code[i];i++)
{
code[i]=code[i]+i+5;
printf("%c",code[i]);
}
return 0;
}
2、传统知识+古典密码
与六十甲子有关,故:
则得到:28、30、23、8、17、10、16、30
“加甲子”应该为+60
最开始以为是+1,结果ASCII码对应的都是控制字符
得:XZSDMFLZ
古典密码考虑栅栏密码和凯撒密码
-
使用凯撒密码
均为乱码 -
使用栅栏密码
解密后得
-
再分别用凯撒密码解密
只有XMZFSLDZ对应的解有非乱码的拼音:
- 提交发现没通过
- 更换为大写字母——通过