NAME
Convert::ASCII::Armour - Convert binary octets into ASCII armoured messages.
SYNOPSIS
my $converter = new Convert::ASCII::Armour;
my $message = $converter->armour(
Object => "FOO RECORD",
Headers => {
Table => "FooBar",
Version => "1.23",
},
Content => {
Key => "0x8738FA7382",
Name => "Zoya Hall",
Pic => "....", # gif
},
Compress => 1,
);
my $decoded = $converter->unarmour( $message )
|| die $converter->errstr();
DESCRIPTION
This module converts hashes of binary octets into ASCII messages suitable for transfer over 6-bit clean transport channels. The encoded ASCII resembles PGP's armoured messages, but are in no way compatible with PGP.
Here's a sample encoded message:
-----BEGIN FOO RECORD-----
Version: 1.23
Table: FooBar
eJwzZzA0Z/BNLS5OTE8NycgsVgCiRIVciIAJg6EJg0tiSaqhsYJvYlFyho6CkYGBoQWDoZkRg09+
XnpOZl5qYlJySmpaekZmVnZObl5+QWFRcUlpWXlFZRWXAk7g6OTs4urm7uHp5e3j6+cfEBgUHBIa
Fh4VGaWAR5ehkbGJqZm5hSUeNXWKDsoGcWpaGpq68bba0dWxtTVmDOYMfqW5SalFFpYWlsZGxgBW
NzuZ
=MxpZvjkrv5XyhkVCuXmsBQ==
-----END FOO RECORD-----
METHODS
new()
Constructor.
armour()
Converts a hash of binary octets into an ASCII encoded message. The encoded message has 4 parts: head and tail strings that act as identifiers and delimiters, a cluster of headers at top of the message, Base64 encoded message body and a Base64 encoded MD5 digest of the message body. armour() takes a hash as argument with following keys:
- Object
-
An identification string embedded in head and tail strings.
- Content
-
Content is a hashref that contains the binary octets to be encoded. This hash is serialized, compressed (if specified) and encoded into ASCII with MIME::Base64. The result is the body of the encoded message.
- Headers
-
Headers is a hashref that contains ASCII headers that are placed at top of the encoded message. Headers are encoded as RFC822 headers.
- Compress
-
A boolean parameter that forces armour() to compress the message body.
AUTHOR
Vipul Ved Prakash, <mail@vipul.net>
LICENSE
Copyright (c) 2001, Vipul Ved Prakash. All rights reserved. This code is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
SEE ALSO
MIME::Base64(3), Compress::Zlib(3), Digest::MD5(3)
1 POD Error
The following errors were encountered while parsing the POD:
- Around line 227:
You forgot a '=back' before '=head1'
You forgot a '=back' before '=head1'