通用的加密算法主要分為對稱和非對稱算法。對稱算法采用相同的密鑰進行加密和解密。常用的對稱加密算法有AES、IDEA、RC2/RC4、DES等,其最大的困難是密鑰分發問題,必須通過當面或在公***傳送系統中使用安全的方法交換密鑰。對稱加密由於加密速度快、硬件容易實現、安全強度高,因此仍被廣泛用來加密各種信息。但對稱加密也存在著固有的缺點:密鑰更換困難,經常使用同壹密鑰進行數據加密,給攻擊者提供了攻擊密鑰的信息和時間。非對稱算法,采用公鑰進行加密而利用私鑰進行解密。公鑰是可以公開的,任何人都可以獲得,數據發送人用公鑰將數據加密後再傳給數據接收人,接收人用自己的私鑰解密。非對稱加密的安全性主要依賴難解的數學問題,密鑰的長度比對稱加密大得多,因此加密效率較低,主要使用在身份認證、數字簽名等領域。非對稱加密的加密速度慢,對於大量數據的加密傳輸是不適合的。非對稱加密算法包括RSA、DH、EC、DSS等。目前比較流行的、最有名的非對稱加密算法是RSA。
RSA的安全性在於大整數因子分解的難度,其體制構造是基於數論的歐拉定理,產生公開密鑰和秘密密鑰的方法為:
(1)取2個互異的大素數p和q;
(2)計算n=p×q;
(3)隨機選取整數e,且e與(p-1)×(q-1)互為素數;
(4)另找壹個數d,使其滿足(e×d)mod[(p-1)×(q-1)]=1;(n,e)即為公鑰;(n,d)為私鑰。對於明文M,用公鑰(n,e)加密可得到密文C,C=Me mod n;對於密文C,用私鑰(n,d)解密可得到明文M,M=Cd mod n。
利用當今可預測的計算能力,在十進制下,分解2個250位質數的積要用數十萬年的時間,並且質數用盡或2臺計算機偶然使用相同質數的概率小到可以被忽略。由此可見,企圖利用公鑰和密文推斷出明文或者企圖利用公鑰推斷出私鑰的難度極其巨大,幾乎是不可行的。因此,這種機制為信息傳輸提供了很高的安全保障。
由上述內容可以發現,無論是對稱加密和非對稱加密的過程都是完成如下的過程:
(1)產生密鑰key;
(2)C=F(M,Key),即使用已經產生的密鑰,通過加密算法將明文轉換為密文。
(3)數據傳輸;
(4)M=F’(C,key),即接收方使用解密算法,將密文轉換為明文。
如果需要傳輸的明文數據龐大,則加密和解密的算法的耗時將非常長,並且數據傳輸時也會占用大量的網絡資源。也就是以上的(2),(3),(4)三個過程都會占用大量的時間和資源,如果能夠降低這3個過程的時間,就會節省大量的資源,提高數據傳輸的效率。通過使用哈夫曼編碼對文件進行壓縮,就可以大大降低以上3個環節的處理時間,並同時在傳輸處理過程中減少計算機資源和網絡資源的占用。 哈夫曼編碼是20世紀50年代由哈夫曼教授研制開發的,它借助了數據結構當中的樹型結構,在哈夫曼算法的支持下構造出壹棵最優二叉樹,把這類樹命名為哈夫曼樹。因此,準確地說,哈夫曼編碼是在哈夫曼樹的基礎之上構造出來的壹種編碼形式,它的本身有著非常廣泛的應用。
雙絞線
雙絞線分為T568-A和T568-B
T568-A:白綠綠,白橙藍,白藍橙,白棕棕;
T568-B:白橙橙,白綠藍,白藍綠,白棕棕