In order to protect a product such as computer software, for example, a distributor may mark each copy with some codeword and then ships to each user his data marked with that codeword. This marking allows the distributor to detect any unauthorized copy and trace it back to the user. Since a marked object can be traced, the users will be deterred from releasing an unauthorized copy. However, a coalition of users may detect some of the marks, namely, the marks where their copies differ. They can then change these marks arbitrarily. To prevent a group of users from “framing” another user, Boneh and Shaw  defined the concept of c-frameproof codes. A c-frameproof code has the property that no coalition of at most c users can frame a user not in the coalition.