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

Loading and identifying a digital rights management operating system

Assignee: Microsoft Technology Licensing LLC
•
Filing: 1999-01-08
•
Granted: 2001-12-04
•
Expires: 2019-01-08
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The identity of an operating system running on a computer is determined from an identity associated with an initial component for the operating system, combined with identities of additional components that are loaded afterwards. Loading of a digital rights management operating system on a subscriber computer is guaranteed by validating digital signatures on each component to be loaded and by determining a trust level for each component. A trusted identity is assumed by the digital rights management operating system when only components with valid signatures and a pre-determined trust level are loaded. Otherwise, the operating system is associated with an untrusted identity. Both the trusted and untrusted identities are derived from the components that were loaded. Additionally, a record of the loading of each component is placed into a boot log that is protected from tampering through a chain of public-private key pairs.

Inventors

  • 👤 Paul England
  • 👤 John D. DeTreville
  • 👤 Butler W. Lampson

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-24 19:35
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/468; G06F21/00; G06F21/10; G06F9/44; G06F9/4401; G06F9/4406; G06F2221/00; G06F2221/21; G06F2221/2113

Claims Analysis

Total Claims: 34
Claim 1
Independent Claim 70 words
A computerized method for loading components in an operating system comprising: verifying a source for each component before the component is loaded; establishing a trust level for each component before the component is loaded; loading each component if the source of the component is trusted and the trust level of the component satisfies trust criteria; and generating a trusted identity for the operating system when specific components have been loaded.
Claim 2
Dependent Claim 70 words
A computerized method for loading components in an operating system comprising: verifying a source for each component before the component is loaded; establishing a trust level for each component before the component is loaded; loading each component if the source of the component is trusted and the trust level of the component satisfies trust criteria; and generating a trusted identity for the operating system when specific components have been loaded.
Claim 3
Dependent Claim 29 words
The computerized method of claim 1 , further comprising: loading a component if the source of the component is untrusted; and generating a non-trusted identity for the operating system.
Claim 4
Dependent Claim 34 words
The computerized method of claim 1 , further comprising: loading a component if the trust level for the component does not satisfy the trust criteria; and generating a non-trusted identity for the operating system.
Claim 5
Dependent Claim 38 words
The computerized method of claim 1 , further comprising: loading a component if the trust level for the component does not satisfy the trust criteria; and generating an identity unrelated to the trusted identity for the operating system.
Claim 6
Dependent Claim 21 words
The computerized method of claim 1 , wherein the trust criteria are based on a digital signature associated with the component.
Claim 7
Dependent Claim 19 words
The computerized method of claim 1 , wherein the trust criteria are based on a list of trusted components.
Claim 8
Dependent Claim 21 words
The computerized method of claim 6 , wherein the list of trusted components comprises a plurality of digests for trusted components.
Claim 9
Dependent Claim 19 words
The computerized method of claim 1 , wherein the trust criteria are based on the source of the component.
Claim 10
Dependent Claim 19 words
The computerized method of claim 1 , wherein the trust level is different for different versions of a component.
Claim 11
Dependent Claim 36 words
The computerized method of claim 9 , wherein the trust criteria is satisfied if the version of the component to be loaded is not signed by a revoked digital signature listed in a certification revocation list.
Claim 12
Dependent Claim 22 words
The computerized method of claim 1 , wherein the trusted identity is generated from the loaded components using a one-way hash function.
Claim 13
Dependent Claim 14 words
The computerized method of claim 1 , wherein the specific components comprise base components.
Claim 14
Dependent Claim 28 words
The computerized method of claim 1 , further comprising: generating a trusted identity for each component loaded after the trusted identity for the operating system has been generated.
Claim 15
Dependent Claim 19 words
The computerized method of claim 1 , further comprising; recording the loading of the components in a boot log.
Claim 16
Dependent Claim 34 words
The computerized method of claim 14 , wherein the boot log is maintained by a central processing unit, wherein the central processing unit is operable for certifying a current value for the boot log.
Claim 17
Dependent Claim 37 words
The computerized method of claim 14 , wherein a secure hash of the boot log is maintained by central processing unit, wherein the central processing unit is operable for certifying a current value for the boot log.
Claim 18
Dependent Claim 113 words
The computerized method of claim 14 , wherein recording the loading of the components in the boot log comprises: obtaining a first private key and a corresponding first public key; storing the first public key in a secure location; and for each one of a plurality of component subsets, performing a signing loop until all component subsets have been signed, the signing loop comprising: recording the loading of the component subset in the boot log; obtaining a new private key and a corresponding new public key; recording the new public key in the boot log; digitally signing the boot log with the immediately prior private key; and deleting the immediately prior private key.
Claim 19
Dependent Claim 35 words
The computerized method of claim 14 , further comprising: recording a sentinel to the boot log, wherein the sentinel is a pre-determined value signed with the new private key; and deleting the new private key.
Claim 20
Dependent Claim 25 words
The computerized method of claim 14 , further comprising: attesting to the new public key and the first public key to authenticate the operating system.
Claim 21
Dependent Claim 16 words
The computerized method of claim 1 , wherein one of the components is a boot block.
Claim 22
Dependent Claim 16 words
The computerized method of claim 1 , wherein the elements are performed in the order recited.
Claim 23
Dependent Claim 87 words
A computer-readable medium having stored thereon a boot block data structure comprising: a certificate entry containing data representing a certificate that identifies a digital rights management system; a boot code entry containing data representing computer-executable instructions for booting the digital rights management system identified by the certificate entry; and a boot block signature entry containing data representing a source that provided the computer-executable instructions in the boot code entry, wherein the data in the boot block signature entry is verified using the data in the certificate entry.
Claim 24
Dependent Claim 87 words
A computer-readable medium having stored thereon a boot block data structure comprising: a certificate entry containing data representing a certificate that identifies a digital rights management system; a boot code entry containing data representing computer-executable instructions for booting the digital rights management system identified by the certificate entry; and a boot block signature entry containing data representing a source that provided the computer-executable instructions in the boot code entry, wherein the data in the boot block signature entry is verified using the data in the certificate entry.
Claim 25
Dependent Claim 103 words
The computer-readable medium of claim 22 , further comprising: a boot block public key entry containing data representing a special public key for the source; an intermediate boot code entry containing data representing additional computer-executable instructions for booting the digital rights management system identified by the certificate entry; a special signature entry containing data representing the source that provided the computer-executable instructions in the boot code entry, wherein the data in the special signature entry is verified using the data in the boot block public key entry; and, a standard public key entry containing data representing a standard public key for the source.
Claim 26
Dependent Claim 79 words
A computer system comprising: a processing unit; a system memory coupled to the processing unit through a system bus; a computer-readable medium coupled to the processing unit through a system bus; and an operating system boot block executed from the computer-readable medium by the processing unit, wherein the boot block causes the processing unit to validate subsequent components to be loaded by the boot block, and to generate an identity for the operating system based on the loaded components.
Claim 27
Dependent Claim 79 words
A computer system comprising: a processing unit; a system memory coupled to the processing unit through a system bus; a computer-readable medium coupled to the processing unit through a system bus; and an operating system boot block executed from the computer-readable medium by the processing unit, wherein the boot block causes the processing unit to validate subsequent components to be loaded by the boot block, and to generate an identity for the operating system based on the loaded components.
Claim 28
Dependent Claim 27 words
The computer system of claim 24 , wherein the boot block causes the processing unit to validate a subsequent component by checking a signature on the component.
Claim 29
Dependent Claim 29 words
The computer system of claim 25 , wherein the boot block causes the processing unit to validate a subsequent component by further determining a trust level for the component.
Claim 30
Dependent Claim 23 words
The computer system of claim 24 , wherein the boot block causes the processing unit to load only subsequent components that are validated.
Claim 31
Dependent Claim 28 words
The computer system of claim 24 , wherein the boot block causes the processing unit to generate an identity that is trusted when only validated components are loaded.
Claim 32
Dependent Claim 42 words
The computer system of claim 26 , further comprising: a loaded component executing block executed from the computer-readable medium by the processing unit, wherein the loaded component causes the processing unit to validate subsequent components to be loaded by the loaded component.
Claim 33
Dependent Claim 43 words
The computer system of claim 24 , further comprising: a boot log facility executed from the computer-readable medium by the processing unit, wherein the boot log facility causes the processing unit to record an identity for each component loaded in a boot log.
Claim 34
Dependent Claim 53 words
The computer system of claim 24 , wherein the boot log facility further causes the processing unit to generate a plurality of public and private key pairs, to record each public key in a separate portion of the boot log and to sign each portion of the boot log with a private key.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2004-12-03 2005-06-04 2005-12-04 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2008-12-03 2009-06-04 2009-12-04 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2012-12-03 2013-06-04 2013-12-04 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag