%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/
Upload File :
Create Path :
Current File : //opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyo

�
�ac@ sddlmZyddlmZeZWnEek
rqyddlmZeZWnek
rmeZnXnXddl	m
Z
ddlmZddl
mZe
defd��Y�Zd	efd
��YZdefd��YZeeee�Zd
S(i����(tdivision(tmpz(tpython_2_unicode_compatiblei(tnumbertheory(tRWLocktCurveFpcB sqeZerd
d�Znd
d�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d�Zd	�ZRS(cC s:t|�|_t|�|_t|�|_||_dS(N(Rt_CurveFp__pt_CurveFp__at_CurveFp__bt_CurveFp__h(tselftptatbth((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyt__init__;s	cC s(||_||_||_||_dS(N(RRRR	(R
RRR
R((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyRKs				cC sGt|t�rC|j|jkoB|j|jkoB|j|jkStS(N(t
isinstanceRRRRtNotImplemented(R
tother((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyt__eq__Ys
cC st|j|j|jf�S(N(thashRRR(R
((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyt__hash__ascC s|jS(N(R(R
((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyRdscC s|jS(N(R(R
((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyRgscC s|jS(N(R(R
((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyR
jscC s|jS(N(R	(R
((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pytcofactormscC s/|||||j||j|jdkS(Ni(RRR(R
txty((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pytcontains_pointpscC s d|j|j|j|jfS(NsCurveFp(p=%d, a=%d, b=%d, h=%d)(RRRR	(R
((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyt__str__tsN(
t__name__t
__module__tGMPYtNoneRRRRRR
RRR(((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyR6s							tPointJacobicB s
eZded�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d�Zeed��Z
d	�Zd
�Zd�Zd�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zed��Zd�Zed��Zd�Zd�ZRS(c	C s?||_t�|_tr`t|�|_t|�|_t|�|_|oWt|�|_n$||_||_||_||_g|_	|r;d}|d9}t
|||||�}|d9}|j	j|j�|j
�f�xQ||kr7|d9}|j�j�}|j	j|j�|j
�f�q�WndS(Nii(t_PointJacobi__curveRt_scale_lockRRt_PointJacobi__xt_PointJacobi__yt_PointJacobi__zt_PointJacobi__ordert_PointJacobi__precomputeRtappendRRtdoubletscale(	R
tcurveRRtztordert	generatortitdoubler((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyR�s,						

"
cC sfzL|jj�|tkr.|jp-|jS|j|j|j}}}Wd|jj�Xt|t�r�|j	�|j
�d}}}nUt|t�r�z.|jj�|j|j|j}}}Wd|jj�XntS|j
|j�kr�tS|j
j�}|||}	|||}
||
||	|dkoe||
|||	||dkS(Nii(R!treader_acquiretINFINITYR#R$R"treader_releaseRtPointRRRRR R*tFalseR(R
Rtx1ty1tz1tx2ty2tz2Rtzz1tzz2((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyR�s*
!#
!cC s|jS(N(R%(R
((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyR,�scC s|jS(N(R (R
((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyR*�scC s{z9|jj�|jdkr&|jS|j}|j}Wd|jj�X|jj�}tj||�}||d|S(Nii(	R!R0R$R"R2R RRtinverse_mod(R
RR+R((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyR�s	
	
cC s{z9|jj�|jdkr&|jS|j}|j}Wd|jj�X|jj�}tj||�}||d|S(Nii(	R!R0R$R#R2R RRR=(R
RR+R((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyR�s	
	
cC s�z$|jj�|jdkr#|SWd|jj�Xzx|jj�|jj�}tj|j|�}|||}|j	|||_	|j
||||_
d|_Wd|jj�X|S(Ni(R!R0R$R2twriter_acquireR RRR=R"R#twriter_release(R
Rtz_invtzz_inv((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyR)s


cC sA|js|jrtS|j�t|j|j|j|j�S(N(R#R$R1R)R3R R"R%(R
((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyt	to_affine"s

cC s1t|j�|j�|j�d|j�|�S(Ni(RR*RRR,(tpointR-((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pytfrom_affine+s!c
C s�||||||}}|s'dS|||}d||d|||}d||}	|	|	d||}
|	||
d||}d||}|
||fS(Niiiii(iii((
R
tX1tY1RRtXXtYYtYYYYtStMtTtY3tZ3((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyt_double_with_z_1@scC s�|dkr"|j||||�S|s,dS||||||}}|sSdS|||}|||}	d||d|||}
d|||	|	|}||d|
|}||
|d||}
||d||	|}||
|fS(Niiiii(iii(iii(RO(R
RERFtZ1RRRGRHRItZZRJRKRLRMRN((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyt_doublePsc	C s�|js
tS|jj�|jj�}}z.|jj�|j|j|j}}}Wd|jj	�X|j
|||||�\}}}|s�|r�tSt|j||||j�S(N(
R#R1R RRR!R0R"R$R2RRRR%(	R
RRRERFRPtX3RMRN((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyR(fs	
!$cC s�||}||}d||}||}	d||}
|rg|
rg|j||||jj��S||}|
d|	d||}|
||d||	|}
d||}||
|fS(Nii(ROR R(R
RERFtX2tY2RtHtHHtItJtrtVRSRMRN((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyt
_add_with_z_1ys



cC s�||d|}|||}||}	||d|}
|rl|
rl|j|||||jj��S|
||	|}||||||	||}||||}
|||
fS(Ni(RRR R(R
RERFRPRTRURtAtBtCtDRSRMRN((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyt_add_with_z_eq�s
""cC s|||}|||||||}}	|||}
|
|
|}d||}|
|}
d|	||}|r�|
r�|j||||jj��S||}|||
d||}|||d||
|}||
d|||}|||fS(Nii(ROR R(R
RERFRPRTRURtZ1Z1tU2tS2RVRWRXRYRZR[RSRMRN((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyt_add_with_z2_1�s!

cC s5|||}|||}	||	|}
|||}|||	|}||||}
||
}d|||}|||}d|
||}|r�|r�|j|||||jj��S|
|}|||d||}|||d|||}||d||	||}|||fS(Nii(RRR R(R
RERFRPRTRUtZ2RRbtZ2Z2tU1RctS1RdRVRXRYRZR[RSRMRN((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyt_add_with_z_ne�s"
"
cC s||S(N((R
R((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyt__radd__�scC s�|s|r|||fS|s)|r6|||fS||kr�|dkrg|j|||||�S|j||||||�S|dkr�|j||||||�S|dkr�|j||||||�S|j|||||||�S(Ni(R\RaReRj(R
RERFRPRTRURfR((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyt_add�s

cC sG|tkr|S|tkr |St|t�rAtj|�}n|j|jkrbtd��n|jj�}z.|jj	�|j
|j|j}}}Wd|jj
�Xz.|jj	�|j
|j|j}}}Wd|jj
�X|j|||||||�\}	}
}|
s'|r+tSt|j|	|
||j�S(Ns%The other point is on different curve(R1RR3RRDR t
ValueErrorRR!R0R"R#R$R2RlR%(R
RRRERFRPRTRURfRSRMRN((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyt__add__�s*
!
!*cC s||S(N((R
R((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyt__rmul__�sc		C s
ddd|jj�f\}}}}|j}x�|jD]�\}}|dr�|ddkr�|dd}||||||d|�\}}}q�|dd}||||||d|�\}}}q:|d}q:W|s�|r�tSt|j||||j�S(Niiii(R RRlR&R1RR%(	R
RRSRMRNRRlRTRU((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyt_mul_precompute�s'	
+*cC sug}xh|rp|drV|d}|dkr<|d}n||g7}||8}n
|dg7}|d}q	W|S(Niii((tmulttrettnd((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyt_naf
s	





c	C s�|js|rtS|dkr%|S|jrB||jd}n|jrX|j|�S|j�}|j|j}}d\}}}|jj�|jj	�}}|j
}	|j}
x�t|j
|��D]�}|	|||||�\}}}|dkr+|
|||||d|�\}}}q�|dkr�|
|||||d|�\}}}q�q�W|ss|rwtSt|j||||j�S(Niii(iii(R#R1R%R&RpR)R"R RRRRRltreversedRtR(R
RRTRURSRMRNRRRRRlR.((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyt__mul__s.		
		!+.cC s+d}x||kr"d|}q	W|dS(Nii((Rtresult((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyt
_leftmost_bit;scC sl|tks|dkr ||S|dkr4||St|t�sUtj|�}n|jrw|jrw||||S|jr�||j}||j}n|jt||��d}d\}}}|jj	�|jj
�}}	|j�}|j|j
}
}|j�}|j|j
}}
||j�}|j|j
}}|j}|j}x�|dkr=||||||	�\}}}|d}||@r�||@r�||||||d|�\}}}q]||@r|||||
|d|�\}}}q]||@r]||||||
d|�\}}}q]q]W|sL|rPtSt|j||||j�S(Niii(iii(R1RRRDR&R%RxtmaxR RRR)R"R#RRRl(R
tself_mulRt	other_mulR.RSRMRNRRRERFRTRUtbothtX4tY4RRRl((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pytmul_addDsD	
		!
*
*
.cC sLz7|jj�t|j|j|j|j|j�SWd|jj�XdS(N(	R!R0RR R"R#R$R%R2(R
((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyt__neg__us

N(RRRR4RRR,R*RRR)RBtstaticmethodRDRORRR(R\RaReRjRkRlRnRoRpRtRvRxRR�(((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyRys6
-																					!		1R3cB sweZdd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d�Zd	�Zd
�Z
d�ZRS(
cC s�||_trQ|ot|�|_|o3t|�|_|oHt|�|_n||_||_||_|jrxn|r�|j�dkr�|r�ndS(Ni(t
_Point__curveRRt	_Point__xt	_Point__yt
_Point__orderR(R
R*RRR,((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyR�s					cC sGt|t�rC|j|jkoB|j|jkoB|j|jkStS(N(RR3R�R�R�R(R
R((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyR�s
cC s&t|j|j|jj�|j�S(N(R3R�R�RR�(R
((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyR��scC st|t�stS|tkr#|S|tkr3|S|j|jkry|j|j|jj�dkrltS|j�Sn|jj�}|j|jt	j
|j|j|�|}|||j|j|}||j||j|}t|j||�S(Ni(RR3RR1R�R�R�RR(RR=(R
RRtltx3ty3((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyRn�s #

!cC s*d�}|}|dks7|jr;||jdkr;tS|tkrKtS|dkra||Sd|}t|j|j|j|j�}||�d}|}x�|dkr%|j�}||@dkr�||@dkr�||}n||@dkr||@dkr||}n|d}q�W|S(NcS s+d}x||kr"d|}q	W|dS(Nii((RRw((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pytleftmost_bit�siiii(R�R1R3R�R�R�R((R
RR�tete3t
negative_selfR.Rw((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyRv�s(	(

" 
 
cC s||S(N((R
R((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyRo�scC s$|tkrdSd|j|jfS(Ntinfinitys(%d,%d)(R1R�R�(R
((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyR�scC s�|tkrtS|jj�}|jj�}d|j|j|tjd|j|�|}||d|j|}||j||j|}t|j||�S(Nii(	R1R�RRR�RR=R�R3(R
RRR�R�R�((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyR(�scC s|jS(N(R�(R
((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyR�scC s|jS(N(R�(R
((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyRscC s|jS(N(R�(R
((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyR*scC s|jS(N(R�(R
((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyR,sN(RRRRRR�RnRvRoRR(RRR*R,(((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyR3s				$						N(t
__future__Rtgmpy2RtTrueRtImportErrortgmpyR4tsixRtRt_rwlockRtobjectRRR3RR1(((sH/opt/plesk/python/2.7/lib/python2.7/site-packages/ecdsa/ellipticcurve.pyt<module>$s&



B���

Zerion Mini Shell 1.0