對稱、非對稱和HASH加密的應用

加密可以保證數據的保密性,也可用於驗證用戶,它是在實現網絡安全的重要手段之一。

加密提供以下四種服務:

數據保密性:這是使用加密的通常的原因。通過小心使用數學方程式,你可以保證只有你打算接收的人才可以查看它。

數據完整性:對需要更安全來說數據保密是不夠的。數據仍能夠被非法破解並修改。一種叫HASH的運算方法能確定數據是否被改過。

認證:數字簽名提供認證服務。

不可否定性:數字簽名允許用戶證明一條信息交換確實發生過。金融組織尤其依賴於這種方式的加密,用於電子貨幣交易。

加密強度

加密文件一個常被討論但又經常被誤解的方面是加密強度。

加密強度取決於三個主要因素:

首先是算法的強度,包括幾個因素,例如,除了嘗試所有可能的密鑰組合之外的任何方法都不能數學的使信息被解密。我們應該使用工業標準的算法,它們已經被加密學專家測試過無數次,任何一個新的或個體的配方將不被信任直到它被商業的認證。

第二個因素是密鑰的保密性,一個合乎邏輯但有時被忽略了的方面,沒有算法能夠發揮作用如果密鑰受到損害,因此,數據的保密程度直接與密鑰的保密程度相關,注意區分密鑰和算法,算法不需要保密,被加密的數據是先與密鑰共同使用,然後再通過加密算法。

第三個因素是密鑰程度,這是最爲人所知的一個方面,根據加密和解密的應用程序,密鑰的長度是由”位”爲單位,在密鑰的長度上加上一位則相當於把可能的密鑰的總數乘以二倍,簡單的說構成一個任意給定長度的密鑰的位的可能組合的個數可以被表示爲2的n次方,這兒的n是一個密鑰長度,因此,一個40位密鑰長度的配方將是2的40次方或1099511627776種可能的不同的鑰。

儘管可能加密的密鑰的總數是非常大的,專門的計算機現在可以在不到一天時間內試驗許多種密鑰的組合。其實任何密碼都能破解而無論它的長度,想像一下這樣的密鑰利用現代的機器去破解是多麼的快速。簡單的說,一個人或組織在密鑰破解的裝備上花的錢越多,則密鑰就會被越快的破解。

建立信任關係

應用加密指的是在主機之間建立一個信任關係。在最基本的級別上,一個信任關係包括一方加密的信息,並只有另一方的合作伙伴可以解密這個信息。這種任務是利用公鑰加密來完成的。這種類型的加密要求你建立一個私鑰和一個公鑰。一旦你已經產生了一對密鑰,你可以把公鑰發佈給任何人。

你可以通過以下兩種方法來發布你的公鑰:

手動:你首先必須和接收方交換公鑰,然後用接收方的公鑰來加密信息。PGP和S/MIME需要使用這種方法。

自動:SSL和IPSec通過一系列的握手可以安全地交換信息。

下面是在加密中一些術語的簡單介紹:

對稱加密

在對稱加密(或叫單密鑰加密)中,只有一個密鑰用來加密和解密信息。儘管單密鑰加密是一個簡單的過程,但是雙方都必須完全的相信對方,並都持有這個密鑰的備份。但要達到這種信任的級別並不是想像中的那麼簡單。當雙方試圖建立信任關係時可能一個安全破壞已經發生了。首先密鑰的傳輸就是一個重要問題,如果它被截取,那麼這個密鑰以及相關的重要信息就沒有什麼安全可言了。

但是,如果用戶要在公共介質 (如互聯網) 上傳遞信息,他需要一種方法來傳遞密鑰,當然物理的發送和接收密鑰是最安全的,但有時這是不可能的。一種解決方法就是通過電子郵件來發送,但這樣的信息很容易的被截取到,從而擊破了加密的目的。用戶不能加密包含密鑰的郵件,因爲他們必須共享另一個用來加密含有密鑰郵件的密鑰。這種困境就產生了問題:如果對稱密鑰用它們自己來加密,那爲什麼不直接用相同的方法在第一步就使用?一個解決方案就是用非對稱加密,我們將在本課的後面提到。

所有類型加密的一個主題就是破解。一種減少使用對稱加密所造成的威脅的反措施就是改變密鑰的規律性。然而,定期改變密鑰經常是困難的,尤其是你的公司裏有很多用戶。另外,黑客可以使用字典程序,password sniffing來危及對稱密鑰的安全,或者通過搜翻辦公桌,錢包以及公文包。對稱加密也很容易被暴力攻擊的手段擊敗。

非對稱加密

非對稱加密在加密的過程中使用一對密鑰,而不像對稱加密只使用一個單獨的密鑰。一對密鑰中一個用於加密,另一個用來解密。如用A加密,則用B解密;如果用B加密,則要用A解密。

重要的概念是在這對密鑰中一個密鑰用來公用,另一個作爲私有的密鑰;用來向外公佈的叫做公鑰,另一半需要安全保護的是私鑰。非對稱加密的一個缺點就是加密的速度非常慢,因爲需要強烈的數學運算程序。如果一個用戶需要使用非對稱加密,那麼即使比較少量的信息可以也要花上幾個小時的時間。

非對稱加密的另一個名稱叫公鑰加密。儘管私鑰和公鑰都有與數學相關的,但從公鑰中確定私鑰的值是非常困難的並且也是非常耗時的。在互聯網上通信,非對稱加密的密鑰管理是容易的因爲公鑰可以任易的傳播,私鑰必須在用戶手中小心保護。

HASH加密把一些不同長度的信息轉化成雜亂的128位的編碼裏,叫做HASH值。HASH加密用於不想對信息解密或讀取。使用這種方法解密在理論上是不可能的,是通過比較兩上實體的值是否一樣而不用告之其它信息。HASH加密別一種用途是簽名文件。它還可用於當你想讓別人檢查但不能複製信息的時候。

簽名

信息鑑別的方法可以使信息接收者確定:信息發送者的身份以及信息在傳送過程中是否被改動過。如果信息的收發雙方對該信息的內容及發送端沒有爭執的話,那麼只採用鑑別技術也就足夠了。鑑別技術可以保證在信息傳送過程中對信息內容的任何改動都可以被檢測出來,並且能夠正確的鑑別出信息發送方的身份。但是,當信息的收發方對信息的內容及發送端產生爭執時,只用鑑別技術就不夠了。

收方可以僞造一份信息,從中獲得非法利益,並且自稱該信息是由發送方發過來的。例如,銀行通過通信網絡傳送一張支票,收方就可以對支票數額進行改動,並且聲稱他已收到了這張支票。利用前面的鑑別技術絲毫也解決不了這個問題,因爲鑑別使用了一個收/發雙方共享的祕密密鑰,這樣才能是發放產生一個鑑別碼而接收方又能對該鑑別碼進行校驗。但是收方也能對他僞造的信息產生一個合法的鑑別碼,這給整個系統帶來嚴重的安全問題。

在許多情況下,特別是商業系統中,通常都利用書面文件來規定契約性的責任,雖然鑑別技術可以完全有效的防止第三者的介入,但是卻絲毫不能防止接收者的僞造。問題的另一方面是發送方可能是不誠實的,由於他發送的信息變得對他很不利,而要逃避責任,那麼發送方就可能謊稱他從未發過這個信息。在整個爭執過程中,第三方也無法分辨那種情況是真實的。

爲了解決上述問題,就必須利用另外一種安全技術----數字簽名。簽名必須達到如下效果:在信息通信的過程中,接收方能夠對公正的第三方(可以是雙方事前統一委託其解決某一問題或某一爭執的仲裁者)證明其收到的報文內容是真實的,而且確實是由那個發送方發過來的,同時簽名還必須保證發送方發送後不能根據自己的利益否認他所發送過的報文,而收方也不能根據自己的利益來僞造報文或簽名。

對於數字簽名的產生過程來說,必須有足夠的信息才能對報文和簽名進行驗證,沒有足夠的信息就會給僞造或否認報文提供可乘之機。但是收發雙方用來產生與校驗的簽名的信息不能完全相同,因爲一旦接收方能夠用發送方用來產生簽名的相同信息(算法和參數)來證實報文和簽名,那麼收方同樣也能夠用它來僞造報文和簽名。所以簽名產生者與簽名證實者之間的相同信息絕對不能太多。如果發送方事後擔心接收方否認接收到了他所發送的報文,那麼發送方應能夠請求獲得報文證明,也就是說由接收方對發送方提供收到報文的證據。例如,如果甲方把報文發送給乙方,那麼乙方就要向甲方發送一份簽了名的報文證明收到了,由於這份報文有乙方的簽名,所以乙方是不能抵賴他所收到的報文的。

隨着信息經濟和知識經濟的迅猛發展,無紙辦公徹底改變了過去手工操作的各種不便,顯得更安全、更有效、更迅速、更簡潔、更方便。數字簽名以其獨特的優勢適應了這種發展,在無紙辦公中佔有十分重要的地位。例如,對公司內部有下級呈給上級請求批閱的公文 在以往只需領導大筆一揮簽名蓋章,以個人的筆跡來證明其真實性。但手寫的文件簽名非常容易僞造。除此之外,簽名者還可以否認簽名,宣稱它是僞造的。但在無紙辦公年代,計算機網絡中傳送的電子公文又如何蓋章呢?又如何來證明簽名的真實性呢?這就是——數字簽名。(
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章