Je me demande - des jeux ont-ils été créés:
- poste à poste sans qu'un pair soit désigné comme hôte
- compétitif (pas coopératif, les joueurs jouent les uns contre les autres)
- prouvée juste (aucun joueur ne peut tricher)
- Ne donnez à aucun joueur plus d'informations que nécessaire (par exemple, ne dévoilez pas les secrets des autres joueurs même aux applications en cours d'exécution)
Un exemple d'un tel jeu serait un jeu de poker où chaque joueur et ses jeux ne pourraient connaître que leur propre main, mais pas les mains des autres joueurs sans compter sur l'un d'eux comme hôte du jeu. Je sais qu'il existe quelques jeux qui sont prouvés équitables, mais tout ce que je sais existe dans une configuration serveur-client.
game-mechanics
peer-to-peer
ThePiachu
la source
la source
Réponses:
Je ne sais pas si de tels jeux ont été créés, mais ils ont certainement été théorisés. Plusieurs articles ont été publiés sur le sujet. Vous voudrez peut-être rechercher des schémas d'engagement qui offrent une explication de la façon dont deux parties en désaccord peuvent lancer une pièce tout en étant physiquement éloignées (voir également cet article de 1981: Renversement de pièces par téléphone ).
Un article très approfondi est par exemple Cheat-Proof Peer-to-Peer Trading Card Games :
Également une lecture à l'épreuve des tricheurs pour les jeux centralisés et entre pairs :
la source
Bien que ce ne soit pas un jeu de hasard, je développe un jeu AIR qui est proche de vos besoins.
Cependant, veuillez noter ...
Je considère "aucune possibilité de ... tricher" une fausse déclaration. Si vous ne contrôlez pas tous les aspects (matériel et logiciel), la triche est possible.
Bien qu'il ne s'agisse pas d'un jeu, je pense que le réseau Bitcoin est un excellent exemple de ce que vous recherchez.
Éditer
Je vais développer un peu votre question principale.
Tout d'abord, je ne vois aucun jeu nécessitant des conditions "prouvées équitables" sans un certain niveau d'exigence faisant autorité. Des classements aux micropaiements, les systèmes centralisés et l'autorité vont de pair.
Deuxièmement, le meilleur exemple de jeu auquel je peux penser est les premiers jeux Pokemon. Bien que la logistique du réseau interne n'ait pas été peer-to-peer, elle suit le même principe.
Enfin, les plateformes mobiles sont spécialement adaptées aux jeux peer-to-peer. Je considère que ce domaine fait très défaut, c'est pourquoi je développe actuellement une ligne de jeux peer-to-peer.
la source
Quelques pièces qui pourraient aider, selon les cas d'utilisation:
Si vous avez besoin d'obtenir une entrée simultanée des utilisateurs sans possibilité d'utiliser les informations à leur avantage prématurément, vous pouvez utiliser le schéma d'engagement. Il s'agit essentiellement:
Cela peut être utilisé pour une variété de choses, y compris un nombre aléatoire partagé (les deux fournissent un entier via les engagements et les xor ensemble après le partage pour obtenir la valeur partagée.)
Cependant, cela est insuffisant pour un jeu comme le poker, car cela nécessite que les cartes ne soient connues que d'une seule personne, tout en continuant à pouvoir tirer du jeu partagé. Wikipedia a un assez bon algorithme pour le brassage partagé en utilisant un schéma où les deux joueurs chiffrent chaque carte individuellement plusieurs fois. Cela crée une situation où 2 clés sont nécessaires pour décrypter une carte donnée, et les deux joueurs en ont 1. L'article cite des problèmes de performance, mais je ne pense pas que l'AES ou similaire soit prohibitif à l'échelle requise pour le poker à 2 joueurs.
Si je concevais un algorithme, je demanderais aux joueurs de calculer une valeur aléatoire au début du jeu à utiliser comme graine pour tout le reste des opérations et de partager un hachage de cette valeur. De cette façon, ils peuvent partager cette valeur après le jeu, et vous pouvez vérifier qu'ils ont correctement suivi le protocole, sans manigances.
la source