2016-11-08 3 views
0

오히려 .Net MVC에 익숙하지 않고 Signature에 더 새로운 것입니다.공개 키가있는 XML 서명

XML 파일에 서명을하고 응답 스트림을 사용하여 클라이언트에 보내야합니다.

나는 XML Enveloped에 서명 할 수있는 코드로 많은 전투를 벌이고있다. RSACryptoServiceProvider 개인 키, DataObject, KeyInfo 및 모든 항목.

그러나 내 고객은 그에게 공개 키만 받았다고 말했습니다.

인터넷을 통해 검색하는 날 이후로 나는 아직도 어떻게하는지 모릅니다.

내 질문 : C#으로 .NET MVC에서 공개 키로 XML을 어떻게 서명 할 수 있습니까?

+1

공개 키로 서명하지 않았습니다. 개인 키가 그 것이다. – Amy

+0

그러나 "enveloped"라는 단어는 아마도 암호화해야 함을 의미합니다 (일반적으로 먼저 서명 한 다음 암호화합니다.하지만 수신자가 메시지를 수락하면 다른 방법으로도 할 수 있습니다). 암호화는 공개 키를 사용하여 수행됩니다. –

답변

0

공개 키로 XML 파일에 서명 할 수 없으며 공개 키는 유효성 검사를 위해서만 사용됩니다.

서명시 개인 키가 필요합니다.이 키는 OpenSSL에서 생성 할 수 있습니다. 이 작업을 잠시 동안 할 수 있으며 코드를 키 스토어 구현과 병합하도록 클라이언트에 요청해야합니다.

파일에 서명 할 수있게되면 서명 된 문서의 일부로 인증서가 base64 형식으로 표시되며이 인증서에는 개인 키로 서명 한 유효성을 검사하는 데 사용되는 공개 키가 포함됩니다.

+0

고마워요. :) 나는 약 한달 전에 그랬습니다. 클라이언트는 진짜로 그것을 얻지 않는다 ... – Shaorandra