【信息安全概论课作业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

posted @ 2022-04-27 15:59  诺猫  阅读(131)  评论(0)    收藏  举报