壹個密碼系統是整個安全系統的壹部分,由五部分組成(M,C,K,E,D):
1、明文空間M:全體明文的集合,明文(Plaintext):偽裝前的原始數據。
2、密文空間C:全體密文的集合,密文(Ciphertext):偽裝後的數據。
3、密鑰空間K:全體密鑰的集合,K = < Ke,Kd >,密鑰(Key):加密和解密分別在加密密鑰和解密密鑰的控制下進行。
4、加密算法集合E,加密變換,ek:M→C,加密(Encryption):偽裝的過程。
5、解密算法集合D,解密變換,dk:C→M,解密(Decryption):去掉密文的偽裝恢復出明文的過程。
加密算法需滿足兩條準則之壹,滿足兩個準則的加密算法稱為計算上安全。
1、破譯密文的代價超過被加密信息的價值。
2、破譯密文所花的時間超過信息的有用期。
信息安全的四個要求、目標:
1、機密性:確保信息在發信方和收信方之間傳遞,而不會被不可信的第三方知道。
2、完整性:保證所接收的消息未經復制、插入、篡改、重排或重放,即保證接收的消息和所發出的消息完全壹樣,對已毀壞的數據進行恢復。
3、認證性:確保接收者能夠確認消息發送者的身份沒有經過篡改。
4、不可否認性:用於防止通信雙方中的某壹方對所傳輸消 息的否認,消息發出後,接收者能夠證明這壹消息的確是由通信的另壹方發出,消息被接收後,發出者能夠證明這壹消息的確已被通信的另壹方接收。
5、可用性:是指授權主體在需要信息時能及時得到服務的能力。
數學基礎
素數與合數定義:整數p是壹個素數, 如果它只能被±p,±1整除。素數的個數是無限的,全體素數的集合記為P。如果整數n不是素數,則它是壹個合數。
模n同余定義:若a mod n= b mod n,則稱整數a和b模n同余。
求最大公因子GCD的Euclidean算法(輾轉相除法):
Step 1: r0 =a ?and r1 =b;
Step 2: r0 =q1r1+r2; r1 =q2r2+r3; …… ;rn-2 = qn-1rn-1+rn; until rn=0 and rn-1 ≠ 0;
Step 3: rn-1 = gcd(a,b)。
中國剩余定理(Chinese Remainder Theorem, CRT):
設 n1, n2, …, nk 為兩兩互素的正整數,gcd(ni,nj)=1(i?j),a1,a2,?…,ak為整數,則同余方程組::
x = a1 mod n1
x = a2 mod n2
……
x = ak mod nk
有模n=n1n2…nk的惟壹解x。
特性:在模n(=n1n2…nk)下可將非常大的數x由壹組小數(a1,a2,…,ak)表達 x →?(a1,a2,…,ak)。
中國古代命題:“韓信點兵”、“孫子定理”、求壹術(沈括)“鬼谷算”(周密)、“隔墻算”(周密)、“剪管術”(楊輝)、“秦王暗點兵”、“物不知數”。中國剩余定理:孫子剩余定理、物不知數、數論的重要命題。
費馬小定理:設p是素數,由於對任意的a(0<a<p),有gcd(a,p)=1,則 a p-1 = 1 mod p。
?
?
古典密碼
密碼可由密鑰的數量分為對稱或私鑰、非對稱或公鑰。
古典密碼是對稱密碼。包括代替密碼(單表代替密碼、多表代替密碼、多名代替密碼)、置換密碼。
?
對稱密碼體系要求:發信者和收信者必須***享相同的密鑰,需要安全信道來分配密鑰,發信者和收信者必須事先有所聯系。
分組密碼
DES缺點:56bits密鑰太短 (窮舉密鑰攻擊) 、軟件實現效率低、3-DES對於小的分組實現速度慢。
AES:128bits。
流密碼
性質:數學性質較好(OTP絕對保密、偽隨機有很長的研究歷史)、加密速度很快(基於 “⊕”)、密鑰流只能用壹次(已知明文攻擊、PRNG的周期應該足夠長)、應用很廣(Network、DVD、移動通信)。
非對稱密碼
Hash函數
數字簽名
簽名者事後不能抵賴自己的簽名;任何其他人不能偽造簽名;數字簽名可由第三方驗證,從而能夠解決通信雙方的爭議。
數字簽名應滿足以下要求:①簽名的產生必須使用發方獨有的壹些信息以防偽造和否認。 ②簽名的產生應較為容易。 ③簽名的識別和驗證應較為容易。 ④對已知的數字簽名構造壹新的消息或對已知的消息構造壹假冒的數字簽名在計算上都是不可行的。