.net encoding cryptography ecdsa key-pair

.net - Almacenamiento de claves ECDSA



encoding cryptography (1)

Suponiendo que quiere decir que desea mantener una clave en el almacén de claves del sistema operativo (RSACryptoServiceProvider usando una clave con nombre), con CNG la interfaz es un poco diferente:

private static ECDsa CreateOrOpenECDsaKey(string keyName) { CngKey key; if (CngKey.Exists(keyName)) { key = CngKey.Open(keyName); } else { // You can also specify options here, like if it should be exportable, in a // different overload. key = CngKey.Create(CngAlgorithm.ECDsaP521, keyName); } // The ECDsaCng constructor will duplicate the key reference, so we can close this one. using (key) { return new ECDsaCng(key); } }

Si quiso decir que desea exportar / importar como RSAParameters, esa característica está presente en .NET Core, pero aún no está presente en .NET Framework.

Estoy implementando claves ECDSA y certificados en .NET, y necesito almacenar las claves para poder reutilizarlas con una nueva firma. Con RSA, estaba usando la clase RSACryptoServiceProvider, pero no veo nada similar con ECDsa ni con las clases ECDsaCng.

Solo he visto DSACryptoServiceProvider y un viejo ECDsaCryptoServiceProvider en Framework 4.3 (un poco viejo).

¿Alguien sabe una forma de almacenar claves ECDSA como en RSA, por favor?