標籤:電腦網路 private 資料加密 public linux
網路資料轉送的安全性是電腦通訊領域的重要課題,資料加密就是保證資料安全性的主要方法。所謂資料加密,即是通過某種演算法和秘鑰對資料明文進行處理,從而得到密文的過程。電腦網路通訊過程中的加密形式主要有以下幾種:
1,對稱式加密,用同一個金鑰組資訊的加密和解密,這種加密方法稱為對稱式加密,也稱為單祕密金鑰加密。對稱式加密演算法的優點是演算法公開、計算量小、加密速度快、加密效率高,但秘鑰有時會很多,難以管理。而且秘鑰交換又是一個難以解決的問題。
常見演算法:
DES:Data Encryption Standard, 56bits
3DES:
AES: Advanced Encrpytion Standard, (128bits, 192, 256, 384, 512bits)
Blowfish
Twofish
IDEA
RC6
CAST5
2,非對稱式加密,對稱式加密演算法在加密和解密時使用的是同一個秘鑰;而非對稱式加密演算法需要兩個密鑰來進行加密和解密,這兩個秘鑰是公開密鑰(public key,簡稱公開金鑰)和私人密鑰(private key,簡稱私密金鑰)。
非對稱式加密與對稱式加密相比,其安全性更好:對稱式加密的通訊雙方使用相同的秘鑰,如果一方的秘鑰遭泄露,那麼整個通訊就會被破解。而非對稱式加密使用一對秘鑰,一個用來加密,一個用來解密,而且公開金鑰是公開的,秘鑰是自己儲存的,不需要像對稱式加密那樣在通訊之前要先同步秘鑰。
非對稱式加密的缺點是加密和解密花費時間長、速度慢,只適合對少量資料進行加密。
其主要演算法有:RSA,DSA,ELGamal等
3, 單向加密:即資料的特徵碼如md5等;其主要特性有:
定長輸出:無論原來的資料是多大層級,其加密結果長度一樣;
雪崩效應:未經處理資料微小改變,將會導致結果巨大變化;
無法復原:
對於非對稱式加密方式來說,公開金鑰的分發就成了一個重要的問題。基於CA簽證機構的數位憑證認證技術就是解決公開金鑰發布的方式。下面就以私人CA認證的製作分發過程來說明一下數位憑證認證的具體流程:
在服務端:
# (umask 077;openssl genrsa -out /etc/pki/CA/private/cacert.key 2048)
# openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -out /etc/pki/CA/cacert.pem -days 1000
# touch index.txt
# echo "01" > serial
在用戶端:
#(umask 077;openssl genrsa -out /etc/httpd/httpd.key 2048)
#openssl req -new -key /etc/httpd/httpd.key -out /etc/httpd/httpd.csr
將 httpd.csr 傳到服務端簽名:
在服務端:
# openssl ca -in /root/httpd.csr -out /root/httpd.crt -days 1000
將簽好的認證,httpd.crt 傳回到用戶端
linux網路資料轉送的加密,解密以及基於openssl的私人CA的建立