o
    	hs
                     @   s   d dl mZ ddlmZmZmZmZ ejZejZej	ej
ks J ejZejZejZejZejZejZejZejZejZejZejZejZejZejejksOJ ejZejZejZejZejZejZej Z!ejZ"ej#Z$de%de%de&fddZ#d	S )
    )CryptPrefixError   )_argon2argon2iargon2idscryptpassword_hashpasswordreturnc                 C   sV   |  tjrt| |S |  tjrt| |S tjr'|  tjr't| |S td)z
    Takes a modular crypt encoded stored password hash derived using one
    of the algorithms supported by `libsodium` and checks if the user provided
    password will hash to the same string when using the parameters saved
    in the stored hash
    z0given password_hash is not in a supported format)
startswithr   	STRPREFIXverifyr   r   	AVAILABLEr   )r   r	    r   V/var/www/html/optinet_system/venv/lib/python3.10/site-packages/nacl/pwhash/__init__.pyr   9   s   r   N)'nacl.exceptionsr    r   r   r   r   r   PWHASH_SIZEALG_ARGON2_DEFAULTALG_ARGON2ID13
PASSWD_MIN
PASSWD_MAXMEMLIMIT_MAXMEMLIMIT_MINOPSLIMIT_MAXOPSLIMIT_MINOPSLIMIT_INTERACTIVEMEMLIMIT_INTERACTIVEOPSLIMIT_MODERATEMEMLIMIT_MODERATEOPSLIMIT_SENSITIVEMEMLIMIT_SENSITIVEstrALG	SALTBYTESSCRYPT_SALTBYTESSCRYPT_PWHASH_SIZESCRYPT_OPSLIMIT_INTERACTIVESCRYPT_MEMLIMIT_INTERACTIVESCRYPT_OPSLIMIT_SENSITIVESCRYPT_MEMLIMIT_SENSITIVEkdfkdf_scryptsalsa208sha256scryptsalsa208sha256_strr   verify_scryptsalsa208sha256bytesboolr   r   r   r   <module>   s:   