DES:Data Encryption Standard
IBM的數(shù)據(jù)加密方案,密鑰長度為56,標準是使用64位密鑰,但實際僅使用了56位密鑰
3DES:trip DES
DES的升級版。幾年前Cisco加密的主要算法。因為現(xiàn)代計算機能力的極大增強,傳統(tǒng)的56位長度密鑰的DES,能夠在24小時內(nèi)被暴力破解。3DES相當于對同一數(shù)據(jù)進行3次DES加密,如每次使用的密鑰完全不同,長度可以達到最多168位
AES:Advanced Encryption Standard
高級數(shù)據(jù)加密標準,下一代加密算法標準
這三種都是國際標準的對稱加密算法,被廣泛使用。
轉(zhuǎn)載內(nèi)容:
DES
1977年1月,美國政府頒布:采納IBM公司設(shè)計的方案作為非機密數(shù)據(jù)的正式數(shù)據(jù)加密標準(DES Data Encryption Standard) 。
目前在國內(nèi),隨著三金工程尤其是金卡工程的啟動,DES算法在POS、ATM、磁卡及智能卡(IC卡)、加油站、高速公路收費站等領(lǐng)域被廣泛應(yīng)用,以此來實現(xiàn)關(guān)鍵數(shù)據(jù)的保密,如信用卡持卡人的PIN的加密傳輸,IC卡與POS間的雙向認證、金融交易數(shù)據(jù)包的MAC校驗等,均用到DES算法。
DES算法的入口參數(shù)有三個:Key、Data、Mode。
其中Key為8個字節(jié)共64位,是DES算法的工作密鑰;
Data也為8個字節(jié)64位,是要被加密或被解密的數(shù)據(jù);
Mode為DES的工作方式,有兩種:加密或解密。
DES算法是這樣工作的:
如Mode為加密,則用Key 去把數(shù)據(jù)Data進行加密, 生成Data的密文形式(64位)作為DES的輸出結(jié)果;
如Mode為解密,則用Key去把密碼形式的數(shù)據(jù)Data解密,還原為Data的明文形式(64位)作為DES的輸出結(jié)果。
在通信網(wǎng)絡(luò)的兩端,雙方約定一致的Key,在通信的源點用Key對核心數(shù)據(jù)進行DES加密,然后以密碼形式在公共通信網(wǎng)(如電話網(wǎng))中傳輸?shù)酵ㄐ啪W(wǎng)絡(luò)的終點,數(shù)據(jù)到達目的地后,用同樣的Key對密碼數(shù)據(jù)進行解密,便再現(xiàn)了明碼形式的核心數(shù)據(jù)。這樣,便保證了核心數(shù)據(jù)(如PIN、MAC等)在公共通信網(wǎng)中傳輸?shù)陌踩院涂煽啃浴?
通過定期在通信網(wǎng)絡(luò)的源端和目的端同時改用新的Key,便能更進一步提高數(shù)據(jù)的保密性,這正是現(xiàn)在金融交易網(wǎng)絡(luò)的流行做法。
3DES
3DES是DES加密算法的一種模式,它使用3條64位的密鑰對數(shù)據(jù)進行三次加密。數(shù)據(jù)加密標準(DES)是美國的一種由來已久的加密標準,它使用對稱密鑰加密法。
3DES(即Triple DES)是DES向AES過渡的加密算法(1999年,NIST將3-DES指定為過渡的加密標準),是DES的一個更安全的變形,可以理解為DES的升級版。它以DES為基本模塊,通過組合分組方法設(shè)計出分組加密算法。
設(shè)Ek()和Dk()代表DES算法的加密和解密過程,Kn代表DES算法使用的密鑰,P代表明文,C代表密表,這樣,
3DES加密過程為:C=Ek3(Dk2(Ek1(P)))
3DES解密過程為:P=Dk1((EK2(Dk3(C)))
K1、K2、K3決定了算法的安全性,若三個密鑰互不相同,本質(zhì)上就相當于用一個長為168位的密鑰進行加密。多年來,它在對付強力攻擊時是比較安全的。若數(shù)據(jù)對安全性要求不那么高,K1可以等于K3。在這種情況下,密鑰的有效長度為112位。
AES
AES(Advanced Encryption Standard):高級加密標準,是下一代的加密算法標準,速度快,安全級別高。
用AES加密2000年10月,NIST(美國國家標準和技術(shù)協(xié)會)宣布通過從15種候選算法中選出的一項新的密匙加密標準。Rijndael被選中成為將來的 AES。Rijndael是在1999年下半年,由研究員Joan Daemen 和 Vincent Rijmen 創(chuàng)建的。AES正日益成為加密各種形式的電子數(shù)據(jù)的實際標準。
美國標準與技術(shù)研究院(NIST)(想當于美國的國密局)于2002年5月26日制定了新的高級加密標準(AES)規(guī)范。
AES算法基于排列和置換運算。排列是對數(shù)據(jù)重新進行安排,置換是將一個數(shù)據(jù)單元替換為另一個。
AES使用幾種不同的方法來執(zhí)行排列和置換運算。AES是一個迭代的、對稱密鑰分組的密碼,它可以使用128、192和256位密鑰,并且用128位(16字節(jié))分組加密和解密數(shù)據(jù)。
與公共密鑰加密使用密鑰對不同(非對稱加密算法),對稱加密算法使用相同的密鑰加密和解密數(shù)據(jù)。通過分組密碼返回的加密數(shù)據(jù)的位數(shù)與輸入數(shù)據(jù)相同。迭代加密使用一個循環(huán)結(jié)構(gòu),在該循環(huán)中重復(fù)置換和替換輸入數(shù)據(jù)。
貼一個Cisco 2921上配的IPSec VPN配置:
crypto isakmp policy 10
encr aes
authentication pre-share
group 2
lifetime 28800
crypto ipsec transform-set TS1000 esp-aes esp-sha-hmac
mode tunnel
crypto isakmp key <Key> address <Peer IP>
crypto map SDM_CMAP_1 1 ipsec-isakmp
description Tunnel to XXX
set peer <Peer IP>
set transform-set T1000
set reverse-route distance 40
match address VPN-TRAFFIC
reverse-route
interface GigabitEthernet0/1
crypto map SDM_CMAP_1
ip access-list extended VPN-TRAFFIC
permit ip 10.x.xx.0 0.0.0.255 xxx.xx.xx.128 0.0.0.127
permit ip 10.xx.x.0 0.0.0.255 xxx.xxx.xx.128 0.0.0.127