DES加密算法
DES加密算法是一種分組密碼钞它,以64位為分組對數(shù)據(jù)加密坡垫,它的密鑰長度是56位彭沼,加密解密用同一算法缔逛。DES加密算法實際上就是搜索密鑰的編碼。對于56位長度的密鑰來說,如果用窮舉法來進(jìn)行搜索的話褐奴,其運(yùn)算次數(shù)為256.
隨著計算機(jī)系統(tǒng)能力的不斷發(fā)展按脚,DES的安全性比它剛出現(xiàn)時會弱得多,然而從非關(guān)鍵性質(zhì)的實際出發(fā)敦冬,仍可以認(rèn)為它是足夠的辅搬。不過,DES現(xiàn)在僅用于舊系統(tǒng)的鑒定脖旱,而更多地選擇新的加密標(biāo)準(zhǔn)堪遂。
AES加密算法
AES加密算法是密碼學(xué)中的高級加密標(biāo)準(zhǔn),該加密算法采用對稱分組密碼體系萌庆,密鑰長度的最少支持為128溶褪、192、256践险,分組長度128位猿妈,算法應(yīng)易于各種硬件和軟件實現(xiàn)。這種加密算法是美國聯(lián)邦政府采用的區(qū)塊加密標(biāo)準(zhǔn)巍虫,這個標(biāo)準(zhǔn)用來替代原先的DES彭则,已經(jīng)被多方分析且廣為全世界所使用。
RSA加密算法
RSA加密算法是目前最有影響力的公鑰加密算法垫言,并且被普遍認(rèn)為是目前最優(yōu)秀的公鑰方案之一贰剥。RSA是第一個能同時用于加密和數(shù)字簽名的算法,它能夠抵抗到目前為止已知的所有密碼攻擊筷频,已被ISO推薦為公鑰數(shù)據(jù)加密標(biāo)準(zhǔn)蚌成。RSA加密算法基于一個十分簡單的數(shù)論事實:將兩個大素數(shù)相乘十分容易,但那時想要對其乘積進(jìn)行因式分解卻極其困難凛捏,因此可以將乘積公開作為加密密鑰担忧。
Base64加密算法
Base64加密算法是網(wǎng)絡(luò)上最常見的用于傳輸8bit字節(jié)代碼的編碼方式之一,Base64編碼可用于在HTTP環(huán)境下傳遞較長的標(biāo)識信息坯癣。例如瓶盛,在JAVAPERSISTENCE系統(tǒng)HIBEMATE中,采用了Base64來將一個較長的唯一標(biāo)識符編碼為一個字符串示罗,用作HTTP表單和HTTPGETURL中的參數(shù)惩猫。在其他應(yīng)用程序中,也常常需要把二進(jìn)制數(shù)據(jù)編碼為適合放在URL(包括隱藏表單域)中的形式蚜点。此時轧房,采用Base64編碼不僅比較簡短,同時也具有不可讀性绍绘,即所編碼的數(shù)據(jù)不會被人用肉眼所直接看到奶镶。
MD5加密算法
MD5為計算機(jī)安全領(lǐng)域廣泛使用的一種散列函數(shù)迟赃,用以提供消息的完整性保護(hù)。對MD5加密算法簡要的敘述可以為:MD5以512位分組來處理輸入的信息厂镇,且每一分組又被劃分為16個32位子分組纤壁,經(jīng)過了一系列的處理后,算法的輸出由四個32位分組組成捺信,將這四個32位分組級聯(lián)后將生成一個128位散列值酌媒。
MD5被廣泛用于各種軟件的密碼認(rèn)證和鑰匙識別上。MD5用的是哈希函數(shù)残黑,它的典型應(yīng)用是對一段信息產(chǎn)生信息摘要馍佑,以防止被篡改。MD5的典型應(yīng)用是對一段Message產(chǎn)生fingerprin指紋梨水,以防止被篡改拭荤。如果再有一個第三方的認(rèn)證機(jī)構(gòu),用MD5還可以防止文件作者的抵賴疫诽,這就是所謂的數(shù)字簽名應(yīng)用舅世。MD5還廣泛用于操作系統(tǒng)的登陸認(rèn)證上,如UNIX奇徒,各類BSD系統(tǒng)登錄密碼雏亚、數(shù)字簽名等諸多方面。
SHA1加密算法
SHA1是和MD5一樣流行的消息摘要算法摩钙。SHA加密算法模仿MD4加密算法罢低。SHA1設(shè)計為何數(shù)字簽名算法(DSA)一起使用。
SHA1主要適合于數(shù)字簽名標(biāo)準(zhǔn)里面定義的數(shù)字簽名算法胖笛。對于長度小于264位的消息网持,SHA1會產(chǎn)生一個160位的消息摘要。當(dāng)接收到消息的時候长踊,這個消息摘要可以用來驗證數(shù)據(jù)的完整性功舀。在傳輸?shù)倪^程中,數(shù)據(jù)很可能會發(fā)生變化身弊,那么這時候就會產(chǎn)生不同的消息摘要辟汰。SHA1不可以從消息摘要中復(fù)原信息,而兩個不同的消息不會產(chǎn)生同樣的消息摘要阱佛。這樣帖汞,SHA1就可以驗證數(shù)據(jù)的完整性,所以說SHA1是為了保證文件安全性的技術(shù)凑术。
SHA1加密算法可以采用不超過264位的數(shù)據(jù)輸入翩蘸,并產(chǎn)生一個160位的摘要。輸入被劃分為512位的塊麦萤,并單獨處理鹿鳖。160位緩沖器用來保存散列函數(shù)的中間和最后結(jié)果。緩沖器可以由5個32位寄存器來表示壮莹。SHA1是一種比MD5的安全性強(qiáng)的算法翅帜。理論上,凡是采取”消息摘要“方式的數(shù)字驗證算法都是有”碰撞‘的——也就是兩個不同的東西算出的消息摘要相同命满,互通作弊圖就是如此涝滴。但是安全性的算法要找到指定數(shù)據(jù)的“碰撞”很困難,而利用公式來計算“碰撞”就更困難胶台,目前為止通用安全算法中僅有MD5被破解歼疮。