IP Library Granted Patent US 7,364,087
Granted Patent B2
US 7,364,087 · App. 10/877,614 · Granted Apr 29, 2008

Virtual firmware smart card

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,364,087
App. No.
10/877,614
Granted
Apr 29, 2008
Kind
B2
Abstract

A method of copying virtual firmware smart card code from a first secured memory in a system and loading the virtual firmware smart card code into a second secured memory in the system so that the code may be run on a microprocessor to provide smart card services to the system.

Claims (37)

1. A method comprising:

copying virtual firmware smart card code from a first secured memory in a system;

loading the virtual firmware smart card code into a second secured memory in the system;

running the virtual firmware smart card code on a microprocessor to provide smart card services to the system; and

programming a chipset in the system to provide input/output (I/O) traps for hardware emulation prior to running the virtual firmware smart card code on the microprocessor.

2. The method of claim 1 , wherein the first secured memory comprises secured flash memory.

3. The method of claim 1 , wherein the I/O traps comprise an ISO 7816 interface.

4. The method of claim 1 , wherein the I/O traps comprise a trusted platform module (TPM) interface.

5. The method of claim 1 , further comprising publishing a programmatic interface for software emulation prior to running the virtual firmware smart card code on the microprocessor.

6. The method of claim 5 , wherein the programmatic interface comprises an EFI callable interface.

7. The method of claim 1 , wherein loading the virtual firmware smart card code into a second secured memory comprises loading the virtual firmware smart card code into SMRAM.

8. The method of claim 1 , wherein loading the virtual firmware smart card into a second secured memory comprises locking the virtual firmware smart card code into system memory.

9. The method of claim 1 , wherein running the virtual firmware smart card code on a microprocessor to provide smart card services to the system comprises providing at least services for key exchange, authentication, and signing.

10. The method of claim 1 , further comprising loading an operating system (O/S) subsequent to loading the virtual firmware smart card code into a second secured memory in the system.

11. The method of claim 1 , further comprising updating the virtual firmware smartcard code by updating the system firmware.

12. An article comprising a machine-accessible medium having stored thereon instructions that, when executed by a machine, cause the machine to provide smartcard services to a system by:

copying virtual firmware smart card code from a first secured memory in a system;

loading the virtual firmware smart card code into a second secured memory in the system;

running the virtual firmware smart card code on a microprocessor to provide smart card services to the system; and

programming a chipset in the system to provide input/output (I/O) traps for hardware emulation prior to running the virtual firmware smart card code on the microprocessor.

13. The article of claim 12 , wherein the first secured memory comprises secured flash memory.

14. The article of claim 12 , wherein the instructions that, when executed by a machine, further cause the machine to provide smartcard services to the system by publishing a programmatic interface for software emulation prior to running the virtual firmware smart card code on the microprocessor.

15. The article of claim 12 , wherein loading the virtual firmware smart card code into a second secured memory comprises loading the virtual firmware smart card code into SMRAM.

16. The article of claim 12 , wherein loading the virtual firmware smart card into a second secured memory comprises locking the virtual firmware smart card code into system memory.

17. The article of claim 12 , wherein running the virtual firmware smart card code on a microprocessor to provide smart card services to the system comprises providing at least services for key exchange, authentication, and signing.

18. The article of claim 12 , wherein the instructions that, when executed by a machine, further cause the machine to provide smartcard services to the system by loading an operating system (O/S) subsequent to loading the virtual firmware smart card code into a second secured memory in the system.

19. A system, comprising:

a processor;

a network interface device coupled to the processor; and

memory coupled to the processor, the memory adapted for storing instructions, which upon execution by the processor, cause virtual firmware smart card code to be copied from a first secured memory in a system, virtual firmware smart card code to be loaded into a second secured memory in the system, virtual firmware smart card code on a microprocessor to be run to provide smart card services to the system, and program a chipset in the system to provide input/output (I/O) traps for hardware emulation prior to running the virtual firmware smart card code on the microprocessor.

20. The system of claim 19 , wherein the first secured memory comprises secured flash memory.

21. The system of claim 19 , wherein the I/O traps comprise an ISO 7816 interface.

22. The system of claim 19 , wherein the I/O traps comprise a trusted platform module (TPM) interface.

23. The system of claim 19 , further comprising instructions to cause the machine to publish a programmatic interface for software emulation prior to running the virtual firmware smart card code on the microprocessor.

24. The system of claim 23 , wherein the programmatic interface comprises an EFI callable interface.

25. The system of claim 19 , wherein causing virtual firmware smart card code on a microprocessor to be run to provide smart card services to the system comprises providing at least services for key exchange, authentication, and signing.

26. The system of claim 19 , further comprising instructions to cause the machine to load an operating system (O/S) subsequent to loading the virtual firmware smart card code into a second secured memory in the system.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 8, 2016
From: INTEL CORPORATION
To: BEIJING XIAOMI MOBILE SOFTWARE CO., LTD.
Reel/Frame 037733/0440 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 24, 2004
From: ZIMMER, VINCENT J.; ROTHMAN, MICHAEL A.
To: INTEL CORPORATION
Reel/Frame 015527/0527 →