linux 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 加密/解密 命令行语法
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选项:打印出加密算法使用的加密密钥。

示例:

 #使用aes-128-cbc算法加密
openssl enc -aes-128-cbc -in install.log -out enc.log

(注:这里install.log是你想要加密的文件,enc.log是加密后的文件,回车后系统会提示你输入口令)

##解密刚才加密的文件:
openssl enc -d -aes-128-cbc -in enc.log -out install.log

(注:enc.log是刚刚加密的文件,install.log是解密后的文件,-d选项实现解密功能)
#不用手动输入密码加密
openssl enc -des-ede3-cbc -in install.log -out enc.log -pass pass:111111

#解密刚才的文件
openssl enc -d -des-ede3-cbc -in enc.log -out intsll.log -pass pass:11111
#加密/解密 压缩文件
tar zcvf test.tar.gz test  #创建压缩文件
openssl enc -des3 -in test.tar.gz -out test.tar.gz.des3 -k 123456 #加密压缩文件
rm test.tar.gz  #删除现有的
openssl enc -des3 -d -in test.tar.gz.des3 -out test.tar.gz -k 123456

你可能感兴趣的:(linux openssl加密文件)