distribution of licensed digital content ( e.g. , software , movies , music etc . ) has become increasingly popular in recent times . with this
comes the need to protect the copyright of the distributor against unauthorized redistribution of the content ( _ piracy _ ) .    to introduce the problem , we begin with an informal description .
suppose the distributor has some content which he would like to distribute among a set of licensed users .
one can think of a simple scheme where each licensed copy is identified by a unique mark ( _ fingerprint _ ) which is embedded in the content and is imperceptible to the users of the system .
note that the distributed copies are identical except for the fingerprints .
if a naive user distributes a copy of his fingerprinted content , then the pirated copy can easily be traced back to the guilty user and hence he will be exposed .
tracing the guilty user becomes more difficult when a collection of users ( _ pirates _ ) form a _ coalition _ to detect the fingerprints and modify / erase them before illegally distributing the data .
digital fingerprinting is a technique that assigns to each user a mark in a way that enables the distributor to identify at least one of the members of the coalition as long as its size does not exceed a certain threshold @xmath5 , which is a parameter of the problem .
there are two main setups considered for the fingerprinting problem in the literature .
the _ distortion _ setting is commonly used in applications relating to multimedia fingerprinting @xcite . in this model ,
the fingerprint is usually a `` covert signal '' which is superimposed on the original `` host '' data in such a way that the difference , or distortion , between the original and the fingerprinted copies is smaller than some threshold .
the coalitions are restricted to creating a forgery which has distortion less than some threshold from at least one of the colluders fingerprinted copies .
on the other hand , we have the _ marking assumption _ setting introduced in @xcite which will be our main interest in this paper . in this case
, the fingerprint is a set of redundant digits which are distributed in some random positions ( unknown to the users ) across the information digits of the original content .
the fingerprint positions remain the same for all users .
it is assumed that these redundant digits do not affect the functionality of the content , while tampering with an information digit damages the content permanently .
the motivation for this assumption comes from applications to software fingerprinting , where modifying arbitrary digits can damage its functionality .
the coalition attempts to discover some of the fingerprint positions by comparing their marked copies for differences .
if they find a difference in some position , it is guaranteed to be a redundant fingerprint digit . in the other positions , it could be either an information digit or a fingerprint digit .
the _ marking assumption _ states that the coalitions may modify only those positions where they find a difference in their fingerprinted copies .
hence , in analyzing this model , it becomes sufficient to just look at the fingerprint positions and ignore the information digits .
the collection of fingerprints distributed to all the users of the system together with the strategy of decoding ( pirate identification ) used is called a _ code _ below .
a code is said to be _
@xmath5-fingerprinting _ or _ collusion - secure _ against coalitions of @xmath5 pirates if the error probability of decoding approaches 0 as the code length tends to @xmath6    collusion - secure fingerprinting codes were introduced by boneh and shaw @xcite .
it was shown in @xcite that for any single deterministic code , the probability of decoding error in the `` wide - sense '' formulation ( see section [ sect : cap - def ] ) is bounded away from zero .
hence , it becomes necessary for the distributor to use some form of randomization , where the random key is known only to the distributor , in order to construct such fingerprinting codes .
this paper also gave the first example of codes with vanishing error probability .
further general constructions were proposed by barg et al .
@xcite and tardos @xcite .
the case of zero error probability was considered independently by hollmann et al .
@xcite who termed them as codes with the _ identifiable parent property _ , or ipp codes .
they were further studied in @xcite among others .    in this paper , we are interested in computing the fundamental limits of the fingerprinting problem , i.e. , in establishing bounds on the capacity ( or maximum attainable rate ) of fingerprinting codes .
we denote by @xmath7 the capacity of fingerprinting with @xmath8-ary codes against coalitions of size @xmath5 ( this quantity is defined formally later in the paper ) .
the problem of determining the fingerprinting capacity was raised in @xcite . to date
, only some lower bounds are known through constructions and existence results : @xmath9 @xcite ; @xmath10 @xcite ; @xmath11 @xcite .
new capacity bounds of our paper are based on an information - theoretic view of the fingerprinting problem .
they are established as follows .
attainability results ( lower bounds ) are shown by random coding techniques which take into account the typical coalitions , i.e. , the coalitions that occur with high probability .
this represents a new idea in fingerprinting which enables us to improve random choice arguments of various kinds used earlier in @xcite . for upper bounds we model fingerprinting as a multi - user communications channel
a converse theorem for a transmission scenario that models some aspects of the fingerprinting problem is proved to establish an upper bound on the capacity of fingerprinting .
it should be noted that a similar information - theoretic approach to finding the capacity of fingerprinting was previously studied in @xcite and @xcite . in @xcite ,
the authors obtain upper and lower bounds on the capacity of fingerprinting with distortion constraints as opposed to the marking assumption setting of this paper .
paper @xcite uses the marking assumption setting , but it addresses a simpler problem whose results do not directly apply to fingerprinting .
the rest of the paper is organized as follows . in section [
sect : cap - def ] , we recall the statement of the fingerprinting problem and give an information - theoretic formulation .
we also prove several results related to the problem statement that justify various techniques used to derive bounds on the fingerprinting capacity later in the paper .
in particular , lower bounds on @xmath12 are proved in section [ sect : cap - lb2 ] .
sections [ sect : cap - ub - w ] and [ sect : cap - ub - s ] are devoted to upper bounds on @xmath7 for arbitrary @xmath13 and their specializations for @xmath14 in the case of the binary alphabet .
random variables ( r.v.s ) will be denoted by capital letters and their realizations by low - case letters .
the probability distribution of a r.v .
@xmath15 will be denoted by @xmath16 if @xmath15 and @xmath17 are independent r.v.s , then their joint distribution is written as @xmath18 for positive integers @xmath19 @xmath20 will denote the collection of r.v.s @xmath21 and the shorthand @xmath22 $ ] will be used to denote the set @xmath23 boldface will denote vectors of length @xmath24 for example , @xmath25 denotes a vector @xmath26 and @xmath27 denotes a random vector @xmath28 the hamming distance between vectors @xmath29 will be written as @xmath30 we will denote the binary entropy function by @xmath31 and @xmath32 will represent the indicator function .
let @xmath33 denote an alphabet of ( finite ) size @xmath34 let @xmath35 be the number of users in the system and let @xmath36 denote the length of the fingerprints .
assume that there is some ordering of the users and denote their set by @xmath37 .
let @xmath38 be a finite set whose size may depend on @xmath24 elements of the set @xmath38 will be called keys . for every @xmath39 let @xmath40 be an @xmath36-length _ code _ ,
i.e. , a pair of encoding and decoding mappings : @xmath41 @xmath42 where the decoder output 0 will signify a decoding failure . by definition ,
the fingerprinting system is formed by a _ randomized code _ ,
i.e. , a random variable @xmath43 taking values in the family @xmath44 .
note that the dependence on @xmath36 has been suppressed in this notation for simplicity .
the _ rate _ of this code is @xmath45 .
the system operates as follows .
the distributor chooses a key @xmath46 according to a probability distribution @xmath47 on @xmath38 and assigns the fingerprint @xmath48 to user @xmath49 . on receiving a forged fingerprint
, the distributor uses the tracing strategy @xmath50 ( corresponding to the selected key ) to determine one of the guilty users .
we need randomization because : ( a ) deterministic fingerprinting codes do not exist in certain formulations @xcite , and ( b ) we allow the family of encoders and decoders and the distribution @xmath47 to be known to all users of the system .
the only advantage the distributor has is the knowledge of the particular key being used .
this assumption follows the accepted standards of cryptographic systems where it is usually assumed that the encryption / decryption algorithms are publicly available and that the only parameter kept secret by the system s constructor is the key .
the fingerprints are assumed to be distributed inside the host message so that its location is unknown to the users .
the location of the fingerprints , however , remains the same for all users .
a _ coalition _
@xmath51 of @xmath5 users is an arbitrary @xmath5-subset of @xmath52 following accepted usage , we will refer to the members of the coalition as `` pirates '' .
the coalition observes the collection of their fingerprints @xmath53 and attempts to create a fingerprint @xmath54 that does not enable the distributor to trace it back to any of the users in @xmath51 .
note that although the fingerprint locations are not available to the pirates , they may attempt to detect some of these locations by comparing their copies for differences . thus , coordinate @xmath49 of the fingerprints is called _ undetectable _ for the coalition @xmath51 if @xmath55 and is called _ detectable _ otherwise .
the _ marking assumption _ states that for any fingerprint @xmath56 created by the coalition @xmath51 , @xmath57 in every coordinate @xmath58 that is undetectable .    in other words , in creating @xmath56 , the pirates can modify only detectable positions .    for a given set of observed fingerprints @xmath59 the set of forgeries that can be created by the coalition
is called the _
envelope_. its definition depends on the exact rule the coalition should follow to modify the detectable positions :    * if the coalition is restricted to use only a symbol from their assigned fingerprints in the detectable positions , we obtain the _ narrow - sense envelope _ : @xmath60 * if the coalition can use any symbol from the alphabet in the detectable positions , we obtain the _ wide - sense envelope _ : @xmath61    we remark that there are further generalizations of the rules above where coalitions are also allowed to erase the symbols in detectable positions .
this generalization is not considered below ; we refer the interested reader to @xcite . in the following ,
we will use @xmath62 to denote the envelope from any of the rules or their generalizations mentioned above .
[ rem : intro - bin ] the definition for a fingerprinting code depends on the envelope considered . therefore , different problems can arise for each definition of the envelope .
the binary alphabet is of special interest because of its wide use in practical digital applications .
for this special case , it is easy to see that the narrow - sense and wide - sense envelopes are exactly the same .
suppose that the coalition @xmath51 uses a randomized strategy @xmath63 to create the new fingerprint , where @xmath64 gives the probability that the coalition creates @xmath56 given that it observes the fingerprints @xmath65 .
a strategy @xmath66 is called admissible if @xmath67 let @xmath68 denote the class of admissible strategies .
such randomized strategies model any general attack the coalition is capable of and also facilitate mathematical analysis .
the distributor , on observing the suspect fingerprint @xmath56 , uses the decoder @xmath50 while using the key @xmath46 .
then the probability of error for a given coalition @xmath51 and strategy @xmath66 averaged over the family of codes is defined as follows : @xmath69 where @xmath70 is the expectation with respect to the distribution @xmath71    [ def : cap - fingcode ] a randomized code @xmath43 is said to be @xmath5-_fingerprinting with @xmath72-error _ if @xmath73      we now formulate the fingerprinting problem as a communications problem in which the set of messages is identified with the set of users of the fingerprinting system .
each message is mapped to a codeword which corresponds to the fingerprint of the user .
any set of @xmath5 messages ( a coalition ) may be chosen , and they are transmitted over an _ unknown _
@xmath5-input - single - output channel defined by the strategy of the coalition .
the class of possible channels will be defined by the marking assumption . the output of the channel ( that represents the strategy ) gives the forged fingerprint .
the task of the decoder is to recover at least
_ one _ of the transmitted messages to have produced the channel output .
observe that this information - theoretic model differs from the traditional @xmath5-user multiple - access channel ( mac ) because : ( a ) the decoder makes an error only when its output does not match _ any of the transmitted messages _ , and ( b ) all channel inputs are required to use the same codebook .    for a given @xmath5-user strategy @xmath74 the _ maximum _ probability of error is given by @xmath75 note that here the users @xmath76 are not necessarily distinct .
it is straightforward to see that the @xmath5-fingerprinting condition ( [ eqn : cap - fingdef ] ) can now be expressed as @xmath77    [ def : cap - capall ] for @xmath78 a number @xmath79 is an @xmath80-_achievable rate _ for @xmath8-ary @xmath5-fingerprinting if for every @xmath81 and every @xmath36 sufficiently large , there exists a randomized @xmath8-ary code @xmath43 of length @xmath36 with rate @xmath82 and maximum probability of error satisfying ( [ cap - eqn : maxpe ] ) .
the @xmath80-_capacity _ of @xmath8-ary @xmath5-fingerprinting @xmath83 is the supremum of all such @xmath80-achievable rates .
the _ capacity _ of @xmath8-ary @xmath5-fingerprinting is the infimum of the @xmath80-capacities for @xmath84 , i.e. , @xmath85 to proceed with the capacity @xmath86 we wish to consider coalitions of size exactly @xmath87 first , given any @xmath5-user strategy @xmath74  define the maximum probability of error corresponding to _ coalitions of size @xmath5 alone _ as @xmath88 the capacity value @xmath89 corresponding to the above criterion can be similarly defined .
[ prop : cap - prop]@xmath90    clearly , @xmath91 the proof of the opposite inequality is also almost obvious because any coalition of @xmath5 pirates can simply ignore any subset of @xmath92 pirates when devising a forged fingerpint @xmath93 a formal version of this argument is provided by lemma a.1 in the appendix .
similarly to the above , let us consider the _ average _ error probability @xmath94 ( this quantity will be used in the derivation of upper bounds on the capacity @xmath7 ) and the probability @xmath95 for coalitions of size exactly @xmath5 . define the capacity @xmath96 with respect to the latter error probability .
we make a remark on the relation between the average and maximum error criteria . in general
, it is true that the average error criterion yields a higher capacity value compared to the maximum one .
however , when randomization is allowed , it is well - known for single - user channels that the capacity value is the same for both the maximum and average error probability criteria ( cf . e.g. , ( * ? ? ?
we now extend this argument to the current context of multi - user channels and fingerprinting to show that both ( [ eqn : cap - maxpe2 ] ) and ( [ eqn : cap - avgpe2 ] ) lead to the same capacity value .
[ prop : cap - rccap ] @xmath97    a formal proof is available in the appendix .
it follows because here we simply use a randomized code @xmath43 , which also includes all @xmath98 permutations of any specific realization of @xmath43 . because of the symmetry introduced by this , the error probability @xmath99 is the same for all coalitions for a given @xmath66 , and hence the average and the maximum probability are the same .
in this section , we construct fingerprinting codes for @xmath100 with error probability decaying exponentially in @xmath36 and with higher rate than previous constructions .
the improvement is obtained by tailoring the decoder for the _ typical _ coalitions , i.e. , the coalitions that occur with high probability .
we will say that an event occurs with high probability if the probability that it fails is at most @xmath101 where @xmath102 is a positive constant .
our aim is to construct a sequence of randomized codes @xmath103 with error probability @xmath104 decaying to zero . by proposition [ prop : cap - prop ] , it suffices to consider only coalitions of size exactly @xmath5 .
suppose , for every @xmath105 there exists a set @xmath106 such that for any coalition @xmath51 of size @xmath2 the observed fingerprints @xmath107 belong to @xmath108 with high probability .
we will refer to a set with this property as a _
typical _ set .
thus , in constructing the required code it suffices to study the conditions that allow us to obtain vanishing probability @xmath109 for any coalition @xmath51 of size @xmath2 any typical @xmath5-tuple @xmath110 of observed fingerprints , and any forgery @xmath111 as @xmath112 our first result is a lower bound on the fingerprinting capacity with 2 pirates over the binary alphabet .
[ thm : cap - lb-2 ] @xmath113    fix @xmath114 suppose that the encoding mapping @xmath115 assigns @xmath116 fingerprints to the users choosing them uniformly and independently from all @xmath117 different vectors .
for @xmath118 the fingerprints will be distinct with high probability .    given a small @xmath119 we define the typical set as the set of vector pairs which agree in @xmath120 positions , where @xmath121   .\ ] ] consider any two pirates @xmath122 and @xmath123 notice that their observed fingerprints form a typical pair @xmath124 with high probability for an arbitrarily small @xmath125 hence , @xmath124 agree in @xmath126 positions . to create a forged fingerprint @xmath56
the pirates must fill the remaining @xmath127 positions .
let @xmath128 and @xmath129 then @xmath130 and therefore @xmath131 given a forgery @xmath132 the decoder only considers typical pairs @xmath124 from the codebook .
namely , the decoder takes any pair of distances @xmath133 that satisfy ( [ eqn : cap - lb2 ] ) and constructs the full lists @xmath134 and @xmath135 of the fingerprints located at distances @xmath136 and @xmath137 from @xmath93 each pair @xmath138 is then discarded if they simultaneously disagree with @xmath56 in any position @xmath139 i.e. , @xmath140 all remaining pairs contain @xmath56 in their envelope . for each such pair
@xmath141 the decoding is completed by choosing the pirate @xmath142 whose fingerprint @xmath143 has a smaller distance @xmath144 either user is chosen if @xmath145 .
obviously , the fingerprints @xmath146 and @xmath147 that belong to the factual pirates will not be discarded by the above decoding algorithm .
the following probabilistic analysis shows that for two innocent users , the decoder discards their observed fingerprints @xmath148 with high probability if the code rate @xmath149 indeed , for @xmath148 to be typical , they should agree in @xmath150 positions . in all these positions
, @xmath151 should also agree with @xmath56 to fulfill the marking assumption . in each of the remaining @xmath127 positions , the vectors @xmath151
are represented by only two combinations , @xmath152 or @xmath153 the probability of choosing such a pair @xmath148 in our random code equals @xmath154 and has exponential order of @xmath155 for any @xmath156 furthermore , by the union bound , the total probability of choosing such a pair in a random code of size @xmath116 is at most @xmath157 this probability tends to @xmath158 exponentially fast for any rate @xmath159    similarly , consider a coalition @xmath160 that includes the fingerprint @xmath146 of an actual pirate and the fingerprint @xmath161 of an innocent user .
recall that @xmath146 disagrees with @xmath56 in @xmath136 positions .
then to be output instead of @xmath162 the fingerprint @xmath161 must agree with @xmath56 in these positions and disagree with it in another set of @xmath163 positions .
the total probability of choosing such a fingerprint @xmath161 is at most @xmath164 since @xmath165 and @xmath163 , we have restriction @xmath166 in this case , the above probability tends to @xmath158 exponentially fast for any rate @xmath159 thus , at least one pirate will be chosen from each coalition , and with high probability , no remaining ( innocent ) users will be chosen as pirates .
we note that considering typical coalitions enables us to improve the lower bound @xmath9 obtained in @xcite .
next we establish a lower bound on the fingerprinting capacity with 3 pirates over the binary alphabet .
[ thm : cap - lb-3 ] @xmath167    suppose again that the encoding mapping @xmath115 assigns @xmath116 fingerprints to the users choosing them uniformly and independently from all @xmath117 different vectors .
for a triple @xmath168 let @xmath169:\;x_{1s}=x_{2s}=x_{3s}\},\]]@xmath170:\;x_{is}=x_{js}\},\hspace{0.5em}i , j=1,2,3,\hspace { 0.5em}i\neq j,\ ] ] and let @xmath171 , @xmath172 given a small @xmath173 we say that @xmath174 form a typical triple if @xmath175,\label{eqn : cap - lb3}\]]@xmath176.\label{eqn : cap - lb4}\ ] ] for any three users @xmath177 note that the observed fingerprints form a typical triple with high probability .
using the same idea as before , we now take the observed fingerprints @xmath174 to be a typical triple .
a forged fingerprint @xmath56 agrees with all the three fingerprints on @xmath178 and takes arbitrarily values @xmath179 on the remaining subset @xmath180\backslash\cl $ ] positions .
let @xmath181 for @xmath182 note that every position in @xmath180\backslash\cl$ ] contributes 1 or 2 to the sum @xmath183 implying @xmath184    given a forged fingerprint @xmath132 the decoder considers only typical triples @xmath174 from the codebook .
each triple is then discarded
if the fingerprints in it simultaneously disagree with @xmath56 in any position @xmath139 i.e. , @xmath185 if a triple @xmath174 is left , decoding is completed by choosing the pirate whose fingerprint has the smallest distance to @xmath56 among @xmath186 .
obviously , the fingerprints @xmath174 corresponding to the factual pirates will not be discarded by the decoder .
the following probabilistic analysis shows that a randomly chosen code of rate @xmath187 enables the decoder to discard with high probability all typical triples @xmath188 of fingerprints formed by three innocent users .
indeed , a typical triple can be identified only if the fingerprints in it simultaneously agree with @xmath56 in some subset of @xmath189 positions . to simplify our analysis in this case
, we can even ignore the extra conditions ( [ eqn : cap - lb4 ] ) in any of the remaining @xmath127 positions .
thus , we allow the vectors @xmath188 to take on any combination of binary symbols @xmath179 different from all zeros or all ones .
given 6 such combinations , any typical triple is chosen with probability at most @xmath190 we further observe that the total probability of choosing such a triple in a random code of size @xmath116 equals @xmath191 and tends to @xmath158 exponentially fast for any rate @xmath192 . now consider a slightly more involved case when the decoder locates the pirate coalition @xmath174 along with another coalition @xmath193 that includes the fingerprint @xmath146 of an actual pirate and the fingerprints @xmath194 of two innocent users . in
what follows , we prove that a random code of rate ( [ eqn : cap - lb6 ] ) satisfies at least one of the following two conditions :    * the decoder chooses @xmath146 in the coalition @xmath193 with high probability . * the coalition @xmath193 has vanishing probability .
recall that @xmath195 then an innocent user , @xmath161 say , can be output by the decoder if @xmath196 .
the probability that any such @xmath161 is chosen among @xmath35 random codewords is obviously at most @xmath197 given a code of rate ( [ eqn : cap - lb6 ] ) , this probability vanishes if @xmath198 therefore , condition ( i ) above fails if @xmath199 now let us consider condition ( ii ) given this restriction . consider a typical coalition @xmath200 we have @xmath201:\;x_{1s}=z_{2s}=z_{3s}=y_{s}\}|,\]]@xmath202:\;z_{2s}=z_{3s}\neq x_{1s}\}|\ ] ] thus , the vectors @xmath194 have fixed values on the one subset of size @xmath203 where these vectors are equal to @xmath146 , and on the other non - overlapping subset of size @xmath204 , where the vectors @xmath194 are equal to the binary complement of @xmath205 according to conditions ( [ eqn : cap - lb3 ] ) and ( [ eqn : cap - lb4 ] ) , @xmath189 and @xmath206 in the remaining @xmath207 positions we have @xmath208 summarizing the above arguments , we conclude that the total probability of choosing such vectors @xmath194 in the random code is bounded above as @xmath209 straightforward verification shows that this quantity vanishes given conditions ( [ eqn : cap - lb3 ] ) , ( [ eqn : cap - lb4 ] ) , and ( [ eqn : cap - lb7 ] ) for a code of rate @xmath210 thus a random code of smaller rate ( [ eqn : cap - lb6 ] ) discards all mixed coalitions of the form @xmath193 with high probability .
the last remaining case , of a mixed coalition @xmath211 , is analyzed in a similar fashion ( the analysis is simpler than the one above and will be omitted ) .
in finding upper bounds on fingerprinting capacity ( here and also in section [ sect : cap - ub - s ] ) , we restrict our attention to _ memoryless _ coalition strategies in order to make the problem tractable and to obtain single - letter expressions . any upper bound on the capacity thus obtained will be also valid in the original problem .
let @xmath212 denote the family of discrete memoryless channels ( dmcs ) @xmath213 with @xmath5 inputs that satisfy the marking assumption for a single letter , i.e. , @xmath214 note that the above definition corresponds to the wide - sense envelope @xmath215 defined in ( [ eqn : intro - wenv ] ) .
for the narrow - sense envelope @xmath216 ( [ eqn : intro - nenv ] ) and other variations of the problem it is possible to define similar communication channels and study their upper bounds on capacity .    observe that @xmath212 is a convex and compact set .
let @xmath217 , called the `` state '' , be an index which identifies the particular @xmath218 .
hence , we will often write @xmath219 for channels in @xmath212 .    we model a coalition s strategy by a ( discrete memoryless ) arbitrarily varying channel ( avc ) , i.e. , the state of the channel can vary from symbol to symbol . for a given state sequence @xmath220 , the channel is given by @xmath221 we denote the family of such channels @xmath222 by @xmath223    since the state sequence @xmath224 completely identifies the channel , we will use @xmath225 to denote the error probability in ( [ eqn : cap - avgpe ] ) .
[ thm : cap - ub - w ] let @xmath43 be a @xmath8-ary @xmath5-fingerprinting code with @xmath80-error ( @xmath226 ) of length @xmath105 rate @xmath227 and @xmath228 keys , such that @xmath229 then @xmath230 where @xmath231 @xmath232 are @xmath8-ary r.v.s , @xmath233 @xmath234 is a r.v .
taking values over a set of cardinality @xmath228 and satisfying the markov chain @xmath235 and the maximization is over joint distributions @xmath236{l}p_{k x_{1 } \dots x_{t } } = p_{k } \times p_{x_{1}|k } \times\dots\times p_{x_{t}|k}\\ \text{with } p_{x_{1}|k } = \dots= p_{x_{t}|k}. \end{array}\ ] ]    let @xmath38 be a set of keys and let @xmath237 be a family of codes with probability distribution @xmath47 over @xmath238 since @xmath43 is @xmath5-fingerprinting with @xmath80-error , it satisfies @xmath239 let @xmath240 be independent r.v.s uniformly distributed over the message set @xmath241 and let @xmath234 be a r.v .
independent of @xmath242 and with probability distribution @xmath47 over @xmath38 .
also , let @xmath243 fix some @xmath220 and let @xmath244 be such that @xmath245 .
then , we have @xmath246 which follows from ( [ eqn : cap - perr ] ) .
we also have the following markov chain @xmath247 now , @xmath248 because @xmath240 are independent and uniformly distributed over @xmath249 the second term in ( [ eqn : cap - ub - w1 ] ) can be bounded above as follows .
define @xmath250 @xmath251 let @xmath252 @xmath251 since @xmath253 are known given @xmath254 @xmath255 equation ( [ eq : h ] ) holds true because @xmath256 are binary r.v.s and the term @xmath257 in ( [ eqn : cap - ub - w2 ] ) follows from the fact that there are at most @xmath258 remaining terms and each can be bounded above by @xmath259 using this in ( [ eqn : cap - ub - w1 ] ) , we obtain @xmath260 we now use the premise that @xmath261 together with ( [ eqn : cap - markov ] ) and the memoryless property of the channel , which results in @xmath262 moreover , since the above bound applies for every @xmath263 i.e. , for every @xmath264 @xmath265 because the minimization is over channels whose state may vary over @xmath212 for every letter . note that @xmath266 are independent and identically distributed ( i.i.d . )
given @xmath234 ( by ( [ eqn : cap - x1x2 ] ) ) .
therefore , given @xmath267 for every @xmath268 $ ] , @xmath269 are i.i.d .
hence , @xmath270 where the maximization is over joint distributions satisfying ( [ eqn : cap - ub - w3 ] ) .
[ cor : cap - ub - w ] @xmath271 where @xmath232 are @xmath8-ary r.v.s , @xmath272 and the maximization is over joint distributions such that @xmath273 are i.i.d .
as we prove only a min - max type result , it becomes sufficient to consider only `` fixed '' memoryless coalition strategies , i.e. , strategies that remain fixed at every symbol instead of varying arbitrarily . in the subsequent text , @xmath274 will denote the @xmath36-letter extension of a dmc @xmath275    consider any sequence of @xmath5-fingerprinting codes @xmath276 of rate @xmath277 and error @xmath278 where @xmath279 approaches 0 as @xmath36 increases .
then @xmath280 fix some @xmath281 we find that ( [ eqn : cap - ub - wmain ] ) holds for every @xmath24 therefore by the arguments in theorem [ thm : cap - ub - w ] @xmath282 where both @xmath283 and @xmath284 approach 0 as @xmath285 considering the inner term , we note that @xmath286 where @xmath287 and @xmath288 are the coordinate and key which maximize the mutual information . the term on the r.h.s .
is a function of @xmath289 for every @xmath268,$ ] @xmath269 are i.i.d .
when conditioned on @xmath290 therefore this term is at most @xmath291 where @xmath292
are @xmath8-ary r.v.s with @xmath293 and the maximization is over i.i.d .
r.v.s . finally , since ( [ eqn : cap - ub - w7 ] ) is true for every @xmath294 we obtain the stated result by taking @xmath285      consider the case where @xmath295 .
we would like to evaluate the upper bound on @xmath296 given by corollary [ cor : cap - ub - w ] .
computing the exact optimum in this formula is a difficult problem . instead of attempting this
, we will use a particular channel @xmath297 in ( [ eqn : cap - ub - w ] ) and compute a maximum on the prior distribution @xmath298 for this channel .
the resulting value of the rate gives an upper bound on capacity @xmath299 let @xmath297 be the `` uniform channel '' defined by @xmath300 where @xmath301 is the number of 1s among @xmath302 fig . [
fig : cap - unifch ] shows the uniform channel for @xmath303 intuitively this choice is the worst strategy of the coalition from the distributor s perspective .
if @xmath273 are independent binary - valued r.v.s with @xmath304 and @xmath17 is the output of the uniform channel with inputs @xmath273 , we have @xmath305 and @xmath306 evaluating the maximum mutual information in ( [ eqn : cap - ub - w ] ) for this channel gives a closed - form upper bound :    [ thm : cap - ub - w - bin ] @xmath307}\big\{h(p)-\sum_{i=0}^{t}\binom{t}{i}p^{i}(1-p)^{t - i}h\left (   \frac{i}{t}\right )   \big\}\label{eqn : cap - ub - w - bin}\\ & \leq\frac{1}{t\ln2}.\label{eqn : cap - ub - w - bin-2}\ ] ]    a proof of the estimate ( [ eqn : cap - ub - w - bin-2 ] ) is given in the appendix .
[ thm : cap - ub - s ] for any @xmath78 @xmath308 where @xmath232 are @xmath8-ary r.v.s , @xmath272 and the maximization is over joint distributions such that @xmath273 are independent .
we borrow techniques from @xcite in this proof .
the result is proved for the case @xmath309 to ease understanding .
it is a straightforward extension for arbitrary @xmath87 in the proof , all logarithms are to the base @xmath34    consider a family of @xmath36-length codes @xmath237 for @xmath35 users with probability distribution @xmath47 over @xmath38 which is @xmath310-fingerprinting with @xmath80-error ( @xmath311 )
. therefore @xmath312 let @xmath313 denote the fingerprints and @xmath314 denote the decoding regions for @xmath315 @xmath316 then the above error criterion can be written as follows : for every @xmath317 @xmath318 fix some @xmath319 there exists a @xmath320 such that @xmath321 hereafter , we drop the superscript @xmath322 for simplicity .
consequently , either @xmath323 must be true .
let us assume ( [ eqn : cap - ub - s1 ] ) is true .
we first find a subset @xmath324 of `` good '' pairs of users ( messages ) for @xmath275 define @xmath325 where @xmath326 is such that @xmath327 then @xmath328 next , we derive a subset @xmath329 of the `` good '' pairs where approximate independence holds between the fingerprints ( codewords ) corresponding to a pair of users ( messages ) uniformly distributed over this subset .
this is needed to restrict the maximization in the final result ( [ eqn : cap - ub - s ] ) to joint distributions where the r.v.s are independent .
[ lem : cap - wring ] @xcite let @xmath330 @xmath331 with @xmath332 @xmath333 then for any @xmath334 @xmath335 there exist @xmath336,$ ] where @xmath337 and some @xmath338 such that for @xmath339 \right\ } $ ]    * @xmath340 , and * for all @xmath341 @xmath268,$ ] @xmath342 where @xmath343 is a pair of r.v.s with uniform distribution on @xmath344    applying lemma [ lem : cap - wring ] to @xmath324 as in ( [ eqn : cap - ub - s - defa ] ) with parameters @xmath345 @xmath346 we obtain @xmath347    for @xmath348 define @xmath349 observe that the subcode corresponding to @xmath350 is a `` good '' code for the single - user channel obtained by fixing the second input to @xmath351 thus , the single - user strong converse given below holds for this subcode .
[ lem : cap - aug ] @xcite if @xmath352 is a code with codewords @xmath353 and decoding regions @xmath354 for the ( non - stationary ) single - user dmc @xmath355 such that for every @xmath315 @xmath356 @xmath357 then @xmath358 where @xmath27 is distributed uniformly on the set of codewords .
using lemma [ lem : cap - aug ] on the subcode @xmath359 @xmath360 where @xmath343 are distributed as in lemma [ lem : cap - wring ] and @xmath361 furthermore , using ( [ eqn : cap - ub - s4 ] ) , we obtain @xmath362 since @xmath363 for @xmath268.$ ] we next establish a lower bound on the left - side term in order to obtain an inequality for @xmath364 @xmath365 now , @xmath366 by using ( [ eqn : cap - ub - s3 ] ) and ( [ eqn : cap - ub - s8 ] ) . using this inequality in ( [ eqn : cap - ub - ss1 ] )
, we get @xmath367 combining ( [ eqn : cap - ub - s5 ] ) , ( [ eqn : cap - ub - s7 ] ) and ( [ eqn : cap - ub - s8 ] ) , @xmath368 although the above inequality resembles what is needed in the theorem , note that @xmath369 and @xmath370 are not necessarily independent . for @xmath371,$ ] let @xmath372 be r.v.s with distribution @xmath373 for all @xmath374 from lemma [ lem : cap - wring](b ) , for @xmath375 and every @xmath268 $ ] @xmath376 @xmath377 thus , by the uniform continuity of mutual information , for all @xmath268,$ ] @xmath378 where @xmath379 as @xmath285 together with ( [ eqn : cap - ub - s9 ] ) and dividing by @xmath105 @xmath380 where @xmath381 as @xmath285 similarly , assuming ( [ eqn : cap - ub - s2 ] ) is true , one can prove @xmath382 since either ( [ eqn : cap - ub - s11 ] ) or ( [ eqn : cap - ub - s12 ] ) holds for every @xmath317 taking @xmath383 concludes the proof .
fix @xmath295 . for the case of @xmath309 and @xmath384
we again pick the uniform channel and obtain upper bounds on the expression in theorem [ thm : cap - ub - s ] , which turn out to be stronger than the bounds resulting from ( [ eqn : cap - ub - w - bin ] ) .
the calculations become quite tedious for larger @xmath87 for @xmath385 let @xmath386 be independent binary - valued r.v.s with @xmath387 and let @xmath17 be the output of the uniform channel with inputs @xmath388 and @xmath389 we have @xmath390 computing the maximum conditional mutual information gives @xmath391 a similar computation for @xmath392 yields @xmath393 and the maximization gives @xmath394 combining these upper bounds with our lower bounds from theorem [ thm : cap - lb-2 ] and theorem [ thm : cap - lb-3 ] we obtain :    [ thm : cap-2bin ] @xmath395 @xmath396
in this paper , we prove new lower bounds on the maximum rate of binary fingerprinting codes for 2 and 3 pirates by considering typical coalitions which improves the random coding results obtained previously in the literature .
we also prove several new upper bounds on fingerprinting capacity relying upon converse theorems for a class of channels which are similar to the multiple - access channel .
our results establish for the binary case , @xmath397 combined with the result of @xcite this implies that @xmath398 for the general case with arbitrary alphabets , we have established some upper bounds on the capacity involving single - letter mutual information quantities .      _ lemma a.1 : _ let @xmath43 be a randomized code of size at least @xmath399 assume
that @xmath400 then for any @xmath401 @xmath402    for simplicity of presentation we take @xmath403 the general case of @xmath404 can be established with only minor changes to the proof below . for
any @xmath405 let us define a @xmath406 where @xmath407 then , for any coalition @xmath51 of size @xmath408 and any user @xmath409 @xmath410 , \label{eq : n}\end{aligned}\ ] ] where @xmath411 the first term in the last equation satisfies @xmath412 by the assumption of the lemma .
we will next show that the second term in ( [ eq : n ] ) is also at most @xmath413 suppose for the sake of contradiction that @xmath414 let @xmath415 and @xmath416 ( we assume that the size of the code is at least @xmath417 or at least @xmath418 in the general case ) .
then @xmath419 but this contradicts our initial assumption ( [ eq : assumption ] ) .
it is clear that @xmath420 therefore , it is enough to show that for every randomized code @xmath43 , there exists another randomized code @xmath421 of the same rate such that @xmath422 for every channel @xmath423    we are given @xmath424 let @xmath425 identify a particular permutation from the set of all permutations on the message set @xmath249 choose @xmath426 uniformly at random from @xmath427 and construct a new key @xmath428 define @xmath429 @xmath430 let @xmath421 be the randomized code corresponding to the family @xmath431 then , for every channel @xmath74 @xmath432 .
furthermore , for any @xmath433 @xmath434 @xmath435 which does not depend on the subset @xmath51 because of the averaging over all permutations .
this implies @xmath436      our goal is to estimate @xmath437}u(p , t),$ ] where we use the following notation@xmath438@xmath439 first , note that @xmath440 is a concave function , and therefore @xmath441 is non - negative for all @xmath442.$ ] bernstein proved that the sequence of polynomials @xmath443 where @xmath444 is a function continuous on @xmath445 $ ] , provides a uniform approximation to @xmath444 on @xmath445.$ ] his proof , found for instance in feller @xcite  7.2 , relies on the weak law of large numbers .
refining the proof in the case of the function @xmath440 , we show that for any @xmath442 $ ] and any @xmath2 @xmath446 it suffices to consider the case @xmath447.$ ]  given some @xmath448 let us write a quadratic taylor approximation for @xmath449 @xmath450 where the coefficient @xmath451 depends on @xmath452 since @xmath453  for some @xmath454.$ ] we shall also consider the residual function @xmath455 the main part of our proof is to show that for any @xmath456,$ ] @xmath457  the right inequality is obvious since @xmath458 for all @xmath459  the left inequality will be proven in two steps .
let us take any point @xmath460.$ ] then we compare @xmath461 with the quadratic function @xmath462 on the entire interval @xmath463.$ ] we first prove that functions @xmath464 and @xmath465 coincide at only two points , namely @xmath466 and @xmath467 indeed , let us assume that there exists a third such point @xmath468 without loss of generality , let @xmath469  the functions @xmath464 and @xmath465 coincide at the ends of both intervals @xmath470 $ ] and @xmath471 $ ] ; therefore there exist two points @xmath472 and @xmath473 where both functions have equal derivatives : @xmath474 the left sides of both equalities represent a linear function of @xmath475 given by @xmath476 whereas the right sides represent a convex function @xmath477 a linear function can intersect a convex function at no more than two points .
this leads to a contradiction , which shows that @xmath478 and that the functions @xmath464 and @xmath465 intersect at two points @xmath466 and @xmath467    our next step is to find the minimum @xmath479 for all @xmath463 .
$ ]  compare the function @xmath464 with @xmath480 for any parameter @xmath481.$ ] now we use the fact that both functions intersect @xmath482 at only two points , one of which is @xmath483 however , @xmath480 has its second intersection @xmath484 to the left of @xmath467 thus , @xmath485 for @xmath486 and therefore , @xmath487 ( see fig .  [
fig : parabolas ] ) .
now we conclude that @xmath488}a(x).\ ] ]    , height=192 ]    finally , we find @xmath489 using the equality @xmath490 which gives @xmath491    the second interval @xmath492 $ ] can be considered similarly@xmath4 again , we use the same arguments and conclude that the end point @xmath493 gives the minimum @xmath494}a(x).$ ] direct calculation also shows that the global minimum is achieved at @xmath158 as @xmath495 for all @xmath496 and @xmath497 for @xmath498 this gives us the left inequality in ( [ ld2 ] ) and shows that for any @xmath499 and any @xmath500,$ ] @xmath501 let us take @xmath502 and substitute the above estimate into the expression for @xmath503 in this substitution , we also use the first two moments of the binomial distribution @xmath504 which gives @xmath505
@xmath506 then @xmath507 finally , it is easy to verify that the function @xmath508 monotonically decreases on the interval @xmath509 $ ] and achieves its maximum @xmath510 at @xmath511 this establishes ( [ ld ] ) and hence the bound ( [ eqn : cap - ub - w - bin-2 ] ) .
the authors would like to thank prakash narayan and gbor tardos for numerous illuminating discussions .
r.  ahlswede and n.  cai , `` codes with the identifiable parent property and the multiple - access channel , '' _ general theory of information transfer _ , r. ahlswede at al .
, lecture notes comput .
, vol . 4123 , berlin : springer verlag , 2006 , pp .  249 - 257 .
a.  barg , g.  r.  blakley and g.  kabatiansky , `` digital fingerprinting codes : problem statements , constructions , identification of traitors , '' _ ieee trans .
inform . theory _
852 - 865 , apr .
a.  barg , g.  cohen , s.  encheva , g.  kabatiansky , and g.  zmor , `` a hypergraph approach to the identifying parent property : the case of multiple parents , '' _ siam journal discrete math .
14 , no.3 , pp .
423 - 431 , 2001 .
g.  tardos , `` optimal probabilistic fingerprint codes , '' _ journal of the acm _ , to appear . preliminary version in _ proc .
35th annual acm symposium on theory of computing _ ( stoc 2003 ) , pp .
116 - 125 , 2003 .