Tôi đã thêm một bảng điểm cao nhanh chóng / bẩn thỉu cho một dự án của tôi một thời gian trước và không thành thạo về bảo mật internet / v.v ... nó hóa ra không hoàn hảo. Đáng ngạc nhiên, với gần 1.200.000 điểm được ghi lại, tôi chỉ có thể có 5 hoặc 6 lần các lô điểm không chính xác ngang nhiên đạt đến đỉnh bảng. Hầu hết các điểm số thậm chí trông giống như một trục trặc trong trò chơi, hơn là một "hack" thực sự.
Vì vậy, tôi đoán một điểm quan trọng là: đảm bảo hệ thống tính điểm của trò chơi của bạn kín gió , hoặc ít nhất là thực hiện một số kiểm tra tính khả thi thực sự tốt; Bây giờ, trò chơi này tôi đang nói đến là một mục nhập Ludum Dare 48hr, vì vậy nó không phải là thứ ổn định nhất xung quanh .. nhưng về tổng thể tôi nghĩ rằng nhiều khả năng người chơi bình thường sẽ phát hiện / khai thác một trục trặc trong trò chơi có người trực tiếp "hack" bảng xếp hạng.
Điều đó nói rằng, tôi đang làm việc để viết lại dự án này ngay bây giờ, và tôi sẽ làm tất cả với sự xáo trộn. Tôi sẽ không đi sâu vào chi tiết, nhưng về cơ bản, tất cả các điểm đều gửi một giá trị chính dựa trên một loạt các giá trị ngẫu nhiên và băm và một chuỗi ma thuật, sau đó bất kỳ điểm nào vượt qua kiểm tra đó và đủ cao để thực hiện " Bảng xếp hạng Top X "phải vượt qua một vòng xác nhận khác (lần này với giá trị khóa hết hạn được tạo ở cuối máy chủ và kiểm tra tính khả thi kỹ lưỡng hơn).
Tôi cũng khuyên bạn nên sử dụng một trình theo dõi gói nào đó để kiểm tra những thứ có thể nhìn thấy (ban đầu tôi đang thực hiện một xác minh đơn giản hơn nhiều có nghĩa là ai đó có thể sử dụng trình theo dõi gói để tìm và sao chép yêu cầu http của điểm đã tải lên mà không cần biết chuỗi ma thuật hoặc bất cứ điều gì (có nghĩa là trước tiên bạn cần một số điểm hợp pháp, nhưng bạn có thể gửi các bản sao của số điểm đó nhiều như bạn muốn ..)). Tôi đã sử dụng Wireshark để thử nghiệm điều này.
Huh, điều này hóa ra hơi lâu, nhưng hy vọng nó sẽ giúp ...