什麼是對稱加密:
對稱加密採用了對稱密碼編碼技術,它的特點是檔案加密和解密使用相同的金鑰,即加密金鑰也可以用作解密金鑰,這種方法在密碼學中叫做對稱加密演算法,對稱加密演算法使用起來簡單快捷,金鑰較短,且破譯困難,除了資料加密標準(des),另乙個對稱金鑰加密系統是國際資料加密演算法(idea),它比des的加密性好,而且對計算機功能要求也沒有那麼高。idea加密標準由pgp(pretty good privacy)系統使用。
對稱加密演算法在電子商務交易過程中存在幾個問題:
(1)要求提供一條安全的渠道使通訊雙方在首次通訊時協商乙個共同的金鑰。直接的面對面協商可能是不現實而且難於實施的,所以雙方可能需要借助於郵件和**等其它相對不夠安全的手段來進行協商;
(2)金鑰的數目難於管理。因為對於每乙個合作者都需要使用不同的金鑰,很難適應開放社會中大量的資訊交流;
(3)對稱加密演算法一般不能提供資訊完整性的鑑別。它無法驗證傳送者和接受者的身份;
(4)對稱金鑰的管理和分發工作是一件具有潛在危險的和煩瑣的過程。對稱加密是基於共同保守秘密來實現的,採用對稱加密技術的**雙方必須保證採用的是相同的金鑰,保證彼此金鑰的交換是安全可靠的,同時還要設定防止金鑰洩密和更改金鑰的程式。
假設兩個使用者需要使用對稱加密方法加密然後交換資料,則使用者最少需要2個金鑰並交換使用,如果企業內使用者有n個,則整個企業共需要n×(n-1) 個金鑰,金鑰的生成和分發將成為企業資訊部門的惡夢。
常見的對稱加密演算法有des、3des、blowfish、idea、rc4、rc5、rc6和aes
注:des加密演算法原理:
des演算法把64位的明文輸入塊變為64位的密文輸出塊,它所使用的金鑰也是56位,其演算法主要分為兩步:
1)初始置換
其功能是把輸入的64位資料塊按位重新組合,並把輸出分為l0、r0兩部分,每部分各長32位,其置換規則為將輸入的第58位換到第一位,第50位換到第2位……依此類推,最後一位是原來的第7位。l0、r0則是換位輸出後的兩部分,l0是輸出的左32位,r0是右32位,例:設定換前的輸入值為d1d2d3……d64,則經過初始置換後的結果為:l0=d58d50……d8;r0=d57d49……d7。
其置換規則見下表:
58,50,42,34,26,18,10,2,60,52,44,36,28,20,12,4,
62,54,46,38,30,22,14,6,64,56,48,40,32,24,16,8,
57,49,41,33,25,17,9,1,59,51,43,35,27,19,11,3,
61,53,45,37,29,21,13,5,63,55,47,39,31,23,15,7,
2)逆置換
經過16次迭代運算後,得到l16、r16,將此作為輸入,進行逆置換,逆置換正好是初始置換的逆運算,由此即得到密文輸出。
此演算法是對稱加密演算法體系中的代表,在計算機網路系統中廣泛使用.
什麼是非對稱加密:
與對稱加密演算法不同,非對稱加密演算法需要兩個金鑰:公開金鑰(publickey)和私有金鑰(privatekey)。公開金鑰與私有金鑰是一對,如果用公開金鑰對資料進行加密,只有用對應的私有金鑰才能解密;如果用私有金鑰對資料進行加密,那麼只有用對應的公開金鑰才能解密。因為加密和解密使用的是兩個不同的金鑰,所以這種演算法叫作非對稱加密演算法。
非對稱加密演算法實現機密資訊交換的基本過程是:甲方生成一對金鑰並將其中的一把作為公用金鑰向其它方公開;得到該公用金鑰的乙方使用該金鑰對機密資訊進行加密後再傳送給甲方;甲方再用自己儲存的另一把專用金鑰對加密後的資訊進行解密。甲方只能用其專用金鑰解密由其公用金鑰加密後的任何資訊。
非對稱加密演算法的保密性比較好,它消除了終端使用者交換金鑰的需要,但加密和解密花費時間長、速度慢,它不適合於對檔案加密而只適用於對少量資料進行加密。
如果企業中有n個使用者,企業需要生成n對金鑰,並分發n個公鑰。由於公鑰是可以公開的,使用者只要保管好自己的私鑰即可(企業分發後一般儲存的是私鑰,使用者拿的是公鑰),因此加密金鑰的分發將變得十分簡單。同時,由於每個使用者的私鑰是唯一的,其他使用者除了可以可以通過資訊傳送者的公鑰來驗證資訊的**是否真實,還可以確保傳送者無法否認曾傳送過該資訊。非對稱加密的缺點是加解密速度要遠遠慢於對稱加密,在某些極端情況下,甚至能比非對稱加密慢上1000倍。
常見的非對稱加密演算法有:rsa、ecc(移動裝置用)、diffie-hellman、el gamal、dsa(數字簽名用)
網路通訊安全與加密演算法
網路通訊安全問題 保密性 保密,不會被攔截,即使被攔截,也無法破解 完整性 完整,且沒有被篡改過 身份認證 不可抵賴 傳送過就是發過,接收了就是收了 對稱加密技術 速度快,可加密內容較大,用來加密會話過程中的訊息 非對稱秘鑰加密技術 加密速度較慢,但能提供更好的身份認證技術,可用來加密對稱加密的金鑰...
常用加密演算法
常用加密演算法 des data encryption standard 對稱演算法,資料加密標準,速度較快,適用於加密大量資料的場合 3des triple des 是基於des的對稱演算法,對一塊資料用三個不同的金鑰進行三次加密,強度更高 rc2和rc4 對稱演算法,用變長金鑰對大量資料進行加密...
常用加密演算法
平時經常會遇到一些加密解密之類的處理,特編寫成乙個專門的類,以後只需要呼叫即可!用法很簡單,例項化類之後呼叫相關方法就行!會對應返回加密解密後的字串!using system using system.collections.generic using system.text using syste...