나는 잠시 동안 내 프로젝트에 빠른 / 더러운 높은 점수 테이블을 추가하고 인터넷 보안 등에 정통하지 않은 등 결함이있는 것으로 판명되었습니다. 놀랍게도 거의 1,200,000 개의 기록 된 점수로 5 ~ 6 번 정도의 명백한 부정확 한 점수가 보드 상단에 도달했을뿐입니다. 대부분의 점수는 실제 "해킹"보다 게임에서 결함처럼 보입니다.
따라서 중요한 점은 다음과 같습니다. 게임의 스코어링 시스템이 완벽한 지 확인 하거나 적어도 실제로는 좋은 타당성 검사를 수행해야합니다. 지금, 내가 말하고있는이 게임은 Ludum Dare 48hr 입장이었습니다. 그래서 가장 안정적인 것은 아니 었습니다. 그러나 전반적으로 저는 캐주얼 플레이어가 게임 내 결함을 발견 / 탐구 할 가능성이 더 높다고 생각합니다 누군가 리더 보드를 직접 "해킹"하는 것.
즉, 지금이 프로젝트를 다시 작성하고 있으며 난독 화로 처리하고 있습니다. 너무 자세하게 설명하지는 않지만 기본적으로 모든 점수가 임의의 값과 해싱 및 마법 문자열을 기반으로 주요 값을 제출하도록합니다. 그런 다음 해당 확인을 통과하고 실제 " 상위 X "리더 보드는 다른 검증 라운드를 통과해야합니다 (이번에는 서버 측에서 만료 키 값이 생성되고보다 철저한 타당성 검사가 수행됨).
또한 어떤 종류의 패킷 추적기를 사용하여 어떤 종류의 가시성이 보이는지 테스트하는 것이 좋습니다 (원래는 패킷 추적기를 사용하여 업로드 된 점수의 http 요청을 알지 못하고 복제하기 위해 패킷 추적기를 사용할 수 있음을 의미하는 훨씬 간단한 검증을 수행했습니다) 마술 줄 또는 무엇이든 (합법적 인 점수가 먼저 필요하지만 원하는만큼 중복 점수를 보낼 수 있음). 이것을 테스트하기 위해 Wireshark 를 사용 했습니다.
허, 이것은 조금 길지만, 희망이 있습니다 ...