�
&�`hA � �� � d Z ddlZddlZddlZddlmZ ddlmZm Z m
Z
mZmZ ddl
mZmZ ej e� � ZdZdZdZeZd Zd
ZdZeZdZeeeeeeefZd
ZdZdZdZ G d� d� � Z!dS )a�
oauthlib.oauth1.rfc5849
~~~~~~~~~~~~~~
This module is an implementation of various logic needed
for signing and checking OAuth 1.0 RFC 5849 requests.
It supports all three standard signature methods defined in RFC 5849:
- HMAC-SHA1
- RSA-SHA1
- PLAINTEXT
It also supports signature methods that are not defined in RFC 5849. These are
based on the standard ones but replace SHA-1 with the more secure SHA-256:
- HMAC-SHA256
- RSA-SHA256
� N)�Request�generate_nonce�generate_timestamp�
to_unicode� urlencode� )�
parameters� signaturez HMAC-SHA1zHMAC-SHA256zHMAC-SHA512zRSA-SHA1z
RSA-SHA256z
RSA-SHA512� PLAINTEXT�AUTH_HEADER�QUERY�BODY�!application/x-www-form-urlencodedc �� � e Zd ZdZeej eej e ej
eej e
ej eej eej iZed� � � Zddddeedddddddf
d�Zd� Zd� Zd� Zd
d
�Zdd�ZdS )�Clientz2A client used to sign OAuth 1.0 RFC 5849 requests.c � � || j |< |