Nó đã được chỉ ra rằng câu trả lời trước đây của tôi có thể được dựa trên sự hiểu lầm về những gì bạn có nghĩa là "giả mạo". (Nếu vậy, xin vui lòng cho tôi biết và tôi sẽ xóa nó.)
Nếu điều bạn muốn ngăn chặn là các máy chủ trò chơi gửi dữ liệu không có thật đến máy chủ chính, thì - như Jari Komppa lưu ý - nói chung là không thể ngăn chặn hoàn toàn. Trên thực tế, nó chỉ đơn giản là một biến thể của vấn đề phòng chống gian lận nhiều người chơi cổ điển , ngoại trừ với các máy chủ trung gian thay vì các máy khách bị nghi ngờ là gian lận. Nhiều kỹ thuật tương tự được sử dụng để ngăn chặn gian lận truyền thống cũng có thể hoạt động ở đây, nhưng như thường lệ, không ai trong số chúng hoàn toàn không thể đánh lừa được.
Điều đó nói rằng, có là một số điều bạn có thể làm điều đó đặc biệt có thể giúp chống lại các máy chủ gian lận. Một trong số họ sẽ yêu cầu mỗi người chơi trong một trận đấu liên hệ riêng với máy chủ chính và xác nhận rằng họ đang tham gia trận đấu đó. (Bạn có thể muốn làm điều đó trước khi trận đấu bắt đầu, để bạn có thể chắc chắn rằng mọi người đồng ý ai là người tham gia và để không ai muốn khẳng định họ không tham gia trận đấu mà họ thua. Bạn có thể sử dụng chữ ký điện tử mặc dù vậy, về cơ bản, về cơ bản, bạn có thể yêu cầu mọi người chơi trong trận đấu ký một thông báo có nội dung " Tôi là người chơi X và tôi đang tham gia trận đấu M trên máy chủ S tại thời điểm T với người chơi Y, Z và W."và gửi nó đến máy chủ trò chơi, sau này có thể chuyển tiếp nó đến máy chủ chính.) Bằng cách đó, bạn ít nhất có thể đảm bảo rằng một máy chủ gian lận không thể ảnh hưởng đến thứ hạng của bất kỳ người chơi nào không thực sự chơi trên máy chủ đó .
Điều này đặc biệt hữu ích nếu bạn đang sử dụng thứ gì đó như xếp hạng Elo nơi xếp hạng người chơi chủ yếu phụ thuộc vào hiệu suất tương đối của họ . Chắc chắn, ai đó đang chạy một máy chủ không có thật vẫn có thể tạo ra một loạt các tài khoản giả và gửi kết quả nói rằng tài khoản của họ đánh bại những người giả mạo, nhưng với một hệ thống xếp hạng tương đối, tất cả những gì sẽ làm là khiến tài khoản của kẻ lừa đảo xếp hạng cao hơn một chút so với hàng giả ( lần lượt sẽ có xếp hạng đáy đá).
Một điều rõ ràng khác cần làm để ngăn chặn gian lận là để người chơi xác minh kết quả trận đấu của họ trực tiếp từ máy chủ chính. Nếu người chơi thắng một trận đấu trên một máy chủ mới, nhưng kết quả được gửi đến máy chủ chính nói rằng họ đã thua (hoặc nếu kết quả không bao giờ được gửi đi), điều đó sẽ cho họ biết rằng có điều gì đó đáng nghi đang xảy ra. Hy vọng rằng, tại thời điểm đó, họ sẽ báo cáo máy chủ gian lận hoặc ít nhất là bỏ phiếu bằng chân và không bao giờ chơi trên máy chủ đó nữa.
Trên thực tế, bạn có thể thực hiện điều này tự động: sau mỗi trò chơi, một khi kết quả đã được gửi đến máy chủ chính, hãy để khách hàng lấy lại chúng từ máy chủ chính và so sánh chúng với cách khách hàng nghĩ rằng trò chơi kết thúc. Nếu có sự không phù hợp, hãy báo cáo cả cho người chơi (để họ biết có gì đó không ổn) và máy chủ chính (để bạn có thể phát hiện các máy chủ gian lận). Tất nhiên, với tư cách là người vận hành máy chủ chính, sau đó bạn sẽ cần phải quyết định ai nói dối - máy chủ hoặc người chơi - nhưng hy vọng trong hầu hết các trường hợp sẽ khá rõ ràng từ mẫu báo cáo.