← Back to Patent Explorer
US5757919A Expired / Lapsed US ⏱️ 0.0 years remaining

Cryptographically protected paging subsystem

Assignee: Intel Corp
•
Filing: 1996-12-12
•
Granted: 1998-05-26
•
Expires: 2016-12-12
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and system for maintaining integrity and confidentiality of pages paged to an external storage unit from a physically secure environment. An outgoing page is selected to be exported from a physically secure environment to an insecure environment. An integrity check value is generated and stored for the outgoing page. In one embodiment, this takes the form of taking a one-way hash of the page using a well-known one-way hash function. The outgoing page is then encrypted using a cryptographically strong encryption algorithm. Among the algorithms that might be used in one embodiment of the invention are IDEA and DES. The encrypted outgoing page is then exported to the external storage. By virtue of the encryption and integrity check, the security of the data on the outgoing page is maintained in the insecure environment.

Inventors

  • 👤 Howard C. Herbert
  • 👤 Derek L. Davis

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-29 19:09
CPC Classifications
G; G06; G06F; G06F21/00; G06F21/70; G06F21/86; G06F12/00; G06F12/14; G06F12/1408; G06F21/60; G06F21/602; G06F21/606; G06F21/64; G06F21/71; G06F21/72; G06F21/78; G06F21/79; G06F21/82; G06F21/85; H; H04; H04L; H04L9/00; H04L9/32; H04L9/3236; H04L9/3247

Claims Analysis

Total Claims: 28
Claim 1
Independent Claim 62 words
A method comprising the steps of: generating an integrity check value for an outgoing page within a physically secure environment, the physically secure environment containing a processor and a memory; nstoring the integrity check value for the outgoing page; encrypting the outgoing page resulting in an encrypted page; and exporting the encrypted page to a storage unit outside the secure execution environment.
Claim 2
Independent Claim 62 words
A method comprising the steps of: generating an integrity check value for an outgoing page within a physically secure environment, the physically secure environment containing a processor and a memory; nstoring the integrity check value for the outgoing page; encrypting the outgoing page resulting in an encrypted page; and exporting the encrypted page to a storage unit outside the secure execution environment.
Claim 3
Dependent Claim 59 words
The method of claim 1 further comprising the steps of: importing an encrypted incoming page from a storage unit outside the secure execution environment; decrypting the incoming page; calculating an integrity check value for the incoming page; and comparing the integrity check value of the incoming page with a previously stored integrity check value corresponding to the incoming page.
Claim 4
Dependent Claim 16 words
The method of claim 1 wherein the encrypted page is encrypted using a symmetric encryption algorithm.
Claim 5
Dependent Claim 20 words
The method of claim 3 further comprising the step of: retrieving a random key for use in the encrypting step.
Claim 6
Dependent Claim 19 words
The method of claim 4 wherein every page related to a single application is encrypted using a same key.
Claim 7
Dependent Claim 15 words
The method of claim 4 wherein a different key is generated for every outgoing page.
Claim 8
Dependent Claim 20 words
The method of claim 4 further comprising the step of: storing the key in a table in the secure memory.
Claim 9
Dependent Claim 41 words
The method of claim 1 wherein the step of generating comprises the steps of: one way hashing the outgoing page; and storing a predetermined portion of a hash value of the outgoing page in a location within the physically secure environment.
Claim 10
Dependent Claim 27 words
The method of claim 8 wherein the location is pointed to by a pointer in a field of a page table entry corresponding to the outgoing page.
Claim 11
Dependent Claim 14 words
The method of claim 8 wherein the predetermined portion is the whole hash value.
Claim 12
Independent Claim 128 words
A system for maintaining security in a paging subsystem comprising: a bus; a secure processor coupled to a secure memory within a physically secure environment; an insecure storage unit in an insecure environment outside the physically secure environment and coupled to the physically secure environment by the bus; an interface within the physically secure environment and coupled between the bus and the secure processor, the interface encrypting and generating an integrity check value for a page exported to the insecure storaged unit, the interface decrypting and integrity checking the page when the page is imported back into the physically secure environment; and a page table exportable from the secure memory, the page table storing one of the integrity check value and a pointer to the integrity check value.
Claim 13
Independent Claim 128 words
A system for maintaining security in a paging subsystem comprising: a bus; a secure processor coupled to a secure memory within a physically secure environment; an insecure storage unit in an insecure environment outside the physically secure environment and coupled to the physically secure environment by the bus; an interface within the physically secure environment and coupled between the bus and the secure processor, the interface encrypting and generating an integrity check value for a page exported to the insecure storaged unit, the interface decrypting and integrity checking the page when the page is imported back into the physically secure environment; and a page table exportable from the secure memory, the page table storing one of the integrity check value and a pointer to the integrity check value.
Claim 14
Dependent Claim 23 words
The system of claim 11 wherein the interface comprises: an integrity check engine; and an encryption engine coupled to the integrity check engine.
Claim 15
Dependent Claim 39 words
The system of claim 12 wherein a portion of the secure memory stores a predetermined portion of a one-way hash value of an outgoing page generated by the integrity check engine responsive to the export of the outgoing page.
Claim 16
Dependent Claim 23 words
The system of claim 12 wherein the interface further comprises: a random number generator coupled to the bus to generate an encryption key.
Claim 17
Dependent Claim 25 words
The system of claim 14 further comprising: a key storage area storing a key corresponding to each page that has been exported from the interface.
Claim 18
Dependent Claim 15 words
The system of claim 12 wherein the encryption engine implements a symmetric bulk encryption algorithm.
Claim 19
Dependent Claim 14 words
The system of claim 12 wherein the encryption engine is a symmetric encryption engine.
Claim 20
Dependent Claim 14 words
The system of claim 17 wherein the interface further comprises an asymmetric encryption engine.
Claim 21
Dependent Claim 14 words
The system of claim 12 wherein the secure environment resides on a single chip.
Claim 22
Dependent Claim 15 words
The system of claim 11 further comprising: an insecure host processor coupled to the bus.
Claim 23
Independent Claim 64 words
A method of introducing a software for use in a secure environment comprising the steps of: generating an encryption key; reading into the secure environment a page from the software to be introduced; hashing the page to generate an integrity check value; encrypting the page using the encryption key; and exporting the page as encrypted to an external storage unit in an insecure environment.
Claim 24
Independent Claim 64 words
A method of introducing a software for use in a secure environment comprising the steps of: generating an encryption key; reading into the secure environment a page from the software to be introduced; hashing the page to generate an integrity check value; encrypting the page using the encryption key; and exporting the page as encrypted to an external storage unit in an insecure environment.
Claim 25
Dependent Claim 30 words
The method of claim 21 further comprising the steps of: verifying thet a valid digital signature exists on the software; and invalidating the introduction if no valid digital signature exists.
Claim 26
Dependent Claim 53 words
The method of claim 22 wherein the step of verifying comprises: maintaining a first overall hash of the software as the software is introduced; decrypting a second overall hash encrypted by a software originator using a public key and an asymmetric algorithm; and comparing the first overall hash to the second overall hash.
Claim 27
Independent Claim 67 words
A method of insuring integrity of a page paging between a physically secure environment and an insecure environment comprising the steps of: generating an outgoing integrity check value for an outgoing page; storing an outgoing integrity check value for the outgoing page generating an incoming integrity check value when the page is paged in; and comparing the outgoing integrity check value with the incoming integrity check value.
Claim 28
Independent Claim 67 words
A method of insuring integrity of a page paging between a physically secure environment and an insecure environment comprising the steps of: generating an outgoing integrity check value for an outgoing page; storing an outgoing integrity check value for the outgoing page generating an incoming integrity check value when the page is paged in; and comparing the outgoing integrity check value with the incoming integrity check value.

References Cited (Backward Citations)

US5007083A Cited
US5343527A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-05-25 2001-11-24 2002-05-26 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-05-25 2005-11-24 2006-05-26 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-05-25 2009-11-24 2010-05-26 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag