實(shí)際操作過程中如何選擇加密算法

根據(jù)密鑰類型不同將現(xiàn)代密碼技術(shù)分為兩類:對稱加密算法和非對稱加密算法,那我們在實(shí)際使用的過程中究竟該使用哪一種比較好呢?那么我們就先從這兩種加密算法的概念入手。

對稱式加密算法就是加密和解密使用同一個密鑰,通常稱之為“Session Key ”,這種加密算法目前被廣泛采用,如美國政府所采用的DES加密標(biāo)準(zhǔn)就是一種典型的“對稱式”加密算法,它的Session Key長度為56Bits。

非對稱式加密算法就是加密和解密所使用的不是同一個密鑰,通常有兩個密鑰,稱為“公鑰”和“私鑰”,它們兩個必需配對使用,否則不能打開加密文件。
加密算法的選擇

1、我們應(yīng)該根據(jù)自己的使用特點(diǎn)來確定,由于非對稱加密算法的運(yùn)行速度比對稱加密算法的速度慢很多,當(dāng)我們需要加密大量的數(shù)據(jù)時,建議采用對稱加密算法,提高加解密速度。

2、對稱加密算法不能實(shí)現(xiàn)簽名,因此簽名只能非對稱算法。

3、由于對稱加密算法的密鑰管理是一個復(fù)雜的過程,密鑰的管理直接決定著他的安全性,因此當(dāng)數(shù)據(jù)量很小時,我們可以考慮采用非對稱加密算法。

在實(shí)際的操作過程中,我們通常采用的加密算法:

采用非對稱加密算法管理對稱算法的密鑰,然后用對稱加密算法加密數(shù)據(jù),這樣我們就集成了兩類加密算法的優(yōu)點(diǎn),既實(shí)現(xiàn)了加密速度快的優(yōu)點(diǎn),又實(shí)現(xiàn)了安全方便管理密鑰的優(yōu)點(diǎn)。

如果在選定了加密算法后,那采用多少位的密鑰呢?一般來說,密鑰越長,運(yùn)行的速度就越慢,應(yīng)該根據(jù)的我們實(shí)際需要的安全級別來選擇,一般來說,RSA建議采用1024位的數(shù)字,ECC建議采用160位,AES采用128為即可。

小知識之密鑰:

密鑰是一種參數(shù),它是在明文轉(zhuǎn)換為密文或?qū)⒚芪霓D(zhuǎn)換為明文的算法中輸入的數(shù)據(jù)。密鑰分為兩種:對稱密鑰與非對稱密鑰。