May 26, 2018
Pure-Perl OpenPGP-compatible PGP implementation
CryptOpenPGP is a pure-Perl implementation of the OpenPGP standard. In addition to support for the standard itself, CryptOpenPGP claims compatibility with many other PGP implementations, both those that support the standard and those that preceded it.
CryptOpenPGP provides signing/verification, encryption/decryption, keyring management, and key-pair generation; in short it should provide you with everything you need to PGP-enable yourself. Alternatively it can be used as part of a larger system; for example, perhaps you have a web-form-to-email generator written in Perl, and you’d like to encrypt outgoing messages, because they contain sensitive information. CryptOpenPGP can be plugged into such a scenario, given your public key, and told to encrypt all messages; they will then be readable only by you.
This module currently supports RSA and DSA for digital signatures, and RSA and ElGamal for encryption/decryption. It supports the symmetric ciphers 3DES, Blowfish, IDEA, Twofish, and Rijndael AES. Rijndael is supported for key sizes of 128, 192, and 256 bits. CryptOpenPGP supports the digest algorithms MD5, SHA-1, and RIPE-MD/160. And it supports ZIP and Zlib compression.