.1A <(I)Z([B)Vjava/math/BigIntegergetContentsInternal E0(Lcom/phaos/math/BigInt;)Lcom/phaos/math/BigInt; *  &Lcom/phaos/crypto/AlgorithmIdentifier; N !com/phaos/fips/KeyExportExceptioninputASN1Object initialize J ] "(Ljava/io/File;)V getContents([B)Lcom/phaos/ASN1/ASN1Object;getAllowExport g+pkiBytes i(Z)VLcom/phaos/crypto/DHParams;com/phaos/ASN1/ASN1Sequence " addElement = "G # "L Exceptions(Ljava/lang/String;)V algOID ()[B dB r &(Lcom/phaos/math/BigInt;)VsetArrayInvalid DH parameterscom/phaos/math/BigIntF()Lcom/phaos/ASN1/ASN1ObjectID; allowExportcom/phaos/ASN1/ASN1OctetString M ,P(Ljava/io/InputStream;)V com/phaos/crypto/AlgIDtoBytes SourceFilecom/phaos/crypto/DHParams "# J JY[([BB)V e J[B "kjava/lang/ClassCastExceptionclone`b H$com/phaos/crypto/AlgorithmIdentifierD(Lcom/phaos/crypto/AlgorithmIdentifier;Lcom/phaos/ASN1/ASN1Object;)V%com/phaos/utils/InvalidInputException  (Ljava/math/BigInteger;I)V/(Ljava/math/BigInteger;)Lcom/phaos/math/BigInt; toByteArrayl " -com/phaos/crypto/AlgorithmIdentifierException(Lcom/phaos/crypto/DHParams;)V a ] 'YgetOID()Ljava/lang/String;,(Ljava/lang/String;)Ljava/lang/StringBuffer; " 4(Ljava/math/BigInteger;Lcom/phaos/crypto/DHParams;)V setParams <G "  java/io/FileInputStream&Missing P, Q or G in DH key parameterscom/phaos/utils/Utils U=  .getBigIntValue (Lcom/phaos/ASN1/ASN1Sequence;)V PKCS#8input getBitLength ()Z,(Ljava/lang/Object;)Ljava/lang/StringBuffer;()V getFormat ! elementAt(J)V h9 ()I - i=equals (()Lcom/phaos/crypto/AlgorithmIdentifier; C( ] getEncoded 5 getInstance (Ljava/lang/Object;)Z qD  s $ com/phaos/crypto/DHKeytoStream getParameters com/phaos/utils/VersionException ?toString C(I)Ljava/lang/StringBuffer; K;(Lcom/phaos/ASN1/ASN1ObjectID;Lcom/phaos/ASN1/ASN1Object;)V getEncodedInternallength "nLcom/phaos/math/BigInt;output <% "pcom/phaos/fips/FIPS_140_2()Lcom/phaos/ASN1/ASN1Object;assertReadyState  9 "}setAllowExport fgetAlgID(Lcom/phaos/ASN1/ASN1Object;)V params = {java/lang/StringBuffer  getXInternal keyContents  m !Lcom/phaos/ASN1/ASN1Integer; " &Lcom/phaos/ASN1/ASN1ObjectID; ],Code5(Lcom/phaos/math/BigInt;Lcom/phaos/crypto/DHParams;)V   "dh  @V}, bitLength = 9 com/phaos/ASN1/ASN1Integer ^)Error writing DH key parameters to stream ()Ljava/lang/Object;java/io/OutputStream2Wrong algorithm identifier for Diffier-Hellman key  . "erase |assertAllowExport}x +java/io/IOException "getValue 7(I)Lcom/phaos/ASN1/ASN1Object;()Ljava/math/BigInteger; Plaintext key export not allowedcom/phaos/ASN1/ASN1Utils (Lcom/phaos/utils/Streamable;)[BZ ""java/lang/IllegalArgumentException com/phaos/crypto/PrivateKey append &getXContents invalidgetQgetP " DHPrivateKey(Ljava/io/OutputStream;)V  GgetG !java/lang/Object ucom/phaos/ASN1/ASN1ObjectIDgetAllowKeyExport <paramswrite ()Lcom/phaos/math/BigInt;%  com/phaos/crypto/DHPrivateKey 2 " 9 & "3(Lcom/phaos/utils/Streamable;)Ljava/io/InputStream; \/ eraseCache)com/phaos/utils/StreamableOutputException $!"7'YE)*'.4(****Z*Z*Z)*j**ƶy**tK *+*'4wm8,+S+R +X Yο*+j*tv *+,* +*ѱ4a~*0 +; iY(+N-'-J*-Jj*JY-&8jNiY(NiY(*,~ƧN^Y 翱KNKYUdorU4i^*,6*'*+Ʊ9QE*9&Y L+Y >+*z>+CY*Q>*+*r$*  Y  Kv&Y+)M,N-:Y-01]Y,&o:,C&:*M^Y,M^Y,翱X[iXhU4**Z*Y*ƷZ*Z\bNĻ"YL*j+JY*j8jM-Y*+*Ƹ +*''+ $'Ļ]Y *j!*ư9*3*նITr7+ĻY*jW*-x/ _ "*3ĻY*Ʒ$*'! *|Y+4*վ *c*' *3 Y*{O