2017-02-14 3 views
1

Я использую Bouncy Castle C# для разработки приложения. В настоящее время я могу получить список сертификатов через класс X509Store и получить закрытый ключ через класс RSACryptoServiceProvider .NET API.Может ли Bouncy Castle C# работать с .NET Cryptography

Я хотел бы экспортировать закрытый ключ RSACryptoServiceProvider и преобразовать в объект BC, такой как ICipherParameter для шифрования/дешифрования. Однако действие экспорта не допускается, поскольку сертификаты, помеченные как неэкспортируемые.

  1. Это альтернативное решение для получения списка сертификатов и использования закрытого ключа с неэкспортируемым атрибутом через API Bouncy Castle?
+0

Это было бы не очень полезно, если бы вы могли просто игнорировать неэкспортируемые настройки. Не указывайте секретные ключи как не экспортируемые, если вы хотите их экспортировать. –

+0

@JamesKPolk Я думаю, что вопрос: «Может ли BouncyCastle работать с CAPI PCERT_CONTEXT? Или, по крайней мере, CAPI или CNG с именем key?» (Не знаю, что я знаю ответ) – bartonjs

+0

@bartonjs Я обновил вопрос – anguspcw

ответ

3

No. Bouncy Castle - это реализация программного обеспечения, особенно когда дело доходит до C#. Он не содержит никаких плагинов, чтобы выполнять операции с оборудованием, по крайней мере, когда дело доходит до основных криптографических функций.

И снова это является с открытым исходным кодом, поэтому его можно было бы изменить. Единственная проблема после этого - обновить измененный код.

+0

95% уверен в этом ответе, между прочим. Если кто-то отправит 100% -ный ответ, я с радостью продолжу его. Или, для 100% уверенности, попробуйте списки рассылки Bouncy. –

+0

Может ли поддержка bouncy Castle использовать закрытый ключ, который извлекается из защищенного класса .NET, такого как RSACryptoServiceProvider/RSAParameters? – anguspcw

+0

Нет, для шифрования программного обеспечения ключ должен находиться в доступной памяти. –

Смежные вопросы