0x00:
? ? 本文敘述了基本的加密方式以及常見的加密手段菊值,沒有復(fù)雜的理論適合入門和知識補(bǔ)充硫痰。作為概括并沒有太深入具體地講解,目的可以是形成概念剔应,整體的大致的認(rèn)識。? ??
加密的分類:
? 出于某種敘述的目的语御,這里將其分為一下四種主要類型:
? 對稱加密(Symmetric Encryption)
? 非對稱加密(Asymmetric Encryption)
? 哈希(Hashes)
無線加密(Wireless Cryptography)
關(guān)于密鑰長度:
????? 對于加密來說密鑰長度(key size)是不可忽視的一個因素峻贮。通常在相同的加密算法中,密鑰越長应闯,加密越強(qiáng)纤控。比如AES-256會比AES-128更強(qiáng),更難以被破解碉纺。
但是船万,對于不同種的加密算法來說并不意味著密鑰長度越大,加密就越strong. 加密的強(qiáng)度是基于加密的算法實(shí)現(xiàn)和密鑰長度兩者共同來衡量的骨田。
對稱加密:
????對稱加密中耿导,發(fā)送方和接收方使用的是相同的密鑰。發(fā)送方和接收方手里拿的都是同一把鑰匙态贤,發(fā)送方用它加密數(shù)據(jù)碎节,然后發(fā)送給接收方,接收方用它解密數(shù)據(jù)抵卫。反過來也是可以的狮荔。
對稱加密的速度是很快的。非常適合用于大容量存儲或流媒體應(yīng)用程序介粘。對稱加密的缺點(diǎn)在于殖氏,它需要經(jīng)過一個過程,我們稱之為密鑰交換(The key exchange)姻采。如果使用對稱加密的雙方需要用到的是同一把鑰匙雅采,那么它們就需要一個中間過程來交換它們的鑰匙,這就是這種加密方式的弱點(diǎn)所在慨亲。
想象一下兩個相隔12000英里的人婚瓜,它們?nèi)绾谓粨Q它們之間的密鑰?無論你是使用電話刑棵、信件巴刻、email抑或是面對面......都無法避免一個問題就是,在交換信息的過程中可能會被攔截蛉签,被竊取胡陪。因此導(dǎo)致到你的整個加密的保密性變得受質(zhì)疑的沥寥,變得毫無意義。
下面是一下你應(yīng)該熟悉的常見對稱加密算法:
? ??DES:
????Data Encryption Standard 數(shù)據(jù)加密標(biāo)準(zhǔn)柠座, 這是一種原始且古老的加密方式邑雅。由IBM公司開發(fā)。這種加密方式已經(jīng)被發(fā)現(xiàn)出弱點(diǎn)了妈经,而且容易被破解淮野。這種加密被用在早期的Windows2000以前的版本的系統(tǒng)的原始的密碼系統(tǒng)LANMAN hashes中。
? ??3DES:
????這種加密算法相當(dāng)于是DES的增強(qiáng)版本吹泡。3DES中運(yùn)用三次DES加密骤星。它比DES要稍微安全一些。
? ??AES:
????Advanced Encryption Standard 高級加密標(biāo)準(zhǔn)并不是一種特定的加密算法荞胡,而是由NIST制定的一個加密標(biāo)準(zhǔn),這被看作是最強(qiáng)健的加密方式了嚎。使用128-泪漂,196-,或256-bit 的密鑰歪泳,至2001年以來一直是以Rijndael算法為主萝勤。被用在WPA2,SSL/TLS等許多重視保密性和速度的協(xié)議中
? ??RC4:
????這是一種流加密算法(加密每一字節(jié)中的每一個比特位呐伞,而不是整個信息塊的加密)由Ronald Rivest開發(fā)敌卓,被用在 VoIP 和 WEP 加密中
? ??Blowfish:
????這是第一種Bruce Schneier加密算法。它使用可變長密鑰伶氢,十分安全趟径。它是not patented的,可以被自由使用癣防。
地址:https://www.schneier.com/blowfish.html
? ??Twofish:
????這是Blowfish加密的加強(qiáng)版本蜗巧。使用128-或256-bit的密鑰,是AES強(qiáng)有力的競爭者蕾盯。被用在Cryptcat 和 OpenPGP等幕屹。同樣的可以被大眾使用無需授權(quán)。
非對稱加密:
????非對稱加密中的通信雙方使用的是不同的密鑰级遭。非對稱加密的速度相比起對稱加密來說十分的慢望拖。因此我們不把它用在大量數(shù)據(jù)的加密或信息流通信中。這種加密方式恰好解決了密鑰交換的問題挫鸽。
非對稱加密主要用在當(dāng)雙方互不認(rèn)識说敏,想要交換一些微小的信息諸如密鑰或其它認(rèn)證信息如:證書。由于加密速度的限制一般不會用于大量數(shù)據(jù)的加密中丢郊。
下面是一些你應(yīng)該了解的非對稱加密:
Diffie-Hellman模型:
????在密碼學(xué)領(lǐng)域很多人都把Diffie-Hellman密鑰交換過程視為密碼學(xué)最偉大的發(fā)明像云。沒有復(fù)雜的數(shù)據(jù)公式锌雀,Diffie和Hellman開發(fā)了一種不需要交換密鑰的生成密鑰的方式,從而解決了對稱加密中交換密鑰的問題迅诬。
? ??RSA:
????Rivest, Shamir, and Adleman是一種非對稱加密方案腋逆,它使用非常大的素數(shù)的因子分解作為兩個密鑰之間的聯(lián)系。
????PKI:
????Public key infrastructure 公鑰基礎(chǔ)設(shè)施侈贷。是一種被廣泛應(yīng)用的使用公私鑰交換憑證信息的非對稱加密系統(tǒng)
????ECC:
????Elliptical curve cryptography 橢圓曲線加密惩歉。隨著計算能力的提升,在移動設(shè)備中越來越受歡迎俏蛮。對于相同安全性級別的其它方式撑蚌,它只需要更小的計算能力以及能耗。ECC依賴于兩個函數(shù)在同一橢圓曲線上的共享關(guān)系搏屑。
????PGP:
????Pretty Good Privacy 使用非對稱加密計算來保證email信息的私密性和完整性争涌。
Hashes:
????Hashes是一種加密方式。一條信息或密碼通過一種不可逆的方式被加密辣恋。信息會被加密成一條唯一的hash散列亮垫,從散列我們無法獲得原來信息的內(nèi)容,只能作為一種原信息的簽名伟骨。通常這些hashes的長度是固定的(MD5 hash 通常是32 位字符長度)因此是不能把hash的長度不同來用作解密的因素的饮潦。因此,我們不需要得到加密前的原始信息携狭,我們只需要看信息通過hash加密后能否生成和已知的相同的hash信息继蜡,來檢查被加密文件的完整性。
密碼通常是以hash的形式被儲存的逛腿,當(dāng)用戶試圖登錄時稀并,系統(tǒng)會拿用戶輸入的密碼進(jìn)行hash運(yùn)算,檢查運(yùn)算結(jié)果是否與數(shù)據(jù)庫中存儲的用戶密碼的散列信息相一致单默。因此稻轨,即使得到數(shù)據(jù)庫中的hash信息,是不能反推出密碼的雕凹。
collision:
????沖突殴俱,指的是兩個不同的輸入經(jīng)過hash計算后得到的是相同的hash值。這就產(chǎn)生了問題枚抵,因?yàn)槲覀兊脑O(shè)想是hash函數(shù)產(chǎn)生的是一對一的映射线欲,因此我們用它的結(jié)果作為原始信息的唯一標(biāo)識。會產(chǎn)生沖突的哈希算法是有缺陷和不安全的汽摹。好的hash函數(shù)要求出現(xiàn)碰撞的概率是極低的李丰。
下面是一些應(yīng)該熟悉的hash算法:
????MD4:
????一種早期的hash算法,并且由于產(chǎn)生碰撞的問題已經(jīng)基本停止使用
? ??MD5:
????應(yīng)用最廣的HashingSystem. 它是128-bit長度的逼泣,生成的是一個32位字符長度的信息摘要趴泌。由于計算能力的進(jìn)步舟舒,MD5已不像以前那樣安全。
? ??SHA1:
????NSA開發(fā)的嗜憔,比MD5要安全得多秃励。169-bit的信息摘要,以40個十六進(jìn)制字符呈現(xiàn)吉捶。經(jīng)常被用在SSL的證書交換夺鲜,但由于最近發(fā)現(xiàn)的缺陷,正因此而遭到摒棄呐舔。
? ??SHA2:
? ? SHA1的改進(jìn)版本币励,算法與SHA1類似。比較新珊拼,尚未出現(xiàn)對SHA-2有效的攻擊
無線加密:
????由于考慮到速度的原因食呻,無線加密通常是對稱加密,像所有的對稱加密一樣澎现,密鑰交換是它的弱點(diǎn)仅胞。
????WEP:
????一種原始的無線加密方式,由于存在缺陷已被棄用昔头。使用RC4算法饼问,但由于key size太小了只要24-bit影兽,每5000個數(shù)據(jù)包中就有一個初始向量IV出現(xiàn)重復(fù)揭斧,導(dǎo)致它在繁忙的網(wǎng)絡(luò)中容易遭受攻擊。
????WPA:
????是WEP被破解的緊急修復(fù)方案峻堰。使用更大的key和TKIP算法讹开,讓其更難被破解。
????WPA2-PSK:
????采用與共享密鑰pre-shared key和AES加密捐名。它使用AP名或SSID為散列加鹽旦万。散列在客戶端和AP進(jìn)行身份認(rèn)證的四次間進(jìn)行交換。
????WPA2-EnterPrise:
????企業(yè)版更加安全镶蹋,使用128-bit key,AES和一個遠(yuǎn)程身份認(rèn)證系統(tǒng)(RADIUS)
本文作為一篇學(xué)習(xí)記錄分享成艘。
內(nèi)容思想和圖片整理自Internet,無意侵犯也無意誤導(dǎo)如有冒犯請聯(lián)系刪除,如有錯漏望多加指正贺归。