中間設(shè)備
- 物理層:轉(zhuǎn)發(fā)器
- 數(shù)據(jù)鏈路層:網(wǎng)橋或者橋接器
- 網(wǎng)絡(luò)層:路由器
- 網(wǎng)絡(luò)層以上:網(wǎng)關(guān)
網(wǎng)絡(luò)安全
一、數(shù)字加密技術(shù)
- 單鑰密碼體制/對稱密碼體制
指加密密鑰和解密密鑰為同一密鑰的密碼體制,因此通信雙方必須共同持有該密鑰。
DES、AES是一種對稱密碼體制 - 雙鑰密碼體制/非對稱密碼體制/公開密鑰密碼體制
指加密密鑰和解密密鑰為兩個(gè)不同密鑰的密碼體制;這兩個(gè)密鑰之間存在著互相依存關(guān)系,即其中任一個(gè)密鑰加密的信息只能用另一個(gè)密鑰進(jìn)行解密。
RSA、DSA是一種公鑰密碼體制。 - 總結(jié):
對稱密碼和公鑰密碼都需要保證密鑰的安全,不同之處在于密鑰的管理和分發(fā)上面。在對稱密碼中,必須要有一種可靠的手段將加密密鑰(同時(shí)也是解密密鑰)告訴給解密方;而在公鑰密碼體制中,這是不需要的。解密方只需要保證自己的私鑰的保密性即可,對于公鑰,無論是對加密方而言還是對密碼分析者而言都是公開的,故無需考慮采用可靠的通道進(jìn)行密碼分發(fā)。這使得密鑰管理和密鑰分發(fā)的難度大大降低了。 - 分清概念:加密和認(rèn)證
加密是將數(shù)據(jù)資料加密,使得非法用戶即使取得加密過的資料,也無法獲取正確的資料內(nèi)容。其重點(diǎn)在于數(shù)據(jù)的安全性。
身份認(rèn)證是用來判斷某個(gè)身份的真實(shí)性,確認(rèn)身份后,系統(tǒng)才可以依不同的身份給予不同的權(quán)限。其重點(diǎn)在于用戶的真實(shí)性。
兩者的側(cè)重點(diǎn)是不同的。 - 摘要算法
摘要算法,又叫作Hash算法或散列算法,是一種將任意長度的輸入濃縮成固定長度的字符串的算法(不同算法散列值長度不一樣),注意是“濃縮”而不是“壓縮”,因?yàn)檫@個(gè)過程是不可逆的。它的特點(diǎn)是:
a) 不同內(nèi)容的文件生成的散列值一定不同;相同內(nèi)容的文件生成的散列值一定相同。由于這個(gè)特性,摘要算法又被形象地稱為文件的“數(shù)字指紋”。
b) 不管文件多?。ɡ缰挥幸粋€(gè)字節(jié))或多大(例如幾百GB),生成的散列值的長度都相同。
二、數(shù)字簽名與數(shù)字信封
公鑰密碼體制在實(shí)際應(yīng)用中包含數(shù)字簽名和數(shù)字信封兩種方式
- 數(shù)字簽名
指用戶用自己的【私鑰】對原始數(shù)據(jù)的哈希摘要進(jìn)行加密所得的數(shù)據(jù)。數(shù)字簽名定義兩種互補(bǔ)的運(yùn)算:一個(gè)用于簽名,另一個(gè)用于驗(yàn)證。私鑰簽名,公鑰驗(yàn)證。
簽名:發(fā)送方用特殊的hash算法,由明文中產(chǎn)生固定長度的【摘要】,然后利用自己的私鑰對形成的摘要進(jìn)行加密,這里加密后的數(shù)據(jù)就是數(shù)字簽名。
驗(yàn)證:接受方利用發(fā)送方的公鑰解密被加密的摘要得到結(jié)果A,然后對明文也進(jìn)行hash操作產(chǎn)生摘要B.最后,把A和B作比較。此方式既可以保證發(fā)送方的身份正確性,又可以保證數(shù)據(jù)在傳輸過程中不會(huì)被篡改。
數(shù)字簽名(Digital Signature)技術(shù)是不對稱加密算法的典型應(yīng)用。保證信息傳輸?shù)耐暾?、發(fā)送者的身份認(rèn)證、防止交易中的抵賴發(fā)生。 - 數(shù)字信封
數(shù)字信封的功能類似于普通信封。普通信封在法律的約束下保證只有收信人才能閱讀信的內(nèi)容;數(shù)字信封則采用密碼技術(shù)保證了只有規(guī)定的接收人才能閱讀信息的內(nèi)容。
數(shù)字信封中采用了單鑰加密體制和公鑰密碼體制。信息發(fā)送者首先利用隨機(jī)產(chǎn)生的【對稱密碼】加密信息(因?yàn)榉菍ΨQ加密技術(shù)的速度比較慢),再利用接收方的【公鑰】加密對稱密碼,被公鑰加密后的對稱密鑰被稱之為數(shù)字信封。在傳遞信息時(shí),信息接收方要解密信息時(shí),必須先用自己的私鑰解密數(shù)字信封,得到對稱密碼,才能利用對稱密碼解密所得到的信息。
數(shù)字信封既發(fā)揮了對稱加密算法速度快、安全性好的優(yōu)點(diǎn),又發(fā)揮了非對稱加密算法密鑰管理方便的優(yōu)點(diǎn)。
三、應(yīng)用示例
為了保證信息傳送的真實(shí)性、完整性和不可否認(rèn)性,需要對要傳送的信息進(jìn)行數(shù)字加密和數(shù)字簽名。其傳送過程如下:
發(fā)送者A:
1) A準(zhǔn)備要傳送的數(shù)字信息(明文)
2) A對數(shù)字信息(明文)進(jìn)行哈希(hash)運(yùn)算,得到一信息摘要。
3) A用自己的【私鑰(SK)】對信息摘要進(jìn)行加密得到A的數(shù)字簽名,并將其附在數(shù)字信息上。(數(shù)字簽名)
4) A隨機(jī)產(chǎn)生一個(gè)加密鑰(DES密鑰),并用此密鑰對要發(fā)送的信息(明文)進(jìn)行加密,形成密文。(對稱加密)
5) A用B的【公鑰(PK)】對剛才隨機(jī)產(chǎn)生的加密密鑰進(jìn)行加密,將加密后的DES密鑰連同密文一起傳送給B。(數(shù)字信封)
接收者B:
1) B收到A傳送過來的密文和加過密的DES密鑰,先用自己的私鑰(SK)對加密的DES密鑰進(jìn)行解密,得到DES密鑰。
2) B然后用DES密鑰對受到的密文進(jìn)行解密,得到明文的數(shù)字信息,然后將DES密鑰拋棄(即DES密鑰作廢)。
3) B用A的公鑰(PK)對A的數(shù)字簽名進(jìn)行解密,得到信息摘要。
4) B用相同的has算法對收到的明文再進(jìn)行一次hash運(yùn)算,得到一個(gè)新的信息摘要。
5) B將收到的信息摘要和新生成的信息摘要進(jìn)行比較,如果一致,說明收到的信息沒有被修改過。