Linux 下的文件加密

来源:互联网 发布:流星网络电视app 编辑:程序博客网 时间:2024/05/29 11:42

以前我在blog 写过两篇关于linux 下目录加密的文章用Cryptkeeper和EncFS 完成目录加密和用Cryptsetup LUKS 加密目录,今天我想说说文件加密,先说简单的用VIM 加密文本文件

vim 加密使用 -x 参数,即

vim -x myfile

然后会提示让你输入两次密码,这样就算给你的文件加上密码了,下次要看文件用VIM 打开会要求输入密码,输入错误密码则会得到一堆乱码,用其他编辑器打开也是一堆乱码。要清除密码只要在正确打开文件后用 ":X" 指令,然后给一个空密码就行。
当然vim 加密还是有很多局限的,算法弱并且中间会有交换文件,交换文件是不加密的,虽然有"-n" 参数可以不使用交换文件但不用交换文件让我不得不时刻记得要存盘。

vim加密的算法很弱所以要更好的保护你的文件你需要专业的加密工具,如openssl,gpg。
对称加密:

a.用openssl 加密文件:

加密

openssl enc -aes-128-ecb -e -in myfile-out myfile-aes

解密

openssl enc -aes-128-ecb -d -in myfile-aes -out myfile

enc 后面跟你具体的加密算法
-aes-128-ecb 所使用的算法
-e/-d 加密/解密
-in 要被加/解密的文件
-out 被加/解密后的文件

b.用GnuPG加密文件

关于GnuPG 之前有另一篇博文 我的GnuPG 使用笔记有关于GnuPG 更多的内容这里只说一下加密。
加密

gpg -c myfile #输入密码后会产生一个myfile.gpg 文件,这就是加密后的文件。

解密

gpg -o myfile -d myfile.gpg #解密文件myfile.gpg 并将解密后的文件输出为myfile。

非对称加密
前面说的都是对称加密,现在说一下非对称加密,这个应该说是我们目前使用的最安全的方法了。
加密

gpg -ea -r "lily.yu" hello.txt #使用lily.yu 这个密钥加密hello.txt,你会得到一个加密后的文件hello.txt.asc。-a 表示已ASCII 输出.

解密

gpg -o new.txt -d hello.txt.asc #解密hello.txt.asc 文件并输出到 new.txt 文件。

至于如何创建密钥管理密钥请参看我的GnuPG 使用笔记

0 0
原创粉丝点击