=Paper= {{Paper |id=Vol-2508/paper-hen |storemode=property |title=Using Multiplayer Games to Create Locally Secure Communication |pdfUrl=https://ceur-ws.org/Vol-2508/paper-hen.pdf |volume=Vol-2508 |authors=Jaak Henno,Hannu Jaakkola,Jukka Mäkelä |dblpUrl=https://dblp.org/rec/conf/sqamia/HennoJM19 }} ==Using Multiplayer Games to Create Locally Secure Communication== https://ceur-ws.org/Vol-2508/paper-hen.pdf
                                                                                                                                                     4




Using Multiplayer Games to Create Secure
Communication
JAAK HENNO, OY Hypermeedia
HANNU JAAKKOLA, Tampere University
JUKKA MÄKELÄ, University of Lapland


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.



1     INTRODUCTION

1.1     Communication and Communication Security
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 2018 ].      1




   Leading advisory company Gartner predicts that already in this year (2019) 80% of Internet traffic is
encrypted [ Cisco 2019]. Encryption is the main/only technology which enables communication privacy and
               2




data security, but for encryption is needed entropy/randomness.

Author's addresses: Jaak Henno, Hypermeedia OY, Paldiski mnt 157-8, 13518 Tallinn, Estonia, email: jaakhe@online.ee; Hannu Jaakkola, Tampere
University, Pori Campus, P.O. Box 300, FI-28101 Pori, Finland, email: hannu.jaakkola@tuni.fi; Jukka Mäkelä, University of Lapland, 96101 Rovaniemi
Finland, email: jukka.makela@ulapland.fi.

Copyright © 2019 for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0).
In: Z. Budimac and B. Koteska (eds.): Proceedings of the SQAMIA 2019: 8th Workshop on Software Quality, Analysis, Monitoring, Improvement, and
Applications, Ohrid, North Macedonia, 22–25. September 2019. Also published online by CEUR Workshop Proceedings (http://ceur-ws.org, ISSN
1613-0073)
4:2   •    Jaak Henno et al.



1.2       Encryption
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.
   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       The ‘top-down security’ organization - certificates
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.
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
2019 ], authentication keys have been used to authenticate malware [SecurityWeek 2019 ] and/or to
      3                                                                                          4




encrypt malware [Hacker News 2017 ], [ Kaspersky 2018].
                                           5   6




1.4       Growing need for entropy
 Introduction of new Internet-connected devices - Internet of Things (IoT), virtual/cloud servers, Internet-
connected 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.
   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 2017 ] and local traffic should be secured locally – local communication participants (the
                         7




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 2017 ], [Leventhal 2018 ].
                                                   8            9




1.5       BYOK – Bring Your Own Keys
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.
                                                               Using Multiplayer Games to Create Secure Communication   •   4:3


   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         GAME AND GAME COMMUNICATION (CHAT, EXCHANGE/TRADE)

2.1        Economy of Video Games
Video games have become a significant part of the global entertainment economy and their significance is
constantly growing.
   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 2019 ]. Such an             10




on-line market needs good security.

                                                Value (billions USD $) of
                                                  video game market
                                         30
                                         20
                                         10
                                          0
                                                    2011                   2019

                                                        DLC     Packages

Fig. 1.      Emergence of new ’game economy’ with in-game trading, DLC and communication.

    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 ‘outside-
game’ 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 ].
4:4       •   Jaak Henno et al.



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].
    Besides virtual values are for cybercriminals attractive also player’s ‘real-world’ values - working e-
mail, 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
    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’.




Fig. 2.        Security surfaces of information flows in a multiplayer game with communication (chat system).

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         ENTROPY FROM GAMES
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 public-
key 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 200 9], [ A. Chalk 2009].
                       11   12




    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
                                                                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.
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.
   Randomness created by humans is an arguable topic – many game designers consider humans very
predictable [Costikyan 2013 ]. Statement “Multiple competing players create randomness” is not a
                                     13




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 2019 ], thus this should be true – players create randomness in the process of gameplay,
                        14




this creates the fun of playing.

3.1    Non-local simultaneous games
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 2018 ] which is here not       15




considered.
A (simultaneous) game is a 5-tuple

                                                    G  P , M , A , R ,  

Here
        P is the set of players, | P |  n, n  2 is the number of players; e.g. for two-player game
P  { p1 , p 2 } ;
         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              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;
         A is a deterministic finite automaton, which on players move mt  (mt1 , mt2 ,..., mtn ) decides the
rewards (payoff) rt  (rt , rt ,..., rt )  R
                             1   2        n     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
                                                         :M n Rn
The mapping  could be different for different states of automaton A (during gameplay);
         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 2018 ] for typology); they represent
                                                                                           16




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
4:6   •       Jaak Henno et al.



get e.g. new weapons or skills/spells), in the following number m of available actions and rewards
remains constant.
   Players make moves (create vectors mt  (mt , mt ,..., mt ) ) simultaneously and after a move get
                                                   1  2    n


information only about their own result, i.e. player p  P gets the value rt , but not information about
                                                                                                                        i                                                                   i


moves what were made by other players, i.e. they do not get moves mt  M , j  i .
                                                                                                                                                                   j


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 2013 ].                                                                                17




   Development of game-bots was started by dishonest players, but currently their development has
become a direction of study in machine learning [Luzgin, R. 2018 ].                                                                                  18




   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 2019 ].                                                                                                                                 19




   Game payoffs (in current state) can be described by the state’s payoff mapping, which for players
 p1 , p 2 is as in the economy-based game theory a matrix, where in rows are moves and corresponding
                       1                                           2                     i
rewards for player p , in columns – moves and rewards for player p ; rewards for move m by player
p1 and move m j by player p 2 are rij1 , rij2 :
                                                  Table. 1. Payoffs table for a two-person game (in some state)
                                                                                                                                   2
                                                                                                             Player p
                                                  0                                    1                                     ...                                       m-1
                        0
                                                                                                                                                                                                    r ,r
                                            1           2                        1              2                                                            1
                                        r ,r00         00                        r , r
                                                                                 01            01                                                           r0 m 1            , r02m  2                         1

                                                                                                                                                                                                                 0i
                                                                                                                                                                                                                           2

                                                                                                                                                                                                                          0i
                                                                                                                                                                                                        i             i


                        1
                                                                                                                                                                                                    r ,r
                                             1          2                         1             2                                                                 1                 2
                                        r , r                                    r , r                                                                       r                 ,r                                 1        2
           Player p1




                                            10         10                        10            10                                                                1m 1             1m 1                         1i       1i
                                                                                                                                                                                                        i             i


                        ...
                       m-1        rm1 10 , rm210                        rm1 11 , rm211                                                                rm1 1m 1 , rm21m 1                    r ,r   1             2

                                                                                                                                                                                                            m 1 i        m 1 i
                                                                                                                                                                                                    i                 i



                                  r ,r     1

                                             i0
                                                             2

                                                            i0            r ,r  1

                                                                                  i1
                                                                                                     2

                                                                                                    i1                                                      r ,r     1

                                                                                                                                                                   im .1
                                                                                                                                                                                        2

                                                                                                                                                                                       im 1
                                    i                  i                   i               i                                                                 i                     i


Game is non-learnable, if all sums for all rows and columns are equal:
                                    r   r  ...   r
                                                   1
                                                  i0
                                                                      1
                                                                     i1
                                                                                                          1
                                                                                                         im 1
                                                                                                                 = r01i   r11i  ...   rm11i 
                                        i                        i                             i                    i                  i                                   i
                                                                                                                                                                                                                                             (1)
                                    r   r  ...   r
                                                   2
                                                  i0
                                                                      2
                                                                     i1
                                                                                                          2
                                                                                                         im 1
                                                                                                                 = r   r  ...   rm21i  V
                                                                                                                             2
                                                                                                                            0i
                                                                                                                                            2
                                                                                                                                           1i
                                        i                        i                              i                   i                  i                                       i

The value V / m is the (average) expected payoff of a move.
   Games satisfying (1) have been considered in several earlier studies, e.g. in [Shapley 1963 ], [Plan                                                                                                                            20




2017 ], [Shih-Fen CHENG et al 2004 ], but mostly only for their symmetry properties and not for the
      21                                                                    22




aspect considered here – extracting randomness from gameplay.
   In the (economic) game theory publications are in the game payoff (for the current state) matrices
usually shown only payoffs and not labels for player’s moves/strategies (every player can relabel them).
Usually only values for rij are shown (especially if the game is zero-sum, i.e. rij  rij ), as e.g. a game
                                             1                                                                                                                                                  1                 2


from [Shapley 1963]:
                                                                  Using Multiplayer Games to Create Secure Communication    •    4:7


                                Table. 2. Payoff table for a non-symmetric non-learnable game
                                                   0      1        2      -1
                                                  -1      0        1       2                                               (2)
                                                   2      -1       0       1
                                                   1      2       -1       0


3.2         Mappings of games
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.
   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.
   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).
A game G  P , M , A , R ,   is simpler (a homomorphic image) of a game G1  P1 , M 1 , A1 , R 1 , 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 || R 1 | - 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  M1
                                                          : R  R1
such that
                             (  (m1 , m2 ,..., mn ))  1 (  ( m1 ),  ( m2 ),...,  ( m n ))
A game G  P , M , A , R ,   is similar (nearly isomorphic) to a game G1  P1 , M 1 , A1 , R 1 , 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.
4:8    •    Jaak Henno et al.



3.3        Symmetric group-like games
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 2019 ] – it is the result of built-in hardware, first of all limits of player’s brains.
                                        23




Information is not created en masse, but in interactions of individuals. Therefore the game decision
function
                                                                              : (mt1 , mt2 ,..., mtn )  (rt1 , rt 2 ,..., rt n )
decides rewards rt , rt ,..., rt  R after considering all interactions between all players, i.e. it uses a sub-
                         1      2                    n


function  to decide local interactions
                                                                                         : ( mi , m j )  ( r i , r j )
which uses actions (m , m ) of players p , p  P
                                    i            j                                      i       j                                                    i   j
                                                                                                              and decides their (local) rewards r , r ; the mapping
 is deterministic, thus instead of mapping more suitable is the functional notation  (mi , m j )  (r i , r j )
The global rewards function  is cumulative, i.e.
                                           rti    (mti , mtj )
                                                                                                    1i  n


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.
      1. For any actions m , m M if  (m , m )  (r , r ) , then r  r  0 - the game is zero-sum
                                             i                j                             i       j          i       j       i     j


      2.     For any actions m , m M
                                                     i                j
                                                                                   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  (m , m )   (m , m ) - payoffs do
                                                                                                                                         i       j   j       i

            not depend on who made a move, such a game is e.g. ‘Zero-One’ considered in [26])
      3. For any actions m , m M , if  (m , m )  (r , r ) , then there exists an action m  M such
                                                 i                j                             i       j          i       j                                     i


            that  (m , m )  (r , r ) , i.e. game is group-like – any player could reverse the result of local
                        i       j                         j           i

                                                                                                                                             j
            interaction (if player had information about opponents move m - 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 m , m
                                             i1                   i2
                                                                          M there exists an action m j  M such that  (mi1 , m j )   (mi 2 , m j )
            , i.e. all actions are efficient and one player can always change the reward of the second player.
      5. For any actions m , m
                                                     i1
                                                                     M there exists 1-1 cyclically monotone mapping (see e.g. [CalTech
                                                                      i2


            2004 ])
                  24
                         between                                  sequences of    rewards       (mi1 ,0),  (mi1 ,1),...,  (mi1, m 1) and
             (m ,0),  (mi 2 ,1),...,  (mi 2 , m 1) ; from the property 2. it follows, that 1-1 mapping exists also
                   i2


            between the above sequences and the sequences  (0, m ),  (1, m ),...,  (m  1, m ) for any
                                                                                  j         j              j


            mj M .
Let NL be the class of all games with properties 1-5.
From the properties 1-4 of the local decision function  follow several properties of this function.
                                                                                               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 m , m M ,  (m , m )  r  r                                                   , thus if m  m we have r                r ii , thus r ii  0
                              i        j                      i       j          ij              ji               i         j            ii


 (3)      The elements of the set R can be renamed so that R has cyclic structure.
       Denote k  (| M | 1) / 2 if | M | is odd and k | M | /2  1 if | 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
       R  {0, r1 ,..., rk 1 , rk , 0, rk , rk 1 ,...  r1} for k – even

3.4      Constructing a non-learnable game from a vector of rewards
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 .
A game matrix for selected vector R can be the following:

                                           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 )                                             (3)
                                                 ...                      ...                     ...
                                                      m 1
                                                              (r0 )            m 1
                                                                                       (r1 )      ...      m 1 (rm 1 )

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);
4:10    •    Jaak Henno et al.



       (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]).
 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).

3.6      Examples
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 r of player
                                                                    i
                                                                                               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.
       Table. 4. Decision table for a rock-paper-scissors game with encoding of actions rock=0, paper=1, scissors=2
                                                                         2
                                                                    p
                                                               0       1    2            ∑

                                                        0       0       1    -1           →0                                 (4)
                                                1
                                                P




                                                        1    -1         0    1            →0
                                                        2       1       -1   0            →0
                                                        ∑   ↓0      ↓0       ↓0

The same for a 4-ary game (m – even) with R  {2, 0, 2} :

                            Table. 5. Decision table for a 4-ary group like game with R  {2, 0, 2} .
                                                                                 2
                                                                             p
                                                           0           1            2          3    ∑

                                                    0       0           -2           0          2    ↔0
                                                                                                                                   (5)
                                           P1




                                                    1       2           0            -2         0    ↔0
                                                    2       0           2            0         -2    ↔0
                                                    3       -2          0            2          0    ↔0
                                                    ∑       ↨0      ↨0               ↨0        ↨0
                                                                     Using Multiplayer Games to Create Secure Communication        •     4:11




      From conditions 2.-4. in 3.3 it is clear, that if m is odd then these games are fair ([Aten 2019 ]), i.e.          25




    |  (r ) | = |  (r ) |  m for any r , r   R ; if m is even, then |  (r ) | = |  (r ) |  m for any
           1             1                                                              1           1


    r , r   R , r  0  r  , |  1 (0) |  2* m (every row/column in the table has 0 twice).
The property (c) of the class NL allows to modify the presented above example (2) with rectangle
adjustment to totally non-symmetric form:
                       Table. 6. Modified with transformation x0,1  2, x0,2  2, x2,1  2, x2,2  2 matrix (3)

                                                        0       -1       4     -1
                                                        -1       0       1     2
                                                                                                                                   (6)
                                                        2        1      -2     1
                                                        1        2      -1     0

Particular cases of this class of games were considered in [Henno et al 2018 ], [Henno et al 2019 ]; games
                                                                                                  26                          27




belonging to this class were (for odd values of m) considered also e.g. in [Akin 2018 ].                 28




   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 2017 ]; for rewards are applied matrixes from above (modified with transformations (a), (b)):
                          29




Fig. 3.         A non-learnable game from a 4-bit lock automaton; inputs without transformations keep state.


4         CREATING ENCRYPTION KEY
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 (‘Odd-
Even’, ‘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.
   The server records sequence of player’s moves, e.g. for a game with two players Alice and Bob with l
moves this could be m11m12 m21m22 ,..., m1t m2t ,..., m1l m2l ; here m1t , m2t are respectively moves of Alice and
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.
   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 holes their own moves they all get the same
                                                                                 30




random sequence which could be used as the secure random key for symmetric encryption.
4:12      •   Jaak Henno et al.




Fig. 4.       Key generation combining a sequence with holes from server with sequence of player moves.

    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 (>1), server sends them all list of addresses of other members, thus they
can start a chat forum.
    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         CONCLUSIONS
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.
                                                               Using Multiplayer Games to Create Secure Communication    •   4:13


REFERENCES
1
 Encrypted Traffic 2018. Encrypted Traffic Reaches A New Threshold. https://www.networkcomputing.com/network-
security/encrypted-traffic-reaches-new-threshold
2Cisco 2019. Encrypted Traffic Analytics. Cisco white paper.
3D.. Maimon, Y. Wu, M. McGuire, N. Stubler. 2019. SSL/TLS Certificates and Their Prevalence on the Dark Web (First Report).
    https://www.venafi.com/sites/default/files/2019-02/Dark-Web-WP.pdf
4SecurityWeek 2019. Study Finds Rampant Sale of SSL/TLS Certificates on Dark Web. https://www.securityweek.com/study-finds-
    rampant-sale-ssltls-certificates-dark-web
5Hacker News 2017. The Rise of Super-Stealthy Digitally Signed Malware—Thanks to the Dark Web.
    https://thehackernews.com/2017/11/malware-digital-certificate.html
6
 Kaspersky 2018. LuckyMouse Group is back and using a legitimate certificate to sign malware.
https://www.kaspersky.com/about/press-releases/2018_luckymouse-group-is-back-and-using-a-legitimate-certificate-to-sign-malware
7
 Effect of Encryption 2017. The Effect of Encryption on Lawful Access to Communications and Data.https://ec.europa.eu/home-
    affairs/sites/homeaffairs/.../encryption/csis_study_en.pdf
Terada et al 2017. Security Measures Based on Human Behavior ... - Fujitsu Global.
8




https://www.fujitsu.com/global/documents/about/resources/.../fstj/...3/paper12.pdf
Leventhal 2018. Monitoring Users’ Behaviors to Better Secure Data: One Health Plan’s Story.
9




https://www.hcinnovationgroup.com/cybersecurity/article/13029889/monitoring-users-behaviors-to-better-secure-data-one-health-
plans-story
WePC 2019. 2019 Video Game Industry Statistics, Trends & Data. https://www.wepc.com/news/video-game-statistics/
Costikyan 2009. Randomness: Blight or Bane? http://www.costik.com/randomness-blight-or-bane.htm
11




A. Chalk 2009. Randomness in Gaming: Good or Bad? https://v1.escapistmagazine.com/forums/read/7.145275-Randomness-in-
12




    Gaming-Good-or-Bad
G. Costikyan 2013. Uncertainty in Games. MIT Press 2013, ISBN 0262018969 (ISBN13: 9780262018968)
13




Video Gaming 2019. WePC. 2019 Video Game Industry Statistics, Trends & Data, https://www.wepc.com/news/video-game-
14




statistics/
House 2018. Evolving multiplayer games beyond Unet. https://blogs.unity3d.com/2018/08/02/evolving-multiplayer-games-beyond-
15




    unet/
 C. Phillips 2018. Video Game Reward Types & The Player Experience. PhD Thesis, Queensland University of Technology,
16




    https://eprints.qut.edu.au/119100/1/Cody_Phillips_Thesis.pdf
Ah Reum Kang et al 2013. Online game bot detection based on party-play log analysis. Computers & Mathematics with
17




Applications, Vol 65:9, pp 1384-1395
Luzgin R. 2018. Video Games as a Perfect Playground for Artificial Intelligence. https://towardsdatascience.com/video-games-as-a-
18




perfect-playground-for-artificial-intelligence-3b4ebeea36ce
Shai Ben-David et all 2019. Learnability can be undecidable. Nature Machine Intelligence vol. 1, pp 44–48,
19




https://www.nature.com/articles/s42256-018-0002-3
Shapley 1963. SOME TOPICS IN TWO-PERSON GAMES. The US Department of Defence Rand Corporation Memorandum RM-
20




3672-PR
A. Plan 2017. Symmetric n-player games. www.asafplan.com/files/SymmetricGames.pdf
21




Shih-Fen CHENG et al 2004. Notes on Equilibria in Symmetric Games. Proceedings of the 6th International Workshop On Game
                            22




    Theoretic And Decision Theoretic Agents GTDT 2004 pp71-78
Akshay Wali et all 2019. Biological physically unclonable function. Communications Physicsvolume 2, Article number: 39 (2019),
23




https://www.nature.com/articles/s42005-019-0139-3
 CalTech 2004. Monotonicity and cyclical monotonicity. www.its.caltech.edu/~kcborder/Notes/CyclicalMonotonicity.pdf
24




C. Aten 2019. Multiplayer Rock-Paper-Scissors. https://web.math.rochester.edu/people/grads/caten2/documents/ALH_RPS.pdf
25




Henno et al 2018. Henno, J., Jaakkola, H., Mäkelä, J. Using Games to Understand and Create Randomness. Seventh Workshop on
26




Software Quality Analysis, Monitoring,Improvement, and Applications. SQAMIA 2018, Novi Sad, Serbia, 27–30.08.2018, CEUR-WS,
CEUR workshop proceedings vol. 2217, p. 1-9.
Henno et al 2019. Henno, J., Jaakkola, H., Mäkelä, J. Creating Randomness with Games. To appear in Acta Polytechnica
27




Hungarica, http://uni-obuda.hu/journal
 Akin E. 2018. Rock, Paper, Scissors, Etc - The Theory of Regular Tournaments. https://arxiv.org/abs/1806.11241
28




 Henno 2017. Information and Interaction. Information Modelling and Knowledge bases XXVIII, IOS Press, pp 426-449
29




30