gh2 ddlmZddlZddlZddlmZddlmZmZm Z ddl m Z ddl mZddlmZejdzZGd d eZdS) ) annotationsN)utils)AlreadyFinalized InvalidKeyUnsupportedAlgorithm)openssl) constant_time)KeyDerivationFunctionc*eZdZ ddd ZddZddZdS)ScryptNsaltbyteslengthintnrpbackend typing.Anyclddlm}|std||_t jd||dks ||dz zdkrtd|dkrtd|dkrtd d |_||_ ||_ ||_ ||_ dS) Nr)rz/This version of OpenSSL does not support scryptrr z-n must be greater than 1 and be a power of 2.z%r must be greater than or equal to 1.z%p must be greater than or equal to 1.F) ,cryptography.hazmat.backends.openssl.backendrscrypt_supportedr_lengthr _check_bytes ValueError_used_salt_n_r_p)selfrrrrrrossls /builddir/build/BUILD/imunify360-venv-2.6.0/opt/imunify360/venv/lib64/python3.11/site-packages/cryptography/hazmat/primitives/kdf/scrypt.py__init__zScrypt.__init__s      $$&& &A   64((( q55Q!a%[Q&&LMM M q55DEE E q55DEE E   key_materialreturnc |jrtdd|_tjd|tj||j|j|j |j t|j S)Nz'Scrypt instances can only be used once.Tr() rrr_check_byteslike rust_opensslkdf derive_scryptrr r!r" _MEM_LIMITr)r#r(s r%derivez Scrypt.derive<sp : N"#LMM M  ~|<<<--  J G G G  L   r' expected_keyNonecx||}tj||stddS)NzKeys do not match.)r0r bytes_eqr)r#r(r1 derived_keys r%verifyz Scrypt.verifyMsAkk,// %k<@@ 3122 2 3 3r')N) rrrrrrrrrrrr)r(rr)r)r(rr1rr)r2)__name__ __module__ __qualname__r&r0r6r'r%r r s[#     D    "333333r'r ) __future__rsystyping cryptographyrcryptography.exceptionsrrr"cryptography.hazmat.bindings._rustrr,cryptography.hazmat.primitivesr "cryptography.hazmat.primitives.kdfr maxsizer/r r:r'r%rDs #"""""  GFFFFF888888DDDDDD[A  7373737373 "7373737373r'