【信息安全概论课作业1】0426-脑洞大开-密文简单破译
题目
“二八”妙龄写密码,看谁聪明“爱死他”。
密文:766C7273626F76706A5E6F715F7271766C72706D626B71716C6C71666A62
解密过程
“二八”即十六,指十六进制。“爱死他”谐音ASCII,所以说是ASCII码。
故本题需要按两个一组划分出一个个十六进制数,并对照ASCII码表翻译过来。
0x76-v,0x6C-l,……,按此翻译出该密文对应字符串vlrsbovpj^oq_rqvlrpmbkqqllqfjb
这显然不是一个有意义的字符串,初步估计为移位密码,编写破解函数如下
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i,j;
char s[30]="vlrsbovpj^oq_rqvlrpmbkqqllqfjb";
for(i=-128;i<128;i++)
{
for(j=0;j<30;j++)
{
printf("%c",s[j]+i);
}
printf("\n");
}
}
从中挑出语义最正确的一串字符,即为youverysmartbutyouspenttootime,这就是我们要找的明文
最终答案
youverysmartbutyouspenttootime
you very smart but you spent too time

浙公网安备 33010602011771号