public static void GetECDsaPublicKey_ThrowsForCorruptKey() { AsnEncodedData badData = new AsnEncodedData(new byte[] { 1, 2, 3, 4 }); PublicKey key = new PublicKey(GetTestECDsaKey().Oid, badData, badData); Assert.ThrowsAny <CryptographicException>(() => key.GetECDsaPublicKey()); }
public static void GetPublicKey_NullForDifferentAlgorithm() { byte[] spki = TestData.GostR3410SubjectPublicKeyInfo; PublicKey key = PublicKey.CreateFromSubjectPublicKeyInfo(spki, out _); Assert.Null(key.GetRSAPublicKey()); Assert.Null(key.GetECDsaPublicKey()); Assert.Null(key.GetECDiffieHellmanPublicKey()); }
public static void GetECDsaPublicKey_ReturnsECDsaKey() { PublicKey key = GetTestECDsaKey(); using (ECDsa ecdsa = key.GetECDsaPublicKey()) { Assert.NotNull(ecdsa); Assert.Equal(ecdsa.ExportSubjectPublicKeyInfo(), key.ExportSubjectPublicKeyInfo()); } }