// myKeyAgree=KeyAgreement.getInstance("DiffieHellman"); /// <exception cref="System.Exception"></exception> public virtual byte[] GetE() { if (e == null) { DHParameterSpec dhSkipParamSpec = new DHParameterSpec(p, g); myKpairGen.Initialize(dhSkipParamSpec); Sharpen.KeyPair myKpair = myKpairGen.GenerateKeyPair(); myKeyAgree.Init(myKpair.GetPrivate()); // BigInteger x=((javax.crypto.interfaces.DHPrivateKey)(myKpair.getPrivate())).getX(); e = ((DHPublicKey)(myKpair.GetPublic())).GetY(); e_array = e.GetBytes(); } return(e_array); }
// private // public /// <exception cref="System.Exception"></exception> public virtual void Init(int key_size) { KeyPairGenerator keyGen = KeyPairGenerator.GetInstance("DSA"); keyGen.Initialize(key_size, new SecureRandom()); Sharpen.KeyPair pair = keyGen.GenerateKeyPair(); PublicKey pubKey = pair.GetPublic(); PrivateKey prvKey = pair.GetPrivate(); x = ((DSAPrivateKey)prvKey).GetX().GetBytes(); y = ((DSAPublicKey)pubKey).GetY().GetBytes(); DSAParams @params = ((DSAKey)prvKey).GetParams(); p = @params.GetP().GetBytes(); q = @params.GetQ().GetBytes(); g = @params.GetG().GetBytes(); }
// private // public // coefficient // exponent p // exponent q // prime p // prime q /// <exception cref="System.Exception"></exception> public virtual void Init(int key_size) { KeyPairGenerator keyGen = KeyPairGenerator.GetInstance("RSA"); keyGen.Initialize(key_size, new SecureRandom()); Sharpen.KeyPair pair = keyGen.GenerateKeyPair(); PublicKey pubKey = pair.GetPublic(); PrivateKey prvKey = pair.GetPrivate(); d = ((RSAPrivateKey)prvKey).GetPrivateExponent().GetBytes(); e = ((RSAPublicKey)pubKey).GetPublicExponent().GetBytes(); n = ((RSAPrivateKey)prvKey).GetModulus().GetBytes(); c = ((RSAPrivateCrtKey)prvKey).GetCrtCoefficient().GetBytes(); ep = ((RSAPrivateCrtKey)prvKey).GetPrimeExponentP().GetBytes(); eq = ((RSAPrivateCrtKey)prvKey).GetPrimeExponentQ().GetBytes(); p = ((RSAPrivateCrtKey)prvKey).GetPrimeP().GetBytes(); q = ((RSAPrivateCrtKey)prvKey).GetPrimeQ().GetBytes(); }