IP Library Granted Patent US 7,281,244
Granted Patent B2
US 7,281,244 · App. 10/346,238 · Granted Oct 9, 2007

Using a digital fingerprint to commit loaded data in a device

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,281,244
App. No.
10/346,238
Granted
Oct 9, 2007
Kind
B2
Abstract

Committing data loaded on a device includes computing a program unit storage commitment fingerprint over a program unit if the program unit is finally loaded in a non-volatile memory on the device, associating the program unit storage commitment fingerprint with the program unit and storing the program unit storage commitment fingerprint.

Claims (51)

1. A method for committing data loaded on a smart card, the method comprising:

computing, on said smart card, a program unit storage commitment fingerprint over a program unit when said program unit is finally loaded in a non-volatile memory on said smart card;

associating said program unit storage commitment fingerprint with said program unit when the program unit is finally loaded in said non-volatile memory and said program unit is ready for use on said smart card; and

storing said program unit storage commitment fingerprint on said smart card wherein a proof of loading the program unit on said smart card comprises said program unit storage commitment fingerprint.

2. The method of claim 1 wherein said storing further comprises storing said program unit storage commitment fingerprint in an area of memory contiguous with said program unit.

3. The method of claim 1 wherein said method further comprises storing with said program unit a reference to said program unit storage commitment fingerprint.

4. The method of claim 1 wherein said data comprises a Java™ program.

5. The method of claim 4 wherein said program unit comprises at least one of a package, a class, a method or static class variable.

6. The method of claim 1 wherein said program unit storage commitment fingerprint comprises a checksum.

7. The method of claim 1 wherein said program unit storage commitment fingerprint comprises a cyclic redundancy code (CRC).

8. A method for committing data loaded on a smart card, the method comprising:

step for computing, on said smart card, a program unit storage commitment fingerprint over a program unit when said program unit is finally loaded in a non-volatile memory on said smart card;

step for associating said program unit storage commitment fingerprint with said program unit when the program unit is finally loaded in said non-volatile memory and said program unit is ready for use on said smart card; and

step for storing said program unit storage commitment fingerprint on said smart card wherein a proof of loading the program unit on said smart card comprises said program unit storage commitment fingerprint.

9. The method of claim 8 wherein said step for storing further comprises step for storing said program unit storage commitment fingerprint in an area of memory contiguous with said program unit.

10. The method of claim 8 wherein said method further comprises step for storing with said program unit a reference to said program unit storage commitment fingerprint.

11. The method of claim 8 wherein said data comprises a Java™ program.

12. The method of claim 11 wherein said program unit comprises at least one of a package, a class, a method or static class variable.

13. The method of claim 8 wherein said program unit storage commitment fingerprint comprises a checksum.

14. The method of claim 8 wherein said program unit storage commitment fingerprint comprises a cyclic redundancy code (CRC).

15. A program storage device readable by a machine, embodying a program of instructions executable by the machine to perform a method for committing data loaded on a smart card, the method comprising:

computing, on said smart card, a program unit storage commitment fingerprint over a program unit when said program unit is finally loaded in a non-volatile memory on said smart card;

associating said program unit storage commitment fingerprint with said program unit when the program unit is finally loaded in said non-volatile memory and said program unit is ready for use on said smart card; and

storing said program unit storage commitment fingerprint on said smart card wherein a proof of loading the program unit on said smart card comprises said program unit storage commitment fingerprint.

16. The program storage device of claim 15 wherein said storing further comprises storing said program unit storage commitment fingerprint in an area of memory contiguous with said program unit.

17. The program storage device of claim 15 wherein said method further comprises storing with said program unit a reference to said program unit storage commitment fingerprint.

18. The program storage device of claim 15 wherein said data comprises a Java™ program.

19. The program storage device of claim 18 wherein said program unit comprises at least one of a package, a class, a method or static class variable.

20. The program storage device of claim 15 wherein said program unit storage commitment fingerprint comprises a checksum.

21. The program storage device of claim 15 wherein said program unit storage commitment fingerprint comprises a cyclic redundancy code (CRC).

22. An apparatus for committing data loaded on a smart card, the apparatus comprising:

means for computing, on said smart card, a program unit storage commitment fingerprint over a program unit when said program unit is finally loaded in a non-volatile memory on said smart card;

means for associating said program unit storage commitment fingerprint with said program unit when the program unit is finally loaded in said non-volatile memory and said program unit is ready for use on said smart card; and

means for storing said program unit storage commitment fingerprint on said smart card wherein a proof of loading the program unit on said smart card comprises said program unit storage commitment fingerprint.

23. The apparatus of claim 22 wherein said means for storing further comprises means for storing said program unit storage commitment fingerprint in an area of memory contiguous with said program unit.

24. The apparatus of claim 22 wherein said apparatus further comprises means for storing with said program unit a reference to said program unit storage commitment fingerprint.

25. The apparatus of claim 22 wherein said data comprises a Java™ program.

26. The apparatus of claim 25 wherein said program unit comprises at least one of a package, a class, a method or static class variable.

27. The apparatus of claim 22 wherein said program unit storage commitment fingerprint comprises a checksum.

28. The apparatus of claim 22 wherein said program unit storage commitment fingerprint comprises a cyclic redundancy code (CRC).

29. An apparatus for committing data loaded on a smart card, the apparatus comprising:

a non-volatile memory for storing said data loaded on said smart card; and an installer configured to:

compute, on said smart card, a program unit storage commitment fingerprint over a program unit when said program unit is finally loaded in said non-volatile memory on said smart card;

associate said program unit storage commitment fingerprint with said program unit when the program unit is finally loaded in said non-volatile memory and said program unit is ready for use on said smart card; and

store said program unit storage commitment fingerprint on said smart card wherein a proof of loading the program unit on said smart card comprises said program unit storage commitment fingerprint.

30. The apparatus of claim 29 wherein said installer is further configured to store said program unit storage commitment fingerprint in an area of memory contiguous with said program unit.

31. The apparatus of claim 29 wherein said installer is further configured to store with said program unit a reference to said program unit storage commitment fingerprint.

32. The apparatus of claim 29 wherein said data comprises a Java™ program.

33. The apparatus of claim 32 wherein said program unit comprises at least one of a package, a class, a method or static class variable.

34. The apparatus of claim 29 wherein said program unit storage commitment fingerprint comprises a checksum.

35. The apparatus of claim 29 wherein said program unit storage commitment fingerprint comprises a cyclic redundancy code (CRC).

Assignments (2)
MERGER AND CHANGE OF NAME Recorded Dec 16, 2015
From: ORACLE USA, INC.; SUN MICROSYSTEMS, INC.; ORACLE AMERICA, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 037302/0843 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 16, 2003
From: DE JONG, EDUARD
To: SUN MICROSYSTEMS, INC.
Reel/Frame 013670/0540 →