IP Library Granted Patent US 8,060,747
Granted Patent B1
US 8,060,747 · App. 11/385,139 · Granted Nov 15, 2011

Digital signatures for embedded code

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 8,060,747
App. No.
11/385,139
Granted
Nov 15, 2011
Kind
B1
Abstract

Generating a digital signature of an entire embedded code project while maintaining certain exclusion areas so that a productivity application can incorporate application-specific information into the embedded code project without hampering the digital signature.

Claims (13)

1. A method for verifying a digital signature, comprising:

reading a digital signature embedded in a document to verify data embedded in the document, wherein reading the digital signature comprises determining a hash value representing an aggregated representative component, the aggregated representative component including at least a first representative component and at least a second representative component, the first representative component being associated with data common to an application used for creating the document and a later version of the application;

calculating a hash value of a data stream representing the data embedded in the document, the data embedded in the document representing the data common to the application; and

comparing the hash value of the data stream to the hash value representing the aggregated representative component to determine whether the data common to the application used for creating the document and the later version of the application has been altered.

2. The method recited in claim 1 , wherein the new data includes a portion having computer-executable instructions.

3. A method for verifying a digital signature, comprising:

reading a digital signature to determine a hash value representing an aggregated representative component including at least a first representative component, the first representative component being associated with data common to plural versions of an application, the plural versions of the application comprising a current version of an application used for creating a document comprising the data and a later version of the application, wherein a portion of the data common to the plural versions of the application comprises a code project comprising embedded executable code to programmatically access functionality of the current version of the application, the code project further comprising at least one of a database query string, forms for displaying a user interface to a user, and meta information defining the code project;

calculating a hash value of a data stream representing embedded code in the document, the embedded code in the document representing the data common to the plural versions of the application; and

comparing the hash value of the data stream to the hash value representing the aggregated representative component to determine whether the data common to the plural versions of the application has been altered.

4. The method recited in claim 3 , wherein the code project includes a portion having computer-executable instructions.

5. The method recited in claim 3 , wherein the new data includes a portion having computer-executable instructions.

6. The method recited in claim 1 , wherein a portion of the data common to the plural versions of the application comprises a code project comprising embedded executable code to programmatically access functionality of a current version of the application, the code project further comprising at least one of a database query string, forms for displaying a user interface to a user, and meta information defining the code project, wherein a portion of the data common to the plural versions of the application is related to the features of the later version of the application and comprises the new data.

7. The method recited in claim 6 , wherein the code project includes a portion having computer-executable instructions.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034542/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 2, 2010
From: LEONARD, ARTHUR C.; CHEUNG, DANIEL M.; SMITH, PATRICK J.; POOZHIYIL, SURAJ T.
To: MICROSOFT CORPORATION
Reel/Frame 025231/0683 →