Digital content items such as digital audio, digital video, digital images, games, and the like are often stored on removable data-holding media, such as compact discs, DVDs, and/or game discs. Further, such digital content items may be protected by digital rights management that restricts unauthorized copying and playing of the digital content items.
This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter. Furthermore, the claimed subject matter is not limited to implementations that solve any or all disadvantages noted in any part of this disclosure.
Various embodiments related to limited-rights local playback are discussed herein. One disclosed embodiment includes making limited-rights local playback of a digital content item contingent on the availability of a limited-rights license granting the right to play media locally when a removable medium is not present and one or more conditions are satisfied.
The present disclosure is directed to playing a digital content item from a local data-holding medium (e.g., hard drive), where the digital content item has been downloaded to the local data-holding medium from a removable data-holding medium (e.g., disc), and the presence of the removable data-holding medium is not necessary for playing the digital content item from the local data-holding medium. Digital content items may include, for example, digital audio, digital video, digital images, games, and the like. In particular, such an approach may be utilized for playing an electronic game on a gaming console, and may contribute to a more positive game-playing experience for the game user, as described below.
While the below examples are described with reference to digital content in the form of digital games, removable data-holding media in the form of game discs, and local data-holding media in the form of game console hard drives, it is to be understood that such examples are not limiting. The concepts described below can be applied to virtually any type of digital content downloaded from virtually any type of removable data-holding media to virtually any type of local data-holding media without departing from the scope of this disclosure.
At 14, method 10 includes determining whether the game on the game disc may be downloaded to the hard drive of the game-playing device.
If it is determined that downloading the game to the hard drive is not allowed, then at 16 method 10 includes ending the installation process. In such a case, the game may only be played directly from the disc without first being downloaded onto the hard drive.
If it is determined that downloading the game to the hard drive is allowed, at 18 method 10 includes downloading the game onto the hard drive. In some cases, a logic subsystem such as logic subsystem 158 of computing device 152 shown in
At 20, method 10 includes determining whether the game may be played from the hard drive without the presence of the game disc. In some cases, a determination module such as determination module 163 of computing system 152 shown in
If it is determined that the game is not allowed to be played from the hard drive without the presence of the game disc, then at 22 method 10 includes ending the installation process. As an example, an installation module such as installation module 161 of computing system 152 shown in
Oftentimes a digital content item may be protected by digital rights management which provides restrictions and/or policies regarding the use of the digital content item. In some cases, digital rights management may be used to allow for secure delivery of the digital content item for playback on computers, portable devices, and network devices. In some cases digital rights management may be used to restrict unauthorized copying of the digital content item. Further, in some cases digital rights management may include requiring a license agreement to identify how and/or when the digital content item may be used.
In the context of game-playing as discussed above, digital rights management may be applied to playing a game from the hard drive without a disc. For example, upon downloading the game to the hard drive, a user may need to first obtain a license from a licensing service associated with the game before the user is allowed to play the game from the hard drive. Such a license may define the circumstances under which the game may be played from the hard drive. For example, the license might specify that only one instance of the game may be downloaded and played. In another example, the license may specify a fixed-duration time period during which the game may be played from the hard drive. Further, the digital content item may be protected in such a way, for example, that only one license may be granted per game per user.
A computing system may be configured to make game play from the hard drive, or other local data-holding medium, contingent on the existence of a valid license that grants the rights for such play. In some cases a developer of the computing system configured to play the game may indicate availability of such a license. In other cases, the software on the computing system may indicate availability of such a license. As described by way of example below, such licenses may include full-rights licenses and/or limited-rights licenses, which may be applied to different circumstances. As part of this licensing scheme, method 10 optionally includes obtaining licensing as indicated by the dashed boxes 24 and 30, and described as follows.
If the game is allowed to be played from the hard drive without the presence of the game disc, then at 26 method 10 may optionally include determining if a full-rights license is available. The full-rights license may grant the user a right to play the game from the hard drive of the game-playing device without the game disc being present. Availability of the full-rights license may be based on several conditions, as described in more detail with reference to
At 32 method 10 may optionally include determining if a limited-rights license, such as a demo license or a rental license, is available. The limited-rights license may grant the user a right to play the game from the hard drive of the game-playing device without the game disc being present under one or more conditions, such as during a fixed-duration trial period. Availability of the limited-rights license may be based on several conditions, as described in more detail with reference to
If the limited-rights license is available, then at 34 method 10 includes obtaining the limited-rights license. The limited-rights license may be obtained from a network-accessible digital-content service, as described in more detail in the description of
As described above, method 10 may be designed for full-rights licensing, as generally indicated at dashed box 24, and/or limited-rights licensing, as generally indicated at dashed box 30. It is to be understood that full-rights licensing may be offered without limited-rights licensing, or vice versa. It is also to be understood that provisions for both full-rights licensing and limited-rights licensing may be implemented in some embodiments.
If neither a full-rights license nor a limited-rights license is available, then at 36 method 10 includes ending the installation process. In such a case, the game may be played directly from the disc without first being downloaded onto the hard drive.
As shown at dashed boxes 24 and 30 in
In the context of the game-playing example described above with reference to
Connecting to the digital-content service may include the computing system submitting a licensing request to the digital-content service. In the context of the game-playing example, the computing system may be a game-playing device onto which a game was downloaded from a game disc, utilizing an installation process such as method 10 shown in
At 54 method 50 includes the digital-content service receiving such identification information from the game-playing device. Upon receiving the identification information, at 56 method 50 includes the digital-content service determining if a full-rights license has already been granted for the unique disc ID. For example, each game disc may allow one full-rights license to be granted. Therefore, the digital-content service may perform an availability check to see if a full-rights license has already been granted for that particular unique disc ID. In some cases, a logic subsystem such as logic subsystem 165 of network-accessible digital-content service 154 shown in
If it is determined that a full-rights license has not already been granted for that particular unique disc ID, then the digital-content service may optionally determine if the disc is secure as indicated at 60 of method 50. Such a step may include a security check to determine if the game is “secure” in that it has not been altered and/or modified. As an example, non-secure discs may have been altered by a user to include modifications to the game code and/or data to achieve an unfair advantage to the user. Such non-secure discs may be deemed ineligible for full-rights licensing as described herein. In some cases, a logic subsystem such as logic subsystem 165 of network-accessible digital-content service 154 shown in
Any suitable approach may be used for performing such a security check. One approach includes obtaining a root hash of the game from the licensing request submitted by the game-playing device. In such a case, upon loading the game onto the hard drive of the game-playing device, the root hash may be hashed by employing a hashing algorithm utilizing a tree approach which breaks the game up into several pieces, and iteratively hashes, combines and rehashes the pieces in a tree-like fashion until a single “root hash” is created. In some cases, the root hash may be a small number of bytes and therefore easily included on a licensing request submitted to the digital-content service.
The digital-content service can then access a known root hash generated from a secure version of the game, where the known root hash identifies the original (i.e. “secure”) contents of the game. In some cases, the digital-content service may obtain the known root hash based on the version ID of the game. The digital-content service may then compare the root hash with the known root hash.
If the security check yields a root hash that is not equivalent to the known root hash, then the game is not secure, and the licensing process ends as shown at 62 of method 50.
However, if the security check verifies equivalence of the root hash hashed from the game on the hard drive of the game-playing device and the known root hash, then the game is secure and the licensing process may continue as follows.
At 64 method 60 includes documenting that the full-rights license is being granted for the unique disc ID. Such a step may include tying a user's profile on the digital-content service to the unique disc ID. Such documentation may be utilized by the digital-content service when determining if a full-rights license has already been granted for the unique disc ID, such as at step 56 of method 50.
At 66 method 50 includes the digital-content service creating the full-rights license, the full-rights license granting the user a right to play the game from the hard drive of the game-playing device without the game disc being present. In such a case, the game-playing device may be configured to search for such a license upon obtaining a request to play the game from the hard drive when a disc is not present, and only allow the game to be played if a valid license has been obtained. For example, the license may be downloaded and stored on the user's game-playing device which has been manufactured and/or programmed to search for such a license, and only allow playing the game from the hard drive without the disc if a valid license for the game exists on the game-playing device. Such a licensing scenario ensures that parameters regarding the option of playing the game from the hard drive without the presence of a game disc are defined and controlled, and utilizing such a feature when playing the game is contingent upon having a valid license.
In some cases, the full-rights license may be digitally signed by the digital-content service with a digital signature. The digital signature may be encrypted with a private key corresponding to the digital-content service. Digitally signing the license may prevent unauthorized copying and/or distributing of the license. Additionally, game-playing devices obtaining digitally signed licenses may decrypt the license before utilizing the license as a part of game play. For example, the game-playing device may be manufactured and/or configured to include a public key corresponding to the private key of the digital-content service, and the game-playing device may then use the public key to decrypt an encrypted digital signature of a received license.
At 68 method 50 includes delivering the full-rights license to the game-playing device. At 70 method 50 includes downloading the full-rights license onto the hard drive of the game-playing device.
At 82 method 80 includes connecting to a network-accessible digital-content service. As described above with reference to
At 84 method 80 includes the digital-content service receiving such identification information. Upon receiving the identification information, at 86 method 80 includes the digital-content service determining if a limited-rights license has already been granted for the game. For example, each game may allow one limited-rights license per user. Therefore, the digital-content service may perform an availability check to see if a limited-rights license has already been granted for that game to the user. In some cases, a logic subsystem such as logic subsystem 165 of network-accessible digital-content service 154 shown in
In the case that the limited-rights license has already been granted, then at 88 method 80 includes ending the licensing process.
If it is determined that a limited-rights license has not already been granted, then the digital-content service may optionally determine if the disc is secure as indicated at 90 of method 80. In some cases, a logic subsystem such as logic subsystem 165 of network-accessible digital-content service 154 shown in
However, if the security check verifies equivalence of the root hash hashed from the game on the hard drive of the game-playing device and the known root hash, then the game is secure and the licensing process may continue as follows.
At 94 method 80 includes documenting that the limited-rights license for the game is being granted to the user. Such a step may include tying a user's profile on the digital-content service to the game ID. Such documentation may be utilized by the digital-content service when determining if a limited-rights license has already been granted for the game ID, such as at step 86 of method 80.
At 96 method 80 includes the digital-content service creating the limited-rights license, the limited-rights license granting the user a right to play the game from the hard drive of the game-playing device without the game disc being present under one or more conditions, such as during a fixed-duration trial period.
As described above with reference to
In some cases, the limited-rights license may be digitally signed by the digital-content service with a digital signature, as described above with reference to
At 98 method 80 includes delivering the limited-rights license to the game-playing device. At 100 method 80 includes downloading the limited-rights license onto the hard drive of the game-playing device. It is to be understood that the game-playing device is a nonlimiting example of a computing system comprising a local data-holding medium. Other computing systems may be used, as described with reference to
At 114 method 110 includes determining if the disc is required to be in the disc drive of the computing system in order to play the game from the hard drive. If the disc is required, then at 116 method 110 includes determining if the disc is in the disc drive. If it is determined that the disc is in the disc drive, then at 118 method 110 includes playing the game from the hard drive with the disc in the disc drive. However, if it is determined that the disc is not in the disc drive, then at 120 method 110 includes ending the play request.
If the disc is not required to be in the disc drive, then at 122 method 110 includes determining if the computing system has a valid full-rights license. If the computing system does have a valid full-rights license, then upon accessing the full-rights license for the game, the computing system may determine that the full-rights license is digitally signed with a digital signature encrypted with a private key. In such a case, the computing system may decrypt the digital signature with a public key, where the public key may be on the game-playing device, and the public key is associated with the private key of the game-playing service.
The computing system may also verify the game on the game-playing device is secure based on the full-rights license. Such a step may include verifying equivalence of a root hash hashed from the game on the hard drive and a known root hash obtained from the full-rights license and generated from a secure version of the game. Such a step ensures that the game downloaded to the hard drive is secure and corresponds to the secure version of the game for which the license was issued.
At 124 method 110 may optionally include connecting to the network-accessible digital-content service. Upon doing so, at 126 method 110 includes determining if a game with the unique disc ID is currently being played from disc. For example, a game manufacturer may want to prevent a user from downloading the game to a hard drive of his game-playing device, obtaining the full-rights license, and then giving the disc to another user for playing the game from the game disc. (i.e. prevent two concurrent game sessions from a game of a unique disc ID). For example, in the context of a game-playing experience, such a step may include sending a usage request to the gaming service, where the usage request requests the gaming service to verify another game-playing device is not playing the game from the game disc and/or has not played the game from the game disc within a predetermined time period.
If it is determined that another user is already playing the game from the game disc and/or has recently played the game from the game disc, the digital-content service may choose to prohibit the user from proceeding with playing the game from the hard drive of his game-playing system with his full-rights license, and accordingly ending his play request at 128 of method 110 and/or requiring the disc be present before game play is allowed.
However, if it is determined that another user is not already playing the game from the game disc, then the game play request proceeds as follows.
At 130 method 110 includes playing the game from the hard drive without the disc in the disc drive upon determining there is a valid full-rights license.
If it is determined at 122 that there is not a valid full-rights license, then at 132 method 110 includes determining if there is a limited-rights license. If it is determined that there is a limited-rights license, then the limited-rights license may then be verified by comparing the root hash of the game to the known root hash obtained from the limited-rights license, as described above in the case of the full-rights license. In the case that the limited-rights license grants permission for a fixed-duration trial period, license verification may also include verifying a current date of the current game play request falls within the fixed-duration trial period.
At 134 method 110 includes playing the game from the hard drive without the disc in the disc drive upon determining there is a valid limited-rights license. However, if it is determined that there is not a valid limited-rights license, then the play request ends at 136 of method 110 unless the game disc is present.
In some embodiments, the above described methods and processes may be tied to a computing system. As an example,
Computing system 152 may perform one or more of the above described methods and processes. Computing system 152 includes a logic subsystem 158 and a data-holding subsystem 160. As shown, computing system 152 may include controller 162 configured to interact with computing system 152 as a user input device. It is to be understood that virtually any user input devices may be used, including, but not limited to, visual tracking cameras and/or acceleration/gyroscopic controllers. Computing system 152 may optionally include a display subsystem 166 and/or other components not shown in
Logic subsystem 158 may include one or more physical devices configured to execute one or more instructions. Logic subsystem 158 may be used to implement an installation module 161 for performing installations to data-holding subsystem 160 and/or a determination module 163 for determining license availability. For example, the logic subsystem may be configured to execute one or more instructions that are part of one or more programs, routines, objects, components, data structures, or other logical constructs. Such instructions may be implemented to perform a task, implement a data type, transform the state of one or more devices, or otherwise arrive at a desired result. The logic subsystem may include one or more processors that are configured to execute software instructions. Additionally or alternatively, the logic subsystem may include one or more hardware or firmware logic machines configured to execute hardware or firmware instructions. The logic subsystem may optionally include individual components that are distributed throughout two or more devices, which may be remotely located in some embodiments. Network-accessible digital-content service 154 may include a logic subsystem 165 including one or more physical devices configured to execute one or more instructions, such as described above.
Data-holding subsystem 160 may include one or more physical devices configured to hold data and/or instructions executable by the logic subsystem to implement the herein described methods and processes. When such methods and processes are implemented, the state of data-holding subsystem 160 may be transformed (e.g., to hold different data). Data-holding subsystem 160 may include removable media and/or built-in devices. Data-holding subsystem 160 may include optical memory devices, semiconductor memory devices, and/or magnetic memory devices, among others. Data-holding subsystem 160 may include devices with one or more of the following characteristics: volatile, nonvolatile, dynamic, static, read/write, read-only, random access, sequential access, location addressable, file addressable, and content addressable. In some embodiments, logic subsystem 158 and data-holding subsystem 160 may be integrated into one or more common devices, such as an application specific integrated circuit or a system on a chip.
When included, display subsystem 166 may be used to present a visual representation of data held by data-holding subsystem 160. As the herein described methods and processes change the data held by the data-holding subsystem, and thus transform the state of the data-holding subsystem, the state of display subsystem 166 may likewise be transformed to visually represent changes in the underlying data. Display subsystem 166 may include one or more display devices utilizing virtually any type of technology. Such display devices may be combined with logic subsystem 158 and/or data-holding subsystem 160 in a shared enclosure, or such display devices may be peripheral display devices.
It is to be understood that the configurations and/or approaches described herein are exemplary in nature, and that these specific embodiments or examples are not to be considered in a limiting sense, because numerous variations are possible. The specific routines or methods described herein may represent one or more of any number of processing strategies. As such, various acts illustrated may be performed in the sequence illustrated, in other sequences, in parallel, or in some cases omitted. Likewise, the order of the above-described processes may be changed.
The subject matter of the present disclosure includes all novel and nonobvious combinations and subcombinations of the various processes, systems and configurations, and other features, functions, acts, and/or properties disclosed herein, as well as any and all equivalents thereof.