Looking for simple wrapper for symmetric key file encryption

Andy Ruddock andy.ruddock at rainydayz.org
Sun Jan 19 12:12:25 CET 2014


I use ecryptfs, as packages are available for my distro (Debian) which
make it easy to install and use.

I wouldn't like to make any claims about "best practice", for the most
part I rely on defaults provided by more knowledgeable folks than myself.


Mr. Clif wrote:
> So no one got back to me.
> 
> Does anyone use symmetric file encryption? What is the best practice
> here? I heard of another solution which was to mount an encrypted
> directory with fuser to drop files into. I think I would wounder how
> safe the passphrase was for mounted filesystems, though I know of some
> techniques for protecting them.
> 
> Any pointers regarding best practices for  symmetric file encryption
> would be much appreciated.
> 
>     Thanks,
>     Clif
> 
> On 01/17/2014 01:15 PM, Mr. Clif wrote:
>> Greetings!
>>
>> I've been happily using pgp and gpg off and on for decades. One thing
>> I never quite figured out was what the best way to use it for
>> encrypting sensitive files on disk. After doing that one has to
>> remember to cleanup after themselves and delete all the leftover
>> plaintext versions of the file, or it kind of defeats the whole
>> purpose, and its pretty easy to make a mistake when doing it manually.
>> I always felt that GPG should help you a bit more in that regard. Now
>> I know that full disk encryption might be a way around this, but it
>> seems like overkill if you just have a couple of files to protect.
>>
>> I have searched high and low and checked out GnuPG Shell, GPA,
>> Seahorse, XAP, and some other misc wrappers but nothing seemed to fit
>> my use case. So I wrote a simple wrapper in perl. Basically it just
>> lets you toggle a file between plaintext and encrypted forms without
>> letting the plaintext version touch/remain on the disk, unless that is
>> what you want.
>>
>> #! /usr/bin/perl -U
>> #       This Perl script is a wrapper around GPG to decrypt or encrypt
>> a file.
>> #    It's goal is to try to prevent plaintext from touching, or remaining
>> #    on the disk, something GPG fails to do. If there is a new file
>> created
>> #    It will be in the same directory as the original unless you
>> specify a new
>> #    path in a second arg.
>> #
>> #    By Clif 12/05/13
>> #
>>
>> # External utilities
>> $GPG   = "/usr/bin/gpg";              # GnuPG 1.4.15
>> $SHRED = "/usr/bin/shred";                      # secure file deleter
>> (GNU coreutils) 8.13
>>
>> # Arguments
>> ($arg, $dest) = @ARGV;
>>
>> # Break down the pathname
>> $path = $1 if $arg  =~ /^(.*?)(\/[^\/]*)$/;
>> $file = $1 if $arg  =~ /([^\/]+)\/?$/;
>> $base = $1 if $file =~ /^(.+?)(\.[^.]*)?$/;
>> $ext  = $1 if $file =~ /\.([^. ]*)\s*$/;
>>
>> # Get destination
>> if ($dest) {
>>      $destp = 1;
>>      $dest .= "/$base" if (-d $dest);
>>      $dest =~ s/\.asc\s*$//;
>> } else { $dest = $path ? "$path/$base" : $base }
>>
>> # Is this a planetext or an encrypted file?
>>
>> if (-r $arg) {
>>     if ($ext eq "asc") {                    # Encrypted
>>         if ($destp) { system("$GPG -o $dest $arg") }
>>         else        { system("$GPG -o -     $arg") }
>>     } else {                        # Plaintext
>>         unlink "${dest}.asc";
>>         $err = system("$GPG -o ${dest}.asc -ca --cipher-algo AES256
>> $arg");
>>         if ($err) { print "ERROR = $err\n" }
>>         else      { system("$SHRED -un9 $arg") }
>>     }
>> } else { warn "No such file: $arg\n" }
>> # All done
>>
>>
>> Obviously it could be much more thorough but I just wanted to get the
>> idea across. I was also thinking about adding a RAM based editing
>> feature but I didn't want to reinvent the wheel if someone knows of a
>> similar project.
>>
>>     Thanks for any comments you might have,
>>     Clif
>>
>>
> 
> 
> _______________________________________________
> Gnupg-users mailing list
> Gnupg-users at gnupg.org
> http://lists.gnupg.org/mailman/listinfo/gnupg-users


-- 
Andy Ruddock
------------
andy.ruddock at rainydayz.org (OpenPGP Key ID 0xB0324245)

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 900 bytes
Desc: OpenPGP digital signature
URL: </pipermail/attachments/20140119/b7805c84/attachment.sig>


More information about the Gnupg-users mailing list