NAME

Crypt::OpenPGP::Buffer - Binary in/out buffer

SYNOPSIS

use Crypt::OpenPGP::Buffer;

my $n = Math::BigInt->new( 1 );

my $buf = Crypt::OpenPGP::Buffer->new;
$buf->put_big_int($n);

my $m = $buf->get_big_int;

DESCRIPTION

Crypt::OpenPGP::Buffer subclasses the Data::Buffer class to provide binary in/out buffer capabilities for Crypt::OpenPGP. In addition to the standard Data::Buffer methods, this class adds methods to get and put multiple-precision integers (Math::BigInt objects).

A PGP multiple precision integer is stored in two pieces: a two-octet scalar representing the length of the integer in bits, followed by a string of octets that is a serialized representation of the integer.

USAGE

As Crypt::OpenPGP::Buffer subclasses Data::Buffer there is no need to reproduce the entire documentation of the latter module. Thus this usage section will include only the methods added by Crypt::OpenPGP::Buffer.

$buf->get_big_int

Grabs a multiple-precision integer from the buffer $buf (starting after the current offset position in the buffer) and returns that integer.

get_mp_int() is an alias for this method, for backwards compatibility reasons.

$buf->put_big_int($n)

Serializes a multiple-precision integer into the buffer in the above form (two-octet bitsize, string of octets).

put_mp_int() is an alias for this method, for backwards compatibility reasons.

AUTHOR & COPYRIGHTS

Please see the Crypt::OpenPGP manpage for author, copyright, and license information.