コード例 #1
0
ファイル: DH.cs プロジェクト: shoff/ngit
 //    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);
 }
コード例 #2
0
        // 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();
        }
コード例 #3
0
        // 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();
        }