%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /opt/plesk/python/2.7/lib64/python2.7/site-packages/Crypto/PublicKey/
Upload File :
Create Path :
Current File : //opt/plesk/python/2.7/lib64/python2.7/site-packages/Crypto/PublicKey/ElGamal.pyo

�
�ac@s}dZddddgZddlTddlmZdefd��YZdd	�Zd
�Z	de
fd��YZeZdS(
s$Id$tgeneratet	constructterrort
ElGamalobji����(t*(tnumbercBseZRS((t__name__t
__module__(((sO/opt/plesk/python/2.7/lib64/python2.7/site-packages/Crypto/PublicKey/ElGamal.pyRsscCs�t�}|r|d�nxJtt|d|��}d|d|_tj|jd|�rPqqW|r||d�nx�tjd|j|�|_d}t|jd|j�dkr�d}n|r�t|j||j�dkr�d}n|r&t	|jd|j�ddkr&d}ntj
|j|j�}|rmt	|jd|�ddkrmd}n|rPqqW|r�|d�ntjd|jd|�|_|r�|d	�nt|j|j|j�|_|S(
Nsp
iitrandfuncsg
iisx
sy
(
RtbignumtgetPrimetpRtisPrimetgetRandomRangetgtpowtdivmodtinversetxty(tbitsRt
progress_functobjtqtsafetginv((sO/opt/plesk/python/2.7/lib64/python2.7/site-packages/Crypto/PublicKey/ElGamal.pyRws>	

	$	)	&	

cCslt�}t|�dkr*td��nx;tt|��D]'}|j|}t||||�q=W|S(Niis%argument for construct() wrong length(ii(Rtlent
ValueErrortrangetkeydatatsetattr(ttupRtitfield((sO/opt/plesk/python/2.7/lib64/python2.7/site-packages/Crypto/PublicKey/ElGamal.pyR�s	
cBs}eZddddgZd�Zd�Zd�Zd�Zd�Zd	�Zd
�Z	d�Z
d�Zd
�Zd�Z
RS(RRRRcCstj|||�S(N(tpubkeytencrypt(tselft	plaintexttK((sO/opt/plesk/python/2.7/lib64/python2.7/site-packages/Crypto/PublicKey/ElGamal.pyR#�scCstj||�S(N(R"tdecrypt(R$t
ciphertext((sO/opt/plesk/python/2.7/lib64/python2.7/site-packages/Crypto/PublicKey/ElGamal.pyR's
cCstj|||�S(N(R"tsign(R$tMR&((sO/opt/plesk/python/2.7/lib64/python2.7/site-packages/Crypto/PublicKey/ElGamal.pyR)scCstj|||�S(N(R"tverify(R$R*t	signature((sO/opt/plesk/python/2.7/lib64/python2.7/site-packages/Crypto/PublicKey/ElGamal.pyR+9scCsEt|j||j�}|t|j||j�|j}||fS(N(RRRR(R$R*R&tatb((sO/opt/plesk/python/2.7/lib64/python2.7/site-packages/Crypto/PublicKey/ElGamal.pyt_encryptFs#cCs_t|d�std��nt|d|j|j�}|dt||j�|j}|S(NRs(Private key not available in this objectii(thasattrt	TypeErrorRRRR(R$R*taxR%((sO/opt/plesk/python/2.7/lib64/python2.7/site-packages/Crypto/PublicKey/ElGamal.pyt_decryptKs
!cCs�t|d�std��n|jd}t||�dkrOtd��nt|j||j�}||j||}x|dkr�||}qW|t||�|}||fS(NRs(Private key not available in this objectisBad K value: GCD(K,p-1)!=1i(	R0R1RtGCDRRRRR(R$R*R&tp1R-ttR.((sO/opt/plesk/python/2.7/lib64/python2.7/site-packages/Crypto/PublicKey/ElGamal.pyt_signRs
cCs�|ddks'|d|jdkr+dSt|j|d|j�}|t|d|d|j�|j}t|j||j�}||kr�dSdS(Nii(RRRR(R$R*tsigtv1tv2((sO/opt/plesk/python/2.7/lib64/python2.7/site-packages/Crypto/PublicKey/ElGamal.pyt_verify^s'(cCstj|j�dS(Ni(RtsizeR(R$((sO/opt/plesk/python/2.7/lib64/python2.7/site-packages/Crypto/PublicKey/ElGamal.pyR<hscCst|d�rdSdSdS(NRii(R0(R$((sO/opt/plesk/python/2.7/lib64/python2.7/site-packages/Crypto/PublicKey/ElGamal.pythas_privatekscCst|j|j|jf�S(N(RRRR(R$((sO/opt/plesk/python/2.7/lib64/python2.7/site-packages/Crypto/PublicKey/ElGamal.pyt	publickeyqs(RRRR#R'R)R+R/R3R7R;R<R=R>(((sO/opt/plesk/python/2.7/lib64/python2.7/site-packages/Crypto/PublicKey/ElGamal.pyR�s				
				
		N(
t__revision__t__all__tCrypto.PublicKey.pubkeytCrypto.UtilRt	ExceptionRtNoneRRR"Rtobject(((sO/opt/plesk/python/2.7/lib64/python2.7/site-packages/Crypto/PublicKey/ElGamal.pyt<module>ls
J	!�

Zerion Mini Shell 1.0