前言:想要寫出一篇引人入勝的文章?我們特意為您整理了計算機網(wǎng)絡(luò)安全中密碼學(xué)的作用范文,希望能給你帶來靈感和參考,敬請閱讀。
摘要:隨著計算機技術(shù)的發(fā)展和信息社會的到來,通過網(wǎng)絡(luò)交換信息已經(jīng)成為人們主要交換信息的方式,所以信息安全就變得尤為重要。在古代,密碼學(xué)常常用于軍事、政治等機密性部門之中。然而,由于現(xiàn)代計算機技術(shù)的不斷發(fā)展,我們許多使用的計算機軟件的安全需要依賴于密碼技術(shù)。因此,密碼學(xué)逐步的發(fā)展成為一個綜合性的學(xué)科,它涉及的學(xué)科非常之多,與信息論、數(shù)學(xué)、計算機科學(xué)等都有著緊密的聯(lián)系。密碼學(xué)在保障網(wǎng)絡(luò)信息的完整性、真實性和機密性發(fā)揮了及其大的作用,這些方面都大大提升了網(wǎng)絡(luò)的安全性。本文主要闡述了密碼學(xué)的基本理論和它的技術(shù)應(yīng)用,希望能為研究人員提供一定的幫助。
關(guān)鍵詞:密碼學(xué);網(wǎng)絡(luò)安全;計算機;加密;解密
引言
密碼學(xué)是一門研究如何編制和破譯密碼的學(xué)科。在現(xiàn)代,密碼學(xué)技術(shù)已經(jīng)應(yīng)用到了各個領(lǐng)域之中,除了保護信息的機密性之外,還包括數(shù)字簽名、安全協(xié)議、權(quán)限管理和身份鑒別等方面的技術(shù)。它是實現(xiàn)網(wǎng)絡(luò)信息安全的關(guān)鍵技術(shù)之一,因此,它經(jīng)常作為計算機的一個分支學(xué)科。隨著計算機技術(shù)的不斷發(fā)展和信息時代的到來,各種計算機軟件應(yīng)用逐漸的出現(xiàn)在了人們的日常生活之中,例如電子商務(wù)、電子金融、電子政務(wù)等,這些都是必須要保證信息安全的網(wǎng)絡(luò)系統(tǒng),密碼學(xué)也在網(wǎng)絡(luò)安全應(yīng)用中得到不斷地發(fā)展。因此,密碼學(xué)也成為了網(wǎng)絡(luò)安全中的一門基礎(chǔ)學(xué)科。
1關(guān)于密碼學(xué)的發(fā)展簡介
密碼學(xué)的發(fā)展源遠流長,甚至有幾千年的歷史。發(fā)展階段主要分為三個時期:古典密碼時期、近代密碼時期和現(xiàn)代密碼時期。古典密碼時期就長達數(shù)千年,雖然這一時期的密碼形式多樣,但是多為簡單的手工書寫,其中的加密方法包括文字的替換、隱寫術(shù)等等。近代密碼時期,大多用無線電技術(shù)來實現(xiàn),在近代密碼時期,出現(xiàn)了無線電密碼技術(shù)。在那時,專門用來加密密碼的輪轉(zhuǎn)機雖然大大提高了加密速度,但是產(chǎn)生的密鑰數(shù)量卻是有限的,很容易就被破解掉。因此,密碼技術(shù)在近代還不能稱之為一門真正意義上的學(xué)科。因此,也有學(xué)者認為近代密碼時期和古典密碼時期應(yīng)該合為同一個時期。在近代時期,幾乎沒有過關(guān)于密碼學(xué)相關(guān)的文獻,直到香農(nóng)發(fā)表的一篇論文。他將信息論這一概念引入密碼學(xué)之中,引入了不確定性、唯一解距離等計算方法,為現(xiàn)代密碼學(xué)的發(fā)展打下了堅實的基礎(chǔ)。此后,美國國家標(biāo)準(zhǔn)局了DES(數(shù)據(jù)加密標(biāo)準(zhǔn)),并應(yīng)用于多個部門。隨后,著名的密碼學(xué)家迪菲和赫爾曼首次提出了RAS體制(公鑰密碼體制),打開了密碼學(xué)這門學(xué)科的新領(lǐng)域。由于計算機技術(shù)的飛速發(fā)展,過去人們認為足夠安全的DES算法,已經(jīng)不夠安全了。于是,比利時的幾位密碼學(xué)家提出了新的AES算法,取代了從前的DES算法。此后,密碼學(xué)的研究逐漸走向了高潮,在信息時代的今天,人們更是離不開密碼學(xué)技術(shù)。
2密碼學(xué)的基本理論
2.1密碼學(xué)的基本要素
密碼學(xué)的五大要素為:消息空間(M)、密文空間(C)、密鑰空間(K)、加密算法(E)和解密算法(D),以上五個元素成為密碼學(xué)的一個密碼系統(tǒng)。消息空間,又稱為銘文空間,就是還沒有進行加密處理的消息集合。密文空間同理,指經(jīng)過加密處理的消息集合。密鑰又分為加密密鑰和解密密鑰,它通常是一個可變的參數(shù),用于解開加密信息或者偽裝信息的一把“鑰匙”。密鑰根據(jù)一定的規(guī)則和算法,也就是加密算法(解密算法),把明文(密文)轉(zhuǎn)換成密文(明文)。簡單來說,在密碼學(xué)中,我們認為這個密碼系統(tǒng)是不是足夠安全,要看這個密碼系統(tǒng)是否容易被破解。如果密碼破譯者能夠直接根據(jù)密文推算出明文或者密鑰,或是密碼攔截者可以直接獲取這個密碼系統(tǒng)的密鑰序列,那么我們就稱這個密碼系統(tǒng)是不夠安全的。另外,一個安全的密碼系統(tǒng)還應(yīng)該滿足的是,消息接收者能夠得到完整并且真實的消息,加密和解密的算法也應(yīng)該相對于簡單輕便。
2.2密碼學(xué)的基本功能
密碼學(xué)的主要目的就是隱藏信息的真正含義,而不是抹去信息本身。早期的密碼學(xué)僅僅是可以對文字進行加解密操作,但隨著科技技術(shù)的發(fā)展,如今已經(jīng)可以對語音、圖像等進行加解密操作了。密碼學(xué)對信息提供的保護主要有四個方面:機密性、數(shù)據(jù)完整性、鑒別和不可否認性。
2.2.1機密性只允許被授權(quán)的用戶查看信息內(nèi)容,非授權(quán)用戶可以查看加密厚的信息,但是不能破解出其中的真正含義。2.2.2數(shù)據(jù)完整性指數(shù)據(jù)或信息在傳遞過程中不被受到非授權(quán)的修改或破壞。非授權(quán)修改包括對信息的篡改、刪除、插入等,通常通過數(shù)據(jù)簽名、數(shù)據(jù)加密等技術(shù)來保證對數(shù)據(jù)的完整性。另外,用戶本身也需要能夠檢測出非法操作的能力。
2.2.3鑒別鑒別,包括對用戶身份和數(shù)據(jù)來源的識別。對于一次安全的通信過程,通信雙方必須都為預(yù)期的身份,這是所說的身份的識別。即非法用戶不能夠冒充通信的對方去獲取信息,雙方能夠?qū)Ψ降纳矸葸M行鑒別。對于數(shù)據(jù),能夠由所預(yù)期的實體發(fā)送或者接受,這就是對數(shù)據(jù)來源的識別??梢酝ㄟ^數(shù)據(jù)加密、數(shù)字簽名等技術(shù)來保證這種鑒別服務(wù),從提供數(shù)據(jù)鑒別這方面的服務(wù)來說,密碼學(xué)的鑒別服務(wù)也包括了數(shù)據(jù)完整性服務(wù)。
2.2.4不可否認性發(fā)送方不能否認自己發(fā)送信息的行為。接收方收到信息后,也不能夠否認自己接收到了發(fā)送方的信息,即密碼學(xué)的不可否認性??梢酝ㄟ^對稱加密算法或者非對稱加算法來實現(xiàn)這服務(wù)。密碼學(xué)實質(zhì)上就是研究如何讓信息具有機密性、數(shù)據(jù)完整性、可鑒別性和不可否認性的一門學(xué)科。它主要包含兩個分支:密碼編碼學(xué)和密碼分析學(xué)。密碼編碼學(xué)就是研究安全的密碼協(xié)議。在密碼學(xué)中,除了加密算法之外,密碼協(xié)議也一樣重要。密碼協(xié)議就是指使用密碼技術(shù)的通信協(xié)議,用來保證數(shù)據(jù)的機密性和完整性。密碼分析,就是研究如何破解密碼的學(xué)科。
2.3密碼系統(tǒng)的安全性
一個密碼系統(tǒng)的安全性,跟密碼算法本身和除了算法之外的一些因素都有關(guān)系。一個密碼算法本身具有的安全性,是密碼系統(tǒng)安全性的基礎(chǔ)保證,它取決于密碼的設(shè)計水平等等。攻擊者如果想要破譯一個密碼系統(tǒng),還可以通過非技術(shù)手段來達到目的。例如,收買相關(guān)的管理人員等等。這些都是可能存在的,密碼算法本身之外的一些漏洞。因此,一個密碼算法的安全性并不能完全代表一個密碼系統(tǒng)的安全。
2.4如何評估密碼系統(tǒng)的安全性
2.4.1無條件安全性這種情況是指,攻擊者擁有了無限的資源,但是卻無法得到任何對破譯該密碼系統(tǒng)有意的信息,即無法破譯此密碼系統(tǒng)。我們稱這樣的密碼系統(tǒng)具有無條件安全性。但是,這種密碼體制卻難以實現(xiàn),因為其密鑰的生成和管理都極其苦難,并且不能夠重復(fù)使用密鑰。
2.4.2可證明安全性指此密碼體制的安全性與某個很困難的問題相關(guān)(數(shù)學(xué)問題),例如計算離散對數(shù)等,這些數(shù)學(xué)問題解起來往往非常困難。但是,這種方法并不能完全說明了此密碼體制的安全性。
2.4.3計算安全性計算安全性,又稱為實際安全性。指攻擊者所擁有的計算資源還達不到破解此密碼體制的資源。密碼學(xué)中所認為的計算不可破譯是指,攻擊者受到資源的限制,不能夠在一定時間之內(nèi)破解此密碼體制,那么我們就可以認為此密碼體制是不可破譯的。
2.4.4總結(jié)綜上所述,一個密碼體制要滿足安全性,需要它在破解時,計算量非常之大,花費的計算時間非常之多,使攻擊者實際上是無法實現(xiàn)的?;蛘呤?,它的實際價值遠遠不如破解它時所花費的費用。以上滿足任何一點,我們就可以稱此密碼體制是足夠安全的。
3密碼學(xué)常用加密方法
3.1對稱加密算法
對稱加密,也稱為私鑰加密。上文提到了,密鑰又分為加密密鑰與解密密鑰。那么,加密密鑰是否一定跟解密密鑰相同呢?至少在對稱加密算法中來說是的。此算法中,加密(解密)密鑰可以通過解密(加密)密鑰推算出來。這類算法的安全性非常依賴于密鑰,如果密鑰發(fā)生了泄露,那么這些密碼系統(tǒng)的安全性將會受到很大的威脅。常見的一些對稱加密算法有:DES算法、AES算法、IDEA算法等等。本文將會就其中兩個最為常見的算法進行簡單介紹。
3.1.1DES算法DES算法,即美國標(biāo)準(zhǔn)局在1977年的數(shù)據(jù)加密標(biāo)準(zhǔn)。DES的參數(shù)有:Key(密鑰)、Data和Mode。DES算法的兩個原則為混淆和擴散?;煜哪康氖菫榱耸姑芪呐c密鑰之間的關(guān)系更加復(fù)雜。擴散的目的是為了盡可能讓每一位明文都較多的作用到密文上,以防攻擊者對密碼的破譯。DES算法的變體是3DES算法。DES算法如今已經(jīng)被破解,所以已經(jīng)不再是安全的密碼算法了,3DES算法已經(jīng)在向AES算法逐漸的過渡。
3.1.2AES算法AES算法,是美國標(biāo)準(zhǔn)局的高級數(shù)據(jù)加密標(biāo)準(zhǔn),用來代替已經(jīng)逐漸被淘汰的DES算法。在對稱加密算法之中,是最常用的一種算法。此算法的密鑰建立所需要的時間很短,對內(nèi)存的要求也不是很高,性能遠遠優(yōu)于DES算法。AES為分組密碼,即把明文分為等長度的幾組,每次只加密一組明文,直到全部明文加密完成。AES算法密鑰長度一般為128、192和256位。
3.2非對稱加密算法
非對稱加密算法,又稱公開密鑰算法。非對稱加密算法中有兩個密鑰:公開密鑰和私有密鑰。公開密鑰和私有密鑰是兩個完全不同的密鑰,故而稱為非對稱加密算法。如果用公開密鑰對明文進行加密,那么只有私有密鑰才能進行解密。同理,如果用私有密鑰對明文進行加密,那么只有公開密鑰才能對明文進行解密。此類算法具有非常高的保密性和安全性,算法比較復(fù)雜,使得密碼系統(tǒng)不是很容易被破解。常見的一些非對稱加密算法有:ECC算法(橢圓曲線加密算法)、RSA算法、DSA算法、背包算法等等。本文將會就其中幾個最為常見的算法進行簡單介紹。
3.2.1RSA算法RSA算法是目前最有影響力的公鑰算法,因為它能夠抵擋大部分的攻擊,具有很高的可靠性。它已經(jīng)被IOS推為公鑰加密數(shù)據(jù)標(biāo)準(zhǔn)。首先,隨機生成兩個質(zhì)數(shù)p和q,再算出它們的乘積n(密鑰長度),計算出n的歐拉函數(shù)。然后,隨機選擇一個數(shù)e,e的范圍在1到n的歐拉函數(shù)之間,且與n的歐拉函數(shù)互質(zhì),計算出e對于n的歐拉函數(shù)的模反元素d。最后,n和e就為公有密鑰,n和d為私有密鑰。由以上RSA算法生成密鑰對的過程來看,RSA算法具有很高的隨機性和安全性,想要破解此算法的密鑰十分困難,因為RSA算法運行的往往都是大數(shù)運算。但是這一點也使得RSA算法本身運行的速度非常之慢,比DES算法多出好幾倍的時間。3.2.2ECC算法即橢圓曲線加密算法,也是一種公開密鑰算法。ECC算法產(chǎn)生的密鑰比RSA算法更小,占用的存儲空間較小。并且,ECC算法是雙線映射的,具有更高的安全性。但是這也造成了它的加解密過程非常復(fù)雜,花費的時間很長。
3.2.3DSA算法即數(shù)字簽名算法。它的安全性跟RSA算法差不多,但是它隨機產(chǎn)生的兩個素數(shù)p和q是公開的,當(dāng)使用p和q時,就可以確認是否被人做了非法操作。
4網(wǎng)絡(luò)安全方面技術(shù)應(yīng)用
4.1數(shù)字簽名技術(shù)
數(shù)字簽名技術(shù),是非對稱密碼算法的一種應(yīng)用。它有兩種運算,一個用于簽名,一個用于驗證。只有發(fā)送信息的人員才能產(chǎn)生,它可以有效地證明信息的真實性,并且具有完整性和不可否認性。發(fā)送信息的人員有一對密鑰,其中一個是只有本人才知道的私有密鑰,另一個則是公開的公開密鑰,簽名的時候用的是私有密鑰,驗證的時候則用公開密鑰。數(shù)字簽名技術(shù)可以提供對應(yīng)的網(wǎng)絡(luò)安全服務(wù),對于計算機網(wǎng)絡(luò)安全有著非常重要的作用:防止冒充、防抵賴、身份鑒別等等。這些都極大的提高了網(wǎng)絡(luò)信息的安全性。
4.2數(shù)字證書技術(shù)
又稱數(shù)字標(biāo)識,公開密鑰算法的一種應(yīng)用,由CA中心頒發(fā)的一種證書,具有權(quán)威性。在信息交流之中進行加密和解密,來保證數(shù)據(jù)的真實性和完整性。它產(chǎn)生兩種密鑰,公開密鑰和私有密鑰,公開密鑰是共有的,用來加密和簽名驗證,私有密鑰只有用戶自己才知道,用于解密和簽名認證。數(shù)字證書相當(dāng)于用戶的一張身份證,在進行電子商務(wù)活動時必須出示數(shù)字證書來驗證身份,它具有安全性、唯一性和便利性。它對網(wǎng)絡(luò)信息安全也有著很重要的作用,隨著計算機技術(shù)的發(fā)展,電子商務(wù)在人們的生活中運用的越來越多,數(shù)字證書可以避免信息和數(shù)據(jù)的泄露,作為一種加密技術(shù),有效地保護了終端。此外,越來越多的釣魚網(wǎng)站和惡意網(wǎng)站出現(xiàn)在計算機網(wǎng)絡(luò)上,用戶稍有不慎,就會暴露自己的個人信息,這很大的影響了網(wǎng)絡(luò)的安全性。數(shù)字證書技術(shù)可以先對網(wǎng)站進行驗證,這就極大的避免了有可能造成的損失,提高了網(wǎng)絡(luò)的安全性。另外,在網(wǎng)絡(luò)安全方面,數(shù)字證書技術(shù)還可以建立安全電子郵件、身份授權(quán)管理等等。
5結(jié)語
隨著現(xiàn)代量子計算的發(fā)展,密碼學(xué)也逐漸在發(fā)展進化。當(dāng)然,反過來,密碼學(xué)同樣也促進了現(xiàn)代計算機技術(shù)的發(fā)展。密碼學(xué)在網(wǎng)絡(luò)安全領(lǐng)域有很多重要的作用,例如安全認證、數(shù)字簽名、數(shù)字印章等等。密碼學(xué)不僅僅可以提升網(wǎng)絡(luò)的安全性,它在軍事領(lǐng)域也發(fā)揮著很重要的作用,包括射擊學(xué)、彈道學(xué)等等。綜上所述,密碼學(xué)是一門很有發(fā)展前景的綜合性學(xué)科,因此,這門學(xué)科值得我們繼續(xù)進行研究。有關(guān)于密碼學(xué)的最新進展研究,有興趣的讀者可以自行查閱資料。
參考文獻:
[1]陳佳康.密碼學(xué)算法的優(yōu)化與應(yīng)用[D].北京郵電大學(xué),2013.
[2]鄭培凝.身份基密碼學(xué)的研究與應(yīng)用[D].上海交通大學(xué),2011.
[3]盧開澄.計算機密碼學(xué)[M].北京:清華大學(xué)出版社,2003.
作者:蔣澤宇 單位:哈爾濱理工大學(xué)計算機科學(xué)與技術(shù)學(xué)院