Leakage and Protocol Composition in a Game-Theoretic Perspective

In the inference attacks studied in Quantitative Information Flow (QIF), the adversary typically tries to interfere with the system in the attempt to increase its leakage of secret information. The defender, on the other hand, typically tries to decrease leakage by introducing some controlled noise. This noise introduction can be modeled as a type of protocol composition, i.e., a probabilistic choice among different protocols, and its effect on the amount of leakage depends heavily on whether or not this choice is visible to the adversary. In this work we consider operators for modeling visible and invisible choice in protocol composition, and we study their algebraic properties. We then formalize the interplay between defender and adversary in a game-theoretic framework adapted to the specific issues of QIF, where the payoff is information leakage. We consider various kinds of leakage games, depending on whether players act simultaneously or sequentially, and on whether or not the choices of the defender are visible to the adversary. Finally, we establish a hierarchy of these games in terms of their information leakage, and provide methods for finding optimal strategies (at the points of equilibrium) for both attacker and defender in the various cases. The full version of this paper can be found in arXiv:1803.10042


Introduction
A fundamental problem in computer security is the leakage of sensitive information due to correlation of secret values with observables-i.e., any information accessible to the attacker, such as, for instance, the system's outputs or execution time. The typical defense consists in reducing this correlation, which can be done in, essentially, two ways. The first, applicable when the correspondence secret-observable is deterministic, consists in coarsening the equivalence classes of secrets that give rise to the same observables. This can be achieved with post-processing, i.e., sequentially composing the original system with a program that removes information from observables. For example, a typical attack on encrypted web traffic consists on the analysis of the packets' length, and a typical defense consists in padding extra bits so to diminish the length variety [29].
The second kind of defense, on which we focus in this work, consists in adding controlled noise to the observables produced by the system. This can be usually seen as a composition of different protocols via probabilistic choice.
Example 1 (Differential privacy). Consider a counting query f , namely a function that, applied to a dataset x, returns the number of individuals in x that satisfy a given property. A way to implement differential privacy [13] is to add geometrical noise to the result of f , so to obtain a probability distribution P on integers of the form P (z) = c e |z−f (x)| , where c is a normalization factor. The resulting mechanism can be interpreted as a probabilistic choice on protocols of the form f (x), f (x)+1, f (x)+2, . . . , f (x)−1, f (x)−2, . . ., where the probability assigned to f (x) + n and to f (x) − n decreases exponentially with n.
Example 2 (Dining cryptographers). Consider two agents running the dining cryptographers protocol [12], which consists in tossing a fair binary coin and then declaring the exclusive or ⊕ of their secret value x and the result of the coin. The protocol can be thought as the fair probabilistic choice of two protocols, one consisting simply of declaring x, and the other declaring x ⊕ 1.
Most of the work in the literature of quantitative information flow (QIF) considers passive attacks, in which the adversary only observes the system. Notable exceptions are the works [9,22,4], which consider attackers who interact with and influence the system, possibly in an adaptive way, with the purpose of maximizing the leakage of information.
Example 3 (CRIME attack). Compression Ratio Info-leak Made Easy (CRIME) [26] is a security exploit against secret web cookies over connections using the HTTPS and SPDY protocols and data compression. The idea is that the attacker can inject some content a in the communication of the secret x from the target site to the server. The server then compresses and encrypts the data, including both a and x, and sends back the result. By observing the length of the result, the attacker can then infer information about x. To mitigate the leakage, one possible defense would consist in transmitting, along with x, also an encryption method f selected randomly from a set F . Again, the resulting protocol can be seen as a composition, using probabilistic choice, of the protocols in the set F .
In all examples above the main use of the probabilistic choice is to obfuscate the relation between secrets and observables, thus reducing their correlationand, hence, the information leakage. To achieve this goal, it is essential that the attacker never comes to know the result of the choice. In the CRIME example, however, if f and a are chosen independently, then (in general) it is still better to choose f probabilistically, even if the adversary will come to know, afterwards, the choice of f . In fact, this is true also for the attacker: his best strategies (in general) are to chose a according to some probability distribution. Indeed, suppose that F = {f 1 , f 2 } are the defender's choices and A = {a 1 , a 2 } are the attacker's, and that f 1 (⋅, a 1 ) leaks more than f 1 (⋅, a 2 ), while f 2 (⋅, a 1 ) leaks less than f 2 (⋅, a 2 ). This is a scenario like the matching pennies in game theory: if one player selects an action deterministically, the other player may exploit this choice and get an advantage. For each player the optimal strategy is to play probabilistically, using a distribution that maximizes his own gain for all possible actions of the adversary. In zero-sum games, in which the gain of one player coincides with the loss of the other, the optimal pair of distributions always exists, and it is called saddle point. It also coincides with the Nash equilibrium, which is defined as the point in which neither of the two players gets any advantage in changing unilaterally his strategy.
Motivated by these examples, this paper investigates the two kinds of choice, visible and hidden (to the attacker), in a game-theoretic setting. Looking at them as language operators, we study their algebraic properties, which will help reason about their behavior in games. We consider zero-sum games, in which the gain (for the attacker) is represented by the leakage. While for visible choice it is appropriate to use the "classic" game-theoretic framework, for hidden choice we need to adopt the more general framework of the information leakage games proposed in [4]. This happens because, in contrast with standard game theory, in games with hidden choice the utility of a mixed strategy is a convex function of the distribution on the defender's pure actions, rather than simply the expected value of their utilities. We will consider both simultaneous games-in which each player chooses independently-and sequential games-in which one player chooses his action first. We aim at comparing all these situations, and at identifying the precise advantage of the hidden choice over the visible one.
To measure leakage we use the well-known information-theoretic model. A central notion in this model is that of entropy, but here we use its converse, vulnerability, which represents the magnitude of the threat. In order to derive results as general as possible, we adopt the very comprehensive notion of vulnerability as any convex and continuous function, as used in [9] and [6]. This notion has been shown [6] to subsume most information measures, including Bayes vulnerability (aka min-vulnerability, aka (the converse of) Bayes risk) [28,11], Shannon entropy [27], guessing entropy [23], and g-vulnerability [7].
The main contributions of this paper are: -We present a general framework for reasoning about information leakage in a game-theoretic setting, extending the notion of information leakage games proposed in [4] to both simultaneous and sequential games, with either hidden or visible choice. -We present a rigorous compositional way, using visible and hidden choice operators, for representing adversary and defender's actions in information leakage games. In particular, we study the algebraic properties of visible and hidden choice on channels, and compare the two kinds of choice with respect to the capability of reducing leakage, in presence of an adaptive attacker. -We provide a taxonomy of the various scenarios (simultaneous and sequential) showing when randomization is necessary, for either attacker or defender, to achieve optimality. Although it is well-known in information flow that the defender's best strategy is usually randomized, only recently it has been shown that when defender and adversary act simultaneously, the adversary's optimal strategy also requires randomization [4]. -We use our framework in a detailed case study of a password-checking protocol. The naive program, which checks the password bit by bit and stops when it finds a mismatch, is clearly very insecure, because it reveals at each attempt the maximum correct prefix. On the other hand, if we continue checking until the end of the string (time padding), the program becomes very inefficient. We show that, by using probabilistic choice instead, we can obtain a good trade-off between security and efficiency.
Plan of the paper. The remaining of the paper is organized as follows. In Section 2 we review some basic notions of game theory and quantitative information flow. In Section 3 we introduce our running example. In Section 4 we define the visible and hidden choice operators and demonstrate their algebraic properties. In Section 5, the core of the paper, we examine various scenarios for leakage games. In Section 6 we show an application of our framework to a password checker. In Section 7 we discuss related work and, finally, in Section 8 we conclude.

Preliminaries
In this section we review some basic notions from game theory and quantitative information flow. We use the following notation: Given a set I, we denote by DI the set of all probability distributions over I. Given µ ∈ DI, its support is the set of its elements with positive probability. We use i←µ to indicate that a value i∈I is sampled from a distribution µ on I.

Basic concepts from game theory
Two-player games Two-player games are a model for reasoning about the behavior of two players. In a game, each player has at its disposal a set of actions that he can perform, and he obtains some gain or loss depending on the actions chosen by both players. Gains and losses are defined using a real-valued payoff function. Each player is assumed to be rational, i.e., his choice is driven by the attempt to maximize his own expected payoff. We also assume that the set of possible actions and the payoff functions of both players are common knowledge.
In this paper we only consider finite games, in which the set of actions available to the players are finite. Next we introduce an important distinction between simultaneous and sequential games. In the following, we will call the two players defender and attacker.
Simultaneous games In a simultaneous game, each player chooses his action without knowing the action chosen by the other. The term "simultaneous" here does not mean that the players' actions are chosen at the same time, but only that they are chosen independently. Formally, such a game is defined as a tuple 5 (D, A, u d , u a ), where D is a nonempty set of defender's actions, A is a nonempty set of attacker's actions, u d ∶ D × A → R is the defender's payoff function, and u a ∶ D × A → R is the attacker's payoff function.
Each player may choose an action deterministically or probabilistically. A pure strategy of the defender (resp. attacker) is a deterministic choice of an action, i.e., an element d ∈ D (resp. a ∈ A). A pair (d, a) is called pure strategy profile, and u d (d, a), u a (d, a) represent the defender's and the attacker's payoffs, respectively. A mixed strategy of the defender (resp. attacker) is a probabilistic choice of an action, defined as a probability distribution δ ∈ DD (resp. α ∈ DA). A pair (δ, α) is called mixed strategy profile. The defender's and the attacker's expected payoff functions for mixed strategies are defined, respectively, as: A defender's mixed strategy δ ∈ DD is a best response to an attacker's mixed ) such that δ * is the best response to α * and vice versa. This means that in a Nash equilibrium, no unilateral deviation by any single player provides better payoff to that player. If δ * and α * are point distributions concentrated on some d * ∈ D and a * ∈ A respectively, then (δ * , α * ) is a pure-strategy Nash equilibrium, and will be denoted by (d * , a *

).
While not all games have a pure strategy Nash equilibrium, every finite game has a mixed strategy Nash equilibrium.
Sequential games In a sequential game players may take turns in choosing their actions. In this paper, we only consider the case in which each player moves only once, in such a way that one of the players (the leader ) chooses his action first, and commits to it, before the other player (the follower ) makes his choice. The follower may have total knowledge of the choice made by the leader, or only partial. We refer to the two scenarios by the terms perfect and imperfect information, respectively. We now give the precise definitions assuming that the leader is the defender. The case in which the leader is the attacker is similar.
A defender-first sequential game with perfect information is a tuple (D, D → A, u d , u a ) where D, A, u d and u a are defined as in simultaneous games. Also the strategies of the defender (the leader) are defined as in simultaneous games: an action d ∈ D for the pure case, and a distribution δ ∈ DD for the mixed one. On the other hand, a pure strategy for the attacker is a function s a ∶ D → A, which represents the fact that his choice of an action s a in A depends on the defender's choice d. An attacker's mixed strategy is a probability distribution σ a ∈ D(D → A) over his pure strategies. 6 The defender's and the attacker's expected payoff functions for mixed strategies are defined, respectively, as The case of imperfect information is typically formalized by assuming an indistinguishability (equivalence) relation over the actions chosen by the leader, representing a scenario in which the follower cannot distinguish between the actions belonging to the same equivalence class. The pure strategies of the followers, therefore, are functions from the set of the equivalence classes on the actions of the leader to his own actions. Formally, a defender-first sequential game with imperfect information is a tuple (D, K a → A, u d , u a ) where D, A, u d and u a are defined as in simultaneous games, and K a is a partition of D. The expected payoff functions are defined as before, except that now the argument of s a is the equivalence class of d. Note that in the case in which all defender's actions are indistinguishable from each other at the eyes of the attacker (totally imperfect information), we have K a = {D} and the expected payoff functions coincide with those of the simultaneous games.
Zero-sum games and Minimax Theorem A game (D, A, u d , u a ) is zero-sum if for any d ∈ D and any a ∈ A, the defender's loss is equivalent to the attacker's gain, i.e., u d (d, a) = −u a (d, a). For brevity, in zero-sum games we denote by u the attacker's payoff function u a , and by U the attacker's expected payoff U a . 7 Consequently, the goal of the defender is to minimize U , and the goal of the attacker is to maximize it.
In simultaneous zero-sum games the Nash equilibrium corresponds to the solution of the minimax problem (or equivalently, the maximin problem), namely, the strategy profile (δ * , α * ) such that U (δ * , α * ) = min δ max α U (δ, α). The von Neumann's minimax theorem, in fact, ensures that such solution (which always exists) is stable.
Theorem 1 (von Neumann's minimax theorem) Let X ⊂ R m and Y ⊂ R n be compact convex sets, and U ∶ X × Y → R be a continuous function such that U (x, y) is a convex function in x ∈ X and a concave function in y ∈ Y. Then min x∈X max y∈Y U (x, y) = max y∈Y min x∈X U (x, y). 6 The definition of the mixed strategies as D(D → A) means that the attacker draws a function s a ∶ D → A before he knows the choice of the defender. In contrast, the so-called behavioral strategies are defined as functions D → DA, and formalize the idea that the draw is made after the attacker knows such choice. In our setting, these two definitions are equivalent, in the sense that they yield the same payoff. 7 Conventionally in game theory the payoff u is set to be that of the first player, but we prefer to look at the payoff from the point of view of the attacker to be in line with the definition of payoff as vulnerability.
A related property is that, under the conditions of Theorem 1, there exists a saddle point (x * , y * ) s.t., for all x∈X and y∈Y: U (x * , y)≤U (x * , y * )≤U (x, y * ).
The solution of the minimax problem can be obtained by using convex optimization techniques. In case U (x, y) is affine in x and in y, we can also use linear optimization.
In case D and A contain two elements each, there is a closed form for the solution. Let D = {d 0 , d 1 } and A = {a 0 , a 1 } respectively. Let u ij be the utility of the defender on d i , a j . Then the Nash equilibrium (δ * , α * ) is given by: δ * (d 0 ) = (u 11 −u 10 ) /(u 00 −u 01 −u 10 +u 11 ) and α * (a 0 ) = (u 11 −u 01 ) /(u 00 −u 01 −u 10 +u 11 ) if these values are in [0, 1]. Note that, since there are only two elements, the strategy δ * is completely specified by its value in d 0 , and analogously for α * .

Quantitative information flow
Finally, we briefly review the standard framework of quantitative information flow, which is concerned with measuring the amount of information leakage in a (computational) system.

Secrets and vulnerability
A secret is some piece of sensitive information the defender wants to protect, such as a user's password, social security number, or current location. The attacker usually only has some partial knowledge about the value of a secret, represented as a probability distribution on secrets called a prior. We denote by X the set of possible secrets, and we typically use π to denote a prior belonging to the set DX of probability distributions over X .
The vulnerability of a secret is a measure of the utility that it represents for the attacker. In this paper we consider a very general notion of vulnerability, following [6], and we define a vulnerability V to be any continuous and convex function of type DX → R. It has been shown in [6] that these functions coincide with the set of g-vulnerabilities, and are, in a precise sense, the most general information measures w.r.t. a set of basic axioms. 8 Channels, posterior vulnerability, and leakage Computational systems can be modeled as information theoretic channels. A channel C ∶ X × Y → R is a function in which X is a set of input values, Y is a set of output values, and C(x, y) represents the conditional probability of the channel producing output y ∈ Y when input x ∈ X is provided. Every channel C satisfies 0 ≤ C(x, y) ≤ 1 for all x ∈ X and y ∈ Y, and ∑ y∈Y C(x, y) = 1 for all x ∈ X .
A distribution π ∈ DX and a channel C with inputs X and outputs Y induce a joint distribution p(x, y) = π(x)C(x, y) on X × Y, producing joint random variables X, Y with marginal probabilities p(x) = ∑ y p(x, y) and p(y) = ∑ x p(x, y), and conditional probabilities p(x|y) = p(x,y) /p(y) if p(y) ≠ 0. For a given y (s.t. p(y) ≠ 0), the conditional probabilities p(x|y) for each x ∈ X form the posterior distribution p X|y .
A channel C in which X is a set of secret values and Y is a set of observable values produced by a system can be used to model computations on secrets. Assuming the attacker has prior knowledge π about the secret value, knows how a channel C works, and can observe the channel's outputs, the effect of the channel is to update the attacker's knowledge from π to a collection of posteriors p X|y , each occurring with probability p(y).
Given a vulnerability V, a prior π, and a channel C, the posterior vulnerability V [π, C] is the vulnerability of the secret after the attacker has observed the output of the channel C. Formally: It is known from the literature [6] that the posterior vulnerability is a convex function of π. Namely, for any channel C, any family of distributions {π i }, and any set of convex coefficients {c i }, we have: The (information) leakage of channel C under prior π is a comparison between the vulnerability of the secret before the system was run-called prior vulnerability-and the posterior vulnerability of the secret. Leakage reflects by how much the observation of the system's outputs increases the attacker's information about the secret. It can be defined either additively

An illustrative example
Program 0 We introduce an example which will serve as running example through the paper. Although admittedly contrived, this example is simple and yet produces different leakage measures for all different combinations of visible/invisible choice and simultaneous/sequential games, thus providing a way to compare all different scenarios we are interested in.
Consider that a binary secret must be processed by a program. As usual, a defender wants to protect the secret value, whereas an attacker wants to infer it by observing the system's output. Assume the defender can choose which among two alternative versions of the program to run. Both programs take the secret value x as high input, and a binary low input a whose value is chosen by the attacker. They both return the output in a low variable y. 9 Program 0 returns the binary product of x and a, whereas Program 1 flips a coin with bias a /3 (i.e., a coin which returns heads with probability a /3) and returns x if the result is heads, and the complementx of x otherwise. The two programs are represented in Figure 1.
The combined choices of the defender's and of the attacker's determine how the system behaves. Let D={0, 1} represent the set of the defender's choicesi.e., the index of the program to use-, and A = {0, 1} represent the set of the attacker's choices-i.e., the value of the low input a. We shall refer to the elements of D and A as actions. For each possible combination of actions d ∈ D and a ∈ A, we can construct a channel C da modeling how the resulting system behaves. Each channel C da is a function of type X × Y → R, where X = {0, 1} is the set of possible high input values for the system, and Y = {0, 1} is the set of possible output values from the system. Intuitively, each channel provides the probability that the system (which was fixed by the defender) produces output y ∈ Y given that the high input is x ∈ X (and that the low input was fixed by the attacker). The four possible channels are depicted as matrices below.
Note that channel C 00 does not leak any information about the input x (i.e., it is non-interferent ), whereas channels C 01 and C 10 completely reveal x. Channel C 11 is an intermediate case: it leaks some information about x, but not all.
We want to investigate how the defender's and the attacker's choices influence the leakage of the system. For that we can just consider the (simpler) notion of posterior vulnerability, since in order to make the comparison fair we need to assume that the prior is always the same in the various scenarios, and this implies that the leakage is in a one-to-one correspondence with the posterior vulnerability (this happens for both additive and multiplicative leakage). Table 1. Vulnerability of each channel C da in the running example.
For this example, assume we are interested in Bayes vulnerability [11,28], defined as V(π) = max x π(x) for every π ∈ DX . Assume for simplicity that the prior is the uniform prior π u . In this case we know from [10] that the posterior Bayes vulnerability of a channel is the sum of the greatest elements of each column, divided by the total number of inputs. Table 1 provides the Bayes vulnerability V da def = V [π u , C da ] of each channel considered above. Naturally, the attacker aims at maximizing the vulnerability of the system, while the defender tries to minimize it. The resulting vulnerability will depend on various factors, in particular on whether the two players make their choice simultaneously (i.e. without knowing the choice of the opponent) or sequentially. Clearly, if the choice of a player who moves first is known by an opponent who moves second, the opponent will be in advantage. In the above example, for instance, if the defender knows the choice a of the attacker, the most convenient choice for him is to set d = a, and the vulnerability will be at most 2 /3 . Vice versa, if the attacker knows the choice d of the defender, the most convenient choice for him is to set a ≠ d. The vulnerability in this case will be 1.
Things become more complicated when players make choices simultaneously. None of the pure choices of d and a are the best for the corresponding player, because the vulnerability of the system depends also on the (unknown) choice of the other player. Yet there is a strategy leading to the best possible situation for both players (the Nash equilibrium), but it is mixed (i.e., probabilistic), in that the players randomize their choices according to some precise distribution.
Another factor that affects vulnerability is whether or not the defender's choice is known to the attacker at the moment in which he observes the output of the channel. Obviously, this corresponds to whether or not the attacker knows what channel he is observing. Both cases are plausible: naturally the defender has all the interest in keeping his choice (and, hence, the channel used) secret, since then the attack will be less effective (i.e., leakage will be smaller). On the other hand, the attacker may be able to identify the channel used anyway, for instance because the two programs have different running times. We will call these two cases hidden and visible choice, respectively.
It is possible to model players' strategies, as well as hidden and visible choices, as operations on channels. This means that we can look at the whole system as if it were a single channel, which will turn out to be useful for some proofs of our technical results. Next section is dedicated to the definition of these operators. We will calculate the exact values for our example in Section 5.

Visible and hidden choice operators on channels
In this section we define matrices and some basic operations on them. Since channels are a particular kind of matrix, we use these matrix operations to define the operations of visible and hidden choice among channels, and to prove important properties of these channel operations.

Matrices, and their basic operators
Given two sets X and Y, a matrix is a total function of type X × Y → R.
If it is also the case that Y 1 = Y 2 , we say that the matrices have the same type. The scalar multiplication r⋅M between a scalar r and a matrix M is defined as usual, and so is the summation ∑ i∈I M i (x, y) = M i 1 (x, y) + . . . + M i n (x, y) of a family {M i } i∈I of matrices all of a same type.
Given a family {M i } i∈I of compatible matrices s.t. each M i has type X ×Y i → R, their concatenation ◇ i∈I is the matrix having all columns of every matrix in the family, in such a way that every column is tagged with the matrix it came from. Formally, (◇ i∈I M i ) (x, (y, j)) = M j (x, y), if y ∈ Y j , and the resulting matrix has type X × ⨆ i∈I Y i → R. 10 When the family {M i } has only two elements we may use the binary version ⋄ of the concatenation operator. The following depicts the concatenation of two matrices M 1 and M 2 in tabular form.

Channels, and their hidden and visible choice operators
A channel is a stochastic matrix, i.e., all elements are non-negative, and all rows sum up to 1. Here we will define two operators specific for channels. In the following, for any real value 0 ≤ p ≤ 1, we denote byp the value 1 − p.
Hidden choice The first operator models a hidden probabilistic choice among channels. Consider a family {C i } i∈I of channels of a same type. Let µ ∈ DI be a probability distribution on the elements of the index set I. Consider an input x is fed to one of the channels in {C i } i∈I , where the channel is randomly picked according to µ. More precisely, an index i ∈ I is sampled with probability µ(i), then the input x is fed to channel C i , and the output y produced by the channel is then made visible, but not the index i of the channel that was used. Note that we consider hidden choice only among channels of a same type: if the sets of outputs were not identical, the produced output might implicitly reveal which channel was used. Formally, given a family Proposition 2 Given a family {C i } i∈I of channels of type X × Y → R, and a distribution µ on I, the hidden choice ⨊ i←µ C i is a channel of type X × Y → R.
In the particular case in which the family {C i } has only two elements C i 1 and C i 2 , the distribution µ on indexes is completely determined by a real value 0 ≤ p ≤ 1 s.t. µ(i 1 ) = p and µ(i 2 ) =p. In this case we may use the binary version p ⊕ of the hidden choice operator: The example below depicts the hidden choice between channels C 1 and C 2 , with probability p= 1 /3.
Visible choice The second operator models a visible probabilistic choice among channels. Consider a family {C i } i∈I of compatible channels. Let µ ∈ DI be a probability distribution on the elements of the index set I. Consider an input x is fed to one of the channels in {C i } i∈I , where the channel is randomly picked according to µ. More precisely, an index i ∈ I is sampled with probability µ(i), then the input x is fed to channel C i , and the output y produced by the channel is then made visible, along with the index i of the channel that was used. Note that visible choice makes sense only between compatible channels, but it is not required that the output set of each channel be the same. Formally, given {C i } i∈I of compatible channels s.t. each C i has type X ×Y i → R, and a distribution µ on I, the visible choice operator i←µ is defined as In the particular case the family {C i } has only two elements C i 1 and C i 2 , the distribution µ on indexes is completely determined by a real value 0 ≤ p ≤ 1 s.t. µ(i 1 ) = p and µ(i 2 ) =p. In this case we may use the binary version p of the visible choice operator: The following depicts the visible choice betwee channels C 1 and C 3 , with probability p= 1 /3.

Properties of hidden and visible choice operators
We now prove algebraic properties of channel operators. These properties will be useful when we model a (more complex) protocol as the composition of smaller channels via hidden or visible choice. Whereas the properties of hidden choice hold generally with equality, those of visible choice are subtler. For instance, visible choice is not idempotent, since in general However, idempotency and other properties involving visible choice hold if we replace the notion of equality with the more relaxed notion of "equivalence" between channels. Intuitively, two channels are equivalent if they have the same input space and yield the same value of vulnerability for every prior and every vulnerability function.
Definition 4 (Equivalence of channels) Two compatible channels C 1 and C 2 with domain X are equivalent, denoted by C 1 ≈ C 2 , if for every prior π ∈ DX and every posterior vulnerability V we have V [π, Two equivalent channels are indistinguishable from the point of view of information leakage, and in most cases we can just identify them. Indeed, nowadays there is a tendency to use abstract channels [24,6], which capture exactly the important behavior with respect to any form of leakage. In this paper, however, we cannot use abstract channels because the hidden choice operator needs a concrete representation in order to be defined unambiguously.
The first properties we prove regard idempotency of operators, which can be used do simplify the representation of some protocols.
Proposition 5 (Idempotency) Given a family {C i } i∈I of channels s.t. C i = C for all i ∈ I, and a distribution µ on I, then: (a) ⨊ i←µ C i = C; and (b) The following properties regard the reorganization of operators, and they will be essential in some technical results in which we invert the order in which hidden and visible choice are applied in a protocol.
Proposition 6 ("Reorganization of operators") Given a family {C ij } i∈I,j∈J of channels indexed by sets I and J , a distribution µ on I, and a distribution η on J :

Properties of vulnerability w.r.t. channel operators
We now derive some relevant properties of vulnerability w.r.t. our channel operators, which will be later used to obtain the Nash equilibria in information leakage games with different choice operations. The first result states that posterior vulnerability is convex w.r.t. hidden choice (this result was already presented in [4]), and linear w.r.t. to visible choice.
Theorem 7 Let {C i } i∈I be a family of channels, and µ be a distribution on I. Then, for every distribution π on X , and every vulnerability V: (a) posterior vulnerability is convex w.r.t. to hidden choice: The next result is concerned with posterior vulnerability under the composition of channels using both operators.
Corollary 8 Let {C ij } i∈I,j∈J be a family of channels, all with domain X and with the same type, and let π ∈ DX , and V be any vulnerability. Define U ∶ DI × DJ → R as follows: U (µ, η) def = V π, ⨊ i←µ j ←η C ij . Then U is convex on µ and linear on η.

Information leakage games
In this section we present our framework for reasoning about information leakage, extending the notion of information leakage games proposed in [4] from only simultaneous games with hidden choice to both simultaneous and sequential games, with either hidden or visible choice.
In an information leakage game the defender tries to minimize the leakage of information from the system, while the attacker tries to maximize it. In this basic scenario, their goals are just opposite (zero-sum). Both of them can influence the execution and the observable behavior of the system via a specific set of actions. We assume players to be rational (i.e., they are able to figure out what is the best strategy to maximize their expected payoff), and that the set of actions and the payoff function are common knowledge.
Players choose their own strategy, which in general may be mixed (i.e. probabilistic), and choose their action by a random draw according to that strategy. After both players have performed their actions, the system runs and produces some output value which is visible to the attacker and may leak some information about the secret. The amount of leakage constitutes the attacker's gain, and the defender's loss.
To quantify the leakage we model the system as an information-theoretic channel (cf. Section 2.2). We recall that leakage is defined as the difference (additive leakage) or the ratio (multiplicative leakage) between posterior and prior vulnerability. Since we are only interested in comparing the leakage of different channels for a given prior, we will define the payoff just as the posterior vulnerability, as the value of prior vulnerability will be the same for every channel.

Defining information leakage games
An (information) leakage game consists of: (1) two nonempty sets D, A of defender's and attacker's actions respectively, (2) a function C ∶ D×A → (X ×Y → R) that associates to each pair of actions (d, a) ∈ D×A a channel C da ∶ X ×Y → R, (3) a prior π ∈ DX on secrets, and (4) a vulnerability measure V. The payoff function u ∶ D×A → R for pure strategies is defined as u(d, a) We have only one payoff function because the game is zero-sum.
Like in traditional game theory, the order of actions and the extent by which a player knows the move performed by the opponent play a critical role in deciding strategies and determining the payoff. In security, however, knowledge of the opponent's move affects the game in yet another way: the effectiveness of the attack, i.e., the amount of leakage, depends crucially on whether or not the attacker knows what channel is being used. It is therefore convenient to distinguish two phases in the leakage game: Phase 1: Each player determines the most convenient strategy (which in general is mixed) for himself, and draws his action accordingly. One of the players may commit first to his action, and his choice may or may not be revealed to the follower. In general, knowledge of the leader's action may help the follower choose a more advantageous strategy. Phase 2: The attacker observes the output of the selected channel C da and performs his attack on the secret. In case he knows the defender's action, he is able to determine the exact channel C da being used (since, of course, the attacker knows his own action), and his payoff will be the posterior vulnerability V [π, C da ]. However, if the attacker does not know exactly which channel has been used, then his payoff will be smaller.
Note that the issues raised in Phase 2 are typical of leakage games; they do not have a correspondence (to the best of our knowledge) in traditional game theory. On the other hand, these issues are central to security, as they reflect the principle of preventing the attacker from inferring the secret by obfuscating the link between secret and observables.
Following the above discussion, we consider various possible scenarios for games, along two lines of classification. First, there are three possible orders for the two players' actions.
Simultaneous: The players choose (draw) their actions in parallel, each without knowing the choice of the other. Sequential, defender-first: The defender draws an action, and commits to it, before the attacker does. Sequential, attacker-first: The attacker draws an action, and commits to it, before the defender does.
Note that these sequential games may present imperfect information (i.e., the follower may not know the leader's action). Second, the visibility of the defender's action during the attack may vary: Visible choice: The attacker knows the defender's action when he observes the output of the channel, and therefore he knows which channel is being used. Visible choice is modeled by the operator . Hidden choice: The attacker does not know the defender's action when he observes the output of the channel, and therefore in general he does not exactly know which channel is used (although in some special cases he may infer it from the output). Hidden choice is modeled by the operator ⨊.
Note that the distinction between sequential and simultaneous games is orthogonal to that between visible and hidden choice. Sequential and simultaneous games model whether or not, respectively, the follower's choice can be affected by knowledge of the leader's action. This dichotomy captures how knowledge about the other player's actions can help a player choose his own action. On the other hand, visible and hidden choice capture whether or not, respectively, the attacker is able to fully determine the channel representing the system, once defender and attacker's actions have already been fixed. This dichotomy reflects the different amounts of information leaked by the system as viewed by the adversary. For instance, in a simultaneous game neither player can choose his action based on the choice of the other. However, depending on whether or not the defender's choice is visible, the adversary will or will not, respectively, be able to completely recover the channel used, which will affect the amount of leakage. If we consider also the subdivision of sequential games into perfect and imperfect information, there are 10 possible different combinations. Some, however, make little sense. For instance, defender-first sequential game with perfect information (by the attacker) does not combine naturally with hidden choice ⨊, since that would mean that the attacker knows the action of the defender and choses his strategy accordingly, but forgets it at the moment of the attack. (We assume perfect recall, i.e., the players never forget what they have learned.) Yet other combinations are not interesting, such as the attacker-first sequential game with (totally) imperfect information (by the defender), since it coincides with the simultaneous-game case. Note that attacker and defender are not symmetric with respect to hiding/revealing their actions a and d, since the knowledge of a affects the game only in the usual sense of game theory, while the knowledge of d also affects the computation of the payoff (cf. "Phase 2" above). Table 2 lists the meaningful and interesting combinations. In Game V we assume imperfect information: the attacker does not know the action chosen by the defender. In all the other sequential games we assume that the follower has perfect information. In the remaining of this section, we discuss each game individually, using the example of Section 3 as running example. From Theorem 7(b) we derive: U (δ, α) = V π, d←δ a←α C da . hence the whole system can be equivalently regarded as the channel d←δ a←α C da . Still from Theorem 7(b) we can derive that U (δ, α) is linear in δ and α. Therefore the Nash equilibrium can be computed using the minimax method (cf. Section 2.1).
Game II (defender 1 st with visible choice) This defender-first sequential game can be represented by a tuple (D, D → A, u). A mixed strategy profile is of the form (δ, σ a ), with δ ∈ DD and σ a ∈ D(D → A), and the corresponding Again, from Theorem 7(b) we derive: U (δ, σ a ) = V π, d←δ s a ←σ a C ds a (d) and hence the system can be expressed as channel d←δ s a ←σ a C ds a (d) . From the same Theorem we also derive that U (δ, σ a ) is linear in δ and σ a , so the mutually optimal strategies can be obtained again by solving the minimax problem. In this case, however, the solution is particularly simple, because it is known that there are optimal strategies which are deterministic. Hence it is sufficient for the defender to find the action d which minimizes max a u(d, a). In summary, in the sequential case, whether the leader is the defender or the attacker (Games II and III, respectively), the minimax problem has always a deterministic solution [25].

Theorem 11
In a defender-first sequential game with visible choice, there exist d ∈ D and a ∈ A such that, for every δ ∈ DD and σ a ∈ D(D → A) we have: a). Similarly, in an attacker-first sequential game with visible choice, there exist d ∈ D and a ∈ A such that, for every σ d ∈ D(A → D) and α ∈ DA we have: Example 12 Consider now the example of Section 3 in the setting of Game III. If the attacker chooses 0 then the defender chooses 0 and the payoff is 1 /2. If the attacker chooses 1 then the defender chooses 1 and the payoff is 2 /3. The latter case is more convenient for the attacker, hence the solution of the game is the strategy profile (1, 1). (D, A, u). However, it is not an ordinary game in the sense that the payoff a mixed strategy profile cannot be defined by averaging the payoff of the corresponding pure strategies. More precisely, the payoff of a mixed profile is defined by averaging on the strategy of the attacker, but not on that of the defender. In fact, when hidden choice is used, there is an additional level of uncertainty in the relation between the observables and the secret from the point of view of the attacker, since he is not sure about which channel is producing those observables. A mixed strategy δ for the defender produces a convex combination of channels (the channels associated to the pure strategies) with the same coefficients, and we know from previous sections that the vulnerability is a convex function of the channel, and in general is not linear.

Game IV (simultaneous with hidden choice) This game is a tuple
In order to define the payoff of a mixed strategy profile (δ, α), we need therefore to consider the channel that the attacker perceives given his limited knowledge. Let us assume that the action that the attacker draws from α is a. He does not know the action of the defender, but we can assume that he knows his strategy (each player can derive the optimal strategy of the opponent, under the assumption of common knowledge and rational players).
The channel the attacker will see is ⨊ d←δ C da , obtaining a corresponding payoff of V π, ⨊ d←δ C da . By averaging on the strategy of the attacker we ob- Theorem 7(b) we derive: U (δ, α) = V π, a←α ⨊ d←δ C da and hence the whole system can be equivalently regarded as channel a←α ⨊ d←δ C da . Note that, by Proposition 6(c), the order of the operators is interchangeable, and the system can be equivalently regarded as ⨊ d←δ a←α C da . This shows the robustness of this model.
From Corollary 8 we derive that U (δ, α) is convex in δ and linear in η, hence we can compute the Nash equilibrium by the minimax method.
Example 13 Consider now the example of Section 3 in the setting of Game IV. For δ ∈ DD and α ∈ DA, let p = δ(0) and q = α(0). The system can be represented by the channel (C 00 p ⊕ C 10 ) q (C 01 p ⊕ C 11 ) represented below. C 00 p ⊕ C 10 y = 0 y = 1 For uniform π, we have V π, C 00 p ⊕ C 10 =1 − 1 /2; and V π, C 10 p ⊕ C 11 is equal to 2 /3 − 2 /3 p if p ≤ 1 /4, and equal to 1 /3 + 2 /3 p if p > 1 /4. Hence the payoff, expressed in terms of p and q, is is given by p * = argmin p max q U (p, q) and q * = argmax q min p U (p, q), and by solving the above, we obtain p * = q * = 4 /7.
Game V (defender 1 st with hidden choice) This is a defender-first sequential game with imperfect information, hence it can be represented as a tuple of the form (D, K a → A, u d , u a ), where K a is a partition of D. Since we are assuming perfect recall, and the attacker does not know anything about the action chosen by the defender in Phase 2, i.e., at the moment of the attack (except the probability distribution determined by his strategy), we must assume that the attacker does not know anything in Phase 1 either. Hence the indistinguishability relation must be total, i.e., K a = {D}. But {D} → A is equivalent to A, hence this kind of game is equivalent to Game IV.
It is also a well known fact in Game theory that when in a sequential game the follower does not know the leader's move before making his choice, the game is equivalent to a simultaneous game. 11 Game VI (attacker 1 st with hidden choice) This game is also a sequential game with the attacker as the leader, hence it is a tuple of the form (A → D, A, u). It is similar to Game III, except that the payoff is convex on the strategy of the defender, instead of linear. The payoff of the mixed strategy , so the whole system can be equivalently regarded as channel a←α ⨊ s d ←σ d C s d (a)a . Also in this case the minimax problem has a deterministic solution, but only for the attacker.

Theorem 14
In an attacker-first sequential game with hidden choice, there exist a ∈ A and δ ∈ DD such that, for every α ∈ DA and Example 15 Consider again the example of Section 3, this time in the setting of Game VI. Consider also the calculations made in Example 13, we will use the same results and notation here. In this setting, the attacker is obliged to make its choice first. If he chooses 0, which corresponds to committing to the system C 00 p ⊕ C 10 , then the defender will choose p = 1 /4, which minimizes its vulnerability. If he chooses 1, which corresponds to committing to the system C 01 p ⊕ C 11 , the defender will choose p = 1, which minimizes its vulnerability of the above channel. In both cases, the leakage is p = 1 /2, hence both these strategies are solutions to the minimax. Note that in the first case the strategy of the defender is mixed, while that of the attacker is always pure.

Comparing the games
If we look at the various payoffs obtained for the running example in the various games, we obtain the following values (listed in decreasing order): II ∶ 1; I ∶ 4 /5; III ∶ 2 /3; IV ∶ 4 /7; V ∶ 4 /7; VI ∶ 1 /2. This order is not accidental: for any vulnerability function, and for any prior, the various games are ordered, with respect to the payoff, as shown in Figure 2. The relations between II, I, and III, and between IV-V and VI come from the fact that, in any zero-sum sequential game the leader's payoff will be less or equal to his payoff in the corresponding simultaneous game. We think this result is well-known in game theory, but we give the hint of the proof nevertheless, for the sake of clarity.
Theorem 16 It is the case that: Proof. We prove the first inequality in (a). Independently of δ, consider the attacker strategy τ a that assigns probability 1 to the function s a defined as s a (d) = argmax a V [π, C da ]. Then we have that Note that the strategy τ a is optimal for the adversary, so the first of the above inequalities is actually an equality. All other cases can be proved with an analogous reasoning.

⊓ ⊔
Concerning III and IV-V: these are not related. In the running example the payoff for III is higher than for IV-V, but it is easy to find other cases in which the situation is reversed. For instance, if in the running example we set C 11 to be the same as C 00 , the payoff for III will be 1 /2, and that for IV-V will be 2 /3.
Finally, the relation between III and VI comes from the fact that they are both attacker-first sequential games, and the only difference is the way in which the payoff is defined. Then, just observe that in general we have, for every a ∈ A and every δ ∈ DD: V π, ⨊ d←δ C da ≤ V π, d←δ C da .
The relations in Figure 2 can be used by the defender as guidelines to better protect the system, if he has some control over the rules of the game. Obviously, for the defender the games lower in the ordering are to be preferred.  In this section we apply our gametheoretic, compositional approach to show how a defender can mitigate an attacker's typical timing side-channel attack while avoiding the usual burden imposed on the password-checker's efficiency.
Consider the password-checker PWD 123 of Figure 3, which performs a bitwise-check of a 3-bit low-input a=a 1 a 2 a 3 , provided by the attacker, against a 3-bit secret password x=x 1 x 2 x 3 . The low-input is rejected as soon as it mismatches the secret, and is accepted otherwise.
The attacker can choose low-inputs to try to gain information about the password. Obviously, in case PWD 123 accepts the low-input, the attacker learns the password value is a=x. Yet, even when the lowinput is rejected, there is some leakage of information: from the duration of the execution the attacker can estimate how many iterations have been performed before the low-input was rejected, thus inferring a prefix of the secret password.
To model this scenario, let X = {000, 001, . . . , 111} be the set of all possible 3-bit passwords, and Y = {(F, 1), (F, 2), (F, 3), (T, 3)} be the set of observables produced by the system. Each observable is an ordered pair whose first element indicates whether the password was accepted (T or F ), and the second element indicates the duration of the computation (1, 2, or 3 iterations). For instance, channel C 123,101 in Figure 4 models PWD 123 's behavior when the attacker provides low-input a=101.
We will adopt as a measure of information Bayes vulnerability [28]. The prior Bayes vulnerability of a distribution π∈DX is defined as V g [π] = max x∈X π x , and represents the probability that the attacker guesses correctly the password in one try. For instance, if the distribution on all possible 3-bit passwords iŝ π = (0.0137, 0.0548, 0.2191, 0.4382, 0.0002, 0.0002, 0.0548, 0.2191), its prior Bayes vulnerability is V [π] =0.4382.
The posterior Bayes vulnerability of a prior π and a channel C∶X ×Y→R is defined as V [π, C] = ∑ y∈Y max x∈X π x C(x, y), and it represents the probability that the attacker guesses correctly the password in one try, after he observes the output of the channel (i.e., after he has measured the time needed for the checker to accept or reject the low-input). For priorπ above, the posterior Bayes vulnerability of channel C 123,101 is V π, C 123,101 =0.6577 (which represents an increase in Bayes vulnerability of about 50%), and the expected running time for this checker is of 1.2747 iterations.
A way to mitigate this timing side-channel is to make the checker's execution time independent of the secret. Channel C cons,101 from Figure 4 models a checker that does that (by eliminating the break command within the loop in PWD 123 ) when the attacker's low-input is a=101. This channel's posterior Bayes vulner-ability is V π, C 123,101 =0.4384, which brings the multiplicative Bayes leakage down to an increase of only about 0.05%. However, the expected running time goes up to 3 iterations (an increase of about 135% w.r.t. that of C 123,101 ). Seeking some compromise between security and efficiency, assume that the defender can employ passwordcheckers that perform the bitwise comparison among low-input a and secret password x in different orders. More precisely, there is one version of the checker for every possible order in which the index i ranges in the control of the loop. For instance, while PWD 123 checks the bits in the order 1, 2, 3, the alternative algorithm PWD 231 uses the order 2, 3, 1.
To determine a defender's best choice of which versions of the checker to run, we model this problem as game. The attacker's actions A = {000, 001, . . . , 111} are all possible low-inputs to the checker, and the defender's D = {123, 132, 213, 231, 312, 321} are all orders to perform the comparison. Hence, there is a total of 48 possible channels C ad ∶X ×Y→R, one for each combination of d∈D, a∈A.
In our framework, the utility of a mixed strategy profile (δ, α) is given by U (δ, α) = E a←α V π, ⨊ d←δ C da . For each pure strategy profile (d, a), the payoff of the game will be the posterior Bayes vulnerability of the resulting channel C da (since, if we measuring leakage, the prior vulnerability is the same for every channel once the prior is fixed). Table 3 depicts such payoffs. Note that the attacker's and defender's actions substantially affect the effectiveness of the attack: vulnerability ranges between 0.4934 and 0.9311 (and so multiplicative leakage is in the range between an increase of 12% and one of 112%). Using techniques from [4], we can compute the best (mixed) strategy for the defender in this game, which turns out to be δ * = (0.1667, 0.1667, 0.1667, 0.1667, 0.1667, 0.1667). This strategy is part of an equilibrium and guarantees that for any choice of the attacker the posterior Bayes vulnerability is at most 0.6573 (so the multiplicative leakage is bounded by 50%, an intermediate value between the minimum of about 12% and the maximum of about 112%). It is interesting to note that the expected running time, for any action of the attacker, is bounded by at most
In the context of quantitative information flow, most works consider only passive attackers. Boreale and Pampaloni [9] consider adaptive attackers, but not adaptive defenders, and show that in this case the adversary's optimal strategy can be always deterministic. Mardziel et al. [22] propose a model for both adaptive attackers and defenders, but in none of their extensive case-studies the attacker needs a probabilistic strategy to maximize leakage. In this paper we characterize when randomization is necessary, for either attacker or defender, to achieve optimality in our general information leakage games.
Security games have been employed to model and analyze payoffs between interacting agents, especially between a defender and an attacker. Korzhyk et al. [20] theoretically analyze security games and study the relationships between Stackelberg and Nash Equilibria under various forms of imperfect information. Khouzani and Malacaria [19] study leakage properties when perfect secrecy is not achievable due to constraints on the allowable size of the conflating sets, and provide universally optimal strategies for a wide class of entropy measures, and for g-entropies. These works, contrarily to ours, do not consider games with hidden choice, in which optimal strategies differ from traditional game-theory.
Several security games have modeled leakage when the sensitive information are the defender's choices themselves, rather than a system's high input. For instance, Alon et al. [2] propose zero-sum games in which a defender chooses probabilities of secrets and an attacker chooses and learns some of the defender's secrets. Then they present how the leakage on the defender's secrets gives influences on the defender's optimal strategy. More recently, Xu et al. [30] show zero-sum games in which the attacker obtains partial knowledge on the security resources that the defender protects, and provide the defender's optimal strategy under the attacker's such knowledge.
Regarding channel operators, sequential and parallel composition of channels have been studied (e.g., [18]), but we are unaware of any explicit definition and investigation of hidden and visible choice operators. Although Kawamoto et al. [17] implicitly use the hidden choice to model a probabilistic system as the weighted sum of systems, they do not derive the set of algebraic properties we do for this operator, and for its interaction with the visible choice operator.

Conclusion and future work
In this paper we used protocol composition to model the introduction of noise performed by the defender to prevent leakage of sensitive information. More precisely, we formalized visible and hidden probabilistic choices of different protocols. We then formalized the interplay between defender and adversary in a game-theoretic framework adapted to the specific issues of QIF, where the payoff is information leakage. We considered various kinds of leakage games, depending on whether players act simultaneously or sequentially, and whether the choices of the defender are visible or not to the adversary. We established a hierarchy of these games, and provided methods for finding the optimal strategies (at the points of equilibrium) in the various cases.
As future research, we would like to extend leakage games to the case of repeated observations, i.e., when the attacker can observe the outcomes of the system in successive runs, under the assumption that both attacker and defender may change the channel in each run. We would also like to extend our framework to non zero-sum games, in which the costs of attack and defense are not equivalent, and to analyze differentially-private mechanisms.

A Proofs of Technical Results
In this section we provide proofs for our technical results.

A.1 Preliminaries for proofs
We start by providing some necessary background for the subsequent technical proofs.
Definition 4 states that two compatible channels (i.e., with the same input space) are equivalent if yield the same value of vulnerability for every prior and every vulnerability function. The result below, from the literature, provides necessary and sufficient conditions for two channels being equivalent. The result employs the extension of channels with an all-zero column as follows. For any channel C of type X × Y → R, its zero-column extension C 0 is the channel of Lemma 17 (Characterization of channel equivalence [7,24]) Two channels C 1 and C 2 are equivalent iff every column of C 1 is a convex combination of columns of C 0 2 , and every column of C 2 is a convex combination of columns of C 0 1 .
Note that the result above implies that for being equivalent, any two channels must be compatible.

A.2 Proofs of Section 4
Proposition 2 Given a family {C i } i∈I of channels of type X × Y → R, and a distribution µ on I, the hidden choice ⨊ i←µ C i is a channel of type X × Y → R.
Proof. Since hidden choice is defined as a summation of matrices, the type of ⨊ i←µ C i is the same as the type of every C i in the family.
To see that ⨊ i←µ C i is a channel (i.e., all of its entries are non-negative, and all of its rows sum up to 1), first note that, since each C i in the family is a channel matrix, C i (x, y) lies in the interval [0, 1] for all x ∈ X , y ∈ Y. Since µ is a set of convex coefficients, from the definition of hidden choice it follows that also ∑ i∈I µ(i)C i (x, y) must lie in the interval [0, 1] for every x, y.
Second, note that for all x ∈ X : Proposition 3 Given a family {C i } i∈I of compatible channels s.t. each C i has type X × Y i → R, and a distribution µ on I, the result of the visible choice Proof. Visible choice applied to a family {C i } of channels scales each matrix C i by a factor µ(i), which preserves the type X × Y i → R of each matrix, and then concatenates all the matrices so produced, yielding a result of type To see that i←µ C i is a channel (i.e., that all of its entries are non-negative, and that all rows sum-up to 1), note that each element of the visible choice on the family {C i } can be denoted by i←µ C i (x, (y, j)), where x ∈ X , j ∈ I, and y ∈ Y j . Then, note that for all x ∈ X , j ∈ I, and y ∈ Y j : which is a non-negative value, since, both µ(j) and C j (x, y) are non-negative. Finally, note that for all x ∈ X : Proposition 5 (Idempotency) Given a family {C i } i∈I of channels s.t. C i = C for all i ∈ I, and a distribution µ on I, then: (a) ⨊ i←µ C i = C; and (b) Proof. a) Idempotency of hidden choice: In the above derivation, we can apply Lemma 17 because every column of the channel on each side of the equivalence can be written as a convex combination of the zero-column extension of the channel on the other side.
Proposition 6 ("Reorganization of operators") Given a family {C ij } i∈I,j∈J of channels indexed by sets I and J , a distribution µ on I, and a distribution η on J : In the above derivation, we can apply Lemma 17 because every column of the channel on each side of the equivalence can be written as a convex combination of the zero-column extension of the channel on the other side.
In the above derivation, we can apply Lemma 17 because every column of the channel on each side of the equivalence can be written as a convex combination of the zero-column extension of the channel on the other side.
Theorem 7 Let {C i } i∈I be a family of channels, and µ be a distribution on I. Then, for every distribution π on X , and every vulnerability V: (a) posterior vulnerability is convex w.r.t. to hidden choice: where p(y) = ∑ x∈X π(x) ∑ i µ(i)C i (x, y).
b) Let us call X × Y i → R the type of each channel C i in the family {C i }. Then: where p(y) = ∑ x∈X π(x) ∑ i µ(i)C i (x, y), and step (*) holds because in the vulnerability of a concatenation of matrices every column will contribute to the vulnerability in proportion to its weight in the concatenation, and hence it is possible to break the vulnerability of a concatenated matrix as the weighted sum of the vulnerabilities of its sub-matrices.
Corollary 8 Let {C ij } i∈I,j∈J be a family of channels, all with domain X and with the same type, and let π ∈ DX , and V be any vulnerability. Define U ∶ DI × DJ → R as follows: U (µ, η) def = V π, ⨊ i←µ j ←η C ij . Then U is convex on µ and linear on η.
Proof. To see that U (µ, η) is convex on µ, note that: To see that U (µ, η) is linear on η, note that:

B Properties of binary versions of channel operators
In this section we derive some relevant properties of the binary versions of the hidden and visible choice operators. We start with results regarding each operator individually.
Proposition 19 (Properties of binary visible choice) For any compatible channels C 1 and C 2 , and any values 0 ≤ p, q ≤ 1, the visible choice operator satisfies the following properties: a) Idempotency: Proof. We will prove each property separately. a) Idempotency: C 1 p C 1 ≈ C 1 , by immediate application of Lemma 17, since every column of the channel on each side of the equivalence can be written as a convex combination of the zero-column extension of the channel on the other side. b) Commutativity: ≈p ⋅ C 2 ⋄ p ⋅ C 1 (by Lemma 17) = C 2p C 1 (def. of visible choice).
In the above derivation, we can apply Lemma 17 because every column of the channel on each side of the equivalence can be written as a convex combination of the zero-column extension of the channel on the other side. c) Associativity: In the above derivation, we can apply Lemma 17 because every column of the channel on each side of the equivalence can be written as a convex combination of the zero-column extension of the channel on the other side.
Now we turn our attention to the interaction between hidden and visible choice operators.
A first result is that hidden choice does not distribute over visible choice. To see why, note that C 1 p ⊕ (C 2 q C 3 ) and (C 1 p ⊕ C 2 ) q (C 1 p ⊕ C 3 ) cannot be both defined: if the former is defined, then C 1 must have the same type as C 2 q C 3 , whereas if the latter is defined, C 1 must have the same type as C 2 , but C 2 q C 3 and C 2 do not have the same type (they have different output sets). However, as the next result shows, visible choice distributes over hidden choice.
Proposition 20 (Distributivity of p over q ⊕ ) Let C 1 , C 2 and C 3 be compatible channels, and C 2 and C 3 have the same type. Then, for any values 0 ≤ p, q ≤ 1: Proof.