Gossip Codes for Fingerprinting: Construction, Erasure Analysis and Pirate Tracing

This work presents two new construction techniques for q-ary Gossip codes from tdesigns and Traceability schemes. These Gossip codes achieve the shortest code length specified in terms of code parameters and can withstand erasures in digital fingerprinting applications. This work presents the construction of embedded Gossip codes for extending an existing Gossip code into a bigger code. It discusses the construction of concatenated codes and realisation of erasure model through concatenated codes.


Introduction
Protecting digital content from illegal copying and distributing is one of the key issues worrying owners and distributors in the digital world.Copyrights are an accepted means of legally encouraging the creation of works and their rightful exploitation.Recent developments in digital information processing and distribution have had a tremendous impact on the creators and their copyrights.On the one hand, these advancements open new ways of creating and exploiting digital works, while on the other, the same advancements also open up novel ways of circumventing copyrights.These techniques can be used against the interests of copyright holders by creating less number of copies and distributing them effectively.Therefore, new digital rights protection techniques are required, which allow the creators and other right-holders to enforce their legal rights and interests.The overall goal of these techniques is to ensure sufficient incentives for creating works and making them available in the digital form.
Fingerprinting digital objects help in checking copyright violations in the digital world.The scope of digital fingerprinting also includes pay per view, pay per use and other broadcast applications.Digital fingerprinting refers to the act of embedding a unique identifier in a digital object, in such a way that it is difficult for others to find and destroy the identifier.The fingerprints are typically embedded into the content using watermarking techniques, which are designed to be robust to a variety of attacks.This marking makes every user's copy unique, while still being close to the original.It allows the distributor to detect any unauthorised copy and trace it back to its origin.Since a marked object can be traced back to the owner, users will be deterred from releasing an unauthorised copy.A cost-effective attack against such digital fingerprints is collusion, where several differently marked copies of the same content are combined to disrupt the underlying fingerprints.
A coalition of users may detect the marks by comparing multiple fingerprinted objects and modify or erase them.In this process, pirates may further try to frame innocent users.To prevent this, Boneh and Shaw [Boneh and Shaw 98] introduced frameproof codes in which the pirates cannot frame innocent users outside their coalition.Moreover, it is necessary for the distributor to find at least one user involved in creating a pirate copy.Identifiable Parent Property (IPP) codes, introduced by Hollman et al. [Hollman,van Lint, exactly for this purpose, can identify at least one parent of the pirate word.Non-binary (alphabet size 2 q > ) IPP codes can handle a large collusion size ( 2) c > [Barg, Cohen, Encheva, Kabatiansky and Zémor 01] unlike binary IPP codes.In [Trappe,Wu,Wang and Liu 03], the authors investigate the problem of designing fingerprints that can withstand collusion attacks and allow the identification of colluders using Anti-Collusion codes (ACC), which were originally proposed in [Trappe,Wu,Wang and Liu 02].Their work addresses the collusion problem considering the additive embedding and then study the effect that an averaging collusion has upon orthogonal modulation.Their fingerprinting scheme is based upon code modulation and the code construction requires only ( ) O M orthogonal signals in order to accommodate M users, for a given number of colluders.The work presents four different detection strategies that can be used with ACC for identifying a suspect set of colluders.
Traceable schemes are cryptographic systems that provide protection against illegal copying and redistribution of digital data.A closely related concept is traceability systems introduced by Chor et al [Chor,Fiat,Naor 94] used in the context of broadcast encryption schemes.Broadcast encryption systems [Fiat,Naor 93], [Stinson,Wei 99] allow targeting of an encrypted message to a privileged group of receivers.Each receiver has a decoder with a set of keys that allows him to decrypt the encrypted messages if he is a member of the target group.When a group of colluders (up to c ) construct a pirate decoder to decrypt the content, broadcast encryption systems can identify at least one of the colluders who contributed to the pirate decoder.In the tracing mechanism proposed in [Stinson and Wei 98], the merchant finds the numbers of common keys between the pirate decoder and all the authorised decoders.The merchant then chooses the decoder with the maximum number of common keys with the pirate decoder, which exposes a culprit.These schemes are known as Traceability schemes and are also called key fingerprinting schemes, which allow tracing of one of the colluders.In a Traceability Scheme [Chor,Fiat,Naor 94], [Stinson and Wei 98], [Kurosawa, Desmedt 98], [Kurosawa, Desmedt 98], [Garay,Staddon,Wool 99], each authorised user has a decoder with a set of k keys, from a base key set X of size v that uniquely determines the owner and allows him to decrypt the encrypted broadcast.
This work present the construction methods for non-binary IPP codes, namely, c Gossip codes [Lindkvist 01] from t -designs, Traceability schemes and vice versa.The constructions attain the minimum possible code length specified for Gossip codes, in terms of alphabet size q , number of codewords M and collusion size c .We describe the construction of embedded Gossip codes and also generalise Gossip codes.We discuss the pirate tracing mechanism for these codes in presence of erasures.We also present a construction method and an analysis of Concatenated codes.
The organization of the paper is as follows: Section 2 presents the preliminaries, namely Traceability schemes,t designs, fingerprinting codes and related work.In section 3, we describe the construction ofc Gossip codes with shortest possible length from c -Traceability schemes, t -designs and vice versa.This section also presents the construction of embedded Gossip codes and generalised Gossip codes.The section 4 models erasures in Gossip codes, section 5 analyses Gossip codes and concatenated codes followed by the conclusions in Section 6.

Preliminaries
This section presents the background and related work on fingerprinting.
whose symbols are denoted by {0, ..., 1} q − .Then and we will call it an ( , , ) The elements of Γ are called codewords.Each codeword is given by 1 ( , ..., ) , where , 1 For any subset of codewords C ⊆ Γ , we define the set of descendents of C , denoted ( ) [Stinson and Wei 98]) The set ( ) D C consists of N -tuples that could be produced by a coalition holding the codewords of the set C .

Gossip codes
Gossip codes are fingerprinting codes introduced in [Lindkvist 01] which can provide protection against illegal copying of digital objects.They are also c -IPP codes, which can identify at least one user involved in creating an illegal copy.
We first explain the construction of Gossip codes originally presented in [Lindkvist,Löfvenberg,and M. Svanström 02].Let ( , ) B M q be the 0 /1 -matrix consisting of l columns and M rows such that each column is created by placing 1 q − ones and 1 M q − + zeros.The parameters q and M are so chosen satisfying 3 q ≥ and 1 M q ≥ + .The codeword matrix ( , ) G M q is constructed from ( , ) B M q by replacing the 1 q − ones in each column, with the 1 q − different non-zero symbols of Q and retaining the zeros unaltered.The code matrix ( , ) G M q is called a Gossip code and each code column is known as a gossip column.
In a gossip column, the occurrence of non-zero alphabet symbols (among themselves) is immaterial as long as they are distinct.We denote ( , ) G M q as -(, , ) c Gossip l M q code where c is collusion size, M is the number of code words, q is the alphabet size and l is the length of the code.With the above construction method a 2-Gossip (7, 7, 4) code constructed is as follows.

Tracing using gossip columns
Consider the 6 th column of the Gossip code presented in e.g.2.1.1.In this gossip column the non-zero symbols are distinct and appear at positions 3 rd , 5 th and 6 th .Thus this gossip column is responsible for tracing users {3 rd or 5 th or 6 th } (based on 6 th position in the pirate word) if they are involved as traitors.The collusion groups whose members can be traced (accused) by a gossip column are known as accusation groups of that column.Thus this gossip column accuse the collusion groups {3, 5}, {5, 6} and {3, 6} of collusion size 2 c = .The remaining collusion groups are accusation groups for some other columns.The collusion groups {3, i}(for i=1, 2, 4 or 7) certainly can create a pirate word with a 'one' at that column's position.But the tracing of these groups is left over to other gossip columns.Thus a gossip column contributes to tracing traitors involved in creating a pirate word.
Lemma 2.1.1A Gossip code is the code with a gossip column for each collusion group to trace.(see [Lindkvist 01]) The tracing method is based on the fact that every illegal fingerprint contains at least one non-zero symbol.If a particular collusion group is traceable by a gossip column, then all its subgroups are also traceable by the same gossip column since they will have a subset of possible alphabet symbols.If there exists a gossip column for each c -group, it is possible to trace at least one member of all pirate groups whose size is less than or equal to c. So, the Gossip code will always find a member of the pirate group and thus it is a c-IPP code.
Definition 2.1.2The set of non-zero positions of a gossip column is termed as column key corresponding to that column.
In e.g.2.1.1 the column key for the 6 th column is {3, 5, 6}.Column keys of Gossip code identify the set of pirate groups that each gossip column is capable of accusing.From a gossip column of a Gossip code, where c q M < < , exactly collusion groups are traceable.If M is the total number of codewords in a Gossip code, then the total number of possible pirate groups of size c is given by . For 1 c q ≤ − , each gossip column at the most can accuse groups since there are ( 1) q − non-zero symbols, which are distinct.Hence, in a Gossip code the total number of gossip columns for c q M < < .This gives a lower bound on length of the Gossip code.If the Gossip code length attains the equality condition it has the shortest possible length.Hereafter we denote this shortest length by l .The structure of Gossip code is such that every non-zero symbol in the pirate word will lead to one culprit.(see Lemma 4.1.1)Since Gossip codes are q'ary IPP codes and come up with a deterministic tracing algorithm unlike q'ary c-secure code with error probability ε [Boneh and Shaw 98], they have a significant role to play in fingerprinting applications.

Traceability Schemes
A c -Traceability scheme -( , , ) c TS k b v [Stinson,Wei 99], [Stinson and Wei 98] is a broadcast encryption scheme, where k is the number of keys provided to each user, b is the total number of users, v is the total number of base keys and c is the collusion size of pirates that the scheme can withstand.The Trusted Authority generates a set T of v base keys and assigns k keys chosen from T to each user.
The th i user's personal key or private key is denoted by ( ) P i that uniquely determines the owner and allows him to decrypt the encrypted broadcast.The broadcast message consists of an enabling block E and a cipher block Y .The cipher block is the encryption of the actual plaintext data m using a secret key ' a '.That is, ( ) , where () ξ is the symmetric encryption function for some cryptosystem.
The enabling block consists the shares of a , which are encrypted using some or all of the v keys in the base set T .The decryption of enabling block will allow the recovery of the secret key a .Every authorized user should be able to recover a using his personal key and then decrypt the cipher block using a to obtain the plaintext data i.e., ( ) t v k λ design [Colbourn,Dinitz (96)] is a set system ( , ) ∈ , and every t -subset of X occurs in exactly λ blocks in B .

Related work and known bounds
The construction of frameproof codes from Traceability schemes is presented in [Stinson and Wei 98].In [Safavi-Naini and Wang 01] lower bounds on maximum number of codewords for frameproof codes and Traceability schemes are presented.
Gafni et al [Gafni,Staddon,Yin 99] presented a method for adding any desired level of broadcasting capability to any Traceability scheme and vice versa.
With regard to secure codes Boneh et al [Boneh and Shaw 98] presented an explicit construction for collusion secure codes.Their code has a length of ( ) ( )  ( ) Guth and Pitzmann [Guth, Pfitzmann 03] constructed binary c -secure codes with ε error under weak marking assumption, which assumes that adversary can create only a certain percentage of erasures in place of embedded marks in pirate fingerprints and these erasures are (approximately) randomly distributed.In [Trappe,Wu,Wang and Liu 02] a new class of codes, called Anti-Collusion codes (ACC) are proposed which have the property that the composition of any subset of c or fewer code-vectors is unique.Using this property, it is possible to identify groups of c or fewer colluders.Their work presents a construction of binary-valued ACC under the logical AND operation that uses the theory of combinatorial designs ( t -( , ,1) v k designs).For erasures in non-binary codes Safavi-Naini et al [Safavi-Naini, Wang 03] gave a construction of q -ary c -secure code that can recover the deleted marks of a shortened fingerprint.In [Safavi-Naini, Wang 03] the codeword is repeated adequate number of times so that at least one copy of the embedded codeword can be recovered and thereby increasing erasure tolerance.
Gossip code is introduced as IPP code in [Lindkvist 01] for collusion secure fingerprinting applications.The Gossip code with 1 c q = − has been studied in [Lindkvist,Löfvenberg,and M. Svanström 02].The conditions for a Gossip code to become Traceability (TA) code are presented in [Lindkvist, Löfvenberg, and . For 3 q = the use of this code as an error correcting code was analysed in [Svanström 99].Fernández and Soriano [Fernández,Soriano 02] presented concatenated fingerprinting codes with efficient identification.In this case the inner code use efficient decoding algorithms (Chase algorithms) that correct beyond error correction bound of the code.

Construction
We present the methods to construct Gossip codes that attain shortest possible length from Traceability schemes and t -designs.A program DISCRETA [Betten,Laue,Wassermann 97] to compute t -designs is available in public domain.In Gossip codes that achieve the bound, the gossip columns accuse distinct groups and thus every collusion group is an accusation group for some gossip column or the other.
The condition for gossip code to achieve its equality bound of code length is that each gossip column should accuse distinct groups.In order to have shortest length each gossip column should accuse maximum possible groups that are distinct.

Gossip codes from Partition method and t-designs
Gossip codes that achieve the bound constitute a partition on Ŝ the set of all user groups (collusion groups of size c ).This means there exists an equivalence relation It is transparent that the relation R is reflexive, symmetric and transitive and hence an equivalence relation that partitions Ŝ into equivalence classes.The construction of -(, , ) c Gossip l M q code from partition method is as follows.
Let 1 2 , ,..., r C C C be the exhaustive members of the i th equivalence class.We now compute the set 1 r i i C = U , which gives the non-zero positions (column key) for the i th gossip column.Repeating the same process for all equivalence classes, one can arrive at all of the column keys.From these column keys the indices of non-zero positions for each gossip column are known, and hence a -(, , ) c Gossip l M q code can be constructed.
Theorem 3.1.1A -(, , ) c Gossip l M q code exists if and only if -( , 1, 1) c M q − design exists where ∈ , and every c -subset of X occurs in exactly one block in B .Let i B be the i th column key of the Gossip code.Then the accusation groups for the i th gossip column are identical to the c -subsets of i B .Since every c -subset of X occurs in exactly one block, the accusation groups of all gossip columns are distinct.It is known that number of blocks in -( , code exists for all values of M .For a chosen , M q and c the existence a shortest Gossip code is according to Theorem 3.1.1.However for any chosen values of , M q and c , there exists a Gossip code such that c q M < < , which may not achieve the shortest length.The following are two known results [Colbourn,Dinitz (96)] about t-designs, which are related to this work.
t v k λ design and S is any -s element subset of X , with 0 s t ≤ < , then the number of blocks containing S is t v k λ design and S is any -s element subset of X , with 0 s t ≤ ≤ , then the number of blocks does not contain any point of S is In Theorem 3.1.3we present some of the properties of shortest Gossip codes.
From a gossip column of a Gossip code, where c q M < < , exactly collusion groups are traceable.If M is the total number of codewords in a Gossip code, then the total number of possible pirate groups of size c is given by . For 1 c q ≤ − , each gossip column at the most can accuse groups since there are ( 1) q − non-zero symbols, which are distinct.In a Gossip code the total number of gossip columns for c q M < < .This gives a lower bound on length of the Gossip code.Hence the shortest Gossip code length attains the equality condition.
We have shown that (Theorem 3.1.1)a shortest -(, , ) c Gossip l M q code exists if and only if -( , ,1) Looking at the tdesign's blocks we can tell which group's pirate words will have 0 at a given position, and which groups will not.Let W be the collusion group involved in piracy.We

Gossip codes from Traceability Schemes
In this section, we present the construction of shortest length Gossip codes from Traceability Schemes -( , , ) c TS k b v and -( , , 1) t v k designs.The required condition for construction of Gossip codes from a c -Traceability scheme is that the number of private keys in the c -Traceability Scheme should be x will be accusation set for both i th and j th gossip columns.Hence the accusation sets corresponding to gossip columns in the Gossip code are not distinct.
Proof.For a -( , , ) c TS k b v , the total number of c -groups that can be formed from v . Then the maximum number of -c groups that can be formed by each private key containing k elements is code, and each column contains 1 k + distinct elements ( ) Gossip code achieves the minimum code length. The following theorem presents the converse of Theorem 3.2.1,i.e., the construction of Traceability Schemes from Gossip codes.
Proof.Let ( , ) X B be the set representation of the Gossip code.Then we have X M = , and 1 i B q = − for every i B B ∈ , where each block i B correspond to one column key.The number of blocks in B is equal to . Since the Gossip code achieves the minimum code length the accusation sets of each gossip column are distinct.This implies that this ( , ) X B system represent a -( , , ) t v k λ design, where , , 1, t c v M k q = = = − and 1 λ = .This implies there exists corresponding (see Theorem 3.2 in [Stinson and Wei 98]) where ( ) ( ) code for all 1 5 mod 20 v or ≡ .

Embedded Gossip codes
In many cases, the number of users in a scheme will increase after the system is set up.Initially, the data supplier will construct a scheme that will accommodate a fixed number of users say M .If the number of users exceeds M , we need to extend the scheme that is compatible with the existing scheme.Such scenarios are possible in Traceability Schemes apart from digital fingerprinting applications.In Traceability Schemes, it is not advisable to change the keys already issued, when the users in the system grow.Embedded Traceability schemes extend the scheme compatible to the existing Traceability Scheme.Embedded Gossip codes (see Definition 3.3.1)can be used to construct these Embedded Traceability schemes apart from fingerprinting codes.The construction of embedded Gossip codes is as follows.
code, where M M′ < and l l′ < .Suppose that for every codeword x ∈ Γ there exists a codeword x′ ′ ∈ Γ such that the first l symbols are the same as that of x .Then we say Γ is embedded into ′ Γ .It is simpler to understand the embedding in terms of set systems.Let ( , ) X B and ( , ) t v k λ and ( , ) Proof.The proof follows from Theorem 3.1.1since a -(, , ) c Gossip l M q code is identical to -( , 1, 1) c M q − design in set system representation. As an example 2-(7, 7, 4) Gossip code can be embedded into 2-(35, 15, 4) Gossip code.

Erasures in Gossip codes
We consider erasures in Gossip codes that achieve minimum possible code length.In our discussions, erasure means a non-alphabet symbol chosen by the pirates in a detected position of the embedded fingerprint.The pirates can find only those alphabet symbols that match with any one of their copies at each detected position.
We assume that this marking assumption [Boneh and Shaw 98] holds good in our model.In general, the embedding mechanism, which encodes codewords into digital objects, will determine the type of alphabet symbols or erasures that are possible at each detected position for creating an illegal copy.
Our model assumes that pirates can create one of the alphabet symbols matching any one of their copies, or an erasure in the place of a detected mark.When the pirates choose a symbol that matches with a symbol in the alphabet, it is not be possible to differentiate between the symbols chosen by the pirates and the valid symbols embedded under usual fingerprinting methods.This may lead to errors in tracing.For this reason, the embedding algorithm should be so chosen that it hides the actual alphabet from being detected by the pirates (through some encoding mechanism).We now discuss the erasures in Gossip codes.
Definition 4.1 A Fingerprinting System with Optional Erasures (FSOPE) is a system where the pirate controlling a group of traitors may optionally choose to create erasures at the detected marks, i.e., the pirate may create an alphabet symbol that he can find or a non-alphabet symbol.
FSOPE include the following cases:

Gossip codes with no erasures
In this case, the pirates are not allowed to create erasures, however, at each position they are free to choose the alphabet symbols they find in their copies.The tracing algorithm identifies a culprit from the extracted codeword.The tracing mechanism is obvious when the coalition size is equal to one.This is because the pirate's codeword has to match with one of the valid codewords of the Gossip code.We consider e.g.2.2.1, i.e., 2-Gossip (7, 7, 4) code to illustrate tracing in Gossip codes with no erasures.

Tracing with no erasures
Let the pirate set be where i w is the i th codeword in e.g.2.1.1.Let the pirate word found in the illegal copy be {2, 0, 0, 0, 0, 0, 0} x = . Clearly w w .Consider the non-zero value in the pirate word x of the above example.Its position is first.Observe that the second codeword contains 2 in the first position.We accuse the 2 nd user as culprit because the position of non-zero alphabet symbol and the value in the pirate word match with that of the second user's codeword.It may also be noted that the 2 nd user is the member of both the coalitions that are capable of creating the pirate word.
These codes can be constructed from Theorem 3.1.1and Theorem 3.2.1.Please see the Appendix for details.
Lemma 4.1.1Every pirate word created from a Gossip code containing at least one non-zero alphabet symbol can reveal one member of the collusion.
Proof.The construction of the Gossip code makes it clear that every non-zero symbol in the pirate word can reveal one member of the collusion.Let the i th position in the pirate word be a valid alphabet symbol say '1', then there exists exactly one codeword say j th codeword, which contains '1' in the i th position.It is clear that without the involvement of j th user, it is impossible to create the pirate word x and so the algorithm accuses j th user. The general construction of a Gossip code that can trace all active colluders (in no erasures case) who contributed to pirate copy is as follows: Choose the number of codewords equal to the number of alphabet symbols i.e., M q = .Let the collusion size c be equal to 1 q − and the number of gossip columns be l q = .Construct q gossip columns, where each column contains the alphabet symbols {0,..., 1} q − only once.It is known from [Lindkvist 01] that when 1 c q = − , there exists a Gossip code such that each column accuses one of the collusion sets.
If M q = then -( 1 , , ) c Gossip M M code is shortest code since all symbols are distinct.But for concatenated codes we consider inner code with l q M = = .
Proof.In a ( -1)-( , , ) q Gossip q q q code every symbol in the alphabet appears only once in each column.So the alphabet symbol 0 also contributes to tracing and each gossip column can trace pirate groups.This leads to tracing of all the active users who contributed in creating the pirate word by using their legitimate copies.

Gossip codes with selective erasures
In this case users are free to create erasures or the alphabet symbols they found in their copies at each detected position of the collusion set.When a pirate copy is created by a colluded set the undetected positions of the collusion remain the same in the copy.

4.2.1
Tracing with selective erasures Lemma 4.1.1holds good for all Gossip codes even in presence of erasures, thus any pirate word containing one non-zero symbol can reveal one traitor.In a -( , , ) c Gossip l M q code if the pirates create only erasures at all detected positions then the tracing is same as in only erasures case.
Lemma 4.2.1 The ( -1)-( , , ) q Gossip q q q code can trace all the pirate words except ( , , , , ... times) e e e e e l to reveal at least one culprit.
Proof.In selective erasures case of a ( -1)-( , , ) q Gossip q q q code every alphabet symbol (including 0) can identify a culprit.But if all the symbols are erasures nobody can be accused.
In e.g.2.2.1 it can be seen that the pirate word ( , , , , ) e e e e e contains all erasures and so the tracing will not yield any pirate.It will be the same as choosing only erasures in detected positions, since all the positions are detected for a collusion of size 2 c = .

Gossip codes with only erasures
An embedded position is detected when its value is found different in two copies during comparison.In only erasures case, the pirates are allowed to create only erasures in the detected positions and cannot choose any valid alphabet symbol.In only erasures case (of any shortest Gossip code) it is always true that each pirate group can create only one pirate word.Let -(, , ) c Gossip l M q code be a code with 1 c q = − and 2.
( 1) M q = − .Then the number of zeros in each gossip column is equal to the number of pirates c , i.e., ( 1) c M q = − − .This will guarantee a unique coordinate (in the pirate word) for each pirate group, which has only zeros.Thus the pirate words created by different pirate groups are all distinct.Here is an example.
Example 4.3.1 2-Gossip(6, 4, 3) code Here, the number of pirate sets of size 2 are equal to 4 2 =6.The exhaustive list of the pirate words (equal to number of pirate groups here) created by all the collusion sets are as follows, where e denotes an erasure at all detected positions and 0 means the positions are undetected.We observe that each collusion set creates a unique fingerprint in only erasures case, i.e., the number of pirate fingerprints is equal to number of collusion sets.Moreover all the pirate words are distinct.Since there is one-to-one matching between a particular collusion set and the pirate fingerprint, it is possible to find the collusion group as a whole.This tracing method has complexity where c is collusion size.An alternative method is to find all the zeros in the pirate word, and accuse everybody who has zeros in all these positions.This works even if the actual coalition size is less than c , and runs in time ( ) O M l ⋅ where M is the number of users and l is the length of the code.This is significantly more efficient than , which is the running time of the earlier algorithm.

General case for only erasures
Let ( , ) X B denote the equivalent set system of a t -design that corresponds to a -(, , ) c Gossip l M q code.We shortly write { , } W i j = if i w and i w are members of the collusion group W . Looking at the t -design's blocks we can tell which group's pirate words will have 0 at a given position, and which groups will have erasures.For example the block i B gives the list of pirate groups, which will not be able to detect the i th position.
≤ then the collusion group W cannot detect the i th position.W will create an erasure (since the mark is detected) in j th position if j W B φ ∩ ≠ .Let x be the pirate word created by a collusion group W and i x be the i th position in the pirate word.The pirate word created by W can be completely specified by the blocks of the t -design.( 1) ∑ where i λ is defined as in Theorem 3.1.2above, with 1, v M λ = = and t c = .
Proof.Let W be the collusion set of size d c ≤ .The number of blocks in the -( , , ) t v k λ design disjoint from W , i.e., total number of blocks excluding the blocks that contain any member of W , is equal to the number of undetectable positions for the collusion.The proof follows from Theorem 3.1.1and the above discussion.  For example consider 2-Gossip (7, 7, 4) code presented in e.g.2.2.1.The tdesign corresponding to this Gossip code is 2-(7, 3, 1) design, which is given by {1, 2, 3, 4, 5, 6, 7} X = This implies in only erasures case for 2-Gossip (7, 7, 4) code each pirate word contain two zeros.In shortest Gossip code, if ( 1) c M q < − − then the number of zeros in a column is more than c .This ensures that there is at least one undetected position for the pirate words.

Concatenated Codes
A Concatenated code consists of an inner code and an outer code, where the symbols in the outer code are the codewords of the inner code.Thus, every codeword in the Concatenated code is the concatenated collection of inner codewords.Further, the number of codewords in inner code is equal to the number of alphabet symbols in the outer code.We denote the codewords of the inner code as {0,..., 1} q − for convenience.We replace the symbols of outer code with inner codewords, for constructing the concatenated code.
When a frameproof code is used as inner code, the pirate members cannot create alphabet symbols not found in their copies in the detected positions of the concatenated code.Thus, whenever a mark is detected during comparison in the concatenated code, the pirates need to create an alphabet symbol they find in their copies, or a non-alphabet symbol in the detected positions.Thus this concatenated code presents a sensible way of implementing fingerprinting schemes under the pirate model assuming marking assumption [Boneh and Shaw 98] for non-binary codes.Consider a frameproof code with 4, 2 M q = = and 2 c = .Let 0 denote the first inner codeword, 1 denote the second, and so on.

≡
The collusion size c is two for the concatenated code in e.g.5.2.Now, we discuss the tracing for the Concatenated code defined above.
This can be re-written as {2, , , 1 , , , 0, 0} e e e e .This is selective erasures case of simple Gossip code.Further the pirate word contains a nonzero symbol.In this case the tracing algorithm runs in time ( ) O M l ⋅ and will trace 2 w .

Concatenated Gossip codes with Selective erasures
In this construction, the outer code is also a Gossip code (that has a tracing algorithm) and the inner code has a deterministic decoding algorithm, so the Concatenated code also traces back the members of the pirate group.Dealing with erasures in inner Gossip codes would automatically mean dealing with erasures in Concatenated codes.Consider a Gossip code with 4 M q = = , and 3 c = .It would result in the following code, where 0 denotes the first inner codeword, 1 denote the second, and so on.The collusion size c is two for the concatenated code.Now, we discuss the optional erasures case for the Concatenated code defined above.In this case, the pirates are allowed to create an alphabet symbol they see in the detected positions.

Tracing
Consider the collusion set W , consisting of 1 w and 2 w .The descendent set is given by . This can be re-written as { ,1, ,0, , 0,0} e e e .This is same as simple Gossip code with selective erasures.This will reveal a pirate namely . This can be rewritten as { , , , 0, , 0, 0} e e e e .This does not contain any non-zero symbol of the outer code.But here the inner codewords that are exposed by applying tracing algorithm on inner pirate word {2 2 2 2} are{1, 2} .Similarly, all other inner pirate words, reveal {0, 1} except the last two pirate words, which reveal 0 .With this information, we can completely identify the set of pirates.This traces the pirate set to be 1 2 { , } w w .
Lemma 5.1: From an inner -(, , ) c Gossip l M q ) code and an outer -( , , ) c Gossip l M q ′ ′ ′ code is a concatenated IPP code can be constructed provided M q′ = .
To construct a generic concatenated code, the condition that must be fulfilled is that the number of inner codewords is equal to the number of alphabet symbols of the outer code Further, this concatenated code is an IPP code, since the inner and outer codes are IPP codes.Such a concatenated code can be constructed by considering e.g 4.3.1 as inner code and e.g.2.1.1 as outer code.The no erasures and only erasures cases in these concatenated codes are straightforward and omitted here as the tracing in the inner codewords is similar to Gossip codes for no erasures and only erasures.

Performance of Gossip codes
One advantage of Gossip codes is that they can accuse a traitor deterministically.Nevertheless all the previous constructions were probabilistic in some way or other.
In general, the focus in all probabilistic code constructions is to keep the length of each codeword short.Short length is important to design efficient and effective embedding techniques of a codeword into an object.Some of the previous probabilistic codes managed to achieve polylog size in the number of the users.But the length of the code tends to be very large (to be interpreted as proportional to the number of users) if deterministic full tracing solutions are sought.Thus Gossip codes in general, have much greater length than probabilistic codes.Our constructions for Gossip codes achieve the minimum possible code length specified for Gossip codes.
The additional advantage of Gossip codes comes from the fact that they can withstand erasures and tracing is possible in presence of erasures.For improved results concatenated codes with outer code as Gossip code and inner codes with probabilistic tracing can be used.

Embedding fingerprints
We present simple watermarking technique, which are based on wavelet transforms to embed (hide) the codewords of a Gossip code into images.The distributor may choose any of the embedding method from the available watermarking techniques based on the requirement and type of the media.

Wavelet watermarking
The Discrete Wavelet Transform (DWT) separates an image into a lower resolution approximation (LL) as well as horizontal (HL), vertical (LH) and diagonal (HH) detail components.The process can be repeated to compute multiple 'scale' wavelet decomposition similar to the two-scale wavelet transform as shown below.
One of the advantages of the using wavelet transform is that it is believed to more accurately model the Human System (HVS) as compared to Fast Fourier Transform (FFT) and Discrete Cosine Transform (DCT).This allows us to use higher energy watermarks in regions that the HVS is known to be less sensitive to; such as the high-resolution detail bands LH, HL, and HH.where i V denotes the coefficient of the transformed image, i wm one bit of the watermark to be embedded, and a scaling factor.In order to detect the watermark, we generate the same watermark sequence and determine its correlation with the two transformed detail bands.If correlation exceeds some threshold T , the watermark is detected.Thus, in this method watermark detection does not require the original image.This method can be easily extended to embed multiple watermarks into the image.The robustness evaluation (and tracing) was limited to testing against JPEG compression and the addition of random noise.

Conclusion
Gossip codes that achieve the shortest code length can be constructed from class tdesigns and c -Traceability Schemes.In this work, two methods of construction for shortest Gossip codes are presented.The converse part i.e., construction of Traceability Schemes and t -designs from Gossip codes is also feasible.These results are reliable to determine whether a shortest Gossip code exists or not, for the chosen code parameters M , q and c .Gossip codes, as IPP codes, can identify one parent of the pirate copy during tracing.They allow deterministic tracing of pirates and also come up with a tracing algorithm, whereas earlier works on fingerprinting are usually probabilistic in some way or the other.The construction of embedded Gossip code is also possible and it can be used for extending an existing Gossip code to a bigger code.These (embedded) codes and Traceability schemes can expand a broadcast application such that it is compatible to the existing scheme.When a frameproof code is used as inner code, the pirate members cannot create alphabet symbols not found in their copies in the detected positions of the concatenated code.Thus, during comparison, whenever a mark is detected in the concatenated code, the pirates need to create an alphabet symbol they find in their copies or a non-alphabet symbol in the detected positions.Thus, this concatenated code presents a sensible way for implementing fingerprinting schemes under pirate model (FSOPE), assuming marking assumption [Boneh and Shaw 98] for non-binary codes.Thus, concatenated codes are presented here for the realization of the pirate model and tracing.There are various advantages of shortest Gossip codes.Shortest Gossip codes are likely to cause less distortion during embedding due to shorter length as compared to normal Gossip codes since there are fewer modifications to be made to the original Thus the first 10 columns of the Gossip code are: 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 5 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 2 0 0 1 0 0 0 0 0 0 3 2 0 0 1 0 0 0 0 0 0 3 2 0 0 1 0 0 0 0 0 0 3 2 0 0 1 0 0 0 0 0 0 3 2 0 0 1 0 0 0 0 0 0 3 2 0 0 1 0 4 0 0 0 0 3 2 0 0 1 0 4 0 0 0 0 3 2 0 0 5 0 4 0 0 0 0 3 2 0 0 5 0 4 0 0 0 0 3 2 0 0 5 0 4 0 0 0 0 3 0 0 0 5 0 4 0 0 0 0 0 0 0 0 5 0 4 0 0 0 0 0 0 0 0 5 0 4 0 0 0 0 0 0 0 0 5 0 4 0 0 0 0 0 0 0 0 5 0 4 149 Veerubhotla R.S., Saxena A., Gulati V.P., Pujari A.K.: Gossip Codes ...

ε
and attains security against coalitions of size c with ε error.Peikert et al[Peikert, Shelat, Smith 03] demonstrated (on lower bound of code length) that no secure code can have a length of ( ) equal to 0 in any codeword of a Gossip code.Distance between two codewords is the number of positions in which they differ.If the distance between any two codewords is constant, then distance of the code will be equal to that.Consider | | 2 W then the collusion group W cannot detect the i th position since the i th position is zero in all the codewords of W . From Theorem 3.1.3the number of blocks that do not contain W are 2 λ .This means the number of undetectable positions (zeros) for W is 2 λ .Thus the number of undetectable positions for any collusition of size '2' is 2 λ .Thus the distance between any two code words is 2 From the above discussion and Theorem 3.1.2can be seen that the number of non-zero symbols in each codeword of a -(, , ) c Gossip l M q code is equal to 1 c Gossip l M q code is a Gossip code with minimum code length, then the number of undetectable positions (number of zeros in only erasures case) for a collusion W of size d c ≤ in the pirate word is 1 1 that do not contain any member of W = Total number of blocks -Number of blocks that contain 1 -Number of blocks that contain 2 + Number of blocks that contain {1, the Gossip code in e.g.2.2.1 as outer code for the Concatenated code, the Concatenated code will be: two positions are undetected.The choices in the other positions are based on the choices available in the inner code (i.e., code given in e.g 5.1.)Let a pirate word created by the collusion set 1 2 trace all its pirates if the collusion size is less than or equal to three (refer Lemma 4.1.2).If we use the Gossip code in e.g.2.1.1 as outer code for the Concatenated code, the Concatenated code will be:Example 5.1.22−Gossip(7, 7, 4 two positions are undetected.The choices in the other positions are based on the choices available in the inner code (i.e., code given in e.g.5.1

Figure 2
Figure 2: a) Original Image b) Watermarked Image c) Embedded Watermark d) Recovered Watermark Let X be a set of M users.Let Ŝ be the set of all subsets of X of size c .Let converse of the theorem is straightforward. Lemma 3.1.1presents the condition for existence of 2-Gossip codes for alphabet sizes 4, 5 and 6.Lemma 3.1.2presents the existence of a Gossip code with collusion size 3.
et al[Stinson and Wei 98]proved the existence infinite class of Traceability Schemes used in our case.Theorem 3.2.1 presents the construction of Gossip codes from Traceability Schemes.Lemma 3.2.1 presents a condition on c -Traceability schemes to be used in construction of Gossip codes. cx Veerubhotla R.S., Saxena A., Gulati V.P., Pujari A.K.: Gossip Codes ... .Let each i B be equal to one column key in the Gossip code.Then the c -groups created by k elements of each i B i.e.,