L’objectif des exigences de cette section est de s’assurer que les fonctions habituellement exécutées par les programmes de contrôle des appareils de jeu fonctionnent d’une manière qui préserve l’intégrité du jeu.
9.1 Révision du code source
9.1.1 Les nouveaux programmes de contrôle doivent faire l’objet d’un examen indépendant du code source soumis, et les résultats de cet examen doivent être inclus dans la soumission de la nouvelle plate-forme. L’examen doit porter au moins sur les sujets suivants :
- Les programmes de contrôle doivent fonctionner d’une manière conforme à la section 3 intitulée « Intégrité des données et des logiciels essentiels ».
- L’objectif des exigences de cette section est d’assurer l’intégrité des logiciels critiques et des données critiques de jeu pendant le fonctionnement du jeu.
- Le flux de code provenant de l’appel du GNA ou de la collecte des données du joueur basées sur les compétences pour la détermination du résultat du jeu : le résultat du GNA, les données du joueur basées sur les aptitudes ou une combinaison de celles-ci doivent être le seul résultat utilisé pour déterminer le résultat du jeu. Il ne peut pas exister d’autres routines qui modifient le résultat, ou qui contournent le résultat du GNA ou l’entrée du joueur basée sur les aptitudes en échange de quelque chose d’autre;
- Toutes les autres procédures qui utilisent l’entrée de GNA ou basée sur les aptitudes du joueur : Tous les appels au GNA ou pour recueillir des données sur les aptitudes du joueur doivent être déterminés et pris en compte, p. ex. le mélange, le choix avec et sans substitution, le choix dans la table de bonis, l’entrée d’un dispositif basé sur les aptitudes du joueur, etc. Chaque appel doit utiliser la sortie du GNA, l’entrée du joueur basée sur les aptitudes, ou une combinaison de celles-ci de manière appropriée, sans modification, de sorte que la sortie mise à l’échelle soit conforme aux attentes; et
- Le code redondant ou code de triche : aucun code (code de triche, œuf de Pâques, etc.) n’affecte le bon fonctionnement d’un logiciel.
9.1.2 Les modifications aux programmes de commande de l’appareil de jeu qui ont une incidence sur l’un ou plusieurs des éléments mentionnés dans la norme 9.1.1 peuvent exiger une révision indépendante du code source des modifications, selon leur complexité et leur nombre. Ces occurrences seront déterminées au cas par cas par la CAJO.
9.1.3 Le registrateur peut exiger d’autres examens indépendants du code source, s’il le juge nécessaire, selon la complexité des modifications apportées, le moment du dernier examen, etc.
9.1.4 Dans le cadre des examens indépendants prévus aux normes 9.1.1, 9.1.2 et 9.1.3, l’examen indépendant doit être certifié par une personne ou un groupe qui n’est pas directement engagé dans le développement de l’appareil de jeu et qui est autorisé par le fournisseur de jeu pour cette certification, ou par un laboratoire indépendant accrédité ISO/CEI 17025 pour ces travaux.
9.2 Caractère aléatoire du jeu
Directives :
Cette section ne s’applique qu’aux aspects d’un jeu qui sont basés sur le hasard.
9.2.1 Les jeux doivent s’appuyer sur une source aléatoire pour choisir, parmi l’ensemble des résultats possibles du jeu, celui qui est fourni au joueur.
9.2.2 La sortie valide de la source aléatoire doit être utilisée pour le résultat du jeu sans altération ou décision secondaire de la part du jeu.
Directives :
La sortie de la source aléatoire comprend toutes les mises à l’échelle nécessaires pour que la sortie soit utilisable par le jeu.
9.2.3 Les sorties aléatoires utilisées pour déterminer les résultats du jeu doivent être capables de produire tous les résultats possibles exigés par la conception du jeu.
9.2.4 Les sorties fournies par la source aléatoire doivent passer avec succès les tests statistiques applicables du caractère aléatoire et démontrer :
- leur indépendance statistique;
- leur distribution uniforme parmi l’ensemble des résultats possibles pour les jeux en question; et
- leur imprévisibilité.
9.2.5 La source aléatoire et ses sorties ne doivent pas pouvoir être influencées par quelque moyen que ce soit (par exemple par le montant du pari, le style ou la méthode de jeu, l’historique de jeu, etc.).
9.2.6 Les appareils de jeu ne doivent modifier aucune fonction de l’appareil de jeu en fonction du pourcentage de retenue réelle.
Logiciels de génération de nombres aléatoires (GNA)
9.2.7 Tous les logiciels de GNA sont solides au plan cryptographique, de sorte à satisfaire aux exigences suivantes :
- il est impossible d’estimer ou de prédire par calcul les valeurs à partir d’un état initial ou de valeurs antérieures; et
- le logiciel doit modifier régulièrement son état au moyen d’une source externe d’entropie.
Note : L’adoption anticipée de la norme ci-dessus est encouragée. Les nouveaux programmes de contrôle soumis pour approbation après le 1er juillet 2020 doivent satisfaire à cette norme.
Directives :
Les GNA cryptographiques ne sont nécessaires que pour les GNA utilisés dans la détermination exclusive du résultat du jeu. Par exemple, elle ne s’applique pas aux logiciels de génération de nombres aléatoires permettant de commander le mécanisme soufflant une boule sur une roulette.
Générateurs mécaniques et matériels de nombres aléatoires
9.2.8 L’appareil de jeu doit empêcher que les GNA utilisés dans les jeux électroniques soient configurés de telle sorte que le GNA viole la norme 9.2.4 lorsqu’il est déployé dans cette configuration.
9.2.9 Les GNA utilisés dans les jeux électroniques doivent être construits avec des matériaux appropriés et avoir des mesures appropriées en place pour maintenir leur caractère aléatoire tout au long de leur fonctionnement, y compris le remplacement et l’étalonnage des composants nécessaires.
Directives :
Des pièces de rechange peuvent être nécessaires après un laps de temps prédéterminé pour que le GNA soit conforme à cette exigence, et l’appareil peut nécessiter un entretien périodique pour assurer l’intégrité continue du GNA.
9.2.10 Le joueur ne doit pas avoir la capacité d’interagir physiquement avec, d’entrer en contact physique avec, ou de manipuler autrement des GNA sauf lorsque cela est nécessaire pour jouer le jeu.
9.2.11 Les appareils de jeu doivent être en mesure de déterminer s’il existe des preuves statistiques qu’un GNA ne fonctionne pas comme prévu pour le jeu en question, et de le communiquer de manière appropriée à l’exploitant pour une action rapide.
9.3 Options et limites de jeu
9.3.1 Des mécanismes doivent être en place, s’il y a lieu, pour établir les options de jeu essentielles et les limites d’une manière qui assure et maintient l’intégrité du jeu, permettant à l’exploitant de contrôler les limites des contrôles internes.
9.3.2 Les appareils de jeu doivent être capables de fixer les limites suivantes :
- limite de crédit;
- limite du gros lot;
- montant maximal que l’imprimante peut imprimer ou que le préposé peut remettre;
- somme maximale qu’un joueur peut miser au moyen d’une fonction de pari, s’il y a lieu.
9.3.3 le total de tous les crédits encaissables accumulés ne doit pas dépasser trois mille dollars (3000 $).
9.3.4 L’appareil de jeu doit être conçu de manière à ce que le réglage et la modification des limites spécifiées dans les normes 9.3.2 et 9.3.3, ainsi que le réglage et la modification des options de jeu essentielles ne puissent être effectués que par un personnel autorisé, en utilisant une procédure technique restrictive.
9.3.5 Les changements apportés aux options de jeu (les configurations de jeu) sont considérés comme des événements importants et ces changements doivent être consignés en toute sécurité avec l’horodatage approprié dans un journal ou plusieurs journaux qui maintiennent au minimum les 100 derniers événements importants depuis le dernier effacement de mémoire effectué.
9.4 Modes de diagnostic et de test
9.4.1 Les appareils de jeu doivent permettre de visualiser la configuration du jeu et de vérifier le bon fonctionnement du jeu sans compromettre l’intégrité du jeu.
9.4.2 Les appareils de jeu doivent permettre d’effectuer au moins les activités suivantes, selon les besoins :
- voir tous les logiciels essentiels installés, y compris le nom, la version et leur empreinte numérique ou valeur de CRC;
- voir le nom et la version du logiciel de validation des billets installés tels que fournis par le validateur des billets avec le nom et la version du logiciel de validation des billets affichés par l’appareil de jeu qui doivent être les mêmes que ceux approuvés, ou fournir une autre méthode qui permet à l’opérateur de déterminer si le nom et la version du logiciel de validation des billets approuvés sont utilisés par l’appareil de jeu; et
Note : Cette norme entrera en vigueur le 1er juillet 2020.
- exécuter des tests d’étalonnage du périphérique d’entrée du lecteur (p. ex. écran tactile, manette de jeu, etc.) pour permettre d’évaluer le bon fonctionnement du périphérique par rapport à son fonctionnement prévu.
9.4.3 Le jeu doit limiter l’accès au mode de diagnostic ou de test par un mécanisme accessible uniquement par le personnel autorisé de l’exploitant.
9.4.4 Lorsque le mode diagnostic ou test est activé :
- le fonctionnement du jeu ne doit pas être affecté;
- la sécurité, l’intégrité et la capacité de faire l’objet de vérifications de l’appareil de jeu ne doivent pas être compromises;
- l’appareil de jeu doit indiquer clairement quand il est en mode diagnostic, en mode test ou les deux; et
- l’appareil de jeu doit revenir à son état d’origine à la sortie du mode diagnostic, du mode test ou des deux.
9.5 Conditions d’erreur
9.5.1 L’appareil de jeu doit être capable de détecter, d’enregistrer et d’afficher immédiatement les conditions d’erreur qui pourraient affecter l’intégrité du jeu (par exemple, porte ouverte, corruption de la mémoire, échec du contrôle d’authenticité d’un logiciel essentiel, coffret-caisse retiré, batterie faible qui alimente la mémoire vive, erreurs dans la rotation des rouleaux, etc.).
9.5.2 Dès qu’une condition d’erreur décrite dans la norme 9.5.1 est détectée, l’appareil de jeu et tous les périphériques doivent être désactivés et ne peuvent être activés qu’après que la condition d’erreur a été résolue.
9.5.3 L’appareil de jeu doit être capable de détecter, d’enregistrer et d’afficher immédiatement les conditions d’erreur appropriées qui pourraient affecter les capacités opérationnelles du jeu (par exemple, bourrage du validateur de billets, absence de papier dans l’imprimante, coffret-caisse plein, etc.).
9.5.4 Dès qu’une condition d’erreur décrite dans la norme 9.5.3 est détectée, les périphériques affectés doivent être désactivés et ne peuvent être activés qu’après que la condition d’erreur a été résolue.
9.5.5Dès qu’une condition d’erreur décrite dans les normes 9.5.1 ou 9.5.3 est détectée, l’appareil de jeu doit communiquer avec exactitude la condition d’erreur au système de surveillance des machines à sous connecté à l’appareil de jeu, lorsque c’est possible sur le plan technique.
9.5.6Un mécanisme doit être mis en place pour s’assurer que, lorsque des conditions d’erreur décrite dans les normes 9.5.1 ou 9.5.3 se produisent, la surveillance du sites de jeu est alertée (p. ex. par l’éclairage des tours, etc.).
9.5.7 Les conditions décrites dans les normes 9.5.1 et 9.5.3 sont considérées comme des événements significatifs et ces conditions d’erreur doivent être consignées en toute sécurité avec l’horodatage approprié dans un ou plusieurs journaux qui conservent au minimum les 100 derniers événements significatifs.
9.6 Capacité de désactivation à distance des appareils de jeu
9.6.1 Les appareils de jeu doivent pouvoir être désactivés à distance par une commande de désactivation émise par le système de surveillance des machines à sous.
9.6.2 Dans le cas où le système de surveillance des machines à sous communique à l’appareil de jeu que l’appareil de jeu doit être désactivé (par exemple par le biais du protocole), l’appareil de jeu doit se désactiver lui-même sans affecter l’intégrité de l’appareil de jeu, et autoriser le décaissement de tout crédit.