Сообщить об ошибке.

Функции b32encode() и b32decode() модуля base64 в Python

Кодирование/декодирование с помощью Base32

Синтаксис:

import base64

base64.b32encode(s)
base64.b32decode(s, casefold=False, map01=None)

Параметры:

  • s - байтоподобный объект,
  • casefold=False - допустим ли в качестве ввода строчный алфавит,
  • map01=None - какой букве должна быть сопоставлена ​​цифра 1.

Возвращаемое значение:

Описание:

Функция base64.b32encode() кодирует байтоподобный объект s с помощью Base32 и возвращает закодированную байтовую строку.

Функция base64.b32decode() расшифровывает/декодирует байтоподобный объект s или строку ASCII, закодированный в Base32 байтоподобный объект или строку ASCII s и возвращает декодированную байтовую строку.

Необязательный аргумент casefold - это флаг, указывающий, допустим ли в качестве ввода строчный алфавит. В целях безопасности по умолчанию установлено значение False.

RFC 3548 допускает необязательное сопоставление цифры 0 с буквой O и необязательное сопоставление цифры 1 с буквой I или буквой L.

Необязательный аргумент map01, если не равен None, указывает, какой букве должна быть сопоставлена ​​цифра 1, при этом цифра 0 всегда отображается как буква O.

В целях безопасности по умолчанию установлено значение None, поэтому 0 и 1 не допускаются во входных данных.

Если s заполнена неправильно или если во входных данных присутствуют не алфавитные символы, то возникает ошибка binascii.Error.

Примеры использования:

>>> import base64
>>> str = 'Привет!'
# кодируем в байты
>>> str_bytes = str.encode('utf-8')
# кодируем в base32
>>> encoded = base64.b32encode(str_bytes)
>>> encoded
# b'2CP5DAGQXDILFUFV2GBCC==='

# расшифровываем закодированную строку в base32
>>> data = base64.b32decode(encoded)
>>> data.decode('utf-8')
# 'Привет!'