• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    해결됨

Unity와 WebApi 연동 관련하여 간단한 확인 부탁드립니다.

20.10.18 23:05 작성 조회수 347

0

아래 "Unity와 WebApi 연동" 질문글에 대하여 테스트 가능한 상태로 해결은 하였습니다.

아마도 네트워크 인증 문제인 것 같습니다.

https://answers.unity.com/questions/1482409/how-to-accept-self-signed-certificate.html

위 링크에서 솔루션 중 "AcceptAllCertificatesSignedWithASpecificKeyPublicKey" 클래스의 "ValidateCertificate" 매서드의 리턴값을 true로 바꾸어서 정상적으로 작동 가능함을 확인했습니다.

(수정한 코드; 사실 매서드 자체를 단순히 return true로 만든것과 동일한 상태입니다.)

  1. protected override bool ValidateCertificate(byte[] certificateData)
  2. {
  3. X509Certificate2 certificate = new X509Certificate2(certificateData);
  4. string pk = certificate.GetPublicKeyString();
  5. if (pk.ToLower().Equals(PUB_KEY.ToLower()))
  6. return true;
  7. return true;
  8. }

네트워크 관련하여 지식이 많이 부족해서 코드 이해가 어렵네요.

혹시 강사님 괜찮으시다면 위 링크 코드가 어떤 내용인지 간단한 설명 부탁드립니다.

(코드는 강사님 코드와 동일하여 따로 전달드리지는 않았습니다.)

답변 1

답변을 작성해보세요.

0

아 그렇군요. 유니티 버전에 따라 인증서 확인이 필요한가보네요.
해당 문제는 네트워크와는 무관하고 보안 영역에 더 가까운데,
말 그대로 내가 연결할 서버의 신분을 확인하는 개념이라고 보시면 됩니다.
Public / Private Key가 등장하는건 비대칭키 암호 (RSA)가 들어간다는 의미고
Part9 암호학 개론 수업에서 해당 내용을 간단히 다룹니다.