一、選擇題
1.第一個實用的、迄今為止應用最廣的公鑰密碼體制是(A )。
A. RSA B.Elgamal C.ECC D.NTRU
2.一個密碼系統至少由明文、密文、加密算法和解密算法、密鑰五部分組成,而其安全性是由( D)決定的。
A.加密算法 B.解密算法 C.加密算法和解密算法 D.密鑰
3.計算和估計出破譯密碼系統的計算量下限,利用已有的最好方法破譯它所需要的代價超出了破譯者的破譯能力(如時間、空間、資金等資源),那么該密碼系統的安全性是( B)。
A.無條件安全 B.計算安全 C.可證明安全 D.實際安全
4.根據密碼分析者所掌握的分析資料的不同,密碼分析一般可為四類:惟密文攻擊、已知明文攻擊、選擇明文攻擊、選擇密文攻擊,其中破譯難度最大的是(A)。
A.惟密文攻擊 B.已知明文攻擊 C.選擇明文攻擊 F.選擇密文攻擊
5.假設系統中有n個用戶,他們使用對稱加密體制實現保密通信,那么系統中共需要管理( n(n-1)/2)個密鑰,每個用戶需要保存(A )個密鑰。
A.n-1 B.2n C.Cn2 D.n!
6.字母頻率分析法對下面哪種密碼算法最有效。( B)
A.置換密碼 B.單表代換密碼 C.多表代換密碼 D.序列密碼
7.下面哪種密碼算法抵抗頻率分析攻擊能力最強,而對已知明文攻擊最弱。(D )
A.仿射密碼 B.維吉利亞 C.輪轉密碼 D.希爾密碼
希爾密碼: 希爾密碼是多字母代換密碼的一種, 運用基本矩陣論原理的替換密碼,由Lester S. Hill在1929年發明。每個字母當作26進制]數字:A=0, B=1, C=2... 一串字母當成n維向量,跟一個n×n的矩陣相乘,再將得出的結果MOD26。
維吉尼亞密碼: 是使用一系列凱撒密碼組成密碼字母表的加密算法,屬於多表密碼的一種簡單形式。
8.重合指數法對下面哪種密碼算法的破解最有效。(C )
A.置換密碼 B.單表代換密碼 C.多表代換密碼 D.序列密碼
9.維吉利亞(Vigenere)密碼是古典密碼體制比較有代表性的一種密碼,其密碼體制采用的是(C )。
A.置換密碼 B.單表代換密碼 C.多表代換密碼 D.序列密碼
- 16模20的逆元是(D )。
A. 3 B. 4 C. 5 D.不存在
11.下面的描述中哪一條是錯誤的(B )。
A.互信息量等於先驗的不確定性減去尚存的不確定性。
B.互信息量不能為負值。
C.當X表示信道的輸入,Y 表示信道的輸出時,條件熵H(X | Y)表示X未被Y 所泄漏的信息量的均值。
D.任何兩個事件之間的互信息量不可能大於其中任一事件的自信息量。
互信息 是信息論里一種有用的信息度量,它可以看成是一個隨機變量中包含的關於另一個隨機變量的信息量,或者說是一個隨機變量由於已知另一個隨機變量而減少的不肯定性 .
12.計算復雜性是密碼分析技術中分析計算量和研究破譯密碼的固有難度的基礎,算法的運行時間為難解的是( D)。
A.O(1) B.O(n) C.O(n2) D.O(2^n)
13.計算出和估計出破譯它的計算量下限,利用已有的最好的方法破譯該密碼系統所需要的努力超出了破譯者的破譯能力(諸如時間、空間、資金等資源),那么該密碼系統的安全性是( D)。
A.無條件安全 B.實際上的安全C.可證明的安全 D.計算上的安全
14.在( C )年,美國國家標准局NBS把IBM的Tuchman-Meyer方案確定數據加密標准,即
DES。
A.1949 B.1972 C.1977 D.2001
15.在 DES 算法中,如果給定初始密鑰 k,經子密鑰產生器產生的各個子密鑰都相同,則稱該密鑰k為弱密鑰,DES算法弱密鑰的個數為( B)。
A.2 B.4 C.8 D.16
0000 0000 FFFF FFFF
0000 FFFF FFFF 0000
16.差分分析是針對下面那種密碼算法的分析方法。(A )
A.DES B.AES C.RC4 D. MD5
差分分析是一種選擇明文攻擊,其基本思想是:通過分析特定明文差分對相對應密文差分影響來獲得盡可能大的密鑰。它可以用來攻擊任何由迭代一個固定的輪函數的結構的密碼以及很多分組密碼(包括DES),它是由Biham和Shamir於1991年提出的選擇明文攻擊。
17.AES結構由以下四個不同的模塊組成,其中(A )是非線性模塊。
A.字節代換 B.行位移 C.列混淆 .輪密鑰加
18.適合文件加密,而且有少量錯誤時不會造成同步失敗,是軟件加密的最好選擇,這種分組密碼的操作模式是指( D)。
A.電子密碼本模式
B.密碼分組鏈接模式
C.密碼反饋模式
D.輸出反饋模式
19.IDEA 使用的密鑰長度為(C )位。
A.56 B.64 C.128 D.156
- Skipjack是一個密鑰長度為( C)位。
A.56 B.64 C.80 D.128
21.m-序列本身是適宜的偽隨機序列產生器,但只有在(A )下,破譯者才不能破解這個偽隨機序列。
A.惟密文攻擊 B.已知明文攻擊 C.選擇明文攻擊 D.選擇密文攻擊
22.Geffe發生器使用了( C)個LFSR。
A.1 B.2 C.3 D.4
23.Jennings 發生器用了一個復合器來組合( B)個LFSR。
A.1 B.2 C.3 D.4
24.PKZIP 算法廣泛應用於(D )程序。
A.文檔數據加密 B.數據傳輸加密 C.數字簽名 D.文檔數據壓縮
25.A5算法的主要組成部分是三個長度不同的線性移位寄存器,即A,B,C。其中A有(A )
位, B有(C)位, C有(D)位。
A.19 B.20 C.22 D.23
26.SEAL使用了四個(B)位寄存器。
A.24 B.32 C.48 D.56
27.按目前的計算能力,RC4算法的密鑰長度至少應為(C )才能保證安全強度。
A.任意位 B.64位 C.128位 D.256位
28.目前,使用最廣泛的序列密碼是(A )。
A.RC4 B.A5 C.SEAL D.PKZIP
29.下面哪一項不是hash函數的等價提法(A )。
A.壓縮信息函數 B.哈希函數 C.單向散列函數 D.雜湊函數
30.下面那個不是hash函數具有的特性。(B )
A.單向性 B.可逆性 C.壓縮性 D.抗碰撞性
31.現代密碼學中很多應用包含散列運算,而下面應用中不包含散列運算的是(A )。
A.消息機密性 B.消息完整性 C.消息認證碼 D.數字簽名
32.下面哪一項不是hash函數的主要應用(C )。
A.文件校驗 B.數字簽名 C.數據加密 D.鑒權協議
33.MD5算法以( D)位分組來處理輸入文本。
A.64 B.128 C.256 D.512
34.MD5的主循環有(B )輪。
A.3 B.4 C.5 D.8
35.SHA-1接受任何長度的輸入消息,並產生長度為( B)比特的hash值。
A.64 B.160 C.128 D.512
36.分組加密算法(如AES)與散列函數算法(如SHA)的實現過程最大的不同是( D )。
A.分組 B.迭代 C.非線性 D 可逆
37.生日攻擊是針對下面哪種密碼算法的分析方法。(D )
A.DES B.AES C.RC4 D.MD5
38.設 Hash 函數的輸出長度為 nbit,則安全的 Hash 函數尋找碰撞的復雜度應該為( C)。
A.O(P(N)) B.O(2n) C.O(2n-1) D.O(2n/2)
39.MD5 的壓縮函數中, 512bit 的消息被分為 16 塊輸入到步函數,每一塊輸入( B)次。
A.3 B.4 C.5 D.8
40.下列哪個算法不具有雪崩效應。( D)。
A.DES加密 B.序列密碼的生成 C.哈希函數 D.RSA 加密
41.若Alice想向Bob分發一個會話密鑰,采用ElGamal公鑰加密算法,那么Alice應該選用的密鑰是(C )
A.Alice的公鑰 B.Alice的私鑰 C.Bob的公鑰 D.Bob的私鑰
42.設在RSA 的公鑰密碼體制中,公鑰為(e,n)=(13,35),則私鑰d=( B)。
A.11 B.13 C.15 D.17
43.在現有的計算能力條件下,對於非對稱密碼算法Elgamal,被認為是安全的最小密鑰長度
是( D)。
A.128位 B.160位 C.512位 D.1024位
44.在現有的計算能力條件下,對於橢圓曲線密碼算法(ECC),被認為是安全的最小密鑰長度
是( B)。
A.128位 B.160位 C.512位 D.1024位
45.指數積分法(Index Calculus)針對下面那種密碼算法的分析方法。( C)
A.背包密碼體制 B.RSA C.ElGamal D.ECC
46.關於密碼學的討論中,下列( D)觀點是不正確的。
A.密碼學是研究與信息安全相關方面,如機密性、完整性、實體認證和不可否認性等綜合技術
B.密碼學的兩大分支是密碼編碼學和密碼分析學
C.密碼並不是提供安全的單一的手段,而是一組技術
D.密碼學中存在一次一密的密碼體質,它是絕對安全的
47.在一下古典密碼體制中,屬於置換密碼的是( B )
A.移位密碼 B.倒敘密碼 C.仿射密碼 D.PlayFair 密碼
移位:代換密碼
48.一個完整的密碼體制,不包括以下(C )要素。
A.明文空間 B.密文空間 C.數字簽名 D.密鑰空間
49.2000年10月2日,NIST 正式宣布將( B)候選算法作為高級加密標准(AES),該算法是由兩位比利時密碼學着提出的。
A.MARS B.Rijndael C.Twofish D.Bluefish
50.依據所依據的數學難題,除了(A )以外,公鑰密碼體制可以分為以下幾類。
A.模冪運算問題 B.大整數因子分解問題
C.離散對數問題 D.橢圓曲線離散對數問題
51.一個完整的數字簽名過程包括(C )和驗證兩個步驟。
A.加密 B.解密 C.簽名 D.認證
52.密碼學包括哪兩個相互對立的分支(B )
A.對稱加密與非對稱加密 B.密碼編碼學和密碼分析學
C.序列密碼與分組密碼 D.DES與AES
53.加密技術不能提供以下哪種安全服務?(D )
A.認證 B.機密性 C.完整性 D.可用性
54.在密碼學中,需要被變換的原消息被稱為什么?( D)
A.密文 B.算法 C.密碼 D.明文
55.凱撒密碼中,每個字母被氣候第幾位的字母替換?(C )
A.5 B.4 C.3 D.2
56.公元前500年的古希臘人曾使用了一種著名的加密方法,叫什么名字?(A )
A.Scytale密碼 B.凱撒密碼 C.代替密碼 D.置換密碼
57.DES的秘鑰長度是多少Bit?( B)
A.64 B.56 C.128 D.32
58.RSA 使用不方便的最大問題是? (A )
A.產生秘鑰需要強大的計算能力 B.算法中需要大數
C.算法中需要素數 D.被攻擊過很多次
59.ECB指的是?(D )
A.密文鏈接模式 B.密文反饋模式
C.輸出反饋模式 D.電碼本模式
60.公鑰密碼學思想最早是誰提出的?( B)
A.歐拉(Euler) B. Diffie和Hellman C.費馬(Fermat)D.Rivest、Shamir和Adelman
61.在RSA算法中,取P=3,q=11,e=3,則d等於多少( D)
A.33 B.20 C.14 D.7
62.以下各種加密算法中屬於傳統加密算法的是( B)
A.DES加密算法 B.Caesar替代法
C.IDEA 加密算法 D.Diffie-Hellman加密算法
63.以下各種加密算法中屬於對稱加密算法的是(A )
A.DES加密算法 B.Caesar替代法
C.Vigenere加密算法 D.Diffie-Hellman加密算法
64.以下各種加密算法中屬於非對稱加密算法的是(D )
A.DES加密算法 B.Caesar替代法
C. Vigenere加密算法 D.Diffie-Hellman加密算法
65.除了(E )之外,密碼體制主要由以下各部分組成。
A.明文空間 B.密文空間 C.密鑰空間 D.加密算法 E.保密系統 F.解密算法
66.DES屬於對稱加密體制,它所取得迭代次數是(B )
A.8 B.16 C.20 D.32
二、計算題
1、考慮RSA 密碼體制:
①取e=3有何優缺點?取d=3安全嗎?為什么?
e = 3的優點是計算快,因為二進制只有兩個一,缺點是不安全,當M較小時,直接開立方可以求出M, d=3不安全經不起窮舉攻擊
②設n=35,已接獲發給某用戶的密文c=10,並查到該用戶的公鑰e=5,求出明文m.
分解n = 5*7 p = 5 q =7 f(n) = 24 因為e=5 因為ed=1 mod φ(n) 所以d=5
M^e mod n = 10 10^5 mod 35 = 5
2、用維吉尼亞密碼加密明文“Please keep this message in secret”,其中使用的秘鑰為“computer” 試求其密文。
RZQPMXOVGFWCLQVUGMVYBRJGQDTN
3、RSA 算法中n=11413,e=7467,密文是585,利用分解11413=101*113,求明文。
因為n=11413=101*103 所以
因為e = 7467 < 11200 所以e符合要求
又因為 ed = 1 mod φ(n)
所以 d = 3 M=C^d mod n = 585^3 mod 11413 = 6192
4、使加法密碼算法稱為對合運算的密鑰k稱為對合密鑰,以英文為例求出其對合密鑰,並以明文M=WEWILLMEETATMORNING 為例進行加解密,說明其對合性。
因為j =(i + k) mod 26 i=13時為對合密鑰
M = E (D(M) ) = (M+26)%26 = M%26 = M 是對合密鑰
加密:M=W E W I L L M E E T A T M O R N I N G
C=J R J V Y Y Z R R G O G Z B E A V A T
解密: C=J R J V Y Y Z R R G O G Z B E A V A T
M=W E W I L L M E E T A T M O R N I N G
所以是對合的
5、一般而言,對於加法密碼,設明文字母表和密文字母表含有n個字母,n為≥1的正整數,求出其對合密鑰k。
設n為模,若n為偶數,則k=n/2為對合密鑰。若n為奇數,n/2不是整數,故不存在對合密鑰
6、設A=[01,02,03,04]T,B=[b0,b1,b2,b3]T,利用反對數表查表計算AES中的列混淆,求出B。
根據A,寫出A(x)=04x3+03x2+02x+01,於是B(x)=A(x)C(x) mod x4+1,其中
C(x)=03x3+01x2+01x+02。根據式(3-45),寫成矩陣形式:

於是逐一查表計算可得。
7、設g(x)=x4+x2+1,g(x)為GF(2)上的多項式,以其為連接多項式組成線性移位寄存器。畫出邏輯框圖。設法遍歷其所有狀態,並寫出其狀態變遷及相應的輸出序列。

三、簡答
1、簡述AES的秘鑰生成過程。
AES首先將初始密鑰輸入到一個4 * 4的矩陣中,這個4 * 4 矩陣的每一列的4個字節組成一個字,矩陣4列的四個字依次命名為w[0] w[1] w[2] w[3]。它們構成了一個字為單位的數組w.
接着,對w數組擴充40個新列,構成44列擴展密碼數組。
新列以如下遞歸方式產生
1.如果i不是4的倍數,那么i列由以下等式產生
w[i] = w[i-4] 亦或 w[i-1]
2.如果i是4的倍數,那么i列由以下等式產生
w[i] = w[i-4] 亦或 T(w[i-1])
2、對DES和AES進行比較,說明兩者的特點和優缺點。
DES:分組密碼,Feist結構,明文密文64位,有效密鑰56位。有弱密鑰,有互補對稱性。適合硬件實現,軟件實現麻煩。安全。
算法是對合的。
AES:分組密碼,SP結構,明文密文128位,密鑰長度可變≥128位。無弱密鑰,無互補對稱性。適合軟件和硬件實現。安全。
算法不是對合的。
3、在公鑰密碼的密鑰管理中,公開的加密鑰Ke和保密的解密鑰Kd的秘密性、真實性和完整性都需要確保嗎?說明為什么?
①公開的加密鑰Ke:秘密性不需確保,真實性和完整性都需要確保。因為公鑰是公開的,所以不需要保密。但是如果其被篡改或出現錯誤,則不能正確進行加密操作。如果其被壞人置換,則基於公鑰的各種安全性將受到破壞,壞人將可冒充別人而獲得非法利益。
②保密的解密鑰Kd:秘密性、真實性和完整性都需要確保。因為解密鑰是保密的,如果其秘密性不能確保,則數據的秘密性和真實性將不能確保。如果其真實性和完整性受到破壞,則數據的秘密性和真實性將不能確保。
4、簡述公鑰證書的作用?
公鑰證書是一種包含持證主體標識,持證主體公鑰等信息,並由可信任的簽證機構(CA)簽名的信息集合。公鑰證書主要用於確保公鑰及其與用戶綁定關系的安全。公鑰證書的持證主體可以是人、設備、組織機構或其它主體。公鑰證書能以明文的形式進行存儲和分配。任何一個用戶只要知道簽證機構(CA)的公鑰,就能檢查對證書的簽名的合法性。如果檢查正確,那么用戶就可以相信那個證書所攜帶的公鑰是真實的,而且這個公鑰就是證書所標識的那個主體的合法的公鑰。從而確保用戶公鑰的完整性。
5、在保密通信中混淆與擴散有什么區別?請分別舉兩個加密算法示例說明他們使用了混淆與擴散技術。
6、為什么MD5比SHA-1安全?
摘要長度 sha-1摘要長度為160,md5是128
強行攻擊 產生一個報文使摘要等於給定報文的難度 sha-1 2^160 md5 2^128
產生相同摘要的兩個報文難度 sha-1 2^80 md5 2^64
步驟 sha-1 步驟多,處理緩存大
四、分析題
1、在下述站點認證協議中函數f起什么作用?去掉f行不行?為什么?
設A,B是兩個站點,A是發方,B是收方。它們共享會話密鑰Ks ,f是公開的簡單函數。A 認證B是否是他的意定通信站點的協議如下:
- A 產生一個隨機數RN,並用Ks對其進行加密:C=E(RN,Ks),並發C給B。同時A對RN進行f變換,得到f(RN)。
- B收到C后,解密得到RN=D(C,Ks)。B也對RN 進行f變換,得到f(RN),並將其加密成C’=E(f(RN),Ks),然后發C’給A 。
- A 對收到的C’解密得到f(RN),並將其與自己在第①步得到的f(RN)比較。若兩者相等,則A認為B是自己的意定通信站點。否則A 認為B不是自己的意定通
信站點。
去掉f是不行的。如果去掉f,則在第②步的操作不需要密鑰,於是壞人截獲RN=D(C,Ks)后,發給A,A不能察覺C。於是C假冒成果。不去掉f時,在第②步的操作需要密鑰,於是壞人沒有密鑰,不能冒充。
題目
差分分析是一種攻擊迭代密碼體制的選擇明文攻擊方法,所以,對於DES和AES都有一定的攻擊效果(對)
公鑰密碼體制與對稱密碼體制相比有什么有點和不足?
優點:
(1)密鑰的分發相對容易;
(2)密鑰管理簡單;
(3)可以有效地實現數字簽名。
缺點:
(1)與對稱密碼體制相比,非對稱密碼體制加解密速度比較慢;
(2)同等安全強度下,費對稱密碼體制要求的密鑰位數要多一些;
(3)密文的長度往往大於明文長度。
