hv has asked for the wisdom of the Perl Monks concerning the following question:
I'm trying to PGP-encrypt data, by importing a standard text block:
-----BEGIN PGP PUBLIC KEY BLOCK----- data ... -----END PGP PUBLIC KEY BLOCK-----and then encrypting with this example code:
#!/usr/bin/perl -w use Crypt::OpenPGP; use Crypt::OpenPGP::KeyRing; my($keyfile, $email) = @ARGV; my $ring = Crypt::OpenPGP::KeyRing->new(Filename => $keyfile); my $pgp = Crypt::OpenPGP->new(PubRing => $ring); my $crypt = $pgp->encrypt( Data => 'squeamish ossifrage', Recipients => [ $email ], Armour => 1, Cipher => 'CAST5', ); defined($crypt) ? print $crypt : die $pgp->errstr;
This works fine for encrypting with my colleague's key, but only after adding the Cipher => 'CAST5' - without that, his decrypt function complains of a 'bad session key'.
What I don't understand is how I can determine the appropriate cipher given the public key: I don't see anything in the Crypt::OpenPGP interface that would allow me to ask that from the KeyRing or KeyBlock objects once I've determined them.
I suspect I'm missing a fundamental concept somewhere; clues gratefully received.
Hugo
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: Crypt::OpenPGP - determining which cipher to use
by hardburn (Abbot) on Feb 02, 2004 at 15:12 UTC | |
by hv (Prior) on Feb 02, 2004 at 15:31 UTC | |
by hardburn (Abbot) on Feb 02, 2004 at 16:37 UTC | |
by hv (Prior) on Feb 02, 2004 at 17:17 UTC | |
Re: Crypt::OpenPGP - determining which cipher to use
by iburrell (Chaplain) on Feb 03, 2004 at 00:21 UTC | |
by hv (Prior) on Feb 03, 2004 at 01:57 UTC |
Back to
Seekers of Perl Wisdom