CasperSecurity

Current Path : /snap/core20/2717/lib/python3.8/__pycache__/
Upload File :
Current File : //snap/core20/2717/lib/python3.8/__pycache__/crypt.cpython-38.pyc

U

�@i�@s0dZddlZzddlZWn0ek
rHejdkr<ed��ned��YnXddlZddl	m
Zddlm
ZejejdZe�ZGd	d
�d
ed
d��Zd&dd�d
d�Zd'dd�ZgZdd�dd�Zedddd�edddd�dD](Zeddeddee�dd�r��qq�edd d!d"�ed#dd$d%�[[dS)(zEWrapper to the POSIX crypt library call and associated functionality.�NZwin32z,The crypt module is not supported on Windowsz;The required _crypt module was not built as part of CPython)�SystemRandom)�
namedtuplez./c@seZdZdZdd�ZdS)�_MethodziClass representing a salt method per the Modular Crypt Format or the
    legacy 2-character crypt method.cCsd�|j�S)Nz<crypt.METHOD_{}>)�format�name)�self�r�/usr/lib/python3.8/crypt.py�__repr__sz_Method.__repr__N)�__name__�
__module__�__qualname__�__doc__r
rrrr	rsrz name ident salt_chars total_size��roundscCsB|dkrtd}|dk	r4t|t�s4t|jj�d���|js@d}nd|j�d�}|jr�|jddkr�|dkrpd}n@t�|d�}|d|>kr�td	��d
|kr�dks�ntd��||d
�d�7}n^|jdk�r|dk	�r d|kr�dks�ntd��|d|�d�7}n|dk	�r t|�d���|d�	dd�t
|j�D��7}|S)zsGenerate a salt for the specified method.

    If not specified, the strongest available method will be used.

    Nrz+ object cannot be interpreted as an integer��$�2��zrounds must be a power of 2��z%rounds out of the range 2**4 to 2**31Z02d)�5�6i�i�ɚ;z+rounds out of the range 1000 to 999_999_999zrounds=z$ doesn't support the rounds argumentcss|]}t�t�VqdS)N)�_srZchoice�
_saltchars)�.0�charrrr	�	<genexpr>Aszmksalt.<locals>.<genexpr>)�methods�
isinstance�int�	TypeError�	__class__rZident�
bit_length�
ValueError�join�rangeZ
salt_chars)�methodr�sZ
log_roundsrrr	�mksalts2

r*cCs&|dkst|t�rt|�}t�||�S)aRReturn a string representing the one-way hash of a password, with a salt
    prepended.

    If ``salt`` is not specified or is ``None``, the strongest
    available method will be selected and a salt generated.  Otherwise,
    ``salt`` may be one of the ``crypt.METHOD_*`` values, or a string as
    returned by ``crypt.mksalt()``.

    N)r rr*�_crypt�crypt)Zword�saltrrr	r,Es
r,cGsVt|f|��}|t�d|<t||d�}td|�}|rRt|�|jkrRt�|�dSdS)NZMETHOD_rrTF)r�globalsr*r,�lenZ
total_sizer�append)rr�argsr(r-�resultrrr	�_add_methodWs

r3ZSHA512r��jZSHA256r�?)�b�y�arZBLOWFISHr��;ZMD5�1��"ZCRYPT��
)N)N)r�sys�_sysr+�ModuleNotFoundError�platform�ImportError�stringZ_stringZrandomrZ
_SystemRandom�collectionsrZ_namedtupleZ
ascii_lettersZdigitsrrrr*r,rr3Z_vr/rrrr	�<module>s2

	&


Hacker Blog, Shell İndir, Sql İnjection, XSS Attacks, LFI Attacks, Social Hacking, Exploit Bot, Proxy Tools, Web Shell, PHP Shell, Alfa Shell İndir, Hacking Training Set, DDoS Script, Denial Of Service, Botnet, RFI Attacks, Encryption
Telegram @BIBIL_0DAY