403Webshell
Server IP : 80.87.202.40  /  Your IP : 216.73.216.169
Web Server : Apache
System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64
User : bitrix ( 600)
PHP Version : 8.2.27
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : ON |  Perl : ON |  Python : OFF |  Sudo : ON |  Pkexec : ON
Directory :  /lib/python3.9/site-packages/passlib/tests/__pycache__/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /lib/python3.9/site-packages/passlib/tests/__pycache__/test_utils_handlers.cpython-39.pyc
a

f�Wc�}�@s*dZddlmZddlZddlZddlmZddlZddlm	Z	m
Z
ddlmZm
Z
ddlmZmZmZddlmmZddlmZmZdd	lmZee�Zd
d�ZGdd
�d
e�ZGdd�de�ZGdd�de�Z Gdd�dej!�Z"Gdd�dej#ej$�Z%ed�Z&Gdd�de�Z'Gdd�de�Z(dS)z>tests for passlib.hash -- (c) Assurance Technologies 2003-2009�)�with_statementN)�	getLogger)�ldap_md5�sha256_crypt)�MissingBackendError�PasslibHashWarning)�
str_to_uascii�
uascii_to_str�unicode)�HandlerCase�TestCase)�ucs��fdd��t�|��S)z1generate all strings of given size using alphabetc3sD|dkr�D]
}|Vqn&�D] }�|d�D]}||Vq.qdS)N���)�size�char�tail��alphabet�helperr�E/usr/lib/python3.9/site-packages/passlib/tests/test_utils_handlers.pyrs
z_makelang.<locals>.helper)�set)rrrrr�	_makelangsrc@speZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�ZdS)�SkeletonTestztest hash support classescs�G�fdd�dtj��|���td���|���d��|���td���|���td���|���d��|���td���|���td	���|���td
���|�t�jd�|�t�jd�|���	���
d
��|���dd��|���dtd���|���dd��|���dtd���|��jdddd��|�t�jdd�|�t�jdtd��|���
d�d�|��j
ddd�d�dS)ztest StaticHandler classcsDeZdZdZdZed�Zed�ZdZd��fdd�	Z	d	d
�Z
�ZS)z/SkeletonTest.test_00_static_handler.<locals>.d1�d1��flag�_�abrFcs t�|�jfi|��||_dS�N)�super�__init__r)�selfr�kwds)�	__class__rrrr"9sz8SkeletonTest.test_00_static_handler.<locals>.d1.__init__cSs|jrtd�Std�S)N�b�a)rr
�r#�secretrrr�_calc_checksum=sz>SkeletonTest.test_00_static_handler.<locals>.d1._calc_checksum)F)�__name__�
__module__�__qualname__�nameZcontext_kwdsr
Z_hash_prefix�checksum_chars�
checksum_sizer"r*�
__classcell__r�r)r%rr2srZ_as_aZ_bZ_cs_cr'r&�cNr��ss_bTr)
�uh�
StaticHandler�
assertTrue�identifyr
�assertFalse�assertRaises�	TypeError�assertEqual�	genconfig�hash�verify�
ValueError�r#rr2r�test_00_static_handler/s*z#SkeletonTest.test_00_static_handlercCs�Gdd�dtj�}|�d��|�d�}Wd�n1s<0Y|�|d�|�|�d|��|�|�d|��|`|�	t
|jd�dS)ztest StaticHandler legacy attrc@s4eZdZdZedd��Zedd��Zedd��ZdS)	z3SkeletonTest.test_01_calc_checksum_hack.<locals>.d1rcSs<|rt|�dkrdSzt|d�Wnty6YdS0dS)N�(F�T)�len�intrA��clsr?rrrr9fsz<SkeletonTest.test_01_calc_checksum_hack.<locals>.d1.identifycSsP|durtd��t|t�r$|�d�}|dur>|�|�s>td��t�d|���S)Nzno secret provided�utf-8zinvalid hashsxyz)	r<�
isinstancer
�encoder9rA�hashlib�sha1�	hexdigest�rIr)r?rrr�genhashps

z;SkeletonTest.test_01_calc_checksum_hack.<locals>.d1.genhashcSs$|durtd��|�||�|��kS)Nzno hash specified)rArQ�lowerrPrrrr@{sz:SkeletonTest.test_01_calc_checksum_hack.<locals>.d1.verifyN)r+r,r-r.�classmethodr9rQr@rrrrrcs
	

rz%d1.*should be updated.*_calc_checksum�testNZ(7c622762588a0e5cc786ad0a143156f9fd38eea3Zxtest)r6r7�assertWarningListr?r=r8r@r:rQr;�NotImplementedError)r#rr?rrr�test_01_calc_checksum_hack]s(z'SkeletonTest.test_01_calc_checksum_hackcCsGdd�dtj�}|�t|jd�|�t|jd�|�|�d��|�|�d��|�|�d��t�t	d��|_
|�t|jd�|�t|jd�|�|�d	��|�|�d��|`
t	d
�|_|�t|jd�|�t|jd�|�|�d��|�|�d��|`dS)ztest GenericHandler.identify()c@seZdZedd��ZdS)z)SkeletonTest.test_10_identify.<locals>.d1cSs2t|t�r|�d�}|td�kr*||d�St�dS)N�asciir'��checksum)rK�bytes�decoder
rArHrrr�from_string�s



z5SkeletonTest.test_10_identify.<locals>.d1.from_stringN)r+r,r-rSr]rrrrr�srNrr4r'r&z@.z@a�!z!a)r6�GenericHandlerr;r<r9r:r8�re�compiler
�_hash_regex�ident)r#rrrr�test_10_identify�s$
zSkeletonTest.test_10_identifycs�Gdd�dtj��d�fdd�	}|�t|td��|�|td��td��|�|td��td��|�t|td	��|�t|td
��|�t|d�|���jtd��dS)
z%test GenericHandler checksum handlingc@seZdZdZdZed�ZdS)z.SkeletonTest.test_11_norm_checksum.<locals>.d1r��xzN)r+r,r-r.r0r
r/rrrrr�srNcs�fd|i|��jS)NrZrY)rZ�kr2rr�
norm_checksum�sz9SkeletonTest.test_11_norm_checksum.<locals>.norm_checksum�xxxZxxxxZxzxzZxxxxx�xxyxsxxyx)N)r6r_r;rAr
r=r<�_stub_checksum�r#rhrr2r�test_11_norm_checksum�s	z"SkeletonTest.test_11_norm_checksumcsXGdd�dtjtj���fdd�}|�|d�d�|�t|td��|���jd�dS)	z*test GenericHandler + HasRawChecksum mixinc@seZdZdZdZdS)z2SkeletonTest.test_12_norm_checksum_raw.<locals>.d1rreN)r+r,r-r.r0rrrrr�srcs�|i|��jSr rY)r'rgr2rrrh�sz=SkeletonTest.test_12_norm_checksum_raw.<locals>.norm_checksums1234rjsN)r6ZHasRawChecksumr_r=r;r<r
rkrlrr2r�test_12_norm_checksum_raw�s
z&SkeletonTest.test_12_norm_checksum_rawcsPGdd�dtjtj���fdd�}�fdd�}tdd�}tdd	�}tdd
�}|�t|�|jt|dd�|�|d
d�|�tjd
d���}|jt	|dd�|jt	|dd�|�
|�|�|dd�d�|�|dd�d�|�|dd�d�|�
|�|jt	|dd�|�
|�Wd�n1�s"0Ytjd
d���}|�t	|d�|�t	|d�|�
|�|�|d�|�|�|d	�|�|�|d
�|�|�
|�|�t	|d�|�
|�|�|dd
d�|�|�
|dg�Wd�n1�s�0Y�`|�
g��8|�t|d��d	�|�t|d��d�Wd�n1�sB0YdS)z#test GenericHandler + HasSalt mixinc@s$eZdZdZdZdZdZdZdZdS)z*SkeletonTest.test_20_norm_salt.<locals>.d1r��saltrre�rN)	r+r,r-r.�setting_kwds�
min_salt_size�
max_salt_sizeZdefault_salt_size�
salt_charsrrrrr�srcs�fi|��jSr ro�rgr2rr�	norm_salt�sz1SkeletonTest.test_20_norm_salt.<locals>.norm_saltcs�jfd|i|��dd�jS)NZ	salt_sizeT�Zuse_defaults)Zusingrp)Zszrgr2rr�gen_salt�sz0SkeletonTest.test_20_norm_salt.<locals>.gen_saltrrrqreNroTrx��recordr4r'ZabaZabbaZaaaabbrr�)Zrelaxedzsalt_size.*above max_salt_size)r6�HasSaltr_rr;r<ZassertIn�warnings�catch_warningsrA�consumeWarningListr=rtrUrF)r#rwryZsalts2Zsalts3Zsalts4�wlogrr2r�test_20_norm_salt�sF




*


.zSkeletonTest.test_20_norm_saltcsGdd�dtjtj���fdd�}|�t|�|jt|dd�|�|dd�d	�|jt|d
d�tjdd���}|jt|dd�|�	|�|�|d
d�d
�|�|d	d�d	�|�|dd�d�|�	|�|jt|dd�|�	|�Wd�n1s�0Yd�_
|jt|dd�dS)z%test GenericHandler + HasRounds mixinc@s eZdZdZdZdZdZdZdS)z,SkeletonTest.test_30_init_rounds.<locals>.d1r��roundsrrqrN)r+r,r-r.rrZ
min_rounds�
max_rounds�default_roundsrrrrr8s
rcs�fi|��jSr r�rvr2rr�norm_rounds@sz5SkeletonTest.test_30_init_rounds.<locals>.norm_roundsNr�Trxrg�?rzrrrqre)r6Z	HasRoundsr_r;r<r=r~rrAr�r�)r#r�r�rr2r�test_30_init_rounds5s"

(z SkeletonTest.test_30_init_roundscCsRGdd�dtjtj�}|�t|j�|�t|j�|�t|jd�|�t|jd�|�|���d|_	|�}|�
|�d�d�|�d�|�d�|�
|�d�d�|�t|jd�|�|�d��|�|�d��d|_
|�|���|�d�|�
|�d�d�|�t|jd	�|�t|jd	�|�d�Gd
d�d|�}|�t|jd�dS)
z+test GenericHandler + HasManyBackends mixinc@sHeZdZdZdZdZdZdZedd��Z	edd��Z
d	d
�Zdd�Zd
S)z)SkeletonTest.test_40_backends.<locals>.d1rr�r'r&FcSs|jr|�|j�dSdSdS�NTF)�	_enable_a�_set_calc_checksum_backend�_calc_checksum_a�rIrrr�_load_backend_ajsz9SkeletonTest.test_40_backends.<locals>.d1._load_backend_acSs|jr|�|j�dSdSdSr�)�	_enable_br��_calc_checksum_br�rrr�_load_backend_brsz9SkeletonTest.test_40_backends.<locals>.d1._load_backend_bcSsdS�Nr'rr(rrrr�zsz:SkeletonTest.test_40_backends.<locals>.d1._calc_checksum_acSsdS�Nr&rr(rrrr�}sz:SkeletonTest.test_40_backends.<locals>.d1._calc_checksum_bN)
r+r,r-r.rr�backendsr�r�rSr�r�r�r�rrrrras

r�any�defaultTr5r&r'r3c@seZdZdZdS)z)SkeletonTest.test_40_backends.<locals>.d2TN)r+r,r-�_has_backend_arrrr�d2�sr�N)r6�HasManyBackendsr_r;r�get_backend�set_backendr:�has_backendr�r=r*r8r�rA�AssertionError)r#r�objr�rrr�test_40_backends_s0 



zSkeletonTest.test_40_backendscCs8tjdtdd�Gdd�dtjtj�}|�t|j�|�t|j	�|�t|j	d�|�t|j	d�|�
|���d|_|�}|�
|�d	�d
�|�	d
�|�	d�|�
|�d	�d
�|�t|j	d�|�|�d
��|�
|�d��d|_|�|���|�	d�|�
|�d	�d�|�t|j	d�|�t|jd�d
S)z<test GenericHandler + HasManyBackends mixin (deprecated api)�ignorez0.* support for \._has_backend_.* is deprecated.*)�category�messagec@s0eZdZdZdZdZdZdZdd�Zdd�Z	d	S)
z)SkeletonTest.test_41_backends.<locals>.d1rrr�FcSsdSr�rr(rrrr��sz:SkeletonTest.test_41_backends.<locals>.d1._calc_checksum_acSsdSr�rr(rrrr��sz:SkeletonTest.test_41_backends.<locals>.d1._calc_checksum_bN)
r+r,r-r.rrr�r��_has_backend_br�r�rrrrr�srr�r�Tr5r&r'r3N)r~�filterwarnings�DeprecationWarningr6r�r_r;rr�r�r:r�r�r=r*r8r�rA)r#rr�rrr�test_41_backends�s2�


zSkeletonTest.test_41_backendscshGdd�dtjtj���fdd�}|�t|�|jt|dd�|�|dd�td	��|�|td	�d�td	��|�|td
�d�td
��|jt|td�d�|�|td�d�td	��|jt|td
�d�|���	td���|���	td���|�
��	td���|�
��	td���|�
��	td���|�t�j	d�|�t�j	d�d�_|jt|dd�dS)z#test GenericHandler + HasManyIdentsc@s<eZdZdZdZed�Zed�ed�fZed�ed�iZdS)z+SkeletonTest.test_50_norm_ident.<locals>.d1r�rc�!A�!B�AN)	r+r,r-r.rrr
�
default_ident�ident_valuesZ
ident_aliasesrrrrr�s
rcs�fi|��jSr r�rvr2rr�
norm_ident�sz3SkeletonTest.test_50_norm_ident.<locals>.norm_identNr�Trxr�r�z!Cr��Bz!Axxxz!Bxxxz!Cxxxr4r)
r6Z
HasManyIdentsr_r;r<r=r
rAr8r9r:r�r�)r#r�rr2r�test_50_norm_ident�s&zSkeletonTest.test_50_norm_identc	CsBddlm}|j�d�}|�|td�td�d��d}td�}td	�}|j�|�}|�|t|d
d|d��|jj|d
d�}|�|t|d
dd��|jj|dd�}|�|td
dtd�td�d��|j�d�}|�|ttd�td�dd��d}|j�|�}|�|tdddd��|jj|dd�}|�|ttd�dtd�d��d S)!ztest parsehash()r�r?Z
OgAwTx2l6NADIZAwTx2l6NADIZOg�rZrpz?$5$LKO/Ute40T3FNF95$U0prpBQd4PloSGU0pnpM4z9wKn4vZ1.jsrzQfPqxph9zLKO/Ute40T3FNF95z+U0prpBQd4PloSGU0pnpM4z9wKn4vZ1.jsrzQfPqxph9i�T)rpr��implicit_roundsrZFrY)rpr�r�)ZsanitizezLK**************z+U0pr***************************************)r�r�rprZzL$5$rounds=10428$uy/jIAhCetNCTtb0$YWvUOXbkqlqhyoPMpN8BMe.ZGsGx2aBvxTvDFI613c3z+YWvUOXbkqlqhyoPMpN8BMe.ZGsGx2aBvxTvDFI613c3zuy/jIAhCetNCTtb0i�()rZrpr�z@$pbkdf2$60000$DoEwpvQeA8B4T.k951yLUQ$O26Y3/NJEiLCVaOVPxGXshyjW8ks;n���I"�U��?���[�i`�s�0���xO�=�\�Q�rZr�rpzO26************************zDo********************N)	�passlibr?�	des_cryptZ	parsehashr=r
r�dict�pbkdf2_sha1)r#r?�result�hr5r3�h1rrr�test_91_parsehashsH�����zSkeletonTest.test_91_parsehashcCs�ddlm}|�|j��ddd��|�|j��ddd��|�|jdd	�|�|j��d
ddd
��|�|jdd�|�|j��dddd
��dS)ztest bitsize()rr��B�r���r�ii��`r�i��
�N)	r�r?r=r�ZbitsizeZbcryptZ	patchAttrrr��r#r?rrr�test_92_bitsizeJs��
�
�zSkeletonTest.test_92_bitsizeN)r+r,r-�__doc__rCrWrdrmrnr�r�r�r�r�r�r�rrrrr)s.3#$I*K:.8rc@s(eZdZdZdd�Zdd�Zdd�ZdS)	�dummy_handler_in_registryz6context manager that inserts dummy handler in registrycCs(||_td|tjft|dd��|_dS)NZdummy_r)r.rr)r.�typer6r_r��dummy)r#r.rrrr"ps
�z"dummy_handler_in_registry.__init__cCsDddlm}|j|jdd�|�|j�|�|j�|jus>J�|jS�Nr)�registryF)Z	locations)r�r��_unload_handler_namer.Zregister_crypt_handlerr�Zget_crypt_handler)r#r�rrr�	__enter__ws
z#dummy_handler_in_registry.__enter__cGs ddlm}|j|jdd�dSr�)r�r�r�r.)r#�exc_infor�rrr�__exit__~sz"dummy_handler_in_registry.__exit__N)r+r,r-r�r"r�r�rrrrr�nsr�c@sPeZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	dd�Z
dd�ZdS)�PrefixWrapperTestztest PrefixWrapper classcCs�tjdddddd�}|�|jd�|�|jd�|�|jt�|�|jt�td��}|�|jt�Wd�n1sx0YdS)z*test PrefixWrapper lazy loading of handlerrr�{XXX}�{MD5}T)ZlazyN)	r6�
PrefixWrapperr=�
_wrapped_name�assertIs�_wrapped_handler�wrappedrr��r#rr�rrr�test_00_lazy_loading�s
z&PrefixWrapperTest.test_00_lazy_loadingcCstt�dddd�}|�|jd�|�|jt�|�|jt�td��}|�|jt�Wd�n1sf0YdS)z,test PrefixWrapper active loading of handlerrrr�r�N)	r6r�r=r�r�r�rr�r�r�rrr�test_01_active_loading�s
z(PrefixWrapperTest.test_01_active_loadingcCstt�dtdd�}|�|jd�|�|jt�|�|jt�td��}|�|jt�Wd�n1sf0YdS)z4test PrefixWrapper with explicitly specified handlerrr�r�Nr)	r6r�rr=r�r�r�r�r�r�rrr�test_02_explicit�s
z"PrefixWrapperTest.test_02_explicitcCstt�dddd�}|�|jd�|�|jtj�|�dt|�v�t�ddd�}|�|jt	j�|�
dt|�v�dS)Nrrr�r�r�r�r)r6r�r=r.r�rrrr:�dirrr8)r#rr�rrr�test_10_wrapped_attributes�sz,PrefixWrapperTest.test_10_wrapped_attributescCs�t�dddd�}d}d}|�|��d�|�t|jdd�|�|�d|�|�|�t|jd|�|�|�d�|�|�	|�
|��|�|�
|��|�t|jd|�|�	|�d|��dS)	Nrrr�r�z{XXX}X03MO1qnZdYdgyfeuILPmQ==z{MD5}X03MO1qnZdYdgyfeuILPmQ==z{XXX}1B2M2Y8AsgTpgAmY7PhCfg==�password)
r6r�r=r>r;r<rQrAr?r8r9r:r@)r#rZdphZlphrrr�test_11_wrapped_methods�sz)PrefixWrapperTest.test_11_wrapped_methodscCs�t�ddd�}|�|jtd��|�|jd�t�ddd�}|�|jd�|�|jd�t�dddd�}|�|jd�|�|jd�tjdddd	d
�}|�|jtd	��|�|jd�tjddddd
�}|jttjddddd
�|jttjdddd
d
�t�ddd�}|�|jd�|�|jtd�td�f�tjddddd
�}|�|jtd��|�|jd�|jttjdddd
�|�	d��"tjddddd�}Wd�n1�s�0Y|�|jd�|�|jd�dS)N�h2rr�z
{XXX}{MD5}r�r�r�Zh3z{Xr�z{XXX}Az{XYz{XXXXZh4Zphpassz{XXX}$P$z{XXX}$H$Zh5TZh6z#orig_prefix.*may not work correctlyZh7�$�?)�orig_prefix�prefix)
r6r�r=rcr
r�r�r;rArU�r#r�rrr�
test_12_ident�s<��2zPrefixWrapperTest.test_12_identcCs&tjddddd�}|�t|�d�dS)ztest repr()r��	md5_cryptr�z$1$�r�z�(?x)^PrefixWrapper\(
                ['"]h2['"],\s+
                ['"]md5_crypt['"],\s+
                prefix=u?["']{XXX}['"],\s+
                orig_prefix=u?["']\$1\$['"]
            \)$N)r6r�ZassertRegex�reprr�rrr�test_13_reprs
�zPrefixWrapperTest.test_13_reprcCs$tjdddd�}|�t|jd�dS)ztest orig_prefix sanity checkr�r�z$6$r�rTN)r6r�r;rAr?r�rrr�test_14_bad_hashsz"PrefixWrapperTest.test_14_bad_hashN)r+r,r-r�r�r�r�r�r�r�r�r�rrrrr��s

/r�c@s&eZdZdZdZejZdZdd�Z	dS)�UnsaltedHashz!test algorithm which lacks a saltZunsalted_test_hashrDcCs.t|t�r|�d�}d|}tt�|����S)NrJsboblious)rKr
rLrrMrNrO�r#r)�datarrrr*s

zUnsaltedHash._calc_checksumN)
r+r,r-r�r.r6�LOWER_HEX_CHARSr/r0r*rrrrr�s
r�c@sXeZdZdZdZdZdZdZdZe	j
ZZe
�ed��Zedd	��Zd
d�Zdd
�ZdS)�
SaltedHashztest algorithm with a saltZsalted_test_hashrorrerDz^@salt[0-9a-f]{42,44}$cCsF|�|�stj�|��t|t�r*|�d�}||dd�|dd�d�S)NrXr|i���)rprZ)r9r6�excZInvalidHashErrorrKr[r\rHrrrr]0s



zSaltedHash.from_stringcCstd�|j|jf}t|�S)Nz	@salt%s%s)r
rprZr	r�rrr�	to_string8szSaltedHash.to_stringcCsBt|t�r|�d�}|j�d�||j�d�}tt�|����S)NrJrX)rKr
rLrprrMrNrOr�rrrr*<s

zSaltedHash._calc_checksumN)r+r,r-r�r.rrrsrtr0r6r�rur/r`rar
rbrSr]r�r*rrrrr�$s

r�uΙωαννηςc@s$eZdZeZdedfgZdd�ZdS)�UnsaltedHashTest)r�Z(61cfd32684c47de231f1f982c214e884133762c0Z(96b329d120b97ff81ada770042e44ba87343ad2bcCs&|jttdd�|jttjdd�dS)N�xrorr�)r;r<r�r>rBrrr�
test_bad_kwdsSszUnsaltedHashTest.test_bad_kwdsN)r+r,r-r��handler�
UPASS_TEMP�known_correct_hashesr�rrrrr�Ks
�r�c@s$eZdZeZdedfgZdd�ZdS)�SaltedHashTest)r�z/@salt77d71f8fe74f314dac946766c1ac4a2a58365482c0z1@salt9f978a9bfe360d069b0c13f2afecd570447407fa7e48cCs4tdd�j}|jtt|dd�|jtt|dd�dS)NTrxr�ri)r�rkr;r<rA)r#Zstubrrrr�_szSaltedHashTest.test_bad_kwdsN)r+r,r-r�r�r�r�r�rrrrr�Ws
�r�))r�Z
__future__rr`rMZloggingrr~Zpasslib.hashrrZpasslib.excrrZpasslib.utils.compatrr	r
Zpasslib.utils.handlersZutils�handlersr6Zpasslib.tests.utilsrrr
r+�logrr�objectr�r�r7r�r}r_r�r�r�r�rrrr�<module>s4I%

Youez - 2016 - github.com/yon3zu
LinuXploit