Skip to main content
Ces bonnes pratiques sont fournies à titre de références exemplaires. Évaluez vos implémentations de manière indépendante.
Sécuriser toutes les communications réseau, quels que soient le canal ou le contenu, est un moyen relativement simple mais essentiel d’améliorer la sécurité globale du jeu. Cela limite les vecteurs d’attaque contre la logique du jeu, les services et les données utilisateur. Ces trois propriétés doivent toutes être respectées. L’absence de l’une d’entre elles entraîne une communication non sécurisée :
  • Confidentialité
  • Intégrité
  • Authentification
Par exemple, une communication confidentielle avec intégrité mais sans authentification permet à un attaquant d’usurper l’identité d’un utilisateur, d’un appareil ou d’un service, ce qui invalide les autres protections. Ne sécuriser qu’une partie d’un message ou qu’un sous-ensemble du flux invalide également les protections.

Confidentialité

Protège la communication contre l’observation externe, en limitant la visibilité aux partenaires participants. Elle est obtenue par le chiffrement des messages à l’aide d’algorithmes et de chiffrements cryptographiques robustes. Seuls des messages fortement chiffrés garantissent que seuls les détenteurs des clés de chiffrement/déchiffrement peuvent les lire ou les produire ; le partage des clés est donc étroitement lié à l’authentification. La confidentialité de l’adresse IP des joueurs est également importante. Acheminez les communications via des serveurs dédiés ou des relais afin qu’un canal direct unique (comme la conversation vocale) n’expose pas l’adresse IP d’un joueur.

Intégrité

Détecte toute falsification pendant la transmission. Elle est obtenue par un hachage sécurisé des messages, associé à des numéros de séquence ou à des horodatages.
  • Les hachages sécurisés créent un condensé du message qui révèle toute falsification.
  • Les numéros de séquence et horodatages empêchent les attaquants de dupliquer et de rejouer des messages.
Le chiffrement seul n’offre généralement pas de protection de l’intégrité. Même des messages fortement chiffrés ont été manipulés sans être détectés lors d’attaques connues.
Au-delà de l’intégrité des messages, validez l’intégrité logique : vérifiez si un message reçu ou une demande de service est valide dans l’état actuel du jeu (par exemple, ignorez silencieusement les mises à jour de vitesse d’un joueur qui dépassent les limites du jeu).

Authentification

Valide de manière sécurisée l’identité des partenaires de communication et empêche l’usurpation d’identité. Elle est obtenue à l’aide de certificats vérifiables publiquement pour les services et de jetons d’authentification de la plateforme pour les clients.
  • Exigez par défaut l’authentification de tous les partenaires de communication.
  • Pour les données publiques en lecture seule (configuration, message du jour), il peut être acceptable de n’authentifier que le service d’origine, mais veillez à ne pas étendre ce modèle à d’autres cas.
  • Les clients de jeu sur une plateforme de jeu doivent toujours utiliser des jetons d’authentification de la plateforme sécurisés. Les secrets codés en dur dans les clients sont insuffisants : les attaquants peuvent les deviner ou les extraire.
  • Les jetons de service ou de compte du jeu sont également acceptables s’ils respectent les instructions relatives aux jetons sécurisés et sont émis après la validation du jeton de la plateforme.

Documentation des API associées

Voir aussi

Last modified on October 6, 2026