GnuPG::Tie(3)

NAME
GnuPG::Tie::Encrypt - Tied filehandle interface to encryption with the GNU Privacy Guard.

GnuPG::Tie::Decrypt - Tied filehandle interface to decryption with the GNU Privacy Guard.

SYNOPSIS
    use GnuPG::Tie::Encrypt;
    use GnuPG::Tie::Decrypt;
    tie *CIPHER, 'GnuPG::Tie::Encrypt', armor => 1, recipient => 'User';
    print CIPHER <<EOF
This is a secret
EOF
    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'
    close PLAINTEXT;
    untie PLAINTEXT

DESCRIPTION
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 ouput 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.

IMPLEMENTATIONS DETAILS
This interface will fork twice, once for the gnupg process and one the controls the gpg process.

AUTHOR
Francis J. Lacoste <francis.lacoste@iNsu.COM>

COPYRIGHT
Copyright (c) 1999, 2000 iNsu Innovations Inc.

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.

SEE ALSO
gpg(1) GnuPG(3)