Viewing File: /usr/lib/python2.7/site-packages/passlib/tests/test_crypto_des.pyc



5Xc@sfdZddlmZmZddlmZddlmZddlm	Z	de	fdYZ
dS(	s1passlib.tests -- unittests for passlib.crypto.desi(twith_statementtdivision(tpartial(tgetrandbytes(tTestCasetDesTestc$BseZdZdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxg"ZdRZdSZdTZdUZdVZRS(yspasslib.crypto.desil#b72elIXN>YsI0Il{U
t9s,	Il3E<f IͫgE#I-Srflrq5Rl2lajvl<tCeiIWnJE|IBgw9֡I&
[iIn7a1IW=L\IqK58zI&J>Irq8HlYhGmu4I1&LgI8I
D-XKEQI*nxqICIWY0DBl@?my
I4pI:Q^l[X+5I浏FupIaGwVI	!Is8)CIjH)%vlz+o,;SI*EpI(7I;l^9*~
I/;hI`5h_&IH<Q\IFuk7I2R'O@^MIw?*
I^F
&I\unklZW;@xIvad#@XIb`	KlVn.6EI)FXIbn9
HlVUE
I%y>yII<i@uCIVϯoIs^OIRwC-I|"/I)Lm]II*wUIJl,akZI&@I(P\IA.+юL_IOXIZ)om(2U0I4cIIq:{aIlFq\
lqclLSXGmIQ$PU5l[U7=UUl
=@?.
I—+*c	Csddlm}m}m}m}xF|jD];\}}}||}||}|j|||@q,W|jt|d|jt	||d|jt	|d	|jt	|d|jt	|d
dS(sexpand_des_key()i(texpand_des_keytshrink_des_keyt_KDATA_MASKtINT_56_MASKg?itiiNtt(
tpasslib.crypto.desRRRR	tdes_test_vectorstassertEqualtassertRaisest	TypeErrort
ValueError(	tselfRRRR	tkey1t_tkey2tkey3((sA/usr/lib/python2.7/site-packages/passlib/tests/test_crypto_des.pyttest_01_expand;s"c	Csddlm}m}m}|j}xKtdD]=}t|d}||}||}|j||q5W|jt	|d|jt
||d|jt
|d
|jt
|d|jt
|dd	S(sshrink_des_key()i(RRtINT_64_MASKiig?iR
i	Nt	t(R
RRRt	getRandomtrangeRRRRR(	RRRRtrngtiRRR((sA/usr/lib/python2.7/site-packages/passlib/tests/test_crypto_des.pyttest_02_shrinkSscCsDddlm}m}m}|j}||@|jd||@BS(srandomize parity bitsi(Rt
_KPARITY_MASKRi(R
RR!RRtrandint(RtkeyRR!RR((sA/usr/lib/python2.7/site-packages/passlib/tests/test_crypto_des.pyt_random_parityksc
	Csddlm}m}m}m}x|jD]\}}}||}||}||}|||}|j||d||f||}	||	|}|j||d||	|fx^tdD]P}
||j||}|||}|j||d|||fqWq,Wd}|j	t
|d	||j	t|d||j	t
||d	|j	t||d|j	t|||dd|j	t|||dd|j	t|||d	dd	dS(sdes_encrypt_block()i(tdes_encrypt_blockRt_pack64t	_unpack64skey=%r plaintext=%r:s#key=%r shrink(key)=%r plaintext=%r:is&key=%r rndparity(key)=%r plaintext=%r:R
iiiitsaltiitroundsNRRRi(R
R%RR&R'RRRR$RRR(
RR%RR&R'R#t	plaintexttcorrecttresultRRRtstub((sA/usr/lib/python2.7/site-packages/passlib/tests/test_crypto_des.pyttest_03_encrypt_bytesqs2"c	Csaddlm}x|jD]\}}}|||}|j||d||fxRtdD]D}|j|}|||}|j||d|||fqbWqW|jt|dd|jt|dd|jt|dd|jt|dd|jt|dddd|jt|dddd
|jt|ddddddS(sdes_encrypt_int_block()i(tdes_encrypt_int_blockskey=%r plaintext=%r:is&key=%r rndparity(key)=%r plaintext=%r:R
iR(iiR)Ni(	R
R/RRRR$RRR(RR/R#R*R+R,RR((sA/usr/lib/python2.7/site-packages/passlib/tests/test_crypto_des.pyttest_04_encrypt_intss"(iil#b72e(llIXN>Ys(I0Il{U
t9s,	(IIl3E<f (IͫgE#II-Srf(IIͫgE#lrq5R(iil#b72e(l2lajvIͫgE#l<tCei(IWnJE|IBgw9֡I&
[i(In7a1IW=L\IqK58z(I&J>Irq8HlYhGmu4(I1&LgI8I
D-XKEQI*nxq(ICIWY0DBl@?my
(I4pI:Q^l[X+5(I浏FupIaGwVI	!(Is8)CIjH)%vlz+o,;S(I*EpI(7I;l^9*~
(I/;hI`5h_&IH<Q\(IFuk7I2R'O@^MIw?*
(I^F
&I\unklZW;@x(Ivad#@XIb`	KlVn.6E(I)FXIbn9
HlVUE
(I%y>yII<i@uCIVϯo(Is^OIRwC-I|"/(I)Lm]II*wUIJl,akZ(I&@I(P\IA.+юL_(IOXIZ)om(2U0I4c(IIͫgE#Iq:{a(IIͫgE#lFq\
(lqcIͫgE#lLSXGm(ilIQ$PU5(lil[U7=UU(IͫgE#il
=@?.
(l2lajvlI—+*(	t__name__t
__module__tdescriptionPrefixRRR R$R.R0(((sA/usr/lib/python2.7/site-packages/passlib/tests/test_crypto_des.pyRsP					.N(t__doc__t
__future__RRt	functoolsRt
passlib.utilsRtpasslib.tests.utilsRR(((sA/usr/lib/python2.7/site-packages/passlib/tests/test_crypto_des.pyt<module>s

Back to Directory File Manager