level 4:Vigenere Cipher加密,可以對抗詞頻統(tǒng)計(jì),需要知道密碼,此題知道密鑰長度6。
http://www.simonsingh.net/The_Black_Chamber/crackingprinciple.html
這個網(wǎng)站解釋了如何破解Vigenere Cipher加密。
http://smurfoncrack.com/pygenere/pygenere.php
直接把密文拷貝到上面那個網(wǎng)頁,可以猜知密碼“FREKEY”。
用此密碼揭秘密文。
level 5:加密同level 4,但不知道密鑰長度。
利用level 4的解密網(wǎng)站,可以手工指定密鑰長度進(jìn)行測試。也可以使用下面的Vigenere Cipher解密工具網(wǎng)頁,自動進(jìn)行猜解:
http://www.simonsingh.net/The_Black_Chamber/vigenere_square_tool.html
密鑰是:KEYLEN
用密鑰解密密文。
level 6:LFSR加密
逆向加密算法:
magic值的計(jì)算函數(shù):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循環(huán)) --> +magic --> -0x41 --> -0x1a 直到值<=0x19 --> +0x41
明文測試:
AAAAAAAAAABBBBBBBBBB BBBBBBBBBBAAAAAAAAAA ABABABABABABABABABAB
EICTDGYIYZLUIOTJSGYZ FJDUEHZJZAKTHNSIRFXY EJCUDHYJYAKUHOSJRGXZ
可以發(fā)現(xiàn)同樣的字符在不同的位置,密文不同,但是同樣的字符在同樣的位置密文相同。實(shí)際上就是[字母*位置]的一個二維密碼表。
解密可以用明文***,生成一個26*20的密碼表,然后查表解密。
也可以使用已知的算法,直接用程序解密:
#include <stdio.h> short 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函數(shù)的算法模擬 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; //計(jì)算key并進(jìn)行驗(yàn)證 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<strlen(krypton7); i++, j++) { if(j >= 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"); }
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
當(dāng)前題目:krypton系列4-7-創(chuàng)新互聯(lián)
路徑分享:http://jinyejixie.com/article46/digjhg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、云服務(wù)器、App開發(fā)、網(wǎng)站導(dǎo)航、面包屑導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容