2012-05-24 1 views
6

최근에 온라인 멀티 플레이어 게임을 개발했으며 잘 작동합니다. 클라이언트와 TCP 연결을 처리하는 중앙 서버가 있으며 둘 다 데이터를주고받습니다.
전송 된 데이터가 수신자가 데이터를 읽기 전에 수정되지 않았는지 확인하는 방법이 있습니까?
TCP 연결이 어떤 방식으로 처리합니까? 그렇지 않은 경우 코드를 구현하지 않는 가장 좋은 방법은 무엇입니까? 지금까지
나는 그 아이디어를 내놓았다 :클라이언트 - 서버 연결 간의 데이터 무결성을 확인하는 방법은 무엇입니까?

  • 확인할 값의 일종을 추가 전송되는 데이터 같은 패킷 길이를 수정합니다.
  • 패킷이 수신되면 서버에 다시 보내고 패킷이 동일한 지 확인하십시오.

일반적인 해결책을 찾았지만 많이 찾지 못했습니다.
암호화가 마지막 옵션이어야합니다.

이 달성 할 수있는 간단한 방법을 편집
:

  1. MD5를
  2. SH A1
  3. SSL
+5

해커 또는 잡음/오류로 수정 되었습니까? TCP/IP는 전자가 아닌 후자를 처리합니다. –

+0

간단히 설명하면 어떨까요? – mastaH

+2

데이터를 해시 한 다음 발송 한 데이터에 해시 값을 추가하십시오. 상대방의 사람은 해시가받는 데이터의 해시와 일치하는지 여부를 확인해야합니다. 그것은 잡음 오류를 처리해야합니다. – eboix

답변

5

바트와 일치하면 데이터 확인을 위해 해시 방법을 사용하는 것이 좋습니다.