Linux下的加密

linux下的加密算法有:單向加密,對稱加密,非對稱加密。

1          單向加密(one way hashes)

其特點是:輸出定長,不可逆,雪崩效應

屬於單向加密算法的有:md5 ,sha1

 Linux下的/etc/shadow的密碼加密屬於單向加密

2          對稱加密(Symmectric Algotitm)

其特點是:加密處理簡單,速度快,密鑰較短

屬於對稱加密算法的有:DES,3DES,AES,Blowfish

3          非對稱加密(Asymmetric Algotitm)

其特點是:用戶不必記憶大量的提前商定好的密鑰,因爲發送方和接收方事先根本不必商定密鑰,發放方只要可以得到可靠的接收方的公開密鑰就可以給他發送信息了,但算法實現後的效率低,速度慢。

屬於非對稱加密算法有:rsa

openssl

    openssl是一個功能豐富且自包含的開源安全工具箱。它提供的主要功能有:SSL協議實現(包括SSLv2SSLv3TLSv1)、大量軟算法(對稱/非對稱/摘要)、大數運算、非對稱算法密鑰生成、ASN.1編解碼庫、證書請求(PKCS10)編解碼、數字證書編解碼、CRL編解碼、OCSP協議、數字證書驗證、PKCS7標準實現和PKCS12個人數字證書格式實現等功能。

openssl採用C語言作爲開發語言,這使得它具有優秀的跨平臺性能。openssl支持LinuxUNIXwindowsMac等平臺。

   openssl相關指令

      -inform DER|PEM|NET   指定輸入文件的格式
-outform DER|PEM|NET 
指定輸出文件格式
-in filename  
指定輸入文件名
-out filename  
指定輸出文件名
-days arg   
指定證書的有效時間長短

      -x509     把一個證書轉化成csr
-req     
缺省的認爲輸入文件是證書文件,說明輸入文件是csr

 下面以例子說明相關命令用法:

1)          加密

       openssl  enc  -des3  -salt  -a  - in  aaa  -out  aaa.des3

       給文件aaa加密,輸出文件是aaa.des3

2)          解密

   openssl  enc  -d  -des3  -salt  -a  -in  aaa.des3  -out  bbb    aaa.des3解密,輸出文件是bbb

1   證書請求

1 openssl  genrsa  -out  my.key  1024(20484096)

生成私鑰

2 openssl  rsa  -in  my.key  -pubout 

從私鑰中提取對應的公鑰

3 openssl   req  -new  -key  my.key  -out  my.csr

生成證書籤發請求

4 scp  my.csr  192.168.0.1:/root

 發送請求

4openssl  req  -new  -x509  -key  my.key  -out  my.crt  -days  1000

生成自簽證書

 5 openssl   –in  my.crt  –noout  –text

查看證書

 

 

cd  /etc/pki/tls/certs/

進入/etc/pki/tls/certs/

make  a.key

生成密鑰(需輸入密碼)

make  a.pem

生成pem格式證書(包含私鑰和公鑰,一般用於測試使用)

make  a.crt

生成crt格式證書

 

2   建立CA

1 cd  /etc/pki/CA           

進入該目錄,CA證書必須建立在該目錄中

  2)  openssl  genrsa  2048  >  pp.key

   生成一個密鑰

  3)  vim   /etc/pki/tls/openssl.cnf

   [ CA_default ]中的dir 選項改爲:/etc/pki/CA

  4)  mkdir  ./newcerts
           建立newcerts目錄
       
        5)  touch  ./{serial ,index.txt}

  建立序列號文件和index文檔

  6)  echo “00” > ./serial

   給定一個序列號初始值

  7)  openssl  –x509  –new  –key  pp.key  –out  pp.crt  –days 1000

   生成CA證書

3  給用戶發CA證書

  openssl  ca  –in  my.csr  –out  my.crt  –days  1000

給用戶發送CA證書

 查看證書

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章