openssl是乙個開源的用以實現ssl協議的產品,它主要包括了三個部分:密碼演算法庫、應用程式、ssl協議庫。openssl實現了ssl協議所需要的大多數演算法。
下面我將單介紹使用openssl進行檔案的對稱加密操作。
一、openssl支援的加密演算法有:
-aes-128-cbc -aes-128-cfb -aes-128-cfb1
-aes-128-cfb8 -aes-128-ecb -aes-128-ofb
-aes-192-cbc -aes-192-cfb -aes-192-cfb1
-aes-192-cfb8 -aes-192-ecb -aes-192-ofb
-aes-256-cbc -aes-256-cfb -aes-256-cfb1
-aes-256-cfb8 -aes-256-ecb -aes-256-ofb
-aes128 -aes192 -aes256
-bf -bf-cbc -bf-cfb
-bf-ecb -bf-ofb -blowfish
-cast -cast-cbc -cast5-cbc
-cast5-cfb -cast5-ecb -cast5-ofb
-des -des-cbc -des-cfb
-des-cfb1 -des-cfb8 -des-ecb
-des-ede -des-ede-cbc -des-ede-cfb
-des-ede-ofb -des-ede3 -des-ede3-cbc
-des-ede3-cfb -des-ede3-ofb -des-ofb
-des3 -desx -desx-cbc
-rc2 -rc2-40-cbc -rc2-64-cbc
-rc2-cbc -rc2-cfb -rc2-ecb
-rc2-ofb -rc4 -rc4-40
二、openssl加密指令語法:
synopsis
openssl enc -ciphername [-in filename] [-out filename] [-pass arg] [-e]
[-d] [-a] [-a] [-k password] [-kfile filename] [-k key] [-iv iv] [-p]
[-p] [-bufsize number] [-nopad] [-debug]
說明:-chipername選項:加密演算法,openssl支援的演算法在上面已經列出了,你只需選擇其中一種演算法即可實現檔案加密功能。
-in選項:輸入檔案,對於加密來說,輸入的應該是明文檔案;對於解密來說,輸入的應該是加密的檔案。該選項後面直接跟檔名。
-out選項:輸出檔案,對於加密來說,輸出的應該是加密後的檔名;對於解密來說,輸出的應該是明文檔名。
-pass選項:選擇輸入口令的方式,輸入源可以是標準輸入裝置,命令列輸入,檔案、變數等。
-e選項:實現加密功能(不使用-d選項的話預設是加密選項)。
-d選項:實現解密功能。
-a和-a選項:對檔案進行base64編譯碼操作。
-k選項:手動輸入加密金鑰(不使用該選項,openssl會使用口令自動提取加密金鑰)。
-iv選項:輸入初始變數(不使用該選項,openssl會使用口令自動提取初始變數)。
-salt選項:是否使用鹽值,預設是使用的。
-p選項:列印出加密演算法使用的加密金鑰。
三、案例:
1. 使用aes-128-cbc演算法加密檔案:
openssl enc -aes-128-cbc -in install.log -out enc.log
(注:這裡install.log是你想要加密的檔案,enc.log是加密後的檔案,回車後系統會提示你輸入口令)
2. 解密剛剛加密的檔案:
openssl enc -d -aes-128-cbc -in enc.log -out install.log
(注:enc.log是剛剛加密的檔案,install.log是解密後的檔案,-d選項實現解密功能)
3.加密檔案後使用base64格式進行編碼:
openssl enc -aes-128-cbc -in install.log -out enc.log -a
4.使用多種口令輸入方式加密:
openssl enc -des-ede3-cbc -in install.log -out enc.log -pass pass:111111
(這種方式的好處是你可以把它寫入到指令碼中,自動完成加密功能,不使用pass選項預設系統會提示輸入口令,並且確認,是需要人工操作的)
四、openssl的功能還遠不只於此,感興趣的朋友可以參考openssl的手冊學習。在linux系統中你可以通過:man openssl 快速獲得幫助檔案。
例:對檔案file.tar.gz進行加密,密碼為123456
openssl des3 -salt -k 123456 -in file.tar.gz -out file.tar.gz.des3
對file.tar.gz.des3 解密
openssl enc -des3 -d -in file.tar.gz.des3 -out file.tar.gz
本文出自 「一陣風」 部落格
用openssl來加密檔案
使用 openssl 的常規方式是 openssl command command options arguments 在 linux 中加密檔案要加密當前工作目錄的內容 根據檔案的大小,這可能需要一點時間 tar czf openssl enc e aes256 outsecured.tar.gz...
Linux下用vim對檔案加密
由於需要在網上搜了下linux下對檔案加密的操作 發現好多人的方法都比較麻煩,在這裡找了乙個比較簡單的方法分享給大家 linux用vim vi給檔案加密和解密 一 利用 vim vi 加密 優點 加密後,如果不知道密碼,就看不到明文,包括root使用者也看不了 缺點 很明顯讓別人知道加密了,容易讓別...
使用openssl加密檔案
使用openssl加密檔案 openssl是乙個開源的用以實現ssl協議的產品,它主要包括了三個部分 密碼演算法庫 應用程式 ssl協議庫。openssl實現了ssl協議所需要的大多數演算法。下面我將單介紹使用openssl進行檔案的對稱加密操作。一 openssl支援的加密演算法有 aes 128...