Polynomial-Time Codes Against Averaging Attack for Multimedia Fingerprinting

With rapid advances of information technologies, a large amount of digital contents, especially multimedia, can be processed by electronic devices such as computers and smartphones. Protecting the copyrights of digital contents is of paramount importance, and digital fingerprinting has attracted a lot of attention for this purpose. In digital fingerprinting, a user’s ID called a fingerprint is embedded into an original content with a watermarking technique, and then the fingerprinted contents are distributed to users.


Introduction
With rapid advances of information technologies, a large amount of digital contents, especially multimedia, can be processed by electronic devices such as computers and smartphones.Protecting the copyrights of digital contents is of paramount importance, and digital fingerprinting has attracted a lot of attention for this purpose.In digital fingerprinting, a user's ID called a fingerprint is embedded into an original content with a watermarking technique, and then the fingerprinted contents are distributed to users.
Digital fingerprinting requires robustness against collusion attacks, in which more than one illicit user colludes to forge illegal contents.In the context of multimedia fingerprinting, well-known collusion attacks are the interleaving attack (Boneh & Shaw, 1998;Fernandez & Soriano, 2004;Silverberg et al., 2003;Staddon et al., 2001) and the averaging attack (Trappe et al., 2003;Wu et al., 2004).The averaging attack is particularly effective when fingerprint's watermark is embedded into host multimedia via the spread spectrum technique.Trappe et al. have devised collusion-secure codes, called anti-collusion (AC) codes, against the averaging attack based on block designs (Trappe et al., 2003).The AC codes given by Trappe et al. are also called AND-AC codes.Subsequently, several studies have proposed a method for increasing coding rates of AC codes based on a various class of block designs and related methods.Some examples are based on group-divisible design (Kang et al., 2006), finite geometries and low-density matrices (Yagi et al., 2009), and cover-free families of sets (Li et al., 2009).In order to further increase the coding rate, concatenated coding in which an outer error correcting code is concatenated with an inner AC code, has been proposed (Yagi et al., 2007).This method seems attractive since any AND-AC codes can be used as the inner codes.Whereas the concatenated codes given by (Yagi et al., 2007) greatly improve the coding rates of AC codes, the codes need exponential-time complexity in the code length for decoding (detecting the colluders).
In this chapter, we consider a method for constructing AC codes with polynomial-time encoding and decoding algorithms based on concatenated coding.We give a sufficient condition on outer error correcting codes assuring that the concatenated AC codes have a designed resilience.A polynomial-time decoding algorithm is proposed based on the list-decoding of error correcting codes.A key idea is that after the inner decoding, from the set of candidate outer symbols, we randomly create a sequence, which is input to the list-decoding of the outer code.If the outer code's parameters satisfy the derived condition, the list-decoding algorithm can output at least one colluder's codeword correctly.We repeat this procedure until all the colluders' codewords are found.The proposed coding method guarantees the perfect detection of all the colluders in the absence of noise.Although, for fixed code length and resilience, the number of codewords of the proposed concatenated codes is smaller than that of codes in (Yagi et al., 2007), it asymptotically approaches the exponential order in the overall code length, resulting in a greater number of codewords than those of the AC codes in (Trappe et al., 2003) and (Yagi et al., 2009).In the proposed concatenated coding, any AC codes can be used as the inner code.Using AC-codes given by (Kang et al., 2006) and (Li et al., 2009) as the inner codes, we obtain analogous results.
In related work, some coding and decoding methods have been proposed for the interleaving attack (also known as the attack based on the marking assumption), in which one of colluders i-th codeword symbol is selected as the i-th codeword symbol of the forged fingerprint (e.g., (Boneh & Shaw, 1998;Staddon et al., 2001)).In (Silverberg et al., 2003) and (Fernandez & Soriano, 2004), the list decoding of fingerprinting codes is used.This work assures that at least one of the colluders is identified with polynomial time complexity in the code length.It seems that, in our problem setting, i.e., against the averaging attack, the realization of efficient coding is much easier because the forged fingerprint can have more information under the averaging attack.This is true in the sense that we can identify all the colluders with AC codes.However, the code construction is rather hard in terms of coding rate, since the use of orthogonal sequences in AC codes (Trappe et al., 2003;Wu et al., 2004) prevents the code size from growing exponentially in the code length.In this chapter, we aim at realizing the polynomial-time complexity in the code length as well as increasing the code size greatly based on concatenated coding and list decoding of outer codes.
The proposed method is attractive in the sense that we can construct it in a deterministic way for given parameters and implement encoding and decoding with polynomial-time complexity in the code length.However, its code size still grows semi-exponential in the code length.This means that the coding rate of this code, which is defined as the logarithm of the code size per codeword symbol, goes to zero as the code length tends to infinity.Recently, it has been pointed out by (Koga, 2010) that there exist AC codes with a strictly positive coding rate although the way of constructing such codes is still unknown.In the last part of this chapter, we show that there exist polynomial-time AC codes with a strictly positive coding rate, based on the argument given by (Koga, 2010).

Digital fingerprinting
When distributing a digital content to users, a codeword (fingerprint) corresponding to each user is embedded into the original content by a watermarking technique.Some illicit users may collude and attempt to forge their fingerprints (collusion attack) so that their fingerprints are not revealed from an illegally utilized content.The detector of colluders estimates colluders' fingerprints from the forged fingerprint.
Let Γ = {1,2,...,|Γ|} be the set of users of a digital content, where |•|expresses the cardinality of its argument set.We denote a codeword of user j ∈ Γ by b j =( b be a set of n orthogonal sequences of unit power.The fingerprint watermark w j = (w (1) Note that there always exists a set of n orthogonal sequences for every M ≥ n.Then the created watermark signal is embedded into a host signal.Denoting the host signal by x = (x (1) ,...,x (N) ) ∈R M×N , the distributed content to user j ∈ Γ is 1 y j = x + w j ∈R M×N .A encoding procedure is illustrated in Fig. 1.
Since fingerprints are embedded with a watermark technique, any user cannot detect their own fingerprint w j from the watermarked content y j .Therefore illicit users may collude to disturb their fingerprints by creating a forged content from their distributed contents.

Assumed collusion attack
We consider a set of colluders of size h ≥ 1, denoted by S c ⊆ Γ, and without loss of generality, we assume S c = {1,2,...,h}.The attacked host signal by a set of colluders S c is expressed as y =(y (1) , y (2) ,...,y (N) ) such that for l = 1, 2, . . ., N. From (2) and the relation y can also be expressed as for l = 1,...,N.The detector of the colluders estimates the set of colluders S c from the attacked host signal y ∈R M .This attack is called the averaging attack, which is an effective collusion attack in multimedia fingerprinting (Trappe et al., 2003;Wu et al., 2004).Figure 2 illustrates the averaging attack at segment l conducted by S c = {1, 2, . . ., h}.
In practical situations, additive noise z ∈R M×1 is added to y (l) in (4).However, we assume the absence of noise for the time being to focus on designing codes as in (Trappe et al., 2003).
Later, some extension will be discussed to deal with noise.

Concatenated anti-collusion code
In this chapter, we consider concatenated coding, which increases the coding rates of AC codes in (Trappe et al., 2003), (Yagi et al., 2009), etc.In concatenated coding, we use two kinds of codes, namely an outer code and an inner code (Forney, 1966).
Let C o ⊆ GF N (q) be a q-ary linear (N, K, D) error correcting code of length N, the number of information symbols, K, and minimum distance D (Lin & Costello, 2004), which is used as the outer code.We denote any codeword by c j =(c (1) The encoder first generates a codeword of the outer code C o , and then each symbol c j ∈B,whereB⊆{ 0, 1} n×1 is a binary AC code (Trappe et al., 2003) of length n (Fig. 3).The mapping of a symbol c  If we use a trivial error correcting code, namely the (1,1,1) error correcting code, then this concatenated code reduces to the AC code in (Trappe et al., 2003) or (Yagi et al., 2009).

Inner codes: AC codes based on finite geometries
Trappe et al. (Trappe et al., 2003) have devised anti-collusion (AC) codes, which are used as inner codes in our concatenated coding scheme.For the purpose of simple explanation, we assume N = 1 in this subsection.First, we give the definition of the AC codes.
Definition 1. Assume the non-blind scenario, in which the host signal x is known to the detector.If a set of colluders S c satisfies h ≤ ℓ for some positive integer ℓ ≥ 2, the code which can find all the colluders in S c is referred to as an ℓ-resilient AC code.T h ep a r a m e t e rℓ is called the resilience of the AC codes.✷ Lemma 1 (Yagi et al., 2009).Assume that a binary matrix satisfies (i) the Hamming weight of each column is at least k, and (ii) any pair of distinct two columns has at most t 1-components in common.Then, the AC code whose codewords are all column vectors of this matrix is a (⌈k/t⌉−1)-resilient AC code.i.e., if h ≤⌈k/t⌉−1, any set of colluders S c can be uniquely detected 2 .✷ Remark 1.Let Q(S c ) be the set of symbol positions where all of the fingerprints in S c take the 0-component.Then an ℓ-resilient AC code in (Trappe et al., 2003) and (Yagi et al., 2009) uniquely identifies the set Q(S c ) for any S c with h ≤ ℓ. ✷ From Remark 1, since an ℓ-resilient AC code uniquely identifies Q(S c ) for any S c of size less than or equal to ℓ, the code reveals the set of colluders S c .For a detailed procedure of the inner decoding, refer to (Trappe et al., 2003).
In (Yagi et al., 2009), an algebraic construction of ℓ-resilient AC codes has been proposed based on finite geometries.We will use these AC codes as the inner code in concatenated coding for a comparison purpose though any AC codes can also be used.For a prime p and two positive integers m and s (m ≥ 2, s ≥ 1),them-dimensional Euclidean geometry EG(m, p s ) over a Galois field GF(p s ) consists of points, lines,andhyperplanes. Any points in EG(m, p s ) are p ms m-dimensional vectors over GF(p s ), and they form an m-dimensional vector space V over GF(p s ).F o rµ such that 0 ≤ µ ≤ m,aµ-dimensional hyperplane (generally, called a µ-flat) is a µ-dimensional subspace of V and its cosets, and any µ-flat contains p µs points.Points correspond to 0-flats.Any pair of two µ-flats, (F 1 , F 2 ), has at most one (µ − 1)-flat in common, which implies F 1 and F 2 have at most p (µ−1)s points in common.In a Euclidean geometry EG(m, p s ),thereare µ-flats in total.
Letting n 0 = f EG (0),c o n s i d e ra nn 0 × f EG (µ) matrix B µ =( b ij ).A ne l e m e n tb ij in a matrix B µ takes b ij = 1ifpointi is contained in µ-flat j, or takes b ij = 0 otherwise.This matrix B µ is called the incident matrix of µ-flats over points in EG(m, p s ).Allocating the j-th column vector b j of B µ to the j-th user's fingerprint, the obtained code B µ = {b j } is called the µ-th order EG-AC code.
Lemma 2 (Yagi et al., 2009).For given EG(m, p s ),t h eµ-th order EG-AC code B µ is a (p s − 1)-resilient AC code of length n 0 = p ms and the number of codewords f EG (µ).✷ We mention parameters of EG-AC codes (Yagi et al., 2009).Let µ * express dimension µ that This means that the number of codewords increases in polynomial order Θ(n ) of code length n 0 .

Outer codes: Existing condition on error correcting codes
We state a previous condition on outer error-correcting codes (Yagi et al., 2007).
2 ⌈v⌉ expresses the minimum integer not less than v. (l) j ∈ GF(q) for l = 1,2,...,N be a codeword of the outer code C o .We define the following sets: and The set Y (l) expresses the set of symbols over GF(q) which give y (l) (recall that there is one-to-one correspondence between symbols over GF(q) and a subset of inner codewords).We define the Hamming distance between a symbol v ∈ GF(q) and the set Y (l) as We define the Hamming distance between a codeword c j =( c Definition 2. For a set of colluders S c such that h ≤ ℓ and any codeword c j ∈C o with j ∈ Γ \S c ,ifatleastr codewords c i such that i ∈S c satisfy then the concatenated code C is called the (ℓ, r)-resilient concatenated AC (CAC) code for Y. ✷ The following theorem states a condition on the outer code C o assuring that a concatenated code C becomes an (ℓ, h)-resilient AC code.
Theorem 1 (Yagi et al., 2007).Assume that we use an ℓ-resilient AC code B as the inner code.If h ≤ ℓ and a q-ary (N, K, D) error-correcting code such that  (Lin & Costello, 2004).In this case, the decoding complexity is expressed as O(2 N log N ).F u r t h e r ,N 0 = Θ(N m+6 m+2 ) since n = Θ(N 4 m+2 ).Therefore, the overall decoding complexity 3 is O(2 N 0 log N 0 ).

Condition on outer codes with ℓ-resilience
A main idea to give polynomial-time decodable concatenated codes is that after the inner decoding, we randomly create a sequence from the candidate symbol set Y.U p o ni n p u to f this sequence, a list-decoding algorithm for the outer code outputs at least one colluder's codeword.Like this, we consider iterating the following procedure: and the set of found colluders is denoted by S c,τ .W ed e fi n eY τ and Y τ in a similar way to ( 6) and ( 7), respectively, by replacing (iv) Set τ := τ + 1, and go to step (ii).We repeat this procedure until there are no codewords satisfying (12).
Proposition 1. Assumethattheinnercodeisanℓ-resilient AC code B.Ifh≤ ℓ and a q-ary (N, K, D) error-correcting code such that is used as the outer code, the concatenated code C is an (ℓ, h τ )-resilient CAC code for each Ỹτ ,where ∈ GF(q) for l = 1,2,...,N be the j-th users' outer codeword.By the definition of S c,τ ,thereareh τ colluders whose c i , i ∈S c,τ , satisfy d H (c i ,ỹ τ ) ≤ N(1 − 1/ℓ).On the other hand, since any fingerprint c j , j ∈ Γ \S c , agrees at most (N − D) s y m b o l sw i t he a c hfi n g e r p r i n tc i , i ∈S c,τ ,a n yc j agrees at most ℓ(N − D) symbols with ỹτ .Therefore we have 3 The complexity of encoding is O(N 2 0 ) in the concatenated coding.The condition ( 13) is the same as the condition of ℓ-traceability (TA) codes against the interleaving attack (Staddon et al., 2001;Silverberg et al., 2003), which identify at least one colluder in S c of size less than or equal to ℓ.The condition ( 13) is weaker than (11) in the sense that ( 13) is sufficient to satisfy (11).
By Singleton's bound, the minimum distance of a linear error correcting code satisfies D ≤ N − K + 1.Since it is desirable to make D as large as possible, we may well use the RS code satisfying D = N − K + 1 as the outer code.For given prime power q, there always exists a lengthened/shortened RS code for every N ≤ q if K ≥ 1andD = N − K + 1.Other promising candidates for the outer code are algebraic geometry (AG) codes or near-MDS expander codes in (Guruswami, 2004), which asymptotically meet Singleton's bound.All these codes can be decoded by the Guruswami-Sudan (GS) list-decoding algorithm (Guruswami, 2004), which corrects up to N(1 − (K − 1)/N) errors with the polynomial time complexity in N (Silverberg et al., 2003).

Decoding algorithm for concatenated AC codes
We propose a polynomial-time decoding algorithm for a concatenated code C base on Proposition 1.As in (Fernandez & Soriano, 2004) and (Silverberg et al., 2003) for ℓ-TA codes against the interleaving attack, we employ a code C o that can be decoded by the GS list-decoding algorithm.The detail decoding procedure is described as follows: [Proposed Decoding Algorithm] (1) For each y (l) , l = 1,...,N given by ( 4), find all the members in Y (l) via the decoding of the inner AC code.
We note that in step (1), which corresponds to the inner decoding, Y (l) for l = 1,...,N are correctly found although we cannot see S c itself.We show that if the outer code satisfies the condition (13), then S c,τ is correctly found at step (4) in each iteration by the following lemmas: Lemma 3. If h ≤ ℓ and an outer code satisfying ( 13) is concatenated with an ℓ-resilient AC code, there is some l ∈{ 1,...,N} such that |Y (l) | = h.i.e., the maximum number of iterations of the proposed decoding algorithm is τ max = h.
Therefore, there are at least D − 2(N − D) positions in which all three codewords disagree.
When we consider the forth codeword c 4 , the same argument gives at least D − (2 + 3)(N − D) positions in which all four codewords disagree.By induction, among {c 1 , c 2 ,...,c ν such that ν ≤ h, the number of positions in which all the codewords c 1 ,...,c ν disagree is at least Since ( 13) is satisfied, the r.h.s. of ( 17) is further bounded by from below.Equation ( 18) implies that the lemma holds.✷ Lemma 4. If h ≤ ℓ and the outer code satisfies ( 13), all the codewords satisfying ( 12) for given ỹτ are correctly found at step (4).
(Proof ) If ( 13) is satisfied, then we can easily check where the r.h.s.expresses the correcting radius of the GS list-decoding algorithm (Silverberg et al., 2003).Therefore all the codewords satisfying (12) are found in step (4).✷ The next theorem states the number of colluders captured by the proposed decoding algorithm in the absence of noise.
Theorem 2. If h ≤ ℓ and we use an ℓ-resilient AC code B as the inner code and an (N, K, D) error correcting code satisfying ( 13) as the outer code, then the proposed decoding algorithm finds all the colluders in S c .
(Proof ) In the first iteration τ = 1, obviously there is at least one colluder's codeword c j ∈C o which is in the distance d H (c i ,ỹ 1 ) ≤ N(1 − 1/ℓ) and can be decoded by the GS list-decoding.This implies that all the colluders can be found if h = 2.
Let some h,3 ≤ h ≤ ℓ, be given, and we first assume that in each iteration only one colluder's codeword is found before iteration τ,2 ≤ τ ≤ h.In iteration τ, we assume that the colluders found so far are denoted by c1 ,...,c τ−1 for simplicity.Let a function ∆(τ) be defined as Since any two codewords agree in at most N − D positions, each of remaining cτ ,...,c h agrees at least ∆(τ) positions with Y τ−1 , which has been calculated at step (5) in iteration τ − 1.By using (13), ∆(τ) is bounded as When randomly picking ỹτ at step (3) in iteration τ, there is at least one codeword among cτ ,...,c h which agrees greater than or equal to ∆(τ)/(h − τ + 1) positions with ỹτ ,whichis bounded as The r.h.s. of ( 22) is greater than N/ℓ since wherewesubstituteh = ℓ to obtain the last inequality.The r.h.s. of ( 23) is apparently greater than zero for h ≥ 3a n dτ ≥ 2. This in turn implies that there is at least one codeword c j , τ ≤ j ≤ h,suc ht h a td H (c j ,ỹ τ ) ≤ N(1 − 1/ℓ) and it can be found by the GS-list decoding algorithm.
The case where in some iteration τ ′ < τ, more than one colluder's codeword is found can be proved in a similar way.✷ We state the time complexity of the proposed decoding algorithm by assuming an RS code is used as the outer code.As for the inner decoding (step (1)), we conduct the exhaustive search of all the combinations of ℓ or less inner codewords.The number of inner codewords is q = O(N), so the time complexity for each inner decoding is O(N ℓ ), which is polynomial time in code length N 0 .In each iteration, we execute the GS list-decoding algorithm for the outer code, which requires the time complexity of O(N 15 ) for iteration τ = 1w h e nh = ℓ and of O(N 4 ) for iteration τ ≥ 2( o rτ ≥ 1w h e nh <ℓ ).Since the maximum number of iteration is ℓ, the overall decoding complexity is bounded by max{O(N ℓ+1 ), O(N 15 )} when h = ℓ.W h e nh <ℓ , we can also show that the overall decoding complexity is bounded by max{O(N ℓ+1 ), O(hN 4 )}.

Coding rates of concatenated AC codes
As for the inner code C i = B, we require only the condition that |B| ≥ q,w h e r eq is the number of symbols of an outer code C o .I f|B|/q > 1, we can divide the CAC codes into several groups.Define g = ⌊|B|/q⌋.We first divide an inner code B into g disjoint subsets B (1) , B (2) ,...,B (g) such that |B (i) |≥q, i = 1,2,...,g.B yu s i n ge a c hB (i) as the inner codes, we obtain g disjoint concatenated codes, denoted by C (1) , C (2) ,...,C (g)   (i) is an ℓ-resilient CAC code with size F 0 := gq K if each concatenated code C (i) is an ℓ-resilient AC code.Coding rate R 0 of C is given by R 0 =(log 2 gq K )/N 0 .
Example 1.We show the numbers of codewords of five CAC codes C which consist of EG-AC inner codes C i = B and MDS outer codes C o (shortened RS codes (Lin & Costello, 2004)).For comparison, we show conventional EG-AC codes B µ (Yagi et al., 2007) with the same resilience and the code length.Table 1 shows the parameters of original and concatenated EG-AC codes and Table 2 shows the logarithm of the number of codewords for each code.From Table 2, it can be found that the CAC codes is effective.In particular, as the code length becomes large, the effectiveness of the CAC codes is enhanced. ✷ We now analyze the asymptotic number of codewords by assuming an (N, K, D) RS code satisfying ( 13) and an EG-AC code of the maximal order µ * are used as the outer code and the inner code, respectively.For simplicity, we assume q = N, which means that the lengthened RS code is used.The EG-AC code of the maximal order µ * satisfies f EG (µ * )=νn Yagi et al., 2009).There exists an m > 3s u c ht h a tνn 1 4 (m+1) < q ≤ νn 1 4 (m+2) , and hence νn from N = q.Note that the condition ( 13) is equivalent to K < N/ℓ 2 + 1sinceK = N − D + 1, but there always exit RS codes with K ≥ N/ℓ 2 (this can be confirmed by setting D = ⌈N(1 − 1/ℓ 2 )⌉).Then the total number of codewords where ν ′ = ν 4 m+5 .Furthermore, by carefully investing the parameters of EG-AC codes, we find resulting in m = Θ(2(log ℓ+1 N 0 ) 1 2 ).W eh a v em → ∞ as N 0 → ∞ and ν ′ ≥ 1.Thus, for any ǫ,0 < ǫ < 1, there exists a concatenated AC code such that with sufficiently large N 0 .Equation ( 28) implies that the number of codewords increases arbitrarily closely in the exponential order of N 0 log N 0 /ℓ 2 , which is equal to a single RS code of length N 0 .Thus, the number of codewords of the proposed concatenated codes is much greater than those of the AC codes in (Yagi et al., 2009).On the other hand, any fingerprint c j , j ∈ Γ \S c agrees at most ℓ(N − D)+e symbols in Ỹτ .
We have for ℓ ≥ 2. Therefore the condition (10) is satisfied.✷ Theorem 3. Assume that we use an ℓ-resilient AC code B as the inner code and an (N, K, D) error correcting code satisfying (30) as the outer code.If the number of inner decoders whose outputs are in error is less than or equal to e, then the proposed decoding algorithm finds all the colluders in S c .✷ It follows from ( 13) and ( 30) that the e-error correcting capability requires a more stringent condition on D by (ℓ + 1)e/ℓ 2 .In this case, we can also use an MDS or a near-MDS code as the outer code C o .

Existence of polynomial-time AC codes with a positive rate
The proposed method given in the previous section is of importance from the fact that we can construct it in a deterministic way for given parameters and implement encoding and decoding with polynomial-time complexity in n.Theorem 2 indicates that the size of the concatenated AC codes still grows semi-exponential in the code length, and the coding rate of this code goes to zero as n tends to infinity.Recently, it has been pointed out by (Koga, 2010) that there exist AC codes with a strictly positive coding rate although it is not clear how to construct such codes.Here, we show that there exist polynomial-time AC codes with a strictly positive coding rate, based on the argument given by (Koga, 2010).
First, we review a result on the coding rate of ℓ-resilient AC codes shown by (Koga, 2010).
Theorem 4 (Koga, 2010).For given ℓ ≥ 2, there exists at least one ℓ-resilient AC code with the coding rate for sufficiently large n.✷ Theorem 4 is an " existence theorem" which indicates only the existence of good AC codes but does not imply how to construct such codes.In addition, encoding and decoding complexity is in the exponential order of n, which seems impractical even though such codes can be obtained.The next theorem shows the existence of ℓ-resilient AC codes that can be encoded and decoded with polynomial order complexity in n. for sufficiently large n.
(Proof ) This theorem can be easily proven by noticing that the coding rate is decreased by the factor of 1/ℓ 2 if concatenated coding is used.✷ From Theorem 5, we can reduce the encoding and decoding complexity to a great extent by allowing the coding rate decreases by the factor of 1 ℓ 2 .However, it is guaranteed that the existence of an ℓ-resilient concatenated AC code whose coding rate is still strictly positive for all ℓ ≥ 2.

Conclusion
In this chapter, for multimedia fingerprinting, concatenated coding in which the outer code is a near-MDS error correcting code and the inner code is a class of AC codes in (Trappe et al., 2003) and (Yagi et al., 2009), was proposed.Using AC codes given by (Kang et al., 2006) and (Li et al., 2009) as the inner codes, a similar result can be obtained.Based on list-decoding for the outer code, we proposed a polynomial-time decoding algorithm.Furthermore, we derived a condition assuring that concatenated AC codes have e-error correcting capability.
In the last part of this chapter, we have shown the existence of AC codes that can be encoded and decoded with polynomial time complexity and have a positive rate.It is of interest to investigate how to construct such codes in a deterministic way.

Fig. 1 .
Fig. 1.A encoding procedure for multimedia fingerprinting using the spread spectrum technique.⊕ denotes the real number addition of w (l) j with the host content x.

j
) is created via the spread spectrum technique in which w (l) j is generated by {u i ∈R M | i = 1,2,...,n} and b

Fig. 2 .
Fig. 2. Illustration of the averaging attack at segment l conducted by S c = {1,2,...,h}.Th e sequence b(l) j is an estimate which corresponds to b (l) j .
Multidisciplinary Approach to Complex Issues www.intechopen.com

Fig. 3 .
Fig. 3. Encoding procedure for a concatenated AC code.A codeword of the outer code is first generated, and each symbol is mapped into a codeword of the inner code.The total length of the concatenated AC code is N 0 = Nn,whereN and n are the code length of the outer code and the inner code, respectively.codeword b (l) j ∈Bis unique and pre-determined.The code B is used as the inner code C i .W e assume that |B| ≥ q for one-to-one correspondence between q symbols of the outer code and a subset of codewords of B. The mapped codeword is b j =( b (1) j ,...,b (N) j ) ∈{ 0, 1} n×N .W e denote the binary concatenated code of length N 0 := Nn by C⊆{ 0, 1} n×N .After generating b j ∈C , we compute a watermark of each inner codeword b (l) j ∈B , denoted by w (l) j ,b y( 2 ) .If we use a trivial error correcting code, namely the (1,1,1) error correcting code, then this concatenated code reduces to the AC code in(Trappe et al., 2003) or(Yagi et al., 2009).
129 Polynomial-Time Codes Against Averaging Attack for Multimedia Fingerprinting www.intechopen.com Approach to Complex Issues www.intechopen.comPolynomial-Time Codes Against Averaging Attack for Multimedia Fingerprinting 7We define the Hamming distance between a sequence and a sequence set.Let c j j ) ∈C o such that c 11) is used as the outer code, the concatenated code C is an (ℓ, h)-resilient CAC code for Y. ✷ The (ℓ, r)-resilient CAC codes enable us to detect at least r colluders in S c by simply calculating the Hamming distance after obtaining each Y (l) for l = 1, 2, . . ., N via the inner decoding.However, we need to exhaustively search codewords in C o ,a n dad e c o d i n g algorithm requires exponential time complexity in outer code length N, i.e., O(q N ).In(Y a giet al., 2007), the use of the Reed-Solomon (RS) codes is suggested as the outer codes.The RS code is an instance of the maximum distance separable (MDS) codes which meet Singleton's bound 131 Polynomial-Time Codes Against Averaging Attack for Multimedia Fingerprinting www.intechopen.comD ≤ N − K + 1 with equality, and N = q − 1foraprimepowerq Approach to Complex Issues www.intechopen.comSince d H (c i ,ỹ τ ) ≤ N(1 − 1/ℓ), (14) implies d H (c j ,ỹ τ ) > d H (c i ,ỹ τ ).Therefore we can correctly detect h τ colluders in S c,τ by comparing the Hamming distance from ỹτ .✷ Execute the GS list-decoding algorithm for ỹτ , and find the set S c,τ .
Codes Against Averaging Attack for Multimedia Fingerprinting www.intechopen.com(Proof ) If h = 2, then there is at least D positions such that |Y (l) | = 2 because the Hamming distance of any two outer codewords is at least D. For the case h ≥ 3, the symbols of user 1's codeword c 1 and user 2's codeword c 2 are different in at least D positions and we denote this position set by D.T h e nu s e r3 ' sc o d e w o r dc 3 cannot agree more than N − D symbols with each of c 1 and c 2 in the position indexed by D. i.e., Approach to Complex Issues www.intechopen.comPolynomial-Time Codes Against Averaging Attack for Multimedia Fingerprinting 11

Theorem 5 .
For given ℓ ≥ 2, there exists at least one ℓ-resilient concatenated AC code that can encoded and decoded with polynomial order complexity in n with the coding rate 138 Multimedia -A Multidisciplinary Approach to Complex Issues www.intechopen.comPolynomial-Time Codes Against Averaging Attack for Multimedia Fingerprinting 15 . The overall code C =