3 œäL]‡ ã@sìddlmZddlmZddlmZmZmZmZej Z ej Z ej ej ksLt ‚ejZejZejZejZejZejZejZejZejZejZejZejZejZejejksªt ‚ejZej ZejZejZ ejZ!ejZ"ej#Z$ejZ%ej&Z'dd„Z&dS)é)Úabsolute_import)ÚInvalidkeyErroré)Ú_argon2Úargon2iÚargon2idÚscryptcCsT|jtjƒrtj||ƒS|jtjƒr0tj||ƒS|jtjƒrHtj||ƒStdƒ‚dS)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 formatN)Ú startswithrÚ STRPREFIXÚverifyrrr)Z password_hashÚpassword©r ú8/tmp/pip-install-wfra5znf/pynacl/nacl/pwhash/__init__.pyr :s      r N)(Ú __future__rZnacl.exceptionsrÚrrrrr Z PWHASH_SIZEZALG_ARGON2_DEFAULTZALG_ARGON2ID13ÚAssertionErrorZ PASSWD_MINZ PASSWD_MAXZ MEMLIMIT_MAXZ MEMLIMIT_MINZ OPSLIMIT_MAXZ OPSLIMIT_MINZOPSLIMIT_INTERACTIVEZMEMLIMIT_INTERACTIVEZOPSLIMIT_MODERATEZMEMLIMIT_MODERATEZOPSLIMIT_SENSITIVEZMEMLIMIT_SENSITIVEÚstrZALGZ SALTBYTESZSCRYPT_SALTBYTESZSCRYPT_PWHASH_SIZEZSCRYPT_OPSLIMIT_INTERACTIVEZSCRYPT_MEMLIMIT_INTERACTIVEZSCRYPT_OPSLIMIT_SENSITIVEZSCRYPT_MEMLIMIT_SENSITIVEZkdfZkdf_scryptsalsa208sha256Zscryptsalsa208sha256_strr Zverify_scryptsalsa208sha256r r r rÚs: