Systems, programs, methods, and information processing devices

The system addresses unauthorized access in online games by encrypting data with encryption keys and using decryption keys for verification, ensuring secure and efficient temporary access to content data.

JP7894253B2Active Publication Date: 2026-07-23NINTENDO CO LTD
View PDF 6 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
NINTENDO CO LTD
Filing Date
2022-06-27
Publication Date
2026-07-23

AI Technical Summary

Technical Problem

Existing methods of transmitting content data in online games face challenges with unauthorized devices accessing content data by falsely claiming to meet specified conditions, leading to security issues and inefficiencies in verification processes.

Method used

A system where terminals encrypt data using encryption keys, with legitimate terminals verifying the encrypted data using decryption keys, allowing temporary access only if the conditions are met, and implementing multiple encryption and decryption keys to enhance security and efficiency.

Benefits of technology

Ensures secure and efficient temporary access to content data in online games by verifying legitimate terminals, reducing verification time and resource consumption while maintaining security.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007894253000001
    Figure 0007894253000001
  • Figure 0007894253000002
    Figure 0007894253000002
  • Figure 0007894253000003
    Figure 0007894253000003
Patent Text Reader

Abstract

To enable content data to be temporarily used in another terminal only when there exists a terminal that satisfies a predetermined condition normally in a communication game.SOLUTION: There is provided a system for executing a communication game by communication of a plurality of terminals. Each of the plurality of terminals includes content data that can be used at least in a communication game when at least a predetermined condition is satisfied, and a decryption key. A first terminal that satisfies at least the predetermined condition of the plurality of terminals includes an encryption key corresponding to the decryption key. When executing the communication game, the first terminal transmits encryption data encrypted using the encryption key to another terminal. Upon receipt of the encryption data from the first terminal, the another terminal verifies the encryption data on the basis of the decryption key. When the verification of the encryption data received from the first terminal is successful, a second terminal that does not satisfy the predetermined condition of the plurality of terminals makes it possible to use the content data in the communication game by the second terminal temporarily.SELECTED DRAWING: Figure 6
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a system, a program, a method, and an information processing apparatus.

Background Art

[0002] When executing a communication game between multiple users, for example, when a certain user has additional content data, it is conceivable to improve the趣味性 of the communication game by making the content data available to other users who do not have the content data.

[0003] For example, Japanese Patent Application Laid-Open No. 2009-060629 (Patent Document 1) discloses a configuration for executing a communication game between a master device and one or more slave devices by transmitting a transfer slave device program to the slave devices.

Prior Art Documents

Patent Documents

[0004]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0005] When adopting a method of transmitting content data to other users each time as described above, depending on the amount of the content data, a certain amount of transmission time may be required.

[0006] Therefore, a method can be considered in which the content data itself is stored in the terminals used by each user, and the content data is made available only when a predetermined condition is satisfied. For example, when a certain user satisfies a predetermined condition, even if other users do not satisfy the predetermined condition, the content data may be temporarily available to the other users.

[0007] If such a method is adopted, and there is an unauthorized device that falsely claims to meet the specified conditions even though it does not, then in addition to that unauthorized device, other devices that do not meet the specified conditions may also be able to access the content data.

[0008] This disclosure provides a mechanism for making content data temporarily available on other devices in online games, but only if there is a device that legitimately meets the specified conditions. [Means for solving the problem]

[0009] (Configuration 1) According to one embodiment, a system is provided in which a communication game is executed by multiple terminals communicating with each other. Each of the multiple terminals includes content data that can be used in the communication game if at least certain conditions are met, and a decryption key. A first terminal among the multiple terminals that meets at least the predetermined conditions includes an encryption key corresponding to the decryption key. When the first terminal executes the communication game, it sends encrypted data encrypted using the encryption key to the other terminals. When the other terminals receive the encrypted data from the first terminal, they verify the encrypted data based on the decryption key. A second terminal among the multiple terminals that does not meet the predetermined conditions, if it successfully verifies the encrypted data received from the first terminal, temporarily allows the second terminal to use the content data in the communication game.

[0010] According to Configuration 1, encrypted data transmitted from a first terminal that meets predetermined conditions can be verified by other terminals. In other words, other terminals can verify that the first terminal meets the predetermined conditions. After verifying that a legitimate terminal that meets the predetermined conditions (the first terminal) exists, the content data can be temporarily used by other terminals. This can improve the enjoyment of online games.

[0011] (Configuration 2) In Configuration 1, each of the multiple terminals may contain multiple decryption keys. The first terminal may contain multiple encryption keys corresponding to each of the multiple decryption keys. The first terminal may generate encrypted data using an encryption key selected from among the multiple encryption keys based on information held by other terminals. Other terminals may verify the encrypted data using a decryption key selected from among the multiple decryption keys based on information held by other terminals.

[0012] According to Configuration 2, the level of security can be increased compared to using a single encryption and decryption key.

[0013] (Configuration 3) In Configuration 1 or 2, each of the multiple terminals may hold an encryption key when certain conditions are met.

[0014] According to Configuration 3, the terminal will not retain the encryption key unless certain conditions are met, thus increasing the level of security.

[0015] (Configuration 4) In Configuration 1 or 2, each of the multiple terminals may further include an encryption key. The encryption key may become available to each of the multiple terminals when certain conditions are met.

[0016] According to Configuration 4, each of the multiple terminals will contain an encryption key, regardless of whether the predetermined conditions are met. Furthermore, the terminal can use the encryption key only if the predetermined conditions are met. This makes it easier to distribute the encryption key necessary for transmitting encrypted data.

[0017] (Configuration 5) In any of Configurations 1 to 4, the first terminal may transmit encrypted data to all other terminals included in at least one of the terminals.

[0018] According to Configuration 5, for example, encrypted data can be transmitted without making a determination such as preferentially transmitting to a terminal that does not satisfy a predetermined condition, so that the time required for verifying the encrypted data can be shortened.

[0019] (Configuration 6) In any one of Configurations 1 to 5, when the second terminal receives a plurality of encrypted data, if the verification of one of the plurality of encrypted data is successful, the second terminal may temporarily enable the use of content data in the communication game.

[0020] According to Configuration 6, even when a plurality of encrypted data are received, if the verification of any one of the encrypted data is successful, there is no need to perform subsequent verifications. Therefore, the time required for verifying the encrypted data can be shortened, and the consumption of resources required for verification can be suppressed.

[0021] (Configuration 7) In Configuration 6, each of the first terminals may transmit information indicating that its own terminal satisfies a predetermined condition to all other terminals included in at least a plurality of terminals. The other terminals may determine whether they have received encrypted data from all the first terminals based on the information indicating that the predetermined condition is satisfied.

[0022] According to Configuration 7, each of the plurality of terminals can confirm that it has received encrypted data from all the terminals that are supposed to transmit the encrypted data, so that the temporary use of application data can be realized more reliably.

[0023] (Configuration 8) In Configuration 7, in a state where encrypted data has been received from all the first terminals respectively, and if the verification fails for all of the received encrypted data, the use of content data in the communication game by the second terminal may not be enabled.

[0024] According to Configuration 8, it is possible to determine whether the temporary use of content data is possible after verifying all the transmitted encrypted data.

[0025] (Configuration 9) In any of Configurations 1 to 8, the communication game may include a game phase in which a plurality of terminals play the game and a preparation phase before the game phase. Even if the first terminal that transmitted the encrypted data for which verification was successful leaves the communication game during the preparation phase in the second terminal for which the use of the content data has been temporarily enabled, the use of the content data may be continuously enabled in the game phase following the preparation phase.

[0026] According to Configuration 9, after the verification of the encrypted data transmitted by the first terminal is successful and the use of the content data is temporarily enabled, even if the first terminal leaves, the use of the content data can continue, so it does not give the user a sense of discomfort.

[0027] (Configuration 10) In Configuration 9, in the preparation phase, if a user operation regarding the use of the content data is received, even if the first terminal that transmitted the encrypted data for which verification was successful leaves the communication game during the preparation phase, the use of the content data may be continuously enabled in the game phase.

[0028] According to Configuration 10, after receiving a user operation regarding the use of the content data, it does not give the user a sense of discomfort such as the content data becoming unavailable due to the departure of another terminal.

[0029] (Configuration 11) According to another embodiment, a program for executing a communication game by communicating with another device is provided. The program causes a computer including at least content data available in at least the communication game and a decryption key when at least a predetermined condition is satisfied to receive, from a device that satisfies the predetermined condition among other devices, encrypted data encrypted using an encryption key corresponding to the decryption key, verify the received encrypted data based on the decryption key, and when the predetermined condition is not satisfied, temporarily enable the use of the content data in the communication game if the verification of the encrypted data is successful.

[0030] (Configuration 12) According to yet another embodiment, a method is provided for executing a communication game by communication between multiple terminals. Each of the multiple terminals includes content data that can be used in the communication game if at least certain conditions are met, and a decryption key. The method includes the steps of: a first terminal among the multiple terminals that meets the predetermined conditions, when executing a communication game, sending encrypted data encrypted using an encryption key corresponding to the decryption key to the other terminals; when the other terminals receive the encrypted data from the first terminal, verifying the encrypted data based on the decryption key; and when a second terminal among the multiple terminals that does not meet the predetermined conditions successfully verifies the encrypted data received from the first terminal, temporarily enabling the second terminal to use the content data in the communication game.

[0031] (Configuration 13) According to yet another embodiment, an information processing device is provided that executes a communication game by communicating with other information processing devices. The information processing device includes content data that can be used in a communication game if at least certain conditions are met, a decryption key, verification means that, upon receiving encrypted data encrypted using an encryption key corresponding to the decryption key from an information processing device among other information processing devices that meet the predetermined conditions, verifies the encrypted data based on the decryption key, and enabling means that, if the predetermined conditions are not met, and the verification of the encrypted data is successful, temporarily enables the use of the content data in the communication game. [Effects of the Invention]

[0032] According to this disclosure, in online games, a mechanism can be implemented to temporarily make content data available on other devices only if there is a device that legitimately meets the specified conditions. [Brief explanation of the drawing]

[0033] [Figure 1] This is a schematic diagram showing an example of a system according to this embodiment. [Figure 2]This is a schematic diagram showing another example of a system according to this embodiment. [Figure 3] This is a diagram illustrating the rights of use in a system according to this embodiment. [Figure 4] This is a schematic diagram showing an example of the hardware configuration of a terminal that constitutes a system according to this embodiment. [Figure 5] Figure 4 is a schematic diagram showing an example of the data included in the application data and usage rights data. [Figure 6] This diagram illustrates the overview of the verification process in a system according to this embodiment. [Figure 7] Figure 6 is a schematic diagram showing a more detailed example of the functional configuration of the terminal (transmitting terminal). [Figure 8] Figure 6 is a schematic diagram showing a more detailed example of the functional configuration of the terminal (receiving terminal). [Figure 9] This flowchart shows the processing steps performed by a terminal of the system according to this embodiment. [Figure 10] Figure 9 is a flowchart showing a more detailed processing procedure for step S2. [Figure 11] Figure 10 is a flowchart showing a more detailed processing procedure for step S204. [Figure 12] Figure 10 is a flowchart showing a more detailed processing procedure for step S212. [Figure 13] Figure 9 is a flowchart showing a more detailed processing procedure for step S3. [Modes for carrying out the invention]

[0034] This embodiment will be described in detail with reference to the drawings. Note that identical or corresponding parts in the drawings are denoted by the same reference numerals, and their descriptions will not be repeated.

[0035] [A. Overview] First, we will describe an example configuration of a system for running a communication game according to this embodiment.

[0036] Figure 1 is a schematic diagram showing an example of a system according to this embodiment. As an example, Figure 1 shows a system 10A consisting of four terminals 100-1 to 100-4 (hereinafter sometimes collectively referred to as "terminal 100"). Terminals 100-1 to 100-4 are examples of information processing devices that execute communication games by communicating with each other. That is, each terminal 100 executes a communication game by communicating with the other terminals 100.

[0037] In the system 10A shown in Figure 1, one of the terminals 100 may become the "parent" that manages the communication game, and the other terminals 100 may become "children" that perform processing according to the "parent".

[0038] In the system 10A shown in Figure 1, any communication method that allows terminals 100-1 to 100-4 to exchange data with each other may be a wired or wireless method.

[0039] Figure 2 is a schematic diagram showing another example of a system according to this embodiment. In system 10B shown in Figure 2, each of the four terminals 100-1 to 100-4 is connected to network 12. A server 200 is connected to network 12, which performs at least some of the processing required for the communication game. Terminals 100-1 to 100-4 execute the communication game via server 200.

[0040] In the system 10B shown in Figure 2, the communication method by which terminals 100-1 to 100-4 connect to the network 12 may be either wired or wireless. Alternatively, the server 200 shown in Figure 2 may be omitted, and terminals 100-1 to 100-4 may communicate with each other via the network 12.

[0041] In this specification, "communication game" encompasses games involving one or more users and may be of any type. For example, a communication game may include competitive games or games in which multiple users can participate simultaneously. Furthermore, a communication game may allow virtual users who behave like users to participate.

[0042] In a system according to this embodiment, terminal 100 can hold content data whose use is restricted. The content data is available for use in communication games if at least certain conditions are met. In addition, even if terminal 100 that meets at least the predetermined conditions is not communicating with other terminals 100 to run a communication game, the content data may still be available when terminal 100 is running some game on its own.

[0043] In this specification, "content data" encompasses data used in a communication game and may be part of the application data for the communication game or the application data itself. For example, "content data" may include stages, characters, items, skills, etc.

[0044] In this specification, “prescribed conditions” are conditions that are set arbitrarily. For example, a “prescribed condition” may be considered met if the user using terminal 100 possesses the right to use content data (hereinafter also referred to as “usage rights”). Usage rights may be possessed, for example, by the user paying a fee or subscribing to a specific service.

[0045] The right to use the content may be granted on a per-user basis or on a per-device basis. If the right to use the content is granted on a per-user basis, even if the same device 100 is used by different users, those users may not possess a valid right to use the content, i.e., they may not meet the specified conditions. Thus, in cases where the same device 100 is shared by multiple users, the content data may be made available only when a user who possesses the right to use the device 100 is using it. On the other hand, if the right to use the content is granted on a per-device basis, the content data will be available regardless of which user is using the device 100 to which the right to use the content is granted.

[0046] Furthermore, the "specified conditions" may also include, in the case of a series of online games being played, owning other online games in that series, or having completed challenges within the online game.

[0047] In the following explanation, we will use terminal 100 as an example and assume that the "predetermined conditions" are met when a user who plays a communication game using terminal 100 possesses the right to use the service.

[0048] The system according to this embodiment provides a mechanism for temporarily making content data available on other terminals 100, but only when there is a terminal that legitimately meets the predetermined conditions.

[0049] If the specified condition is the possession of usage rights, then when playing a certain online game, if a user participating in (or attempting to participate in) that online game possesses usage rights, other users participating in (or attempting to participate in) that online game can also temporarily use the content data.

[0050] Figure 3 is a diagram illustrating the usage rights in a system according to this embodiment. Figure 3 shows an example in which four users 1 to 4 each play a communication game using terminals 100-1 to 100-4.

[0051] For example, as shown in Figure 3(A), suppose user 1, who uses terminal 100-1, possesses usage rights 20, while users 2 to 4, who use terminals 100-2 to 100-4, do not possess usage rights 20. In this example, since user 1 (terminal 100-1), who participates in the online game, possesses usage rights 20, content data becomes temporarily available in the online game run by terminals 100-1 to 100-4.

[0052] As shown in Figure 3(B), the same applies when user 1, who uses terminal 100-1, and user 2, who uses terminal 100-2, each possess usage rights 20.

[0053] Furthermore, if multiple users each possess a usage right 20, and the content and scope of the content data that can be used with each usage right 20 differ from one another, the content data that can be used may be restricted to only one of the usage rights 20, or the content data that can be used may be determined by considering all of the usage rights 20.

[0054] As shown in Figure 3(C), content data cannot be used unless all users 1 to 4, who are using terminals 100-1 to 100-4 respectively, possess usage rights 20.

[0055] [B. Hardware Configuration Example] Next, an example of the hardware configuration of the devices constituting the system according to this embodiment will be described.

[0056] Figure 4 is a schematic diagram showing an example of the hardware configuration of a terminal 100 that constitutes a system according to this embodiment. Referring to Figure 4, the terminal 100 is, for example, a computer and includes one or more processors 102, memory 104, storage 110, display 106, operation unit 108, and communication unit 120. These components are connected to each other via a bus 122 so as to be able to communicate data.

[0057] The processor 102 is a processing entity (processing means) for executing the processing provided by the terminal 100. The processor 102 reads the system program 112 and application data 114 stored in the storage 110, expands them into memory 104, and executes them.

[0058] The memory 104 is a volatile memory device (storage medium) accessible by the processor 102, and may be a DRAM (Dynamic Random Access Memory) or SRAM (Static Random Access Memory), for example.

[0059] The storage 110 is a non-volatile storage device (storage medium) accessible by the processor 102, and may include, for example, a hard disk or flash memory. The storage 110 may also be a storage medium that can be attached to or removed from the terminal 100, such as an optical disc and cartridge.

[0060] The storage 110 stores a system program 112 and application data 114. The system program 112 and / or application data 114 include instruction code for implementing the processing described later. The "program" that implements the processing according to this embodiment includes the instruction code included in the system program 112 and / or the instruction code of the application program included in the application data 114. The storage 110 may also store usage rights data 116 indicating usage rights 20 in response to user operations.

[0061] The display 106 displays an image generated as a result of information processing performed by the processor 102. There may be multiple displays 106. Alternatively, the terminal 100 may utilize one or more external displays.

[0062] The control unit 108 receives input from the user of the terminal 100. The control unit 108 includes, for example, push buttons, control levers, touch panels, and mice. The control unit 108 may also be a separate game controller connected to the terminal 100 by wire or wireless.

[0063] The communication unit 120 communicates with other terminals 100 and / or with the server 200 via the network 12. The communication unit 120 may have hardware necessary for wired communication and / or hardware necessary for wireless communication. In addition, all or part of the processing of the communication unit 120 may be implemented by the processor 102.

[0064] In Figure 4, terminal 100 is depicted as a single device, but it may also be implemented as a collection of multiple devices. That is, terminal 100 may be implemented as a combination of multiple independent devices. For example, a configuration consisting of a main unit having hardware corresponding to a processor 102, memory 104, and storage 110, and a terminal unit having hardware corresponding to a display 106 and an operation unit 108 may be adopted.

[0065] Furthermore, at least a portion of the processing performed on terminal 100 may be performed in a distributed manner by one or more other devices distributed across the network.

[0066] The processing performed at terminal 100 may be implemented by the processor 102 executing a program, or part or all of the processing may be implemented by hardwired circuits such as ASICs (application-specific integrated circuits) or FPGAs (field-programmable gate arrays).

[0067] In this specification, the term "processor" encompasses not only the usual meaning of a processing circuit that executes processing according to instruction codes written in a program, such as a CPU (Central Processing Unit), MPU (Micro Processing Unit), and GPU (Graphics Processing Unit), but also hardwired circuits such as ASICs and FPGAs. Hardwired circuits such as ASICs and FPGAs have circuits pre-formed to correspond to the processing to be executed. Furthermore, the term "processor" in this specification also encompasses circuits that integrate multiple functions, such as SoCs (System on Chip).

[0068] The server 200 shown in Figure 2 can be implemented using, for example, a general-purpose computer. Since the hardware configuration of a general-purpose computer is publicly known, a detailed explanation will not be provided.

[0069] [C. Verification Process] Next, an example of a verification process for providing the mechanism described above in the system according to this embodiment will be explained.

[0070] Figure 5 is a schematic diagram showing an example of the data included in the application data 114 and usage rights data 116 shown in Figure 4. Referring to Figure 5, the application data 114 is data for a communication game and, as an example, includes standard content data 32 that can be used even without possessing usage rights 20, restricted content data 34 that can be used when possessing usage rights 20, and a management module 36 that manages the availability of the restricted content data 34. The restricted content data 34 is an example of content data that can be used in a communication game if at least certain conditions are met.

[0071] In the system according to this embodiment, a group of key pairs is used to manage the usage rights 20. The group of key pairs includes one or more pairs of keys (key pairs) generated according to an arbitrary algorithm. In this embodiment, encryption is performed using one key and decryption is performed using the other key, so for the sake of explanation, the key used for encryption is referred to as the "encryption key" and the key used for decryption is referred to as the "decryption key".

[0072] Such a key pair can, for example, be a private key and a public key generated according to a publicly known public-key cryptography infrastructure. When using a private key and a public key pair, encryption can be performed using the decryption key, and decryption can be performed using the encryption key.

[0073] In the system according to this embodiment, the ownership of the usage rights 20 can be verified by providing a pair of key pairs (N=1), but multiple key pairs may be used to further enhance the level of security.

[0074] The application data 114 includes a decryption key group 300 consisting of N (N≧2) decryption keys 30_1, 30_2, ..., 30_N (hereinafter, each decryption key will also be collectively referred to as "decryption key 30"). As a result, each terminal 100 will have multiple decryption keys 30.

[0075] The usage rights data 116 includes an encryption key group 400 consisting of N encryption keys 40_1, 40_2, ..., 40_N (hereinafter, each encryption key is also collectively referred to as "encryption key 40") corresponding to each decryption key 30. In this way, when predetermined conditions are met, the terminal 100 will hold the encryption keys 40 corresponding to the decryption key 30. That is, an encryption key group 400 consisting of one or more encryption keys 40 is stored in the terminal 100 that satisfies the predetermined conditions.

[0076] For example, when a user performs a prescribed procedure (for example, payment of consideration for the usage rights 20), the usage rights data 116 (including the encryption key group 400) may be downloaded to the terminal 100 from the server managing the usage rights 20.

[0077] In this example, terminal 100 stores the encryption key group 400 only when certain conditions are met, thereby increasing the level of security. Furthermore, if the predetermined conditions are no longer met (for example, if payment for the usage rights 20 is no longer made), the usage rights data 116 stored in terminal 100 may be deleted.

[0078] As a variation, the usage rights data 116 and the encryption key group 400 may be independent of each other. In this case, for example, if a user acquires usage rights by paying a fee or subscribing to a specific service, the usage rights data 116 and the encryption key group 400 may be downloaded to the terminal 100, respectively.

[0079] As another variation, the application data 114 may have an encryption key group 400 in addition to the decryption key group 300. Each terminal 100 will hold the encryption key group 400 by storing the application data 114. In this case, the usage rights data 116 may not include the encryption key group 400, but instead include information for accessing the encryption key group 400 contained in the application data 114. The usage rights data 116 may be downloaded to the terminal 100 to allow access to the encryption key group 400 contained in the application data 114. That is, the encryption key 40 may become available to the terminal 100 when certain conditions are met. By including the decryption key group 300 and the encryption key group 400 in the application data 114, the decryption key group 300 and the encryption key group 400 are stored regardless of whether the certain conditions are met or not, so a mechanism for temporarily making content data available can be realized with a simpler configuration.

[0080] As another variation, when the application data 114 is installed on the terminal 100, the usage rights data 116 may be stored in an access-restricted area of ​​the terminal 100. After installation, the user may be able to access the usage rights data 116 stored on the terminal 100 by performing a predetermined procedure.

[0081] Figure 6 is a diagram illustrating the overview of the verification process in a system according to this embodiment. For the sake of explanation, Figure 6 shows an example of communication between terminal 100S (sending terminal) and terminal 100R (receiving terminal) used by a user who holds the usage rights 20. Terminal 100S corresponds to a first terminal that satisfies at least predetermined conditions. Terminal 100R corresponds to another terminal. Note that the user using terminal 100R may or may not hold the usage rights 20.

[0082] Terminal 100S uses encryption key 40 to encrypt verification string 52 and generate encrypted data 50 (encryption process 60). When terminal 100S runs a communication game, it sends the encrypted data 50, encrypted using encryption key 40, to terminal 100R.

[0083] Terminal 100R decrypts the encrypted data 50 received from terminal 100S using the decryption key 30 (decryption process 62). Then, terminal 100R determines whether the encrypted data 50 has been correctly decrypted based on the decryption result (determination process 64). If it is determined that the data has been correctly decrypted, a verification result 66 is output indicating that terminal 100S possesses legitimate usage rights 20. This verification result 66 indicates a successful verification. In this way, when terminal 100R, which is another terminal, receives encrypted data 50 from terminal 100S, it verifies the received encrypted data 50 based on the decryption key 30.

[0084] If terminal 100R does not meet the specified conditions (i.e., the user does not possess usage rights 20), and the verification of encrypted data 50 received from terminal 100S is successful, the use of content data in online games by terminal 100R will be temporarily enabled.

[0085] Furthermore, terminal 100S may transmit encrypted data 50 to all other terminals 100 running the same communication game, regardless of whether the user using terminal 100 possesses a usage right 20. In other words, terminal 100S may transmit encrypted data 50 to all other terminals 100 included in a group of terminals 100 communicating to run the communication game. In addition, terminal 100S may also transmit encrypted data 50 to itself. In other words, terminal 100R may be terminal 100S itself.

[0086] As a variation, terminal 100S may send encrypted data 50 only to terminal 100R whose user does not possess the usage rights 20.

[0087] Figure 7 is a schematic diagram showing a more detailed example of the functional configuration of terminal 100S (transmitting terminal) shown in Figure 6.

[0088] Referring to Figure 7, terminal 100S includes, as a functional configuration, an encryption key selection module 150, a verification string generation module 152, and an encryption module 158. These modules may be implemented by the terminal 100's processor 102 executing an application program (and / or system program 112) contained in the application data 114.

[0089] Terminal 100S uses selection information, which is information possessed by terminal 100 that receives encrypted data 50. Selection information is information that may change for each communication game and is information that can be shared between terminals 100 during communication. Selection information can include, for example, identification information that indicates the source terminal 100 (e.g., network address, device number, etc.) or information that is determined at the start of communication (e.g., random number, time the connection was established, session number, etc.).

[0090] The encryption key selection module 150 selects one encryption key 40 from the encryption key group 400 based on the selection information. Figure 7 shows an example where encryption key 40_m is selected.

[0091] The validation string generation module 152 generates a validation string 156 based on the selection information. The validation string generation module 152 generates the validation string 156 according to a predetermined validation string generation rule 154. The validation string generation rule 154 specifies, for example, that the selection information be included in the validation string 52. According to such a rule, the validation string 156 will directly or indirectly reflect the selection information.

[0092] The encryption module 158 generates encrypted data 50 by encrypting the verification string 156 using the encryption key 40_m selected by the encryption key selection module 150. The encrypted data 50 is sent to other terminals 100, including terminal 100R.

[0093] In this way, terminal 100S generates encrypted data 50 using an encryption key 40_m selected from among multiple encryption keys 40 based on information (selection information) that is also held by other terminals (terminal 100R).

[0094] Figure 8 is a schematic diagram showing a more detailed example of the functional configuration of terminal 100R (receiving terminal) shown in Figure 6.

[0095] Referring to Figure 8, terminal 100R includes, as a functional configuration, a decryption key selection module 160, a decryption module 162, a decision module 166, and an enablement module 168. These modules may be implemented by the terminal 100's processor 102 executing an application program (and / or system program 112) contained in the application data 114.

[0096] The encrypted data 50 received by terminal 100R is stored in the receive buffer 170.

[0097] The decryption key selection module 160 selects one decryption key 30 from the group of decryption keys 300 based on the selection information. Figure 8 shows an example where decryption key 30_m has been selected.

[0098] The decryption module 162 and the decision module 166 verify the encrypted data 50 received from the terminal 100S based on the decryption key 30. In other words, when the decryption module 162 and the decision module 166 receive encrypted data 50 encrypted using the encryption key 40 corresponding to the decryption key 30 from a terminal 100 that meets predetermined conditions, they act as verification modules that verify the encrypted data 50 based on the decryption key 30.

[0099] The encryption key selection module 150 (Figure 7) and the decryption key selection module 160 are appropriately designed so that the encryption key 40 selected by the encryption key selection module 150 (Figure 7) and the decryption key 30 selected by the decryption key selection module 160 (Figure 8) correspond to each other based on the selection information.

[0100] The decryption module 162 decrypts the encrypted data 50 using the decryption key 30_m selected by the decryption key selection module 160. The decryption result 164 from the decryption module 162 is output to the decision module 166.

[0101] The decision module 166 uses the selection information corresponding to the decryption result 164 to determine whether the decryption result 164 conforms to a predetermined rule (verification string generation rule 154 shown in Figure 7). If the decryption result 164 conforms to the verification string generation rule 154, the decision module 166 determines that the encrypted data 50 has been successfully decrypted (i.e., the verification was successful). On the other hand, if the decryption result 164 does not conform to the verification string generation rule 154, the decision module 166 determines that the decryption of the encrypted data 50 has failed. When the encrypted data 50 has been successfully decrypted, the decision module 166 outputs a verification result 66 indicating that it possesses legitimate usage rights 20.

[0102] In this way, terminal 100R verifies the encrypted data 50 using the decryption key 30_m selected from among the decryption keys 30 based on information (selection information) that terminal 100S also possesses.

[0103] The selection information may be obtained by any method when a connection is established with another terminal 100, or by any method when encrypted data 50 is received. Since the selection information may differ for each piece of encrypted data 50, the encrypted data 50 and the selection information may be stored in association.

[0104] The enabling module 168 enables the temporary use of the restricted content data 34 (see Figure 5) based on the verification result 66. Specifically, if terminal 100R does not meet the predetermined conditions, and the enabling module 168 successfully verifies the encrypted data 50 received from terminal 100S (i.e., outputs a verification result 66 indicating that legitimate usage rights 20 are possessed), it temporarily enables terminal 100R to use the restricted content data 34 in the communication game.

[0105] Thus, users using terminal 100R will be able to use the restricted content data 34 on the condition that a verification result 66 indicating that the verification of the usage right 20 has been successful is output.

[0106] Furthermore, both the functional configuration shown in Figure 7 and the functional configuration shown in Figure 8 may be implemented on the same terminal 100.

[0107] [D. Processing Procedure] Next, an example of a processing procedure including verification processing performed in a system according to this embodiment will be described.

[0108] In the following explanation, a competitive game is assumed as an example of a communication game. However, the communication game may also be a cooperative game in which players cooperate with other users. The game content may be a battle game, sports game, puzzle game, etc. Standard content data 32 (Figure 5) includes one or more standard battle stage data (hereinafter also referred to as "standard stage data"), and restricted content data 34 includes one or more additional battle stage data (hereinafter also referred to as "additional stage data"). Restricted content data 34 may include character data, item data, etc.

[0109] If any user participating in the same online game possesses usage rights 20, other users participating in that online game can also select stages included in the restricted content data 34.

[0110] (d1: Overall processing) Figure 9 is a flowchart showing the processing steps performed by terminal 100 of a system according to this embodiment. Each of multiple terminals 100 running the same communication game performs the processing shown in Figure 9. Each step shown in Figure 9 and Figures 10 to 13, described later, may be realized by the processor 102 of terminal 100 executing an application program (and / or system program 112) included in the application data 114.

[0111] The processing procedure shown in Figure 9 includes a game phase (step S6) in which multiple terminals 100 play the game, and a preparation phase (steps S1 to S5) prior to the game phase.

[0112] Referring to Figure 9, terminal 100 performs a process to establish a connection with other terminals 100 in response to user operation (step S1). In addition, in response to requests from multiple users who wish to participate in the communication game, one or more users to participate in the same communication game may be determined (matched) in a predetermined manner. For example, users with similar skill levels may be matched together.

[0113] Furthermore, the rules applicable to the online game being played may be notified to the user in advance. The rules to be applied may be arbitrarily determined by the user who is the host (parent) of the online game, or they may be determined by a predetermined method.

[0114] Next, terminal 100 determines whether or not to vote for an additional stage (step S2). Then, terminal 100 generates a stage voting screen and sends voting data indicating the stage the user voted for to other terminals 100 (step S3).

[0115] Terminal 100 determines whether it has received voting data from all other terminals 100 running the same communication game (step S4). If it has not received voting data from all other terminals 100 running the same communication game (NO in step S4), the process in step S4 is repeated.

[0116] If terminal 100 has received voting data from all other terminals 100 running the same communication game (YES in step S4), terminal 100 selects one voting data from among the voting data from each of the other terminals 100 running the same communication game to determine which stage to execute (step S5). This completes the preparation phase before the game phase.

[0117] Next, terminal 100 starts the game phase of the communication game at the determined stage (step S6).

[0118] Furthermore, the processing in step S5 is performed only by the terminal 100 used by the user who is the host (parent) of the online game, and the other terminals 100 may simply receive the information of the determined stage.

[0119] (d2: Decision on whether to vote for the additional stage) Figure 10 is a flowchart showing a more detailed processing procedure for step S2 shown in Figure 9.

[0120] Referring to Figure 10, terminal 100 generates a holding list showing terminals 100 that have established a connection (terminals 100 running the same communication game) and that possess usage rights 20 (usage rights data 116) (step S200).

[0121] More specifically, each terminal 100 that possesses a usage right 20 (usage right data 116) transmits information indicating that its terminal meets predetermined conditions (information indicating that it possesses a usage right 20) to all other terminals 100 included in the multiple terminals 100 that are communicating to run the communication game. Upon receiving this information, the terminal 100 generates a ownership list based on the information indicating that its terminal meets predetermined conditions.

[0122] Next, terminal 100 determines whether or not it possesses the usage rights 20 (usage rights data 116) (step S202). If terminal 100 possesses the usage rights 20 (usage rights data 116) (YES in step S202), terminal 100 generates encrypted data 50 using the encryption key 40 contained in the usage rights data 116 (step S204) and transmits it to all terminals 100 running the same communication game (step S206).

[0123] In this way, when a terminal 100 that meets the predetermined conditions runs a communication game, it sends encrypted data 50, encrypted using the encryption key 40 corresponding to the decryption key 30, to another terminal 100.

[0124] If the user's terminal does not possess usage rights 20 (usage rights data 116) (NO in step S202), steps S204 and S206 are skipped.

[0125] Terminal 100 waits for the reception of encrypted data 50 (step S208). Terminal 100 determines whether or not it has received new encrypted data 50 that has not yet undergone verification (step S210). Although the same encrypted data 50 may be received multiple times, it is not necessary to perform verification again on encrypted data 50 that has already undergone verification. Step S210 is a process to prevent the same encrypted data 50 from undergoing verification multiple times.

[0126] When terminal 100 receives new encrypted data 50 that has not undergone verification processing (YES in step S210), terminal 100 performs verification processing (step S212). In this way, when terminal 100 receives encrypted data 50 from terminal 100 that meets predetermined conditions, it verifies the received encrypted data 50 based on the decryption key 30.

[0127] Next, terminal 100 determines whether the verification process has resulted in a verification that it possesses a legitimate usage right 20 (step S214). In other words, terminal 100 determines whether the verification process was successful or not.

[0128] If the verification result indicates that the terminal 100 possesses a legitimate usage right 20 (YES in step S214), the terminal 100 registers the encrypted data 50 determined to be a legitimate usage right 20 and the information indicating the terminal 100 that sent the encrypted data 50 in a verified list (step S216). The terminal 100 also records that voting for the additional stage is possible (step S218). Then, the process returns.

[0129] The verification results may be registered in a separate verified list, or they may be registered in a possession list (for example, added as attribute information).

[0130] Thus, if a terminal 100 that does not meet the predetermined conditions successfully verifies the encrypted data 50 received from a terminal 100 that does meet the predetermined conditions, it temporarily enables the terminal 100 that does not meet the predetermined conditions to use the restricted content data 34 in the communication game (in this embodiment, this includes voting for additional stages and playing competitive games on the additional stages as a result of voting).

[0131] If the verification result does not indicate that the user possesses legitimate usage rights 20 (NO in step S214), the process from step S208 onwards is repeated.

[0132] If no new encrypted data 50 that has not undergone verification processing has been received (NO in step S210), terminal 100 refers to the possession list generated in step S200 to determine whether or not it has already received encrypted data 50 from all terminals 100 that possess the usage rights 20 (usage rights data 116) (step S220).

[0133] In this way, based on the ownership list, it is determined whether or not encrypted data 50 has been received from all terminals 100 that possess the usage rights 20.

[0134] If there are any terminals 100 that have not received the encrypted data 50 (NO in step S220), the process from step S208 onwards is repeated.

[0135] If encrypted data 50 has been received from all terminals 100 that possess usage rights 20 (usage rights data 116) (YES in step S220), terminal 100 records that voting for the additional stage is not possible (step S222). Then, the process returns.

[0136] Thus, if encrypted data 50 is received from all terminals 100 that possess the usage rights 20, and verification fails for all of the received encrypted data 50, the terminal 100 will not be able to use the restricted content data 34 in the communication game.

[0137] (d3: Encrypted data generation) Figure 11 is a flowchart showing a more detailed processing procedure for step S204 shown in Figure 10.

[0138] Referring to Figure 11, terminal 100 obtains the selection information (step S2040). Terminal 100 generates a verification string 156 according to the verification string generation rule 154 (step S2041).

[0139] Terminal 100 selects one encryption key 40 from the encryption key group 400 based on the selection information (step S2042). Terminal 100 uses the selected encryption key 40 to encrypt the generated verification string 156 and generate encrypted data 50 (step S2043). Then, the process returns.

[0140] (d4: Verification process) Figure 12 is a flowchart showing a more detailed processing procedure for step S212 shown in Figure 10.

[0141] Referring to Figure 12, terminal 100 obtains selection information (step S2120). Based on the selection information, terminal 100 selects one decryption key 30 from the decryption key group 300 (step S2121). Then, terminal 100 decrypts the encrypted data 50 to be verified using the selected decryption key 30 (step S2122).

[0142] Terminal 100 determines whether the decryption result 164 obtained by decrypting the encrypted data 50 conforms to a predetermined rule (step S2123). If the decryption result 164 conforms to the predetermined rule (YES in step S2123), terminal 100 outputs a verification result indicating that it possesses a legitimate usage right 20 (verification was successful) (step S2124). Then, the process returns.

[0143] Thus, even if terminal 100 receives multiple encrypted data 50, if the verification of one of the received encrypted data 50 is successful, a verification result indicating that it possesses legitimate usage rights 20 is output. Therefore, the successful verification of one encrypted data 50 temporarily enables terminal 100 to use restricted content data 34 in communication games.

[0144] On the other hand, if the decryption result 164 does not conform to the prescribed rules (NO in step S2123), terminal 100 outputs a verification result indicating that it does not possess a legitimate usage right 20 (verification failed) (step S2125). Then, the process returns.

[0145] (d5: Stage voting screen generation and stage voting) Figure 13 is a flowchart showing a more detailed processing procedure for step S3 shown in Figure 9. Referring to Figure 13, terminal 100 determines whether it has been recorded that voting for an additional stage is possible (step S300).

[0146] If it is recorded that voting for additional stages is possible (YES in step S300), terminal 100 generates a stage voting screen from the standard stage data and additional stage data (step S302). In other words, a stage voting screen is generated in which voting for additional stages is possible.

[0147] On the other hand, if it is not recorded that voting for an additional stage is possible (NO in step S300), terminal 100 generates a stage voting screen using only the standard stage data (step S304).

[0148] Terminal 100 waits for stage votes from users (step S306). Terminal 100 determines whether a stage vote has been made or whether the stage vote has timed out (step S308).

[0149] When a stage vote is made, or when a stage vote times out (YES in step S308), terminal 100 generates voting data indicating the stage the user voted for (step S310). Note that if a stage vote times out, the user may automatically vote for a stage determined by any method. The process then returns.

[0150] If no stage voting has taken place and the stage voting has not timed out (NO in step S308), terminal 100 waits for the encrypted data 50 to be received (step S312).

[0151] Terminal 100 determines whether or not it has received new encrypted data 50 that has not undergone verification processing (step S314).

[0152] When new encrypted data 50 that has not undergone verification processing is received (YES in step S314), terminal 100 performs verification processing (step S316). The detailed processing procedure for verification processing (step S316) is the same as the processing procedure shown in Figure 12.

[0153] In step S2, if the verification process for any of the encrypted data 50 is successful, the process continues without performing verification on any subsequent encrypted data 50, assuming that voting for the additional stage is possible. Steps S314 and S316 are primarily for verifying encrypted data 50 that may be received after the initial verification process is successful. For example, if a new user joins, it is possible that new encrypted data 50 will be sent from the terminal 100 used by that new user. Also, if the terminal 100 that holds the usage rights 20 that enable voting for the additional stage leaves the terminal (see step S326, etc.), it is determined whether there is any other encrypted data 50 that has been successfully verified, so it is planned that other encrypted data 50 will be prepared in steps S314 and S316.

[0154] Terminal 100 determines whether the verification process has resulted in a verification that it possesses a legitimate usage right 20 (step S318). If the verification result is that it possesses a legitimate usage right 20 (YES in step S318), terminal 100 registers the encrypted data 50 that was determined to be a legitimate usage right 20 and the information indicating the terminal 100 that sent the encrypted data 50 in a verified list (step S320). Terminal 100 also records that it is possible to vote for the additional stage (step S322). Then, the process from step S300 onward is repeated.

[0155] If the verification result does not indicate that the user possesses legitimate usage rights 20 (NO in step S318), the process from step S306 onwards is repeated.

[0156] If no new encrypted data 50 that has not undergone verification processing has been received (NO in step S314), terminal 100 determines whether terminal 100 that possesses the usage rights 20 that enabled voting for the additional stage has left (step S324).

[0157] If terminal 100, which possesses the right to vote for the additional stage, has left the terminal (YES in step S324), terminal 100 determines whether or not another encrypted data 50, which is determined to be a legitimate right to vote for the additional stage, is registered in the verified list (step S326).

[0158] If another encrypted data 50 that has been determined to have a legitimate usage right 20 is registered in the verified list (YES in step S326), the process from step S302 onwards is repeated.

[0159] If no other encrypted data 50 that has been determined to have a valid usage right 20 is registered in the verified list (NO in step S326), terminal 100 records that voting for the additional stage is not possible (step S328). Then, the process from step S304 onward is repeated.

[0160] If terminal 100, which possesses the right to vote for the additional stage (20), has not left the terminal (NO in step S324), the process from step S306 onwards is repeated.

[0161] In the processing procedure shown in Figure 13, once voting data indicating the stage voted for by the user is generated (step S310), the process returns. Therefore, even if terminal 100, which possesses the right to vote for additional stages, subsequently leaves the game, the voting data will be treated as valid. In this case, even if terminal 100, which was temporarily granted access to the restricted content data 34, sends the encrypted data 50 that was successfully verified, leaves the game, access to the restricted content data 34 will continue to be available in the game phase following the preparation phase.

[0162] In the processing procedure shown in Figure 13, if a user operation regarding the use of restricted content data 34 is accepted during the preparation phase (for example, a vote by the user), even if the terminal 100 that sent the successfully verified encrypted data 50 leaves the communication game during the preparation phase, the use of restricted content data 34 will continue to be possible during the game phase.

[0163] Furthermore, users may select stages other than the additional stages on the stage voting screen, including the additional stages. However, even if a user selects a stage other than the additional stages, if another user selects an additional stage, it may be decided that the additional stages will be executed. Therefore, user actions regarding the use of restricted content data 34 include not only voting for the additional stages included in restricted content data 34, but also voting for stages other than the additional stages.

[0164] As a variation, even if the terminal 100 that sent the successfully verified encrypted data 50 leaves the online game before accepting user input regarding the use of the restricted content data 34, the use of the restricted content data 34 may continue to be enabled.

[0165] Furthermore, if, after receiving user input regarding the use of restricted content data 34 during the preparation phase, the terminal 100 that sent the successfully verified encrypted data 50 leaves the communication game, the use of restricted content data 34 may be made unavailable again in the game phase following the preparation phase.

[0166] In the processing procedure shown in Figure 13, if terminal 100, which possesses the right to vote for an additional stage, leaves the terminal before the voting data indicating the stage voted for by the user is generated, then if another terminal 100 possesses the right to vote for an additional stage, the use of the restricted content data 34 (voting for an additional stage) will continue to be possible. On the other hand, if there is no other terminal 100 possessing the right to vote for an additional stage, the use of the restricted content data 34 will be impossible.

[0167] Furthermore, even if terminal 100, which possesses the right to vote in the additional stage, leaves the terminal, it may continue to allow access to the restricted content data 34.

[0168] (d5: Verification of the validity of voting data) Terminal 100 may verify the validity of the voting data before determining the stage to execute from the voting data. For example, the voting data transmitted by terminal 100 may include information indicating the usage rights 20 for which the restricted content data 34 has become available, in addition to the selected stage. The information indicating the usage rights 20 may include, for example, the corresponding encrypted data 50 and information indicating the terminal 100 that sent the encrypted data 50.

[0169] Before determining the stage to execute from the voting data, terminal 100 may perform a re-verification process based on the information contained in the voting data for voting data that specifies an additional stage.

[0170] At this point, if the verification process determines that the usage rights 20 are fraudulent, the one or more connected terminals 100 may be disbanded.

[0171] [E. Other forms] (e1: Verification process) In the above-described embodiment, the received encrypted data 50 are sequentially verified, and if any one of the encrypted data 50 satisfies a predetermined condition, the restricted content data 34 is made available temporarily. Therefore, after the predetermined condition is satisfied, verification of the encrypted data 50 is not necessarily required.

[0172] Furthermore, as in the embodiment described above, while the user's vote is not yet complete, other received encrypted data 50 may be verified. By verifying all encrypted data 50, it is possible to confirm that no unauthorized terminals 100 exist.

[0173] Alternatively, all received encrypted data 50 may be verified. In this case, even if the terminal 100 that successfully verified the encrypted data 50 leaves the terminal, if there are other terminals 100 that also successfully verified the encrypted data 50, the temporary use of the restricted content data 34 can be smoothly maintained.

[0174] As another variation, the restricted content data 34 may be made temporarily available only if the verification of all received encrypted data 50 is successful and all terminals 100 that sent the encrypted data 50 meet the predetermined conditions.

[0175] (e2: Verification results) In the above-described embodiment, since terminal 100 has content data, terminal 100 enables access to said content data based on the verification result that it possesses legitimate usage rights 20.

[0176] As a variation, terminal 100 may be configured to transmit the verification results externally so that the verification results can be shared with other terminals 100 running the same communication game. Also, if some of the content data that is temporarily available is stored on a server or the like, terminal 100 may be configured to transmit the verification results externally in order to enable access to the content data stored on the server.

[0177] (e3: Example of applying verification processing) In the above-described embodiment, each terminal 100 determines whether other terminals 100 (or users using other terminals 100) running the same communication game meet predetermined conditions. If it is determined that the predetermined conditions are met, content data becomes temporarily available in the communication game.

[0178] The determination of whether or not predetermined conditions are met (verification process) is not limited to a mechanism that temporarily makes content data held by terminal 100 available, but can be applied to any process.

[0179] For example, if only terminals 100 that meet certain conditions are configured to hold restricted content data 34 (content data), then a verification process can be used to confirm whether terminals 100 that hold the restricted content data 34 truly meet the specified conditions.

[0180] Furthermore, a verification process may be performed independently of the restricted content data 34 (content data) solely for the purpose of determining whether or not predetermined conditions are met, and the results of the verification process may be used for any other process.

[0181] In other words, terminal 100 can determine, for any purpose, whether other terminals 100 and / or terminal 100 itself meet predetermined conditions. The determination result (verification result) may be used for any processing.

[0182] The embodiments disclosed herein should be considered in all respects to be illustrative and not restrictive. The scope of the present invention is indicated by the claims rather than by the foregoing description, and all modifications within the meaning and scope equivalent to the claims are intended to be included. [Explanation of Symbols]

[0183] 10A,10B System, 12 Network, 20 Usage Rights, 30 Decryption Key, 32 Standard Content Data, 34 Restricted Content Data, 36 Management Module, 40 Encryption Key, 50 Encrypted Data, 52,156 Verification String, 60 Encryption Process, 62 Decryption Process, 64 Decision Process, 66 Verification Result, 100,100R,100S Terminal, 102 Processor, 104 Memory, 106 Display, 108 Operation Unit, 110 Storage, 112 System Program, 114 Application Data, 116 Usage Rights Data, 120 Communication Unit, 122 Bus, 150 Encryption Key Selection Module, 152 Verification String Generation Module, 154 Verification String Generation Rules, 158 Encryption Module, 160 Decryption Key Selection Module, 162 Decryption Module, 164 Decryption Result, 166 Decision Module, 168 Enablement module, 170 receive buffers, 200 servers, 300 decryption key sets, 400 encryption key sets.

Claims

1. A system that runs a communication game by having multiple devices communicate with each other, Each of the aforementioned multiple terminals is equipped with at least content data usable in the communication game and a decryption key shared with other terminals. Of the plurality of terminals comprising the content data and the decryption key, at least one first terminal that satisfies predetermined conditions comprises an encryption key corresponding to the decryption key, When the first terminal executes the communication game, it transmits encrypted data, encrypted using the encryption key, to another terminal among the plurality of terminals equipped with the content data and the decryption key. When the other terminal receives the encrypted data from the first terminal, it verifies the encrypted data based on the decryption key. A system in which, among the plurality of terminals equipped with the content data and the decryption key, a second terminal that does not satisfy the predetermined conditions, if it successfully verifies the encrypted data received from the first terminal, the second terminal temporarily enables the use of the content data in the communication game.

2. Each of the aforementioned multiple terminals is equipped with a plurality of decryption keys, The first terminal is equipped with a plurality of encryption keys, each corresponding to the plurality of decryption keys. The first terminal generates the encrypted data using an encryption key selected from the plurality of encryption keys based on information held by the other terminals. The system according to claim 1, wherein the other terminal verifies the encrypted data using a decryption key selected from the plurality of decryption keys based on the information held by the other terminal.

3. The system according to claim 1, wherein each of the plurality of terminals holds the encryption key when the predetermined conditions are met.

4. Each of the aforementioned multiple terminals further comprises the encryption key, The system according to claim 1, wherein each of the plurality of terminals becomes available for use when the predetermined conditions are met.

5. The system according to claim 1, wherein the first terminal transmits the encrypted data to all other terminals included in the plurality of terminals, each having at least the content data and the decryption key.

6. The system according to any one of claims 1 to 5, wherein when the second terminal receives multiple encrypted data, if the verification of one of the multiple encrypted data is successful, the second terminal temporarily enables the use of the content data in the communication game.

7. Each of the first terminals transmits information indicating that its terminal satisfies the predetermined conditions to all other terminals included in the plurality of terminals, each of which is equipped with at least the content data and the decryption key. The system according to claim 6, wherein the other terminal determines whether or not it has received the encrypted data from all of the first terminals based on information indicating that the predetermined conditions are met.

8. The system according to claim 7, wherein, after receiving the encrypted data from all of the first terminals, if verification fails for all of the received encrypted data, the second terminal is not allowed to use the content data in the communication game.

9. The aforementioned communication game includes a game phase in which the multiple terminals play the game, and a preparation phase prior to the game phase. The system according to any one of claims 1 to 5, wherein, in the second terminal which is temporarily enabled to use the content data, even if the first terminal which transmitted the encrypted data that has been successfully verified leaves the communication game during the preparation phase, the use of the content data will continue to be enabled in the game phase that follows the preparation phase.

10. The system according to claim 9, wherein, in the preparation phase, if a user operation for the use of the content data is received, even if the first terminal that transmitted the encrypted data that was successfully verified leaves the communication game in the preparation phase, the use of the content data will continue to be possible in the game phase.

11. A program for running a communication game by communicating with another device, wherein the other device comprises at least content data and a decryption key usable in the communication game, and the program is provided on a computer comprising at least the content data and a decryption key common to the other device. The steps include receiving encrypted data encrypted using an encryption key corresponding to the decryption key from another device that satisfies predetermined conditions and is equipped with the content data and the decryption key, The steps include verifying the received encrypted data based on the decryption key, A program that, if the predetermined conditions are not met, and the verification of the encrypted data is successful, causes the program to execute a step of temporarily enabling the use of the content data in the communication game.

12. A method for executing a communication game by communication between multiple terminals, wherein each of the multiple terminals comprises at least content data usable in the communication game and a decryption key common to the other terminals, and the method is The first terminal, which is one of the multiple terminals equipped with the content data and the decryption key and satisfies predetermined conditions, transmits encrypted data, encrypted using an encryption key corresponding to the decryption key, to another terminal among the multiple terminals equipped with the content data and the decryption key when executing the communication game. When the other terminal receives the encrypted data from the first terminal, it performs the step of verifying the encrypted data based on the decryption key, A method comprising the step of temporarily enabling a second terminal, which is one of a plurality of terminals equipped with the content data and the decryption key and does not satisfy the predetermined conditions, to use the content data in the communication game if the verification of the encrypted data received from the first terminal is successful.

13. An information processing device that executes a communication game by communicating with other information processing devices, wherein the information processing device and the other information processing devices each include at least content data usable in the communication game and a common decryption key between the information processing devices, and the information processing device When encrypted data encrypted using an encryption key corresponding to the decryption key is received from an information processing device that satisfies predetermined conditions among the other information processing devices comprising the content data and the decryption key, the verification means verifies the encrypted data based on the decryption key, An information processing device comprising, if the predetermined conditions are not met, enabling means for temporarily enabling the use of the content data in the communication game if the verification of the encrypted data is successful.