2011-04-07 2 views
0

나는 인증서로 약간 허풍을 부리고 있음을 인정해야한다. 나는 웹 검색으로 그 사실을 알 수 없다. 제 3자가 x509certificate를 사용하여 웹 페이지에 파일을 게시하고 있습니다.내 페이지가 x509certificate를 확인해야합니까? 그렇다면 어떻게?

나는 파티의 공개 키를 가지고 있다고 들었다. Request.ClientCertificate.PublicKey를이 값과 비교할 수 있습니까? 문자열로 인코딩하고 문자열을 비교할 수 있습니까?

+0

당신이 비교와 함께 달성하기 위해 노력하고있다 인코딩하려고? 사용자 인증? 권한 부여? 신분증? –

+0

제공된 인증서가 '유효'합니다. – Belmiris

+0

이 경우 HttpClientCertificate 클래스에는 'IsValid'속성이 있습니다. 이는이를 기준값과 비교하는 것과 다릅니다. – Timores

답변

1

PublicKey는 바이트 배열입니다. 요청서에있는 내용과 참조를 비교하기 만하면됩니다.

문자열을 인쇄 할 수없는 문자에 문제에 당신을 얻을 수 있기 때문에 (바이트가 0 인 경우, 해당하는 캐릭터가 무엇을해야합니까?)

+0

나는 비교를 위해 사용자가 제공 한 키를 저장하는 방법에 대해서 궁금 할뿐입니다. 나는 그것을 바이너리 리더/파일로 파일에 저장할 수 있다고 생각한다. – Belmiris

+0

음, 각 바이트를 동등한 16 진수 값으로 변환 할 수 있으므로 0 바이트가 "00"이됩니다. 문자열 인코딩에 대해 더 생각했습니다. 정확히 언급 한 내용과 다릅니다. – Timores

+0

혼란에 죄송합니다. Convert.ToBase64String (certificate.PublicKey)과 같은 것을 더 생각하고있었습니다. – Belmiris

관련 문제