Почему переход об обратном обработке от создания самореагированного EC x509 CERTIFICATE в PEM-файл для загрузки не удаетC#

Место общения программистов C#
Anonymous
Почему переход об обратном обработке от создания самореагированного EC x509 CERTIFICATE в PEM-файл для загрузки не удает

Сообщение Anonymous »

Вот код .net 9, который создает саморегистрированный сертификат EC, сохраняется в файле .pem и пытается воссоздать сертификат из файла .pem .
// Generate ECC key pair
using var ecdsa = ECDsa.Create(ECCurve.NamedCurves.nistP256);

// Create certificate request
var req = new CertificateRequest(
"CN=MyECCert,O=MyOrg,C=US",
ecdsa,
HashAlgorithmName.SHA256);

// Create self-signed certificate
var cert = req.CreateSelfSigned(DateTimeOffset.UtcNow, DateTimeOffset.UtcNow.AddYears(1));

// Export certificate to PEM
string certPem = cert.ExportCertificatePem();
File.WriteAllText(certFilePath, certPem);

Console.WriteLine("Certificate exported to eccert.pem");

// Read PEM file
var certPemRead = File.ReadAllText(certFilePath);

// Load certificate from PEM
var certRead = X509Certificate2.CreateFromPem(certPemRead, null);

Console.WriteLine("Certificate loaded from PEM:");
Console.WriteLine(certRead.Subject);
< /code>
он не работает в строке: < /p>
var certRead = X509Certificate2.CreateFromPem(certPemRead, null);

with the following exception:

System.Security.Cryptography.CryptographicException: The key contents do not contain a PEM, the content is malformed, or the key does not match the certificate

What am I doing wrong?
Вот содержимое файла .pem < /code>: < /p>
-----BEGIN CERTIFICATE-----
MIIBVDCB+qADAgECAggLjjom2xx/WTAKBggqhkjOPQQDAjAwMQswCQYDVQQGEwJV
UzEOMAwGA1UEChMFTXlPcmcxETAPBgNVBAMTCE15RUNDZXJ0MB4XDTI1MDcxNjIw
MjM1MVoXDTI2MDcxNjIwMjM1MVowMDELMAkGA1UEBhMCVVMxDjAMBgNVBAoTBU15
T3JnMREwDwYDVQQDEwhNeUVDQ2VydDBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IA
BB0ejv/jw7zk9rJaSiyy4qqcgBI2vuD9S8rXAjdrFCgDwhO5o7e/d68OSJP2eDgD
Q4gD7n92K25B/Jbcnfz3uRswCgYIKoZIzj0EAwIDSQAwRgIhAIU6BUiuWWA+1XL0
tbsAf4QzhfSKC/TIgCYa6Zqup8SiAiEAhueueLf82mbUNDXyjgc+CUip3VGSZdbb
6fEfuA9O6Ag=
-----END CERTIFICATE-----


Подробнее здесь: https://stackoverflow.com/questions/797 ... e-to-pem-f

Вернуться в «C#»