%PDF- %PDF-
| Direktori : /usr/lib/python3.9/site-packages/passlib/__pycache__/ |
| Current File : //usr/lib/python3.9/site-packages/passlib/__pycache__/win32.cpython-39.opt-1.pyc |
a
f�Wc
� @ sj d Z ddlmZ ede� ddlmZ ddlmZ ddlm Z ddl
mZ g d�Zd Z
ejZddd
�ZdS )a passlib.win32 - MS Windows support - DEPRECATED, WILL BE REMOVED IN 1.8
the LMHASH and NTHASH algorithms are used in various windows related contexts,
but generally not in a manner compatible with how passlib is structured.
in particular, they have no identifying marks, both being
32 bytes of binary data. thus, they can't be easily identified
in a context with other hashes, so a CryptHandler hasn't been defined for them.
this module provided two functions to aid in any use-cases which exist.
.. warning::
these functions should not be used for new code unless an existing
system requires them, they are both known broken,
and are beyond insecure on their own.
.. autofunction:: raw_lmhash
.. autofunction:: raw_nthash
See also :mod:`passlib.hash.nthash`.
� )�warnz�the 'passlib.win32' module is deprecated, and will be removed in passlib 1.8; please use the 'passlib.hash.nthash' and 'passlib.hash.lmhash' classes instead.)�hexlify)�unicode)�des_encrypt_block)�nthash)r �
raw_lmhash�
raw_nthashs KGS!@#$%�asciiFc C sn t | t�r| �|�} | �� dd� ddt| � }t|dd� t�t|dd� t� }|rjt|��d�S |S )z]encode password using des-based LMHASH algorithm; returns string of raw bytes, or unicode hexN� � � r ) �
isinstancer �encode�upper�lenr �LM_MAGICr �decode)Zsecret�encoding�hex�ns�out� r �1/usr/lib/python3.9/site-packages/passlib/win32.pyr 5 s
$r N)r F)�__doc__�warningsr �DeprecationWarningZbinasciir Zpasslib.utils.compatr Zpasslib.crypto.desr Zpasslib.hashr �__all__r r r r r r r �<module> s �