Relating to Consumption of Content
A method and apparatus for consumption of content (1) is described in which a licensor is able to exercise control over consumption based on a personal identity in the form of a set of binding attributes (15). The control may be exercised for a number of consuming terminals (19) including rendering machines such as portable video and audio players.
Latest NOKIA CORPORATION Patents:
This application claims the benefit of the filing date of Provisional Application Ser. No. 60/314,095, filed on Aug. 23, 2001, entitled “Improvements in and Relating to Consumption of Content” which is incorporated herein by reference in its entirey.
BACKGROUND OF THE INVENTION1. Field of the Invention
The present invention relates to the consumption of content, particularly although not exclusively the distribution, rendering and decryption of content having digital rights such as copyright therein.
2. Description of the Prior Art
Typically, content such as video, audio or textual data is consumed by a user via a terminal such as a rendering machine. A rendering machine transforms the data defining the content into a form which may be interpreted by a user's senses. Thus, content in the form of video may be rendered on a visual display unit or monitor, audio content may be rendered by a stereo system and a printer used to render textual content, to name but a few examples. In many cases, such as the distribution of content recorded on magnetic media, optical disk or the like, a number of steps will take place in rendering the data to a form suitable for interpretation by a user's senses.
With the advent of digital content distribution, the opportunity has arisen for faultless replication of content to be carried out. Clearly, without appropriate controls, such replication or copying can take place without the agreement of a content relevant right's holder/owner. A particular challenge to the content generating community, which includes record companies, publishers and other right holders, is the ease with which digital content may be disseminated, particularly over networks. This ease of dissemination is also coupled with the fact that there is little or no degradation in the quality of the content despite repeated copying and forwarding of the content in its original format. Thus, unauthorized copies of copyrighted content will meet the same high expectations of consumers in relation to the authorized content.
Consequently, many approaches have been implemented and are being developed to protect such content for rendering on a particular rendering machine. A particularly favored approach (
According to one aspect of the present invention, there is provided a method of decrypting content stored on a terminal, the method comprising obtaining a license comprising a content decryption key and a set of binding attributes, the attributes including a public key; establishing a communication link between the terminals; receiving digitally signed data on the communication link at the terminal from the one other terminal; verifying at the terminal the digitally signed data utilizing the said public key; and wherein the terminal in response to verification of the digitally signed data using the content decryption key to decrypt the content.
By binding content to a consumer identity, preferably in the form of an asymmetric key-pair, with a private key held in a Personal Trusted Device (PTD) of the user, the content is no longer bound to a particular terminal such as a rendering machine. As a result, the consumer is able to enjoy content in any suitable rendering machine wherever the consumer is able to prove the consumer's identity through the presence of the consumer's personal trusted device or more particularly through the presence of the consumer's private key on a secure tamperproof security element accessible to a protected processing environment (PPE) of the consumer's personal trusted device. Such a PPE provides functions including the ability to digitally sign data e.g. text, for the purposes of authentication. The choice of whether to use symmetric or asymmetric encryption techniques to protect the content, and any associated business rules or other conditions relating to the content, is dependent upon not only on the preferences of the rights holder, but also on technical considerations relating to security, ease and/or speed of encryption/decryption, key distribution and the like. Indeed, a hybrid approach may be taken in which both asymmetric and symmetric encryption schemes are adopted to encrypt content, business rules and other conditions relevant thereto.
According to a further aspect of the present invention, there is provided a terminal for rendering encrypted content, comprising a storage for the encrypted content and a license containing a content decryption key and a set of binding attributes, the attributes including a public key; a protected processing environment; a personal area network interface which establishes a communication link between the terminal and at least one other terminal and which delivers digitally signed data received from the other terminal to the protected processing environment; and wherein upon successful verification of the digitally signed data using the public key, the protected processing environment decrypts the encrypted content using the content decryption key.
Conveniently, the protected processing environment includes a digital rights management engine operable in accordance with the set of binding attributes.
According to a still further aspect of the present invention, there is provided a license creation method for facilitating the decryption of content on a terminal, the method comprising appending a set of binding attributes to a content decryption key wherein the binding attributes include a public key certificate obtained from a repository holding a public key certificate of a licensee with a corresponding private key being held on another terminal.
The license creation method is most conveniently under the control of the content provider or a party authorized thereby. Thus, the content provider should be able to verify the identity of those customers to whom the content provider provides access to encrypted content in the form of a license. Such verification of identity may be carried out by authenticating those certificates obtained from the repository with the relevant certification authority.
The public key certificate may be stored at the terminal or alternatively access to the public key certificate may be obtained by the terminal by storing a URL at the terminal, which is an alias to a network address at which the public key certificate may be retrieved by the terminal for rendering the content. The use of the URL decreases the storage requirements for data at the terminal significantly. Consequently, the URL at which the public key certificate may be retrieved may be stored in the terminal so that the terminal merely fetches the public key certificate when necessary.
The content provider is able to assess a level of trust in each customer based on the results of verification of the digital signature and the nature of the certification authority. This level of trust may be utilized by the content provider in determining what rights, if any, should be given in the license. Such rights may conveniently be stored in a voucher attached to the license or alternatively the content.
Whether a voucher is attached or otherwise delivered with the content or license, the DRM engine of a terminal is able to parse the voucher and act in accordance with any restrictions set by the content provider or owner in terms of the granted rights. The content or license is locked unless the right voucher is available.
The license may include a plurality of binding attributes which may allow content to be rendered by corresponding user identities. In which case, the content provider may establish different conditions to the rendering of the content as parsed from a corresponding voucher by a DRM engine of a terminal. Different user or device specific conditions, e.g. preferences or profiles may be established.
Although the license may only be delivered to a user on payment of a fee for example, advantageously, it may only be utilized to access content provided the relevant binding attributes can be satisfied, namely through the above described mechanism. Consequently, the license is freely transferable over a network or indeed on any insecure channel.
The invention further is a method of distributing encrypted content to a terminal comprising delivering encrypted content and a license relating thereto to a terminal, the license containing binding attributes corresponding to a user identity, and requesting authentication of the attributes by a personal trusted device.
It will be apparent that the personal trusted device may be utilized to authenticate the attributes of a license regardless of the particular platform on which the content is to be rendered, provided the requisite communication can be established. The rendering device and trusted device can be different which allows a free roaming voucher to be utilized.
A terminal which renders encrypted content in accordance with the invention includes a storage for the encrypted content and a license, the license containing a content decryption key and a set of binding attributes, the attributes including a public key; a protected processing environment; a communication link between the terminal and at least one other terminal which delivers digitally signed data from the other terminal to the terminal; a digital rights management engine disposed in a non-secure part of the terminal; and a digital rights management agent disposed within the protected processing environment which verifies if the digitally signed data is signed by a licensee of the encrypted content and upon verification, uses the content decryption key to decrypt the encrypted content. The storage may be unprotected; and the digital rights management engine may decrypt the set of binding attributes to determine if the encrypted content is licensed to be decrypted and if the encrypted content is authorized to be decrypted signals the digital rights management engine to render the content. The personal area network interface may issue a request to the other terminal to provide the digitally signed data. An encrypted part of the license may include a user identity certificate issued and digitally signed by a certification authority which permits a licensor of the content to establish a level of trust in a licensee of the content. An encrypted part of the license may include a URL which is an address at which a user identity certificate was issued and a digitally signed by a certification authority may be obtained which permits a licensor of the content to establish a level of trust in a licensee of the content.
BRIEF DESCRIPTION OF THE DRAWINGSIn order to understand more fully the present invention particular embodiments thereof are now be described by way of example and with reference to the accompanying drawings, in which:
Like reference numerals identify like parts throughout the drawings.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS OF THE INVENTION Referring to
As illustrated in
With reference to
With reference to
Each PTD 21a, 21b and 21c has a networking capability used to communicate with a rendering machine. Typically, such a capability is provided by a Personal Area Network (PAN) through the provision of one or more technologies from the following non-exhaustive list, namely wireless connectivity such as Infra Red, Low Power Radio Frequency (LPRF) such as e.g. Bluetooth and wired connectivity such as parallel port, serial port, USB, IEEE 1394 and the like. The extent of each PAN is shown by respective chain lines 23a, 23b, 23c. The PAN may overlap as shown. The PAN capability is interfaced with the known functionality of a mobile terminal as is well known to those skilled in the art.
Referring to
The PPE 53 of the PTD 21 implements the functions required to provide authentication through a set of services including providing digital signatures and as exemplified by the aforementioned Wireless Application Protocol Identity Module specification (WIM). In addition to the connection to the controller 39, the PPE 53 is connected to a Security Element Interface 55 providing a secure access channel to a tamper resistant storage module, hereinafter referred to as a Security Element (SE) 57. The SE 57 holds private keys, certificates and other personal data belonging to a user. The SE 57 inhibits access to the data stored therein by a combination of well-known physical and software barriers. The SE (vault) 57 facilitates the storage of a private key forming part of an asymmetric key pair owned by the SE 57 owner which in the event the SE 57 is not a permanent component of the terminal 21 will most probably, but not necessarily, correspond to the owner of the terminal 21 in which the SE 57 is installed.
Referring to
The rendering machines 19a, 19b and 19c of
Each rendering machine 19, therefore comprises hardware including a controller 73 and a PAN interface utilizing at least one connectivity option including wireless connectivity 63 such as IR and LPRF and wired connectivity 65 such serial, parallel, USB, IEEE 1394 and the like. In addition to the functions set forth below, the PAN interfaces permit the delivery of encrypted content and/or licenses to the rendering machine 19. For example, as illustrated in
If the rendering machine 19 relies on addition external components to deliver rendered content to a user, then a suitable output 75, illustrated in
Referring again to
The license 7 contains a set of binding attributes 15. The attributes 15 are required to ensure that only a user (licensee) party authorized by the content provider extracts the symmetrical key 13 required to decrypt the encrypted content 1 from the license.
Typically, delivery of the licenses 7 by the licensor takes place after consideration of some form has been provided by the licensee. Such consideration could be monetary or it could relate to a commitment to maintain confidentiality in respect of the content. The particular nature of the consideration, if any, will depend on the particular circumstances and methods of implementation which vary widely.
The binding attributes 15 are provided in the form of a Public Key Infrastructure (PKI) user certificate 61 which is representative of the licensee identity. The certificate 61 contains a public key 93 of the licensee which is preferably digitally signed by a Certification Authority (CA). In an initial step of the licensing process, the licensor may assess the extent of trust of the certificate of a potential licensee and this may include a determination of the level of trust in the CA and, of course, whether the certificate has been appropriately signed.
With additional reference to
Thus, the DRM engine 83 attempts to match the identity of the encrypted content 1 with the licensee identity data in the exposed portion 11 of any license stored on the device 19. In the event, no license can be found, the DRM engine 83 communicates this to the controller 73 which causes the UI to display an error message on the display (
In the event that the decrypted one way hash 111 corresponds to the one way hash 99 formed from the random data 101, then the DRM engine 83 is assured that the PTD 21 is established as being in the possession of the user identity licensed to render the content 1. Consequently, the DRM engine 83 permits the content key 13 to be extracted and used to decrypt the content 1. This includes decrypting the business rules 3 associated with the content 1 which may further determine what actions may be carried out in relation to the content 1 by the user. The successful decryption and any associated rules relating to use of the content are delivered to the display of the rendering machine (
The unprotected storage 120 stores a voucher 122, for example, as illustrated in
With reference to
The content 124 illustrated in
The PPE may include additional hardware allowing bootstrapping in a secure manner and may include a verifying signed code. The PPE has control of a memory managing unit (not illustrated) to restrict access to certain areas of the memory during operation.
The CODEC 108 may be disposed outside the application specific integrated circuit (ASIC)/CPU and furthermore, the output data from the CODEC may be from pins at the center of the integrated circuit making access thereto physically difficult. Furthermore, the output lines may run through a center layer of a multi-layered printed circuit board to provide additional protection to unauthorized access. As a result of the location exterior to the ASIC, the CODEC 108 may be removed from the PPE to permit change during the lifetime of the device.
The PPE 104 includes its own tamper-proof key 112 and includes a secure area for using the protected key making it a secure platform. As a result, the DRM engine 100 functions as a remote control of the DRM agent 106 in the PPE for reproduction of the content 124. This architecture has the advantage that the content 124 is only unprotected inside of the PPE 102 which strongly guards against theft. Therefore, even if the DRM engine 100 is unintentionally or maliciously compromised, all that can be accomplished is to play the content against the business rules within the voucher 122. Moreover, if a DRM engine attack is successful on one terminal, it does not break all of the terminals.
The operation of the terminal 19 in
The terminal of
It will be appreciated by those skilled in the art that the functionality of the rendering machine set out above may be provided through software, hardware or any combination thereof.
While the present invention has been described in terms of its preferred embodiments, it should be understood that numerous modifications may be made thereto without departing from the scope of the present invention. It is intended that all such modifications fall within the scope of the appended claims.
Claims
1-34. (canceled)
35. A method for creating a license which facilitates decryption of content on a terminal, the method comprising:
- appending a set of binding attributes to a content decryption key wherein the binding attributes include attributes obtained from a trusted storage.
36. A method as claimed in claim 35 wherein:
- the binding attributes from the trusted storage comprise a public key certificate of a licensee with a corresponding private key being held on another terminal.
37. A method as claimed in claim 36, comprising encrypting at least the content decryption key.
38. A method as claimed in claim 37, comprising:
- distributing to the terminal a decryption key for decrypting the encrypted content decryption key.
39. A method as claimed in claim 36, wherein:
- a plurality of binding attributes each having a respective public key certificate of a licensee are appended to the content decryption key.
40. A method as claimed in claim 37, wherein:
- a plurality of binding attributes each having a respective public key certificate of a licensee are appended to the content decryption key.
41. A method as claimed in claim 38, wherein:
- a plurality of binding attributes each having a respective public key certificate of a licensee are appended to the content decryption key.
42. A computer-readable medium storing a computer program comprising:
- executable code which is executed when loaded on a computer, to perform the method according to claim 36.
43. A computer-readable medium storing a computer program comprising:
- executable code which is executed when loaded on a computer, to perform the method according to claim 37.
44. A computer-readable medium storing a computer program comprising:
- executable code which is executed when loaded on a computer, to perform the method according to claim 38.
45. A computer-readable medium storing a computer program comprising:
- executable code which is executed when loaded on a computer, to perform the method according to claim 39.
46. A computer-readable medium storing a computer program comprising:
- executable code which is executed when loaded on a computer, to perform the method according to claim 40.
47. A computer-readable medium storing a computer program comprising:
- executable code which is executed when loaded on a computer, to perform the method according to claim 41.
48-53. (canceled)
54. A method of distributing encrypted content to a rendering machine comprising:
- delivering encrypted content and a license relating thereto to a rendering machine, the license containing binding attributes corresponding to a user identity; and
- requesting authentication of the attributes by a personal trusted device.
55. A method as claimed in claim 54, comprising: storing securely a license decryption key on the rendering machine.
56. A method as claimed in claim 55, wherein:
- the license decryption key is in a protected processing environment and is a private key with a corresponding public key being used to encrypt the license.
57. A method as claimed in claim 54,
- wherein: the binding attributes comprise a public key certificate of a user.
58. A method as claimed in claim 55,
- wherein: the binding attributes comprise a public key certificate of a user.
59. A method as claimed in claim 56,
- wherein: the binding attributes comprise a public key certificate of a user.
60. A method as claimed in claim 52, wherein:
- the request for authentication of the attributes comprises a request to provide digitally signed data.
61. A method as claimed in claim 58, wherein:
- the request for authentication of the attributes comprises a request to provide digitally signed data.
62. A method as claimed in claim 59, wherein:
- the request for authentication of the attributes comprises a request to provide digitally signed data.
63. A computer-readable medium storing a computer program comprising:
- executable code which executes when loaded on a computer, wherein the computer operates to carry out the method according to claim 54.
64. A computer-readable medium storing a computer program comprising:
- executable code which executes when loaded on a computer, wherein the computer operates to carry out the method according to claim 55.
65. A computer-readable medium storing a computer program comprising:
- executable code which executes when loaded on a computer, wherein the computer operates to carry out the method according to claim 56.
66. A computer-readable medium storing a computer program comprising:
- executable code which executes when loaded on a computer, wherein the computer operated to carry out the method according to claim 57.
67. A computer-readable medium storing a computer program comprising:
- executable code which executes when loaded on a computer, wherein the computer operates in accordance with the code to carry out the method according to claim 58.
68. A computer-readable medium storing a computer program comprising:
- executable code which executes when loaded on a computer, wherein the computer operates to carry out the method according to claim 59.
69. A computer-readable medium storing a computer program comprising:
- executable code which executes when loaded on a computer, wherein the computer operates to carry out the method according to claim 60.
70. A computer-readable medium storing a computer program comprising:
- executable code which executes when loaded on a computer, wherein the computer operates to carry out the method according to claim 61.
71. A computer-readable medium storing a computer program comprising:
- executable code which executes when loaded on a computer, wherein the computer operates to carry out the method according to claim 62.
72-83. (canceled)
Type: Application
Filed: Apr 24, 2007
Publication Date: Dec 13, 2007
Applicant: NOKIA CORPORATION (Espoo)
Inventors: Leon Hurst (Helsinki), Julian Durand (Mountain View, CA), Jeffrey Wilkinson (Wellesley Hills, MA), Mulligan Michael (Tampere)
Application Number: 11/739,134
International Classification: G06Q 90/00 (20060101);