Des jeux d’argent en ligne sans possibilité de tricherie

07.01.2014 par Jean-Paul Delahaye, dans Cryptographie, Jeux

Il existe des jeux de hasard en ligne sans possibilité de tricherie ni pour le casino, ni pour le joueur. La complexité cryptographique s'est mise au service des joueurs.

Jouer à Pile ou Face avec un casino consiste à suivre le protocole suivant :

- J'engage la somme S ; je parie sur Pile ; la pièce est lancée ; si c'est Face qui tombe, le casino garde l'argent  ; si c'est Pile, il me rend S et y ajoute S, ce qui fait 2S, auxquels il retire un petit pourcentage pour ses frais, par exemple 1% des 2S.

On peut généraliser avec un jeu de Lancer d'un dé (ou une loterie, une roulette, etc.) :

- J'engage la somme S ; je choisis le '6' ; on jette le dé ; si ce n'est pas le '6' qui tombe le casino garde l'argent ; si c'est le '6' qui tombe, le casino me rend S, y ajoute 5S, ce qui fait 6S, auxquels il retire un petit pourcentage pour ses frais, par exemple 1% des 6S.

Si la pièce (ou le dé) a été contrôlée et qu'une personne de confiance la lance, le joueur est certain que le jeu est correct et le casino aussi : aucun des deux ne peut tricher et fausser les probabilités. Rien, à part les frais que je consens à donner au casino, ne le favorise.

Si le casino ne prenait pas de frais, l'espérance de gain pour le joueur serait nulle : sur un grand nombre de parties, il ne gagnerait statistiquement rien et ne perdrait rien. Un tel jeu serait parfaitement équitable... il ne sera donc jamais proposé par un casino. Si le casino prend des frais, l'espérance de gain pour le joueur est négative, ce qui signifie qu'à la longue, inéluctablement, le casino gagne de l'argent, et le joueur en perd. Cela sans que la casino ait besoin de tricher. De tels frais pris sur les gains faussent le jeu en faveur du casino, mais ils sont acceptables, car il est vrai que le casino a des frais. On peut considérer comme parfaitement honnête un tel fonctionnement, surtout si les joueurs sont correctement informés du pourcentage de frais que prend le casino (ce qui n'est pas le cas pour la Roulette et la plupart des jeux de casino, où le pourcentage pris par le casino est caché dans le protocole du jeu : à la roulette, le zéro par exemple n'est ni pair ni impair, ni rouge, ni noir, ni passe, ni manque et c'est lui qui définit la part du casino).

Est-ce que des protocoles honnêtes pour le jeu de Pile ou face ou de Lancer d'un dé sont possibles en ligne (sur internet) ?

Cela semble difficile. Si le tirage à Pile ou face est réalisé dans son coin par le serveur du casino en ligne, le joueur a toutes les raisons de craindre qu'au lieu de le faire gagner une fois sur deux, le casino s'arrangera pour le faire gagner dans seulement 45% des cas, ou même moins. Une autorité de contrôle pourrait vérifier que le casino ne triche pas, mais ce n'est pas facile après coup et finalement le contrôle par une telle autorité de vérification n'est pas entièrement rassurant. Il me semble qu'aucune personne raisonnable ne doit accepter de jouer en ligne aux jeux de hasard les plus simples que sont le Pile ou face ou le Lancer d'un dé décrits ci-dessus.

Prouvablement équitable

Pourtant, il existe des protocoles tirés des méthodes modernes de cryptographie mathématique qui permettent de réaliser sur internet des tirages à Pile ou face ou des Lancers de dé en toute confiance (pour le joueur et pour le casino). Ces méthodes de jeux sont qualifiées de «provably fair» («prouvablement  équitables»). Le joueur aura la certitude absolue que le tirage que fait le casino lui donne bien une chance sur deux de gagner (ou une sur six dans le cas du dé) à chaque partie.

Voici un tel protocole :

  1. Le casino choisit un nombre C (dans un intervalle fixé, par exemple entre 0 et 2100), qu'il garde secret. Il peut faire ce choix avec un générateur de nombres pseudo-aléatoires, mais ce n'est pas essentiel.
  2. Le casino calcule  f(C) = C' où f est une fonction telle que :
    a) Calculer f(C) est facile et rapide ;
    b) Connaissant C' = f(C), il est impossible en pratique de trouver un nombre C'' tel que f(C'') = C'  (il est donc en pratique impossible aussi de retrouver C à partir de C').
  3. Le casino envoie C' au joueur qui garde ce nombre en mémoire.
  4. Le joueur choisit un nombre J (dans un intervalle fixé, par exemple entre 0 et 2100). Il peut faire ce choix avec un générateur de nombres pseudo-aléatoires, mais ce n'est pas essentiel.
  5. Le joueur envoie J au casino.
  6. Le casino calcule C+J = R modulo 2, qui donne le résultat du lancer de la pièce en convenant que 0 = face, 1 = pile.
  7. Le casino transmet maintenant le nombre C au joueur, qui vérifie le calcul de f(C) et de (C+J modulo 2). Le joueur s'assure ainsi que le résultat obtenu est bien celui annoncé par le casino, et que celui-ci a bien utilisé le nombre C qu'il avait choisi avant de connaître J. Si le contrôle donne les résultats attendus, le joueur est certain que le tirage n'a pas pu être manipulé par le casino, car tout était déterminé avant que le casino ne connaisse J. De même le casino sait que le joueur n'a pas pu choisir le résultat car lorsqu'il a choisi J, il ne connaissait pas C.

Pour un dé, on calculera modulo 6 au lieu de modulo 2.

Toutes sortes de généralisations et de variantes existent permettant par exemple de choisir de manière prouvablement équitable une distribution de cartes (pour le Bridge, le Poker ou tout autre jeu).

Complexité et cryptographie

La cryptographie moderne propose des fonctions f  ayant les propriétés requises. L'algorithme SHA-256 par exemple est fréquemment utilisé. Voir ici.

Attention cependant, dans le cas des jeux de cartes où certaines cartes doivent rester cachées des autres joueurs pendant la partie, il ne suffit pas que la distribution soit prouvablement sûre. Pour que le joueur soit certain que personne ne triche, il faut qu'il soit assuré que personne ne connaît les cartes qui lui ont été distribuées. Des protocoles un peu plus compliqués permettent cela (voir par exemple la littérature sur ce qu'on nomme le Poker mental  ici ). Sans une telle garantie, il me semble déraisonnable de jouer de l'argent a de tels jeux sur internet et d'ailleurs des tricheries basées sur le fait que vos cartes ne sont pas nécessairement secrètes se sont déjà produites au Poker. Voir par exemple ici ou ici.

Une des grandes nouveautés dans les jeux en ligne est l'apparition depuis peu de casinos utilisant ces protocoles cryptographiques prouvablement équitables. Pour en savoir plus rechercher «provably fair gambling» avec votre moteur de recherche favori.

Ces casinos en ligne invitent le plus souvent à parier avec des Bitcoins (voir le blog précédent ici). En effet, cette monnaie cryptographique permet plus facilement et avec plus de sûreté que les autres méthodes (compte ouvert sur le site du casino avec versement d'une somme par carte bancaire ou PayPal) d'engager les sommes que l'on veut jouer et de recevoir de manière anonyme les gains que l'on fait, si on a de la chance. L'irréversibilité des transactions qu'offre le Bitcoin lors de telles opérations est aussi un avantage.

Les protocoles de la cryptographie —basés sur l'impossibilité pratique de la réalisation de certains calculs trop complexes (passer de C' à C)— garantissent un joueur contre des tricheries du casino. C'est là encore un succès des sciences du calcul et de la complexité. Faire l'effort de comprendre ces protocoles devient une nécessité pour s'adonner aux jeux de hasard sans sortir de chez soi et sans prendre de risques inutiles.

Nouvelle exigence des joueurs

Le fait que les programmes informatiques utilisés par certains casinos en ligne soient des programmes libres (et donc vérifiables par tous) donne une garantie supplémentaire contre la tricherie. Malheureusement, aujourd'hui, si un accord est acquis sur le fait que casser les protocoles (trouver une façon efficace de passer de C' à C par exemple) est impossible en pratique, ce n'est pas une propriété démontrée mathématiquement. Il faut donc faire confiance à un état de l'art de la cryptologie et supposer qu'il ne changera pas rapidement (ce que les experts affirment). Certains protocoles utilisant des photons quantiques pourraient remplacer les protocoles mathématiques, et donc donner une garantie absolue sans faire d'hypothèses de nature mathématique pour jouer à Pile ou face en ligne. Cependant ils demandent de faire circuler des photons dans des fibres optiques ininterrompues, ce qui n'est pas possible quand la distance entre le casino et le joueur est trop grande. Ces protocoles quantiques ne sont donc pas mis en œuvre aujourd'hui par les casinos en ligne.

Attention à ne pas tout mélanger : même si un casino propose des jeux «prouvablement équitables» (par exemple pour un pari avec Lancer de dé), cela n'oblige pas le casino à être honnête dans son comportement commercial. Il peut accepter de vous payer toutes les petites sommes que vous gagnez, et lorsque vous en gagnez une grosse, refuser de payer (en prétextant une coupure du réseau par exemple). Avant de jouer, renseignez-vous sur la réputation des casinos en ligne où vous envisagez de risquer votre argent. Sur internet —surtout avec des Bitcoins— les risques d'escroquerie sont réels et les recours pratiquement impossibles.

Même si j'encourage les joueurs à ne jouer qu'avec des casinos en lignes proposant des jeux «prouvablement équitables», je n'aime pas les jeux où l'espérance mathématique est négative pour le joueur, ce qui est le cas dès que le casino prend une part de l'argent gagné pour ses «frais» : je n'ai donc jamais joué en ligne.

Liens

  • Bitcoin game list
  • Bitcoin dice
  • Xavier Trevor, Provably fair by BitZino ici
  • Vitalik Buterin, The Bitcoin gambling Diaspora, 3 août 2013 : ici
  • Julio Rodriguez, Are Bitcoin the Next Big Online Gambling Frontier ? : ici
  • Provably Fair Bitcoin Gambling Explained : ici
  • Provably Fair :  ici
  • Provably Fair Shuffling Through Cryptography : ici

2 commentaires pour “Des jeux d’argent en ligne sans possibilité de tricherie”

  1. Bruno Maillard Répondre | Permalink

    Merci pour votre exposé brillent et utile. Je ne manquerez pas de donner l'adresse de votre blog aux têtes folles de rencontre.
    Sur mon blog vous trouverez des applications peut être inattendues des constats quantiques.
    Au plaisir de vous lire
    Bruno Maillard

  2. Frederic Répondre | Permalink

    Bonjour
    J'ai 48 ans, et j'ai toujours été nul en maths au lycée. J'avais l'impression de ne rien comprendre et d'être idiot. Bien sur, j'ai de ce fait détesté cette matière. Alors que j'aurais aimé être ingénieur, j'ai donc échoué finalement dans la comptabilité, ou le niveau de maths requis était à ma portée.
    Et puis un jour, je suis tombé par hasard sur l'un de vos livres. Une révélation. Il était donc possible d'expliquer des choses complexes de manière simple et abordable ! En français ! Sans abus de formules ressemblant à des hiéroglyphes. Vos livres et articles m'on donné le gout et l'intéret pour les mathématiques, et j'ai compris que leur usage éclaire chaque élément de notre réalité quotidienne. Je n'aurai évidemment jamais le niveau d'abstraction requis pour devenir ingénieur. Mais les maths m'intéressent désormais, je prends un immense plaisir à comprendre ce que vous savez expliquer avec clarté, et je tenais à vous en remercier très sincèrement. J'aurais aimé vous avoir comme enseignant, cela aurait certainement changé ma vie.

Publier un commentaire