Это связано с .NET / C #. Предположим, что внутри файла PFX или PKCS # 12 есть сертификат + закрытый ключ (P521 ECC). Мы загрузили этот сертификат и его закрытый ключ в хранилище сертификатов Windows, установив его (либо дважды щелкнув PFX, либо запустив certutil -f -p myPfxPassword -importPFX MY SomeEcCert.pfx
). Я заметил, что если сертификат совместим (например, кривая p521), он автоматически устанавливается как сертификат / ключ CNG.
Теперь, как мне загрузить закрытый ключ в CngKey, чтобы затем использовать его внутри класса ECDiffieHellmanCng
? Я также хотел бы загрузить сертификат X509 (CNG), чтобы прочитать его серийный номер, эмитент, общее имя и т. Д. Для некоторой бухгалтерии.
var myCngKey = SomehowLoadTheCngKey("my ecc certificate"); // <== ??
var myDH = new ECDiffieHellmanCng(myCngKey);