在戰(zhàn)場(chǎng)上發(fā)送的電報(bào),通常需要加密成密文電報(bào)?,F(xiàn)截獲一份由若干大寫字母組成的敵軍密文電報(bào),需要對(duì)其進(jìn)行解密。已截獲敵軍的數(shù)據(jù)加密規(guī)則如下:
●第一步,對(duì)數(shù)據(jù)進(jìn)行柵欄密碼加密,加密方法如下:
把明文按N個(gè)字符為一欄進(jìn)行拆分,剩余字符不足N個(gè)也自成一欄,依次取每欄相同位置的字符生成N組新的字符串。將這些字符串連在一起,得到柵欄密碼加密的數(shù)據(jù)。
例如:明文M=“TAIZHOU“,欄數(shù)N=2,進(jìn)行柵欄密碼加密
明文 | TAIZHOU | |||
每2個(gè)一欄 | TA | IZ | HO | U |
取字符 | 取每欄的第1個(gè)字母 | 取每欄的第2個(gè)字母 | ||
TIHU | AZO | |||
將2組字符串連接,得到柵欄密碼加密的數(shù)據(jù):TIHUAZO |
引入“密鑰”,“密鑰”由多個(gè)大寫英文字母組成,每位英文字母對(duì)應(yīng)一個(gè)偏移量,A對(duì)應(yīng)的偏移量為0,B對(duì)應(yīng)的偏移量為1,C對(duì)應(yīng)的偏移量為2,以此類推。將待加密的所有數(shù)據(jù)按照相應(yīng)密鑰對(duì)應(yīng)的偏移量向后循環(huán)偏移,得到密文。
例如:密鑰K=″BCBA″,將第一步得到的數(shù)據(jù)進(jìn)行維吉尼亞密碼加密:
(1)已知柵欄密碼的欄數(shù)N=2,密鑰K=″BCD″,則明文″BASIC″加密后的密文為
CUFBK或“CUFBK”
CUFBK或“CUFBK”
。(2)小峰根據(jù)上述加密算法,設(shè)計(jì)了一個(gè)對(duì)應(yīng)的解密程序,其VB代碼如下,請(qǐng)?jiān)跈M線處填入合適的代碼(解密與加密使用相同的密鑰數(shù)據(jù),密文與密鑰都由大寫字母組成)。
【考點(diǎn)】應(yīng)用程序的試運(yùn)行和保存.
【答案】CUFBK或“CUFBK”
【解答】
【點(diǎn)評(píng)】
聲明:本試題解析著作權(quán)屬菁優(yōu)網(wǎng)所有,未經(jīng)書面同意,不得復(fù)制發(fā)布。
發(fā)布:2024/4/20 14:35:0組卷:6引用:1難度:0.1
相似題
-
1.有如下VB程序段:
執(zhí)行該程序段后,變量c的值是( ?。?/h2>發(fā)布:2024/12/16 5:0:1組卷:1引用:2難度:0.3 -
2.由大寫字母組成的長(zhǎng)度相同的兩個(gè)字符串s1和s2,檢測(cè)各字母的數(shù)量,如“ABDAC”與“AABCD”所含字母數(shù)量一樣,與“AABBC”所含字母數(shù)量不一樣。實(shí)現(xiàn)該功能的VB程序段如下:
填空處的代碼可以由以下部分組成:
①Text2.Text ②val(Text2.Text) ③b(a)=b(a)+1 ④b(a)=b(a)-1 ⑤b(i)<>0⑥b(i)=0
代碼順序正確的是( ?。?/h2>發(fā)布:2024/12/16 9:30:1組卷:3引用:3難度:0.4 -
3.小明用python語言中對(duì)大小為100*100像素的圖像“上.jpg”(如圖所示)進(jìn)行簡(jiǎn)單處理,部分代碼如圖:
程序執(zhí)行后的圖像效果是( ?。?/h2>發(fā)布:2024/12/20 9:30:2組卷:3引用:5難度:0.4
把好題分享給你的好友吧~~