GnuPG::Tie::Encrypt(3) Tied filehandle interface to encryption with the GNU Privacy Guard.


use GnuPG::Tie::Encrypt;
use GnuPG::Tie::Decrypt;
tie *CIPHER, 'GnuPG::Tie::Encrypt', armor => 1, recipient => 'User';
print CIPHER <<EOF;
This is a secret
local $/ = undef;
my $ciphertext = <CIPHER>;
close CIPHER;
untie *CIPHER;
tie *PLAINTEXT, 'GnuPG::Tie::Decrypt', passphrase => 'secret';
print PLAINTEXT $ciphertext;
my $plaintext = <PLAINTEXT>;
# $plaintext should now contains 'This is a secret'


GnuPG::Tie::Encrypt and GnuPG::Tie::Decrypt provides a tied file handle interface to encryption/decryption facilities of the GNU Privacy guard.

With GnuPG::Tie::Encrypt everyting you write to the file handle will be encrypted. You can read the ciphertext from the same file handle.

With GnuPG::Tie::Decrypt you may read the plaintext equivalent of a ciphertext. This is one can have been written to file handle.

All options given to the tie constructor will be passed on to the underlying GnuPG object. You can use a mix of options to output directly to a file or to read directly from a file, only remember than once you start reading from the file handle you can't write to it anymore.


Francis J. Lacoste <[email protected]>


Copyright (c) 1999, 2000 iNsu Innovations Inc. Copyright (c) 2001 Francis J. Lacoste

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.