System and Method for Authorized Digital Content Distribution
20220394021 · 2022-12-08
Inventors
Cpc classification
H04L63/0428
ELECTRICITY
H04L2463/101
ELECTRICITY
G06F21/10
PHYSICS
H04L2209/24
ELECTRICITY
International classification
G06F21/10
PHYSICS
Abstract
A digital content distribution system uses a Digital Rights Management Controller that performs a set of arbitrary tests against the transfer request from one user to another such as user A to user B. Assuming these tests are successful, the DRM sends an encryption key to transferring user A. This encryption key E is taken from a table of encryption key/hash pairs which have been provided to the DRM Controller by an external authority such as the content rights holder. User A encrypts the content using they key provided by the DRM controller and then optionally calculates a hash over the encrypted form of the content E(X) and returns this value to the DRM Controller. On checking the returned hash against the hash from the table the DRM controller knows that user A does indeed have the digital content X in good condition. The DRM Controller then instructs both users A and B that the transfer may proceed. The encrypted form of the content E(X) is transferred from A to B. Once the content transfer has completed B ensures that the received content has been physically written to non-volatile storage (to account for crashes etc. during the next step). B then calculates a hash over the received content and returns this value to the DRM Controller. If this value matches the value previously given then the transfer has been successful and the DRM Controller updates whatever central records are appropriate, while also returning a decrypt key to B to allow it to decrypt the content.
Claims
1-25. (canceled)
26. An apparatus comprising: a user computing device configured to be in communication with a second computing device and a controller computing device to receive digital content from the second computing device; the user computing device configured to: send a request to receive the digital content from the second computing device; notify the controller computing device of the request to receive the digital content from the second computing device, the controller computing device in communication with the second computing device and configured to receive authorization from the second computing device to send the digital content to the user computing device; receive the digital content from the second computing device in an encrypted form; receive a decryption key from the controller computing device; decrypt the encrypted form of the digital content using the decryption key to return the digital content to an original form.
27. The apparatus of claim 26 wherein the user computing device is further configured to: calculate a hash based at least in part on the encrypted form of the digital content; and send the hash to the controller computing device to determine whether the received digital content is valid.
28. The apparatus of claim 26 wherein to notify the controller computing device includes requesting the controller computing device facilitate transfer of the digital content from the second computing device to the user computing device.
29. The apparatus of claim 26 wherein the user computing device is further configured to receive an acknowledgement message from the controller computing device indicating the controller computing device will facilitate transfer of the digital content from the second computing device to the user computing device.
30. The apparatus of claim 26 wherein the user computing device is further configured to determine that the received digital content has been physically written to non-volatile storage of the user computing device.
31. The apparatus of claim 26 wherein the digital content is one or more of a digital song, movie, book, magazine, computer software, and audiobook.
32. The apparatus of claim 26 wherein the user computing device communicates with at least one of the second computing device and the controller computing device via the internet.
33. A non-transitory computer readable medium having instructions stored thereon for receiving digital content at a user computing device from a second computing device, the instructions configured to cause one or more computing devices to perform operations comprising: sending a request to receive digital content from the second computing device; notifying a controller computing device of the request to receive the digital content from the second computing device, the controller computing device in communication with the second computing device and configured to receive authorization from the second computing device to send the digital content to the user computing device; receiving the digital content from the second computing device in an encrypted form; receiving a decryption key from the controller computing device; decrypting the encrypted form of the digital content using the decryption key to return the digital content to an original form.
34. The non-transitory computer readable medium according to claim 33 further comprising: calculating a hash based at least in part on the encrypted form of the digital content; and sending the hash to the controller computing device to determine whether the received digital content is valid.
35. The non-transitory computer readable medium according to claim 33 wherein notifying the controller computing device includes requesting the controller computing device facilitate transfer of the digital content from the second computing device to the user computing device.
36. The non-transitory computer readable medium according to claim 33 further comprising receiving an acknowledgement message from the controller computing device indicating the controller computing device will facilitate transfer of the digital content from the second computing device to the user computing device.
37. The non-transitory computer readable medium according to claim 33 further comprising determining that the received digital content has been physically written to non-volatile storage of the user computing device.
38. The non-transitory computer readable medium according to claim 33 wherein the digital content is one or more of a digital song, movie, book, magazine, computer software, and audiobook.
39. The non-transitory computer readable medium according to claim 33 wherein notifying the controller includes communicating with the controller computing device via the internet.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0017]
[0018]
[0019]
[0020]
[0021]
[0022]
DETAILED DESCRIPTION OF THE DRAWINGS
[0023] In
[0024] User A communicates using device 130a with DRM Self-Service Web-Site 100 in order to specify various parameters with respect to the transfer of content between one or more other users such as User B and User C.
[0025] DRM Controller 120 communicated with DRM Self-Service Web-Site 100 in order to receive information regarding how to handle a transfer of digital content from one user to another, such as the transfer of digital content from User B to User C. User B and User C communicate with DRM Controller 120 and with each other by using devices 130b and 130c which devices are similarly enabled to device 130a described above, although devices 130b and 130c should contain an interface for use by an actual person. A typical transaction would begin with some type of dialog between User B and User C that leads the two to decide that one has content that it would like to share with the other.
[0026] Accounting and Content Web (ACW) Server 140 comprises software implemented on a general purpose computer that is capable of keeping track of transfer of digital content and payment of digital content. ACW Server 140 is in communication with DRM Self-Service Web-Site 100 in order to receive information about the amount of compensation a user such as User A desires to receive for transfers of digital content between other user such as User B and User C. ACW Server 140 is also in communication with SCP Pre-Pay Web Service Server 160 that is an intelligent service control point capable of decrementing an account of the user paying for a transfer of content and incrementing one or more of the accounts of the user transferring content and/or the owner of the content being transferred. In this way, P2P transfers of digital content can be accomplished with the knowledge and approval of the owner of the content who is properly compensated for the transfer. SCP Pre-Pay Web Service Server 160 is in communication with the Digital Rights Server (DRS) which is a repository of records associated with the transfer of digital content and payment for such transfers. SCP Pre-Pay Web Service Sever 160 can be any of several known intelligent service control points such as the Telcordia Converged Application Server and/or Real-Time Charging System.
[0027]
[0028] As with
[0029]
[0030] The flow of content transfer process between User B and User C is shown in
[0031] At step 430 the DRM Controller 120 performs a set of arbitrary tests against the transfer request. For example the DRM Controller 120 may be designed to query whether User C has sufficient funds. Alternatively, DRM Controller may query whether User B legitimately has a copy of digital content X, or whether it is a time period in which User A is allowed to distribute content. Any number of arbitrary tests can be generated. Assuming these tests are successful, DRM Controller 120 sends an acknowledge (ACK) message back to User C at step 435 and/or an acknowledge (ACK) message with an encryption key E to User B at step 440. This encryption key E is taken from a table of encryption key/hash pairs which have been provided to the DRM Controller by an external authority. For example, the encryption key/hash pairs may be provided by User A, the owner or licensed distributor of digital content X.
[0032] User B encrypts the content using they key provided by the DRM Controller 120. User B also performs a hash function (preferably MD5) over the encrypted digital content and returns this hash to the DRM Controller 120 at an optional step not shown in
[0033] Once the content transfer has completed User C ensures that the received content has been physically written to non-volatile storage (to account for crashes) in a step not shown in
[0034] It will be noted that the DRM Controller 120 never needed to ‘see’ or possess an actual copy of the digital content. DRM Controller 120 only requires a set of encrypt key/hash pairs. If these pairs are generated by an external responsible authority then the organization running the DRM Controller need never see or have knowledge of what the digital content X is.
[0035] In an extension to the invention if the key/hash pairs are consumed this would serve as a form of audit and tracking for the content rights holder and would also prevent possible attacks based in the re-use of key/hash pairs. By “consumed” it is meant that the DRM server would use a key/hash pair for one and only one transaction and would never re-use the transactions for subsequent transactions. Furthermore, the external repository could supply the key//has pairs to the DRM server on demand, when users have committed to a content transfer.
[0036]
[0037]
[0038] The above description has been presented only to illustrate and describe the invention. It is not intended to be exhaustive or to limit the invention to any precise form disclosed. Many modifications and variations are possible in light of the above teaching. The applications described were chosen and described in order to best explain the principles of the invention and its practical application to enable others skilled in the art to best utilize the invention on various applications and with various modifications as are suited to the particular use contemplated.