<!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 />
    <article-meta>
      <title-group>
        <article-title>Algorithm for Determining Saddle Point in Game Theory Problem of Choosing Software for Information Security on Computer Network Servers</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Aleksandr Yu. Bykov</string-name>
          <email>abykov@bmstu.ru</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Maksim V. Grishunin</string-name>
          <email>grishunin-mv@ya.ru</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Evgenij G. Fedorov</string-name>
          <email>fedorov.evg.msu@gmail.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Irina A. Markova</string-name>
          <email>gurina.irina.94@gmail.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Bauman Moscow State Technical University</institution>
          ,
          <addr-line>5/1 2nd Baymanskay ul., Moscow, 105005</addr-line>
          ,
          <country country="RU">Russia</country>
        </aff>
      </contrib-group>
      <fpage>22</fpage>
      <lpage>32</lpage>
      <abstract>
        <p>The game formulation of the problem of two players is presented: a defender and an attacker. The defender selects the information security software for the computer network servers, taking into account the importance of the processed information, and the attacker selects the possible types of attacks. The mathematical formulation of the problem is a discretecontinuous game, the set of solutions of the defender is discrete, and the set of solutions of the attacker is continuous. The game is a zero-sum game, with the defender's damage used as a quality indicator. The defender, given the attacker's solution, solves the Boolean programming problem, and the attacker, given the defender's solution, solves the linear programming problem. An algorithm for finding the saddle point in a mixed strategy for the defender, in a pure strategy for the attacker, based on reducing the continuous problem of the attacker to a discrete one, is proposed. The algorithm is based on the ideas of the BrownRobinson method, but without explicit construction of the game matrix. To reduce the computational resources of the processor required for the operation of the algorithm, it is proposed that after a given number of steps a new solution is not obtained, not to solve optimization problems, but to search for solutions by brute force among the previously found solutions. An example of solving the problem is given.</p>
      </abstract>
      <kwd-group>
        <kwd>1 Information security</kwd>
        <kwd>discrete-continuous game</kwd>
        <kwd>zero-sum game</kwd>
        <kwd>boolean programming</kwd>
        <kwd>linear programming</kwd>
        <kwd>mixed strategy</kwd>
        <kwd>pure strategy</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>In [6], an equilibrium is sought in a two-level hierarchical game with non-opposite interests of
many players. A problem of protecting internet of things users from risks of breaching information
security is studied. Top level contains a centralized defender, while defenders with rights of ordinary
users are placed on the bottom level. Both centralized and decentralized models are studied.</p>
      <p>In [7] a problem of protecting cyber-physical power systems from exploitation risks is studied.
Time delay of system recovery and distributed denial of service are considered as risks. A three stage
defender-attacker-defender model of mathematical programming based on dynamic game theory with
complete information is proposed.</p>
      <p>In [8] a problem of data transmission in noisy channels is studied. A trade-off between
transmission speed and reliability is sought. Stochastic-mean-field-game is considered. Message
codes play the role of agents.</p>
      <p>In [9] a game between a system administrator and an attacker is studied. This is an asymmetric
information game with zero sum between two players that are unequally informed about the game:
informed defender and uninformed attacker.</p>
      <p>In [10] a mobile ad-hoc network in which network nodes are in motion is studied. Evolutionary
games for stimulating cooperation between mobile modes are used.</p>
      <p>In [11] a perspective theory describing human behavior during risk-involved decision making is
used for discovering Advanced Persistent Threats. The game uses Nash equilibrium criterion.</p>
      <p>In [12] Nash equilibrium is searched in order to ensure performance of blockchain system.</p>
      <p>In [13] a fast defense system against DDoS and port scanning attacks in software-defined
networking is studied. Three approaches to attack discovery are compared: particle swarm
optimization, multi-layer neural network and discrete wavelet transform.</p>
      <p>In most cases considered models can be either discrete or continuous. Combined
discretecontinuous models can also be used.</p>
      <p>In [14] a coalition-free game with conflicting interests in the data transmission network with
possible loss of communication is studied. Data source and network nodes are considered as players.
In order to reduce transmission delays, hosts are stimulated by the source to cache files. A search for
equilibrium Nash states is carried out, both for pure/mixed strategies and for discrete/continuous sets
of strategies.</p>
      <p>In [15] a game between intruder and subjects responsible for security, who exchange data on the
network, is studied. Data confidentiality breach is possible during this exchange. The gains from
cooperation and loss of confidentiality during information exchange are measured. Both discrete and
continuous games are considered.</p>
      <p>Some other mathematical models that are applicable to information security problems are studied
in [16-25].</p>
      <p>A discrete-continuous game of choosing which software to install on network servers for
information security is studied below. It takes into consideration the importance of data stored and
processed on these servers.</p>
      <p>The problem under consideration is relevant, since there are many different software tools for
protecting information that have different protection efficiency and require different resources.
Because of this, the problem of choosing these tools arises, and defining this problem in terms of
game theory allows us to take into account possible actions of the attacking side.</p>
      <p>The goal of this paper is to provide an information security specialist with mathematical software,
that would take into account the importance degree of processed information and actions of the
attacking side, for justifying the choice of information security software.</p>
      <p>The main tasks of the paper are: formulating mathematical game theory problem of choosing
software; proposing algorithms for solving it, carrying out computational experiments; deriving
conclusion.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Problem Description</title>
      <p>Let us consider a distributed computer system comprising many servers and providing different
services on the network. Servers run some target tasks for which they are intended. Required software
including OS and applications is installed on the servers. There exists a minimal configuration of
application and system programs enabling each server to run its target tasks. These programs are
implemented as processes. Minimal configuration requires availability of certain computing resources
on server (cpu time, memory, disk space, networks).</p>
      <p>Besides the main processes (required to run target tasks) maintenance processes are being
launched. These processes can be for example security enforcing processes such as antivirus software,
DDoS prevention tools, data integrity control programs, privacy programs, programs for protection
against unauthorized network connections, etc. Auxiliary or maintenance processes also have some
CPU time and memory requirements and cannot be all run at the same time due to lack of resources,
however usually there is no reason to run them all. The problem arises of choosing running processes
and installed programs.</p>
      <p>Server information resources are subject to attacks, which implement threats with different
possible goals. Several types of attacks can be distinguished, for example DDoS attacks, confidential
information access attacks, data distortion attacks (integrity violation), etc. Estimates of potential
damage for server owner in case of attack success exist for each server depending on importance of
data stored and processed on a server. Using auxiliary processes can prevent damage to servers from
incoming attacks completely, or can partially mitigate their consequences (possible damage).</p>
      <p>Let us consider the problem of choosing auxiliary processes from the standpoint of game theory.
There is a defender, whose solution to the problem consists choosing which auxiliary processes to run
on each server, and an attacker, whose solution consists of choosing attack types. Possible limitations
on attacker resources can also be considered, if such information is available. Let’s consider a game
of two players, we will regard defender damage estimate as an indicator of choice for both players,
therefore the game is a zero sum game.</p>
      <p>The problem can be summarized as follows.</p>
      <p>Given:
A set of servers running target tasks.</p>
      <p>A set of auxiliary processes for enforcing information security.</p>
      <p>A set of possible attack types that can be carried out on systems’ information resources.</p>
      <p>A damage estimate in case of attack success is defined for each server and each attack type
depending on importance of data stored and processed on a server.</p>
      <p>The following computational resource requirements are defined for each server and each auxiliary
process:
• CPU load ratio that depends on the servers’ computational power
• Memory usage
• Other resources are allowed
A “process cost” is defined in case a corresponding program has to be purchased.</p>
      <p>For each server its memory size and computational power, which can be allocated to auxiliary
processes (while taking into account resources needed to run main processes), as well as total
defender funds for buying software are defined.</p>
      <p>For each server and type of attack a damage estimate in case of attack success is defined.</p>
      <p>For each auxiliary process and attack type the probability or possibilities of prevention (in terms of
fuzzy sets) of an attack or a possible damage mitigation value if the process is running are defined.</p>
      <p>For each attach type financial burden on attacker for carrying it out are defined. Other attacker
resource (for example computational resources) costs estimates can be considered if such information
is available.</p>
      <p>Limit on attackers’ financial resources is defined (limit on other types of resources can be
considered if such information is available).</p>
      <p>Required:</p>
      <p>In order to minimize possible damage for defender – determine which auxiliary processes should
be run on each server, considering possible attacker actions, while also meeting requirements on
servers’ computational power, memory and possibly other server resources, and on defenders’
financial resources needed for auxiliary software purchase.
= { 1,  2, … ,   } – set of servers on a distributed computer system, 
= {1,2, … ,  } - set of
indices enumerating these servers.</p>
      <p>= {1,2, … ,  } - set of indices enumerating these attack types.</p>
      <p>= { 1,  2, … ,   } – set of attack types (implementations of security threats) on the system,
enforcement, Λ = {1,2, … , λ} – set of indices enumerating these processes.</p>
      <p>= { 1,  2, … ,   } – set of auxiliary processes, which can be run on servers for security
 ( )
= 
( )
1</p>
      <p>,  2( ), … ,   ( )
indices enumerating these resources.</p>
      <p>( ) – set of limited defender resources,  ( ) = {1,2, … ,  ( )} - set of
indices enumerating these resources.
respectively.</p>
      <p>Resource set  is divided into two disjoint subsets  ( )
=  ( ) ∪  ( ℎ),  ( ) being a set of
private server resources (each server has its own resources), and  ( ℎ) being a set of shared server
resources that are distributed among all servers. We introduce separate enumeration for private and
shared resources with two sets of resource indices  ( ) = {1,2, … ,  ( )} and  ( ℎ) = {1,2, … ,  ( ℎ)}
 ( ) = { 1
( ),  2</p>
      <p>( ), … ,   (( ))} – set of limited attacker resources.  ( ) = {1,2, … ,  ( )} - set of</p>
    </sec>
    <sec id="sec-3">
      <title>Mathematical Formulation of the Problem 3.1. Initial data</title>
      <p>1.
2.

( )
( )
3.2.</p>
      <p>Set elements parameters and relations between them
implementetion) if k-th process is running on any server or defender damage mitigation value.
≥ 0, ∀ ∈  ( )
,  ∈  ,  ∈</p>
      <p>– value of j-th private resource (performance or memory)</p>
      <p>≥ 0, ∀ ∈  ,  ∈ 
   ∈ [0,1], ∀ ∈  ,  ∈ 
successful in carrying out j-th type of attack.
required to run k-th process on i-th server.</p>
      <p>≥ 0, ∀ ∈  ( )</p>
      <p>,  ∈  – maximum value of j-th private resource on i-th server, that can
be spent on auxiliary processes, taking into account the ammount of the resource required to run
main processes running target tasks.</p>
      <p>– estimate of damage to defender on i-th server if attacker was</p>
      <p>– probability (or possibility) of preventing j-th attack (threat
required to run k-th process on i-th server.
used for auxiliary processes.</p>
      <p>≥ 0, ∀ ∈  ( ℎ),  ∈  ,  ∈</p>
      <p>– value of j-th shared resource (for example, financial)
≥ 0, ∀ ∈  ( ℎ) – maximum value of j-th shared resource for all servers, that can be
belongs to i-th group and</p>
      <p>= 0 if otherwise.</p>
      <p>We will combine some computer processes (applications) into homogeneous groups, for each
group it makes sense to install only one of applications belonging to it. For example, There can be
several antivirus applications, etc.  = {1,2, … ,  } – indices of these groups. For their definition
let’s introduce a boolean matrix  &lt;    &gt; ‖  ‖, ∀ 
∈ Λ,  ∈  ,  
= 1 if k-th application
≥ 0, ∀ ∈  ( ),  ∈  ,  ∈  - value of k-th attacker resource required for j-th attack type
on i-th server.</p>
      <p>≥ 0, ∀</p>
      <p>∈  ( ) - maximum quantity of k-th attacker resource, that he can use for all
attack types (only financial resource can be considered in the simplest case).
3.3.</p>
    </sec>
    <sec id="sec-4">
      <title>Parameters</title>
      <sec id="sec-4-1">
        <title>Let’s introduce a boolean value</title>
        <p>∈ {0,1}, ∀ ∈  ,  ∈  , for the defender,  
= 1 if k-th
process is running on i-th server and  
= 0 otherwise. These variables form the vector  ⃗.</p>
      </sec>
      <sec id="sec-4-2">
        <title>Let’s introduce a value</title>
        <p>∈ [0,1], ∀ ∈  ,  ∈  for the attacker. Its value can be interpreted as a
probability or a possibility (in terms of fuzzy sets) of carrying out j-th attack type on i-th server. These
variables form the vector  ⃗.
3.4.</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Players indicators</title>
      <p>During damage calculation we will assume that probability (safety degree in case of fuzzy
description) of defending i-th server from j-th attack type while using several auxiliary processes is
determined by a process
with
maximum probability:   ( ⃗) =  
{     }, ∀ ∈  ,  ∈  .</p>
      <p>Therefore, an estimate of mitigated damage on all servers is  пр( ⃗,  ⃗) = ∑ ∈ ∑ ∈     ( ⃗)  =
.</p>
      <p>Defenders’ goal is to minimize this indicator, attackers’ – to maximize.
3.5.</p>
    </sec>
    <sec id="sec-6">
      <title>Limitations</title>
      <p>Conditions on private resource usage on each server:</p>
      <p>Conditions for defender
 ( )
 
  ≤  
( )
, ∀ ∈  ( ),  ∈  .</p>
      <p>
        (
        <xref ref-type="bibr" rid="ref1">1</xref>
        )
(
        <xref ref-type="bibr" rid="ref2">2</xref>
        )
(
        <xref ref-type="bibr" rid="ref3">3</xref>
        )
(
        <xref ref-type="bibr" rid="ref4">4</xref>
        )
(
        <xref ref-type="bibr" rid="ref5">5</xref>
        )
 ∈  ∈
      </p>
      <p>, ∀ ∈  ( ℎ).
    ≤ 1, ∀ ∈  ,  ∈  .</p>
      <p>Conditions for attacker


( )
  ≤</p>
      <p>( ), ∀ ∈  ( ).</p>
      <p>
        Presented formulation of the problem with indicator given by (
        <xref ref-type="bibr" rid="ref1">1</xref>
        ) and conditions for defender
(
        <xref ref-type="bibr" rid="ref2">2</xref>
        )(
        <xref ref-type="bibr" rid="ref4">4</xref>
        ) and attacker (
        <xref ref-type="bibr" rid="ref5">5</xref>
        ) is a mixed discrete-continuous zero sum game. Defender is solving a boolean
programming problem with indicator (
        <xref ref-type="bibr" rid="ref1">1</xref>
        ) being non-linear for  ⃗ and conditions (
        <xref ref-type="bibr" rid="ref2">2</xref>
        )-(
        <xref ref-type="bibr" rid="ref4">4</xref>
        ) assuming fixed
attackers’ solution  ⃗, while attacker is solving a linear programming problem with indicator (
        <xref ref-type="bibr" rid="ref1">1</xref>
        )
(nonlinear for  ⃗) and conditions (
        <xref ref-type="bibr" rid="ref5">5</xref>
        ) assuming fixed  ⃗.
      </p>
    </sec>
    <sec id="sec-7">
      <title>4. Saddle Point Search Algorithm</title>
      <p>For a game of two players with zero sum equilibrium state is determined by games’ saddle point.
For a continuous game of two players, in the case where possible player choice sets are convex and
target function is linear, saddle point always exists for player indicator function [26]. In the discrete
case, if player choice sets are finite, the game can be reduced to a matrix game [27]. For a matrix
game a saddle point can both be present or not present for pure strategies, but always exists for mixed
strategies (a pure strategy is a special case of a mixed strategy).
4.1.</p>
    </sec>
    <sec id="sec-8">
      <title>Justification for saddle point existence in a discrete-continuous problem</title>
      <p>The defenders’ choices set is finite, while attackers’ choices set is continuous. Analogous to [27],
because attacker is solving a linear programming problem and this games’ solution lies on a vertex of
a polyhedron of possible choices with number of such vertices being finite, a continuous problem can
be reduced to discrete one, if one considers polyhedron vertices as solutions. In this case the problem
can be reduced to a matrix game in which a saddle point must always exist for mixed strategies.
4.2.</p>
    </sec>
    <sec id="sec-9">
      <title>Description of saddle point search algorithm using ideas from Brown</title>
    </sec>
    <sec id="sec-10">
      <title>Robinson method</title>
      <p>
        The idea of Brown-Robinson method is based on each player solving consecutive problems, and
using total accumulated win or loss as the indicator. For multiple solutions of these problems a
probability of each solution is estimated, with combination of those estimates determining a mixed
strategy. Analogous to [26], the attacker with continuous solution set should calculate average Y⃗
among set of obtained solutions. For the defender we get probability estimates of obtaining each
solution.
indicator (
        <xref ref-type="bibr" rid="ref1">1</xref>
        ), then the defender on ( + 1)-th step must solve the problem of minimizing indicator:
Let  ⃗(
        <xref ref-type="bibr" rid="ref1">1</xref>
        ),  ⃗(
        <xref ref-type="bibr" rid="ref2">2</xref>
        ), … ,  ⃗( ) be a sequence of solutions that the attacker obtains while optimizing
 =1
      </p>
      <p>=1  ∈  ∈
 з
( +1)( ⃗) =
 ( ⃗,  ⃗( )) =
  

( )
(1 −  

where</p>
      <p>
        ( ) are components of vector  ⃗( )
indicator (
        <xref ref-type="bibr" rid="ref1">1</xref>
        ), then the attacker on ( + 1)-th step must solve the problem of maximizing indicator:
Let  ⃗ (
        <xref ref-type="bibr" rid="ref1">1</xref>
        ),  ⃗(
        <xref ref-type="bibr" rid="ref2">2</xref>
        ), … ,  ⃗( ) be a sequence of solutions that the defender obtains while optimizing
 =1
      </p>
      <p>=1  ∈  ∈
where 
( ) are components of vector  ⃗ ( ).
 н
( +1)( ⃗) =
 ( ⃗( ),  ⃗) =
    (1 −</p>
      <p>{   

( )}),</p>
      <p>
        The problem with indicator (
        <xref ref-type="bibr" rid="ref6">6</xref>
        ) is a boolean programming problem for the defender. As indicator
programming problem for the attacker.
(
        <xref ref-type="bibr" rid="ref6">6</xref>
        ) is linear on components of  ⃗( ), therefore when optimizing we can use a middle point among
vectors  ⃗(0),  ⃗(
        <xref ref-type="bibr" rid="ref1">1</xref>
        ), … ,  ⃗( ) instead of their first sum. The problem with indicator (
        <xref ref-type="bibr" rid="ref7">7</xref>
        ) is a linear
middle point for attacker can be written as:
      </p>
      <p>
        Let’s introduce a definition for the middle point, obtained on g initial algorithm steps. We denote
solutions obtained on each of g initial algorithm steps for defender as  ⃗(
        <xref ref-type="bibr" rid="ref1">1</xref>
        ),  ⃗(
        <xref ref-type="bibr" rid="ref2">2</xref>
        ), … ,  ⃗( ), then the
 ⃗(
) =
      </p>
      <p>⃗( ),

1

 =1
4.3.</p>
    </sec>
    <sec id="sec-11">
      <title>Let’s Formulate the Saddle Point Search Algorithm</title>
      <p>Step 0. We assume  ⃗(  ) = ‖0,0, … ,0‖ (total vector for calculation sum ∑
 =1
 ⃗( )),  ⃗(0) =
‖0,0, … ,0‖ - initial solution of the defender, any solution can be chosen, vector map  ⃗ is empty. This
map has vector  ⃗( ) as key, and number of  ⃗ occurrences in different steps of the algorithm as values.</p>
      <p>
        Step k (k=1, 2, 3, …). We determine  ⃗( ) with  ⃗ vector map obtained on current step, by
searching linear programming problem for the attacker, maximize indicator (
        <xref ref-type="bibr" rid="ref7">7</xref>
        ) (for k=1 we maximize
indicator (
        <xref ref-type="bibr" rid="ref1">1</xref>
        ) for  ⃗ =  ⃗(0)). Attackers’ quality indicator value we denote as  н
( )
( ⃗( )), we assume
      </p>
      <p>
        We determine  ⃗( ) for fixed  ⃗(  ) by solving a boolean programming problem for the defender
include into defender’s solution map.
with indicator (
        <xref ref-type="bibr" rid="ref6">6</xref>
        ). Defenders’ quality indicator value we denote as  з
      </p>
      <p>From second step onward we check the stopping criterion. If it is met, we stop the algorithm,
obtained attackers’ solution -  ⃗(  ), using obtained map for  ⃗ vectors we calculate probability
estimates for each vector in map, this will be the defenders’ solution in mixed strategies. Pair of
defenders’ and attackers’ solutions comprises an approximated saddle point. If stopping criterion is
( +1)( ⃗( )), obtained  ⃗( ) we
| &lt;  can be used as a stopping criterion, where ε - some
not met, we continue with the next step.</p>
      <p>The condition |  н( )( ⃗( ))
−</p>
      <p>з( +1)( ⃗( ))
 −1
value</p>
      <p>−1
 н( )
 ⃗( ) ,  з( +1)  ⃗( )

.</p>
      <p>relatively small positive value, determining algorithm error, ε can be chosen as a percentage of the</p>
      <p>If the need arises, the algorithm can be reformulated thus, that on each step the optimization
problem for the defender would be solved first, and for attacker – second.
4.4.</p>
    </sec>
    <sec id="sec-12">
      <title>Ways to reduce the required computing resources for algorithm and increase its precision</title>
      <p>The Described algorithm requires substantial computational resources starting from certain
dimension of the problem, because on each step the defender has to solve boolean programming
problem with exponential computational complexity.</p>
      <p>As shown by computational experiments, obtained solutions start to repeat on certain step, i.e. for
a given relatively large step count no new solutions were obtained for both attacker and defender
(attackers’ solutions can also be saved in a map), similar approach was used in [27]. In this case we
can stop solving optimization tasks, and start looking for solutions among obtained ones using brute
force.</p>
      <p>If there aren’t too many obtained solutions in maps, we can compose a usual game matrix from
them by filling it with indicator values for each solution pair for defender and attacker, and then solve
this problem precisely or approximately by using this matrix.</p>
    </sec>
    <sec id="sec-13">
      <title>5. Example</title>
      <p>the number of objects is 5, the number of applications is 9, the number of threats is 3, for example,
integrity, availability, and privacy violations.</p>
      <p>2
38.20
30.85
32.79
21.28
39.61
234.70</p>
      <p>3
18.03
38.59
22.24
44.87
24.97</p>
      <p>The results of solving the problem are presented in Table 2. The table shows the saddle point: one
solution for the attacker (the middle point found by the algorithm) and three solutions for the defender
with estimates of their probabilities (a mixed strategy). The estimate of the indicator value is 2719.71.
6. Conclusion</p>
      <p>The report considers the mathematical formulation of the problem of choosing software protection
tools for a server system. The problem is a discrete-continuous zero-sum game of two players: a
defender and an intruder. The set of decisions of the defender is discrete and finite, the set of
decisions of the attacker is continuous, including the uncertainty of the actions of the attacker from
the point of view of the defender. The defender must solve the Boolean programming problem, and
the intruder must solve the linear programming problem. An algorithm for finding a saddle point for a
defender in mixed strategies, for an intruder in pure strategies is proposed. The algorithm is based on
reducing the continuous problem for the attacker to a discrete one and is based on the ideas of the
Brown-Robinson method. Computational experiments were carried out that demonstrated the
efficiency of the algorithm, and a method was proposed to reduce the computational complexity of the
algorithm by switching from solving optimization problems to finding solutions among previously
found ones, after the solutions are repeated at a given number of steps.</p>
      <p>The use of the proposed algorithm allows using software protection tools in the case of restrictions
on various resources to significantly reduce the damage to the protection side from various types of
attacks.</p>
      <p>The reliability of the obtained results is confirmed by the correctness of the mathematical
formulation of the problem, an explicit meaningful interpretation of both the problem statement and
the obtained solutions, as well as by experimental verification of the obtained solutions to meet the
required criteria.</p>
    </sec>
    <sec id="sec-14">
      <title>7. References</title>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>Fanyu</given-names>
            <surname>Kong</surname>
          </string-name>
          , Yufeng Zhou, Bin Xia, Li Pan,
          <string-name>
            <given-names>Limin</given-names>
            <surname>Zhu</surname>
          </string-name>
          .
          <article-title>A Security Reputation Model for IoT Health Data Using S-AlexNet and Dynamic Game Theory in Cloud Computing Environment</article-title>
          .
          <source>IEEE Access</source>
          ,
          <year>2019</year>
          , vol.
          <volume>7</volume>
          , pp.
          <fpage>161822</fpage>
          -
          <lpage>161830</lpage>
          . DOI:
          <volume>10</volume>
          .1109/ACCESS.
          <year>2019</year>
          .
          <volume>2950731</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>Hengwei</given-names>
            <surname>Zhang</surname>
          </string-name>
          , Lv Jiang, Shirui Huang,
          <string-name>
            <surname>Jindong</surname>
            <given-names>Wang</given-names>
          </string-name>
          , Yuchen Zhang.
          <article-title>Attack-Defense Differential Game Model for Network Defense Strategy Selection</article-title>
          .
          <source>IEEE Access</source>
          ,
          <year>2018</year>
          , vol.
          <volume>7</volume>
          , pp.
          <fpage>50618</fpage>
          -
          <lpage>50629</lpage>
          . DOI:
          <volume>10</volume>
          .1109/ACCESS.
          <year>2018</year>
          .
          <volume>2880214</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>Liang</given-names>
            <surname>Xiao</surname>
          </string-name>
          , Dongjin Xu,
          <string-name>
            <given-names>Narayan B.</given-names>
            <surname>Mandayam</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H. Vincent</given-names>
            <surname>Poor</surname>
          </string-name>
          .
          <article-title>Attacker-Centric View of a Detection Game against Advanced Persistent Threats</article-title>
          .
          <source>IEEE Transactions on Mobile Computing</source>
          ,
          <year>2018</year>
          , vol.
          <volume>17</volume>
          , iss. 11, pp.
          <fpage>2512</fpage>
          -
          <lpage>2523</lpage>
          . DOI:
          <volume>10</volume>
          .1109/TMC.
          <year>2018</year>
          .
          <volume>2814052</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>Shana</given-names>
            <surname>Moothedath</surname>
          </string-name>
          , Dinuka Sahabandu, Joey Allen, Andrew Clark, Linda Bushnell,
          <string-name>
            <given-names>Wenke</given-names>
            <surname>Lee</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Radha</given-names>
            <surname>Poovendran</surname>
          </string-name>
          .
          <article-title>A Game-Theoretic Approach for Dynamic Information Flow Tracking to Detect Multistage Advanced Persistent Threats</article-title>
          .
          <source>IEEE Transactions on Automatic Control</source>
          ,
          <year>2020</year>
          , vol.
          <volume>65</volume>
          , iss. 12, pp.
          <fpage>5248</fpage>
          -
          <lpage>5263</lpage>
          . DOI:
          <volume>10</volume>
          .1109/TAC.
          <year>2020</year>
          .
          <volume>2976040</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>Dayong</given-names>
            <surname>Ye</surname>
          </string-name>
          , Tianqing Zhu, Sheng Shen,
          <string-name>
            <given-names>Wanlei</given-names>
            <surname>Zhou</surname>
          </string-name>
          .
          <article-title>A Differentially Private Game Theoretic Approach for Deceiving Cyber Adversaries</article-title>
          .
          <source>IEEE Transactions on Information Forensics and Security</source>
          ,
          <year>2020</year>
          , vol.
          <volume>16</volume>
          , pp.
          <fpage>569</fpage>
          -
          <lpage>584</lpage>
          . DOI:
          <volume>10</volume>
          .1109/TIFS.
          <year>2020</year>
          .
          <volume>3016842</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>Rui</given-names>
            <surname>Zhang</surname>
          </string-name>
          , Quanyan Zhu.
          <article-title>FlipIn: A Game-Theoretic Cyber Insurance Framework for IncentiveCompatible Cyber Risk Management of Internet of Things</article-title>
          .
          <source>IEEE Transactions on Information Forensics and Security</source>
          ,
          <year>2019</year>
          , vol.
          <volume>15</volume>
          , pp.
          <fpage>2026</fpage>
          -
          <lpage>2041</lpage>
          . DOI:
          <volume>10</volume>
          .1109/TIFS.
          <year>2019</year>
          .2955891
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <surname>Boyu</surname>
            <given-names>Gao;Libao</given-names>
          </string-name>
          <string-name>
            <surname>Shi</surname>
          </string-name>
          .
          <article-title>Modeling an Attack-Mitigation Dynamic Game-Theoretic Scheme for Security Vulnerability Analysis in a Cyber-Physical Power System</article-title>
          .
          <source>IEEE Access</source>
          ,
          <year>2020</year>
          , vol.
          <volume>8</volume>
          , pp.
          <fpage>30322</fpage>
          -
          <lpage>30331</lpage>
          . DOI:
          <volume>10</volume>
          .1109/ACCESS.
          <year>2020</year>
          .2973030
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>Makan</given-names>
            <surname>Zamanipour</surname>
          </string-name>
          .
          <article-title>Fast-and-Secure State-Estimation in Dynamic-Control Over Communication Channels: A Game-Theoretical Viewpoint</article-title>
          .
          <source>IEEE Transactions on Signal and Information Processing over Networks</source>
          ,
          <year>2020</year>
          , vol.
          <volume>6</volume>
          , pp.
          <fpage>645</fpage>
          -
          <lpage>655</lpage>
          . DOI:
          <volume>10</volume>
          .1109/TSIPN.
          <year>2020</year>
          .3018327
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>Lichun</given-names>
            <surname>Li</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Jeff S.</given-names>
            <surname>Shamma</surname>
          </string-name>
          .
          <article-title>Efficient Strategy Computation in Zero-Sum Asymmetric Information Repeated Games</article-title>
          .
          <source>IEEE Transactions on Automatic Control</source>
          ,
          <year>2020</year>
          , vol.
          <volume>65</volume>
          ,
          <issue>iss</issue>
          . 7, pp.
          <fpage>2785</fpage>
          -
          <lpage>2800</lpage>
          . DOI:
          <volume>10</volume>
          .1109/TAC.
          <year>2019</year>
          .2933396
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>Burhan</given-names>
            <surname>Ul Islam Khan</surname>
          </string-name>
          , Farhat Anwar, Rashidah Funke Olanrewaju, Bisma Rasool Pampori,
          <article-title>Roohie Naaz Mir. A Game Theory-Based Strategic Approach to Ensure Reliable Data Transmission With Optimized Network Operations in Futuristic Mobile Adhoc Networks</article-title>
          .
          <source>IEEE Access</source>
          ,
          <year>2020</year>
          , vol.
          <volume>8</volume>
          , pp.
          <fpage>124097</fpage>
          -
          <lpage>124109</lpage>
          . DOI:
          <volume>10</volume>
          .1109/ACCESS.
          <year>2020</year>
          .3006043
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <surname>Liang</surname>
            <given-names>Xiao</given-names>
          </string-name>
          , Dongjin Xu,
          <string-name>
            <given-names>Narayan B.</given-names>
            <surname>Mandayam</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H. Vincent</given-names>
            <surname>Poor</surname>
          </string-name>
          .
          <article-title>Attacker-Centric View of a Detection Game against Advanced Persistent Threats</article-title>
          .
          <source>IEEE Transactions on Mobile Computing</source>
          .
          <year>2018</year>
          . Vol.
          <volume>17</volume>
          ,
          <string-name>
            <surname>Iss</surname>
          </string-name>
          . 11. P.
          <volume>2512</volume>
          -
          <fpage>2523</fpage>
          . DOI:
          <volume>10</volume>
          .1109/TMC.
          <year>2018</year>
          .2814052
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <surname>Jiaxing</surname>
            <given-names>Qi</given-names>
          </string-name>
          , Jing Yu,
          <string-name>
            <given-names>Shunfu</given-names>
            <surname>Jin</surname>
          </string-name>
          .
          <article-title>Nash Equilibrium and Social Optimization of Transactions in Blockchain System Based on Discrete-Time Queue</article-title>
          .
          <source>IEEE Access</source>
          ,
          <year>2020</year>
          , vol.
          <volume>8</volume>
          , pp.
          <fpage>73614</fpage>
          -
          <lpage>73622</lpage>
          . DOI:
          <volume>10</volume>
          .1109/ACCESS.
          <year>2020</year>
          .2986084
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <surname>Marcos</surname>
            <given-names>V.</given-names>
          </string-name>
          <string-name>
            <surname>O. De Assis</surname>
          </string-name>
          , Matheus P. Novaes, Cinara B.
          <string-name>
            <surname>Zerbini</surname>
          </string-name>
          , Luiz F. Carvalho, Taufik Abrãao, Mario L.
          <string-name>
            <surname>Proença</surname>
          </string-name>
          .
          <article-title>Fast Defense System Against Attacks in Software Defined Networks</article-title>
          .
          <source>IEEE Access</source>
          ,
          <year>2020</year>
          , vol.
          <volume>6</volume>
          , pp.
          <fpage>69620</fpage>
          -
          <lpage>69639</lpage>
          . DOI:
          <volume>10</volume>
          .1109/ACCESS.
          <year>2018</year>
          .2878576
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>Sidi</given-names>
            <surname>Ahmed</surname>
          </string-name>
          <string-name>
            <given-names>Ezzahidi</given-names>
            , Essaid Sabir, Mohamed El Kamili,
            <surname>El-Houssine Bouyakhf</surname>
          </string-name>
          .
          <article-title>A noncooperative file caching for delay tolerant networks: A reward-based incentive mechanism</article-title>
          .
          <source>2016 IEEE Wireless Communications and Networking Conference</source>
          ,
          <year>2016</year>
          . DOI:
          <volume>10</volume>
          .1109/WCNC.
          <year>2016</year>
          .7565161
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <surname>Richeng</surname>
            <given-names>Jin</given-names>
          </string-name>
          ;
          <article-title>Xiaofan He;Huaiyu Dai. On the Security-Privacy Tradeoff in Collaborative Security: A Quantitative Information Flow Game Perspective</article-title>
          .
          <source>IEEE Transactions on Information Forensics and Security</source>
          ,
          <year>2019</year>
          , vol.
          <volume>14</volume>
          , iss. 12, pp.
          <fpage>3273</fpage>
          -
          <lpage>3286</lpage>
          . DOI:
          <volume>10</volume>
          .1109/TIFS.
          <year>2019</year>
          .2914358
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <surname>Klyucharev</surname>
            <given-names>P.G.</given-names>
          </string-name>
          <string-name>
            <surname>Grafy</surname>
          </string-name>
          <article-title>Pajzera v zadachah kriptografii i obrabotki informacii [pizer graphs in cryptography</article-title>
          and in information processing].
          <article-title>Sbornik trudov desyatoj mezhdunarodnoj nauchno-tekhnicheskoj konferencii «Bezopasnye informacionnye tekhnologii» (BIT-</article-title>
          <year>2019</year>
          ), Moscow, MGTU im. N.E.Baumana,
          <year>2019</year>
          , pp.
          <fpage>176</fpage>
          -
          <lpage>179</lpage>
          . (In Russ).
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <surname>Ponomarenko</surname>
            <given-names>G.S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Klyucharyov</surname>
            <given-names>P.G.</given-names>
          </string-name>
          <article-title>Opredelenie obfuskacii JavaScript-programm s pomoshch'yu raskrasok na abstraktnyh sintaksicheskih derev'yah [detection of obfuscated javascript code based on abstract syntax trees coloring]</article-title>
          .
          <source>Matematika i matematicheskoe modelirovanie</source>
          ,
          <year>2020</year>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>24</lpage>
          . DOI:
          <volume>10</volume>
          .24108/mathm.0220.0000218.
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <surname>Vishnevskij</surname>
            <given-names>A.S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Klyucharev</surname>
            <given-names>P.G.</given-names>
          </string-name>
          <article-title>Obnaruzhenie celenapravlennyh atak veb-orientirovannoj obmannoj sistemoj, osnovannoj na algoritme antiklassifikacii [Anticlassification algorithm for targeted computer attack detection in web-oriented honeypot]</article-title>
          .
          <source>Nejrokomp'yutery: razrabotka, primenenie</source>
          ,
          <year>2020</year>
          , vol.
          <volume>22</volume>
          , no.
          <issue>3</issue>
          , pp.
          <fpage>5</fpage>
          -
          <lpage>17</lpage>
          . DOI:
          <volume>10</volume>
          .18127/j19998554-202003-01.
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <surname>Andrey</surname>
            <given-names>Vishnevsky</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>Petr</given-names>
            <surname>Klyucharev</surname>
          </string-name>
          .
          <article-title>The Sound User Interface of Honeypot</article-title>
          .
          <source>CEUR Workshop Proceedings</source>
          .
          <year>2019</year>
          . Vol-
          <volume>2603</volume>
          . P.
          <volume>83</volume>
          -
          <fpage>87</fpage>
          . URL: http://ceur-ws.
          <source>org/</source>
          Vol-
          <volume>2603</volume>
          /short18.pdf.
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <surname>Grigory</surname>
            <given-names>Ponomarenko</given-names>
          </string-name>
          , Petr Klyucharev.
          <source>JavaScript Programs Obfuscation Detection Method that Uses Artificial Neural Network with Attention Mechanism. CEUR Workshop Proceedings</source>
          .
          <year>2019</year>
          . Vol-
          <volume>2603</volume>
          . P.
          <volume>100</volume>
          -
          <fpage>104</fpage>
          . URL: http://ceur-ws.
          <source>org/</source>
          Vol-
          <volume>2603</volume>
          /paper21.pdf.
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>A.</given-names>
            <surname>Varfolomeev</surname>
          </string-name>
          .
          <article-title>Strengthening the password authenticated key exchange protocols due to the use of asymmetric execution of cryptosystems</article-title>
          .
          <source>CEUR Workshop Proceedings</source>
          .
          <year>2019</year>
          . Vol-
          <volume>2603</volume>
          . P.
          <volume>79</volume>
          -
          <fpage>82</fpage>
          . http://ceur-ws.
          <source>org/</source>
          Vol-
          <volume>2603</volume>
          /short17.pdf.
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>M.</given-names>
            <surname>Basarab</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Buldakova</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Smolyaninova</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Sokolov</surname>
          </string-name>
          .
          <article-title>User Identification Based on the Vein Pattern in Biometric Immobilizer</article-title>
          .
          <source>CEUR Workshop Proceedings</source>
          .
          <year>2019</year>
          . Vol-
          <volume>2603</volume>
          . P. 1-
          <fpage>5</fpage>
          . URL: http://ceur-ws.
          <source>org/</source>
          Vol-
          <volume>2603</volume>
          /short1.pdf.
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>A.</given-names>
            <surname>Chilikov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Zhukov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Verkhovsky</surname>
          </string-name>
          .
          <article-title>The Research of Reversible Cellular Automata with a Finite Lattice</article-title>
          .
          <source>CEUR Workshop Proceedings</source>
          .
          <year>2019</year>
          . Vol-
          <volume>2603</volume>
          . P.
          <volume>12</volume>
          -
          <fpage>15</fpage>
          . URL: http://ceurws.org/Vol-
          <volume>2603</volume>
          /short3.pdf.
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <surname>А. Markov</surname>
            ,
            <given-names>I. Sheremet.</given-names>
          </string-name>
          <article-title>Enhancement of Confidence in Software in the Context of International Security</article-title>
          .
          <year>2019</year>
          . Vol-
          <volume>2603</volume>
          . P.
          <volume>88</volume>
          -
          <fpage>92</fpage>
          . URL: http://ceur-ws.
          <source>org/</source>
          Vol-
          <volume>2603</volume>
          /paper19.pdf.
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <given-names>A.</given-names>
            <surname>Kalashnikov</surname>
          </string-name>
          .
          <article-title>Example of Using of Game-Theoretic Approach in Problems of Ensuring Cyber Security of Information Systems</article-title>
          . Voprosy kiberbezopasnosti,
          <year>2014</year>
          , No
          <volume>1</volume>
          (
          <issue>2</issue>
          ), pp.
          <fpage>49</fpage>
          -
          <lpage>54</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <string-name>
            <surname>Bykov</surname>
            <given-names>A.Yu.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Krygin</surname>
            <given-names>I.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Grishunin</surname>
            <given-names>M.V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Markova</surname>
            <given-names>I.A.</given-names>
          </string-name>
          <article-title>Ob odnom algoritme poiska sedlovoj tochki dlya nepreryvnyh linejnyh igr primenitel'no k zadacham zashchity informacii [One saddle point search algorithm for continuous games applied to information security problems]. Vestnik Moskovskogo gosudarstvennogo tekhnicheskogo universiteta im</article-title>
          . N.E. Baumana. Seriya:
          <article-title>Priborostroenie [Herald of the Bauman MSTU</article-title>
          . Ser. Instrument Engineering],
          <year>2020</year>
          , no.
          <volume>4</volume>
          (
          <issue>133</issue>
          ), pp.
          <fpage>58</fpage>
          -
          <lpage>74</lpage>
          . DOI:
          <volume>10</volume>
          .18698/
          <fpage>0236</fpage>
          -3933-2020-4-
          <fpage>58</fpage>
          -74.
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <surname>Bykov</surname>
            <given-names>A.Yu.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Grishunin</surname>
            <given-names>M.V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Krygin</surname>
            <given-names>I.A.</given-names>
          </string-name>
          <article-title>Igrovaya zadacha vybora zashchishchaemyh ob"ektov i issledovanie algoritma poiska sedlovoj tochki na osnove modifikacii metoda BraunaRobinsona [THE game problem of selection of assets to protect and research of saddle point search algorithm based on Brown-Robinson method modification]</article-title>
          .
          <source>Voprosy kiberbezopasnosti</source>
          ,
          <year>2019</year>
          , no.
          <volume>2</volume>
          (
          <issue>30</issue>
          ), pp.
          <fpage>2</fpage>
          -
          <lpage>12</lpage>
          . DOI:
          <volume>10</volume>
          .21681/
          <fpage>2311</fpage>
          -3456-2019-2-2-12.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>