diff options
Diffstat (limited to 'Doc/lib/libbase64.tex')
-rw-r--r-- | Doc/lib/libbase64.tex | 169 |
1 files changed, 0 insertions, 169 deletions
diff --git a/Doc/lib/libbase64.tex b/Doc/lib/libbase64.tex deleted file mode 100644 index 23b74f0..0000000 --- a/Doc/lib/libbase64.tex +++ /dev/null @@ -1,169 +0,0 @@ -\section{\module{base64} --- - RFC 3548: Base16, Base32, Base64 Data Encodings} - -\declaremodule{standard}{base64} -\modulesynopsis{RFC 3548: Base16, Base32, Base64 Data Encodings} - - -\indexii{base64}{encoding} -\index{MIME!base64 encoding} - -This module provides data encoding and decoding as specified in -\rfc{3548}. This standard defines the Base16, Base32, and Base64 -algorithms for encoding and decoding arbitrary binary strings into -text strings that can be safely sent by email, used as parts of URLs, -or included as part of an HTTP POST request. The encoding algorithm is -not the same as the \program{uuencode} program. - -There are two interfaces provided by this module. The modern -interface supports encoding and decoding string objects using all -three alphabets. The legacy interface provides for encoding and -decoding to and from file-like objects as well as strings, but only -using the Base64 standard alphabet. - -The modern interface, which was introduced in Python 2.4, provides: - -\begin{funcdesc}{b64encode}{s\optional{, altchars}} -Encode a string use Base64. - -\var{s} is the string to encode. Optional \var{altchars} must be a -string of at least length 2 (additional characters are ignored) which -specifies an alternative alphabet for the \code{+} and \code{/} -characters. This allows an application to e.g. generate URL or -filesystem safe Base64 strings. The default is \code{None}, for which -the standard Base64 alphabet is used. - -The encoded string is returned. -\end{funcdesc} - -\begin{funcdesc}{b64decode}{s\optional{, altchars}} -Decode a Base64 encoded string. - -\var{s} is the string to decode. Optional \var{altchars} must be a -string of at least length 2 (additional characters are ignored) which -specifies the alternative alphabet used instead of the \code{+} and -\code{/} characters. - -The decoded string is returned. A \exception{TypeError} is raised if -\var{s} were incorrectly padded or if there are non-alphabet -characters present in the string. -\end{funcdesc} - -\begin{funcdesc}{standard_b64encode}{s} -Encode string \var{s} using the standard Base64 alphabet. -\end{funcdesc} - -\begin{funcdesc}{standard_b64decode}{s} -Decode string \var{s} using the standard Base64 alphabet. -\end{funcdesc} - -\begin{funcdesc}{urlsafe_b64encode}{s} -Encode string \var{s} using a URL-safe alphabet, which substitutes -\code{-} instead of \code{+} and \code{_} instead of \code{/} in the -standard Base64 alphabet. -\end{funcdesc} - -\begin{funcdesc}{urlsafe_b64decode}{s} -Decode string \var{s} using a URL-safe alphabet, which substitutes -\code{-} instead of \code{+} and \code{_} instead of \code{/} in the -standard Base64 alphabet. -\end{funcdesc} - -\begin{funcdesc}{b32encode}{s} -Encode a string using Base32. \var{s} is the string to encode. The -encoded string is returned. -\end{funcdesc} - -\begin{funcdesc}{b32decode}{s\optional{, casefold\optional{, map01}}} -Decode a Base32 encoded string. - -\var{s} is the string to decode. Optional \var{casefold} is a flag -specifying whether a lowercase alphabet is acceptable as input. For -security purposes, the default is \code{False}. - -\rfc{3548} allows for optional mapping of the digit 0 (zero) to the -letter O (oh), and for optional mapping of the digit 1 (one) to either -the letter I (eye) or letter L (el). The optional argument -\var{map01} when not \code{None}, specifies which letter the digit 1 should -be mapped to (when \var{map01} is not \code{None}, the digit 0 is always -mapped to the letter O). For security purposes the default is -\code{None}, so that 0 and 1 are not allowed in the input. - -The decoded string is returned. A \exception{TypeError} is raised if -\var{s} were incorrectly padded or if there are non-alphabet characters -present in the string. -\end{funcdesc} - -\begin{funcdesc}{b16encode}{s} -Encode a string using Base16. - -\var{s} is the string to encode. The encoded string is returned. -\end{funcdesc} - -\begin{funcdesc}{b16decode}{s\optional{, casefold}} -Decode a Base16 encoded string. - -\var{s} is the string to decode. Optional \var{casefold} is a flag -specifying whether a lowercase alphabet is acceptable as input. For -security purposes, the default is \code{False}. - -The decoded string is returned. A \exception{TypeError} is raised if -\var{s} were incorrectly padded or if there are non-alphabet -characters present in the string. -\end{funcdesc} - -The legacy interface: - -\begin{funcdesc}{decode}{input, output} -Decode the contents of the \var{input} file and write the resulting -binary data to the \var{output} file. -\var{input} and \var{output} must either be file objects or objects that -mimic the file object interface. \var{input} will be read until -\code{\var{input}.read()} returns an empty string. -\end{funcdesc} - -\begin{funcdesc}{decodestring}{s} -Decode the string \var{s}, which must contain one or more lines of -base64 encoded data, and return a string containing the resulting -binary data. -\end{funcdesc} - -\begin{funcdesc}{encode}{input, output} -Encode the contents of the \var{input} file and write the resulting -base64 encoded data to the \var{output} file. -\var{input} and \var{output} must either be file objects or objects that -mimic the file object interface. \var{input} will be read until -\code{\var{input}.read()} returns an empty string. \function{encode()} -returns the encoded data plus a trailing newline character -(\code{'\e n'}). -\end{funcdesc} - -\begin{funcdesc}{encodestring}{s} -Encode the string \var{s}, which can contain arbitrary binary data, -and return a string containing one or more lines of -base64-encoded data. \function{encodestring()} returns a -string containing one or more lines of base64-encoded data -always including an extra trailing newline (\code{'\e n'}). -\end{funcdesc} - -An example usage of the module: - -\begin{verbatim} ->>> import base64 ->>> encoded = base64.b64encode('data to be encoded') ->>> encoded -'ZGF0YSB0byBiZSBlbmNvZGVk' ->>> data = base64.b64decode(encoded) ->>> data -'data to be encoded' -\end{verbatim} - -\begin{seealso} - \seemodule{binascii}{Support module containing \ASCII-to-binary - and binary-to-\ASCII{} conversions.} - \seerfc{1521}{MIME (Multipurpose Internet Mail Extensions) Part One: - Mechanisms for Specifying and Describing the Format of - Internet Message Bodies}{Section 5.2, ``Base64 - Content-Transfer-Encoding,'' provides the definition of the - base64 encoding.} -\end{seealso} |