Есть ли разница в генерации пары ключей между
в пространстве имен System.Security.Cryptography?
Технические созданные пары ключей E C могут использоваться взаимозаменяемо для получения или подписи эфирных ключей.
{
var ecDsa = ECDsa.Create(ECCurve.NamedCurves.brainpoolP512r1);
var ecdh = ECDiffieHellman.Create();
ecdh.ImportECPrivateKey(ecDsa.ExportECPrivateKey(), out _);
ecDsa.ExportPkcs8PrivateKey().Should().BeEquivalentTo(ecdh.ExportPkcs8PrivateKey());
}
{
var ecdh = ECDiffieHellman.Create(ECCurve.NamedCurves.brainpoolP512r1);
var ecDsa = ECDsa.Create();
ecDsa.ImportECPrivateKey(ecdh.ExportECPrivateKey(), out _);
ecdh.ExportPkcs8PrivateKey().Should().BeEquivalentTo(ecDsa.ExportPkcs8PrivateKey());
}