在Ubuntu 12.04 LTS中加密/解密单个文件
我需要能够在12.04 LTS中加密/解密存储在外部HD上的单个文本文件,最好是GUI应用程序(如果有的话),否则命令行。 谢谢。
加密单个文件的简单方法是使用openssl
:
openssl des3 < youfile.txt > yourfile.txt.des3
这将提示您输入密码,稍后在解密文件时需要输入密码。
openssl des3 -d < yourfile.txt.des3 > yourfile.txt.decrypted
要使这个“图形化”,你可以把它放在Nautilus
脚本中,并从上下文菜单中访问它。 (参见Nautilus
的文档。)
UPDATE
des3
只是一个例子。 运行openssl list-cipher-algorithms
以查看完整的密码列表。
让我们假设一个人想要加密名为’ message.txt ‘的文件:
1.使用GPG加密文件,供个人使用
I.使用密码加密文件(而不是私钥)
Ii 。 命令: gpg -c message.txt
执行此操作; 它要求输入密码(和密码确认)并生成加密的’message.txt.gpg’,它是二进制的。
I.ii。 如果你想生成一个ASCII加密文件,即该文件的base64(我认为),你可以使用gpg -c --armor message.txt
这将生成一个’message.txt.asc’,它与由之前的命令生成,但是base64编码,即文本模式下的加密文件( .asc ,而不是.gpg的二进制文件)。
II。 使用私钥加密文件
II.i。 如果要使用密钥加密文件,而不是仅使用passphare,请使用命令gpg -e -r 'yourname' message.txt
-r’yourname’message.txt。 参数’yourname’应包含用于创建私钥的名称的一部分。 如果你不给-r参数,gpg会要求它。 您可以键入我们的名称(与您在命令行上键入的名称相同)。
II.ii。 Point II.i会给你一个二进制文件。 如果要获取ASCII文件,请使用–armor。 gpg -e -r 'yourname' --armor message.txt
。
2.解密用GPG加密的文件
要解密文件,请使用命令gpg -d --output OUTPUTFILE message.txt.gpg
。 如果密码正确,这将要求密码,然后将文件message.txt.gpg解密为OUTPUTFILE 。 此passhrase是您直接使用的(点I.,- -c
参数),或通过您的私钥(点II。, – -e
参数)这适用于二进制(.gpg)或ascii(.asc)文件。 如果你压缩--output FILE
,它会输出到console(stdout),然后你也可以这样做,也就是说,将它重定向到一个文件: gpg -d message.txt.gpg > OUTPUTFILE.txt
两者都做同样的事情。 8)
试试http://www.aescrypt.com/它很棒。
https://stackoverflow.com/questions/2811528/can-i-use-my-ssh-public-key-to-decrypt-a-file是关于相关主题的问题。 如果我没有弄错的话,你可以使用相同的加密原则。
对于(GnuPG)1.4.16
gpg -a --output outfile.txt --encrypt infile.txt
接下来会提示您:
Enter the user ID. End with an empty line:
可以通过运行找到“用户ID”
gpg --list-keys