【文章內(nèi)容簡(jiǎn)介】
是美國NIST和NSA共同設(shè)計(jì)的安全散列算法(Secure Hash Algorithm,SHA),用于數(shù)字簽名標(biāo)準(zhǔn)(Digital Signature Standard,DSS)。SHA的修改版SHA1于1995年作為美國聯(lián)邦信息處理標(biāo)準(zhǔn)公告(FIPS PUB 1801)發(fā)布。SHA1的輸入長度為小于2^64位的消息,輸出為160位的消息摘要,具體過程為:填充消息 初始化緩沖區(qū) 按512位的分組處理輸入消息。 輸出。 消息認(rèn)證碼利用HMAC函數(shù)計(jì)算數(shù)據(jù)text的MAC過程圖(課本P66 ) 公鑰密碼體制采用了一對(duì)密鑰,加密密鑰和解密密鑰,且從解密密鑰推出加密密鑰是不可行的。這一對(duì)密鑰中,一個(gè)可以公開,稱為公鑰,另一個(gè)為用戶專用(私鑰) 公鑰密碼系統(tǒng)可用于以下三個(gè)方面:通信保密:此時(shí)將公鑰作為加密密鑰,私鑰作為解密密鑰,則通信雙方不需要交換密鑰就可以實(shí)現(xiàn)保密通信。數(shù)字簽名:將私鑰作為加密密鑰,公鑰作為解密密鑰,則可實(shí)現(xiàn)由一個(gè)用戶對(duì)數(shù)據(jù)加密而多個(gè)用戶解讀——數(shù)字簽名密鑰交換:通信雙方交換會(huì)話密鑰,以加密通信雙方后續(xù)連接所傳輸?shù)南?。每次邏輯交換使用一把新的會(huì)話密鑰,用完丟棄。 RSA密碼系統(tǒng) RSA密碼系統(tǒng)的安全性是基于大數(shù)分解的困難性。 DiffieHellman密鑰交換 DiffieHellman算法能夠用于密鑰分配,但不能用于加密或者解密信息。 如果Alice和Bob想在不安全的信道上交換密鑰,他們可以采用步驟如下 Alice Bob產(chǎn)生隨機(jī)數(shù)Y計(jì)算Y=a^y mod p計(jì)算K’=X^y mod p產(chǎn)生隨機(jī)數(shù)x計(jì)算 X=a^x mod p計(jì)算K=Y^x mod p X Y 上圖即是:DiffieHellman密鑰交換圖PS: k和k’ 是恒等的,因?yàn)閗 = Y^x mod p = (a^x)^y mod p = X^y mod p = k’ 中間人攻擊 攻擊的是認(rèn)證性。 數(shù)字簽名 數(shù)字簽名應(yīng)滿足的條件:數(shù)字簽名是可以被確認(rèn)的,即收方可以確認(rèn)或者證實(shí)簽名確實(shí)是由發(fā)方簽名的。簽名是不可偽造的,即收方和第三方都不能偽造簽名。簽名不可重用,即簽名是消息(文件)的一部分,不能把簽名移到其他消息(文件)上。簽名是不可抵賴的,即發(fā)方不能否認(rèn)他所簽發(fā)的消息。第三方可以確認(rèn)首發(fā)雙方之間的消息傳送但不能篡改消息。第五章看看1專用網(wǎng)(Virtual Private Networks,VPN)提供了一種在公共網(wǎng)絡(luò)上實(shí)現(xiàn)網(wǎng)絡(luò)安全保密通信的方法。VPN同現(xiàn)有網(wǎng)絡(luò)基礎(chǔ)設(shè)施部件相比,除了安全特性以外,主要有以下幾個(gè)不同點(diǎn): 虛擬(Virtual) 專用(Private)網(wǎng)絡(luò)(Network)VPN協(xié)議 VPN是基于一種稱為隧道(Tunneling)的技術(shù)。VPN隧道對(duì)要傳輸?shù)臄?shù)據(jù)用IP協(xié)議進(jìn)行封裝,這樣可以使數(shù)據(jù)穿越公共網(wǎng)絡(luò)(通常指Internet) 三種最常見的也是最為廣泛實(shí)現(xiàn)的隧道技術(shù)是:點(diǎn)對(duì)點(diǎn)隧道協(xié)議(PointtoPoint Tunneling P