Individualized digital tracers
First Claim
1. A system, comprising:
- a processor; and
a memory comprising program instructions, wherein the program instructions are executable by the processor to perform;
receiving a request for particular data of a data collection from a Web service client via a network;
extracting a copy of the requested particular data from the data collection as an original data copy of the particular data;
determining a tracer identifier for the original data copy, wherein the tracer identifier identifies at least one location within the original data copy and further identifies one or more tracer elements to be positioned at the identified at least one location;
wherein determining the tracer identifier further comprising determining the tracer identifier as a permutation of a tracer template, wherein the permutation includes digits and said digits representing the at least one location of the tracer elements;
marking the original data copy as identified by the tracer identifier, wherein said marking comprises positioning the one or more tracer elements at the identified at least one location within the original data copy, and wherein;
the one or more tracer elements are perceptible to a user during normal presentation of the marked data copy; and
the marked data copy appears to the user to be an unmarked copy of the requested particular data;
storing the tracer identifier for the marked data copy, wherein the stored tracer identifier links the marked data copy to the Web service client;
returning the marked data copy to the Web service client; and
repeating said receiving, said determining, said marking, said storing, and said returning for the same particular data for a different Web service client, wherein the tracer identifier for the Web service client and the tracer identifier for the different Web service client are different;
wherein said receiving, said extracting, said determining, said marking, said storing, said returning, and said repeating are all performed by a same Web service provider separate from the Web service client.
1 Assignment
0 Petitions
Accused Products
Abstract
Method and apparatus for inserting digital tracers in data that allow particular copies of the data to be traced to particular entities. Embodiments of a tracer mechanism may programmatically insert individualized tracers into data copies provided to third parties, for example via a Web service interface. A tracer may appear as normal data to the reader, and does not interfere with the typical use of the data copy. Tracers may serve as unique identifiers for particular data copies provided to particular Web service clients, allowing instances of the data copies to be associated with particular Web service clients. Embodiments may, for example, allow an enterprise to programmatically and systematically track copies of data distributed to third parties to help insure that the terms and conditions of licensing agreements are not violated. In one embodiment, the tracer mechanism may be implemented as a Web service.
-
Citations
35 Claims
-
1. A system, comprising:
-
a processor; and a memory comprising program instructions, wherein the program instructions are executable by the processor to perform; receiving a request for particular data of a data collection from a Web service client via a network; extracting a copy of the requested particular data from the data collection as an original data copy of the particular data; determining a tracer identifier for the original data copy, wherein the tracer identifier identifies at least one location within the original data copy and further identifies one or more tracer elements to be positioned at the identified at least one location; wherein determining the tracer identifier further comprising determining the tracer identifier as a permutation of a tracer template, wherein the permutation includes digits and said digits representing the at least one location of the tracer elements; marking the original data copy as identified by the tracer identifier, wherein said marking comprises positioning the one or more tracer elements at the identified at least one location within the original data copy, and wherein; the one or more tracer elements are perceptible to a user during normal presentation of the marked data copy; and the marked data copy appears to the user to be an unmarked copy of the requested particular data; storing the tracer identifier for the marked data copy, wherein the stored tracer identifier links the marked data copy to the Web service client; returning the marked data copy to the Web service client; and repeating said receiving, said determining, said marking, said storing, and said returning for the same particular data for a different Web service client, wherein the tracer identifier for the Web service client and the tracer identifier for the different Web service client are different; wherein said receiving, said extracting, said determining, said marking, said storing, said returning, and said repeating are all performed by a same Web service provider separate from the Web service client. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method, comprising:
-
receiving a request for particular data of a data collection from a Web service client via a network; extracting a copy of the requested particular data from the data collection as an original data copy of the particular data; programmatically determining a tracer identifier for the original data copy, wherein the tracer identifier identifies at least one location within the original data copy and further identifies one or more tracer elements to be positioned at the identified at least one location; wherein determining the tracer identifier further comprising determining the tracer identifier as a permutation of a tracer template, wherein the permutation includes digits and said digits representing the at least one location of the tracer elements; marking the original data copy as identified by the tracer identifier, wherein said marking comprises positioning the one or more tracer elements at the identified at least one location within the original data copy, and wherein; the one or more tracer elements are perceptible to a user during normal presentation of the marked data copy; and the marked data copy appears to the user to be an unmarked copy of the requested particular data; storing the tracer identifier for the marked data copy, wherein the stored tracer identifier links the marked data copy to the Web service client; returning the marked data copy to the Web service client; and repeating said receiving, said programmatically determining, said marking, said storing, and said returning for the same particular data for a different Web service client, wherein the tracer identifier for the Web service client and the tracer identifier for the different Web service client are different; wherein said receiving, said extracting, said determining, said marking, said storing, said returning, and said repeating are all performed by a same Web service provider separate from the Web service client. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
-
-
20. A computer-accessible storage medium, comprising program instructions, wherein the program instructions are computer-executable to implement:
-
determining a tracer identifier for an original data copy of particular data extracted from a data collection, wherein the tracer identifier identifies at least one location within the original data copy and further identifies one or more tracer elements to be positioned at the identified at least one location; wherein determining the tracer identifier further comprising determining the tracer identifier as a permutation of a tracer template, wherein the permutation includes digits and said digits representing the at least one location of the tracer elements; marking the original data copy as identified by the tracer identifier, wherein said marking comprises positioning the one or more tracer elements at the identified at least one location within the original data copy, and wherein; the one or more tracer elements are perceptible to a user during normal presentation of the marked data copy; and the marked data copy appears to the user to be an unmarked copy of the requested particular data; storing the tracer identifier for the marked data copy, wherein the stored tracer identifier links the marked data copy to a Web service client on a network that requested the data copy via a Web service interface to the data collection; wherein the marked data copy is provided to the Web service client; and repeating said determining, said marking, and said storing for the same particular data for a different Web service client, wherein the tracer identifier for the Web service client and the tracer identifier for the different Web service client are different; wherein said determining, said marking, said storing, and said repeating are all performed by a same Web service provider separate from the Web service client. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27)
-
-
28. A system, comprising:
-
a processor; and a memory comprising program instructions, wherein the program instructions are executable by the processor to implement a tracer service configured to implement; receiving an original data copy of particular data from a client application of the tracer service via a network; determining a tracer identifier for the original data copy, wherein the tracer identifier identifies at least one location within the original data copy and further identifies one or more tracer elements to be positioned at the identified at least one location; wherein determining the tracer identifier further comprising determining the tracer identifier as a permutation of a tracer template, wherein the permutation includes digits and said digits representing the at least one location of the tracer elements; marking the original data copy as identified by the tracer identifier, wherein said marking comprises positioning the one or more tracer elements at the identified at least one location within the original data copy, and wherein; the one or more tracer elements are perceptible to a user during normal presentation of the marked data copy; and the marked data copy appears to the user to be an unmarked copy of the requested particular data; storing the tracer identifier for the marked data copy, wherein the stored tracer identifier links the marked data copy to a client of the client application; returning the marked data copy to the client application via the network; and repeating said receiving, said determining, said marking, said storing, and said returning for the same particular data for a different Web service client, wherein the tracer identifier for the client of the client application and the tracer identifier for the different client of the client application are different; wherein said tracer service is separate from the client of the client application. - View Dependent Claims (29, 30, 31, 32, 33, 34, 35)
-
Specification