base64.3erl - Man Page

Name

base64 — Provides base64 encode and decode, see
   RFC 2045.

Description

Provides base64 encode and decode, see RFC 2045.

Data Types

base64_alphabet() = 
    65..90 | 97..122 | 48..57 | 43 | 47 | 45 | 95 | 61

Base 64 Encoding alphabet, see RFC 4648.

base64_mode() = standard | urlsafe

Selector for the Base 64 Encoding alphabet used for encoding and decoding. See RFC 4648 Sections 4 and 5.

options() = #{padding => boolean(), mode => base64_mode()}

Customises the behaviour of the encode and decode functions. Default value if omitted entirely or partially is #{mode => standard, padding => true}.

base64_string() = [base64_alphabet()]

Base 64 encoded string.

base64_binary() = binary()

Base 64 encoded binary.

byte_string() = [byte()]

Arbitrary sequences of octets.

Exports

decode(Base64) -> Data
decode_to_string(Base64) -> DataString
mime_decode(Base64) -> Data
mime_decode_to_string(Base64) -> DataString
Types:

Base64 = base64_string() | base64_binary()
Data = binary()
DataString = byte_string()

Decodes a base64 string encoded using the standard alphabet according to RFC 4648 Section 4 to plain ASCII.

mime_decode/1 and mime_decode_to_string/1 strip away illegal characters, while decode/1 and decode_to_string/1 only strip away whitespace characters.

Checks the correct number of = padding characters at the end of the encoded string.

decode(Base64, Options) -> Data
decode_to_string(Base64, Options) -> DataString
mime_decode(Base64, Options) -> Data
mime_decode_to_string(Base64, Options) -> DataString
Types:

Base64 = base64_string() | base64_binary()
Options = options()
Data = binary()
DataString = byte_string()

Decodes a base64 string encoded using the alphabet indicated by the mode option to plain ASCII.

mime_decode/2 and mime_decode_to_string/2 strip away illegal characters, while decode/2 and decode_to_string/2 only strip away whitespace characters.

The mode option can be one of the following:

standard:

Default. Decode the given string using the standard base64 alphabet according to RFC 4648 Section 4, that is "+" and "/" are representing bytes 62 and 63 respectively, while "-" and "_" are illegal characters.

urlsafe:

Decode the given string using the alternative "URL and Filename safe" base64 alphabet according to RFC 4648 Section 5, that is "-" and "_" are representing bytes 62 and 63 respectively, while "+" and "/" are illegal characters.

The padding option can be one of the following:

true:

Default. Checks the correct number of = padding characters at the end of the encoded string.

false:

Accepts an encoded string with missing = padding characters at the end.

encode(Data) -> Base64
encode_to_string(Data) -> Base64String
Types:

Data = byte_string() | binary()
Base64 = base64_binary()
Base64String = base64_string()

Encodes a plain ASCII string into base64 using the standard alphabet according to RFC 4648 Section 4. The result is 33% larger than the data.

Always appends correct number of = padding characters to the encoded string.

encode(Data, Options) -> Base64
encode_to_string(Data, Options) -> Base64String
Types:

Data = byte_string() | binary()
Options = options()
Base64 = base64_binary()
Base64String = base64_string()

Encodes a plain ASCII string into base64 using the alphabet indicated by the mode option. The result is 33% larger than the data.

The mode option can be one of the following:

standard:

Default. Encode the given string using the standard base64 alphabet according to RFC 4648 Section 4.

urlsafe:

Encode the given string using the alternative "URL and Filename safe" base64 alphabet according to RFC 4648 Section 5.

The padding option can be one of the following:

true:

Default. Appends correct number of = padding characters to the encoded string.

false:

Skips appending = padding characters to the encoded string.

Info

stdlib 5.2 Ericsson AB Erlang Module Definition