重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
level 4:Vigenere Cipher加密,可以对抗词频统计,需要知道密码,此题知道密钥长度6。
公司主营业务:成都做网站、网站设计、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。成都创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。成都创新互联推出陵川免费做网站回馈大家。http://www.simonsingh.net/The_Black_Chamber/crackingprinciple.html
这个网站解释了如何破解Vigenere Cipher加密。
http://smurfoncrack.com/pygenere/pygenere.php
直接把密文拷贝到上面那个网页,可以猜知密码“FREKEY”。
用此密码揭秘密文。
level 5:加密同level 4,但不知道密钥长度。
利用level 4的解密网站,可以手工指定密钥长度进行测试。也可以使用下面的Vigenere Cipher解密工具网页,自动进行猜解:
http://www.simonsingh.net/The_Black_Chamber/vigenere_square_tool.html
密钥是:KEYLEN
用密钥解密密文。
level 6:LFSR加密
逆向加密算法:
magic值的计算函数:flsr cs:reg_2543 初始值为 1。
public lfsr lfsr proc near var_2= word ptr -2 push rbp mov rbp, rsp mov [rbp+var_2], 0 movzx eax, cs:reg_2543 mov edx, eax and edx, 1 movzx eax, cs:reg_2543 movzx eax, ax and eax, 2 sar eax, 1 xor eax, edx mov [rbp+var_2], ax movzx eax, cs:reg_2543 shr ax, 1 mov edx, eax movzx eax, [rbp+var_2] shl eax, 3 or eax, edx mov cs:reg_2543, ax movzx eax, cs:reg_2543 movzx eax, ax pop rbp retn lfsr end
ELF x86_64的程序,加密算法是:c --> 大写 --> -0x41 --> +key[i](0-9循环) --> +magic --> -0x41 --> -0x1a 直到值<=0x19 --> +0x41
明文测试:
AAAAAAAAAABBBBBBBBBB BBBBBBBBBBAAAAAAAAAA ABABABABABABABABABAB
EICTDGYIYZLUIOTJSGYZ FJDUEHZJZAKTHNSIRFXY EJCUDHYJYAKUHOSJRGXZ
可以发现同样的字符在不同的位置,密文不同,但是同样的字符在同样的位置密文相同。实际上就是[字母*位置]的一个二维密码表。
解密可以用明文***,生成一个26*20的密码表,然后查表解密。
也可以使用已知的算法,直接用程序解密:
#includeshort reg = 1; char* a_en = "EICTDGYIYZLUIOTJSGYZ"; char* a_pl = "AAAAAAAAAABBBBBBBBBB"; char* b_en = "FJDUEHZJZAKTHNSIRFXY"; char* krypton7 = "PNUKLYLWRQKGKBE"; main() { short a = 0; int b, c; int i, j; char *key[10]; short magic[20]; for(i=0, j=0; i<20; i++, j++) { //LFSR函数的算法模拟 b = reg; b &= 1; c = reg; c &= 2; c = c >> 1; a = b ^ c; b = reg; b = b >> 1; c = a; c = c << 3; a = b | c; // printf("magic: %hx\n", a); reg = a; magic[i] = a; //计算key并进行验证 if(j >= 10) j = 0; key[j] = a_en[i] - a; while(key[j] < 0x41) key[j] += 0x1A; key[j] -= a_pl[i]; printf("magic: %hx\tkey[%d]: %hhx\n", a, j, key[j]); } //解密测试 for(i=0, j=0; i<20; i++, j++) { if(j >= 10) j = 0; b = b_en[i] - magic[i]; while(b < 0x41) b += 0x1A; b -= (int) key[j]; while(b < 0x41) b += 0x1A; printf("%c", b); } printf("\n"); //解密krypton7 for(i=0, j=0; i = 10) j = 0; b = krypton7[i] - magic[i]; while(b < 0x41) b += 0x1A; b -= (int) key[j]; while(b < 0x41) b += 0x1A; printf("%c", b);jia } printf("\n"); }
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。