徐亞鳳
(牡丹江大學(xué),黑龍江 牡丹江 157011)
加密就是利用密碼學(xué)的方法(即:加密算法),使用密鑰將明文信息轉(zhuǎn)換成密文,使得無(wú)密鑰者不能識(shí)別信息真實(shí)含義,同時(shí)也不能對(duì)信息進(jìn)行篡改、偽造或破壞。在開(kāi)放的網(wǎng)絡(luò)環(huán)境中,加密對(duì)于通訊安全是非常重要的。信息加密技術(shù)是計(jì)算機(jī)網(wǎng)絡(luò)安全技術(shù)的基礎(chǔ),為實(shí)現(xiàn)信息的保密性、完整性、可用性以及抗抵賴(lài)性提供了豐富的技術(shù)手段,對(duì)計(jì)算機(jī)網(wǎng)絡(luò)安全具有重要意義。常用的信息加密技術(shù)主要有以下三種。
1.1 對(duì)稱(chēng)加密算法。在對(duì)稱(chēng)加密算法中,數(shù)據(jù)發(fā)送方將明文和加密密鑰一起經(jīng)過(guò)特殊加密算法處理后,使其變成密文發(fā)送出去。接收方收到密文后,若想解讀原文,則需要使用發(fā)送方加密用的密鑰及相同算法的逆算法對(duì)密文進(jìn)行解密,才能使其恢復(fù)成可讀明文。該算法中密鑰只有一個(gè),這種密鑰即用于加密,也用于解密,叫做秘密密鑰,這就要求解密方事先必須知道加密密鑰。對(duì)稱(chēng)密鑰加密是加密大量數(shù)據(jù)的一種行之有效的方法。對(duì)稱(chēng)密鑰算法體系包括:1)明文(Plain text):這是原始消息或數(shù)據(jù),作為算法的輸入;2)加密算法(Encryption algorithm):加密算法對(duì)明文進(jìn)行各種替換和轉(zhuǎn)換;3)秘密密鑰(Secret key):秘密密鑰也是算法的輸入;4)密文(Cipher text):這是產(chǎn)生的已被打亂的消息輸出,它取決于明文和秘密密鑰,對(duì)于一個(gè)給定的消息,兩個(gè)不同的密鑰會(huì)產(chǎn)生兩個(gè)不同的密文;5)解密算法(Decryption algorithm):本質(zhì)上是加密算法的反向執(zhí)行,它使用密文和同一密鑰產(chǎn)生原始明文。
對(duì)稱(chēng)加密的安全使用需要有三個(gè)要求:1)需要一個(gè)高強(qiáng)度的加密算法;2)密鑰要足夠復(fù)雜;3)密鑰的傳遞需要一個(gè)安全的方式,也就是要求發(fā)送者要把密鑰通過(guò)安全的方式告訴接收者,不能讓第三方知道。
對(duì)稱(chēng)密鑰的主要優(yōu)點(diǎn)在于速度快,通常比非對(duì)稱(chēng)密鑰快100 倍以上,而且可以方便地通過(guò)硬件實(shí)現(xiàn)。其主要缺點(diǎn)在于密鑰的管理復(fù)雜和缺乏抗抵賴(lài)性。由于每對(duì)通信者之間都需要一個(gè)不同的密鑰,N 個(gè)人通信需要n(n-1)/2 密鑰,同時(shí)如何安全的傳遞秘密密鑰給信息接收方成為最大的問(wèn)題,并且由于沒(méi)有簽名機(jī)制,因此也不能實(shí)現(xiàn)抗抵賴(lài)問(wèn)題,即通信雙方都可以否認(rèn)發(fā)送或接收過(guò)的信息。
1.2 非對(duì)稱(chēng)算法。非對(duì)稱(chēng)算法使用兩個(gè)密鑰:一個(gè)公鑰和一個(gè)私鑰,這兩個(gè)密鑰在數(shù)學(xué)上是相關(guān)的。在公鑰加密中,公鑰可在通信雙方之間公開(kāi)傳遞,或在公用儲(chǔ)備庫(kù)中發(fā)布,但相關(guān)私鑰是保密的。只有使用私鑰才能解密公鑰加密的數(shù)據(jù)。使用私鑰加密的數(shù)據(jù)只能用公鑰解密。與對(duì)稱(chēng)密鑰加密相似,公鑰加密也有許多種算法。然而,對(duì)稱(chēng)密鑰和公鑰算法在設(shè)計(jì)上并無(wú)相似之處。可在程序內(nèi)部使用一種對(duì)稱(chēng)算法替換另一種,而變化卻不多,因?yàn)樗鼈兊墓ぷ鞣绞绞窍嗤摹6硪环矫?,不同公鑰算法的工作方式卻完全不同,因此它們不可互換。非對(duì)稱(chēng)密鑰算法體系包括:1)明文:它是可讀的消息或者數(shù)據(jù),用作算法的輸入;2)加密算法:對(duì)明文進(jìn)行各種形式的變換;3)公鑰和私鑰:它們是被選擇的一對(duì)密鑰,如果一個(gè)密鑰用于加密,則另一個(gè)密鑰用作解密。4)密文:它是輸出的混亂的消息,取決于明文和密鑰。對(duì)于給定的消息,兩個(gè)不同的密鑰將產(chǎn)生兩個(gè)不同的密文。
非對(duì)稱(chēng)密鑰算法的主要優(yōu)勢(shì)在于密鑰能夠公開(kāi),由于用作加密的密鑰不同于用作解密的密鑰,因而解密密鑰不能根據(jù)加密密鑰推算出來(lái),所以可以公開(kāi)加密密鑰,主要用于數(shù)字簽名。其主要局限就是速度,實(shí)際上,通常僅在關(guān)鍵時(shí)刻才使用公鑰算法,如在實(shí)體之間交換對(duì)稱(chēng)密鑰時(shí),或者在簽署一封郵件的散列時(shí)。所以,對(duì)稱(chēng)和非對(duì)稱(chēng)密鑰算法通常結(jié)合使用,用于密鑰加密和數(shù)字簽名,即實(shí)現(xiàn)安全又能優(yōu)化性能。
1.3 散列算法。又稱(chēng)哈希算法(HASH),就是把任意長(zhǎng)度的輸入,通過(guò)散列算法,變成固定長(zhǎng)度的輸出,該輸出就是散列值或信息摘 要 (HMAC,Hash Message Authentication Code)。哈希算法是一種壓縮映射,通常HASH 算法的輸入空間遠(yuǎn)大于輸出空間。數(shù)學(xué)表述為:h=H(M),其中:H()代表單向散列函數(shù),M 代表任意長(zhǎng)度明文,h 代表固定長(zhǎng)度散列值。哈希加密并非用于加強(qiáng)信息的保密性,因?yàn)樵贖ASH 算法中,不同的輸入可能會(huì)散列成相同的輸出,要從散列值來(lái)唯一的確定輸入值理論上是不可能的。
在通訊的過(guò)程中,數(shù)據(jù)發(fā)送方通常對(duì)數(shù)據(jù)進(jìn)行HASH 計(jì)算得到一個(gè)HASH 值,并對(duì)該HASH 值進(jìn)行加密,并將其與數(shù)據(jù)一同發(fā)送出去,接收方收到數(shù)據(jù)后對(duì)數(shù)據(jù)進(jìn)行HASH 計(jì)算,并比較收到的HASH 值,如果相同則表示數(shù)據(jù)沒(méi)有損壞或被篡改。哈希加密是通信的雙方通過(guò)對(duì)比各自的哈希值,從而判斷信息是否變更的方法,可以運(yùn)用在信息完整性的驗(yàn)證中。哈希加密的另一種用途是簽名文件。
2.1 數(shù)字簽名(Digital Signature)?;诠€密碼體制和私鑰密碼體制都可以獲得數(shù)字簽名,目前主要是基于公鑰密碼體制的數(shù)字簽名,包括普通數(shù)字簽名和特殊數(shù)字簽名。普通 數(shù) 字 簽 名 算 法 有 RSA、ElGamel、Fiat-Shamir、Guillou -Quisquarter、Schnorr、Ong -Schnorr-Shamir 數(shù)字簽名算法、Des/DSA,橢圓曲線數(shù)字簽名算法和有限自動(dòng)機(jī)數(shù)字簽名算法等。特殊數(shù)字簽名有盲簽名、代理簽名、群簽名、不可否認(rèn)簽名、公平盲簽名、門(mén)限簽名、具有消息恢復(fù)功能的簽名等。
數(shù)字簽名能夠?qū)崿F(xiàn):1)接收者能夠核實(shí)發(fā)送這對(duì)報(bào)文的簽名;2)發(fā)送方事后不能抵賴(lài)對(duì)報(bào)文的簽名;3)任何人不能偽造對(duì)報(bào)文的簽名;4)保證數(shù)據(jù)的完整性,防止截獲者在文件中加入其他信息;5)對(duì)數(shù)據(jù)和信息的來(lái)源進(jìn)行保證,以保證發(fā)件人的身份;6)數(shù)字簽名有一定的處理速度,能夠滿(mǎn)足所有的應(yīng)用需求。
2.2 數(shù)字證書(shū)。隨著網(wǎng)絡(luò)上商業(yè)應(yīng)用迅速發(fā)展,如網(wǎng)上銀行、支付寶等電子商務(wù)應(yīng)用對(duì)網(wǎng)絡(luò)安全和網(wǎng)絡(luò)信用的要求越來(lái)越高,電子交易行為隨處可見(jiàn)。為了確保交易的順利進(jìn)行,必須在互聯(lián)網(wǎng)中建立并維護(hù)一種可以信任的環(huán)境和機(jī)制。為了應(yīng)對(duì)這種對(duì)安全的需求,世界各國(guó)對(duì)其進(jìn)行了多年的研究,初步形成了一套完整的Internet 安全解決方案,即目前被廣泛采用的公鑰基礎(chǔ)設(shè)施技術(shù)(PKI,Public Key Infrastructure)。
總之,加密技術(shù)是信息安全的基本技術(shù),在網(wǎng)絡(luò)中的使用也越來(lái)越廣泛。密碼技術(shù)的發(fā)展將滲透到數(shù)字信息的每一個(gè)角落,只有將信息加密技術(shù)與訪問(wèn)控制技術(shù)、網(wǎng)絡(luò)監(jiān)控技術(shù)等相結(jié)合,才能為網(wǎng)絡(luò)通訊提供更有效的安全保護(hù)措施。
[1]何文強(qiáng).淺談數(shù)據(jù)加密技術(shù)的應(yīng)用和方法[J].科技信息,2010.17.
[2]龔靜.淺談網(wǎng)絡(luò)安全與信息加密技術(shù)[J].華南金融電腦,2005(6).