<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-title-group>
        <journal-title>Using Multiplayer Games to Create Secure Communication •</journal-title>
      </journal-title-group>
      <issn pub-type="ppub">1613-0073</issn>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Using Multiplayer Games to Create Secure Communication</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>JAAK HENNO</string-name>
          <email>hannu.jaakkola@tuni.fi</email>
          <email>jaakhe@online.ee</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>OY Hypermeedia</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>HANNU JAAKKOLA, Tampere University</institution>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2019</year>
      </pub-date>
      <volume>4</volume>
      <issue>7</issue>
      <fpage>22</fpage>
      <lpage>25</lpage>
      <abstract>
        <p>Massively multiplayer online games (MMOGs) and social networks are very popular communication and entertainment formats, where millions of players from all around the world interact in a shared environment and exchange and trade different types of digital media: texts, videos, sounds and music. The communication systems implemented in these virtual environments are in increasing number encrypted to prevent fraud and user impersonation. Ubiquity of virtual forums with massive participation and participants communication systems has raised several questions about their security - gaming servers are suitable as potential exploitation tools for terrorist groups use to conduct on-line operations. The prevailing on Internet top-down security organization where trustworthiness of an object (computer, program) is established by a strong hierarchical system of security certificates does not work, since trusted high-level certificates can already be bought online in dark web marketplaces. For many local communities (players of an online multiplayer game, local social networks etc.) is more advantageous a different, local 'sand-box' organization of a communication system where anonymous participants (initially identified only by their generated username without using even e-mails) actively interact using messages with strong encryption. For encryption they need entropy/randomness, but this they can create themselves in their interactions. In competitive interactions (e.g. they play a competitive game) all participants (trying to compete each other) behave differently, try to create thus the sequence of their actions is random and can be used as the secure key for symmetrical encryption for communication among participants. Here is considered a class of games where expectation of payoff is the same for all moves, thus players cannot get from results any additional information about the game, thus their best strategy is to select their moves randomly (non-learnable games). It is shown, that in a sense all games of this class are similar, can be created with the same procedure and can be reduced to each other using introduced here operation of rectangular modification of the game state matrix. The best strategy for moves in this class of games is uniform randomness, thus (if they are competing and try to beat each other) in the play they create with their moves a random sequence. This sequence can be used for generating a key for symmetric encryption. In a non-local (server-based) multiplayer game players know only their own moves, about moves of other players they get only results of game (not the actual moves made by other players). Thus for generating a key server sends players sequence of all moves from which the player's own moves are removed. This sequence is different for players and contains only partial information, thus an eavesdropper (man-in-the-middle) cannot use it. Players insert into this holey sequence their own moves and get all the same sequence of moves which will be used as the common key for symmetrical encryption of communication; the procedure allows several enhancements for further randomness and/or speed of key generation. The key generation from player's moves removes need for use of public-key systems and all communication (and keys) remain inside the virtual community, whose security thus becomes self-sustainable.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>1.1</p>
    </sec>
    <sec id="sec-2">
      <title>INTRODUCTION</title>
    </sec>
    <sec id="sec-3">
      <title>Communication and Communication Security</title>
      <p>Our communication is increasingly encrypted – currently already more than 72 % of Internet
communication is encrypted and the encryption is growing rapidly, with nearly 20 % increase in a year
[Encrypted Traffic 20181].</p>
      <p>Leading advisory company Gartner predicts that already in this year (2019) 80% of Internet traffic is
encrypted [2Cisco 2019]. Encryption is the main/only technology which enables communication privacy and
data security, but for encryption is needed entropy/randomness.
1.2</p>
    </sec>
    <sec id="sec-4">
      <title>Encryption</title>
      <p>The encrypted communication proceeds usually in two steps. In the first step, interested parties use
public-key (asymmetric) encryption scheme for creating a common for both parties key for a symmetric
encryption. The reason for such a two-step technology is in different properties of non-symmetric and
symmetric encryption: the non-symmetric encryption system allows to send the first message using a
publicly available long (currently a typical value is 2048 bits) key; the message can be decrypted only with
the receiver’s private key (much shorter, e.g. only 256 bits). Using a publicly available key is convenient,
but the method is slow, used only for creating a ‘shared secret’ – the key (random string of 128/256 bits)
for symmetric encryption, which is later used in the (quick) symmetric encryption (the key is secret,
created in the first open-key round) of the main communication.</p>
      <p>Using a publicly available resource (the public encryption key) is problematic - to whom does this key
actually create an understandable (decipherable) message, who is the ‘real’ owner of this key?
1.3</p>
    </sec>
    <sec id="sec-5">
      <title>The ‘top-down security’ organization - certificates</title>
      <p>To authenticate keys owners, for creating new keys and managing their use has been created a
hierarchical system of security certificates. These certificates are like passports which authenticate the
identity of the certificate’s holder and grant permissions to use encrypted communication using a public
key infrastructure. The certificates are issued and managed by a strong hierarchical system of security
principals using multistep validation processes – every passport/certificate should have only one valid
fixed owner.</p>
      <p>But all public secrets have shot lifetime (computers could crack any secret) and this ‘top-down’ security
model leaks – many top-level certificates can be acquired from dark web marketplaces [Maimon at al
20193], authentication keys have been used to authenticate malware [SecurityWeek 20194] and/or to
encrypt malware [Hacker News 20175], [6Kaspersky 2018].
1.4</p>
    </sec>
    <sec id="sec-6">
      <title>Growing need for entropy</title>
      <p>Introduction of new Internet-connected devices - Internet of Things (IoT), virtual/cloud servers,
Internetconnected mobile devices (cars, scooters etc.) increase the need for randomness used for encryption. There
are already proposals for special services to serve entropy, i.e. random data [NIST 2016]. In order to
deliver provided entropy to users is proposed a special new ‘Entropy as a Service’ protocol [EaaSP 2018].
But for delivery this entropy also should be encrypted, thus it is not clear, whether this service will reduce
the need for entropy or increase.</p>
      <p>The current hierarchical, top-down security scheme introduces many unnecessary checks which slow
down encrypted traffic. If I want to send an encrypted message to my co-worker sitting in the next room
then with the current hierarchical top-down security system would be evoked many upper-level security
authorities (up to the Heavenly God Microsoft – we are using Outlook). Specialists estimate, that the
share of network traffic that really should be checked by security measures is still relatively small [Effect
of Encryption 20177] and local traffic should be secured locally – local communication participants (the
communication’s local context) know best what are the possible dangers and thus also can invent best
measures to eliminate them. This is also the main idea of the behavioural security measures which
popularity is rapidly growing [Terada 20178], [Leventhal 20189].
1.5</p>
    </sec>
    <sec id="sec-7">
      <title>BYOK – Bring Your Own Keys</title>
      <p>The growing in popularity trend to move security concerns down, closer to communication participants is
also the ‘Bring Your Own Keys’, where the user manages the encryption keys for their data. This is
offered (or proposed) by many global data/communication services: Google Compute Engine, Amazon,
Adobe Creative Cloud, Microsoft’s Key Vault and the number is growing.</p>
      <p>Using Multiplayer Games to Create Secure Communication • 4:3</p>
      <p>One of areas where local communication could be secured with local measures and locally generated
encryption keys is communication in (limited) on-line communities – chat/exchange for players of online
multiplayer games and (local) on-line social forums.
2
2.1</p>
    </sec>
    <sec id="sec-8">
      <title>GAME AND GAME COMMUNICATION (CHAT, EXCHANGE/TRADE)</title>
    </sec>
    <sec id="sec-9">
      <title>Economy of Video Games</title>
      <p>Video games have become a significant part of the global entertainment economy and their significance is
constantly growing.</p>
      <p>The first video games were products – you paid and got a game, either stored on disk (CD, DVD) or
right to download/play it from some (streaming) server. But with the global marketing trend „tie your
customer forever“ video games are increasingly creating their own economic values and trading space for
these values. A game could be rather cheap, but then appear the „extreme edition“, „additional
downloads“, new items could be bought in-game etc. You can enrich your game with DLC (DownLoadable
Content) from a virtual marketplace and add to your game various digital content: songs, skins,
characters, modes, levels, weapons, cars, expansions, etc. Value of DLC-s already exceed value of games,
with DLC video game industry has become a multi-billion dollar-a-year business [WePC 201910]. Such an
on-line market needs good security.</p>
      <p>30
20
10
0</p>
      <p>Value (billions USD $) of
video game market
2011</p>
      <p>2019
DLC</p>
      <p>Packages
Fig. 1.</p>
      <p>Emergence of new ’game economy’ with in-game trading, DLC and communication.</p>
      <p>Multiplayer Online Games (MOG) introduce a virtual in-game economy where players can find or earn
virtual objects – coins, arms, skins for weapons etc. Games supports in-game trading of these virtual
items and even have their own virtual currency that can be used in trading within the game (“Ultima
Online”, “Second Life”, “League of Legends” etc.), but many players want to trade game items also outside
the game. This economy is driven by virtual supply and demand, involves the exchange of real world
money and is usually not regulated by game developers. However, many game creators support
‘outsidegame’ economy, e.g. player of MMOG ’Counter-Strike: Global Offensive’ (created by Valve) get sometimes
after finishing the game a crate which could contain several skins; some (e.g. gold tier skins) are
extremely rare, thus many gamers want to get one, but to open the crate gamer should buy from Valve
(for real 2.49 USD) a key. In last year this game had more than 4 million players [SteamCharts 2019],
thus many potential byers and this ‘in-game’ purchases (for real money) strategy is increasingly used.
Demand for these virtual objects has created alternative economy for enterprising players who have
enough time to play these games to "farm" the game by earning in-game currency and rare items. For
farming, level up player characters and other repetitive, no-skill based and time-intensive tasks have
appeared many bots, which perform these tasks while player sleeps [Hackerbot 2019 ], [MPGH 2019 ].</p>
      <p>These virtual goods are then converted to real money using Real-Money Trading (RMT) - sold to players
using chat rooms or dedicated forums or on online auction sites, e.g. eBay; profits for this business are
growing in thousands of dollars [TrendMicro 2016].</p>
      <p>Besides virtual values are for cybercriminals attractive also player’s ‘real-world’ values - working
email, country/language, mobile phone’s number. Although many on-line communities (Fortnite, Google
Play, EA) have introduced double verification of personality, statistics shows that theft of player’s
personal information is constantly growing. Thus it is better not to use player’s personal information and
make the game world and game communication closed. Game designers should not hope for profits from
selling players information, but make their games ‘inner world’ with DSL better</p>
      <p>When participants of online multiuser communities (multiplayer games, social networks) want to
establish a direct communication with fellow participants (a chat system), which allows to exchange text
messages and game’s virtual values (media files- text, images, video), then this new communication
system should be closed and not to burden game servers which are already busy with the game
communication. To ensure security of game (game players and game server) the communication system
should be ’sand-boxed’.</p>
      <p>The game communication system is also a marketplace for exchange of game’s virtual values, thus all the
communication here should be encrypted. In order to close the game communication (chat) system from
outside it should generate the encryption keys itself (i.e. this is another example of BYOK). For this it
could use the entropy/randomness, created by player’s themselves and not to use any outside sources of
entropy/randomness.
3</p>
    </sec>
    <sec id="sec-10">
      <title>ENTROPY FROM GAMES</title>
      <p>For players of on-line multiplayer games keys for symmetric encryption can be generated as a part of
gameplay, thus eliminating the need for higher-level security authorities and by-passing the use of
publickey encryption step in key generation.
"Randomness has been part of games since their earliest inception -- and when I say 'earliest inception,' I
mean deep into the unwritten Neolithic past" stated game design/author /classic Greg Costikyan
[Costikyan 20019], [12A. Chalk 2009].</p>
      <p>Randomness in games appears from two sources – players decisions (actions/moves) and game setup,
e.g. in a shooting game – movement/appearance of targets, precision of calculating hits (collisions of
player’s bullets with targets) etc. The properties of the second source (randomness caused by game setup)
is nearly impossible to measure exactly, game designers always want to create random outcomes within</p>
      <p>Using Multiplayer Games to Create Secure Communication • 4:5
parameters that can be influenced to fit the game design. Thus also the randomness appearing in game
mechanics is difficult (in a good game - nearly impossible) to evaluate and estimate its dependence on
game algorithms (e.g. showing/moving/hiding targets) – this is just a noise injected between a player's
choice and the result.</p>
      <p>Therefore in the following is presented a setup, where this second source is eliminated - game is a simple
deterministic algorithm and the randomness is created only by player’s actions.</p>
      <p>Randomness created by humans is an arguable topic – many game designers consider humans very
predictable [Costikyan 201313]. Statement “Multiple competing players create randomness” is not a
provable mathematical statement. This statement is similar to Gödel’s incompleteness results – it can’t be
proved, but since nobody has presented a counter-example, we believe it. Humans are playing (video)
games more and more; if the process of playing does not introduce randomness (surprise, entropy), if this
were just a process of repeating game’s moves over and over, playing were not fun and the number of
players would not increase. But more than one third of human population is already playing video games
[Video Gaming 201914], thus this should be true – players create randomness in the process of gameplay,
this creates the fun of playing.
3.1</p>
    </sec>
    <sec id="sec-11">
      <title>Non-local simultaneous games</title>
      <p>A game is non-local, if the only information what players get about actions of other players are the results
of those actions and they do not get information about actions/moves of other players what caused these
results. This is the typical situation in server-based on-line video games. The situation is more
complicated with e.g. direct Peer-To-Peer (P2P) communication [House 201815] which is here not
considered.</p>
      <p>A (simultaneous) game is a 5-tuple</p>
      <p>G  P , M , A , R ,  
Here
P  { p1, p2} ;</p>
      <p>P is the set of players, | P |  n, n  2 is the number of players; e.g. for two-player game
M  {0,1,...,m-1}, m  2 is the set of player’s moves (legal actions, the same for all players),
here they are labelled as m-ary natural numbers; all players move simultaneously, i.e. select an element
from the set M ; denote by mti  M</p>
      <p>the move of player pi  P in gameplay at moment (move)
t, t  0,1,...,l , ( l - the length of gameplay) ; mt  (mt1, mt2 ,..., mtn )  M n is the (global) move - vector of
all (simultaneous) moves made by all players in move t;</p>
      <p>A is a deterministic finite automaton, which on players move mt  (mt1, mt2 ,..., mtn ) decides the
rewards (payoff) rt  (rt1, rt2 ,..., rtn )  R n for all players after the move and changes its state (i.e. players
rewards can/will change), thus automaton A implements n-ary mapping</p>
      <p> : M n  R n
The mapping  could be different for different states of automaton A (during gameplay);</p>
      <p>R is the finite set of rewards. In ‘real’ video games rewards can be of several different types,
numeric and/or symbolic (badges, ammo, health etc., see e.g. [Phillips 201816] for typology); they represent
the utility, thus should be comparable; here rewards R are shown as integers. In ‘real’ video games
number of available actions (thus also rewards) may change in different states of the game (players can
get e.g. new weapons or skills/spells), in the following number m of available actions and rewards
remains constant.</p>
      <p>Players make moves (create vectors mt  (mt1, mt2 ,..., mtn ) ) simultaneously and after a move get
information only about their own result, i.e. player pi  P gets the value rti , but not information about
moves what were made by other players, i.e. they do not get moves mt j  M , j  i .</p>
      <p>In order to extract randomness from players moves the mappings  should be resilient to game-bots –
programs which play the game on behalf of human players or help player to advance in game. They try to
extract information from players’ moves and predict play; producers of on-line games are developing
methods to discover and disable them [Ah Reum Kang et al 201317].</p>
      <p>Development of game-bots was started by dishonest players, but currently their development has
become a direction of study in machine learning [Luzgin, R. 201818].</p>
      <p>However, not every game can be ‘cracked’ by machine learning. Games where expectation of payoff is
the same for all actions of player are non-learnable even for Tensorflow [Shai Ben-David et all 201919].</p>
      <p>Game payoffs (in current state) can be described by the state’s payoff mapping, which for players
p1, p2 is as in the economy-based game theory a matrix, where in rows are moves and corresponding
rewards for player p1 , in columns – moves and rewards for player p2 ; rewards for move mi by player
p1 and move m j by player p2 are ri1j, rij2 :
Usually only values for ri1j are shown (especially if the game is zero-sum, i.e. ri1j  rij2 ), as e.g. a game
A game is non-learnable if the (expected) value of all moves for all players is the same, i.e. (1) holds in
every state of the game. Such a non-learnable games have many properties in common and already in
[Shapley 1963] was shown, that the payoff matrices for such a game could not be symmetric, but could be
made skew-symmetric with re-arrangement (re-labelling) of player’s moves using blocks of size power of
two. Here it is shown, that the matrix of such games could be transformed to totally non-symmetric form.</p>
      <p>In the following is considered the class of all such games (for the fixed number m of player’s actions)
and is shown, that all these games can be constructed from one vector of payoffs, using transformations of
blocks of 2  2 elements, thus all these games belong to a class closed for mappings of zero-sum vectors
and 2  2 rearrangements.</p>
      <p>In the ‘real’ (i.e. economy-based) theory of games mappings (isomorphism, endomorphism) are
considered only for games with the same number of players. For video games this is nonsense – in a
(server-based) multiplayer game new players could appear at any moment and just the same way, already
playing players could drop the game or just miss a number of moves. Nobody considers that
(dis)appearing players introduce a new game, the game remains the same, thus we need a definition of
games same-ness (similarity).</p>
      <p>A game G  P , M , A , R ,   is simpler (a homomorphic image) of a game G1  P1, M 1, A1, R1, 1 
iff:
1. | P || P1 | - it is defined for a smaller set of players (but still | P | 2 - otherwise this is not a
multiplayer game), let  : P  P1 be an (arbitrary) mapping (function, renaming) of players;
2. | M || M 1 | - players have less actions (but sill | M | 2 - otherwise this is not a game) ;
3. | R || R1 | - the number of (different) rewards is smaller (but still | R | 2 - otherwise this is not
a game)
4. there exist mappings (with component wise application to vectors)
 : M  M 1
 : R  R1
such that</p>
      <p> ( (m1, m2 ,..., mn ))  1( (m1),  (m2 ),...,  (mn ))
A game G  P , M , A , R ,   is similar (nearly isomorphic) to a game G1  P1, M 1, A1, R1, 1  , if in
the above definitions  , are 1-1 (i.e. renaming). The mapping  could not be 1-1, but for a games for
humans who want to see differences in their actions it should preserve entropy, i.e. satisfy
(r1, r2 , r3  R1)((r1  r2  r3  r1)  ( (r)1  (r2 )  (r3 )  (r1))
Under this definition instances of a multiplayer game with different number of players are similar even
with different dispersion of expectations of player awards.
3.3</p>
    </sec>
    <sec id="sec-12">
      <title>Symmetric group-like games</title>
      <p>Here are considered games, where randomness is generated by player’s decisions and not by game
decision mechanism and structure. This randomness is similar to biological physically unclonable
functions [Wali et al 201923] – it is the result of built-in hardware, first of all limits of player’s brains.
Information is not created en masse, but in interactions of individuals. Therefore the game decision
function</p>
      <p> : (mt1, mt2 ,..., mtn )  (rt1, rt2 ,..., rtn )
decides rewards rt1, rt2 ,..., rtn  R after considering all interactions between all players, i.e. it uses a
subfunction  to decide local interactions</p>
      <p> : (mi , m j )  (r i , r j )
which uses actions (mi , m j ) of players pi , p j  P</p>
      <p>and decides their (local) rewards r i , r j ; the mapping
 is deterministic, thus instead of mapping more suitable is the functional notation  (mi , m j )  (r i , r j )</p>
      <sec id="sec-12-1">
        <title>The global rewards function  is cumulative, i.e.</title>
        <p>rti    (mti , mtj )</p>
        <p>1in
m j  M .</p>
        <p>In games of chance nobody wants to have worst chances by design of the game and all actions of players
should be significant, i.e. could change the result (have maximal entropy – players want to have maximal
fun!), thus the local decision function  should satisfy the following conditions.</p>
        <p>1. For any actions mi , m j  M if  (mi , m j )  (r i , r j ) , then r i  r j  0 - the game is zero-sum</p>
        <p>For any actions mi , m j  M</p>
        <p>if  (mi , m j )  (r i , r j ) , then  (m j , mi )  (r j , r i ) - the game is
symmetric (in some publications is used different symmetry  (mi , m j )   (m j , mi ) - payoffs do
not depend on who made a move, such a game is e.g. ‘Zero-One’ considered in [26])
3. For any actions mi , m j  M , if  (mi , m j )  (r i , r j ) , then there exists an action mi  M such
that  (mi , m j )  (r j , r i ) , i.e. game is group-like – any player could reverse the result of local
interaction (if player had information about opponents move m j - but players make moves
simultaneously and even after the move they have information only about result, i.e. reward – not
about the move what caused it)
4. For any actions mi1, mi2  M there exists an action m j  M such that  (mi1, m j )   (mi2 , m j )
, i.e. all actions are efficient and one player can always change the reward of the second player.
5. For any actions mi1, mi2  M</p>
        <p>there exists 1-1 cyclically monotone mapping (see e.g. [CalTech
200424])
between
sequences
of
rewards
 (mi1, 0),  (mi1,1),...,  (mi1, m 1)
and
 (mi2 , 0),  (mi2,1),...,  (mi2, m 1) ; from the property 2. it follows, that 1-1 mapping exists also
between the above sequences and the sequences
 (0, m j ),  (1, m j ),...,  (m 1, m j ) for any</p>
      </sec>
      <sec id="sec-12-2">
        <title>Let NL be the class of all games with properties 1-5.</title>
        <p>From the properties 1-4 of the local decision function  follow several properties of this function.</p>
        <p>Using Multiplayer Games to Create Secure Communication • 4:9
(1) From 1. it follows, that  (mi , m j )  (r i , r j ) could be presented as
 (mi , m j )  (r i , r i )  (r j , r j ) . The expressions, e.g.  (mi , m j )  (r i , r i ) could create
impression, that  depends only on one argument (here – on the first, in the second expression
 (mi , m j )  (r j , r j ) - on the second) thus in the following we will sometimes use notations
 (mi , m j )  (r i , r i )  r ij ,  (mi , m j )  (r j , r j )  r ji
(2)  (m, m )  (0, 0)
Proof. By 2. for any mi , m j  M ,  (mi , m j )  r ij  r ji , thus if mi  m j we have r ii  r ii , thus r ii  0
(3) The elements of the set R can be renamed so that R has cyclic structure.</p>
        <p>Denote k  (| M | 1) / 2 if | M | is odd and k | M | /2 1if | M | is even and let
rr {=0, r1,..., rk1, rk } be a (strictly) monotony increasing sequence, i.e. from i  j , 0  i  j  k follows
ri  rj . Set
R  {0, r1,..., rk1, rk , rk , rk1,...  r1} for k -odd</p>
        <p>R  {0, r1,..., rk1, rk , 0, rk , rk1,...  r1} for k – even</p>
      </sec>
    </sec>
    <sec id="sec-13">
      <title>3.4 Constructing a non-learnable game from a vector of rewards</title>
      <p>In both cases above the sequence R has m elements, thus to simplify presentation denote
R  {r0, r1,..., rm1} and let  : R  R be any substitution of the sequence R without sub-cycles, i.e. for
any ri , rj  R t  m such that  t (ri )  rj ; then for any r  R elements r0 ,  (r0 ) , 2 (r0 ) ,…,  m1(r0 )
.cover the whole set R .</p>
      <p>A game matrix for selected vector R can be the following:</p>
      <p>Table. 3. Payoff table of a game from a vector R of payoffs
r0 r1 ... rm1
 (r0 )  (r1) ...  (rm1)
 2 (r0 )  2 (r1) ...  2 (rm1)
... ... ...
 m1(r0 )  m1(r1) ...  m1(rm1)
(3)
The conditions (1), (2) hold – in all rows and columns are just the elements of the set R (but in different
order), i.e. this is a matrix for a non-learnable game constructed from the sequence R .
3.5 Modifications of games from NL
The class NL of non-learnable games allows modifications of their matrixes preserving condition (1):
(a) Multiplication of all elements with a constant (even with 0 – the property (1) will hold, but the
game will not have any entropy – nobody would like to play);</p>
      <p>(b) Adding a constant to all elements the – in ‘real’ video games players rewards are thousands or
even bigger – this seems to make the game more fun;
(c) Manipulating the corner values of any rectangular block: if xi, j , xi,k , xl, j , xl,k are corner
elements of a rectangle in a game matrix, then they could be replaced with
xi, j  c, xi,k  c, xl, j  c, xl,k  c for any constant c (the rectangle adjustment); similar property
was considered already in [Shapley 1963]).</p>
      <p>Transformations (a), (b) change the value of V , i.e. the average expected payoff V / m , thus can be used
for transforming/comparing non-learnable games with different value of V . Transformation (c) does not
change V / m and with induction on greatest difference in matrix it is easy to see, that with
transformation (c) all games from the class NL with the same V could be reduced to a constant game
(all elements of the matrix are the same - V / m ). Since the rectangle adjustment transformation (c) is
reversible it follows, that all games of the class NL with the same number of actions m can be
transformed to each other, i.e. are all similar (nearly isomorphic).</p>
    </sec>
    <sec id="sec-14">
      <title>3.6 Examples</title>
      <p>Below is the decision table for the function  for a 3-ary game: this is the classical rock-paper-scissors
game with encoding of player’s actions rock=0, paper=1, scissors=2 and the set of rewards R  {1, 0,1}
(but using property (b) it could be changed to R  {100000, 0,100000} - human players would like this
much more!); in the table are indicated rewards ri of player pi  P (rewards of player p j  P are
p j   pi ); in the last row/column is indicated direction of monotonicity and the sum for the
corresponding row/column.
1P

The same for a 4-ary game (m – even) with R  {2, 0, 2} :
From conditions 2.-4. in 3.3 it is clear, that if m is odd then these games are fair ([Aten 201925]), i.e.
|  1(r) | = |  1(r) |  m for any r, r  R ; if m is even, then |  1(r) | = |  1(r) |  m for any
r, r  R , r  0  r , |  1(0) |  2* m (every row/column in the table has 0 twice).</p>
      <p>The property (c) of the class NL allows to modify the presented above example (2) with rectangle
adjustment to totally non-symmetric form:</p>
      <p>Table. 6. Modified with transformation x0,1  2, x0,2  2, x2,1  2, x2,2  2 matrix (3)
Particular cases of this class of games were considered in [Henno et al 201826], [Henno et al 201927]; games
belonging to this class were (for odd values of m) considered also e.g. in [Akin 201828].</p>
      <p>The above minuscule examples could be combined to create a ‘real’ game, adjoining the matrices to a
game (automaton) transitions graph, e.g. using as the transition table the graph of a 4-bit digital clock
from [Henno 201729]; for rewards are applied matrixes from above (modified with transformations (a), (b)):
Fig. 3.</p>
      <p>A non-learnable game from a 4-bit lock automaton; inputs without transformations keep state.
4</p>
    </sec>
    <sec id="sec-15">
      <title>CREATING ENCRYPTION KEY</title>
      <p>In the above was presented a class on non-learnable games, i.e. where competing players always have to
select their moves randomly and presented some examples of such games; some of such games
(‘OddEven’, ‘Matching Pennies’) were considered in [Henno et al 2017] and above is shown, that such a game
could be created for any vector of rewards. In the following is described a procedure for creating a shared
secret (encryption key) using the randomness created by players when playing such a game where the
best strategy for players is total randomness.</p>
      <p>The server records sequence of player’s moves, e.g. for a game with two players Alice and Bob with l
are respectively moves of Alice and
moves this could be m11m12m21m22 ,..., m1tm2t ,..., m1l m2l ; here m1t , m2t
Bob in gameplay move t. Both players know only their own moves and from every result the probability
any move of opponent which caused this result is the same (the above property (4)), thus players cannot
guess moves of other players; if the situation is local, players e.g. can see each other moves, then they do
not need any elaborated communication – they can speak directly with each other.</p>
      <p>To generate a key server send to players the sequence of all moves from which the player moves are
removed, e.g. server sends to Alice the sequence *m12 * m22 ,...,*m2t ,...,*m2l - this information with holes
does not give to an eavesdropper any information (it is assumed, that the game server communication
with players is secure, so here is the only time when the game communication is used for the chat
system). When players replace in the received sequences with 30holes their own moves they all get the same
random sequence which could be used as the secure random key for symmetric encryption.</p>
      <p>Fig. 4.</p>
      <p>Key generation combining a sequence with holes from server with sequence of player moves.</p>
      <p>If all the following messages are secured/encrypted with the means used in game for sending player's
moves and rewards, players store their moves in the order they made them and when player enters the
game (logs in) he receives together with his gameplay client also (a link to) a cryptographic library, e.g.
some member from the W3C list or (when using node.js) Node.js Crypto module, then the procedure to
create a secret key could be described by following steps:
1. Player1 sends to server message: chat(playerList); here playerList is a list of players with whom he/she
would like to communicate or the word all - player wants to start global chat
2. Server checks whether there is already enough entropy (at least e.g. 12-20 moves have been made) and
Player1 does not look like a bot - has comparable rewards
3. Server sends invitations to start chat to all members of playerList (with time limit for answer)
4. After time limit server removes from playerList all players who did not answer the invitation
5. If the remaining list contains some players, server adds to list also the Player1 and sends to all
members the global list of moves from which the moves of player himself are removed (replaced by '*')
with time limit for answer
6. Players replace the '*' in received list with their own moves (in the correct order); the corresponding
procedure could also be delivered to all players already together with the game client
7. To check, players send to server (encrypted with the new key) message "Encryption OK"
8. Server removes from playerList the players, whose messages were not decipherable
9. If there still remain players (&gt;1), server sends them all list of addresses of other members, thus they
can start a chat forum.</p>
      <p>To increase security of the key server could use some filters, e.g. for a randomly-selected value r R
remove all moves which produced result r ; to speed up the game could be used multi-moves, i.e.
participants send in every move a fixed-length sequence of moves etc.; several test implementations are in
work.
5</p>
    </sec>
    <sec id="sec-16">
      <title>CONCLUSIONS</title>
      <p>In above is considered a class of non-learnable games, where competing players should be maximally
random and presented a framework for generating from players moves a secure key for symmetric
encryption. The process of generating a key (shared secret) uses randomness generated in gameplay and
does not use public-key step; thus it also does not have to distribute any personal information of players
nor need any higher-level security authorities, i.e. the use of randomness and securing communication is
self-sustained.</p>
    </sec>
  </body>
  <back>
    <ref-list />
  </back>
</article>