2017-02-14 4 views
1

Bouncy Castle C#을 사용하여 응용 프로그램을 개발하고 있습니다. 현재 X509Store 클래스를 통해 인증서 목록을 검색하고 .NET API에 의해 RSACryptoServiceProvider 클래스를 통해 개인 키를 가져올 수 있습니다.Bouncy Castle C#이 .NET 암호화로 작동 할 수 있습니까?

RSACryptoServiceProvider 개인 키를 내보내고 암호화/암호 해독을 위해 ICipherParameter와 같은 BC 개체로 변환하고 싶습니다. 그러나 내보낼 수없는 것으로 표시된 인증서 이후에는 내보내기 작업이 허용되지 않습니다.

  1. Bouncy Castle API를 통해 인증서 목록을 검색하고 내보낼 수없는 개인 키를 사용하는 다른 해결책이 있습니까?
+0

내보낼 수없는 설정을 무시할 수 있으면별로 유용하지 않습니다. 비공개 키를 내보내려면 내보낼 수없는 것으로 표시하지 마십시오. –

+0

@JamesKPolk 질문 : "BouncyCastle은 CAPI PCERT_CONTEXT를 사용할 수 있습니까? 아니면 최소한 CAPI 또는 CNG라는 이름의 키를 사용할 수 있습니까?" (그 대답은 아는 것이 아닙니다.) – bartonjs

+0

@bartonjs 나는이 질문에 – anguspcw

답변

3

No. Bouncy Castle은 특히 C#과 관련하여 소프트웨어 전용 구현입니다. 최소한 코어 암호화 기능에 관해서는 하드웨어상에서 연산을 수행하는 플러그인 구조를 포함하지 않습니다.

그런 다음 다시 오픈 소스이므로 코드를 변경해야합니다. 그 이후 유일한 문제는 변경된 코드를 최신 상태로 유지하는 것입니다.

+0

을 95 %의 응답으로 업데이트했습니다. 누군가가 100 % 확실한 답변을 게시하면 기꺼이 그것을 upvote거야. 또는 Bouncy 메일 링리스트를 100 % 확실하게 사용하십시오. –

+0

RSACryptoServiceProvider/RSAParameters와 같은 .NET 보호 클래스에서 검색 한 개인 키를 사용하도록 성을 지원할 수 있습니까? – anguspcw

+0

아니요, 소프트웨어 암호화가 작동하려면 키가 액세스 가능한 메모리에 있어야합니다. –