NAME

Encode::Base2N - fast base64, base32, base16 encode/decode functions

SYNOPSIS

use Encode::Base2N qw/encode_base64 decode_base64 encode_base64url encode_base64pad encode_base32 decode_base32 encode_base32low encode_base16 decode_base16 encode_base16low/;

encode_base64("hello");           # => "aGVsbG8"
encode_base64pad("hello");        # => "aGVsbG8="
encode_base64('%$#@!~AM<K>?');    # => "JSQjQCF+QU08Sz4/"
encode_base64url('%$#@!~AM<K>?'); # => "JSQjQCF-QU08Sz4_"
decode_base64("aGVsbG8");         # => "hello"

encode_base32("hello");    # => "NBSWY3DP"
encode_base32low("hello"); # => "nbswy3dp"
decode_base32("nbswy3dp"); # => "hello"

encode_base16("hello");      # => "68656C6C6F"
encode_base16low("hello");   # => "68656c6c6f"
decode_base16("68656C6C6F"); # => "hello"

DESCRIPTION

Encode::Base2N supports Base64/32/16 encodings with or without url mode and padding. It's written in C++ and has also a C++ interface.

FUNCTIONS

Base64

encode_base64($input)

Does Base64 encoding without padding

encode_base64url($input)

Does Base64 encoding without padding using so-called 'url' mode ('-' instead of '+' and '_' instead of '/')

encode_base64pad($input)

Does Base64 encoding with padding

decode_base64($encoded)

Decodes Base64 (all possible variants)

Base32

encode_base32($input)

Does Base32 encoding

encode_base32low($input)

Does Base32 encoding using lowercase alphabet

decode_base32($encoded)

Decodes Base32 (all possible variants)


=head3 Base16

encode_base16($input)

Does Base16 encoding

encode_base16low($input)

Does Base16 encoding using lowercase alphabet

decode_base16($encoded)

Decodes Base16 (all possible variants)

AUTHOR

Pronin Oleg <syber@cpan.org>, Crazy Panda LTD

LICENSE

You may distribute this code under the same terms as Perl itself.