|
NAMECrypt::GPG - An Object Oriented Interface to GnuPG.VERSION$Revision: 1.64 $ $Date: 2007/04/02 13:34:25 $ SYNOPSISuse Crypt::GPG; my $gpg = new Crypt::GPG; $gpg->gpgbin('/usr/bin/gpg'); # The GnuPG executable. $gpg->secretkey('0x2B59D29E'); # Set ID of default secret key. $gpg->passphrase('just testing'); # Set passphrase. # Sign a message: my $sign = $gpg->sign('testing again'); # Encrypt a message: my @encrypted = $gpg->encrypt ('top secret', 'test@bar.com'); # Get message info: my @recipients = $gpg->msginfo($encrypted); # Decrypt a message. my ($plaintext, $signature) = $gpg->verify($encrypted); # Key generation: $status = $gpg->keygen ('Test', 'test@foo.com', 'ELG-E', 2048, 0, 'test passphrase'); print while (<$status>); close $status; # Key database manipulation: $gpg->addkey($key, @ids); @keys = $gpg->keydb(@ids); # Key manipulation: $key = $keys[0]; $gpg->delkey($key); $gpg->disablekey($key); $gpg->enablekey($key); $gpg->keypass($key, $oldpassphrase, $newpassphrase); $keystring = $gpg->export($key); DESCRIPTIONThe Crypt::GPG module provides access to the functionality of the GnuPG (www.gnupg.org) encryption tool through an object oriented interface.It provides methods for encryption, decryption, signing, signature verification, key generation, key certification, export and import. Key-server access is on the todo list. This release of the module may create compatibility issues with previous versions. If you find any such problems, or any bugs or documentation errors, please do report them to crypt-gpg at neomailbox.com. CONSTRUCTOR
DATA METHODS
OBJECT METHODS
Crypt::GPG::SignatureDocumentation coming soon. Crypt::GPG::KeyDocumentation coming soon. TODO
BUGS
CHANGELOG$Log: GPG.pm,v $
Revision 1.64 2014/09/18 12:21:25 ashish - Applied Fix for RT 68339 (thanks to Todd Rinaldo) Revision 1.63 2007/04/02 13:34:25 ashish - Fixed a bug introduced by the changes in 1.62 wrt default signing key Revision 1.62 2007/03/31 11:28:12 ashish - Fixed debug() - Fixed regex for signature line - Non-forking version of keygen() (thanks to Greg Hill) - Enabled use of default Key ID for signing - Allow for GPG returning 8 or 16 bit KeyIDs (thanks to Roberto Jimenoca) - Fixed tempfiles being left around after decrypt() - Changed exit() to CORE::exit() (suggested by Jonathan R. Baker) Revision 1.61 2006/12/21 12:36:28 ashish - Skip tests if gpg not found. - Use File::Spec to determine tmpdir. Suggested by Craig Manley. Revision 1.59 2006/12/19 12:51:54 ashish - Documentation fixes. - Removed tests for obsolete 768 bit keys. - Bugfixes. - Tested with gpg 1.4.6. Revision 1.57 2005/12/15 17:09:17 ashish - Fixed bug in decrypt - Fixed small key certification bugs. Revision 1.50 2005/02/10 12:32:51 cvs - Overhauled to use IPC::Run instead of Expect. - Test suite split up into multiple scripts. Revision 1.42 2002/12/11 03:33:19 cvs - Fixed bug in certify() when trying to certify revoked a key. - Applied dharris\x40drh.net's patch to allow for varying date formats between gpg versions, and fix time parsing and the Crypt::GPG::Signature autoloaded accessor functions. Revision 1.40 2002/09/23 23:01:53 cvs - Fixed a bug in keypass() - Documentation fixes. Revision 1.37 2002/09/21 02:37:49 cvs - Fixed signing option in encrypt. Revision 1.36 2002/09/21 00:03:29 cvs - Added many tests and fixed a bunch of bugs. Revision 1.34 2002/09/20 19:07:11 cvs - Extensively modified formatting to make the code easier to read. All lines are now < 80 chars. - Removed all instances of invoking a shell. - Misc. other stuff. Revision 1.31 2002/09/20 16:38:45 cvs - Cleaned up export and addkey. Fixed(?) addkey clobbering trustdb problem (thanks to jrray\x40spacemeat.com for the patch). Added support for signature verification on addkey pretend. - No calls to POSIX::tmpnam remain (thanks to radek\x40karnet.pl and jrray\x40spacemeat.com for suggesting File::Temp). Revision 1.30 2002/09/20 15:25:47 cvs - Fixed up tempfile handling and eliminated calls to the shell in encrypt(), sign() and msginfo(). Passing all currently defined tests. - Hopefully also fixed signing during encryption and verification of detached signatures. Not tested this yet. Revision 1.29 2002/09/20 11:19:02 cvs - Removed hack to Version: string. Only the Comment: string in GPG output is now modified by Crypt::GPG. (Thanks to eisen\x40schlund.de for pointing out the bug here) - Removed code that incorrectly replaced 'PGP MESSAGE' with 'PGP SIGNATURE' on detached signatures. (Thanks to ddcc\x40mit.edu for pointing this out). - Fixed up addkey() to properly handle pretend mode and to selectively import only requested key IDs from a key block. - parsekeys() now also figures out which keyring a key belongs to. - Added certify() method, to enable certifying keys. - Added Crypt::GPG::Signature methods - validity(), keyid(), time() and trusted(). AUTHORCrypt::GPG is Copyright (c) 2000-2007 Ashish Gulhati <crypt-gpg at neomailbox.com>. All Rights Reserved.ACKNOWLEDGEMENTSThanks to Barkha, for inspiration; to the GnuPG team; and to everyone who writes free software.LICENSEThis code is free software; you can redistribute it and/or modify it under the same terms as Perl itself.BUGS REPORTS, PATCHES, FEATURE REQUESTSAre very welcome. Email crypt-gpg at neomailbox.com.
Visit the GSP FreeBSD Man Page Interface. |