IP Library Granted Patent US 8,707,047
Granted Patent B2
US 8,707,047 · App. 13/223,184 · Granted Apr 22, 2014

Verifying signatures for multiple encodings

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,707,047
App. No.
13/223,184
Granted
Apr 22, 2014
Kind
B2
Abstract

Digitally signing data for multiple encodings is disclosed. A first signature of the data is generated. A second signature of a second encoding of the data is generated. The first signature and the second signature are associated with the signed data.

Claims (38)

1. A computer implemented method comprising:

generating a first signature of data for a document using a processor based on a document that has a first document encoding for verifying that content of the document in the first document encoding is unchanged since generating the first signature of data;

converting the document that has the first document encoding to a second document encoding, wherein the first document encoding and the second document encoding are different document encodings of the document;

generating a second signature of data for the document based on the second document encoding for verifying that content of the document in the second document encoding is unchanged since generating the second signature of data; and

including both the first signature of data and the second signature of data as a multiple encoding signature provided with the document to provide a digitally signed document such that the document can be verified whether the document is represented as the first document encoding using the first signature of data or the second document encoding using the second signature of data.

2. A computer implemented method as recited in claim 1 further comprising:

canonicalizing the document that has the first document encoding to a canonicalized document having a canonical encoding, wherein canonicalizing the document includes providing a different order of data from the first document encoding based on a canonical ordering;

generating a third signature of data for the document based on the canonicalized document; and

including the third signature of data in the multiple encoding signature such that the document can be verified whether the document is represented as the canonical encoding using the third signature of data.

3. A computer implemented method as recited in claim 1 , wherein the first signature and the second signature are transferred to a recipient.

4. A computer implemented method as recited in claim 1 , wherein the first signature and the second signature are combined together to form a single multiple encoding signature.

5. A computer implemented method as recited in claim 1 , wherein the first signature and the second signature are combined together to form a single multiple encoding signature, and wherein an order of the first signature and the second signature within a multiple encoding signature is predetermined.

6. A computer implemented method as recited in claim 1 , wherein generating the first signature includes generating a signature for at least a portion of the data included in the first document.

7. A computer implemented method as recited in claim 1 , wherein generating the first and second signatures includes generating a label associated with a hash.

8. A computer implemented method as recited in claim 1 , wherein generating the first and second signatures includes generating a label associated with the hash, and wherein the label includes hash location, hash size, one or more encoding identifiers corresponding to one or more hashes, identifier identifying data corresponding to one or more hashes, and any hash attributes.

9. A computer implemented method as recited in claim 1 , wherein the first signature and the second signature are included in a metadata of the first document.

10. A computer implemented method as recited in claim 1 , wherein a data value corresponding to an order of the first signature and the second signature is included in a metadata of the first document.

11. A computer implemented method as recited in claim 1 , wherein the first signature is a first encrypted hash and the second signature is a second encrypted hash.

12. A computer implemented method as recited in claim 1 , wherein the first signature and the second signature are two hashes encrypted together.

13. A computer implemented method as recited in claim 1 , wherein the one or more signatures are stored in a module separate from the digitally signed first document.

14. A computer implemented method as recited in claim 1 , wherein the one or more signatures are stored in an order, including a hierarchical order.

15. A computer implemented method as recited in claim 1 , wherein more than two signatures are generated.

16. A computer implemented method as recited in claim 1 wherein the document is appended to the multiple encoding signature.

17. A computer implemented method as recited in claim 1 wherein the multiple signature encoding comprises appending the second signature of data to the first signature of data.

18. A computer implemented method as recited in claim 17 wherein the multiple signature encoding further comprises a label delimiting the first signature of data and the second signature of data.

19. A computer implemented method as recited in claim 17 wherein the multiple signature encoding further comprises a first label delimiting the first signature of data and a second label delimiting the second signature of data.

20. A system comprising:

A processor configured to:

generate a first signature of data for a document based on a document that has a first document encoding for verifying that content of the document in the first document encoding is unchanged since generating the first signature of data;

convert the document that has the first document encoding to a second document encoding, wherein the first document encoding and the second document encoding are different document encodings of the document;

generate a second signature of data for the document based on the second document encoding for verifying that content of the document in the second document encoding is unchanged since generating the second signature of data; and

including both the first signature of data and the second signature of data as a multiple encoding signature provided with the document to provide a digitally signed document such that the document can be verified whether the document is represented as the first document encoding using the first signature of data or the second document encoding using the second signature of data; and

a memory coupled to the processor and configured to provide instructions to the processor.

21. A computer program product, the computer program product being embodied in a non-transitory computer readable medium and comprising computer instructions for:

generating a first signature of data for a document based on a document that has a first document encoding for verifying that content of the document in the first document encoding is unchanged since generating the first signature of data;

converting the document that has the first document encoding to a second document encoding, wherein the first document encoding and the second document encoding are different document encodings of the document;

generating a second signature of data for the document based on the second document encoding for verifying that content of the document in the second document encoding is unchanged since generating the second signature of data; and

including both the first signature of data and the second signature of data as a multiple encoding signature provided with the document to provide a digitally signed document such that the document can be verified whether the document is represented as the first document encoding using the first signature of data or the second document encoding using the second signature of data.

Assignments (2)
CHANGE OF NAME Recorded Mar 6, 2019
From: ADOBE SYSTEMS INCORPORATED
To: ADOBE INC.
Reel/Frame 048525/0042 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 18, 2012
From: GOLDMAN, OLIVER; YOUNG, JEFF
To: ADOBE SYSTEMS INCORPORATED
Reel/Frame 029152/0143 →