Systems and Methods for Watermarking Software and Other Media
2 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods are disclosed for embedding information in software and/or other electronic content such that the information is difficult for an unauthorized party to detect, remove, insert, forge, and/or corrupt. The embedded information can be used to protect electronic content by identifying the content'"'"'s source, thus enabling unauthorized copies or derivatives to be reliably traced, and thus facilitating effective legal recourse by the content owner. Systems and methods are also disclosed for protecting, detecting, removing, and decoding information embedded in electronic content, and for using the embedded information to protect software or other media from unauthorized analysis, attack, and/or modification.
199 Citations
64 Claims
-
1-44. -44. (canceled)
-
45. A method for watermarking computer code, the method comprising:
inserting one or more encrypted marks into the computer code, each of the one or more encrypted marks being formed by creating a copy of a mark;
combining extra information with the copy of the mark to create a modified mark; and
encrypting the modified mark to create one of the one or more encrypted marks. - View Dependent Claims (46, 47, 48, 49, 50, 51, 52, 53, 54)
-
55. A method for watermarking computer code, the method comprising:
-
mapping a set of payload information onto a first set of sparse space strings, wherein each sparse space string in the first set of sparse space strings is chosen randomly from a second set of sparse space strings;
inserting a sparse space string from the first set of sparse space strings into the computer code, and distributing the computer code to a recipient, wherein the recipient of the computer code;
extracts at least some of the inserted sparse space string from the computer code to form an extracted string, and transmits the extracted string to a database operator, wherein the database operator;
identifies the sparse space string in the first set of sparse space strings associated with the extracted string, retrieves the payload information mapped to the identified sparse space string, and transmits the payload information to the recipient. - View Dependent Claims (56, 57, 58, 59, 60, 61, 62, 63, 64)
-
Specification