IP Library Granted Patent US 7,401,219
Granted Patent B2
US 7,401,219 · App. 10/341,981 · Granted Jul 15, 2008

Method and apparatus for protecting external call references

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,401,219
App. No.
10/341,981
Granted
Jul 15, 2008
Kind
B2
Abstract

The present invention is generally directed to a method, system, and article of manufacture that ensures the integrity of programs having variable portions. One aspect of this invention is a method for protecting software products having variant portions. This method includes identifying a reference to an external target in a software product, creating an identifier for the external target, and adding the identifier to the reference. In some embodiments, the unique identifier is a digital signature and the reference to an external target is a call to an external library.

Claims (18)

1. A method for protecting a software program having an external library reference whereby call convention can be used to ensure call to the external library resolves to a correct instance of a function and that the selected instance has not been modified, the method comprising:

receiving a digitally signed software program having a call to an external library, the call comprising an invariant target descriptor and a digital signature, wherein the digital signature comprises a hash of the external library encrypted by a recognized source of the software program;

extracting the digital signature from the call;

extracting the hash from the digital signature;

using the invariant target descriptor to identify a first external library candidate;

computing a hash of the first external library candidate; and

comparing the extracted hash to the computed hash of the first external library candidate.

2. The method of claim 1 , wherein invariant target descriptor comprises a path to the external library.

3. The method of claim 1 , wherein the method is performed at bind-time.

4. The method of claim 1 , wherein the method is performed at run-time.

5. The method of claim 1 , further comprising, in response to the comparison, linking the first external library candidate software program.

6. The method of claim 1 , further comprising, in response to the comparison, generating an alert that the first external library target has been altered.

7. The method of claim 1 , wherein using the invariant target descriptor to identify a first external library candidate comprises searching a list of eligible objects and their location.

8. The method of claim 1 , wherein using the invariant target descriptor to identify a first external library candidate comprises traversing a search path.

9. The method of claim 1 , further comprising:

using the invariant target descriptor to identify a second external library candidate;

computing a hash of the second external library candidate; and

comparing the extracted hash to the computed hash of the second external library candidate.

Assignments (1)
CHANGE OF NAME Recorded Dec 20, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058553/0802 →