
    T                        d dl mZ d dl mZ d dl mZ d Z edddddd      Z edddddd	      Z edd
dd
dd      Z edddddd      Z G d dej                        Z
 G d dej                        Z edddddd
      Z G d dej                        Z edddddd      Z eed      Z eed      Z eed      Z eed	      Z G d dej                        Z edddddd      Z G d dej                        Z G d dej                        Z G d dej                        Z eddddddddd 	      Z G d! d"ej4                        Z edddd#      Z G d$ d%ej                        Z eed      Z eed      Z G d& d'ej                        Z  eed      Z! ee!d      Z" G d( d)ej                        Z# ee!d      Z$ G d* d+ej                        Z% ee$d
      Z& ee&d      Z' ee&d      Z( G d, d-ej                        Z) ee&d
      Z* G d. d/ej                        Z+ G d0 d1ej4                        Z, G d2 d3ej4                        Z- G d4 d5ej                        Z. G d6 d7ej                        Z/ G d8 d9ej                        Z0 G d: d;ejb                        Z2 eed      Z3 ee3d      Z4 eed
      Z5 ee5d       Z6 ee6d      Z7 ee6d      Z8 ee6d
      Z9 ee6d      Z: ee6d	      Z; ee6d<      Z< ee6d=      Z= ee6d>      Z> ee6d?      Z? ee6d@      Z@ ee6dA      ZA ee6dB      ZB ee6dC      ZC ee6d      ZD ee6dD      ZE ee6d      ZF ee6dE      ZG ee6dF      ZH ee6dG      ZI ee6dH      ZJ ee5d      ZK eeKd      ZL eeKd      ZM eeKd
      ZN eeKd      ZO eeKd	      ZP eeKd<      ZQ eeKd=      ZRyI)J    )	namedtype)namedval)univc                      g }t        |       D ]Q  }t        |t        j                        r|j	                  t        |             8|j                  t        |             S t        j                  |      S )N)tuple
isinstancer   ObjectIdentifierextendlistappendint)
componentsoutputxs      )lib/third_party/pyasn1_modules/rfc3279.py_OIDr      sY    F:a../MM$q'"MM#a&!	    ((          iH  i             i8'     c                       e Zd Zy)DSAPublicKeyN__name__
__module____qualname__ r   r   r   r          r   r   c            	           e Zd Z ej                   ej
                  d ej                                ej
                  d ej                                ej
                  d ej                                     Zy)	Dss_ParmspqgN	r   r   r    r   
NamedTypes	NamedTyper   IntegercomponentTyper!   r   r   r$   r$   #   sb    (I((	C0	C0	C0Mr   r$   c                       e Zd Z ej                   ej
                  d ej                                ej
                  d ej                                     Zy)Dss_Sig_ValuersNr(   r!   r   r   r.   r.   .   H    (I((	C0	C0Mr   r.   c                       e Zd Z ej                   ej
                  d ej                                ej
                  d ej                                     Zy)RSAPublicKeymoduluspublicExponentNr(   r!   r   r   r3   r3   <   sI    (I((	I|t||~6	,ldlln=Mr   r3   i>'  c                       e Zd Zy)DHPublicKeyNr   r!   r   r   r7   r7   F   r"   r   r7   c                       e Zd Z ej                   ej
                  d ej                                ej
                  d ej                                     Z	y)ValidationParmsseedpgenCounterN)
r   r   r    r   r)   r*   r   	BitStringr+   r,   r!   r   r   r9   r9   J   sI    (I((	FNDNN$45	M<4<<>:Mr   r9   c                   d   e Zd Z ej                   ej
                  d ej                                ej
                  d ej                                ej
                  d ej                                ej                  d ej                                ej                  d e	                   Z
y)DomainParametersr%   r'   r&   jvalidationParmsN)r   r   r    r   r)   r*   r   r+   OptionalNamedTyper9   r,   r!   r   r   r>   r>   Q   s    (I((	C0	C0	C0#	##C8#	##$57HIMr   r>      e      c                       e Zd Zy)KEA_Parms_IdNr   r!   r   r   rF   rF   ^   r"   r   rF   i='  c                       e Zd Z ej                   ej
                  d ej                                ej
                  d ej                                     Z	y)FieldID	fieldType
parametersN)
r   r   r    r   r)   r*   r   r	   Anyr,   r!   r   r   rH   rH   e   sL    (I((	K)>)>)>)@A	L($((*5Mr   rH   c                       e Zd Z ej                   ej
                  d ej                                ej
                  d ej                                     Zy)ECDSA_Sig_Valuer/   r0   Nr(   r!   r   r   rM   rM   p   r1   r   rM   c                       e Zd Zy)Prime_pNr   r!   r   r   rO   rO   {   r"   r   rO   c            	           e Zd Z ej                   ej
                  d ej                                ej
                  d ej                                ej
                  d ej                                     Z
y)Characteristic_twombasisrJ   N)r   r   r    r   r)   r*   r   r+   r	   rK   r,   r!   r   r   rQ   rQ      sf    (I((	C0	G%:T%:%:%<=	L($((*5Mr   rQ   c                       e Zd Zy)	TrinomialNr   r!   r   r   rU   rU      r"   r   rU   c            	           e Zd Z ej                   ej
                  d ej                                ej
                  d ej                                ej
                  d ej                                     Zy)Pentanomialk1k2k3Nr(   r!   r   r   rW   rW      sb    (I((	D,$,,.1	D,$,,.1	D,$,,.1Mr   rW   c                       e Zd Zy)FieldElementNr   r!   r   r   r\   r\      r"   r   r\   c                       e Zd Zy)ECPointNr   r!   r   r   r^   r^      r"   r   r^   c            	           e Zd Z ej                   ej
                  d e              ej
                  d e              ej                  d ej                                     Z
y)Curveabr:   N)r   r   r    r   r)   r*   r\   rA   r   r<   r,   r!   r   r   r`   r`      sW    (I((	C0	C0#	##FNDNN,<=Mr   r`   c                   0    e Zd Z ej                  d      Zy)ECPVer)ecpVer1r   N)r   r   r    r   NamedValuesnamedValuesr!   r   r   rd   rd      s    &(&&Kr   rd   c                   j   e Zd Z ej                   ej
                  d e              ej
                  d e              ej
                  d e              ej
                  d e	              ej
                  d e
j                                ej                  d e
j                                     Zy)ECParametersversionfieldIDcurvebaseordercofactorN)r   r   r    r   r)   r*   rd   rH   r`   r^   r   r+   rA   r,   r!   r   r   ri   ri      s    (I((	Ivx0	Iwy1	GUW-	FGI.	G\T\\^4#	##J?Mr   ri   c            	           e Zd Z ej                   ej
                  d e              ej
                  d ej                                ej
                  d ej                                     Z
y)EcpkParametersecParameters
namedCurveimplicitlyCAN)r   r   r    r   r)   r*   ri   r   r	   Nullr,   r!   r   r   rq   rq      s`    (I((	NLN;	L*?$*?*?*AB	NIDIIK8Mr   rq            	   
                           N)Spyasn1.typer   r   r   r   md2md5id_sha1id_dsar+   r   Sequencer$   id_dsa_with_sha1r.   pkcs_1rsaEncryptionmd2WithRSAEncryptionmd5WithRSAEncryptionsha1WithRSAEncryptionr3   dhpublicnumberr7   r9   r>   id_keyExchangeAlgorithmOctetStringrF   
ansi_X9_62rH   id_ecSigTypeecdsa_with_SHA1rM   id_fieldTypeprime_fieldrO   characteristic_two_fieldrQ   id_characteristic_two_basisgnBasistpBasisrU   ppBasisrW   r\   r^   r`   rd   ri   Choicerq   id_publicKeyTypeid_ecPublicKeyellipticCurve
c_TwoCurve
c2pnb163v1
c2pnb163v2
c2pnb163v3
c2pnb176w1
c2tnb191v1
c2tnb191v2
c2tnb191v3
c2onb191v4
c2onb191v5
c2pnb208w1
c2tnb239v1
c2tnb239v2
c2tnb239v3
c2onb239v4
c2onb239v5
c2pnb272w1
c2pnb304w1
c2tnb359v1
c2pnb368w1
c2tnb431r1
primeCurve
prime192v1
prime192v2
prime192v3
prime239v1
prime239v2
prime239v3
prime256v1r!   r   r   <module>r      sN   "   ) 1afa#
1afa#
q!RAr
"	aC1	%	4<< 	  1c5!Q/ DMM  
aCA	&VQFA FA VQ 4==  aC1-	$,, 	dmm t}}  q"c1c1aB? 	4## 	 !QU#
dmm  J"|Q'dmm  J"<#	dll 	  a0   ##;Q? 
*A
.
*A
.	 	 *A
.$-- 	4## 		d 	DMM T\\ 4== T[[  
A& &*Z#-#
*a 
*a 
*a 
*a 
*a 
*a 
*a 
*a 
*a 
*b!
*b!
*b!
*b!
*b!
*b!
*b!
*b!
*b!
*b!
*b!
-#
*a 
*a 
*a 
*a 
*a 
*a 
*a 
r   