Ejemplo n.º 1
0
        [InlineData("1.2.840.10045.3.1.7", 256)] //secp256v1
        public static void ECCurve_ctor_SEC2_OID_From_Value(string oidValue, int expectedKeySize)
        {
            ECCurve ecCurve = ECCurve.CreateFromValue(oidValue);

            using (ECDiffieHellman ecdh = ECDiffieHellmanFactory.Create(ecCurve))
            {
                Assert.Equal(expectedKeySize, ecdh.KeySize);
                ecdh.Exercise();
            }
        }
Ejemplo n.º 2
0
 public static void Equivalence_Hash()
 {
     using (ECDiffieHellman ecdh = ECDiffieHellmanFactory.Create())
         using (ECDiffieHellmanPublicKey publicKey = ecdh.PublicKey)
         {
             byte[] newWay = ecdh.DeriveKeyFromHash(publicKey, HashAlgorithmName.SHA256, null, null);
             byte[] oldWay = ecdh.DeriveKeyMaterial(publicKey);
             Assert.Equal(newWay, oldWay);
         }
 }
Ejemplo n.º 3
0
        public static void TestNamedCurvesNegative(CurveDef curveDef)
        {
            if (!curveDef.Curve.IsNamed)
            {
                return;
            }

            // An exception may be thrown during Create() if the Oid is bad, or later during native calls
            Assert.Throws <PlatformNotSupportedException>(() =>
            {
                using ECDiffieHellman ecdh = ECDiffieHellmanFactory.Create(curveDef.Curve);
                ecdh.ExportParameters(false);
            });
        }
Ejemplo n.º 4
0
        public static void ECCurve_ctor()
        {
            using (ECDiffieHellman ecdh = ECDiffieHellmanFactory.Create(ECCurve.NamedCurves.nistP256))
            {
                Assert.Equal(256, ecdh.KeySize);
                ecdh.Exercise();
            }

            using (ECDiffieHellman ecdh = ECDiffieHellmanFactory.Create(ECCurve.NamedCurves.nistP384))
            {
                Assert.Equal(384, ecdh.KeySize);
                ecdh.Exercise();
            }

            using (ECDiffieHellman ecdh = ECDiffieHellmanFactory.Create(ECCurve.NamedCurves.nistP521))
            {
                Assert.Equal(521, ecdh.KeySize);
                ecdh.Exercise();
            }
        }