.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.42) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "Convert::Base32 3pm" .TH Convert::Base32 3pm "2022-10-13" "perl v5.34.0" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" Convert::Base32 \- Encoding and decoding of base32 strings .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& use Convert::Base32; \& \& $encoded = encode_base32("\ex3a\ex27\ex0f\ex93"); \& $decoded = decode_base32($encoded); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" This module provides functions to convert string from / to Base32 encoding, specified in \s-1RACE\s0 internet-draft. The Base32 encoding is designed to encode non-ASCII characters in DNS-compatible host name parts. .PP See http://tools.ietf.org/html/draft\-ietf\-idn\-race\-03 for more details. .SH "FUNCTIONS" .IX Header "FUNCTIONS" Following functions are provided; like \f(CW\*(C`MIME::Base64\*(C'\fR, they are in \&\fB\f(CB@EXPORT\fB\fR array. See Exporter for details. .IP "encode_base32($str)" 4 .IX Item "encode_base32($str)" Encode data by calling the \fBencode_base32()\fR function. This function takes a string of bytes to encode and returns the encoded base32 string. .IP "decode_base32($str)" 4 .IX Item "decode_base32($str)" Decode a base32 string by calling the \fBdecode_base32()\fR function. This function takes a string to decode and returns the decoded string. .Sp This function might throw the exceptions such as \*(L"Data contains non\-base32 characters\*(R", \*(L"Length of data invalid\*(R" and \*(L"Padding bits at the end of output buffer are not all zero\*(R". .Sp decode_base32 differs from the specification in that upper case letters are treated as their lower case equivalent rather than producing an error. .SH "AUTHOR" .IX Header "AUTHOR" Tatsuhiko Miyagawa .PP Eric Brine .PP This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. .SH "SEE ALSO" .IX Header "SEE ALSO" http://www.ietf.org/internet\-drafts/draft\-ietf\-idn\-race\-03.txt, MIME::Base64, Convert::RACE.