To reduce the network traffic at peak hours, some of the popular contents are stored at users’ end during off-peak hours. Such techniques are called coded caching [Maddah16], and it is studied from an information theoretic perspective recently. Coded caching was studied in [Maddah14] for a broadcast network with one server and many users. In their setting, the server has files , and it can broadcast to users through a noiseless broadcast link. Each user can store out of files, where varies from 0 to . Each user requests one of the files in the delivery phase and the demand of each user is conveyed to the server. The server broadcasts a message to meet the demands of all the users. For a set of demands, the server chooses an encoding function. This particular choice of of function is conveyed in the broadcast phase to all users. Each user’s decoding function is chosen based on the encoding function. Thus, each user learns the demands of all other users. This violates the privacy of users. So in this paper, we study the coded caching problem with the additional privacy constraint that each user should not learn any information about the demands of other users. For this setup, we address the trade-off between transmission rate and cache size. We call this as demand private coded caching.
The phase in which the server stores a fraction of all the files in the caches of users is called as placement phase, and the phase in which the server broadcasts is called as delivery phase [Maddah14]. Each user decodes the demanded file using the cache content and the broadcast message received. It is assumed that all the files are of equal size and the transmission rate is the number of bits transmitted per size of one file. For any and , an achievable scheme is provided for each cache size , and its order optimality is shown to be within a multiplicative factor of 12. Improved achievable rates were obtained in [Amiri17, Zhang18, Vilardebo18, Yu18] and the lower bounds on the achievable rates were improved in [Ghasemi17, Wang18]. The optimal rates when the cache content is not allowed to be coded were characterized in [Yu18, Wan16].
Security aspects in coded caching have been considered under information theoretic security in some recent works [Sengupta15]. Security against a wiretapper who observes the broadcasted message has been studied in [Sengupta15]. In this work, the security is obtained by distributing keys among users. They provided an approximate characterization of memory-rate trade-off for this problem. Privacy aspects have also been studied in coded caching [Ravindrakumar18] in the following sense. Each user should not obtain any information about any other file than the requested one. A feasible scheme has been proposed by distributing keys in the placement phase, and the order optimality of this scheme is shown to be within a constant factor [Ravindrakumar18].
In this paper, we study the coded caching setup introduced by Maddah-Ali and Niesen [Maddah14] under the constraint that no user learns any information about the demands of the other users. For files and users, we obtain an achievable scheme from a coded caching scheme for files users with no privacy requirement. The memory-rate pair achieved by our scheme is given in Theorem 1. Since the coded caching with demand privacy is a more constrained problem compared to the problem without the privacy requirement, any converse for the problem under no privacy also holds as a converse for the problem with the privacy requirement. By comparing our achievable memory-rate pair with the lower bounds on the achievable memory-rate pair under no privacy, in Theorem 2, we show that our scheme is order optimal within a multiplicative factor of 8 when . We also show that when , our scheme is order optimal within a multiplicative factor of 4 if .
Recently, an idependent and parallel work [Wan19] on demand privacy for coded caching was posted on arXiv on 28 August 2019. The problem formulation of [Wan19] is very similar to ours. We studied the problem of demand privacy for coded caching for the case of single request from users, the setup studied in [Maddah14]. The authors in [Wan19] studied the cases of single request as well as multiple requests from the users. So it is good to compare our results with theirs for the single request case. For the single request case, the achievable schemes in these two works are very different. In both of these works, the tightness of the achievable rates are shown by comparing it with the existing converse results on coded caching problem under no privacy requirement. The general scheme in [Wan19] is shown to be order optimal when . In contrast, we show that our scheme is order optimal within a factor of 8 when . A special case where all users demand distinct files was also studied in [Wan19]. This assumption implies that . They have provided an improved scheme for this special case which is order optimal within a factor of when . We show that when , our scheme is order optimal within a factor of when
without any restriction on the demand vectors.
Ii Problem formulation and definitions
A server with files is connected to users via a noiseless broadcast link. We assume that files are independent, and each file is of length bits and takes values uniformly in the set . User has a local cache of size bits for some real number . In the placement phase, the server fills the cache of each user. In the delivery phase, each user demands file from the server, where . Let denote the demands of all users, and let denote all demands, but , i.e., . All users convey their demands to the server without revealing it to other users. Then, the server broadcasts a message of size bits to all the users. Here is a real number, and is defined as the rate of transmission. Using the received message and the cache content, each user recovers file .
In addition to the recovery requirement, we have a privacy requirement that user should not gain any information about . To achieve this, we consider some shared randomness which is shared between user
and the server, and it is not known to the other users. The shared randomness can be achieved during the placement phase since the placement is done secretly for each user. Random variablestake values in some finite alphabets , respectively. The set of random variables is denoted by . The random variables are independent of each other.
A caching scheme consists of cache encoding functions, the transmission encoding function, and decoding functions. For , the cache encoding function for the -th user is given by
and the cache content is given by . The transmission encoding function
outputs the transmitted message . And finally, user has decoding function
which recovers user ’s demanded file . A memory-rate pair is said to be achievable with demand privacy if a scheme satisfies the following two conditions:
For files and users and memory , memory-rate trade-off is defined as
A memory-rate pair is achievable under no privacy if it satisfies (4). In this case, the memory-rate trade-off is defined as
Iii Main results
First let us consider a trivial scheme which achieves demand privacy. In the caching phase, caches of all users are filled with the same out of files. Then in the broadcast phase, the rest of files are transmitted. In this scheme, all users can obtain all files, and the rate of transmission is . It is easy to see that this scheme satisfies (4) and (5). Next we give a coded caching instance for which we give a scheme with rate strictly less than and it satisfies (4) and (5). Let us consider a simple example with and .
Let and denote the files and , respectivley. For , next we show a scheme which achieves demand privacy (5) . Let us denote the 6 bits of and by and , respectively. Each user stores 3 bits of each file. In the caching phase, there are two choices for the cache content for each user.
Let be uniformly distributed in
be uniformly distributed in. Then the cache content of user , denoted by , is given in Table I. The realization of is known only to user and the server.
After knowing the demand requests, in the delivery phase, the server chooses one of the 4 transmissions given in Table II. The choice is determined by the random variables and and it is given in Table II. For example, if and , then the server chooses transmission . Using Tables I and II, it is easy to verify that this scheme satisfies the decoding condition (4). Now let us see how this scheme achieves demand privacy. Let us consider the case of and . Then from the point of view of user 1, with transmission user 2 may be decoding file using cache or he may be decoding file using cache . User 2 also has similar inference. As we can observe that not revealing the caching function along with the clever choice of transmission preserves the demand privacy against the other user. In this example, each of the transmission consists of 4 bits. Since , this scheme achieves a rate . In contrast, the optimal rate wihout any privacy requirement for this example is shown [Maddah14] to be .
The scheme described in Example 1 for can be generalized for any arbitrary and . Our scheme achieves the memory-rate pair given in the following theorem. The achievable memory-rate pair in the following theorem is the achievable memory-rate pair using the scheme given in [Yu18] for files and users and memory .
For files, users and memory , the following holds:
Let denote the lower convex envelope of the points given in (8).
We have the following corollary.
The rate region given by is achievable.
, defined in Definition 1, satisfies the following:
For , it is within a multiplicative gap of 8 from the optimal region, i.e., .
For , if , then it is within a multiplicative gap of 4 from the optimal region, i.e., .
For all and , it is optimal for , i.e., .
Iv Proofs of the results
Iv-a Proof of Theorem 1
In the following, coded caching schemes for files and users and memory with and without demand privacy are called as -private scheme and -non-private scheme, respectively. We derive an -private scheme from an -non-private scheme. In particular, we use the scheme given in [Yu18] as the -non-private scheme to prove the theorem. For the -non-private scheme, let and denote user ’s cache encoding function and the decoding function, respectively, where , and let denote the transmission encoding function. The definitions of and are similar to the definitions given in (1), (2) and (3), respectively without any shared randomness.
First let us consider the procedure of choosing the caches in -private scheme from the -non-private scheme. Let the shared key be distributed as . Then -th user’s cache encoding function in -private scheme is given by for .
Now we explain the procedure in choosing from . Let and denote a demand vector in -private scheme and in the -non-private scheme, respectively. The transmission encoding function in the -non-private scheme is determined by the demand vector . Whereas, in -private scheme, it is determined by the demand vector and the shared keys . So, we denote and by and , respectively. For given and , in -private scheme, the server chooses a from the -non-private scheme as follows:
For given and , let
Now consider the -length vector in obtained by applying right cyclic shifts on . Then is given by . Here, we can observe that a uniquely determines a . The encoding function in -private scheme is chosen as .
In the -non-private scheme, the server also communicates the demand vector in the transmission to enable the decoding at each user. Thus, the broadcast message contains the demand vector and a function of the files. For demand vector , let in the -non-private scheme. Thus, the transmitted message in the -non-private scheme is given by . In -private scheme, the transmitted message is given by .
The decoding at -th user in -private scheme is as follows. Since is broadcasted, for which happens in the -non-private scheme is known to the user. Then, the user follows the decoding of -th user in the -non-private scheme because the user has the cache of -th user in the -non-private scheme. For a given , the -th user’s demand in the -non-private scheme is given by
The decodability follows since is same as . We can observe that the rate of transmission in -private scheme is equal to that of the -non-private scheme. Next lemma shows that -private scheme also provides the demand privacy.
-private scheme achieves the demand privacy defined in (5).
To prove this lemma, we show that for ,
which implies (5). For a given , let be such that . Then, we get
Here, (11) follows because is a deterministic function of , and is a deterministic function of and . (12) follows since is independent of and . (13) follows due to the fact that is a function of and as given in (9). (14) follows since for all . Thus, we have (10) which proves the lemma. ∎
For the -non-private scheme, is an achievable rate for . This shows the achievability of in (8) for .
Iv-B Proof of Theorem 2
To prove the theorem, we first give some notations and inequalities. First recall that and denote the optimal rate with privacy and without privacy as defined in (6) and (7), respectively. is the achievable rate given in Theorem 1. Let denote the achievable rate with no privacy using the scheme given in [Yu18] for files, users, and memory . For parameter , it is given by
Similarly, let denote an achievable rate with no privacy using the scheme in [Maddah14]. For , it is given by
) is same as the piecewise linear interpolation of adjacent points. So,defined in Definition 1 satisfies the following:
Then we have the following inequalities which hold for all :
follows from the fact that the optimal rate required with demand privacy is larger than that of without privacy, follows since an achievable rate is lower-bounded by the optimal rate, and the inequality in is shown in [Yu18].
Proof of part 1): ()
To prove , we show that if , then
For , we have
We first find and .
So, . Further,
So . Hence (20) gives 1.
In this case, we get
Then from (20), it follows that
where the last inequality follows since and .
Case 3 :
In this case, we obtain
We have the following lemma.
For , the following holds:
See Appendix A. ∎
Proof of part 2): (, )
We first show that
Since , we get for all , i.e., ,
Since , we get for all , i.e., ,
For all , it follows from (27) that
using for . Thus (24) follows.
Since the lower convex envelop of the points is same as the piecewise linear interpolation of adjacent points [Yu18], we obtain using (28)
Furthermore, it was shown in [Yu18] that
Since , it follows that
Proof of part 3):
For in gives
For , we have . It was shown in [Maddah14, Theorem 2] that for