Сертификаты x509 в .NET - разница между XML-значениями PrivateKey и необработанными данными Cert - PullRequest
0 голосов
/ 03 марта 2011

Я рассматриваю схему Symmetric Encryption, в которой используется ключ шифрования, который сам является производным от сертификата X509. Я понимаю, что это не асимметрично и, возможно, странно, но это эксперимент.

Моя цель - получить доступ к закрытому ключу или его части из сертификата x509 в качестве входных данных для функции деривации «ключа».

Тупой вопрос: Каким свойством x509Certificate2 является закрытый ключ? PrivateKey само по себе является всего лишь алгоритмом. Алгоритм ToXmlString перечисляет несколько значений (Modulus, Exponent, P, Q, DP, DQ, InverseQ, D), которые, как я подозреваю, зависят от поставщика. Также доступен x509Certificate2.RawData.

Говоря об асимметричном алгоритме Encrypt-with-public-key / decrypt-with-private-key ... какое из приведенных выше свойств, если оно есть, является ли этот закрытый ключ?

Заранее спасибо,

Говард Хоффман

1 Ответ

1 голос
/ 04 марта 2011

Согласно документации здесь: http://msdn.microsoft.com/en-us/library/system.security.cryptography.x509certificates.x509certificate2.privatekey.aspx свойство PrivateKey является ссылкой на закрытый ключ, а не алгоритмом.

См. Также пример по предоставленной ссылке, чтобы узнать, как распечатать закрытый ключ.

...