天天看點

網絡安全基礎(九)

1.私鑰和密鑰之間有什麼差別?

正确答案:

答:在傳統加密中使用的密鑰通常稱為密鑰。引用用于公鑰加密的兩個密鑰作為公鑰和私鑰

2.公鑰密碼系統的基本組成元素是什麼?

正确答案:

答:明文:這是輸入到算法中的可讀消息或資料。加密算法:加密算法對明文執行各種轉換。公鑰和私鑰:這是一對已標明的密鑰,如果其中一個用于加密,另一個用于解密。加密算法執行的确切轉換取決于作為輸入提供的公鑰或私鑰。密文:這是作為輸出産生的加擾消息。這取決于明文和密鑰。對于給定的消息,兩個不同的密鑰将産生兩個不同的密文。解密算法:該算法接受密文和比對密鑰,生成原始明文。

3.列舉并簡要說明公鑰密碼系統的三種應用。

正确答案:

答:加密/解密:發件人使用收件人的公鑰加密郵件。

數字簽名:發送者用其私鑰“簽名”一條消息。簽名是通過應用于消息或作為消息函數的小資料塊的加密算法實作的。

密鑰交換:雙方合作交換一個會話密鑰。可能有幾種不同的方法,涉及一方或雙方的私鑰。

4.Diffie-Hellman密鑰交換

正确答案: 其目的就是使得兩個使用者能夠安全地交換密鑰,供以後加密消息時使用。該算法本身局限于密鑰交換。算法的有效性依賴于計算離散對數的困難性

5.私鑰

正确答案:

私鑰就是自己的,必須非常小心儲存,最好加上密碼,私鑰是用來解密/簽章,首先就Key的所有權來說,私鑰隻有個人擁有。公鑰與私鑰的作用是:用公鑰加密的内容隻能用私鑰解密。

6.公鑰

正确答案:

公鑰就是給大家用的,你可以通過電子郵件釋出,可以通過網站讓别人下載下傳,公鑰其實是用來加密/驗章用的,用私鑰加密的内容隻能用公鑰解密。

7.公鑰密碼

正确答案:

公鑰系統特征:使用具有兩個密鑰的算法,其中一個密鑰為私人所有,另一個密鑰是公共可用的。應用中,發送者要麼使用發送者的私鑰,要麼使用接收者的公鑰,或者兩個都使用,進而實作某種類型的加密函數。

8.RSA

正确答案:

RSA方案從1977年起便占據了絕對的統治地位,成為最廣泛接受和實作的通用公鑰加密方法。算法的安全性依賴于大整數因子分解的困難性RSA是分組密碼,對于某個n,它的明文和密文是0~n-1之間的整數。

9.秘密密鑰

正确答案:

傳統密碼算法中使用的密鑰被特别地稱為(秘密)密鑰。用于公鑰密碼的兩個密鑰被稱為公鑰和私鑰。私鑰總是保密的,但仍然被稱為私鑰而不是密鑰。

10.密鑰交換

正确答案:

其目的就是使得兩個使用者能夠安全地交換密鑰,供以後加密消息時使用。

11.現在考慮相反的問題;利用加密算法構造一個單向散列函數。考慮使用已知密鑰的RSA算法。按照下列方法處理順序組成的資料塊:加密第一個資料塊,将結果與第二個資料塊異或,然後再加密,依次類推。試說明該方案處殚下列問題并不安全。給定某個由兩資料塊B1和B2組成的消息,且它的散列函數為:

RSAH(B1⊕B2)=RSA(RSA(B1)⊕B2)

對于任意給定的資料塊C1,選擇C2使RSAH(C1,C2)=RSAH(B1, B2)。是以該散列函數不能滿足抗弱碰撞性。

正确答案:

答:有兩個塊消息B1,B2及其散列RSAH(B1,B2)。 下面的攻擊将有效。

選擇任意的C1并選擇使:C2=RSA(C1)⊕RSA(B1)⊕B2 然後RSA(C1)⊕C2 =

RSA(C1)⊕RSA(C1)⊕RSA(B1)⊕B2 = RSA(B1)⊕B2 是以RSAH(C1,C2)=RSA[RSA(C1)⊕C2)] = RSA[RSA(B1)⊕B2]

= RSAH(B1, B2)

12.對下列值使用RSA算法進行加密和解密:

a. p=3; q=11, e=7; M=5(M表示明文)

b. p=5; q=11, e=3; M=9

c. p=7; q=11, e=17;M=8

d. p=11; q=13, e=11;M=7

e. p=17; q=31, e=7:M=2

提示:解密并不像你想象的那麼困難,可以使用一些技巧。

正确答案:

答:a. n = 33; ϕ(n) = 20; d = 3; C = 26. b. n = 55; ϕ (n) = 40; d = 27;

C = 14. ci n = 77; ϕ (n) = 60; d = 53; C = 57. d. n = 143; ϕ (n) =

120; d = 11; C = 106. e. n = 527; ϕ (n) = 480; d = 343; C = 128. For

decryption, we have 128343 mod 527 = 128256 x 12864 x 12816 x

1284 x 1282 x 1281 mod 527

= 35 x 256 x 35 x 101 x 47 x 128 = 2 mod 527

= 2 mod 257

13.在使用RSA的公鑰系統中,你可截獲發送給使用者的密文C=10,并且已知他的公鑰

是e=5,n=35。請破解出明文M是什麼?

正确答案:

答:M=5

14.對于RSA系統,某使用者的公鑰為:e=31,n=3599。該使用者的私鑰是什麼?

正确答案:

答:d = 3031

15.假設有一使用RSA算法編碼的資料塊集合,但是沒有私鑰。設n=pq,e是公鑰。假

設某人告訴我們這些明文塊之一與n有公共因子。這對我們有幫助嗎?

正确答案:

答:是的。 如果一個明文塊L有一個逗号對因子與n,模n,那麼編碼的塊也将有一個逗号對因子與n,模n。因為我們編碼的塊小于PQ,這個因子

必須是p或q,明文塊must是p或q的倍數。 我們可以測試每個塊的原始性。 如果為素數,則為p或q。

在這種情況下,我們分成n來找到另一個因素。 如果不是黃金 我們對它進行因子分解,并嘗試将因子作為n的約數。

16.考慮如下的方案:

a.選擇一個奇數E。

b.選擇兩個素數P和Q,使(P-1)(Q-1)-1恰好被E整除。

c.P乘以Q得到N。

d.計算D=[(P-1)(Q-1)(E-1)+1]/E

問:該方案與RSA等價嗎?解釋原因。

正确答案:

證明:DE mod ϕ(N)=(P-1)(Q-1)(E-1)+1 mod ϕ(N)=ϕ(N)(E-1)+1 mod ϕ(N)=1

是以:M=CD mod N = (ME)D mod N = MED mon N=M

17.假設Bob使用模n很大的RSA加密系統。該模值在合理的時間内不能進行因式分解。假設Alice給Bob加密發送一條英文消息,加密之前先将消息每個字母轉換成0~25的整數(A->0,…,Z->25),然後使用具有大的e,n值的RSA分别加密每個數,這種方法安全嗎?如果不安全,給出對這種加密方案最有效的攻擊。

正确答案:

答: 考慮一組字母字元{A,B,…,Z}。 對應的整數,表示字母中每個字母字元的位置,形成一組消息塊值SM={0,1,2,.2 5}。

相應的密文塊值SC={0eModN,1eModN,…,25eModN},可以由每個人根據Bob的公鑰來計算。

是以,對問題中描述的方案的最有效的攻擊是為M的所有可能值計算MeModN,然後建立一個以密文作為索引的查找表和COR

響應明文作為表中适當位置的值。

繼續閱讀