JP7397082B2 - Secure data channel in network gaming systems - Google Patents

Secure data channel in network gaming systems Download PDF

Info

Publication number
JP7397082B2
JP7397082B2 JP2021535712A JP2021535712A JP7397082B2 JP 7397082 B2 JP7397082 B2 JP 7397082B2 JP 2021535712 A JP2021535712 A JP 2021535712A JP 2021535712 A JP2021535712 A JP 2021535712A JP 7397082 B2 JP7397082 B2 JP 7397082B2
Authority
JP
Japan
Prior art keywords
channel
encrypted
key
data channel
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021535712A
Other languages
Japanese (ja)
Other versions
JP2022514398A (en
Inventor
コッタ、ブライアン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Interactive Entertainment LLC
Original Assignee
Sony Interactive Entertainment LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Interactive Entertainment LLC filed Critical Sony Interactive Entertainment LLC
Publication of JP2022514398A publication Critical patent/JP2022514398A/en
Application granted granted Critical
Publication of JP7397082B2 publication Critical patent/JP7397082B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0875Generation of secret information including derivation or calculation of cryptographic keys or passwords based on channel impulse response [CIR]
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/355Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an MPEG-stream for transmitting to a mobile phone or a thin client
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/71Game security or game management aspects using secure communication between game devices and game servers, e.g. by encrypting game data or authenticating players
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/79Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/85Providing additional services to players
    • A63F13/87Communicating with other players during game play, e.g. by e-mail or chat
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3215Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a plurality of channels
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/40Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of platform network
    • A63F2300/401Secure communication, e.g. using encryption or authentication
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/57Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of game services offered to the player
    • A63F2300/572Communication between players during game play of non game information, e.g. e-mail, chat, file transfer, streaming of audio and streaming of video
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms

Description

本開示は、ユーザ生成データのユーザプライバシーを保護する安全な情報共有を可能にする、ネットワークゲームシステムにおける安全なデータチャネルのためのシステム及び方法に関する。 The present disclosure relates to systems and methods for secure data channels in network gaming systems that enable secure information sharing that protects user privacy of user-generated data.

ビデオゲームの分野は、現在急成長を遂げている技術分野であり、今では多数のゲームプラットフォームが含まれ、専用ゲームコンソール、パーソナルコンピュータ(PC)、さらに最近ではクラウドゲームデバイス及びモバイルデバイスが含まれる。プレーヤはゲームを中心としたソーシャルインタラクションを所望することから、ゲームプレイのソーシャル性はますます高まっている。その結果、プレーヤ間のコミュニケーション機構を含むネットワークゲームサービス/システムが開発され、ゲームプレイ中、及びゲームプレイ外でもビデオゲームプラットフォームのコンテキスト内での両方で、コミュニケーション及びソーシャルインタラクションが可能となった。ネットワークゲームサービス/システムの一例として、PlayStation(登録商標)Networkが挙げられ、これには、コンソールベースゲーム及びクラウドベースゲームの両方に対応する様々なゲームサービスが含まれる。 The field of video games is a rapidly growing technology field that now includes numerous gaming platforms, including dedicated game consoles, personal computers (PCs), and more recently cloud gaming devices and mobile devices. . Game play is becoming increasingly social as players desire social interactions centered around games. As a result, network gaming services/systems have been developed that include communication mechanisms between players, allowing communication and social interaction both during game play and outside of game play, but within the context of the video game platform. An example of a network gaming service/system is the PlayStation® Network, which includes a variety of gaming services that support both console-based and cloud-based gaming.

クラウドゲームのセットアップでは、ユーザは、インターネットなどのネットワークを介してクラウドゲームサイト上の多数のゲームにアクセスし、ゲームとのインタラクション/ゲームプレイを開始することができる。ユーザは、ゲームプレイ用のゲームを選択するために、クラウドゲームサイト上の自分のアカウントにアクセスし、ユーザアカウントでゲームプレイ可能な複数のゲームのうちの1つを開始する。クラウドビデオゲームから生成されるビデオは、クライアントデバイスへ転送される。クラウドゲームシステムの一例として、Playstation(登録商標)Nowクラウドゲームサービスが挙げられる。 In a cloud gaming setup, a user can access a number of games on a cloud gaming site over a network such as the Internet and begin interacting with/playing the games. A user accesses his or her account on a cloud gaming site to select a game for gameplay and starts one of a plurality of games playable in the user account. Video generated from cloud video games is transferred to client devices. An example of a cloud game system is the PlayStation (registered trademark) Now cloud game service.

このような背景において、本開示の実施形態は生じる。 It is against this background that embodiments of the present disclosure arise.

本開示の実施態様は、クラウドゲームシステムにおいて情報を共有するための安全なデータチャネルを提供するために使用される方法及びシステムを提供する。 Embodiments of the present disclosure provide methods and systems used to provide a secure data channel for sharing information in a cloud gaming system.

いくつかの実施態様では、ネットワークゲームサービスを介してデータチャネルを開始することであって、データチャネルを介して通信されるコンテンツを暗号化するために使用されるチャネルキーを生成することと、データチャネルの所有者に関連付けられた公開キーでチャネルキーを暗号化することにより第1の暗号化されたチャネルキーを生成することとを含む、当該開始することと、データチャネルに参加者を追加することであって、参加者に関連付けられた公開キーでチャネルキーを暗号化することにより第2の暗号化されたチャネルキーを生成することを含む、当該追加することと、の動作を含む方法であって、データチャネルを介して送信されるメッセージは、チャネルキーを使用してメッセージのコンテンツを暗号化することにより生成された、暗号化されたコンテンツを含み、さらに第1の暗号化されたチャネルキー及び第2の暗号化されたチャネルキーを含む、当該方法が提供される。 In some implementations, initiating a data channel via a network gaming service includes: generating a channel key used to encrypt content communicated via the data channel; generating a first encrypted channel key by encrypting the channel key with a public key associated with the owner of the channel; and adding a participant to the data channel. and generating a second encrypted channel key by encrypting the channel key with a public key associated with the participant. and the message sent over the data channel includes encrypted content generated by encrypting the content of the message using the channel key, and further includes a first encrypted channel. The method is provided, including a key and a second encrypted channel key.

いくつかの実施態様では、所有者に関連付けられたユーザデバイスによりメッセージが受信されると、所有者に関連付けられた秘密キーを使用して、第1の暗号化されたチャネルキーからチャネルキーが復号化され、復号化されたチャネルキーをさらに使用して、メッセージの暗号化されたコンテンツが復号化される。 In some implementations, when the message is received by a user device associated with the owner, the channel key is decrypted from the first encrypted channel key using a private key associated with the owner. The encrypted and decrypted channel key is further used to decrypt the encrypted content of the message.

いくつかの実施態様では、参加者に関連付けられたユーザデバイスによりメッセージが受信されると、参加者に関連付けられた秘密キーを使用して、第2の暗号化されたチャネルキーからチャネルキーが復号化され、復号化されたチャネルキーをさらに使用して、メッセージの暗号化されたコンテンツが復号化される。 In some implementations, when a message is received by a user device associated with a participant, the channel key is decrypted from the second encrypted channel key using a private key associated with the participant. The encrypted and decrypted channel key is further used to decrypt the encrypted content of the message.

いくつかの実施態様では、この方法はさらに、データチャネルから参加者を除外することであって、第2のチャネルキーを生成することと、所有者に関連付けられた公開キーで第2のチャネルキーを暗号化することにより第3の暗号化されたチャネルキーを生成することとを含む、当該除外することを含む。 In some implementations, the method further comprises: removing the participant from the data channel, generating a second channel key; and generating a third encrypted channel key by encrypting the third encrypted channel key.

いくつかの実施態様では、第2のチャネルキーは、参加者に関連付けられた公開キーで暗号化されない。 In some implementations, the second channel key is not encrypted with the public key associated with the participant.

いくつかの実施態様では、方法はさらに、データチャネルに第2の参加者を追加することであって、第2の参加者に関連付けられた公開キーでチャネルキーを暗号化することにより第3の暗号化されたチャネルキーを生成することを含む、当該追加することを含む。 In some implementations, the method further comprises adding a second participant to the data channel, the method further comprising: encrypting the channel key with a public key associated with the second participant. and generating an encrypted channel key.

いくつかの実施態様では、データチャネルを介して送信されるメッセージは、第3の暗号化されたチャネルキーをさらに含む。 In some implementations, the message sent over the data channel further includes a third encrypted channel key.

いくつかの実施態様では、データチャネルの所有者に関連付けられた所有者デバイスからネットワークを介して、データチャネルの第1の暗号化されたチャネルキーを受信することであって、第1の暗号化されたチャネルキーは、データチャネルの所有者に関連付けられた公開キーで暗号化されたチャネルキーであり、チャネルキーは、データチャネルを介して共有されるコンテンツを暗号化するために使用される、当該受信することと、所有者デバイスからネットワークを介して、1つ以上の第2の暗号化されたチャネルキーを受信することであって、各第2の暗号化されたチャネルキーはそれぞれ、データチャネルの各参加者に関連付けられた公開キーで暗号化されたチャネルキーである、当該受信することと、第1の暗号化されたチャネルキー及び1つ以上の第2の暗号化されたチャネルキーをチャネルリストに記憶することと、ネットワークを介して、データチャネルの各参加者にそれぞれ関連付けられた1つ以上の参加者デバイスにチャネルリストを配布することと、の動作を含む方法であって、データチャネルを介した通信は、第1の暗号化されたチャネルキー、第2の暗号化されたチャネルキー、及びチャネルキーを使用して暗号化されたコンテンツを含む、当該方法が提供される。 In some implementations, receiving a first encrypted channel key for the data channel over a network from an owner device associated with an owner of the data channel, the first encrypted A channel key encrypted with a public key associated with the data channel owner, the channel key is used to encrypt content shared over the data channel. and receiving one or more second encrypted channel keys from the owner device over the network, each second encrypted channel key respectively receiving a first encrypted channel key and one or more second encrypted channel keys, the first encrypted channel key being a channel key encrypted with a public key associated with each participant in the channel; and distributing the channel list over a network to one or more participant devices each associated with each participant of the data channel, the method comprising: The method is provided, wherein communication over a data channel includes a first encrypted channel key, a second encrypted channel key, and content encrypted using the channel key.

いくつかの実施態様では、データチャネルを介して所有者デバイスにより通信が受信されると、所有者に関連付けられた秘密キーを使用して、第1の暗号化されたチャネルキーからチャネルキーが復号化され、復号化されたチャネルキーをさらに使用して、通信の暗号化されたコンテンツが復号化される。 In some implementations, when the communication is received by the owner device over the data channel, the channel key is decrypted from the first encrypted channel key using a private key associated with the owner. The encrypted and decrypted channel key is further used to decrypt the encrypted content of the communication.

いくつかの実施態様では、データチャネルを介して参加者デバイスにより通信が受信されると、参加者に関連付けられた秘密キーを使用して、第2の暗号化されたチャネルキーからチャネルキーが復号化され、復号化されたチャネルキーをさらに使用して、通信の暗号化されたコンテンツが復号化される。 In some implementations, when a communication is received by a participant device over the data channel, the channel key is decrypted from the second encrypted channel key using a private key associated with the participant. The encrypted and decrypted channel key is further used to decrypt the encrypted content of the communication.

いくつかの実施態様では、方法はさらに、ネットワークを介して所有者デバイスから、データチャネルの第1の暗号化された第2のチャネルキーを受信することであって、第1の暗号化された第2のチャネルキーは、データチャネルの所有者に関連付けられた公開キーで暗号化された第2のチャネルキーであり、第2のチャネルキーは、参加者のうちの少なくとも1人を除外するように、データチャネルを介して共有されるコンテンツを暗号化するために使用される、当該受信することと、ネットワークを介して所有者デバイスから、1つ以上の第2の暗号化された第2のチャネルキーを受信することであって、各第2の暗号化された第2のチャネルキーはそれぞれ、参加者のうちの1人の公開キーで暗号化された第2のチャネルキーであり、1つ以上の第2の暗号化された第2のチャネルキーには、参加者のうちの除外される少なくとも1人の公開キーで暗号化された第2のチャネルキーである第2の暗号化された第2のチャネルキーは含まれない、当該受信することと、チャネルリストを更新して、第1の暗号化された第2のチャネルキー、及び1つ以上の第2の暗号化された第2のチャネルキーを含めることと、ネットワークを介して、更新されたチャネルリストを参加者デバイスに配布することと、を含む。 In some implementations, the method further comprises receiving the first encrypted second channel key of the data channel from the owner device via the network, the first encrypted second channel key The second channel key is a second channel key encrypted with a public key associated with the owner of the data channel, and the second channel key is configured to exclude at least one of the participants. receiving one or more encrypted second encrypted contents from the owner device over the network, which are used to encrypt the content shared over the data channel; receiving channel keys, each second encrypted second channel key being a second channel key encrypted with a public key of one of the participants; The one or more second encrypted second channel keys include a second encrypted second channel key that is a second channel key encrypted with the public key of the excluded at least one of the participants. the first encrypted second channel key and one or more second encrypted second channel keys; and distributing the updated channel list to participant devices over the network.

いくつかの実施態様では、データチャネルを介した追加の通信は、第1の暗号化された第2のチャネルキー、第2の暗号化された第2のチャネルキー、及び第2のチャネルキーを使用して暗号化されたコンテンツを含む。 In some implementations, the additional communication over the data channel includes the first encrypted second channel key, the second encrypted second channel key, and the second encrypted second channel key. Contains content encrypted using

いくつかの実施態様では、方法はさらに、データチャネルを介した通信を記憶することと、データチャネルを介した追加の通信を記憶することと、を含む。 In some implementations, the method further includes storing the communications over the data channel and storing additional communications over the data channel.

いくつかの実施態様では、チャネルキーは、参加者のうちの除外される少なくとも1人が、記憶された通信のコンテンツにアクセスすることを可能にし、第2のチャネルキーは、参加者のうちの除外される少なくとも1人が、記憶された追加の通信のコンテンツにアクセスすることを阻止する。 In some implementations, the channel key allows at least one of the excluded participants to access content of the stored communication, and the second channel key allows at least one of the excluded participants to access the content of the stored communication. At least one excluded person is prevented from accessing the content of additional stored communications.

いくつかの実施態様では、プログラム命令が組み込まれた非一時的コンピュータ可読媒体が提供され、プログラム命令は、少なくとも1つのプロセッサにより実行されると、当該少なくとも1つのプロセッサに方法を実行させ、方法は、ネットワークゲームサービスを介してデータチャネルを開始することであって、データチャネルを介して通信されるコンテンツを暗号化するために使用されるチャネルキーを生成することと、データチャネルの所有者に関連付けられた公開キーでチャネルキーを暗号化することにより第1の暗号化されたチャネルキーを生成することとを含む、当該開始することと、データチャネルに参加者を追加することであって、参加者に関連付けられた公開キーでチャネルキーを暗号化することにより第2の暗号化されたチャネルキーを生成することを含む、当該追加することと、の動作を含み、データチャネルを介して送信されるメッセージは、チャネルキーを使用してメッセージのコンテンツを暗号化することにより生成された、暗号化されたコンテンツを含み、さらに第1の暗号化されたチャネルキー及び第2の暗号化されたチャネルキーを含む。 In some embodiments, a non-transitory computer-readable medium is provided having program instructions embedded therein, the program instructions, when executed by at least one processor, cause the at least one processor to perform a method, the method comprising: , initiating a data channel through a network gaming service, the act of generating a channel key used to encrypt content communicated over the data channel, and associated with the owner of the data channel; generating a first encrypted channel key by encrypting the channel key with the public key obtained by the data channel; generating a second encrypted channel key by encrypting the channel key with a public key associated with the data transmitted over the channel. The message includes encrypted content generated by encrypting the content of the message using a channel key, and further includes a first encrypted channel key and a second encrypted channel. Contains keys.

本開示の他の態様及び利点は、添付の図面と併せて、本開示の原理を例として示す下記の詳細な説明から明らかになるであろう。 Other aspects and advantages of the disclosure will become apparent from the following detailed description, which illustrates by way of example the principles of the disclosure, taken in conjunction with the accompanying drawings.

本開示は、そのさらなる利点と共に、添付の図面と併せて下記の説明を参照することにより、最も良く理解されるであろう。 The present disclosure, together with further advantages thereof, may be best understood by reference to the following description in conjunction with the accompanying drawings.

本開示の実施態様による、データチャネルと複数のユーザとの間の公開キー交換を概念的に示す。2 conceptually illustrates a public key exchange between a data channel and multiple users according to embodiments of the present disclosure;

本開示の実施態様による、データチャネル100とデータチャネル100のユーザとの間の通信の処理をさらに示す。3 further illustrates processing of communications between data channel 100 and users of data channel 100 in accordance with embodiments of the present disclosure.

本開示の実施態様による、複数のユーザによるデータチャネル100とのインタラクションを示す。1 illustrates interaction with a data channel 100 by multiple users, according to embodiments of the present disclosure.

本開示の実施態様による、情報を共有するためのデータチャネルを提供するシステムを概念的に示す。1 conceptually illustrates a system that provides a data channel for sharing information, according to embodiments of the present disclosure.

本開示の実施態様による、データチャネル100の所有権の移転を概念的に示す。1 conceptually illustrates the transfer of ownership of a data channel 100 according to embodiments of the present disclosure.

本開示の実施態様による、データチャネル100へのアクセスの取り消しを概念的に示す。1 conceptually illustrates revocation of access to a data channel 100 according to embodiments of the present disclosure.

本開示の実施態様による、暗号化されたデータチャネルを介して送信されるゲーム関連通信/データを概念的に示す。3 conceptually illustrates game-related communications/data transmitted over an encrypted data channel in accordance with embodiments of the present disclosure; FIG.

本開示の実施態様による、データチャネルのコンテンツにアクセスするためのインターフェースを概念的に示す。2 conceptually illustrates an interface for accessing content of a data channel, according to embodiments of the present disclosure.

本開示の実施態様による、暗号化プライベートプレーヤソーシャルデータチャネルを開始するためのプロセスを概念的に示す。2 conceptually illustrates a process for initiating an encrypted private player social data channel, according to embodiments of the present disclosure.

本開示の実施態様による、参加者をデータチャネルに追加するためのプロセスを概念的に示す。2 conceptually illustrates a process for adding a participant to a data channel, according to embodiments of the present disclosure.

本開示の実施態様による、ユーザがデータチャネルを去る場合、データチャネルの暗号化されたチャネルキーのチャネルリストへの変更を概念的に示す。3 conceptually illustrates a change of an encrypted channel key of a data channel to a channel list when a user leaves the data channel according to embodiments of the present disclosure;

本開示の実施態様による、図8Cのシナリオに基づいて、経時的なデータチャネルのコンテンツの暗号化を示すタイムラインを概念的に示す。8C conceptually illustrates a timeline illustrating encryption of content of a data channel over time, based on the scenario of FIG. 8C, according to embodiments of the present disclosure; FIG.

本開示の実施態様による、データチャネル100におけるメッセージの構成要素を概念的に示す。1 conceptually illustrates the components of messages on a data channel 100, according to embodiments of the present disclosure.

本開示の実施形態による、ゲームコンテンツをクラウドゲームサーバにプリロードするために使用される例示的なシステムの簡略化されたブロック図を示す。1 illustrates a simplified block diagram of an example system used to preload game content to a cloud gaming server, according to embodiments of the present disclosure. FIG.

本開示の実施態様による、クラウドビデオゲームをクライアントデバイスにストリーミングするために実行される様々な動作を概念的に示すフロー図である。FIG. 2 is a flow diagram conceptually illustrating various operations performed to stream a cloud video game to a client device, according to embodiments of the present disclosure.

本発明の実施態様による、地理的に分散しネットワークを介して接続されたユーザに情報コンテンツ及びサービスを届けるための例示的な情報サービスプロバイダアーキテクチャを示す。1 illustrates an exemplary information service provider architecture for delivering information content and services to geographically dispersed and network-connected users in accordance with embodiments of the present invention.

下記の説明では、本開示の完全な理解を提供するために、多くの具体的な詳細が述べられる。しかしながら、本開示は、これらの具体的な詳細の一部または全てがなくとも実践できることは、当業者には明らかであろう。他の例では、本開示を不明瞭にしないために、周知のプロセスステップについては詳細に説明していない。 In the description that follows, many specific details are set forth to provide a thorough understanding of the disclosure. However, it will be apparent to those skilled in the art that the present disclosure may be practiced without some or all of these specific details. In other instances, well-known process steps have not been described in detail in order not to obscure the present disclosure.

ビデオゲーム分野の人気が高まり続けるにつれて、ビデオゲームに関連するユーザ生成情報は、これまでになく豊富になっている。ゲーム体験は、テキスト/オーディオ/ビデオチャット、オーディオフィード、ビデオフィード、スクリーンショット、ビデオクリップ、ソーシャルメディア投稿、コメントなどを介して、より大きなソーシャルインタラクションを促進するように発展した。さらに、クラウドゲームが拡大するにつれて、ますます多くのユーザ情報が、ローカルに記憶されるのではなく、クラウドに記憶されている。従って、ユーザが自分の好みに応じてデータへのアクセスを制御することを可能にしながら、ユーザデータのセキュリティ及びプライバシーを確保することが望ましい。 As the video game field continues to grow in popularity, user-generated information related to video games has never been more abundant. Gaming experiences have evolved to encourage greater social interaction via text/audio/video chat, audio feeds, video feeds, screenshots, video clips, social media posts, comments, and more. Additionally, as cloud gaming expands, more and more user information is being stored in the cloud rather than locally. Therefore, it is desirable to ensure the security and privacy of user data while allowing users to control access to the data according to their preferences.

上記のように、PlayStation(登録商標)Networkなどのネットワークゲームサービス/システムは、コンソールベースゲーム及びクラウドベースゲームの両方に対応する様々なゲームサービスを提供することができる。しかし、このようなネットワークゲームサービスはユーザに通信及びソーシャルサービスを提供し得るが、このようなサービスを介して共有されるユーザのコンテンツ及び情報は、安全でない場合もあり、ネットワークゲームサービスプロバイダには見える状態である。例えば、このようなコンテンツは、悪意のある第三者により傍受され得る。また、ネットワークゲームサービスがハッキングされた場合には、ユーザの情報及びコンテンツが公開され得る。 As mentioned above, network gaming services/systems such as the PlayStation® Network can provide a variety of gaming services that support both console-based and cloud-based gaming. However, while such network gaming services may provide communications and social services to users, user content and information shared via such services may not be secure and network gaming service providers may It is visible. For example, such content may be intercepted by a malicious third party. Additionally, if a network game service is hacked, user information and content may be exposed.

上記を考慮して、本開示の実施態様は、ネットワークゲームサービスのユーザ間の通信のための安全なデータチャネルを提供する。データチャネルは、データチャネルの所有者/管理者であるユーザのうちの1人により、インスタンス化及び制御され得、これには、データチャネルへのユーザの追加及びデータチャネルからのユーザの除外の制御も含まれる。データチャネルを介して共有されるコンテンツは、データチャネルのユーザのみが読み出し可能なように暗号化され得る。 In view of the above, embodiments of the present disclosure provide a secure data channel for communication between users of a network gaming service. A data channel may be instantiated and controlled by one of the users who is the owner/manager of the data channel, including controlling the addition of users to and removal of users from the data channel. Also included. Content shared via a data channel may be encrypted so that it can only be read by users of the data channel.

ユーザは通常、ユーザデバイスを使用または操作することで、本開示によるシステムとインターフェースすることから、説明を簡単にするために、本開示全体を通して、「ユーザ」への言及は多くの場合、ユーザに関連付けられた、またはユーザが操作するユーザデバイスと同義であることが、理解されよう。従って、本開示では説明を簡単にするために用語「ユーザ」が使用されるが、用語「ユーザ」は、ユーザ、並びにユーザが操作するあるいはユーザに関連付けられたユーザデバイスの両方を含み得ることが理解され、さらに用語「ユーザ」及び「ユーザデバイス」は、当業者には明らかなように、実施態様の本説明において多くの場合、互換的に使用され得る。 Throughout this disclosure, for ease of explanation, references to a "user" will often refer to a user, as the user typically uses or operates a user device to interface with the system according to the present disclosure. It will be understood that it is synonymous with a user device associated with or operated by a user. Accordingly, although the term "user" is used in this disclosure for ease of explanation, the term "user" may include both a user and a user device operated by or associated with a user. It is understood and further understood by those skilled in the art that the terms "user" and "user device" may often be used interchangeably in this description of implementations.

図1Aは、本開示の実施態様による、データチャネルと複数のユーザとの間の公開キー交換を概念的に示す。データチャネル100が示され、これは、複数のユーザが参加する永続的なセッションとして理解されよう。データチャネル100は、ユーザ生成コンテンツまたは情報を記憶し、参加ユーザがこのようなコンテンツ/情報にアクセスできるように構成される。いくつかの実施態様では、データチャネル100は、ユーザ生成コンテンツまたはユーザ提供コンテンツのストリームとして概念化することができ、データチャネル100に共有されるコンテンツ提供のレポジトリとしてストリーム記録またはストリーム提供を行う。このようなコンテンツ提供は、データチャネル100により定義されるストリームへのアクセスを許可された者なら誰でも、アクセス可能である。 FIG. 1A conceptually illustrates a public key exchange between a data channel and multiple users, according to embodiments of the present disclosure. A data channel 100 is shown, which may be understood as a persistent session in which multiple users participate. Data channel 100 is configured to store user-generated content or information and allow participating users to access such content/information. In some implementations, data channel 100 can be conceptualized as a stream of user-generated or user-provided content, with stream recording or streaming serving as a repository of content offerings shared to data channel 100. Such content offerings are accessible to anyone authorized to access the stream defined by data channel 100.

データセキュリティを促進するために、例示の実施態様では、データチャネル100へのアクセスを許可された各ユーザに対して、公開キー交換が実行される。すなわち、例示の実施態様では、データチャネル100の公開キーがユーザAに提供されてユーザAにより記憶され、ユーザAの公開キーがデータチャネル100に提供されてデータチャネル100により記憶される。データチャネル100からユーザAへの通信は、ユーザAの公開キーを使用して暗号化され得、ユーザAからデータチャネル100への通信は、データチャネル100の公開キーを使用して暗号化され得る。 To promote data security, in the example implementation, a public key exchange is performed for each user authorized to access data channel 100. That is, in the exemplary embodiment, the public key of data channel 100 is provided to and stored by user A, and the public key of user A is provided to and stored by data channel 100. Communications from data channel 100 to user A may be encrypted using user A's public key, and communications from user A to data channel 100 may be encrypted using data channel 100's public key. .

同様に、例示の実施態様では、データチャネル100の公開キーがユーザBに提供されてユーザBにより記憶され、ユーザBの公開キーがデータチャネル100に提供されてデータチャネル100により記憶される。データチャネル100からユーザBへの通信は、ユーザBの公開キーを使用して暗号化され得、ユーザBからデータチャネル100への通信は、データチャネル100の公開キーを使用して暗号化され得る。 Similarly, in the exemplary embodiment, a public key for data channel 100 is provided to and stored by user B, and a public key for user B is provided to and stored by data channel 100. Communications from data channel 100 to user B may be encrypted using user B's public key, and communications from user B to data channel 100 may be encrypted using data channel 100's public key. .

同様に、例示の実施態様では、データチャネル100の公開キーがユーザCに提供されてユーザCにより記憶され、ユーザCの公開キーがデータチャネル100に提供されてデータチャネル100により記憶される。データチャネル100からユーザCへの通信は、ユーザCの公開キーを使用して暗号化され得、ユーザCからデータチャネル100への通信は、データチャネル100の公開キーを使用して暗号化され得る。 Similarly, in the exemplary embodiment, a public key for data channel 100 is provided to and stored by user C, and a public key for user C is provided to and stored by data channel 100. Communications from data channel 100 to user C may be encrypted using user C's public key, and communications from user C to data channel 100 may be encrypted using data channel 100's public key. .

図1Bは、本開示の実施態様による、データチャネル100とデータチャネル100のユーザとの間の通信の処理をさらに示す。例示の実施態様では、データチャネル100からユーザAへの通信102は、ユーザAの公開キー104を使用して暗号化され得る。通信102を受信すると、ユーザAは、ユーザAの秘密キー106を使用して通信102を復号化し、通信102のコンテンツをレンダリングする。ユーザAが通信108をデータチャネル100に送信する場合、通信108は、データチャネル100の公開キー110を使用して暗号化され得る。通信108を受信すると、通信108は、データチャネル100の秘密キー112を使用して復号化され、通信108のコンテンツがレンダリングされる。 FIG. 1B further illustrates processing of communications between data channel 100 and users of data channel 100, according to embodiments of the present disclosure. In an exemplary implementation, communications 102 from data channel 100 to user A may be encrypted using user A's public key 104. Upon receiving the communication 102, User A decrypts the communication 102 using User A's private key 106 and renders the content of the communication 102. When user A sends a communication 108 to data channel 100, communication 108 may be encrypted using data channel 100's public key 110. Upon receiving the communication 108, the communication 108 is decrypted using the private key 112 of the data channel 100 and the content of the communication 108 is rendered.

データチャネル100とユーザB及びCとの間の通信においても同様の処理が発生する。例示の実施態様では、データチャネル100からユーザBへの通信は、ユーザBの公開キー114を使用して暗号化され得、ユーザBは受信時に、ユーザBの秘密キー116を使用して通信を復号化し、これにより、通信のコンテンツをレンダリングする。ユーザBが通信をデータチャネル100に送信する場合、通信は、データチャネル100の公開キー110を使用して暗号化され得、通信は、受信時にデータチャネル100の秘密キー112を使用して復号化され、通信のコンテンツがレンダリングされる。さらに例示の実施態様では、データチャネル100からユーザCへの通信は、ユーザCの公開キー118を使用して暗号化され得、ユーザCは受信時に、ユーザCの秘密キー120を使用して通信を復号化し、これにより、通信のコンテンツをレンダリングする。ユーザCが通信をデータチャネル100に送信する場合、通信は、データチャネル100の公開キー110を使用して暗号化され得、通信は、受信時にデータチャネル100の秘密キー112を使用して復号化され、通信のコンテンツがレンダリングされる。 Similar processing occurs in communications between data channel 100 and users B and C. In an exemplary implementation, communications from data channel 100 to User B may be encrypted using User B's public key 114, and upon receipt, User B may use User B's private key 116 to encrypt the communications. decrypt and thereby render the content of the communication. When user B sends a communication to data channel 100, the communication may be encrypted using data channel 100's public key 110, and upon receipt, the communication may be decrypted using data channel 100's private key 112. and the content of the communication is rendered. Further, in the exemplary embodiment, communications from data channel 100 to user C may be encrypted using user C's public key 118, and upon receipt, user C communicates using user C's private key 120. and thereby render the content of the communication. When user C sends a communication to data channel 100, the communication may be encrypted using data channel 100's public key 110, and upon receipt, the communication may be decrypted using data channel 100's private key 112. and the content of the communication is rendered.

図2は、本開示の実施態様による、複数のユーザによるデータチャネル100とのインタラクションを示す。説明されたように、データチャネル100は、永続セッションにユーザ生成コンテンツが記憶され、データチャネル100にアクセス権を有するユーザがユーザ生成コンテンツにアクセスできるように、永続セッションを定義する。 FIG. 2 illustrates interaction with data channel 100 by multiple users, according to embodiments of the present disclosure. As described, data channel 100 defines a persistent session such that user-generated content is stored in the persistent session and can be accessed by users who have access to data channel 100.

いくつかの実施態様では、データチャネル100は、例示の実施態様のユーザAなどのネットワークゲームサービスの特定のユーザにより、開始され得る。従って、ユーザAは、データチャネル100を管理する管理者権限を有するデータチャネル100の所有者である。ユーザAは、例示の実施態様におけるユーザB、C、及びDなどのネットワークゲームサービスの他のユーザを、データチャネル100に参加するように招待し得る。データチャネル100の管理者として、ユーザAは、データチャネル100にアクセスできる人を制御し、さらに他のユーザに付与する権限を決定し得、例えば他のユーザが、データチャネル100のコンテンツを読み出し/表示/アクセスできるか否か、特定の種類のコンテンツのみにアクセスできるか否か、データチャネル100にコンテンツを投稿/書き込み/追加できるか否か、特定の種類のコンテンツのみ投稿できるか否か、他の人をデータチャネル100に対する読み出し及び/または投稿に招待できるか否か、データチャネル100からコンテンツを削除できるか否か、データチャネル100内のコンテンツを編集できるか否かなどを、決定し得る。前述のようなデータチャネル100のユーザに関するデータは、ユーザメタデータ200として記憶され得、示されるようにこれは、ユーザのID、各自の公開キー、及び特定の権限を含み得る。 In some implementations, data channel 100 may be initiated by a particular user of the network gaming service, such as User A in the example implementation. Therefore, user A is the owner of data channel 100 with administrator rights to manage data channel 100. User A may invite other users of the network gaming service, such as users B, C, and D in the example implementation, to join data channel 100. As the administrator of the data channel 100, user A may control who has access to the data channel 100 and also determine the privileges granted to other users, such as allowing other users to read/read the content of the data channel 100. Whether or not it can be viewed/accessed, whether only certain types of content can be accessed, whether or not content can be posted/written/added to the data channel 100, whether only certain types of content can be posted, etc. It may be determined whether people can be invited to read and/or post to data channel 100, whether content can be deleted from data channel 100, whether content within data channel 100 can be edited, and so on. Data regarding users of data channel 100 as described above may be stored as user metadata 200, which may include the users' IDs, their public keys, and specific permissions as shown.

新規ユーザがデータチャネル100に追加されると、前述のようにデータチャネル100と新規ユーザとの間の公開キー交換が実行され得、これにより、データチャネル100と新規ユーザとの間の通信は適宜暗号化され得ることが、理解されよう。新規ユーザの公開キーは、新規ユーザのID及び権限情報とともに、ユーザメタデータ200の一部として記憶される。 When a new user is added to the data channel 100, a public key exchange between the data channel 100 and the new user may be performed as described above, so that communications between the data channel 100 and the new user can be performed accordingly. It will be appreciated that it may be encrypted. The new user's public key is stored as part of the user metadata 200, along with the new user's ID and authority information.

データチャネル100は、複数のユーザが安全な方法で互いにコンテンツを共有できるように定義され得る。このようなユーザ生成コンテンツは、コンテンツストレージ204に記憶される。さらに、ユーザ生成コンテンツに関連する情報は、コンテンツメタデータ202として記憶される。コンテンツメタデータの非限定的な例として、コンテンツアイテムの作成者のID、コンテンツアイテムが投稿された時のタイムスタンプ、コンテンツアイテムの一意的な識別子、コンテンツの種類(例えばテキスト、画像、ビデオなど)、キーワード/タグ、記述子、分類などが挙げられる。 Data channel 100 may be defined to allow multiple users to share content with each other in a secure manner. Such user-generated content is stored in content storage 204. Additionally, information related to user-generated content is stored as content metadata 202. Non-limiting examples of content metadata include the ID of the content item's creator, the timestamp when the content item was posted, a unique identifier for the content item, the type of content (e.g., text, image, video, etc.) , keywords/tags, descriptors, classifications, etc.

例示の実施態様では、ユーザAは、データチャネル100にテキストアイテム206を提供/投稿し、その後、データチャネル100に画像208を投稿する。ユーザBは、データチャネル100に、テキストアイテム212を投稿し、その後ビデオ210を投稿する。ユーザDは、データチャネル100に、テキストアイテム214を投稿する。本開示の実施態様によれば、ユーザから各自のコンテンツアイテムを投稿するための通信は、データチャネル100の公開キーで暗号化され得ることが、理解されよう。ユーザCは、データチャネル100に対する書き込み権限を有しておらず、従って、ユーザCからデータチャネル100への投稿はない。 In the exemplary implementation, user A provides/posts a text item 206 to data channel 100 and then posts an image 208 to data channel 100. User B posts a text item 212 and then a video 210 to data channel 100. User D posts a text item 214 to data channel 100. It will be appreciated that, according to embodiments of the present disclosure, communications from users to post their content items may be encrypted with the public key of data channel 100. User C does not have write authority to data channel 100, and therefore there is no posting from user C to data channel 100.

例示の実施態様では、全てのユーザは、データチャネル100の読み出し権限を有し、従って、ユーザは全員、データチャネル100に投稿された様々なコンテンツの表示及びアクセスを行うことができる。いくつかの実施態様では、データチャネル100のコンテンツにアクセスするのに使用されるインターフェースは、フィードまたはコンテンツストリームの形態であり得る。いくつかの実施態様では、コンテンツは、コンテンツの種類によりコンテンツを編成する様々なセクションを有するインターフェースを介して、アクセスされる。いくつかの実施態様では、コンテンツは、チャットログの形式で提供される。コンテンツが提示される特定のインターフェースフォーマットに関係なく、様々なユーザのそれぞれの公開キーでコンテンツを暗号化することにより、コンテンツは、データチャネル100からユーザに安全に送信され得ることが、理解されよう。 In the exemplary implementation, all users have read permissions for data channel 100, so all users can view and access various content posted to data channel 100. In some implementations, the interface used to access the content of data channel 100 may be in the form of a feed or content stream. In some implementations, content is accessed through an interface that has various sections that organize the content by content type. In some implementations, content is provided in the form of chat logs. It will be appreciated that regardless of the particular interface format in which the content is presented, the content can be securely transmitted from the data channel 100 to the users by encrypting the content with the respective public keys of the various users. .

様々な種類のコンテンツのいずれも、データチャネル100を介して共有できることが、理解されよう。例えば、テキスト、画像、オーディオ、ビデオ、及びこれらの組み合わせは全て、共有できる。クラウドゲームの状況では、このようなコンテンツは、クラウドゲームに関連する様々なソースまたはインタラクションから生じ得る。非限定的な例として、チャットログ、ゲームイベントログ、ユーザオーディオチャットの録音されたオーディオ、スクリーンショット、ゲームプレイビデオクリップ、ユーザのローカル環境の録画されたビデオ、ウェブリンクなどが挙げられる。 It will be appreciated that any of a variety of types of content can be shared via data channel 100. For example, text, images, audio, video, and combinations thereof can all be shared. In a cloud gaming context, such content may originate from various sources or interactions related to cloud gaming. Non-limiting examples include chat logs, game event logs, recorded audio of user audio chats, screenshots, gameplay video clips, recorded video of the user's local environment, web links, and the like.

いくつかの実施態様では、データチャネル100を介して共有されるコンテンツには、ライブビデオゲームセッションからデータチャネル100へのゲームプレイビデオのライブストリーミングが含まれ得る。すなわち、ユーザのゲームセッションのライブビデオフィードは、データチャネル100の他のユーザにより観覧可能にされ得る。いくつかの実施態様では、ライブビデオにはさらに、ユーザのローカルカメラ(例えば個人用ウェブカメラ)からのライブビデオが含まれ、ユーザのビデオが表示され得る。このようなライブビデオ共有は機密性が高い場合があり、よってユーザは、このような共有においてプライバシーの確保を望み得、データチャネル100は、ユーザのプライバシー及びユーザ情報のセキュリティを保護しながら、このような共有を可能にする機構を提供することが、理解されよう。 In some implementations, content shared via data channel 100 may include live streaming gameplay video to data channel 100 from a live video game session. That is, a live video feed of a user's gaming session may be made available for viewing by other users of data channel 100. In some implementations, the live video may further include live video from the user's local camera (eg, a personal webcam) and the user's video may be displayed. Such live video sharing may be highly sensitive, and thus users may desire to ensure privacy in such sharing, and data channel 100 may provide this protection while protecting user privacy and security of user information. It will be appreciated that providing a mechanism to enable such sharing.

いくつかの実施態様では、ユーザは、特定の種類のイベントを自動的に記録するようにデータチャネル100を構成し得る。ユーザは、データチャネル100に具体的に共有するコンテンツの種類を選択することを可能にするインターフェースを介して、このようなデータチャネル100への自動共有を認可し得ることが、理解されよう。このようにして、データチャネル100には、選択された種類のコンテンツが自動的に取り込まれ得る。様々な実施態様では、データチャネル100を介して共有可能であると本明細書に説明されるコンテンツの種類のいずれも、データチャネル100に自動的に共有されるように構成することができる。 In some implementations, a user may configure data channel 100 to automatically record certain types of events. It will be appreciated that the user may authorize such automatic sharing to the data channel 100 via an interface that allows the user to select the types of content to specifically share to the data channel 100. In this manner, data channel 100 may be automatically populated with selected types of content. In various implementations, any of the content types described herein as shareable via data channel 100 may be configured to be automatically shared to data channel 100.

いくつかの実施態様では、データチャネル100は、クラウドゲームシステム上で生じる特定のゲームセッションまたはイベント用に、インスタンス化され得る。例えば、データチャネル100は、ビデオゲームのマルチプレーヤセッション用に定義され得、マルチプレーヤセッションからのコンテンツは、データチャネル100に共有される。いくつかの実施態様では、マルチプレーヤセッションのプレーヤ(例えばビデオゲームセッションのためにチームを形成するプレーヤ)は、データチャネル100へのアクセスが提供され、これにより、共有及び通信のための安全なチャネルを有することができる。 In some implementations, data channel 100 may be instantiated for a particular gaming session or event occurring on a cloud gaming system. For example, data channel 100 may be defined for a multiplayer session of a video game, and content from the multiplayer session is shared to data channel 100. In some implementations, players in a multiplayer session (e.g., players forming a team for a video game session) are provided access to data channel 100, thereby providing a secure channel for sharing and communicating. can have.

データチャネル100はまた、管理者権限を有するユーザにより閉鎖または終了され得ることが、理解されよう。例えば、例示の実施態様におけるユーザAは、これ以上情報がデータチャネル100に共有されることがないように、データチャネル100を閉鎖する能力を有し得る。いくつかの実施態様では、ユーザは、依然としてデータチャネル100を見ることを許可され得るが、データチャネル100にいずれの新たな情報も追加できない。これは、ユーザAが全ユーザの書き込み権限を削除し、同時にユーザの読み出し権限を保持することと、同等と見なされ得る。 It will be appreciated that data channel 100 may also be closed or terminated by a user with administrative privileges. For example, user A in an exemplary embodiment may have the ability to close data channel 100 so that no more information is shared to data channel 100. In some implementations, the user may still be allowed to view data channel 100, but cannot add any new information to data channel 100. This can be considered equivalent to user A removing write permissions for all users and at the same time retaining read permissions for users.

図3は、本開示の実施態様による、情報を共有するためのデータチャネルを提供するシステムを概念的に示す。例示の実施態様では、ユーザA、ユーザB、及びユーザCはそれぞれ、ユーザ/クライアントデバイス300、302、及び304を操作する。ユーザデバイス300、302、及び304は、ネットワーク306を介してチャネルサーバ308と通信する。チャネルサーバ308は、例示の実施態様におけるデータチャネルセッション310、312、及び314などのデータチャネルセッションをインスタンス化する。各データチャネルセッションは、本開示の実施態様に従って別個のデータチャネルの機能を提供し、これには、コンテンツの受信、コンテンツの記憶、及びデータチャネルのコンテンツへのアクセスを許可されたユーザとのネットワークを介したコンテンツの共有が含まれることが、理解されよう。 FIG. 3 conceptually illustrates a system that provides a data channel for sharing information, according to embodiments of the present disclosure. In the exemplary implementation, User A, User B, and User C operate user/client devices 300, 302, and 304, respectively. User devices 300 , 302 , and 304 communicate with channel server 308 via network 306 . Channel server 308 instantiates data channel sessions, such as data channel sessions 310, 312, and 314 in the example implementation. Each data channel session provides separate data channel functionality in accordance with embodiments of the present disclosure, including receiving content, storing content, and networking with users authorized to access the data channel content. It will be understood that this includes sharing content via.

例示の実施態様では、データチャネルセッションは、チャネルメタデータストレージ316及びチャネルメディアストレージ326にアクセスする。チャネルメタデータストレージ316は、データチャネルそれぞれのメタデータを含む。非限定的な例として、チャネルメタデータ318は、データチャネルセッション310に対して定義され、データチャネルの1人以上の所有者を識別する所有権情報320、データチャネルのメンバー及びデータチャネルとのインタラクションにおける各自の権限を識別するメンバーシップ情報322、及びデータチャネルセッション310のルール/設定を含み得る。 In the example implementation, data channel sessions access channel metadata storage 316 and channel media storage 326. Channel metadata storage 316 includes metadata for each data channel. As a non-limiting example, channel metadata 318 is defined for data channel session 310 and includes ownership information 320 that identifies one or more owners of the data channel, members of the data channel, and interactions with the data channel. Membership information 322 that identifies each person's privileges in the data channel session 310, and rules/settings for the data channel session 310.

さらに、例示の実施態様では、データチャネルセッションは、データチャネルを介して共有するコンテンツを含むチャネルメディアストレージ326にアクセスする。例示の実施態様では、チャネルメディアストレージ326は、例として、データチャネルを介して共有された様々なメディア/コンテンツアイテムを含むチャネルメディア328を含む。例示の実施態様では、これは、チャット/ゲームログ330、画像352、及びビデオ334を含む。本開示で論じられるように、データチャネルを介して他の種類のコンテンツ/メディアも共有できることが、理解されよう。 Additionally, in the exemplary implementation, data channel sessions access channel media storage 326 that includes content to share via the data channel. In the example implementation, channel media storage 326 includes channel media 328, which includes, by way of example, various media/content items shared via data channels. In the exemplary implementation, this includes chat/game logs 330, images 352, and videos 334. It will be appreciated that other types of content/media may also be shared via the data channel, as discussed in this disclosure.

例示の実施態様では、ネットワークゲームサービス330も示され、これは、コンソール/クラウドゲームサービスのサポートを提供する様々なサーバコンピュータ及び/またはゲームマシンを含み得、これにより、ユーザがビデオゲームにアクセスしてプレイすること、並びにオーディオ/テキストチャットサービス、スクリーンショット/ゲームプレイビデオの保存及び処理などの関連通信及びコンテンツ生成サービスが可能となる。データチャネルのコンテンツは、ゲームプレイインタラクション及びユーザ間通信インタラクションを含むネットワークゲームサービス330とのインタラクションから生成され得、よって、チャネルサーバ308、より具体的にはチャネルセッションは、ネットワークゲームサービス330から各自のデータチャネルのコンテンツを受信し得る。 In the example implementation, a network gaming service 330 is also shown, which may include various server computers and/or gaming machines that provide support for console/cloud gaming services, thereby allowing users to access video games. and related communication and content generation services such as audio/text chat services, screenshot/gameplay video storage and processing. The content of the data channel may be generated from interactions with the network gaming service 330, including gameplay interactions and user-to-user communication interactions, such that channel servers 308, and more specifically channel sessions, receive their respective data from the network gaming service 330. The content of the data channel may be received.

図4は、本開示の実施態様による、データチャネル100の所有権の移転を概念的に示す。典型的なシナリオでは、データチャネル100は所有者を有し、所有者は通常、データチャネル100を開始するユーザである。例えば、例示の実施態様では、ユーザAは、データチャネル100の現在の所有者であり、所有者として、データチャネル100を管理し、これには、データチャネル100のメンバーシップ及び設定を制御することが含まれる。しかし、ユーザAは、これ以上データチャネル100を管理することを望まない場合がある。従って、いくつかの実施態様では、ユーザAは、データチャネル100の所有権を別のユーザに譲渡し得る。例示の実施態様では、参照番号400に示されるように、ユーザAは、データチャネル100の所有権をユーザBに移転することが、概念的に示される。このようにすることで、ユーザAは、所有権情報320を更新するトランザクションを開始して(参照番号402)、ユーザBがデータチャネル100の所有者であり、データチャネル100に関する管理者権限を現時点で所有することを反映させる。 FIG. 4 conceptually illustrates the transfer of ownership of data channel 100 according to embodiments of the present disclosure. In a typical scenario, data channel 100 has an owner, which is typically the user who initiates data channel 100. For example, in the exemplary embodiment, user A is the current owner of data channel 100 and, as the owner, manages data channel 100, including controlling the membership and configuration of data channel 100. is included. However, user A may no longer wish to manage data channel 100. Accordingly, in some implementations, user A may transfer ownership of data channel 100 to another user. In the exemplary embodiment, user A is conceptually shown transferring ownership of data channel 100 to user B, as indicated by reference numeral 400. By doing so, User A initiates a transaction to update ownership information 320 (reference numeral 402) and confirms that User B is the owner of data channel 100 and currently has administrative rights regarding data channel 100. to reflect ownership.

図5は、本開示の実施態様による、データチャネル100へのアクセスの取り消しを概念的に示す。例示の実施態様では、ユーザAは、データチャネル100の管理者権限を有するチャネル所有者であり、参照番号500に概念的に示されるように、ユーザAは、ユーザCのデータチャネル100へのアクセスを取り消す。これを達成するために、ユーザAは、データチャネル100のメンバーシップ情報322を更新するトランザクションを開始し(参照番号502)、その結果、ユーザCは、データチャネル100へのアクセスを許可されなくなる。いくつかの実施態様では、これは、データチャネル100のコンテンツがユーザCの公開キーを使用してもう公開できないように、ユーザCに関連するメンバーシップ情報322の設定を変更することを伴う(例えばユーザCの読み出し/書き込み権限を無効化する)。いくつかの実施態様では、ユーザCの公開キー及び/または他の情報は、メンバーシップ情報から除外または削除される。 FIG. 5 conceptually illustrates revocation of access to data channel 100 according to embodiments of the present disclosure. In the exemplary implementation, User A is a channel owner with administrative privileges for data channel 100, and as shown conceptually at reference numeral 500, User A has access to User C's data channel 100. cancel. To accomplish this, user A initiates a transaction to update membership information 322 of data channel 100 (reference numeral 502), so that user C is no longer granted access to data channel 100. In some implementations, this involves changing the settings of membership information 322 associated with user C such that the content of data channel 100 can no longer be published using user C's public key (e.g. Disable read/write privileges for user C). In some implementations, User C's public key and/or other information is excluded or deleted from the membership information.

図6は、本開示の実施態様による、暗号化されたデータチャネルを介して送信されるゲーム関連通信/データを概念的に示す。ユーザデータのプライバシーを保護するために、ゲームセッション中に生じるリアルタイムアクティビティは、暗号化されたデータチャネルを介して共有され得ることが、理解されよう。例示の実施態様では、ビデオゲームセッション600が実行され、これは、複数のユーザ608、610、612、及び614によりプレイされているビデオゲームの活動ゲーム状態を定義する。ビデオゲームセッション600の間、ユーザのインタラクティビティのために、いくつかの関連する通信及びデータサービスが提供される。非限定的な例として、このようなサービスには、ユーザ間のテキストベース通信を提供するテキストチャットサービス602と、ユーザ間のオーディオ通信(例えばユーザに関連付けられたまたはユーザが操作するマイクロフォンからの発話音声)を提供するオーディオチャットサービス604と、ユーザ各自のローカル環境におけるユーザ各自のカメラからビデオ共有を提供する(例えば他の人がユーザを見られるようにユーザ自身のビデオを提供する)ユーザカメラ共有サービス606と、ビデオゲームセッション中に生じるイベントをユーザがよりよく理解できるように、ゲームアクティビティ/イベントを表示及び記録するゲームログサービス606と、が含まれ得る。これらのサービス並びに本開示の実施態様による他のサービスのそれぞれに関して、ユーザに送信されるデータ及びユーザから受信されるデータは、データチャネル100を介して暗号化され得る。従って、ユーザのプライバシー及びデータの保護を保証するために、ビデオゲームセッションに関わる関連サービスにより提供される機密データは処理される。 FIG. 6 conceptually illustrates game-related communications/data transmitted over an encrypted data channel in accordance with embodiments of the present disclosure. It will be appreciated that to protect the privacy of user data, real-time activities that occur during a game session may be shared via an encrypted data channel. In the exemplary implementation, a video game session 600 is executed, which defines an active game state of a video game being played by multiple users 608, 610, 612, and 614. Several related communication and data services are provided for user interactivity during video game session 600. By way of non-limiting example, such services include a text chat service 602 that provides text-based communications between users, and audio communications between users (e.g., speech from a microphone associated with or operated by the user). an audio chat service 604 that provides video sharing (e.g., provides a user's own video for others to see) from the user's own camera in the user's local environment; A service 606 may be included, and a game log service 606 that displays and records game activity/events to allow a user to better understand events that occur during a video game session. For each of these services, as well as other services according to embodiments of the present disclosure, data transmitted to and received from users may be encrypted over data channel 100. Therefore, sensitive data provided by related services involved in a video game session is processed to ensure user privacy and data protection.

図7は、本開示の実施態様による、データチャネルのコンテンツにアクセスするためのインターフェースを概念的に示す。例示の実施態様では、インターフェース700は、コンテンツのストリームとして概念化される。データチャネルは、参照番号702に示されるように名前が付けられ得、データチャネルの所有者は、参照番号704に示されるように識別され得る。 FIG. 7 conceptually illustrates an interface for accessing content of a data channel, according to embodiments of the present disclosure. In the example implementation, interface 700 is conceptualized as a stream of content. The data channel may be named as shown at reference numeral 702 and the owner of the data channel may be identified as shown at reference numeral 704.

メンバーステータスセクション706には、データチャネルのメンバーの現在のステータスが示される。例えば、メンバーは、オンライン、オフライン、ゲームプレイ参加状態などであり得る。所有者は、管理者権限を有し得、従って、ユーザがデータチャネルのコンテンツストリームにアクセス権を有し得るまたは有し得ないように、ユーザをデータチャネルに追加/データチャネルから除外することが可能であり得ることが、理解されよう。 Member status section 706 shows the current status of the members of the data channel. For example, members may be online, offline, participating in gameplay, etc. The owner may have administrative privileges and therefore be able to add/exclude users from the data channel so that the user may or may not have access to the data channel's content stream. It will be understood that this may be possible.

参照番号708では、投稿インターフェースが示され、投稿インターフェースにより、ユーザは、コメント、または画像、またはビデオをデータチャネルコンテンツストリームに投稿することが可能となる。インターフェース700の一部であるコンテンツのストリームには、示されるように様々な種類のコンテンツが存在し得る。例えば、参照番号710では、ゲームアクティビティに関する更新/通知が表示され、ゲームセッションが進行中であること、並びにセッションの継続時間及びセッションの参加者のIDなどの他の関連情報が示される。いくつかの実施態様では、このようなコンテンツアイテムにより、セッションに関するより詳細な情報を表示するためのアクセスを提供し、及び/またはセッションのライブゲームプレイを観覧することができる。 At reference numeral 708, a posting interface is shown that allows a user to post comments, or images, or videos to the data channel content stream. The streams of content that are part of interface 700 may include various types of content, as shown. For example, at reference numeral 710, updates/notifications regarding gaming activity are displayed indicating that a gaming session is in progress and other related information such as the duration of the session and the IDs of the participants in the session. In some implementations, such content items may provide access to view more detailed information about the session and/or allow viewing live gameplay of the session.

コンテンツアイテム712は、ゲームセッションのビデオの投稿であり、これには、ビデオを投稿するユーザによるコメントが含まれる。アイテム714は、アイテム712に対する他のユーザからの反応を示す。 Content item 712 is a video posting of a game session, which includes comments by the user posting the video. Item 714 shows reactions to item 712 from other users.

この事例では、コンテンツアイテム716は、データチャネル100の他のユーザに質問するテキスト投稿である。ユーザは、アイテム716に対して返信を投稿してもよいことが、理解されよう。 In this example, content item 716 is a text post that asks other users of data channel 100 a question. It will be appreciated that the user may post a reply to item 716.

本開示による実施態様は、クラウドゲームに由来するコンテンツを参照して説明されたが、本開示の原理及び実施態様は、コンソールゲーム、PCゲーム、モバイルデバイスゲーム、ブラウザベースゲーム、ソーシャルメディアゲーム、または他の種類のデバイス及び/または他の種類のコンテキストで実行されるビデオゲームに由来するコンテンツにも適用できることが、理解されよう。 Although implementations according to the present disclosure have been described with reference to content originating from cloud games, the principles and implementations of the present disclosure may be applied to console games, PC games, mobile device games, browser-based games, social media games, or It will be appreciated that content derived from video games running on other types of devices and/or in other types of contexts is also applicable.

図8Aは、本開示の実施態様による、暗号化プライベートプレーヤソーシャルデータチャネルを開始するためのプロセスを概念的に示す。例示の実施態様では、所有者800は、データチャネル100をセットアップしている。所有者/管理者800は、参照番号802に示されるように、チャネルキーK生成することにより、チャネルを開始する。チャネルキーKは、所有者の公開キー804を使用して暗号化され(参照番号806)、暗号化されたチャネルキーE(K)は、データチャネル100に記憶される。 FIG. 8A conceptually illustrates a process for starting an encrypted private player social data channel, according to embodiments of the present disclosure. In the exemplary embodiment, owner 800 has set up data channel 100. The owner/manager 800 initiates a channel by generating a channel key K i , as shown at reference numeral 802 . The channel key K i is encrypted (reference number 806 ) using the owner's public key 804 and the encrypted channel key E O (K i ) is stored in the data channel 100 .

図8Bは、本開示の実施態様による、参加者をデータチャネルに追加するためのプロセスを概念的に示す。例えば、データチャネル100に参加者/ユーザPを追加するために(参照番号816)、所有者800は、所有者の秘密キー812を使用して、暗号化されたチャネルキーE(K)を復号化し(参照番号810)、チャネルキーKを取得する。次に、チャネルキーKiは、参加者Pの公開キー(参照番号818)を使用して、暗号化される(参照番号814)。結果得られる参加者Pの暗号化されたチャネルキーEP1(K)は、示されるように、データチャネル100に記憶される。同様に、別の参加者P(参照番号822)をデータチャネル100に追加するために、復号化されたチャネルキーKは、参加者Pの公開キー(参照番号824)を使用して暗号化され(参照番号820)、参加者Pの暗号化されたチャンネルキーEP2(K)は、データチャネル100に記憶される。 FIG. 8B conceptually illustrates a process for adding participants to a data channel, according to embodiments of the present disclosure. For example, to add participant/user P 1 to the data channel 100 (reference number 816), the owner 800 uses the owner's private key 812 to add the encrypted channel key E O (K i ) (reference number 810) to obtain the channel key K i . The channel key Ki is then encrypted (reference number 814) using the public key of participant P1 (reference number 818). The resulting encrypted channel key E P1 (K i ) for participant P 1 is stored in data channel 100, as shown. Similarly, to add another participant P 2 (reference number 822) to the data channel 100, the decrypted channel key K i is added using participant P 2 's public key (reference number 824). The encrypted channel key E P2 (K i ) of participant P 2 is encrypted (reference number 820 ) and stored in data channel 100 .

所有者/管理者がデータチャネルを開始して参加者を追加すると、チャネルキーの暗号化が所有者のデバイス上でゼロトラスト方式で行われ、これにより、チャネルキー、及びチャネルキーを使用して暗号化されたデータは、所有者及び参加者以外のいずれの関係者にも公開されないことが、理解されよう。従って、ネットワークゲームサービスでも、データチャネルのチャネルキー及び暗号化されたデータを内々に知っているわけではない。データチャネルのコンテンツは暗号化形式で記憶されるため、よって、データチャネルは、コンテンツがネットワークゲームサービスに公開されることなく、ネットワークゲームサービス及びそのシステムにより維持され得る。データチャネルは、暗号化されたキー(E(K)、EP1(K)、EP2(K)など)を全チャネルメンバーに利用可能にし、参加者が加わると、参加者の暗号化されたチャネルキーはチャネルリストに追加され、チャネルリストは、ネットワークゲームサービスにより維持され得る。 When an owner/administrator starts a data channel and adds participants, encryption of the channel key takes place on the owner's device in a zero-trust manner, which allows the channel key and It will be appreciated that the encrypted data will not be disclosed to any party other than the owner and the participants. Therefore, even the network game service does not secretly know the channel key and encrypted data of the data channel. Because the content of the data channel is stored in encrypted form, the data channel can thus be maintained by the network gaming service and its systems without the content being exposed to the network gaming service. The data channel makes the encrypted keys (E O (K i ), E P1 (K i ), E P2 (K i ), etc.) available to all channel members, and when a participant joins, the The encrypted channel key may be added to a channel list, which may be maintained by the network gaming service.

いくつかの実施態様では、チャネルキーは、対称である(例えばAES)。いくつかの実施態様では、所有者キーと参加者キーは、非対称である(例えばRSA、ECC、DS+EG)。 In some implementations, the channel keys are symmetric (eg, AES). In some implementations, the owner key and participant key are asymmetric (eg, RSA, ECC, DS+EG).

図8Cは、本開示の実施態様による、ユーザがデータチャネルを去る場合、データチャネルの暗号化されたチャネルキーのチャネルリストへの変更を概念的に示す。示されるように、前述の実施態様によれば、所有者並びに参加者P、及びPを含むチャネルメンバーを有するデータチャネル用に、第1のチャネルキーKが生成される。チャネルキーは、メンバーの公開キーで暗号化され、暗号化されたチャネルキーは、従って、チャネルリスト830Aに記憶される。例示の実施態様に示されるように、暗号化されたチャネルキーには、所有者、参加者P及び参加者Pそれぞれの暗号化されたチャネルキーE(K)、EP1(K)、及びEP2(K)が含まれる。 FIG. 8C conceptually illustrates the modification of a data channel's encrypted channel key to the channel list when a user leaves the data channel, according to embodiments of the present disclosure. As shown, according to the embodiments described above, a first channel key K 1 is generated for a data channel having channel members including an owner and participants P 1 and P 2 . The channel key is encrypted with the member's public key, and the encrypted channel key is thus stored in channel list 830A. As shown in the exemplary embodiment, the encrypted channel keys include encrypted channel keys E O (K 1 ) , E P1 (K 1 ), and E P2 (K 1 ).

参加者Pが去る場合(またはデータチャネルから除外される場合)、第2のチャネルキーKが生成され、データチャンネルの残りのメンバーの公開キーで暗号化される。例示の実施態様では、所有者及び参加者Pのために、暗号化されたチャネルキーE(K)及びEP2(K)がそれぞれ、チャネルリストに追加される。これらは、第1のチャネルキーから暗号化された暗号化チャネルキー(E(K)、EP1(K)、及びEP2(K))に追加される。このようにして、参加者Pは、第1のチャネルキーKを使用して暗号化された古いコンテンツ/メッセージを、依然として復号化することができるが、第2のチャネルキーKを使用して暗号化された新たなコンテンツは、復号化することができない。 If a participant P 1 leaves (or is excluded from the data channel), a second channel key K 2 is generated and encrypted with the public keys of the remaining members of the data channel. In the exemplary implementation, encrypted channel keys E O (K 2 ) and E P2 (K 2 ) are added to the channel list for the owner and participant P 2 , respectively. These are added to the encrypted channel keys (E O (K 1 ), E P1 (K 1 ), and E P2 (K 1 )) encrypted from the first channel key. In this way, participant P1 can still decrypt old content/messages that were encrypted using the first channel key K1 , but using the second channel key K2 . New content that has been encrypted cannot be decrypted.

図8Cを引き続き参照すると、別の参加者Pがデータチャネルに加わる場合のシナリオが検討される。いくつかの実施態様では、参加者Pは、データチャネルの全履歴への完全なアクセス権を有するようにデータチャネルに追加され得、これにより、参加者Pは、データチャネルの全履歴コンテンツを表示することが可能となる。この事例では、第1及び第2のチャンネルキーK及びKの両方は、新たな参加者Pの公開キーで暗号化され、参照番号830Cのチャネルリストに示されるように、暗号化されたチャンネルキーEP3(K)及びEP3(K)としてチャンネルリストに追加される。 Continuing to refer to FIG. 8C, consider a scenario where another participant P 3 joins the data channel. In some implementations, participant P 3 may be added to the data channel with full access to the entire history of the data channel, such that participant P 3 has access to all historical content of the data channel. It becomes possible to display. In this case, both the first and second channel keys K1 and K2 are encrypted with the public key of the new participant P3 and are encrypted as shown in the channel list with reference number 830C. The channel keys E P3 (K 1 ) and E P3 (K 2 ) are added to the channel list.

しかし、いくつかの実施態様では、参加者Pは、データチャネルの履歴コンテンツへはアクセスできないが、参加者Pの参加時点以降にデータチャネルに共有されるコンテンツへはアクセスできる新たな提供者としてのみ、データチャネルに追加され得る。この事例では、次いで、新たな第3のチャネルキーKが生成され、所有者及び参加者P及びPの公開キーで暗号化される。参照番号830Dに示されるように、新たな暗号化チャネルキーE(K)、EP2(K)、及びEP3(K)がチャネルリストに追加される。 However, in some implementations, participant P 3 does not have access to historical content of the data channel, but a new provider that does have access to content shared to the data channel after the time of participant P 3 's participation. can be added to the data channel only as In this case, a new third channel key K 3 is then generated and encrypted with the public keys of the owner and participants P 2 and P 3 . New encrypted channel keys E O (K 3 ), E P2 (K 3 ), and E P3 (K 3 ) are added to the channel list, as shown at reference numeral 830D.

図8Dは、本開示の実施態様による、図8Cのシナリオに基づいて、経時的なデータチャネルのコンテンツの暗号化を示すタイムラインを概念的に示す。例示の実施態様において、シナリオAでは、参加者Pは去り、参加者Pはチャンネルの履歴への完全なアクセス権を有して参加する。一方、シナリオBでは、参加者Pは去り、参加者Pは、チャネルの履歴へのアクセス権を有さずに参加する(ただし参加後のコンテンツへのアクセス権は有する)。参照番号840に示されるように、最初に所有者は、データチャネルを作成し、参加者P及びPを追加する。その後、参照番号842に示されるように、参加者Pが去る。さらにこれに続いて、参照番号844に示されるように、参加者Pがデータチャネルに参加する。 FIG. 8D conceptually illustrates a timeline illustrating encryption of content of a data channel over time based on the scenario of FIG. 8C, according to embodiments of the present disclosure. In an exemplary embodiment, in scenario A, participant P 1 leaves and participant P 3 joins with full access to the channel's history. On the other hand, in scenario B, participant P 1 leaves and participant P 3 joins without having access to the channel's history (but having access to the content after joining). As shown at reference numeral 840, the owner first creates a data channel and adds participants P 1 and P 2 . Participant P 1 then leaves, as indicated by reference numeral 842 . Further following this, participant P 3 joins the data channel, as shown at reference numeral 844 .

例示の実施態様に示されるシナリオAでは、チャネルが作成されてからPが去るまでの期間846に、チャネルは初めにチャネルキーKで暗号化される。次に、Pが去った後の期間848に、チャネルは、チャネルキーKで暗号化される。参加者Pがチャネルに参加しても、チャンネルは、依然としてチャンネルキーKで暗号化される。 In scenario A shown in the example implementation, the channel is initially encrypted with channel key K 1 during the period 846 from when the channel is created until P 1 leaves. Then, in a period 848 after P 1 leaves, the channel is encrypted with channel key K 2 . Even if participant P 3 joins the channel, the channel is still encrypted with channel key K 2 .

示されるシナリオBでは、チャネルが作成されてからPが去るまでの期間850に、チャネルは同様に初めにチャネルキーKで暗号化される。Pが去った後の期間852に、チャネルは、チャネルキーKで暗号化される。しかし、参加者Pが参加すると、期間854にチャンネルは、新たなチャンネルキーKで暗号化される。 In the scenario B shown, during the period 850 from when the channel is created until P 1 leaves, the channel is also initially encrypted with the channel key K 1 . In the period 852 after P 1 leaves, the channel is encrypted with channel key K 2 . However, when participant P 3 joins, in period 854 the channel is encrypted with a new channel key K 3 .

図8Eは、本開示の実施態様による、データチャネル100におけるメッセージの構成要素を概念的に示す。例示の実施態様では、暗号化されたチャネルキー862、メッセージ署名864、及び暗号化されたコンテンツ866を含む所与のメッセージ860が示される。暗号化されたチャネルキー862は、チャネルリストに含まれる暗号化されたチャネルキーの全てを含む。暗号化されたチャネルキーは、それぞれの秘密キー保持者によってのみ復号化でき、秘密キー保持者は、所有者及びデータチャネル100へのアクセスを許可された参加者であることが、理解されよう。説明されたように、多数のチャネルキーが存在し得、これらは、異なるユーザ部分集合の公開キーで暗号化され得る。 FIG. 8E conceptually illustrates the components of messages on data channel 100, according to embodiments of the present disclosure. In the example implementation, a given message 860 is shown including an encrypted channel key 862, a message signature 864, and encrypted content 866. Encrypted channel keys 862 include all of the encrypted channel keys included in the channel list. It will be appreciated that encrypted channel keys can only be decrypted by their respective private key holders, which are the owners and participants authorized to access the data channel 100. As explained, there may be multiple channel keys, and these may be encrypted with public keys of different user subsets.

メッセージ860はさらに、メッセージ署名864を含む。いくつかの実施態様では、メッセージ署名は、対称署名アルゴリズム(例えばHMAC(ハッシュベース/キー付きハッシュメッセージ認証コード)、GMAC(ガロアメッセージ認証コード)、CMAC(暗号ベースメッセージ認証コード))を使用する。 Message 860 further includes a message signature 864. In some implementations, the message signature uses a symmetric signature algorithm (eg, HMAC (hash-based/keyed hash message authentication code), GMAC (galois message authentication code), CMAC (cipher-based message authentication code)).

メッセージ860はさらに、暗号化されたコンテンツ866、すなわちチャネルキーKiで暗号化されたメッセージのコンテンツを含む。コンテンツには、テキスト、画像、ビデオなどが含まれ得る。 Message 860 further includes encrypted content 866, ie, the content of the message encrypted with channel key Ki. Content may include text, images, videos, etc.

いくつかの実施態様では、暗号化されたコンテンツ866及びメッセージ署名864は、同じプロセスを通して同時に生成される(例えばAES-GCM(高度暗号化標準-ガロア/カウンタモード)を使用する)。 In some implementations, encrypted content 866 and message signature 864 are generated simultaneously through the same process (eg, using AES-GCM (Advanced Encryption Standard - Galois/Counter Mode)).

従って、データチャネル内の各メッセージは、暗号化されたチャネルキー、メッセージ署名、及び暗号化されたメッセージコンテンツを含む。ユーザ(例えば所有者または参加者)がメッセージを受信すると、メッセージを構文解析して、公開キーで暗号化されたチャネルキーを見つけ、チャネルキーを復号化する。次に、ユーザは、復号化されたチャネルキーを使用してメッセージのコンテンツを復号化し得る。 Thus, each message within the data channel includes an encrypted channel key, a message signature, and encrypted message content. When a user (eg, owner or participant) receives a message, it parses the message to find the channel key encrypted with the public key and decrypts the channel key. The user may then decrypt the contents of the message using the decrypted channel key.

メッセージのコンテンツへのアクセスは、コンテンツを暗号化するのに使用される特定のチャネルキーを介して、及びチャネルキーの暗号化の管理を通して、制御されることが、理解されよう。コンテンツの暗号化に使用されるチャネルキーは、コンテンツへのアクセスを許可される特定ユーザのみの公開キーで暗号化され、これらの暗号化されたキーはメッセージに含まれる。チャネルキーは暗号化された形式でのみ送信されるため、対応する秘密キーの保持者のみが、チャネルキーにアクセスし、コンテンツを復号化することができる。これは、ユーザの観点からのゼロトラストソリューションを提供し、データチャネルメタデータを(暗号化された形式で)記憶し、かつ(例えばユーザ間のデータ通信を促進することで)チャネルを管理するネットワークゲームサービスでさえも、チャネルキーを復号化することができないため、コンテンツへのアクセス権を有さない。さらに、所与のメッセージが何らかの方法で第三者により傍受された、または誤送信された場合でも、このような受信者はチャネルキーを復号化できないため、メッセージのコンテンツの機密性は守られる。 It will be appreciated that access to the content of the message is controlled through the particular channel key used to encrypt the content and through management of the encryption of the channel key. The channel keys used to encrypt the content are encrypted with public keys only for specific users authorized to access the content, and these encrypted keys are included in the message. Channel keys are only transmitted in encrypted form, so only the holder of the corresponding private key can access the channel key and decrypt the content. It provides a zero trust solution from the user's perspective, and is a network that stores data channel metadata (in encrypted form) and manages the channel (e.g. by facilitating data communication between users). Even gaming services cannot decrypt the channel key and therefore have no access to the content. Furthermore, even if a given message is somehow intercepted or misdirected by a third party, the contents of the message remain confidential since such recipients will not be able to decrypt the channel key.

上記のように、データチャネルは、ネットワークゲームサービスのリソースを使用して管理され得る。例えば、ネットワークゲームサービスは、チャネルリストを維持し、メンバーが除外された時(前述のように残りの全メンバーに新たなチャネルキーを提供する)、または新たなメンバーが追加された時(前述のようにチャネルリストを新たなメンバーに提供し、存在するメンバーを更新して、新たな暗号化されたチャネルキーを含める)など、必要に応じてデータチャネルの現在活動中のメンバーにチャネルリストを配布し得る。データチャネルのメンバーがメッセージを生成する時、現在のチャネルキーを使用してコンテンツを暗号化し得、さらにチャネルリストの暗号化されたキーを連結し得る。メッセージは、ネットワークゲームサービスのデータチャネルサービス/ロジック/ハンドラーに送信され、記憶され、他のユーザに配布され得る。 As mentioned above, the data channel may be managed using the resources of the network gaming service. For example, a network gaming service may maintain a channel list when a member is removed (providing a new channel key to all remaining members as described above) or when a new member is added (providing a new channel key as described above). Distribute the channel list to currently active members of the data channel as needed, such as providing the channel list to new members and updating existing members to include the new encrypted channel key. It is possible. When a member of a data channel generates a message, it may encrypt the content using the current channel key and may concatenate the encrypted keys of the channel list. The message may be sent to the network gaming service's data channel service/logic/handler, stored, and distributed to other users.

前述のように、本開示の実施態様は、クラウドゲームシステムに適用され得る。クラウドゲームシステムの一例として、Playstation(登録商標)Nowクラウドゲームシステムが挙げられる。このようなシステムでは、クライアントデバイスは、Playstation(登録商標)4ゲームコンソールなどのゲームコンソール、またはパーソナルコンピュータ、ラップトップ、タブレット、携帯電話、モバイルデバイスなどの別のデバイスであり得る。 As mentioned above, embodiments of the present disclosure may be applied to cloud gaming systems. An example of a cloud game system is the PlayStation (registered trademark) Now cloud game system. In such systems, the client device may be a game console, such as a PlayStation® 4 game console, or another device such as a personal computer, laptop, tablet, cell phone, mobile device, etc.

概して、ゲームタイトルのユーザリクエストが受信されると、クラウドゲームを有効化するために、クラウドゲームサイトに関連付けられたデータセンタ内の1つ以上のサーバにより、いくつかの動作が実行される。クラウドゲームサイトがユーザリクエストを受信すると、選択されたゲームタイトルに関連付けられたゲームをホストするデータセンタが識別され、選択されたゲームタイトルのゲームをインスタンス化するために、識別されたデータセンタにリクエストが送信される。リクエストに応じて、データセンタのサーバは、ゲームコンテンツをユーザに提示する準備として、ゲームコードを識別し、識別したゲームコードをロードし、ゲームコードに関連するファイルを初期化する。ゲームに関連付けられたゲームデータには、一般的なゲームデータと、ユーザ固有のゲームデータとが含まれ得る。従って、ファイルを初期化することは、一般的なゲームデータ及びユーザ固有のゲームデータの両方を識別し、ロードし、初期化することを含み得る。一般的なゲームデータを初期化することは、グラフィックスエンジンを初期化すること、グラフィックスデータをインストールすること、サウンドファイルを初期化すること、アートワークをインストールすることなどを含み得る。ユーザ固有データを初期化することは、ユーザデータ、ユーザ履歴、ゲーム履歴などを検索すること、転送すること、及びインストールすることを含み得る。 Generally, when a user request for a game title is received, several actions are performed by one or more servers within a data center associated with the cloud gaming site to enable the cloud game. When the cloud gaming site receives a user request, the data center hosting the game associated with the selected game title is identified and the request is made to the identified data center to instantiate the game for the selected game title. is sent. In response to the request, the data center server identifies the game code, loads the identified game code, and initializes files associated with the game code in preparation for presenting the game content to the user. Game data associated with a game may include general game data and user-specific game data. Accordingly, initializing the files may include identifying, loading, and initializing both general game data and user-specific game data. Initializing general game data may include initializing the graphics engine, installing graphics data, initializing sound files, installing artwork, etc. Initializing user-specific data may include retrieving, transferring, and installing user data, user history, game history, etc.

一般的なゲームデータがロードされ初期化されている間に、「スプラッシュ」画面がクライアントデバイスでレンダリングされるように提供され得る。スプラッシュ画面は、ロードされているゲームの代表的な画像を提供するように設計され、ロードされているゲームの好例をユーザが下見することを可能にし得る。一般的なゲームデータがロードされると、特定の初期コンテンツがレンダリングされ得、選択/ナビゲーション画面が、ユーザ選択及びカスタマイズのために提示され得る。選択/ナビゲーション画面で入力されるユーザ選択には、ゲームレベルの選択、ゲームアイコン(複数可)の選択、ゲームモードの選択、ゲームの獲得物、追加のゲームコンテンツのアップロードが必要となり得る他のユーザ関連データが含まれ得る。いくつかの実施形態では、ゲームコンテンツは、クラウドゲームシステムからユーザのコンピューティングデバイスにゲームコンテンツをストリーミングすることにより、視聴及びインタラクションに利用可能となる。いくつかの実施態様では、ユーザ固有データをロードした後に、ゲームコンテンツはゲームプレイに利用可能となる。 A "splash" screen may be provided to be rendered on the client device while general game data is loaded and initialized. The splash screen may be designed to provide a representative image of the game being loaded, allowing the user to preview a good example of the game being loaded. Once the general game data is loaded, specific initial content may be rendered and selection/navigation screens may be presented for user selection and customization. User selections entered on the selection/navigation screen may require selection of game level, selection of game icon(s), selection of game mode, game acquisitions, and uploading of additional game content by other users. Related data may be included. In some embodiments, game content is made available for viewing and interaction by streaming the game content from a cloud gaming system to a user's computing device. In some implementations, after loading the user-specific data, the game content is available for game play.

図9Aは、クラウドゲームサイトを介して利用可能なゲームのゲームファイルをロードするために使用される例示的なシステムを示す。システムは、インターネットなどのネットワーク902を介してクラウドゲームサイト904に通信可能に接続された複数のクライアントデバイス900を含む。クラウドゲームサイト904にアクセスするリクエストがクライアントデバイス900から受信されると、クラウドゲームサイト904は、ユーザデータストア908に記憶されたユーザアカウント情報906にアクセスして、リクエストを発信したクライアントデバイスに関連付けられたユーザを識別する。いくつかの実施形態では、クラウドゲームサイトはまた、ユーザが視聴/プレイを許可された全てのゲームを特定するために、識別したユーザを検証し得る。ユーザアカウントの識別/検証に続いて、クラウドゲームサイトは、ゲームタイトルデータストア910にアクセスして、リクエストを発信したユーザアカウントがクラウドゲームサイトで利用可能なゲームタイトルを識別する。今度は、ゲームタイトルデータストア910が、ゲームデータベース912とインタラクトして、クラウドゲームサイトが利用可能な全てのゲームのゲームタイトルを取得する。新しいゲームが導入されると、ゲームデータベース912はゲームコードが更新され、ゲームタイトルデータストア910は、新たに導入されたゲームのゲームタイトル情報が提供される。リクエストを発信したクライアントデバイスは、リクエストを発信した時に、クラウドゲームサイトに登録されている場合とされていない場合がある。リクエストを発信したクライアントデバイスのユーザが登録ユーザでない場合には、クラウドゲームサイトは、そのユーザを新規ユーザとして識別し、新規ユーザに好適なゲームタイトル(例えばデフォルトのゲームタイトル集合)を選択し得る。図9Aに示されるように、特定されたゲームタイトルは、ディスプレイ画面900-aに提示されるように、クライアントデバイスに返される。 FIG. 9A shows an example system used to load game files for games available via a cloud gaming site. The system includes a plurality of client devices 900 communicatively connected to a cloud gaming site 904 via a network 902, such as the Internet. When a request to access a cloud gaming site 904 is received from a client device 900, the cloud gaming site 904 accesses user account information 906 stored in a user data store 908 to determine information associated with the client device that originated the request. identify the user who In some embodiments, the cloud gaming site may also verify the identified user to identify all games the user is authorized to view/play. Following identification/verification of the user account, the cloud gaming site accesses game title data store 910 to identify game titles available at the cloud gaming site to the user account that originated the request. Game title data store 910, in turn, interacts with game database 912 to obtain game titles for all games available to the cloud gaming site. When a new game is introduced, the game database 912 is updated with the game code, and the game title data store 910 is provided with game title information for the newly introduced game. The client device that sent the request may or may not be registered with the cloud game site at the time the request is sent. If the user of the client device that originated the request is not a registered user, the cloud gaming site may identify the user as a new user and select a suitable game title (eg, a default set of game titles) for the new user. As shown in FIG. 9A, the identified game title is returned to the client device for presentation on display screen 900-a.

クライアントデバイス上でレンダリングされたゲームタイトルのうちの1つでユーザインタラクションが検出され、信号がクラウドゲームサイトに送信される。信号には、ユーザインタラクションが検出されたゲームタイトル情報と、ゲームタイトルで登録されたユーザインタラクションとが含まれる。クライアントデバイスから受信した信号に応じて、クラウドゲームサイトは積極的に、ゲームがホストされているデータセンタを特定し、特定したデータセンタに信号を送信して、ユーザインタラクションが検出されたゲームタイトルに関連付けられたゲームをロードする。いくつかの実施形態では、複数のデータセンタがゲームをホストしている場合がある。このような実施形態では、クラウドゲームサイトは、リクエストを発信したクライアントデバイスの地理的位置を特定し、クライアントデバイスに地理的に近いデータセンタを識別し、データセンタにゲームをプリロードするように信号を送信し得る。ユーザの地理的位置は、いくつか例を挙げると、クライアントデバイス内の全地球測位システム(GPS)メカニズム、クライアントのIPアドレス、クライアントのping情報を使用して、特定され得る。当然ながら、ユーザの地理的位置を検出する前述の方法は例示であり得、他の種類のメカニズムまたはツールを使用して、ユーザの地理的位置を特定してもよい。クライアントデバイスに近いデータセンタを識別することにより、ユーザがゲームとインタラクトする際のレイテンシを最小限に抑えることができる。いくつかの実施形態では、識別されたデータセンタは、ゲームをホストするのに必要な帯域幅/処理能力を有さない場合がある、または過使用されている場合がある。これらの実施形態では、クラウドゲームサイトは、クライアントデバイスに地理的に近い第2のデータセンタを識別し得る。ゲームをロードすることは、ゲームコードをロードすることと、ゲームのインスタンスを実行することとを含む。 A user interaction with one of the game titles rendered on the client device is detected and a signal is sent to the cloud gaming site. The signal includes the game title information in which the user interaction was detected and the user interaction registered with the game title. In response to signals received from client devices, the cloud gaming site proactively identifies the data center where the game is hosted and sends a signal to the identified data center to direct the user interaction to the game title in which it was detected. Load the associated game. In some embodiments, multiple data centers may host the game. In such embodiments, the cloud gaming site determines the geographic location of the client device that originated the request, identifies a data center that is geographically proximate to the client device, and signals the data center to preload the game. Can be sent. The user's geographic location may be determined using a Global Positioning System (GPS) mechanism within the client device, the client's IP address, the client's ping information, to name a few. Of course, the above-described methods of detecting a user's geographic location may be exemplary, and other types of mechanisms or tools may be used to determine the user's geographic location. By identifying data centers that are close to client devices, the latency when users interact with the game can be minimized. In some embodiments, the identified data center may not have the necessary bandwidth/processing power to host the game, or may be overutilized. In these embodiments, the cloud gaming site may identify a second data center that is geographically proximate to the client device. Loading the game includes loading game code and running an instance of the game.

クラウドゲームサイトから信号を受信したことに応じて、識別されたデータセンタは、データセンタにおけるサーバを選択して、サーバ上でゲームをインスタンス化し得る。サーバは、利用可能なハードウェア/ソフトウェアの処理能力及びゲーム要件に基づいて選択される。サーバは、複数のゲームコンソールを含み得、サーバは、ゲームをロードするのに、複数のゲームコンソールのうちのどのゲームコンソールを使用するかを決定し得る。ゲームコンソールは、独立したゲームコンソールに類似し得る、またはラックマウントサーバもしくはブレードサーバであり得る。ブレードサーバは、次に、複数のサーバブレードを含み得、各ブレードは、ゲームなどの単一の専用アプリケーションをインスタンス化するのに必要な回路を有する。当然ながら、前述のゲームコンソールは例示であり、限定として見なされるべきではない。ゲームステーションなどを含む他の種類のゲームコンソール、及び他の形態のブレードサーバも、識別されたゲームをホストするために用いられてもよい。 In response to receiving the signal from the cloud gaming site, the identified data center may select a server at the data center to instantiate a game on the server. The server is selected based on available hardware/software processing power and game requirements. The server may include multiple game consoles, and the server may determine which of the multiple game consoles to use to load the game. The game console may resemble a freestanding game console, or may be a rack mount server or a blade server. A blade server, in turn, may include multiple server blades, each blade having the necessary circuitry to instantiate a single dedicated application, such as a game. Of course, the aforementioned game consoles are illustrative and should not be considered limiting. Other types of game consoles, including game stations and the like, and other forms of blade servers may also be used to host the identified games.

ゲームコンソールが識別されると、ゲームがインスタンス化されるゲームコンソールを識別するネットワークを介して、クラウドゲームサイトにより、ゲームの一般的なゲーム関連コードがゲームコンソールにロードされ、クライアントデバイスに信号が返される。このように、ロードされたゲームは、ユーザに利用可能となる。 Once the game console is identified, the cloud gaming site loads the game's general game-related code onto the game console and sends a signal back to the client device over the network that identifies the game console on which the game is instantiated. It will be done. In this way, the loaded game becomes available to the user.

図9Bは、本開示の実施態様による、クラウドビデオゲームをクライアントデバイスにストリーミングするために実行される様々な動作を概念的に示すフロー図である。ゲームシステム918は、ビデオゲームを実行し、生の(非圧縮の)ビデオ920及びオーディオ922を生成する。ビデオ920及びオーディオ922は、示される図の参照番号924に示されるように、ストリーミングのために取り込まれ符号化される。符号化により、ビデオ及びオーディオのストリームが圧縮され、帯域幅の使用量は軽減され、ゲーム体験は最適化され得る。符号化形式の例として、H.265/MPEG-H、H.264/MPEG-4、H.263/MPEG-4、H.262/MPEG-2、WMV、VP6/7/8/9などが挙げられる。 FIG. 9B is a flow diagram conceptually illustrating various operations performed to stream a cloud video game to a client device, according to embodiments of the present disclosure. Gaming system 918 runs video games and produces raw (uncompressed) video 920 and audio 922. Video 920 and audio 922 are captured and encoded for streaming, as indicated by reference numeral 924 in the diagram shown. Encoding compresses video and audio streams, reduces bandwidth usage, and can optimize the gaming experience. As an example of the encoding format, H. 265/MPEG-H, H. 264/MPEG-4, H.264/MPEG-4. 263/MPEG-4, H.263/MPEG-4. 262/MPEG-2, WMV, VP6/7/8/9, etc.

符号化されたオーディオ926及び符号化されたビデオ928はさらに、インターネットなどのネットワークを介して送信するために、参照番号932に示されるように、ネットワークパケットにパケット化される。ネットワークパケット符号化プロセスは、データ暗号化プロセスも採用し得るため、データセキュリティが強化される。例示の実施態様では、オーディオパケット934及びビデオパケット936は、参照番号940に示されるように、ネットワークを介して転送するために生成される。 Encoded audio 926 and encoded video 928 are further packetized into network packets, as shown at 932, for transmission over a network, such as the Internet. The network packet encoding process may also employ a data encryption process, thereby enhancing data security. In the exemplary implementation, audio packets 934 and video packets 936 are generated for transmission over the network, as shown at reference numeral 940.

ゲームシステム918はさらに、触覚フィードバックデータ930を生成し、これもネットワーク送信のためにネットワークパケットにパケット化される。例示の実施態様では、参照番号940でさらに示されるように、ネットワークを介して転送するために、触覚フィードバックパケット938が生成される。 Gaming system 918 further generates haptic feedback data 930, which is also packetized into network packets for network transmission. In the exemplary embodiment, a haptic feedback packet 938 is generated for transmission over the network, as further indicated by reference numeral 940.

生のビデオ及びオーディオ並びに触覚フィードバックデータを生成することと、ビデオ及びオーディオを符号化することと、符号化されたオーディオ/ビデオ及び触覚フィードバックデータを転送用にパケット化することとの前述の動作は、クラウドゲームサービス/システムを集合的に定義する1つ以上のサーバ上で実行される。参照番号940に示されるように、オーディオ、ビデオ、及び触覚フィードバックのパケットは、インターネットなどのネットワーク、及び/またはインターネットを含むネットワークを介して、転送される。参照番号942に示されるように、オーディオパケット934、ビデオパケット936、及び触覚フィードバックパケット938は、クライアントデバイスにより復号化/再構築され、クライアントデバイスにて、符号化されたオーディオ946、符号化されたビデオ948、及び触覚フィードバックデータ950が定義される。データが暗号化されている場合は、ネットワークパケットは暗号解読化も行われる。次に、符号化されたオーディオ946及び符号化されたビデオ948は、参照番号944に示されるように、クライアントデバイスにより復号化され、クライアント側の生のオーディオ及びビデオデータが生成され、ディスプレイデバイス952上にレンダリングされる。触覚フィードバックデータ950は、処理/通信され、触覚効果をレンダリングすることができるコントローラデバイス956または他のインターフェースデバイスにて、触覚フィードバック効果が生成され得る。触覚効果の一例として、コントローラデバイス956の振動またはランブルが挙げられる。 The aforementioned operations of generating raw video and audio and haptic feedback data, encoding the video and audio, and packetizing the encoded audio/video and haptic feedback data for transmission include: , run on one or more servers that collectively define a cloud gaming service/system. As shown at reference numeral 940, the audio, video, and haptic feedback packets are transferred over a network such as and/or including the Internet. As shown at reference numeral 942, audio packets 934, video packets 936, and haptic feedback packets 938 are decoded/reconstructed by the client device, and encoded audio 946, encoded Video 948 and haptic feedback data 950 are defined. If the data is encrypted, the network packet is also decrypted. Encoded audio 946 and encoded video 948 are then decoded by the client device, as shown at reference numeral 944, to produce client-side raw audio and video data and display device 952. rendered on top. Haptic feedback data 950 may be processed/communicated to generate haptic feedback effects at a controller device 956 or other interface device that may render haptic effects. An example of a haptic effect is vibration or rumble of the controller device 956.

ビデオゲームはユーザ入力に応答することから、ユーザ入力の送信及び処理に関しても、前述と同様の手順の流れを、クライアントデバイスからサーバへの逆方向で実行され得ることが、理解されよう。示されるように、コントローラデバイス956を操作するユーザは、入力データ958を生成し得る。この入力データ958は、ネットワークを介してクラウドゲームシステムに転送するために、クライアントデバイスでパケット化される。入力データパケット960は、クラウドゲームサーバにより復元及び再構築されて、サーバ側で入力データ962が定義される。入力データ962は、ゲームシステム918に供給され、ゲームシステム918は、入力データ962を処理して、ビデオゲームのゲーム状態を更新する。 Since video games are responsive to user input, it will be appreciated that a similar flow of procedures as described above may be performed in the reverse direction from the client device to the server with respect to the transmission and processing of user input. As shown, a user operating controller device 956 may generate input data 958. This input data 958 is packetized at the client device for transmission over the network to the cloud gaming system. Input data packets 960 are restored and reconstructed by the cloud game server to define input data 962 on the server side. Input data 962 is provided to gaming system 918, which processes input data 962 to update the game state of the video game.

オーディオパケット934、ビデオパケット936、及び触覚フィードバックパケット938の転送中(参照番号940)、クラウドゲームストリームのサービス品質を保証するために、ネットワークを介したデータの送信が監視され得る。例えば、参照番号964により示されるように、アップストリーム及びダウンストリームの両方のネットワーク帯域幅を含むネットワーク状態が監視され得、ゲームストリーミングは、利用可能な帯域幅の変化に応じて調整され得る。すなわち、参照番号966により示されるように、ネットワークパケットの符号化及び復号化は、現在のネットワーク状況に基づいて制御され得る。 During the transfer of audio packets 934, video packets 936, and haptic feedback packets 938 (reference numeral 940), the transmission of data over the network may be monitored to ensure quality of service of the cloud game stream. For example, as indicated by reference numeral 964, network conditions including both upstream and downstream network bandwidth may be monitored and game streaming may be adjusted in response to changes in available bandwidth. That is, as indicated by reference numeral 966, encoding and decoding of network packets may be controlled based on current network conditions.

図10は、情報サービスプロバイダアーキテクチャの実施形態を示す。情報サービスプロバイダ(ISP)1070は、ネットワーク1086を介して、地理的に分散し接続されたユーザ1082に多数の情報サービスを届ける。ISPは、株価の更新などの1種類のサービスのみ、または放送メディア、ニュース、スポーツ、ゲームなどの様々なサービスを届けることができる。さらに、各ISPにより提供されるサービスは動的であり得、すなわち、いつの時点でもサービスを追加する、または取り除くことができる。従って、特定の個人に特定の種類のサービスを提供するISPは、時間の経過と共に変わり得る。例えば、ユーザが地元にいる間は、ユーザの付近のISPによりユーザはサービスを受け得、ユーザが別の街に移動した場合は、別のISPによりユーザはサービスを受け得る。地元のISPは、必要な情報及びデータを新たなISPに転送し、これにより、ユーザ情報は新たな街までユーザを「追従」し、ユーザはデータにより近くなり、アクセスしやすくなる。別の実施形態では、ユーザの情報を管理するマスタISPと、マスタISPの制御下のユーザと直接インターフェースするサーバISPとの間に、マスタ‐サーバ関係が確立され得る。別の実施形態では、クライアントが世界中を移動すると、あるISPから別のISPにデータが転送され、これにより、ユーザにサービスを提供するのにより良い位置に存在するISPが、これらのサービスを届けるISPとなる。 FIG. 10 illustrates an embodiment of an information service provider architecture. An information service provider (ISP) 1070 delivers multiple information services to geographically dispersed and connected users 1082 via a network 1086. ISPs can deliver only one type of service, such as stock price updates, or a variety of services, such as broadcast media, news, sports, games, etc. Furthermore, the services provided by each ISP can be dynamic, ie, services can be added or removed at any time. Therefore, the ISP that provides a particular type of service to a particular individual may change over time. For example, the user may be served by an ISP near the user while in the user's hometown, and if the user moves to another city, the user may be served by another ISP. The local ISP transfers the necessary information and data to the new ISP, so that the user information "follows" the user to the new city, making the user closer to and more accessible to the data. In another embodiment, a master-server relationship may be established between a master ISP that manages information for users and a server ISP that directly interfaces with users under the control of the master ISP. In another embodiment, as a client moves around the world, data is transferred from one ISP to another, so that the ISP that is better positioned to serve the user can deliver those services. Becomes an ISP.

ISP1070は、ネットワークを介して顧客にコンピュータベースのサービスを提供するアプリケーションサービスプロバイダ(ASP)1072を含む。ASPモデルを使用して提供されるソフトウェアは、オンデマンドソフトウェアまたはソフトウエアアズアサービス(SaaS)と呼ばれることもある。特定のアプリケーションプログラム(顧客関係管理など)へのアクセスを提供する簡単な形式には、HTTPなどの標準プロトコルが使用される。アプリケーションソフトウェアは、ベンダのシステムに常駐し、HTMLを使用するウェブブラウザを介して、ベンダが提供する専用クライアントソフトウェアを介して、またはシンクライアントなどの他のリモートインターフェースを介して、ユーザによりアクセスされる。 ISP 1070 includes an application service provider (ASP) 1072 that provides computer-based services to customers over a network. Software provided using the ASP model is sometimes referred to as software on demand or software as a service (SaaS). A simple form of providing access to specific application programs (such as customer relationship management) uses standard protocols such as HTTP. The application software resides on the vendor's system and is accessed by the user through a web browser using HTML, through specialized client software provided by the vendor, or through other remote interfaces such as thin clients. .

広い地理的領域にわたって届けられるサービスは、多くの場合、クラウドコンピューティングを使用する。クラウドコンピューティングは、動的にスケーラブルであり、かつ多くの場合仮想化されたリソースがインターネット経由のサービスとして提供される、コンピューティング様式である。ユーザは、ユーザを支援する「クラウド」の技術インフラストラクチャの専門家である必要はない。クラウドコンピューティングは、Infrastructure as a Service(IaaS)、Platform as a Service(PaaS)、及びSoftware as a Service(SaaS)などの異なるサービスに分類され得る。クラウドコンピューティングサービスは、多くの場合、ウェブブラウザからアクセスされる共通のビジネスアプリケーションをオンラインで提供するが、ソフトウェア及びデータは、サーバ上に格納される。クラウドという用語は、コンピュータネットワーク図におけるインターネットの描かれ方に基づいて、(例えばサーバ、ストレージ、及びロジックを使用する)インターネットの隠喩として使用され、複雑なインフラストラクチャを隠し持つことの抽象的概念である。 Services that are delivered over large geographic areas often use cloud computing. Cloud computing is a computing modality in which dynamically scalable and often virtualized resources are provided as a service over the Internet. Users do not need to be experts in the "cloud" technology infrastructure that supports them. Cloud computing can be classified into different services such as Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS). Cloud computing services often provide common business applications online that are accessed from a web browser, but the software and data are stored on servers. The term cloud is used as a metaphor for the Internet (e.g., using servers, storage, and logic), based on how it is depicted in computer network diagrams, and is an abstract concept that hides complex infrastructure. .

さらに、ISP1070は、ゲームクライアントがシングル及びマルチプレーヤビデオゲームをプレイするために使用するゲーム処理サーバ(GPS)1074を含む。インターネット上でプレイされるほとんどのビデオゲームは、ゲームサーバへの接続を介して作動する。通常、ゲームは、プレーヤからデータを収集し、収集したデータを他のプレーヤに配信する専用サーバアプリケーションを使用する。これは、ピアツーピア構成よりも効率的かつ効果的であるが、サーバアプリケーションをホストするために別個のサーバが必要となる。別の実施形態では、GPSは、プレーヤ及びそれぞれのゲームプレイデバイスの間の通信を確立し、集中型GPSに依存せずに情報を交換する。 Additionally, ISP 1070 includes a game processing server (GPS) 1074 that game clients use to play single and multiplayer video games. Most video games played over the Internet operate through a connection to a game server. Typically, games use dedicated server applications that collect data from players and distribute the collected data to other players. This is more efficient and effective than a peer-to-peer configuration, but requires a separate server to host the server application. In another embodiment, the GPS establishes communications between the players and their respective gameplay devices to exchange information without relying on a centralized GPS.

専用GPSは、クライアントとは無関係に稼働するサーバである。このようなサーバは、通常、データセンタに配置された専用ハードウェア上で稼働し、より多くの帯域幅及び専用処理能力を提供する。専用サーバは、大抵のPCベースのマルチプレーヤゲームのゲームサーバをホストするのに、好ましい方法である。大規模なマルチプレーヤオンラインゲームは、ゲームタイトルを所有するソフトウェア会社が通常ホストする専用サーバ上で実行され、専用サーバがコンテンツを制御及び更新することを可能にする。 A dedicated GPS is a server that operates independently of the client. Such servers typically run on dedicated hardware located in data centers and provide more bandwidth and dedicated processing power. Dedicated servers are the preferred method for hosting game servers for most PC-based multiplayer games. Massively multiplayer online games run on dedicated servers, typically hosted by the software company that owns the game title, allowing the dedicated server to control and update the content.

放送処理サーバ(BPS)1076は、視聴者にオーディオまたはビデオ信号を配信する。非常に狭い範囲の視聴者への放送は、ナローキャスティングと呼ばれることもある。放送配信の最終工程は、聴取者または視聴者への信号の伝達方法であり、信号は、ラジオ局またはテレビ局の場合と同様にアンテナ及び受信機に地上波で伝達され得る、または局を介してケーブルテレビもしくはケーブルラジオ(もしくは「無線ケーブル」)を通じて、または直接ネットワークから、伝達され得る。インターネットはまた、特に信号及び帯域幅の共有を可能にするマルチキャストを用いて、ラジオまたはテレビを受信者に届け得る。歴史的に、放送は、全国放送または地域放送などの地理的領域により範囲が定められてきた。しかし、高速インターネットの普及に伴い、コンテンツは世界のほぼ全ての国に到達可能であるため、放送は地域によって定められない。 Broadcast processing server (BPS) 1076 delivers audio or video signals to viewers. Broadcasting to a very narrow audience is sometimes called narrowcasting. The final step in broadcast distribution is the method of transmitting the signal to the listener or viewer; the signal may be transmitted terrestrially to an antenna and receiver, as in the case of a radio or television station, or via a station. It may be transmitted through cable television or cable radio (or "over-the-air cable") or directly from a network. The Internet can also deliver radio or television to recipients, especially using multicast, which allows signal and bandwidth sharing. Historically, broadcasting has been scoped by geographic areas, such as national or regional broadcasts. However, with the spread of high-speed internet, content can reach almost every country in the world, so broadcasting is no longer defined by region.

ストレージサービスプロバイダ(SSP)1078は、コンピュータストレージ空間及び関連する管理サービスを提供する。SSPは、定期的なバックアップ及びアーカイブも提供する。ストレージをサービスとして提供することにより、ユーザは必要に応じてより多くのストレージを注文することができる。別の大きな利点として、SSPはバックアップサービスを含み、ユーザは、自分のコンピュータのハードドライブに障害が発生しても、自分の全てのデータを失うことはない。さらに、複数のSSPは、ユーザデータの全体的または部分的なコピーを有することができ、これにより、ユーザの位置またはデータアクセスに使用されるデバイスとは無関係に、ユーザは効率的な方法でデータにアクセスすることが可能となる。例えば、ユーザは、移動中に自宅のコンピュータ並びに携帯電話の中の個人ファイルにアクセスすることができる。 Storage service provider (SSP) 1078 provides computer storage space and related management services. SSP also provides regular backups and archives. By providing storage as a service, users can order more storage as needed. Another big advantage is that SSP includes a backup service so that users do not lose all their data if their computer's hard drive fails. Additionally, multiple SSPs may have full or partial copies of user data, allowing users to access data in an efficient manner, regardless of the user's location or the device used to access the data. It becomes possible to access. For example, users can access personal files on their home computers as well as mobile phones while on the move.

通信プロバイダ1080は、ユーザに接続性を提供する。通信プロバイダの一種として、インターネットへのアクセスを提供するインターネットサービスプロバイダ(ISP)が挙げられる。ISPは、ダイヤルアップ、DSL、ケーブルモデム、ファイバ、無線、または専用の高速相互接続など、インターネットプロトコルデータグラムの提供に好適なデータ伝送技術を使用して、顧客を接続する。通信プロバイダは、電子メール、インスタントメッセージ、及びSMSテキストなどのメッセージサービスも提供し得る。通信プロバイダの別の種類として、インターネットへの直接のバックボーンアクセスを提供することにより帯域幅またはネットワークアクセスを販売するネットワークサービスプロバイダ(NSP)が挙げられる。ネットワークサービスプロバイダは、電気通信会社、データ通信業者、無線通信プロバイダ、インターネットサービスプロバイダ、高速インターネットアクセスを提供するケーブルテレビ事業者などで構成され得る。 Communication provider 1080 provides connectivity to users. One type of communication provider is an Internet Service Provider (ISP), which provides access to the Internet. ISPs connect their customers using any data transmission technology suitable for providing Internet Protocol datagrams, such as dial-up, DSL, cable modem, fiber, wireless, or dedicated high-speed interconnects. Communications providers may also offer messaging services such as email, instant messaging, and SMS text. Another type of communications provider is a network service provider (NSP), which sells bandwidth or network access by providing direct backbone access to the Internet. Network service providers may consist of telecommunications companies, data carriers, wireless communication providers, Internet service providers, cable television operators that provide high-speed Internet access, and the like.

データ交換1088は、ISP1070内のいくつかのモジュールを相互接続し、これらのモジュールをネットワーク1086を介してユーザ1082に接続する。データ交換1088は、ISP1070の全てのモジュールが近接している小さな領域をカバーし得る、または様々なモジュールが地理的に分散している場合は、大きな地理的領域をカバーし得る。例えば、データ交換1088は、データセンタのキャビネット内に高速のギガビットイーサネット(登録商標)(もしくはさらに高速のもの)、または大陸間仮想エリアネットワーク(VLAN)を含み得る。 Data exchange 1088 interconnects several modules within ISP 1070 and connects these modules to users 1082 via network 1086. Data exchange 1088 may cover a small area where all modules of ISP 1070 are in close proximity, or it may cover a large geographic area if the various modules are geographically dispersed. For example, data exchange 1088 may include high speed Gigabit Ethernet (or even faster) or an intercontinental virtual area network (VLAN) within a data center cabinet.

ユーザ1082は、少なくともCPU、メモリ、ディスプレイ、及びI/Oを含むクライアントデバイス1084により、リモートサービスにアクセスする。クライアントデバイスは、PC、携帯電話、ネットブック、タブレット、ゲームシステム、PDAなどであり得る。一実施形態では、ISP1070は、クライアントが使用するデバイスの種類を認識し、採用する通信方法を調整する。他の事例では、クライアントデバイスは、HTMLなどの標準的な通信方法を使用して、ISP1070にアクセスする。 A user 1082 accesses remote services through a client device 1084 that includes at least a CPU, memory, display, and I/O. A client device can be a PC, mobile phone, netbook, tablet, gaming system, PDA, etc. In one embodiment, the ISP 1070 recognizes the type of device used by the client and adjusts the communication method employed. In other cases, client devices access ISP 1070 using standard communication methods such as HTML.

本開示の実施形態は、ハンドヘルドデバイス、マイクロプロセッサシステム、マイクロプロセッサベースのまたはプログラム可能な家庭用電化製品、小型コンピュータ、及びメインフレームコンピュータなどを含む様々なコンピュータシステム構成で実施され得る。本開示はまた、有線ベースネットワークまたは無線ネットワークを介してリンクされたリモート処理デバイスによりタスクが行われる分散型コンピューティング環境においても、実施することができる。 Embodiments of the present disclosure may be implemented in a variety of computer system configurations, including handheld devices, microprocessor systems, microprocessor-based or programmable consumer electronics, small computers, mainframe computers, and the like. The present disclosure can also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through wire-based or wireless networks.

前述の実施形態を考慮に入れて、本開示は、コンピュータシステムに格納されたデータを伴う様々なコンピュータ実施動作を採用し得ることを理解されたい。これらの動作は、物理量の物理的操作を要する動作である。本開示の一部を形成する本明細書で説明される動作のいずれも、有用なマシン動作である。本開示はまた、これらの動作を実行するためのデバイスまたは装置に関する。装置は、必要な目的のために特別に構築され得る、または装置は、コンピュータに格納されたコンピュータプログラムにより選択的に有効化または構成される汎用コンピュータであり得る。具体的には、様々な汎用マシンを、本明細書の教示に従って書かれたコンピュータプログラムと共に使用することができる、あるいは、必要な動作を実行するためにさらに特化した装置を構築するほうがより好都合であり得る。 In light of the foregoing embodiments, it should be understood that the present disclosure may employ various computer-implemented operations involving data stored on computer systems. These operations are operations that require physical manipulation of physical quantities. Any of the operations described herein that form part of this disclosure are useful machine operations. The present disclosure also relates to devices or apparatus for performing these operations. The device may be specially constructed for the required purpose, or the device may be a general purpose computer selectively enabled or configured by a computer program stored in the computer. In particular, various general purpose machines may be used with computer programs written in accordance with the teachings herein, or it may be more convenient to construct more specialized apparatus to perform the required operations. It can be.

本開示はまた、コンピュータ可読媒体上のコンピュータ可読コードとしても具現化することができる。あるいは、コンピュータ可読コードは、前述のデータ交換相互接続を使用して、サーバからダウンロードされ得る。コンピュータ可読媒体は、後でコンピュータシステムにより読み出され得るデータを格納できる任意のデータストレージデバイスである。コンピュータ可読媒体の例として、ハードドライブ、ネットワーク接続ストレージ(NAS)、読み出し専用メモリ、ランダムアクセスメモリ、CD-ROM、CD-R、CD-RW、磁気テープ、並びに他の光学及び非光学データストレージデバイスが挙げられる。コンピュータ可読媒体には、コンピュータ可読コードが分散方式で格納され実行されるように、ネットワーク接続されたコンピュータシステムにわたり分散されたコンピュータ可読有形媒体が含まれ得る。 The present disclosure may also be embodied as computer readable code on a computer readable medium. Alternatively, the computer readable code may be downloaded from the server using the data exchange interconnect described above. A computer-readable medium is any data storage device that can store data that can later be read by a computer system. Examples of computer-readable media include hard drives, network attached storage (NAS), read-only memory, random access memory, CD-ROM, CD-R, CD-RW, magnetic tape, and other optical and non-optical data storage devices. can be mentioned. Computer-readable media can include computer-readable tangible media that is distributed over a network-coupled computer system so that computer-readable code is stored and executed in a distributed manner.

方法動作は特定の順序で説明されたが、オーバーレイ動作の処理が所望のやり方で実行される限り、動作の合間に他の維持管理動作が実行されてもよく、または動作がわずかに異なる時間に起こるように調整されてもよく、またはシステム内に動作を分散することで、様々な処理関連間隔で処理動作が起こることを可能にしてもよいことを、理解されたい。 Although the method operations have been described in a particular order, other maintenance operations may be performed in between the operations, or the operations may be performed at slightly different times, as long as the processing of the overlay operations is performed in the desired manner. It should be appreciated that processing operations may be tailored to occur or may be distributed within the system to allow processing operations to occur at various processing-related intervals.

前述の開示は、理解を明確にするためにある程度詳細に説明されたが、添付の特許請求の範囲内で特定の変更及び修正を実施できることは明らかであろう。従って、本実施形態は、限定ではなく例示としてみなされるべきであり、本開示は、本明細書で提供される詳細に限定されるべきではなく、説明される実施形態の範囲内及び均等物内で変更されてもよい。 Although the foregoing disclosure has been described in some detail for clarity of understanding, it will be obvious that certain changes and modifications may be practiced within the scope of the appended claims. Accordingly, the present embodiments are to be regarded as illustrative rather than limiting, and the present disclosure is not to be limited to the details provided herein, but within the scope and equivalents of the described embodiments. may be changed.

Claims (7)

データチャネルの所有者に関連付けられた所有者デバイスからネットワークを介して、前記データチャネルの第1の暗号化されたチャネルキーを受信することであって、前記第1の暗号化されたチャネルキーは、前記データチャネルの前記所有者に関連付けられた公開キーで暗号化されたチャネルキーであり、前記チャネルキーは、前記データチャネルを介して共有されるコンテンツを暗号化するために使用される、前記受信することと、
前記所有者デバイスから前記ネットワークを介して、1つ以上の第2の暗号化されたチャネルキーを受信することであって、各第2の暗号化されたチャネルキーはそれぞれ、前記データチャネルの各参加者に関連付けられた公開キーで暗号化された前記チャネルキーである、前記受信することと、
前記第1の暗号化されたチャネルキー及び前記1つ以上の第2の暗号化されたチャネルキーをチャネルリストに記憶することと、
前記ネットワークを介して、前記データチャネルの各参加者にそれぞれ関連付けられた1つ以上の参加者デバイスに前記チャネルリストを配布することと、
を含む方法であって、
前記データチャネルを介した通信は、前記第1の暗号化されたチャネルキー、前記第2の暗号化されたチャネルキー、及び前記チャネルキーを使用して暗号化されたコンテンツを含む、
方法。
receiving a first encrypted channel key for the data channel over a network from an owner device associated with an owner of the data channel, the first encrypted channel key being , a channel key encrypted with a public key associated with the owner of the data channel, the channel key being used to encrypt content shared via the data channel; receiving and
receiving one or more second encrypted channel keys from the owner device via the network, each second encrypted channel key being a respective one of each of the data channels; the receiving, the channel key being encrypted with a public key associated with a participant;
storing the first encrypted channel key and the one or more second encrypted channel keys in a channel list;
distributing the channel list to one or more participant devices respectively associated with each participant of the data channel via the network;
A method comprising:
Communication via the data channel includes the first encrypted channel key, the second encrypted channel key, and content encrypted using the channel key.
Method.
前記データチャネルを介して前記所有者デバイスにより通信が受信されると、前記所有者に関連付けられた秘密キーを使用して、前記第1の暗号化されたチャネルキーから前記チャネルキーが復号化され、前記復号化されたチャネルキーをさらに使用して、前記通信の前記暗号化されたコンテンツが復号化される、請求項に記載の方法。 When a communication is received by the owner device over the data channel, the channel key is decrypted from the first encrypted channel key using a private key associated with the owner. , the decrypted channel key is further used to decrypt the encrypted content of the communication. 前記データチャネルを介して参加者デバイスにより通信が受信されると、前記参加者に関連付けられた秘密キーを使用して、第2の暗号化されたチャネルキーから前記チャネルキーが復号化され、前記復号化されたチャネルキーをさらに使用して、前記通信の前記暗号化されたコンテンツが復号化される、請求項に記載の方法。 When a communication is received by a participant device over the data channel, the channel key is decrypted from a second encrypted channel key using a private key associated with the participant; 2. The method of claim 1 , further comprising decrypting the encrypted content of the communication using a decrypted channel key. ネットワークを介して前記所有者デバイスから、前記データチャネルの第1の暗号化された第2のチャネルキーを受信することであって、前記第1の暗号化された第2のチャネルキーは、前記データチャネルの前記所有者に関連付けられた前記公開キーで暗号化された第2のチャネルキーであり、前記第2のチャネルキーは、前記参加者のうちの少なくとも1人を除外するように、前記データチャネルを介して共有されるコンテンツを暗号化するために使用される、前記受信することと、
前記ネットワークを介して前記所有者デバイスから、1つ以上の第2の暗号化された第2のチャネルキーを受信することであって、各第2の暗号化された第2のチャネルキーはそれぞれ、前記参加者のうちの1人の前記公開キーで暗号化された前記第2のチャネルキーであり、前記1つ以上の第2の暗号化された第2のチャネルキーには、前記参加者のうちの前記除外される少なくとも1人の前記公開キーで暗号化された前記第2のチャネルキーである第2の暗号化された第2のチャネルキーは含まれない、前記受信することと、
前記チャネルリストを更新して、前記第1の暗号化された第2のチャネルキー、及び前記1つ以上の第2の暗号化された第2のチャネルキーを含めることと、
前記ネットワークを介して、前記更新されたチャネルリストを前記参加者デバイスに配布することと、
をさらに含む、請求項に記載の方法。
receiving a first encrypted second channel key of the data channel from the owner device via a network, the first encrypted second channel key being the first encrypted second channel key of the data channel; a second channel key encrypted with the public key associated with the owner of the data channel, the second channel key configured to exclude at least one of the participants; said receiving is used to encrypt content shared via a data channel;
receiving one or more second encrypted second channel keys from the owner device via the network, each second encrypted second channel key having a respective , the second channel key encrypted with the public key of one of the participants, and the one or more second encrypted second channel keys include receiving a second encrypted second channel key that is the second channel key encrypted with the public key of the excluded at least one of;
updating the channel list to include the first encrypted second channel key and the one or more second encrypted second channel keys;
distributing the updated channel list to the participant devices via the network;
2. The method of claim 1 , further comprising:
前記データチャネルを介した追加の通信は、前記第1の暗号化された第2のチャネルキー、前記第2の暗号化された第2のチャネルキー、及び前記第2のチャネルキーを使用して暗号化されたコンテンツを含む、請求項に記載の方法。 Additional communication via the data channel uses the first encrypted second channel key, the second encrypted second channel key, and the second channel key. 5. The method of claim 4 , comprising encrypted content. 前記データチャネルを介した前記通信を記憶することと、
前記データチャネルを介した前記追加の通信を記憶することと、
をさらに含む、請求項に記載の方法。
storing the communication via the data channel;
storing the additional communication via the data channel;
6. The method of claim 5 , further comprising:
前記チャネルキーは、前記参加者のうちの前記除外される少なくとも1人が、前記記憶された通信の前記コンテンツにアクセスすることを可能にし、
前記第2のチャネルキーは、前記参加者のうちの前記除外される少なくとも1人が、前記記憶された追加の通信の前記コンテンツにアクセスすることを阻止する、請求項に記載の方法。
the channel key allows the excluded at least one of the participants to access the content of the stored communication;
7. The method of claim 6 , wherein the second channel key prevents the excluded at least one of the participants from accessing the content of the additional stored communications.
JP2021535712A 2018-12-20 2019-12-11 Secure data channel in network gaming systems Active JP7397082B2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/228,461 2018-12-20
US16/228,461 US11133932B2 (en) 2018-12-20 2018-12-20 Secure data channel in a networked gaming system
PCT/US2019/065825 WO2020131530A2 (en) 2018-12-20 2019-12-11 Secure data channel in a networked gaming system

Publications (2)

Publication Number Publication Date
JP2022514398A JP2022514398A (en) 2022-02-10
JP7397082B2 true JP7397082B2 (en) 2023-12-12

Family

ID=69174579

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021535712A Active JP7397082B2 (en) 2018-12-20 2019-12-11 Secure data channel in network gaming systems

Country Status (5)

Country Link
US (1) US11133932B2 (en)
EP (1) EP3897895A2 (en)
JP (1) JP7397082B2 (en)
CN (1) CN113423480A (en)
WO (1) WO2020131530A2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10958705B2 (en) * 2019-02-27 2021-03-23 Citrix Systems, Inc. Client computing device providing end-to-end quality of service (QoS) control for software as a service (SaaS) sessions and related methods
US20230246857A1 (en) * 2022-01-31 2023-08-03 Zoom Video Communications, Inc. Video messaging

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000134193A (en) 1998-10-29 2000-05-12 Fujitsu Ltd Security buildup method and system
JP2000196583A (en) 1998-12-28 2000-07-14 Mitsubishi Materials Corp Broadcast communication system
JP2004023237A (en) 2002-06-13 2004-01-22 Mitsubishi Electric Corp Encryption communication system, encryption communication method, and program for executing that method on computer
JP2005277806A (en) 2004-03-25 2005-10-06 Nec Corp Group communication system based on presence information, and client apparatus
JP2005346705A (en) 2004-05-11 2005-12-15 Microsoft Corp Multisensory emoticon in communication system
JP2006217446A (en) 2005-02-07 2006-08-17 Hitachi Software Eng Co Ltd Remote conference system
JP2008124689A (en) 2006-11-10 2008-05-29 Yamaha Corp Video conference apparatus and video conference system

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NO169209C (en) * 1989-12-22 1992-05-20 Alcatel Stk As PROCEDURE AND SYSTEM FOR ESTABLISHING CONFERENCE CONNECTION.
US6744894B1 (en) * 1994-04-01 2004-06-01 Mitsubishi Corporation Data management system
US7013389B1 (en) * 1999-09-29 2006-03-14 Cisco Technology, Inc. Method and apparatus for creating a secure communication channel among multiple event service nodes
AU2001257573A1 (en) * 2000-02-11 2001-08-20 Verimatrix, Inc. Web based human services conferencing network
US20020021804A1 (en) * 2000-02-18 2002-02-21 Ledzius Robert C. System and method for data encryption
US20030099360A1 (en) * 2001-11-28 2003-05-29 Khoi Hoang Time-based encryption key
JP2005268903A (en) * 2004-03-16 2005-09-29 Toshiba Corp Cryptographic key sharing device, cryptographic key sharing method, program, and communication equipment
US8266429B2 (en) * 2004-07-20 2012-09-11 Time Warner Cable, Inc. Technique for securely communicating and storing programming material in a trusted domain
US7596690B2 (en) * 2004-09-09 2009-09-29 International Business Machines Corporation Peer-to-peer communications
US20060159269A1 (en) * 2005-01-20 2006-07-20 Matsushita Electric Industrial Co., Ltd. Cryptographic system for resource starved CE device secure upgrade and re-configuration
JP4358239B2 (en) * 2007-01-10 2009-11-04 株式会社東芝 Content providing system, tracking system, content providing method, and unauthorized user identification method
CN101340443B (en) * 2008-08-28 2014-12-03 中国电信股份有限公司 Session key negotiating method, system and server in communication network
US8649515B1 (en) * 2010-02-08 2014-02-11 Trend Micro Incorporated Controlled sharing of media data that are retrievable over a public computer network
US8811616B2 (en) * 2010-04-12 2014-08-19 Flight Focus Pte. Ltd. Secure aircraft data channel communication for aircraft operations
US8954740B1 (en) * 2010-10-04 2015-02-10 Symantec Corporation Session key proxy decryption method to secure content in a one-to-many relationship
CA2813758C (en) * 2010-10-08 2023-01-03 Brian Lee Moffat Private data sharing system
US8958559B2 (en) * 2011-06-03 2015-02-17 Apple Inc. System and method for secure instant messaging
WO2013123548A2 (en) * 2012-02-20 2013-08-29 Lock Box Pty Ltd. Cryptographic method and system
US9697378B2 (en) * 2013-12-13 2017-07-04 International Business Machines Corporation Network encrypted data object stored on an encrypted file system
WO2015163736A1 (en) * 2014-04-25 2015-10-29 Samsung Electronics Co., Ltd. Methods of providing social network service and server performing the same
EP2937802B1 (en) * 2014-04-25 2021-03-24 Samsung Electronics Co., Ltd Mobile device and method of sharing content
GB2513260B (en) * 2014-06-27 2018-06-13 PQ Solutions Ltd System and method for quorum-based data recovery
US9130744B1 (en) * 2014-09-22 2015-09-08 Envelope, Llc Sending an encrypted key pair and a secret shared by two devices to a trusted intermediary
KR102395799B1 (en) * 2015-07-09 2022-05-10 삼성전자주식회사 Method and Apparatus for Supporting Secure Chat
US9843592B2 (en) * 2015-10-14 2017-12-12 Sony Interactive Entertainment America Llc Fast multicast messaging encryption and authentication
US10015150B2 (en) * 2015-10-15 2018-07-03 Pkware, Inc. Systems and methods for Smartkey information management
US10230702B1 (en) * 2016-08-15 2019-03-12 Bluerisc, Inc. Encrypting content and facilitating legal access to the encrypted content

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000134193A (en) 1998-10-29 2000-05-12 Fujitsu Ltd Security buildup method and system
JP2000196583A (en) 1998-12-28 2000-07-14 Mitsubishi Materials Corp Broadcast communication system
JP2004023237A (en) 2002-06-13 2004-01-22 Mitsubishi Electric Corp Encryption communication system, encryption communication method, and program for executing that method on computer
JP2005277806A (en) 2004-03-25 2005-10-06 Nec Corp Group communication system based on presence information, and client apparatus
JP2005346705A (en) 2004-05-11 2005-12-15 Microsoft Corp Multisensory emoticon in communication system
JP2006217446A (en) 2005-02-07 2006-08-17 Hitachi Software Eng Co Ltd Remote conference system
JP2008124689A (en) 2006-11-10 2008-05-29 Yamaha Corp Video conference apparatus and video conference system

Also Published As

Publication number Publication date
WO2020131530A2 (en) 2020-06-25
WO2020131530A3 (en) 2020-08-20
EP3897895A2 (en) 2021-10-27
US20200204368A1 (en) 2020-06-25
CN113423480A (en) 2021-09-21
JP2022514398A (en) 2022-02-10
US11133932B2 (en) 2021-09-28

Similar Documents

Publication Publication Date Title
KR102632062B1 (en) Anti-Fraud Cloud Gaming Blockchain
CN109906107B (en) Cloud game based on browser
US8291218B2 (en) Creating and using secure communications channels for virtual universes
JP6959925B2 (en) User-stored data management method in cloud gaming
US7464272B2 (en) Server control of peer to peer communications
AU2004201602B2 (en) Method and apparatus for associating game data
RU2419222C2 (en) Secured instant transfer of messages
US20100317430A1 (en) Discovery and Distribution of Game Session Information
US11497990B2 (en) Crowd sourced cloud gaming using peer-to-peer streaming
US20170034554A1 (en) Method of delivering and protecting media content
CN108667798A (en) A kind of method and system of virtual viewing
US20190012480A1 (en) Systems and Method for Retroactive Assignment of Personally Identifiable Information in Distribution of Digital Content
JP2022521012A (en) Transactional memory synchronization
US20140280727A1 (en) Venue-specific amusement device network
JP7397082B2 (en) Secure data channel in network gaming systems
WO2019061597A1 (en) Data processing method and server
US11917253B2 (en) System and method for facilitating a virtual screening
US20220286300A1 (en) Systems and methods to evaluate client device trust in a distributed computing system
Contributors DA 1.3–Advanced Application Requirements and User Behaviours

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210818

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220810

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220920

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20221220

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230125

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20230530

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231002

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20231012

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20231031

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231130

R150 Certificate of patent or registration of utility model

Ref document number: 7397082

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150