问题描述
我需要能够在12.04 LTS中加密/解密存储在外部HD上的单个文本文件,最好是GUI应用程序(如果有的话),否则命令行。谢谢。
最佳解决方法
加密单个文件的简单方法是使用openssl
:
openssl des3 < youfile.txt > yourfile.txt.des3
这将提示您输入密码,稍后在解密文件时需要输入密码。
openssl des3 -d < yourfile.txt.des3 > yourfile.txt.decrypted
要制作此”graphical”,您可以将其放在Nautilus
脚本中,并可从上下文菜单中访问它。 (请参阅Nautilus
的文档。)
UPDATE
des3
就是一个例子。运行openssl list-cipher-algorithms
以查看完整的密码列表。
次佳解决方法
让我们假设一个人想要加密一个名为’message.txt’的文件:
1.使用GPG加密文件,供个人使用
I.使用密码加密文件(而不是私钥)
I.I。命令: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
。参数’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/它很棒。