Automatically identifying the source of copied software
First Claim
1. A computer-implementable method executable by a data-processing system for automatically identifying a source of copied software, comprising:
- receiving a suspected copy of a software application;
identifying a particular type of object code for said suspected copy;
scanning said suspected copy to identify an identifying marker in said suspected copy, wherein said identifying marker automatically identifies a particular authorized copy of said software application and a particular version family of said suspected copy of the software application according to a stage of the product development process with respect to a common code base of said software application;
in response to identifying an identifying marker in said suspected copy, extracting said identifying marker in said suspected copy; and
the data processing system automatically determining an exact product of said suspected copy using said identified particular type of object code and said identified particular version family, wherein one or more products are associated with said common code base;
wherein said common code base to which said identifying marker applies is capable of being written to depend explicitly on the presence of said identifying marker, wherein any products generated from said common code are inhibited from being operable if said identifying marker is subjected to tampering.
1 Assignment
0 Petitions
Accused Products
Abstract
A method, system, and computer-usable medium for automatically identifying the source of copied software. A single identifying marker can be embedded in a common code base associated with different software application products. A suspected copy of a product can be fed to an automated tool, which extracts the type of object code, which is then scanned to determine the identifying marker. The automated tool can therefore identify the exact product and version of the suspected copy utilizing the identifying marker and the type of object code without the need for labor-intensive modification of the common code base and product-specific markers.
17 Citations
12 Claims
-
1. A computer-implementable method executable by a data-processing system for automatically identifying a source of copied software, comprising:
-
receiving a suspected copy of a software application; identifying a particular type of object code for said suspected copy; scanning said suspected copy to identify an identifying marker in said suspected copy, wherein said identifying marker automatically identifies a particular authorized copy of said software application and a particular version family of said suspected copy of the software application according to a stage of the product development process with respect to a common code base of said software application; in response to identifying an identifying marker in said suspected copy, extracting said identifying marker in said suspected copy; and the data processing system automatically determining an exact product of said suspected copy using said identified particular type of object code and said identified particular version family, wherein one or more products are associated with said common code base; wherein said common code base to which said identifying marker applies is capable of being written to depend explicitly on the presence of said identifying marker, wherein any products generated from said common code are inhibited from being operable if said identifying marker is subjected to tampering. - View Dependent Claims (2, 3, 4)
-
-
5. A data-processing system, comprising:
-
a processor; and a computer-usable medium embodying computer program code, said computer-usable medium being coupled to said processor, said computer program code comprising instructions executable by said processor and configured to enable the data processing system to; receive a suspected copy of a software application; identify a particular type of object code for said suspected copy; scan said suspected copy to identify an identifying marker in said suspected copy, wherein said identifying marker automatically identifies a particular authorized copy of said software application and a particular version family of said suspected copy of the software application according to a stage of the product development process with respect to a common code base of said software application; in response to identifying an identifying marker in said suspected copy, extract said identifying marker in said suspected copy; and automatically determine an exact product of said suspected copy using said identified particular type of object code and said identified particular version family, wherein one or more products are associated with said common code base; wherein said common code base to which said identifying marker applies is capable of being written so as to depend explicitly on the presence of said identifying marker, wherein any products generated from said common code are inhibited from operating if said identifying marker is subiected to tampering. - View Dependent Claims (6, 7, 8)
-
-
9. A computer-usable storage medium embodying computer program code, said computer program code comprising computer executable instructions configured for:
-
receiving a suspected copy of a software application; identifying a particular type of object code for said suspected copy; scanning said suspected copy to identify an identifying marker in said suspected copy, wherein said identifying marker automatically identifies a particular authorized copy of said software application and a particular version family of said suspected copy of the software application according to a stage of the product development process with respect to a common code base of said software application; in response to identifying an identifying marker in said suspected copy, extracting said identifying marker in said suspected copy; and automatically determining an exact product of said suspected copy using said identified particular type of object code and said identified particular version family, wherein one or more products are associated with said common code base; wherein said common code base to which said identifying marker applies is capable of being written so as to depend explicitly on the presence of said identifying marker, wherein any products generated from said common are inhibited from operating if said identifying marker is subiected to tampering. - View Dependent Claims (11, 12)
-
-
10. The computer-usable storage medium of 9, wherein said identifying marker is associated with said particular version family of said common code base.
Specification