Digital rights management (DRM) encryption and data-protection for content on device without interactive authentication
AssigneeMicrosoft Corporation
InventorsClifford P. Strom, Krishnamurthy Ganesan, Jonas Fredrik Helin
Life of this patent
Estimating the term…
Abstract
To render content on a medium, a device obtains a table from the medium, obtains a private key of the device (PR-PD), indexes into an entry of the table based thereon, obtains (PU-PD(RND)) from the indexed-into entry of the table, and applies (PR-PD) to (PU-PD(RND)) to expose a random key (RND). Then, the device obtains (RND(PR-PM)) from the table, applies (RND) to (RND(PR-PM)) to expose a private key of the medium (PR-PM), obtains (PU-PM(KD)) from the license, applies (PR-PM) to (PU-PM(KD)) to expose a content key (KD), obtains (KD(content)) from the storage medium, applies (KD) to (KD(content)) to expose the content.
Claims40
A method performed in combination with a device having a public-private key pair (PU-PD, PR-PD), the device for receiving a storage medium or having the storage medium, the storage medium having a public-private key pair (PU-PM, PR-PM) and having stored thereon digital content encrypted by a content key (KD) (KD(content)), a digital license corresponding to the content including (KD) encrypted by (PU-PM) (PU-PM(KD)), and a table including a plurality of entries therein, each entry including a random key (RND) encrypted by a (PU-PD) of one of a plurality of devices (PU-PDx(RND)), the table further including (PR-PM) encrypted by (RND) (RND(PR-PM)), the method for the device to render the content on the medium and comprising:
- receiving a request to render the content on the medium;
- obtaining the table from the medium;
- obtaining (PR-PD);
- Indexing into an entry of the table based on the obtained (PR-PD);
- obtaining (PU-PD(RND)) from the indexed-into entry of the table;
- applying (PR-PD) to (PU-PD(RND)) to expose (RND);
- obtaining (RND(PR-PM)) from the table;
- applying (RND) to (RND(PR-PM)) to expose (PR-PM);
- obtaining (PU-PM(KD)) from the license;
- applying (PR-PM) to (PU-PM(KD)) to expose (KD);
- obtaining (KD(content)) from the storage medium;
- applying (KD) to (KD(content)) to expose the content;
- and
- rendering the exposed corresponding content:
A method performed in combination with a host computer and a plurality of devices each having a public-private key pair (PU-PD, PR-PD), each device for receiving a storage medium or having the storage medium, the storage medium including an ID thereof thereon and having a public-private key pair (PU-PM, PR-PM) and for having stored thereon digital content encrypted by a content key (KD) (KD(content)), a digital license corresponding to the content including (KD) encrypted by (PU-PM) (PU-PM(KD)), and a table including a plurality of entries therein, each entry including a random key (RND) encrypted by a (PU-PD) of one of a plurality of devices (PU-PD(RND)), the table further including (PR-PM) encrypted by (RND) (RND(PR-PM)), the method for the host computer to provide the medium with the table and comprising:
- obtaining the table from a cache;
- obtaining the ID of the medium therefrom;
- appending the obtained ID of the medium to the obtained table;
- employing a (PR-PD) to find the corresponding entry in the obtained table and expose (RND);
- tying the table to the medium by the ID of the medium and (RND);
- and
- copying the tied table to the medium.
A method performed in combination with a host computer and a storeage medium including and ID thereof thereon and having a public-private key pair (PU-PM, PR-PM) and a table including a plurality of entries therein, each entry including a random key (RND) encrypted by a (PU-PD) of one of plurality of devices (PU-PD(RND)), the table further including (PU-PM), and still further including (PR-PM) encrypted by (RND) (RND(PR-PM)), the method for the host computer to store digital content and a digital license corresponding thereto on the medium and comprising:
- encrypting the content to be stored on the medium according to a content key (KD) (KD(content));
- encrypting (KD) according to (PU-PM) (PU-PM(KD));
- placing (PU-PM(KD)) in the license and
- storing the encrypted content and the license on the medium, whereby a device having a (PR-PD) indexes into and entry of the table, obtains (PU-PDx(RND)) therefrom, applies (PR-PD) to (PU-PD(RND)) to expose (RND), obtains (RND(PR-PM)) from the table, applies (RND) to (RND(PR-PM)) to expose (PR-PM), obtains (PU-PM(KD)) from the license, applies (PR-PM) to (PU-PM(KD)) to expose (KD), obtains (KD(content)) from the storage medium, and applies (KD) to (KD(content)) to expose the content for rendering.
A method performed in combination with a device having a public-private key pair (PU-PD, PR-PD), the device for receiving a storage medium or having the storage medium, the storage medium having a public-private key pair (PU-PM, PR-PM) and having stored thereon digital content encrypted by a content key (KD) (KD(content)), a digital license corresponding to the content including (KD) encrypted by (PU-PM) (PU-PM(KD)), and a table including a plurality of entries therein, each entry including (PR-PM) encrypted by a (PU-PD) of one of a plurality of devices (PU-PD(PR-PM)), the method for the device to render the content on the medium and comprising:
- receiving a request to render the content on the medium;
- obtaining the table from the medium;
- obtaining (PR-PD);
- indexing into an entry of the table based on the obtained (PR-PD);
- obtaining (PU-PD(PR-PM)) from the indexed-into entry of the table;
- applying (PR-PD) to (PU-PD(PR-PM)) to expose (PR-PM);
- obtaining (PU-PM(KD)) from the license;
- applying (PR-PM) to (PU-PM(KD)) to expose (KD);
- obtaining (KD(content)) from the storage medium;
- applying (KD) to (KD(content)) to expose the content;
- and
- rendering the exposed corresponding content.
A method performed in combination with a host computer and a plurality of devices each having a public-private key pair (PU-PD, PR-PD), each device for receiving a storage medium or having the storage medium, the storage medium including an ID thereof thereon and having a public-private key pair (PU-PM, PR-PM) and for having stored thereon digital content encrypted by a content key (KD) (KD(content)), a digital license corresponding to the content including (KD) encrypted by (PU-PM) (PU-PM(KD)), and a table including a plurality of entries therein, each entry including (PR-PM) encrypted by a (PU-PD) of one of a plurality of devices (PU-PD(PR-PM)), the method for the host computer to provide the medium with the table and comprising:
- obtaining the table from a cache;
- obtaining the ID of the medium therefrom;
- appending the obtained ID of the medium to the obtained table;
- employing a (PR-PD) to find the corresponding entry in the obtained table and expose (PR-PM);
- tying the table to the medium by the ID of the medium and (PR-PM);
- and
- copying the tied table to the medium.
A method performed in combination with a host computer and a storage medium including an ID thereof thereon and having a public-private key pair (PU-PM, PR-PM) and a table including a plurality of entries therein, each entry including (PR-PM) encrypted by a (PU-PD) of one of a plurality of devices (PU-PD(PR-PM)), the table further including (PU-PM), the method for the host computer to store digital content and a digital license corresponding thereto on the medium and comprising:
- encrypting the content to be stored on the medium according to a content key (KD) (KD(content));
- encrypting (KD) according to (PU-PM) (PU-PM(KD));
- placing (PU-PM(KD)) in the license and
- storing the encrypted content and the license on the medium, whereby a device having a (PR-PD) indexes into an entry of the table based on such (PR-PD), obtains (PU-PD(PR-PM)) therefrom, applies (PR-PD) to (PU-PD(PR-PM)) to expose (PR-PM), obtains (PU-PM(KD)) from the license, applies (PR-PM) to (PU-PM(KD)) to expose (KD), obtains (KD(content)) from the storage medium, and applies (KD) to (KD(content)) to expose the content for rendering.
Dependencies are inferred from the claim text.