IP Library › Granted Patent US 7,996,679
Granted Patent B2
US 7,996,679 · App. 11/243,560 · Granted Aug 9, 2011

System and method for performing a trust-preserving migration of data objects from a source to a target

Assignee: International Business Machines Corporation
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,996,679
App. No.
11/243,560
Granted
Aug 9, 2011
Kind
B2
Abstract

A data migration system performs a tamper-resistant data migration for regulatory compliance systems. The system generates a secure hash for the data object, adds a timestamp to the hash, produces a signature for the data object using a private key, and includes the signature in a signature summary of data objects. Immediately prior to data migration, the system signs the signature summary of the set of data objects to be migrated. The signature of the data object maintains integrity of the data object by preventing undetectable modification to a data object during migration. The signed signature summary maintains completeness by preventing undetectable removal of a data object from or insertion of a data object into the set of data objects during migration.

Claims (67)

1. A computer processor-implemented method for migrating data objects from a source system to a target system, comprising:

maintaining secure summary information of the data objects, including past and current data objects, comprising hashes, at the source system;

grouping together hash values of the migrating data objects using the computer processor;

signing the hash values of the migrating data objects in batches;

receiving a request to migrate the data objects to the target system;

sending the data objects from the source system to the target system;

sending the maintained secure summary information from the source system to the target system;

adding a secure subsystem to prevent a bottleneck;

creating a summary of signatures for the migrating data objects, that are signed and maintained by a trust source agent;

using a mathematical function to generate a unique value for the summary of signatures for a group of the migrating data objects;

calculating a summary information of the data objects received at the target system;

comparing summary information from past and present data objects with a public key for verifying integrity of the past and present data objects; and

comparing the calculated summary information with the secure summary information received at the target system, to verify the integrity and completeness of the data objects received at the target system; and

preventing the secure summary information from being replayed, and calibrating clocks on the source system and target system, by sending a time-stamped, challenge and response protocol communication between the source system and the target system.

2. The method of claim 1 , wherein the secure summary information maintained at the source system is a function of a signature of the data objects covered by the summary information; and

wherein the signature of each object of the data objects is based on at least a secure one-way hash of a content and associated attributes of the object.

3. The method of claim 1 , wherein the secure summary information is maintained inside at least one secure subsystem in the source system so that the secure summary information is protected from tampering even if the content of the source system, other than the secure subsystem, is compromised.

4. The method of claim 1 , wherein the summary information for the data objects received by the target system is included in a system secure summary information on the target system for subsequent migration of data from the target system.

5. The method of claim 1 , wherein the data objects at the source system are partitioned into groups; and

wherein a separate secure summary information is maintained for each group.

6. The method of claim 1 , wherein the secure summary information maintained at the source system is calculated cumulatively as data objects are added.

7. The method of claim 2 , wherein the secure summary information maintained at the source system covers the signature for each data object no longer present on the source system.

8. The method of claim 2 , wherein the secure summary information maintained at the source system is signed using a secret key, and is verified using a corresponding public key.

9. The method of claim 8 , wherein signing the secure summary information is performed in a secure subsystem implemented using a tamper-proof hardware.

10. The method of claim 7 , wherein the signature of each object includes a timestamp indicating the time of creation of the data object.

11. The method of claim 8 , wherein the secure summary information is maintained inside a secure subsystem; and

wherein the secret key is generated inside the secure subsystem during initialization and is not accessible outside the secure subsystem as the public key is published.

12. The method of claim 10 , wherein the signature of each object includes a retention period indicating the time at which the object becomes eligible for removal.

13. A computer program product having a plurality of executable instruction codes stored on a storage medium, for migrating data objects from a source system to a target system, comprising:

a program code for maintaining secure summary information of the data objects including past and current data objects, comprising hashes, at the source system;

a program code for receiving a request to migrate the data objects to a target system;

a program code for sending the data objects from the source system to the target system;

a program code for sending the maintained secure summary information from the source system to the target system;

a program code for calculating summary information of the data objects received at the target system;

a program code for signing a first data object from one of the migrating data objects by a trust source agent;

a program code for creating a summary of signatures for the first data object that was signed by the trust source agent;

a program code for using a mathematical function to generate a unique value for the summary of signatures for a group of the migrating data objects;

a program code for maintaining the summary of signatures for the first data object within the trust source agent;

a program code for comparing summary information from past and present data objects with a public key for verifying integrity of the past and present data objects;

a program code for comparing the calculated summary information with the secure summary information received at the target system to verify the integrity and completeness of the data objects received at the target system; and

a program code for preventing the secure summary information from being replayed, and calibrating clocks on the source system and target system, by sending a time-stamped, challenge and response protocol communication between the source system and the target system.

14. The computer program product of claim 13 , wherein the secure summary information maintained at the source system is a function of the signature of the data objects that the summary information covers; and

wherein the signature of each data object is based on a secure one-way hash of the content and associated attributes of the data object.

15. The computer program product of claim 13 , wherein the secure summary information is maintained inside a secure subsystem in the source system so that the summary information is protected from tampering.

16. The computer program product of claim 13 , wherein the summary information for the data objects received by the target system is included in a system secure summary information on the target system for subsequent migration of data from the target system.

17. The computer program product of claim 13 , wherein the data objects at the source system are partitioned into groups; and

wherein a separate secure summary information is maintained for each group.

18. The computer program product of claim 13 , wherein the secure summary information maintained at the source system is calculated cumulatively as data objects are added.

19. The computer program product of claim 14 , wherein the secure summary information maintained at the source system includes the signature for each data object no longer present on the source system.

20. A computer processor-implemented system for migrating data objects from a source system to a target system, comprising:

the source system maintaining secure summary information of the data objects, including past and current data objects, comprising hashes;

the source system grouping together hash values of the migrating data objects using the computer processor;

the source system signing the hash values of the migrating data objects in batches;

the source system creating a summary of signatures for the signed hash values of the migrating data objects;

the source system receiving a request to migrate the data objects to the target system;

the source system sending the data objects to the target system;

sending the maintained secure summary information from the source system to the target system;

the target system calculating a summary information of the data objects received at the target system;

the target system comparing summary information from past and present data objects with a public key for verifying integrity of the past and present data objects; and

the target system comparing the calculated summary information with the secure summary information received at the target system, to verify the integrity and completeness of the data objects received at the target system; and

the source system and target system preventing the secure summary information from being replayed, and calibrating clocks on the source system and target system, by sending a time-stamped, challenge and response protocol communication between the source system and the target system.

21. The system of claim 20 , wherein the secure summary information maintained at the source system is a function of a signature of the data objects covered by the summary information; and

wherein the signature of each object of the data objects is based on at least a secure one-way hash of a content and associated attributes of the object.

22. The system of claim 20 , wherein the secure summary information is maintained inside at least one secure subsystem in the source system so that the secure summary information is protected from tampering even if the content of the source system, other than the secure subsystem, is compromised.

23. The system of claim 20 , wherein the summary information for the data objects received by the target system is included in a system secure summary information on the target system for subsequent migration of data from the target system.

24. The system of claim 20 , wherein the data objects at the source system are partitioned into groups; and

wherein a separate secure summary information is maintained for each group.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 6, 2005
From: HSU, WINDSOR WEE SUN; MA, XIAONAN
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 017071/0759 →
Continuity (1)
Related Publication 20070079126A1 · Apr 5, 2007