/var/opt/nydus/ops/oscrypto/__pycache__
Edit: /var/opt/nydus/ops/oscrypto/__pycache__/_pkcs5.cpython-312.pyc (4187B)
NjU
d dl mZmZmZmZ d dlZd dlZd dlZd dlZddl m
Z
mZ ddlm
Z
ddlmZmZmZ ej$ dk reZnd Zd gZd
Zde_ y) )unicode_literalsdivisionabsolute_importprint_functionN )int_from_bytesint_to_bytes)pretty_message) type_namebyte_cls int_types) c t | g S )N)bytes)nums @/opt/nydus/tmp/pip-target-a90h98xg/lib/python/oscrypto/_pkcs5.pychr_clsr s cU| pbkdf2c ~ t |t st t dt | t |t st t dt | t |t
st t dt | |dk rt
t dt | t |t
st t dt | |dk rt
t dt | | t g d vrt
t d t | t t | }d
ddd
ddd| }t j |d| }d}d} t | |k r|j }
|
j |t! j" d| z |
j% }t' | }t) |dz
D ]A }
|j }
|
j | |
j% }|t' | z }C | t+ || z
} |dz
}t | |k r| d| S )a4
Implements PBKDF2 from PKCS#5 v2.2 in pure Python
:param hash_algorithm:
The string name of the hash algorithm to use: "md5", "sha1", "sha224",
"sha256", "sha384", "sha512"
:param password:
A byte string of the password to use an input to the KDF
:param salt:
A cryptographic random byte string
:param iterations:
The numbers of iterations to use when deriving the key
:param key_length:
The length of the desired key in bytes
:return:
The derived key as a byte string
z@
password must be a byte string, not %s
z<
salt must be a byte string, not %s
z?
iterations must be an integer, not %s
r zC
iterations must be greater than 0 - is %s
z?
key_length must be an integer, not %s
zC
key_length must be greater than 0 - is %s
)md5sha1sha224sha256sha384sha512z
hash_algorithm must be one of "md5", "sha1", "sha224", "sha256",
"sha384", "sha512", not %s
0 @ Nr s >I)widthr )
isinstancer TypeErrorr
r r
ValueErrorreprsetgetattrhashlibhmacnewlencopyupdatestructpackdigestr ranger )hash_algorithmpasswordsalt
iterations
key_lengthalgohash_length
original_hmacblockoutputprflastu_s r r r sd 0 h)
h
dH%
dO
j),
j!
A~
j),
j!
A~
S!XYY
7N+D
K HHXtT2M
E
F
f+
" "
4&++eU334zz|4 z!|$A$$&CJJt::