← Back
Editing: b64.cpython-38.pyc
U ��]� � @ s( d Z ddlZddlZdd� Zdd� ZdS )a `JOSE Base64`_ is defined as: - URL-safe Base64 - padding stripped .. _`JOSE Base64`: https://tools.ietf.org/html/draft-ietf-jose-json-web-signature-37#appendix-C .. Do NOT try to call this module "base64", as it will "shadow" the standard library. � Nc C s, t | tj�std�tj���t�| ��d�S )z�JOSE Base64 encode. :param data: Data to be encoded. :type data: bytes :returns: JOSE Base64 string. :rtype: bytes :raises TypeError: if ``data`` is of incorrect type zargument should be {0}� =)� isinstance�six�binary_type� TypeError�format�base64Zurlsafe_b64encode�rstrip��data� r �,/usr/lib/python3/dist-packages/josepy/b64.py� b64encode s r c C sl t | tj�r:z| �d�} W qN tk r6 td��Y qNX nt | tj�sNtd��t� | ddt | �d �S )a^ JOSE Base64 decode. :param data: Base64 string to be decoded. If it's unicode, then only ASCII characters are allowed. :type data: bytes or unicode :returns: Decoded data. :rtype: bytes :raises TypeError: if input is of incorrect type :raises ValueError: if input is unicode with non-ASCII characters �asciiz5unicode argument should contain only ASCII charactersz#argument should be a str or unicoder � )r r Zstring_types�encode�UnicodeEncodeError� ValueErrorr r r Zurlsafe_b64decode�lenr r r r � b64decode# s �r )�__doc__r r r r r r r r �<module> s
Save File
Cancel