HOME


Mini Shell 1.0
Redirecting to https://devs.lapieza.net/iniciar-sesion Redirecting to https://devs.lapieza.net/iniciar-sesion.
DIR: /proc/self/root/usr/lib/python3/dist-packages/jwt/__pycache__/
Upload File :
Current File : //proc/self/root/usr/lib/python3/dist-packages/jwt/__pycache__/api_jwk.cpython-311.pyc
�

&�)cE���ddlmZddlZddlZddlmZddlmZmZm	Z	Gd�d��Z
Gd�d	��ZGd
�d��ZdS)�)�annotationsN�)�get_default_algorithms)�InvalidKeyError�
PyJWKError�
PyJWKSetErrorc��eZdZdd�Zedd���Zedd���Zed���Zed���Z	ed���Z
dS)	�PyJWKNc�D�t��|_||_|j�dd��}|st	d|j�����|s5t|jt��r|j�dd��}|s�|j�dd��}|dkr8|dks|sd}n�|dkrd	}n�|d
krd}ny|dkrd
}npt	d|�����|dkrd}nU|dkrd}nL|dkr4|st	d|j�����|dkrd}n$t	d|�����t	d|�����|j�|��|_|jstd|j�����|j�	|j��|_
dS)N�ktyzkty is not found: �alg�crv�ECzP-256�ES256zP-384�ES384zP-521�ES512�	secp256k1�ES256KzUnsupported crv: �RSA�RS256�oct�HS256�OKPzcrv is not found: �Ed25519�EdDSAzUnsupported kty: z$Unable to find a algorithm for key: )r�_algorithms�	_jwk_data�getr�
isinstance�dict�	Algorithmr�from_jwk�key)�self�jwk_data�	algorithmrrs     �-/usr/lib/python3/dist-packages/jwt/api_jwk.py�__init__zPyJWK.__init__s���1�3�3���!����n� � ���-�-���	I�!�"G�t�~�"G�"G�H�H�H��	8�Z����=�=�	8���*�*�5�$�7�7�I��	A��.�$�$�U�D�1�1�C��d�{�{��'�>�>��>� '�I�I��G�^�^� '�I�I��G�^�^� '�I�I��K�'�'� (�I�I�)�*C�c�*C�*C�D�D�D�����#�	�	�����#�	�	������Q�)�*O�t�~�*O�*O�P�P�P��)�#�#� '�I�I�)�*C�c�*C�*C�D�D�D�%�&?�#�&?�&?�@�@�@��)�-�-�i�8�8����~�	V��T�D�N�T�T�U�U�U��>�*�*�4�>�:�:�����c�"�t||��S�N)r
)�objr&s  r'�	from_dictzPyJWK.from_dict9s���S�)�$�$�$r)c�`�tj|��}t�||��Sr+)�json�loadsr
r-)�datar&r,s   r'�	from_jsonzPyJWK.from_json=s%���j��������s�I�.�.�.r)c�8�|j�dd��S)Nr�rr�r$s r'�key_typezPyJWK.key_typeB����~�!�!�%��.�.�.r)c�8�|j�dd��S)N�kidr4r5s r'�key_idzPyJWK.key_idFr7r)c�8�|j�dd��S)N�user4r5s r'�public_key_usezPyJWK.public_key_useJr7r)r+)�__name__�
__module__�__qualname__r(�staticmethodr-r2�propertyr6r:r=�r)r'r
r

s�������,;�,;�,;�,;�\�%�%�%��\�%��/�/�/��\�/��/�/��X�/��/�/��X�/��/�/��X�/�/�/r)r
c�H�eZdZd
d�Zed���Zed���Zd�Zd	S)�PyJWKSet�keys�
list[dict]�return�Nonec�F�g|_|std���t|t��std���|D]:}	|j�t|�����+#t$rY�7wxYwt|j��dkrtd���dS)Nz$The JWK Set did not contain any keyszInvalid JWK Set valuerz+The JWK Set did not contain any usable keys)rFrr�list�appendr
r�len)r$rFr#s   r'r(zPyJWKSet.__init__Ps�����	��	H�� F�G�G�G��$��%�%�	9�� 7�8�8�8��	�	�C�
��	� � ��s���,�,�,�,���
�
�
���
�����t�y�>�>�Q���� M�N�N�N��s�'A*�*
A7�6A7c�L�|�dg��}t|��S)NrF)rrE)r,rFs  r'r-zPyJWKSet.from_dictcs!���w�w�v�r�"�"����~�~�r)c�^�tj|��}t�|��Sr+)r/r0rEr-)r1r,s  r'r2zPyJWKSet.from_jsonhs%���j������!�!�#�&�&�&r)c�X�|jD]}|j|kr|cS�td|�����)Nzkeyset has no key for kid: )rFr:�KeyError)r$r9r#s   r'�__getitem__zPyJWKSet.__getitem__msE���9�	�	�C��z�S� � ��
�
�
�!��:�S�:�:�;�;�;r)N)rFrGrHrI)r>r?r@r(rAr-r2rRrCr)r'rErEOsq������O�O�O�O�&����\���'�'��\�'�<�<�<�<�<r)rEc�"�eZdZdd�Zd�Zd�ZdS)�PyJWTSetWithTimestamp�jwk_setrEc�D�||_tj��|_dSr+)rU�time�	monotonic�	timestamp)r$rUs  r'r(zPyJWTSetWithTimestamp.__init__us�������)�)����r)c��|jSr+)rUr5s r'�get_jwk_setz!PyJWTSetWithTimestamp.get_jwk_setys
���|�r)c��|jSr+)rYr5s r'�
get_timestampz#PyJWTSetWithTimestamp.get_timestamp|s
���~�r)N)rUrE)r>r?r@r(r[r]rCr)r'rTrTtsF������*�*�*�*��������r)rT)
�
__future__rr/rW�
algorithmsr�
exceptionsrrrr
rErTrCr)r'�<module>ras���"�"�"�"�"�"���������.�.�.�.�.�.�B�B�B�B�B�B�B�B�B�B�B/�B/�B/�B/�B/�B/�B/�B/�J"<�"<�"<�"<�"<�"<�"<�"<�J	�	�	�	�	�	�	�	�	�	r)