Profile protection
First Claim
1. A computer-readable medium having computer-executable instructions and one or more data structures stored thereon for use by a computing system to verify the originality of pieces of information, comprising:
- a profile encrypted with a private library key of a protection dynamic-link library, the profile including profile data whose size and format is dependent on a profile type, the profile further including a signature digitally signed with a public library key of the protection dynamic-link library, and the profile even further including a verifier blob that contains a checksum of an identifier identifying the profile and the profile data.
2 Assignments
0 Petitions
Accused Products
Abstract
Tampering with pieces of software is inhibited. Profiles are stored in a central hierarchical database and such profiles are protected from tampering. The obfuscation of a software image so as to becloud the comprehension of hackers in reverse engineering pieces of software comprising the software image is provided. A process of verifying whether the pieces of software together constitute a software package that requires protection from tampering is also provided.
-
Citations
19 Claims
-
1. A computer-readable medium having computer-executable instructions and one or more data structures stored thereon for use by a computing system to verify the originality of pieces of information, comprising:
a profile encrypted with a private library key of a protection dynamic-link library, the profile including profile data whose size and format is dependent on a profile type, the profile further including a signature digitally signed with a public library key of the protection dynamic-link library, and the profile even further including a verifier blob that contains a checksum of an identifier identifying the profile and the profile data. - View Dependent Claims (2, 3, 4, 5)
-
6. A computer-implemented method for protecting interoperation between pieces of software, the computer-implemented method comprising:
-
initiating access to a profile stored in a central hierarchical database by a first piece of software having a public calling key and a private calling key, the first piece of software sending a random salt value; and
after receiving the random salt value by a second piece of software having a private library key, the second piece of software finding the profile in the central hierarchical database and decrypting the profile using the private library key. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A computer-readable medium having executable instructions stored thereon for implementing a computer-implemented method for protection interoperation between pieces of software, the computer-implemented method comprising:
-
initiating access to a profile stored in a central hierarchical database by a first piece of software having a public calling key and a private calling key, the first piece of software sending a random salt value; and
after receiving the random salt value by a second piece of software having a private library key, the second piece of software finding the profile in the central hierarchical database and decrypting the profile using the private library key.
-
- 12. The computer-readable medium of Claim I1, wherein the second piece of software computes a first checksum of a collection of information that includes an identifier of the profile, the profile data, the result of finding the profile, and the random salt value.
-
16. A system for protecting interoperation between pieces of software, comprising:
-
means for initiating access to a profile stored in a central hierarchical database by a first piece of software having a public calling key and a private calling key, the first piece of software sending a random salt value; and
after receiving the random salt value by a second piece of software having a private library key, the second piece of software executing a means for finding the profile in the central hierarchical database and decrypting the profile using the private library key. - View Dependent Claims (17, 18, 19)
-
Specification