JP2014210126A - Information processing system, information processing devices, information processing program, and information processing method - Google Patents

Information processing system, information processing devices, information processing program, and information processing method Download PDF

Info

Publication number
JP2014210126A
JP2014210126A JP2013089051A JP2013089051A JP2014210126A JP 2014210126 A JP2014210126 A JP 2014210126A JP 2013089051 A JP2013089051 A JP 2013089051A JP 2013089051 A JP2013089051 A JP 2013089051A JP 2014210126 A JP2014210126 A JP 2014210126A
Authority
JP
Japan
Prior art keywords
information processing
processing apparatus
application program
unit
program
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.)
Pending
Application number
JP2013089051A
Other languages
Japanese (ja)
Inventor
佐々木 洋
Hiroshi Sasaki
佐々木  洋
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.)
Nintendo Co Ltd
Original Assignee
Nintendo Co Ltd
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 Nintendo Co Ltd filed Critical Nintendo Co Ltd
Priority to JP2013089051A priority Critical patent/JP2014210126A/en
Publication of JP2014210126A publication Critical patent/JP2014210126A/en
Pending legal-status Critical Current

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide an information processing system which enables a user to enjoy an exclusive content without using expensive dedicated machines.SOLUTION: An information processing system 10 comprises a first information processing device 12 and a versatile second information processing device 16. The first information processing device 12 does not have a display device or a function for executing an application program. The second information processing device is a smartphone, etc. and has a display device and a function for executing an application program. The first information processing device transmits an encrypted program in which an application program is encrypted with different encryption keys by block, to the second information processing device. The second information processing device emulates a hardware environment for executing the application program, decrypts the encryption of the encrypted program by block and executes the application program by block. In response to request from the second information processing device, the first information processing device transmits a decryption key for the block of which encryption is to be decrypted, to the second information processing device.

Description

この発明は情報処理システム、情報処理装置、情報処理プログラムおよび情報処理方法に関し、特にたとえば、汎用の他の情報処理装置と通信可能に接続される情報処理装置を含む、情報処理システム、その情報処理装置および情報処理プログラム並びに情報処理方法に関する。   The present invention relates to an information processing system, an information processing apparatus, an information processing program, and an information processing method, and in particular, an information processing system including an information processing apparatus that is communicably connected to another general information processing apparatus, and the information processing The present invention relates to an apparatus, an information processing program, and an information processing method.

この種の情報処理システムの一例が特許文献1に開示されている。この特許文献1のゲーム装置では、CPUは、着脱自在に接続されるカートリッジからゲームプログラムを読み込み、このゲームプログラムを実行して実行結果を表示装置に表示するようになっている。
特開2005−204755[A63F 13/00]
An example of this type of information processing system is disclosed in Patent Document 1. In the game device of Patent Document 1, the CPU reads a game program from a cartridge that is detachably connected, executes the game program, and displays the execution result on a display device.
JP-A-2005-204755 [A63F 13/00]

しかし、この背景技術では、ゲーム(ゲームプログラム)のようなコンテンツを楽しむためには、表示装置を搭載した高価な専用のゲーム機が必要であった。以下、ゲーム機のような専用の装置ないし機器で楽しむコンテンツを「専用コンテンツ」と呼ぶことにする。   However, in this background art, an expensive dedicated game machine equipped with a display device is necessary to enjoy content such as a game (game program). Hereinafter, content enjoyed by a dedicated device or device such as a game machine will be referred to as “dedicated content”.

それゆえに、この発明の主たる目的は、新規な、情報処理システム、情報処理装置、情報処理プログラムおよび情報処理方法を提供することである。   Therefore, a main object of the present invention is to provide a novel information processing system, information processing apparatus, information processing program, and information processing method.

また、この発明の他の目的は、高価な専用機を用いずに専用コンテンツを楽しむことができる、情報処理システム、情報処理装置、情報処理プログラムおよび情報処理方法を提供することである。   Another object of the present invention is to provide an information processing system, an information processing apparatus, an information processing program, and an information processing method that allow users to enjoy dedicated content without using an expensive dedicated machine.

第1の発明は、第1情報処理装置、および表示部を有する汎用の第2情報処理装置を含む情報処理システムである。たとえば、第2情報処理装置は、スマートフォンやタブレットPCのような情報処理装置ないし電子機器である。第1情報処理装置は、取得部とプログラム送信部を備える。取得部は、アプリケーションプログラムを取得する。プログラム送信部は、取得部によって取得されたアプリケーションプログラムを第2情報処理装置に送信する。第2情報処理装置は、エミュレータ部と表示制御部を備える。エミュレータ部は、アプリケーションプログラム用の環境を模倣し、プログラム送信部によって送信されたアプリケーションプログラムを、当該アプリケーションプログラムの処理機能を有しない第1情報処理装置に代って実行する。つまり、第2情報処理装置は、アプリケーションプログラムを実行可能な他の専用機のハードウェア環境をエミュレートし、当該アプリケーションプログラムを実行する。表示制御部は、エミュレータ部による実行結果を表示部に表示する。したがって、第1情報処理装置は、表示部を備えていなくてよい。   A first invention is an information processing system including a first information processing apparatus and a general-purpose second information processing apparatus having a display unit. For example, the second information processing apparatus is an information processing apparatus or electronic device such as a smartphone or a tablet PC. The first information processing apparatus includes an acquisition unit and a program transmission unit. The acquisition unit acquires an application program. The program transmission unit transmits the application program acquired by the acquisition unit to the second information processing apparatus. The second information processing apparatus includes an emulator unit and a display control unit. The emulator unit imitates the environment for the application program, and executes the application program transmitted by the program transmission unit on behalf of the first information processing apparatus that does not have the processing function of the application program. That is, the second information processing apparatus emulates the hardware environment of another dedicated machine that can execute the application program, and executes the application program. The display control unit displays the execution result of the emulator unit on the display unit. Therefore, the first information processing apparatus may not include a display unit.

第1の発明によれば、表示部を有する汎用の第2情報処理装置を用いるので、第1情報処理装置に表示装置を設ける必要がなく、第1情報処理装置の価格を出来る限り抑えることができる。   According to the first invention, since a general-purpose second information processing device having a display unit is used, it is not necessary to provide a display device in the first information processing device, and the price of the first information processing device can be suppressed as much as possible. it can.

また、第1情報処理装置がアプリケーションプログラムを取得して、このアプリケーションプログラムを実行可能な他の専用機をエミュレートする第2情報処理装置に送信するので、第2情報処理装置で実行されるアプリケーションプログラムが限定されず、第2情報処理装置を用いて他の専用機の専用コンテンツを楽しむことができる。   In addition, since the first information processing apparatus acquires the application program and transmits it to the second information processing apparatus that emulates another dedicated machine that can execute the application program, the application executed by the second information processing apparatus The program is not limited, and the second information processing apparatus can be used to enjoy dedicated content from other dedicated machines.

第2の発明は、第1の発明に従属し、情報処理システムは、アプリケーションプログラムを記憶する記憶媒体をさらに含む。第1情報処理装置は、記憶媒体に接続するための接続部をさらに備える。したがって、取得部は、記憶媒体からアプリケーションプログラムを取得する。たとえば、メモリカードやディスクのような外部記憶媒体からアプリケーションプログラムが取得される。   A second invention is dependent on the first invention, and the information processing system further includes a storage medium for storing the application program. The first information processing apparatus further includes a connection unit for connecting to the storage medium. Therefore, the acquisition unit acquires the application program from the storage medium. For example, an application program is acquired from an external storage medium such as a memory card or a disk.

第2の発明によれば、パッケージに収録された専用コンテンツを楽しむことができる。   According to the second invention, it is possible to enjoy the exclusive content recorded in the package.

第3の発明は、第1の発明に従属し、第2情報処理装置は、ネットワークと接続される通信部をさらに備える。したがって、取得部は、通信部によってネットワークから受信したアプリケーションプログラムを、第2情報処理装置から取得する。たとえば、インターネットのようなネットワークに接続し、所定のサーバからアプリケーションプログラムがダウンロードされる。   A third invention is dependent on the first invention, and the second information processing apparatus further includes a communication unit connected to the network. Therefore, the acquisition unit acquires the application program received from the network by the communication unit from the second information processing apparatus. For example, an application program is downloaded from a predetermined server by connecting to a network such as the Internet.

第3の発明によれば、ダウンロードされた専用コンテンツを楽しむことができる。   According to the third invention, the downloaded dedicated content can be enjoyed.

第4の発明は、第1ないし第3の発明のいずれかに従属し、第1情報処理装置は、アプリケーションプログラムを暗号化する暗号化部と、暗号化されたアプリケーションプログラムを解除する解除キーを生成する解除キー生成部と、解除キー生成部によって生成された解除キーを第2情報処理装置に送信する解除キー送信部をさらに備える。プログラム送信部は、暗号化部によって暗号化されたアプリケーションプログラムを第2情報処理装置に送信する。   A fourth invention is dependent on any one of the first to third inventions, and the first information processing apparatus has an encryption unit for encrypting the application program and a release key for releasing the encrypted application program. A release key generation unit for generating and a release key transmission unit for transmitting the release key generated by the release key generation unit to the second information processing apparatus are further provided. The program transmission unit transmits the application program encrypted by the encryption unit to the second information processing apparatus.

第4の発明によれば、暗号化したアプリケーションプログラムと、その暗号を解除する解除キーを第2情報処理装置に送信するので、第2情報処理装置においてユーザがアクセスできないセキュアな領域にプログラムを記憶するようにすれば、著作権により保護されるような専用コンテンツを適切に扱うことができる。   According to the fourth invention, since the encrypted application program and the release key for releasing the encryption are transmitted to the second information processing apparatus, the program is stored in a secure area that cannot be accessed by the user in the second information processing apparatus. By doing so, it is possible to appropriately handle dedicated content that is protected by copyright.

第5の発明は、第4の発明に従属し、解除キー送信部は、エミュレータ部においてアプリケーションプログラムを実行する場合に、解除キーを第2情報処理装置に送信する。   A fifth invention is dependent on the fourth invention, and the release key transmission unit transmits the release key to the second information processing apparatus when executing the application program in the emulator unit.

第5の発明によれば、アプリケーションを実行するような必要な時に解除キーを送信するので、それ以外で、暗号化されたアプリケーションプログラムと解除キーとが揃うことが無いため、不正にアプリケーションプログラムを取得する機会を出来る限り減らすことができる。   According to the fifth invention, the release key is transmitted when necessary to execute the application. Otherwise, the encrypted application program and the release key are not aligned. Opportunities to acquire can be reduced as much as possible.

第6の発明は、第4または第5の発明に従属し、暗号化部は、アプリケーションプログラムを、複数の部分の各々について互いに異なる解除キーで解除可能に暗号化し、解除キー生成部は、複数の部分の各々について互いに異なる複数の解除キーを生成する。   A sixth invention is dependent on the fourth or fifth invention, the encryption unit encrypts the application program so that the application program can be released with a different release key for each of the plurality of portions, and the release key generation unit includes a plurality of release key generation units. A plurality of different release keys are generated for each of the portions.

第6の発明によれば、セキュリティを向上させることができ、より適切に専用コンテンツを扱うことができる。   According to the sixth aspect, security can be improved and dedicated content can be handled more appropriately.

第7の発明は、第6の発明に従属し、解除キー送信部は、複数の解除キーを一部ずつ継続的に送信する。   A seventh invention is dependent on the sixth invention, and the release key transmitting unit continuously transmits a plurality of release keys part by part.

第7の発明によれば、一部ずつ解除キーを送信するので、第2情報処理装置側で解除キーを上書きするようにすれば、暗号化したアプリケーションプログラムとすべての解除キーとが揃うことを回避することができる。   According to the seventh aspect, since the release key is transmitted part by part, if the release key is overwritten on the second information processing apparatus side, the encrypted application program and all the release keys are aligned. It can be avoided.

第8の発明は、第4ないし第7の発明のいずれかに従属し、第2情報処理装置は、エミュレータ部によるアプリケーションプログラムの実行に応じた解除キーの要求を第1情報処理装置に対して行う解除キー要求部をさらに備える。解除キー送信部は、第2情報処理装置からの要求に応じて解除キーを送信する。たとえば、第2情報処理装置側で順次部分毎のアプリケーションプログラムを実行する場合において、必要になるタイミングで解除キーの送信が要求される。   An eighth invention is dependent on any one of the fourth to seventh inventions, and the second information processing device sends a request for a release key to the first information processing device according to execution of the application program by the emulator unit. A release key requesting unit is further provided. The release key transmission unit transmits a release key in response to a request from the second information processing apparatus. For example, when the application program for each part is sequentially executed on the second information processing apparatus side, transmission of a release key is requested at a necessary timing.

第8の発明によれば、必要に応じて解除キーを送信するので、解除キーが不正に取得されるのを防止できる。したがって、専用コンテンツを適切に扱うことができる。   According to the eighth aspect, since the release key is transmitted as necessary, it is possible to prevent the release key from being illegally acquired. Therefore, dedicated content can be handled appropriately.

第9の発明は、第4ないし第8の発明のいずれかに従属し、プログラム送信部は、解除キー送信部よりも通信速度が速い経路を用いて、暗号化されたアプリケーションプログラムを第2情報処理装置に送信する。つまり、データ量が多い暗号化されたアプリケーションプログラムについては、通信速度が速い経路が使用される。   A ninth invention is dependent on any one of the fourth to eighth inventions, and the program transmission unit uses the path having a higher communication speed than the release key transmission unit to transmit the encrypted application program to the second information. Send to processing device. That is, for an encrypted application program with a large amount of data, a path with a high communication speed is used.

第9の発明によれば、データの転送を高速に行うことができる。   According to the ninth aspect, data can be transferred at high speed.

第10の発明は、第4ないし第8の発明のいずれかに従属し、第1情報処理装置および第2情報処理装置は、有線および無線のそれぞれで通信可能に接続され、プログラム送信部は、暗号化されたアプリケーションプログラムを有線で第2情報処理装置に送信し、解除キー送信部は、解除キーを無線で第2情報処理装置に送信する。つまり、データ量の多いアプリケーションプログラムは、通信速度が無線に比べて速い有線で送信される。一方、データ量が比較的少ない解除キーのデータは、無線で送信される。   A tenth invention is dependent on any one of the fourth to eighth inventions, wherein the first information processing device and the second information processing device are connected to be communicable by wire and wireless, and the program transmission unit is The encrypted application program is transmitted to the second information processing device by wire, and the release key transmission unit wirelessly transmits the release key to the second information processing device. That is, an application program with a large amount of data is transmitted by wired communication whose communication speed is faster than wireless. On the other hand, release key data with a relatively small amount of data is transmitted wirelessly.

第10の発明によれば、データ量に応じて適切な方法で第2情報処理装置に暗号化されたアプリケーションプログラムおよび解除キーを送信することができる。   According to the tenth aspect, the encrypted application program and the release key can be transmitted to the second information processing apparatus by an appropriate method according to the data amount.

第11の発明は、第4ないし第10の発明のいずれかに従属し、エミュレータ部は、解除キー送信部からの解除キーを受信しなくなった場合に、アプリケーションプログラムの実行を停止する。たとえば、解除キーの送信を要求してから所定時間を経過しても解除キーを受信しない場合に、アプリケーションプログラムの実行が停止される。したがって、それ以降、解除キーの送信が要求されることがない。   An eleventh invention is dependent on any one of the fourth to tenth inventions, and the emulator unit stops execution of the application program when it no longer receives the release key from the release key transmission unit. For example, the execution of the application program is stopped when the release key is not received even after a predetermined time has elapsed since the request for the release key was sent. Accordingly, transmission of the release key is not requested thereafter.

第11の発明によれば、たとえば、解除キーが不正に取得されるような意図しない不正な行為を防止することができる。   According to the eleventh aspect of the present invention, for example, an unintended fraudulent act in which a release key is obtained illegally can be prevented.

第12の発明は、第8の発明に従属し、解除キー送信部は、第2情報処理装置からの要求が誤っている場合に、解除キーの送信を停止する。たとえば、第2情報処理装置は、必要な解除キーに関する情報とともに解除キーの送信を要求する。第1情報処理装置では、この解除キーに関する情報に誤りがある場合に、解除キーの送信を停止するのである。   A twelfth invention is according to the eighth invention, and the release key transmission unit stops the transmission of the release key when the request from the second information processing apparatus is incorrect. For example, the second information processing apparatus requests transmission of a release key together with information on a necessary release key. The first information processing apparatus stops the transmission of the release key when there is an error in the information regarding the release key.

第12の発明においても、第11の発明と同様に、意図しない不正な行為を防止することができる。   In the twelfth invention, similarly to the eleventh invention, unintentional fraudulent acts can be prevented.

第13の発明は、第4ないし第12の発明のいずれかに従属し、暗号化部は、第1情報処理装置に固有の識別情報を用いて、アプリケーションプログラムを暗号化する。   A thirteenth invention is dependent on any one of the fourth to twelfth inventions, and the encryption unit encrypts the application program by using identification information unique to the first information processing apparatus.

第13の発明によれば、第1情報処理装置に固有の識別情報を用いてアプリケーションプログラムを暗号化するので、この固有の識別情報が外部に漏れない限り、専用コンテンツを適切に扱うことができる。   According to the thirteenth aspect, since the application program is encrypted using the identification information unique to the first information processing apparatus, the dedicated content can be handled appropriately as long as this unique identification information does not leak outside. .

第14の発明は、第1ないし第13の発明のいずれかに従属し、第1情報処理装置は、操作入力部、および操作入力部からの操作データを第2情報処理装置に送信する操作データ送信部をさらに備える。   A fourteenth invention is dependent on any one of the first to thirteenth inventions, wherein the first information processing device transmits operation data from the operation input unit and the operation input unit to the second information processing device. A transmission unit is further provided.

第14の発明によれば、たとえば、第2情報処理装置が備えていないボタンやスイッチなどの操作手段を備える入力部を第1情報処理装置に設けることにより、操作性を向上することができる。   According to the fourteenth aspect, the operability can be improved by providing the first information processing apparatus with an input unit including operation means such as buttons and switches that are not provided in the second information processing apparatus.

第15の発明は、第1ないし第14の発明のいずれかに従属し、第2情報処理装置は、第1情報処理装置よりも高い処理能力を有している。たとえば、第2情報処理装置は、アプリケーションプログラムを実行する処理能力を有している。一方、第1情報処理装置は、アプリケーションプログラムを取得し、それを暗号化し、暗号化したアプリケーションプログラムを送信し、そして解除キーを送信するが、アプリケーションプログラムを実行する必要がない。したがって、第2情報処理装置は第1情報処理装置よりも高い処理能力を有する。   A fifteenth invention is dependent on any one of the first to fourteenth inventions, and the second information processing apparatus has a higher processing capability than the first information processing apparatus. For example, the second information processing apparatus has a processing capability for executing an application program. On the other hand, the first information processing apparatus acquires the application program, encrypts it, transmits the encrypted application program, and transmits the release key, but does not need to execute the application program. Therefore, the second information processing apparatus has a higher processing capability than the first information processing apparatus.

第15の発明によれば、第1情報処理装置は高い処理能力を有しなくてよいため、比較的安価な部品を使用して第1情報処理装置を構成することができる。   According to the fifteenth aspect, since the first information processing apparatus does not have to have high processing capability, the first information processing apparatus can be configured using relatively inexpensive parts.

第16の発明は、表示部と、アプリケーションプログラム用の環境を模倣し、情報処理装置から送信されたアプリケーションプログラムを、当該アプリケーションプログラムの処理機能を有しない当該情報処理装置に代って実行するエミュレータ部と、エミュレータ部による実行結果を表示部に表示する表示制御部を備える、汎用の他の情報処理装置と通信可能に接続される、情報処理装置であって、アプリケーションプログラムを取得する取得部と、取得部によって取得されたアプリケーションプログラムを他の情報処理装置に送信するプログラム送信部を備える、情報処理装置である。   According to a sixteenth aspect of the present invention, there is provided an emulator for imitating an environment for an application program and executing an application program transmitted from an information processing apparatus on behalf of the information processing apparatus not having the processing function of the application program An information processing device that is communicably connected to another general-purpose information processing device and includes a display control unit that displays an execution result of the emulator unit on the display unit, and an acquisition unit that acquires an application program The information processing apparatus includes a program transmission unit that transmits the application program acquired by the acquisition unit to another information processing apparatus.

第17の発明は、表示部と、アプリケーションプログラム用の環境を模倣し、情報処理装置から送信されたアプリケーションプログラムを、当該アプリケーションプログラムの処理機能を有しない当該情報処理装置に代って実行するエミュレータ部と、エミュレータ部による実行結果を表示部に表示する表示制御部を備える、汎用の他の情報処理装置と通信可能に接続される、情報処理装置で実行される情報処理プログラムであって、情報処理装置のコンピュータを、アプリケーションプログラムを取得する取得部と、取得部によって取得されたアプリケーションプログラムを他の情報処理装置に送信するプログラム送信部として機能させる、情報処理プログラムである。   According to a seventeenth aspect of the present invention, there is provided an emulator that imitates an environment for an application program and executes an application program transmitted from an information processing apparatus on behalf of the information processing apparatus that does not have the processing function of the application program. And an information processing program executed by the information processing apparatus, communicably connected to another general-purpose information processing apparatus, including a display control unit that displays the execution result of the emulator unit on the display unit, An information processing program that causes a computer of a processing device to function as an acquisition unit that acquires an application program and a program transmission unit that transmits the application program acquired by the acquisition unit to another information processing device.

第18の発明は、表示部と、アプリケーションプログラム用の環境を模倣し、情報処理装置から送信されたアプリケーションプログラムを、当該アプリケーションプログラムの処理機能を有しない当該情報処理装置に代って実行するエミュレータ部と、エミュレータ部による実行結果を表示部に表示する表示制御部を備える、汎用の他の情報処理装置と通信可能に接続される、情報処理装置の情報処理方法であって、情報処理装置のコンピュータは、(a)アプリケーションプログラムを取得し、そして(b)ステップ(a)において取得したアプリケーションプログラムを他の情報処理装置に送信する、情報処理方法である。   An eighteenth invention imitates an environment for a display unit and an application program, and executes an application program transmitted from the information processing apparatus on behalf of the information processing apparatus that does not have the processing function of the application program And an information processing method of the information processing apparatus connected to the other general-purpose information processing apparatus in a communicable manner, including a display control unit that displays the execution result of the emulator unit on the display unit. The computer is an information processing method in which (a) an application program is acquired, and (b) the application program acquired in step (a) is transmitted to another information processing apparatus.

第16ないし第18の発明においても、第1の発明と同様に、情報処理装置の価格を出来る限り抑えることができ、他の情報処理装置を用いて他の専用機の専用コンテンツを楽しむことができる。   In the sixteenth to eighteenth inventions, similarly to the first invention, the price of the information processing apparatus can be suppressed as much as possible, and the dedicated contents of other dedicated machines can be enjoyed using other information processing apparatuses. it can.

この発明によれば、表示部を有する汎用の第2情報処理装置を用いるので、第1情報処理装置に表示装置を設ける必要がなく、第1情報処理装置の価格を出来る限り抑えることができる。   According to the present invention, since the general-purpose second information processing apparatus having the display unit is used, it is not necessary to provide a display apparatus in the first information processing apparatus, and the price of the first information processing apparatus can be suppressed as much as possible.

また、第1情報処理装置がアプリケーションプログラムを取得して、このアプリケーションプログラムを実行可能な他の専用機をエミュレートする第2情報処理装置に送信するので、第2情報処理装置で実行されるアプリケーションプログラムが限定されず、第2情報処理装置を用いて他の専用機の専用コンテンツを楽しむことができる。   In addition, since the first information processing apparatus acquires the application program and transmits it to the second information processing apparatus that emulates another dedicated machine that can execute the application program, the application executed by the second information processing apparatus The program is not limited, and the second information processing apparatus can be used to enjoy dedicated content from other dedicated machines.

この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。   The above object, other objects, features and advantages of the present invention will become more apparent from the following detailed description of embodiments with reference to the drawings.

図1はこの発明の一実施例である情報処理システムの電気的な構成を示すブロック図である。FIG. 1 is a block diagram showing an electrical configuration of an information processing system according to an embodiment of the present invention. 図2は情報処理システムのメモリカードに内蔵されるROMのプログラム記憶領域を概念的に示す図である。FIG. 2 is a diagram conceptually showing the program storage area of the ROM built in the memory card of the information processing system. 図3は図1に示す第1情報処理装置に内蔵されるRAMのメモリマップの一例を示す図解図である。FIG. 3 is an illustrative view showing one example of a memory map of a RAM built in the first information processing apparatus shown in FIG. 図4は図1に示す第2情報処理装置に内蔵されるRAMのメモリマップの一例を示す図解図である。FIG. 4 is an illustrative view showing one example of a memory map of a RAM built in the second information processing apparatus shown in FIG. 図5は図1に示す第1情報処理装置に内蔵されるCPUの情報処理を示すフロー図である。FIG. 5 is a flowchart showing the information processing of the CPU built in the first information processing apparatus shown in FIG. 図6は図1に示す第2情報処理装置に内蔵されるCPUの情報処理の一部を示すフロー図である。FIG. 6 is a flowchart showing a part of the information processing of the CPU built in the second information processing apparatus shown in FIG. 図7は図1に示す第2情報処理装置に内蔵されるCPUの情報処理の他の一部であって、図6に後続するフロー図である。FIG. 7 is another part of the information processing of the CPU built in the second information processing apparatus shown in FIG. 1, and is a flowchart subsequent to FIG.

図1を参照して、この発明の一実施例である情報処理システム10は、第1情報処理装置12、メモリカード14および第2情報処理装置16を含む。第1情報処理装置12と第2情報処理装置16は、ケーブル18によって接続される。つまり、第1情報処理装置12と第2情報処理装置16とは、有線で通信可能に接続される。   Referring to FIG. 1, an information processing system 10 according to an embodiment of the present invention includes a first information processing device 12, a memory card 14, and a second information processing device 16. The first information processing device 12 and the second information processing device 16 are connected by a cable 18. That is, the first information processing apparatus 12 and the second information processing apparatus 16 are connected so as to be communicable with each other by wire.

第1情報処理装置12は、CPU20を含み、CPU20は内部バス22を介して、RAM24、ROM26、無線モジュール28、インターフェイス回路(I/F回路)30およびコネクタ32に接続される。また、I/F回路30には、コントローラ34およびUSBコネクタ36が接続される。   The first information processing apparatus 12 includes a CPU 20, and the CPU 20 is connected to a RAM 24, a ROM 26, a wireless module 28, an interface circuit (I / F circuit) 30 and a connector 32 via an internal bus 22. In addition, a controller 34 and a USB connector 36 are connected to the I / F circuit 30.

CPU20は、第1情報処理装置12の全体制御を司る。RAM24は、CPU20のバッファ領域ないしワーキング領域として使用される。ROM26は、この第1情報処理装置12を動作させるためのプログラムを記憶したり、所定のデータを記憶したりする。所定のデータとしては、第1情報処理装置12に割り当てられた固有の識別情報(装置ID)のデータなどが該当する。   The CPU 20 governs overall control of the first information processing apparatus 12. The RAM 24 is used as a buffer area or working area for the CPU 20. The ROM 26 stores a program for operating the first information processing apparatus 12 and stores predetermined data. The predetermined data corresponds to data of unique identification information (device ID) assigned to the first information processing device 12.

無線モジュール28は、他の情報処理装置やコンピュータなどと通信可能に接続したり、無線LANに接続したりする機能を有する。無線モジュール28としては、たとえば、無線LAN(Wi−Fi)モジュールやBluetooth(登録商標)モジュールを用いることができる。   The wireless module 28 has a function of being communicably connected to other information processing apparatuses and computers, or connected to a wireless LAN. As the wireless module 28, for example, a wireless LAN (Wi-Fi) module or a Bluetooth (registered trademark) module can be used.

コントローラ34は、十字キー、アナログジョイスティック、操作ボタンなどを備える入力手段である。コントローラ34は、第1情報処理装置12本体とは別体で構成し、第1情報処理装置12とケーブル等によって連結してよい。または、第1情報処理装置12の筐体に上記のキーやボタン等を設けて第1情報処理装置12とコントローラ34を一体型にしてもよい。   The controller 34 is input means including a cross key, an analog joystick, an operation button, and the like. The controller 34 may be configured separately from the main body of the first information processing apparatus 12 and connected to the first information processing apparatus 12 by a cable or the like. Alternatively, the first information processing apparatus 12 and the controller 34 may be integrated by providing the above-described keys, buttons, and the like in the casing of the first information processing apparatus 12.

コントローラ34からの操作データは、I/F回路30および内部バス22を介してCPU20に入力される。USBコネクタ36から入力される各種のデータもまた、I/F回路30および内部バス22を介してCPU20に入力される。一方、CPU20は、RAM24に記憶されたデータを、内部バス22およびI/F回路30を介してUSBコネクタ36から出力する。また、コネクタ32には、メモリカード14が着脱自在に接続される。   Operation data from the controller 34 is input to the CPU 20 via the I / F circuit 30 and the internal bus 22. Various data input from the USB connector 36 are also input to the CPU 20 via the I / F circuit 30 and the internal bus 22. On the other hand, the CPU 20 outputs the data stored in the RAM 24 from the USB connector 36 via the internal bus 22 and the I / F circuit 30. The memory card 14 is detachably connected to the connector 32.

メモリカード14は、ROM14aおよびRAM14bを含み、図示は省略するが、ROM14aおよびRAM14bは、互いにバスで接続され、さらに、コネクタ32と接合されるコネクタ(図示せず)に接続される。したがって、上述したように、メモリカード14が第1情報処理装置12に装着されると、CPU20は、ROM14aおよびRAM14bにアクセス可能となる。   The memory card 14 includes a ROM 14a and a RAM 14b. Although not shown, the ROM 14a and the RAM 14b are connected to each other via a bus and further connected to a connector (not shown) joined to the connector 32. Therefore, as described above, when the memory card 14 is attached to the first information processing apparatus 12, the CPU 20 can access the ROM 14a and the RAM 14b.

ROM14aは、第2情報処理装置16で実行すべきアプリケーション(たとえば、ゲーム)のためのアプリケーションプログラム、画像(たとえば、キャラクタ画像、オブジェクト画像、背景画像、アイテム画像など)データおよび音(たとえば、効果音や音楽)のデータ(音データ)等を予め記憶する。RAM(バックアップRAM)14bは、セーブデータを保存する。   The ROM 14a stores application programs for applications (for example, games) to be executed by the second information processing device 16, image (for example, character images, object images, background images, item images, etc.) data and sounds (for example, sound effects). And music) data (sound data) and the like are stored in advance. The RAM (backup RAM) 14b stores save data.

次に、第2情報処理装置16の電気的な構成について説明するが、第1情報処理装置12で説明したコンポーネントと同じコンポーネントについては重複する説明を省略する。   Next, although the electrical configuration of the second information processing device 16 will be described, redundant description of the same components as those described in the first information processing device 12 will be omitted.

第2情報処理装置16は、CPU50a、GPU、VRAM(Video RAM)およびDSPなどで構成されたSoC(System-on-a-Chip)50を含む。SoC50には、内部バス52を介して、RAM54、セキュアメモリ56、LCD58、I/F回路60および無線モジュール62が接続される。また、I/F回路60には、入力装置64およびUSBコネクタ66が接続される。   The second information processing device 16 includes a SoC (System-on-a-Chip) 50 configured by a CPU 50a, a GPU, a VRAM (Video RAM), a DSP, and the like. A RAM 54, a secure memory 56, an LCD 58, an I / F circuit 60, and a wireless module 62 are connected to the SoC 50 via an internal bus 52. An input device 64 and a USB connector 66 are connected to the I / F circuit 60.

第2情報処理装置16としては、汎用の情報処理装置、たとえば、スマートフォンやタブレットPCを用いることができる。ただし、図1では、汎用の情報処理装置に設けられるコンポーネントのうち、この実施例で必要なコンポーネントのみを示してある。   As the second information processing device 16, a general-purpose information processing device such as a smartphone or a tablet PC can be used. However, FIG. 1 shows only components necessary in this embodiment among components provided in a general-purpose information processing apparatus.

セキュアメモリ56は、ユーザの操作によってアクセスできないメモリであり、たとえば、著作権により保護されるコンテンツ(ゲームなどの所定のアプリケーション)についてのデータを記憶する。LCD58は、CPU50aの指示の下、VRAMに保持された画像データに対応する画像を表示する。たとえば、CPU50aが実行するアプリケーションプログラムの処理結果についての画像が表示される。無線モジュール62は、無線モジュール28と同様であるが、無線モジュール28と同じ通信方式が採用される。したがって、第1情報処理装置12と第2情報処理装置16とは、無線でも通信可能に接続される。たとえば、この実施例では、無線モジュール(28、62)は、IEEE802.11bの規格のモジュールが使用され、最大の通信速度は22(Mbps)である。   The secure memory 56 is a memory that cannot be accessed by a user operation, and stores, for example, data about content (a predetermined application such as a game) protected by copyright. The LCD 58 displays an image corresponding to the image data held in the VRAM under the instruction of the CPU 50a. For example, an image about the processing result of the application program executed by the CPU 50a is displayed. The wireless module 62 is the same as the wireless module 28, but the same communication method as the wireless module 28 is adopted. Therefore, the first information processing device 12 and the second information processing device 16 are connected so as to be communicable even by radio. For example, in this embodiment, IEEE802.11b standard modules are used for the wireless modules (28, 62), and the maximum communication speed is 22 (Mbps).

入力装置64は、操作ボタンおよびタッチパネルのような入力手段である。ただし、タッチパネルは、LCD58の表示面上に配置される。入力装置64から入力される操作データおよび座標データは、I/F回路60を介してSoC50(CPU50a)に与えられる。また、USBコネクタ36とUSBコネクタ66とが上述したケーブル18で接続される。したがって、第1情報処理装置12と第2情報処理装置16との間で、ケーブル18を介してデータの送受信が可能である。たとえば、この実施例では、USB2.0の規格に従うコネクタ(36、66)およびケーブル18が使用され、最大の通信速度は480(Mbps)である。したがって、無線モジュール(22、62)を用いた無線通信よりも、ケーブル18を有線通信の方が通信速度が高速である。   The input device 64 is input means such as operation buttons and a touch panel. However, the touch panel is disposed on the display surface of the LCD 58. Operation data and coordinate data input from the input device 64 are provided to the SoC 50 (CPU 50a) via the I / F circuit 60. Further, the USB connector 36 and the USB connector 66 are connected by the cable 18 described above. Therefore, data can be transmitted and received between the first information processing apparatus 12 and the second information processing apparatus 16 via the cable 18. For example, in this embodiment, connectors (36, 66) and a cable 18 conforming to the USB 2.0 standard are used, and the maximum communication speed is 480 (Mbps). Therefore, the communication speed of the cable 18 is higher than that of the wireless communication using the wireless modules (22, 62).

一般的には、ゲームソフトなどのアプリケーションプログラムが記憶されたメモリカードは、専用のゲーム機に装着され、実行される。このような専用のゲーム機では、LCDのような表示装置を備えるため、高価になってしまう。また、スマートフォンやタブレットPCのように、表示装置を備える情報処理装置の普及が進んでいる。   Generally, a memory card that stores application programs such as game software is mounted on a dedicated game machine and executed. Such a dedicated game machine is expensive because it includes a display device such as an LCD. In addition, information processing apparatuses including a display device such as smartphones and tablet PCs are becoming popular.

そこで、この実施例の情報処理システム10では、スマートフォンやタブレットPCに代表される汎用の情報処理装置(第2情報処理装置16)の表示装置を利用することにより、メモリカードのような外部記憶媒体に記憶された専用コンテンツ(アプリケーションプログラム)を安価な情報処理装置(第1情報処理装置12)を用いて、楽しめるようにした。   Therefore, in the information processing system 10 of this embodiment, an external storage medium such as a memory card is used by using a display device of a general-purpose information processing device (second information processing device 16) represented by a smartphone or a tablet PC. The dedicated content (application program) stored in the information processing apparatus can be enjoyed using an inexpensive information processing apparatus (first information processing apparatus 12).

簡単に説明すると、第1情報処理装置12は、ゲーム画面のような画像を表示するための表示装置を有しておらず、後述するように、汎用の第2情報処理装置16に比べてCPU(20)の処理能力が低い。この第1情報処理装置12は、自身に装着されたメモリカード14からアプリケーションプログラムを取得し、第2情報処理装置16に送信する。第2情報処理装置16は、メモリカード14に記憶されたアプリケーションプログラムを実行可能なハードウェア環境にエミュレートされ、この第2情報処理装置16でアプリケーションプログラムが実行される。ただし、第2情報処理装置16では、ゲームのようなアプリケーションを操作するのに十分な入力装置64を備えていない場合がある。このため、上記のようなコントローラ34を第1情報処理装置12に備えるようにしてある。   Briefly, the first information processing device 12 does not have a display device for displaying an image such as a game screen, and as will be described later, the first information processing device 12 is more CPU-intensive than the general-purpose second information processing device 16. The processing capacity of (20) is low. The first information processing apparatus 12 acquires an application program from the memory card 14 attached to the first information processing apparatus 12 and transmits the application program to the second information processing apparatus 16. The second information processing device 16 is emulated in a hardware environment that can execute the application program stored in the memory card 14, and the application program is executed by the second information processing device 16. However, the second information processing device 16 may not include the input device 64 sufficient to operate an application such as a game. For this reason, the controller 34 as described above is provided in the first information processing apparatus 12.

このように、メモリカード14から取得したアプリケーションプログラムを第2情報処理装置16で実行するため、著作権等で保護されるべきアプリケーションプログラムを適切に取り扱う必要がある。このため、この実施例では、アプリケーションプログラムを暗号化し、暗号化されたアプリケーションプログラム(以下、「暗号化プログラム」と呼ぶ。)をユーザの操作によってアクセスできないセキュアな領域(セキュアメモリ56)に記憶するようにしてある。   As described above, since the application program acquired from the memory card 14 is executed by the second information processing apparatus 16, it is necessary to appropriately handle the application program to be protected by copyright or the like. Therefore, in this embodiment, the application program is encrypted, and the encrypted application program (hereinafter referred to as “encrypted program”) is stored in a secure area (secure memory 56) that cannot be accessed by a user operation. It is like that.

さらに、暗号化プログラムの暗号を解除(暗号化プログラムを復号)した場合に、アプリケーションプログラムのすべてがRAM54に展開されてしまうと、当該アプリケーションプログラムを不正に取得される恐れがある。このため、第1情報処理装置12では、アプリケーションプログラムを複数の部分に分けて、部分毎に互いに異なる暗号キーで暗号化を施し、第2情報処理装置16では、暗号化されたアプリケーションプログラムを部分毎に読み出して暗号を解除し、暗号を解除した部分について実行するようしてある。   Further, when the encryption of the encryption program is released (decryption of the encryption program), if all of the application program is expanded in the RAM 54, the application program may be illegally acquired. For this reason, the first information processing apparatus 12 divides the application program into a plurality of parts and performs encryption with different encryption keys for each part, and the second information processing apparatus 16 converts the encrypted application program into parts. Each time it is read out, the encryption is canceled, and the decrypted portion is executed.

図2は、図1に示すメモリカード14に内蔵されるROM14aのプログラム記憶領域を概念的に示す図である。このROM14aのプログラム記憶領域には、ゲームソフトなどの所定のアプリケーションプログラムが記憶される。この実施例では、アプリケーションプログラムを暗号化して、第2情報処理装置16に送信するが、セキュリティを確保するために、上述したように、アプリケーションプログラムをROM14aのアドレスに従ってブロックに分割し、分割されたブロック毎に暗号化するようにしてある。以下、ブロック毎のアプリケーションプログラムを「部分プログラム」と呼ぶことにする。   FIG. 2 is a diagram conceptually showing a program storage area of ROM 14a built in memory card 14 shown in FIG. A predetermined application program such as game software is stored in the program storage area of the ROM 14a. In this embodiment, the application program is encrypted and transmitted to the second information processing device 16, but as described above, the application program is divided into blocks according to the address of the ROM 14a and divided. Encryption is performed for each block. Hereinafter, the application program for each block is referred to as a “partial program”.

図2に示すように、ROM14aのプログラム記憶領域は、複数のブロック(この実施例では、n個のブロック)に分割される。たとえば、第1ブロックはアドレス“000000”−“1FFFFF”であり、第2ブロックはアドレス“200000”−“3FFFFF”であり、第3ブロックはアドレス“400000”−“5FFFFF”であり、第4ブロックはアドレス“600000”−“7FFFFF”であり、途中を省略して、第nブロックはアドレス“E00000”−“FFFFFF”である。このように、図2に示す例では、各ブロックのデータ量が同じになるように複数のブロックに分割してあるが、これに限定される必要はない。アプリケーションプログラムの構成によって、ブロックの分け方は様々である。   As shown in FIG. 2, the program storage area of the ROM 14a is divided into a plurality of blocks (in this embodiment, n blocks). For example, the first block has addresses “000000”-“1FFFFF”, the second block has addresses “200000”-“3FFFFF”, the third block has addresses “400000”-“5FFFFF”, and the fourth block The address is “600000” − “7FFFFF”, the middle is omitted, and the nth block is the address “E00000” − “FFFFFF”. As described above, in the example illustrated in FIG. 2, each block is divided into a plurality of blocks so that the data amount is the same. However, the present invention is not limited to this. There are various ways of dividing blocks depending on the configuration of the application program.

この実施例では、各ブロックの部分プログラムは、互いに異なる解除キー(復号キー)で暗号を解除(平文化)可能に暗号化される。暗号化方式は、共通鍵暗号方式や公開鍵暗号方式のような一般的な方式を採用することができる。ただし、この実施例では、第1情報処理装置12の固有情報と各ブロックの固有情報を用いて、暗号キーと解除キーが生成される。たとえば、第1情報処理装置12の固有情報はROM26に記憶された装置IDまたは/および無線モジュール28のMACアドレスである。また、各ブロックの固有情報は、各ブロックの先頭アドレスまたは/および末尾アドレスである。ただし、各ブロックの固有情報は、別途割り当てるようにしてもよい。   In this embodiment, the partial program of each block is encrypted with a different release key (decryption key) so that the encryption can be released (plain culture). As the encryption method, a general method such as a common key encryption method or a public key encryption method can be adopted. However, in this embodiment, the encryption key and the release key are generated using the unique information of the first information processing apparatus 12 and the unique information of each block. For example, the unique information of the first information processing device 12 is the device ID stored in the ROM 26 and / or the MAC address of the wireless module 28. Further, the unique information of each block is a head address or / and a tail address of each block. However, the unique information of each block may be assigned separately.

ブロック毎に異なる暗号キーで暗号化された部分プログラム(以下、「暗号化部分プログラム」と呼ぶ。)は、内部バス22、I/F回路30、USBコネクタ36およびケーブル18を介して第2情報処理装置16に送信される。第2情報処理装置16では、暗号化プログラムが受信されると、この暗号化プログラムは、USBコネクタ66、I/F回路60および内部バス52を介してSoC50(CPU50a)に与えられる。CPU50aは、内部バス52を介して、暗号化プログラムをセキュアメモリ56に記憶する。   The partial program encrypted with a different encryption key for each block (hereinafter referred to as “encrypted partial program”) is stored in the second information via the internal bus 22, I / F circuit 30, USB connector 36 and cable 18. It is transmitted to the processing device 16. When the second information processing apparatus 16 receives the encryption program, the encryption program is given to the SoC 50 (CPU 50a) via the USB connector 66, the I / F circuit 60, and the internal bus 52. The CPU 50 a stores the encrypted program in the secure memory 56 via the internal bus 52.

第2情報処理装置16では、ユーザの操作に従ってエミュレーションプログラムが実行され、これに対応するアプリケーションプログラム(たとえば、ゲームプログラム)を実行可能な他の専用機(たとえば、専用のゲーム機)をエミュレートして、当該他の専用機のアプリケーションプログラムを、第2情報処理装置16上でエミュレーション実行する。つまり、他の専用機をエミュレートして、エミュレートした仮想のハードウェア上でアプリケーションプログラムが実行される。このように、アプリケーションプログラムを実行する機能を有していない第1情報処理装置12に代って第2情報処理装置16が当該アプリケーションプログラムを実行する。   The second information processing device 16 executes an emulation program in accordance with a user operation, and emulates another dedicated machine (for example, a dedicated game machine) that can execute an application program (for example, a game program) corresponding thereto. Then, the application program of the other dedicated machine is emulated on the second information processing apparatus 16. In other words, another dedicated machine is emulated, and the application program is executed on the emulated virtual hardware. In this way, the second information processing apparatus 16 executes the application program in place of the first information processing apparatus 12 that does not have the function of executing the application program.

ただし、エミュレーションプログラムは、アプリケーションプログラム毎に生成される。たとえば、第2情報処理装置16が所定のサーバにアクセスすることにより、エミュレーションプログラムはダウンロードされる。また、エミュレーションプログラムは、アプリケーションプログラムとともに、メモリカード14に記憶されてもよい。かかる場合には、第1情報処理装置12は、アプリケーションプログラムの送信に先だって、エミュレーションプログラムを第2情報処理装置16に送信する。   However, the emulation program is generated for each application program. For example, the emulation program is downloaded when the second information processing apparatus 16 accesses a predetermined server. The emulation program may be stored in the memory card 14 together with the application program. In such a case, the first information processing apparatus 12 transmits the emulation program to the second information processing apparatus 16 prior to transmission of the application program.

アプリケーションプログラムの実行中では、第1情報処理装置12は、第2情報処理装置16からの要求に応じて、要求のあったブロックの暗号化部分プログラムの暗号を解除する解除キーを当該第2情報処理装置16に送信する。   During the execution of the application program, the first information processing apparatus 12 receives the release key for releasing the encryption of the encrypted partial program of the requested block in response to the request from the second information processing apparatus 16. Transmit to the processing device 16.

たとえば、第2情報処理装置16では、第1ブロックから順番に部分プログラムが実行され、第1ブロックについての部分プログラムの実行が終了されると、次のブロック(第2ブロック)の部分プログラムが実行される。ただし、部分プログラムは暗号化されているため、当該部分プログラムの実行に先立って、該当する暗号化部分プログラムの暗号が解除される。   For example, in the second information processing device 16, the partial program is executed in order from the first block, and when the execution of the partial program for the first block is finished, the partial program of the next block (second block) is executed. Is done. However, since the partial program is encrypted, the encryption of the corresponding encrypted partial program is released prior to the execution of the partial program.

具体的には、第2情報処理装置16では、次に処理するべきブロックの暗号化部分プログラムがセキュアメモリ56から読み込まれ、RAM54に書き込まれる。このとき、そのブロックの暗号化部分プログラムの暗号を解除する解除キーの送信が第1情報処理装置12に要求される。つまり、そのブロックの先頭アドレスを処理するべきアドレス(処理アドレス)として指定した解除キーの送信が要求される。これに応じて、第1情報処理装置12から送信された解除キーのデータ(解除キーデータ)が第2情報処理装置16で受信され、この解除キーを用いてセキュアメモリ56から読み込まれた暗号化部分プログラムの暗号が解除され、RAM54に書き込まれる。そして、暗号が解除された部分プログラムが実行される。   Specifically, in the second information processing device 16, the encrypted partial program of the block to be processed next is read from the secure memory 56 and written to the RAM 54. At this time, the first information processing apparatus 12 is requested to transmit a release key for releasing the encryption of the encrypted partial program of the block. That is, transmission of a release key designated as an address (processing address) for processing the head address of the block is requested. In response to this, the release key data (release key data) transmitted from the first information processing device 12 is received by the second information processing device 16, and the encryption read from the secure memory 56 using the release key. The encryption of the partial program is released and written to the RAM 54. Then, the partial program that has been decrypted is executed.

このような処理が繰り返され、最後のブロック(この実施例では、第nブロック)まで部分プログラムが順次実行される。したがって、第1情報処理装置12では、第2情報処理装置16からの要求がある度に、複数の解除キーに対応する解除キーデータを一部ずつ継続的に送信する。   Such processing is repeated, and partial programs are sequentially executed up to the last block (in this embodiment, the nth block). Therefore, the first information processing apparatus 12 continuously transmits partly release key data corresponding to a plurality of release keys every time there is a request from the second information processing apparatus 16.

ただし、この実施例では、第2情報処理装置16から指定された処理アドレスが、第1情報処理装置12が想定していないアドレスの場合には、第1情報処理装置12は、要求に誤りがあると判断して、解除キーデータの送信を止める。   However, in this embodiment, when the processing address specified by the second information processing device 16 is an address that the first information processing device 12 does not assume, the first information processing device 12 makes an error in the request. It is judged that there is, and transmission of the release key data is stopped.

また、第2情報処理装置16では、解除キーを要求してから所定時間(たとえば、数十フレーム)を経過しても第1情報処理装置12からの解除キーデータを受信しない場合には、エミュレートを止める。つまり、エミュレーションプログラムの実行が中断される。ただし、フレームは、画面更新の単位時間(1/60秒)である。   Further, the second information processing device 16 does not receive the release key data from the first information processing device 12 even after a predetermined time (for example, several tens of frames) has elapsed since the request for the release key. Stop the rate. That is, the execution of the emulation program is interrupted. However, the frame is a unit time (1/60 seconds) for screen update.

このように、第2情報処理装置16側で、解除キーの送信を要求してから所定時間を経過しても解除キーデータを受信しない場合にエミュレートを止めるようにするのは、解除キーを不正に得ようとしているなどの意図しない行為が行われている可能性があるからである。   In this way, the second information processing device 16 side stops the emulation when the release key data is not received even after a predetermined time has elapsed after requesting the transmission of the release key. This is because there is a possibility that an unintentional act such as an attempt to obtain fraud is performed.

また、上述したように、第1情報処理装置12側で、要求に誤りがあると判断した場合に解除キーデータの送信を止めるのは、不正なプログラムが実行されているなどの意図しない行為が行われている可能性があるからである。かかる場合には、結果として、第2情報処理装置16側でエミュレートが止められる。   Further, as described above, when the first information processing apparatus 12 determines that there is an error in the request, the transmission of the release key data is stopped by an unintentional action such as an unauthorized program being executed. This is because it may be done. In such a case, as a result, the emulation is stopped on the second information processing apparatus 16 side.

ただし、解除キーの要求や解除キーデータは、無線モジュール(28、62)を用いて送受信される。また、詳細な説明は省略するが、アプリケーションプログラムの実行中では、コントローラ34から入力された操作データも、無線モジュール(28、62)を用いて送受信される。   However, the release key request and release key data are transmitted and received using the wireless modules (28, 62). Although detailed description is omitted, during the execution of the application program, the operation data input from the controller 34 is also transmitted and received using the wireless modules (28, 62).

このように、解除キーの要求、解除キーデータおよび操作データを、無線モジュール(28、62)を用いて送受信するので、暗号化プログラムを送受信した後において、ケーブル18を取り外し、第1情報処理装置12と第2情報処理装置16を無線通信させることができる。   As described above, since the request for the release key, the release key data, and the operation data are transmitted and received using the wireless modules (28, 62), the cable 18 is removed after the encryption program is transmitted and received, and the first information processing apparatus 12 and the second information processing apparatus 16 can communicate with each other wirelessly.

暗号化プログラムも無線モジュール(28、62)を用いて送受信することは可能であるが、データ量が多いため、ケーブル18を介して高速に送受信するようにしてある。一方、解除キーの要求、解除キーデータおよび操作データは、データ量が少なく、通信速度が遅い経路を使用しても支障がないため、操作性を重視して、無線で送受信するようにしてある。つまり、ケーブル18を外しことにより、第1情報処理装置12ないしコントローラ34の可動範囲が大きくなり、操作性が向上される。   The encryption program can also be transmitted / received using the wireless modules (28, 62). However, since the data amount is large, the encryption program is transmitted / received via the cable 18 at high speed. On the other hand, the release key request, release key data, and operation data are transmitted and received wirelessly with an emphasis on operability because there is no problem in using a route with a small data amount and a low communication speed. . That is, by removing the cable 18, the movable range of the first information processing device 12 or the controller 34 is increased, and the operability is improved.

図3は、図1に示す第1情報処理装置12に内蔵されるRAM24のメモリマップ100の一例を示す。図3に示すように、RAM24は、プログラム記憶領域102およびデータ記憶領域104を含む。   FIG. 3 shows an example of the memory map 100 of the RAM 24 built in the first information processing apparatus 12 shown in FIG. As shown in FIG. 3, the RAM 24 includes a program storage area 102 and a data storage area 104.

プログラム記憶領域102には、ROM26から読み込まれた情報処理プログラムが記憶され、この情報処理プログラムは、メイン処理プログラム102a、通信プログラム102b、取得プログラム102c、キー生成プログラム102dおよび暗号化プログラム102eなどを含む。   The program storage area 102 stores an information processing program read from the ROM 26. The information processing program includes a main processing program 102a, a communication program 102b, an acquisition program 102c, a key generation program 102d, an encryption program 102e, and the like. .

メイン処理プログラム102aは、第1情報処理装置12の情報処理のメインルーチンを処理するためのプログラムである。通信プログラム102bは、USBコネクタ36または無線モジュール28を用いて、他の情報処理装置(この実施例では、第2情報処理装置16)やコンピュータと通信したり、無線LANに接続したりするためのプログラムである。取得プログラム102cは、アプリケーションプログラムを取得するためのプログラムである。この実施例では、第1情報処理装置12に装着されたメモリカード14からアプリケーションプログラムを取得する。   The main processing program 102 a is a program for processing a main routine of information processing of the first information processing apparatus 12. The communication program 102b uses the USB connector 36 or the wireless module 28 to communicate with another information processing apparatus (in this embodiment, the second information processing apparatus 16) or a computer, or to connect to a wireless LAN. It is a program. The acquisition program 102c is a program for acquiring an application program. In this embodiment, the application program is acquired from the memory card 14 attached to the first information processing apparatus 12.

キー生成プログラム102dは、取得したアプリケーションプログラムをブロック毎に暗号化するための暗号キーと、暗号化されたブロック毎の暗号化部分プログラムの暗号を解除するための解除キー(復号キー)を生成するためのプログラムである。上述したように、ブロック毎に異なる解除キーを生成する必要があるため、キーの生成には、第1情報処理装置12の固有情報のみならず、ブロックの固有情報も用いられる。   The key generation program 102d generates an encryption key for encrypting the acquired application program for each block and a release key (decryption key) for releasing the encryption of the encrypted partial program for each encrypted block. It is a program for. As described above, since it is necessary to generate a different release key for each block, not only the unique information of the first information processing apparatus 12 but also the unique information of the block is used for generating the key.

暗号化プログラム102eは、キー生成プログラム102dに従って生成された暗号キーを用いてブロック毎の部分プログラムを暗号化するためのプログラムである。   The encryption program 102e is a program for encrypting a partial program for each block using an encryption key generated according to the key generation program 102d.

データ記憶領域104には、暗号化プログラムデータ104aおよび解除キーデータ104bが記憶される。暗号化プログラムデータ104aは、暗号化プログラム102eに従ってブロック毎に暗号化された部分プログラム、すなわち暗号化部分プログラムについてのデータである。この暗号化プログラム102eには、アプリケーションプログラムを構成するすべての部分プログラムに対応する暗号化部分プログラムが含まれる。   The data storage area 104 stores encrypted program data 104a and release key data 104b. The encrypted program data 104a is a partial program encrypted for each block in accordance with the encrypted program 102e, that is, data on the encrypted partial program. The encryption program 102e includes encrypted partial programs corresponding to all partial programs constituting the application program.

解除キーデータ104bは、キー生成プログラム102dに従って生成された解除キーについてのデータである。上述したように、アプリケーションプログラムは、ブロック毎に暗号化されるため、解除キーデータ104bには、ブロック毎の暗号化部分プログラムの暗号を解除する解除キーのデータが含まれる。   The release key data 104b is data on the release key generated according to the key generation program 102d. As described above, since the application program is encrypted for each block, the release key data 104b includes release key data for releasing the encryption of the encrypted partial program for each block.

図4には、図1に示した第2情報処理装置16に内蔵されるRAM54のメモリマップ200の一例を示す。図4に示すように、RAM54は、プログラム記憶領域202およびデータ記憶領域204を含む。   FIG. 4 shows an example of the memory map 200 of the RAM 54 built in the second information processing apparatus 16 shown in FIG. As shown in FIG. 4, the RAM 54 includes a program storage area 202 and a data storage area 204.

プログラム記憶領域202には、第2情報処理装置16の情報処理プログラムを記憶し、情報処理プログラムは、メイン処理プログラム202a、通信プログラム202b、エミュレーションプログラム202c、解除プログラム202dおよび部分プログラム202eなどを含む。   The program storage area 202 stores an information processing program of the second information processing apparatus 16, and the information processing program includes a main processing program 202a, a communication program 202b, an emulation program 202c, a cancellation program 202d, a partial program 202e, and the like.

メイン処理プログラム202aは、第2情報処理装置16の情報処理のメインルーチンを処理するためのプログラムである。通信プログラム202bは、USBコネクタ66または無線モジュール62を用いて、他の情報処理装置(この実施例では、第1情報処理装置12)やコンピュータと通信したり、無線LANに接続したりするためのプログラムである。エミュレーションプログラム202cは、アプリケーションプログラム(セキュアメモリ56に記憶されたすべての暗号化部分プログラムに対応するアプリケーションプログラム)を実行可能な他の専用機(たとえば、専用のゲーム機)のハードウェア環境をエミュレートするためのプログラムである。解除プログラム202dは、解除キーを用いて暗号化プログラムの暗号を解除するためのプログラムである。部分プログラム202eは、解除キーで暗号を解除されたアプリケーションプログラムの一部についてのプログラムである。この実施例では、ブロック毎に暗号化部分プログラムの暗号が解除され、プログラム記憶領域202に書き込まれるときに、先のブロックの部分プログラムに上書きされる。   The main processing program 202a is a program for processing a main routine of information processing of the second information processing device 16. The communication program 202b uses the USB connector 66 or the wireless module 62 to communicate with another information processing apparatus (the first information processing apparatus 12 in this embodiment) or a computer, or to connect to a wireless LAN. It is a program. The emulation program 202c emulates the hardware environment of another dedicated machine (for example, a dedicated game machine) capable of executing an application program (an application program corresponding to all encrypted partial programs stored in the secure memory 56). It is a program to do. The cancellation program 202d is a program for canceling the encryption of the encryption program using the cancellation key. The partial program 202e is a program for a part of the application program that has been decrypted with the release key. In this embodiment, when the encrypted partial program is decrypted for each block and written to the program storage area 202, the partial program of the previous block is overwritten.

このように、今回暗号化を解除された部分プログラムは、先のブロックの部分プログラムに上書きされるので、同時にすべての部分プログラムがRAM54に記憶されることがない。したがって、セキュリティを確保することができる。ただし、RAM54にすべての部分プログラムを記憶したとしても、アプリケーションの終了と同時にそれらのすべてを消去するようにすれば、同様にセキュリティを確保することができる。   In this way, the partial program that has been decrypted this time is overwritten on the partial program of the previous block, so that all the partial programs are not stored in the RAM 54 at the same time. Therefore, security can be ensured. However, even if all the partial programs are stored in the RAM 54, the security can be similarly secured by deleting all of them at the same time as the end of the application.

なお、図示は省略するが、第2情報処理装置16としてスマートフォンを使用する場合には、電話機能、スケジュール機能、アラーム機能などの様々な機能に応じたプログラムも記憶される。   In addition, although illustration is abbreviate | omitted, when using a smart phone as the 2nd information processing apparatus 16, the program according to various functions, such as a telephone function, a schedule function, an alarm function, is also memorize | stored.

データ記憶領域204には、解除キーデータ204aが記憶される。解除キーデータ204aは第1情報処理装置12から送信され、新しい解除キーデータ204aを受信すると、先の解除キーデータ204aに上書きされる。   In the data storage area 204, release key data 204a is stored. The release key data 204a is transmitted from the first information processing apparatus 12, and when new release key data 204a is received, the previous release key data 204a is overwritten.

具体的には、第1情報処理装置12のCPU20が図5に示す情報処理を実行することにより、アプリケーションプログラムが取得され、アプリケーションプログラムがブロック毎に暗号化され、暗号化プログラムおよび解除キーが第2情報処理装置16に送信される。一方、第2情報処理装置16のCPU50aが図6および図7に示す情報処理を実行することにより、暗号化プログラムが受信され、解除キーの送信が要求され、解除キーが受信され、暗号化プログラムの暗号が解除される。   Specifically, when the CPU 20 of the first information processing apparatus 12 executes the information processing shown in FIG. 5, the application program is acquired, the application program is encrypted for each block, and the encryption program and the release key are set to the first. 2 is transmitted to the information processing device 16. On the other hand, when the CPU 50a of the second information processing device 16 executes the information processing shown in FIGS. 6 and 7, the encryption program is received, the release key is requested to be transmitted, the release key is received, and the encryption program is received. Is decrypted.

図示は省略するが、エミュレートされた第2情報処理装置16でアプリケーションプログラムが実行されている場合に、コントローラ34が操作されると、第1情報処理装置12の無線モジュール28から操作データが出力される。操作データは、第2情報処理装置16の無線モジュール62で受信され、CPU50aに与えられる。したがって、コントローラ34からの操作データに従ってアプリケーションの処理が変化される。ただし、第2情報処理装置16もまた、入力装置64を備えるため、入力装置64から操作データが入力されることもある。   Although illustration is omitted, operation data is output from the wireless module 28 of the first information processing device 12 when the controller 34 is operated when the application program is being executed by the emulated second information processing device 16. Is done. The operation data is received by the wireless module 62 of the second information processing apparatus 16 and given to the CPU 50a. Accordingly, the processing of the application is changed according to the operation data from the controller 34. However, since the second information processing device 16 also includes the input device 64, operation data may be input from the input device 64.

たとえば、第1情報処理装置12の主電源がオンされると、CPU20は、図5に示すように、情報処理を開始し、ステップS1で、アプリケーションプログラムをメモリカード14に内蔵されたROM14aから取得する。続くステップS3では、暗号キーおよび解除キーを生成する。上述したように、第1情報処理装置12の固有情報と各ブロックの固有情報を用いて、ブロック毎の暗号キーと解除キーが生成される。   For example, when the main power supply of the first information processing apparatus 12 is turned on, the CPU 20 starts information processing as shown in FIG. 5, and acquires the application program from the ROM 14a built in the memory card 14 in step S1. To do. In the subsequent step S3, an encryption key and a release key are generated. As described above, the encryption key and the release key for each block are generated using the unique information of the first information processing apparatus 12 and the unique information of each block.

次のステップS5では、取得したアプリケーションプログラムをブロック毎に暗号化する。ここでは、各ブロックの部分プログラムは、各ブロックに対応して生成された暗号キーを用いて暗号化される。続いて、ステップS7で、暗号化プログラムを第2情報処理装置16に送信する。つまり、CPU20は、内部バス22、I/F回路30を介してUSBコネクタ36にすべての暗号化部分プログラムを出力する。ここでは、第1情報処理装置12と第2情報処理装置16とがケーブル18で接続されていることを前提して説明してあるが、ケーブル18で接続されていない場合には、警告ランプを点灯したり、警告音を出力したり、それらの両方を行ったりしてよい。この場合には、第1情報処理装置12に、警告ランプのような表示器を設けたり、スピーカを設けたりすればよい。   In the next step S5, the acquired application program is encrypted for each block. Here, the partial program of each block is encrypted using the encryption key generated corresponding to each block. Subsequently, the encryption program is transmitted to the second information processing device 16 in step S7. That is, the CPU 20 outputs all encrypted partial programs to the USB connector 36 via the internal bus 22 and the I / F circuit 30. Here, the first information processing apparatus 12 and the second information processing apparatus 16 have been described on the assumption that they are connected by the cable 18, but if they are not connected by the cable 18, a warning lamp is displayed. It may turn on, output a warning sound, or both. In this case, the first information processing apparatus 12 may be provided with a display such as a warning lamp or a speaker.

次のステップS9では、第2情報処理装置16から解除キーの要求があるかどうかを判断する。つまり、CPU20は、解除キーの送信タイミングであるかどうかを判断する。ステップS9で“NO”であれば、つまり解除キーの要求が無ければ、そのままステップS9に戻る。ここでは、ステップS9で“NO”であれば、そのまま同じステップS9に戻るようにしてあるが、所定時間を超えて、解除キーの要求が無い場合には、情報処理を終了するようにしてもよい。   In the next step S9, it is determined whether or not there is a request for a release key from the second information processing device 16. That is, the CPU 20 determines whether it is the transmission timing of the release key. If “NO” in the step S9, that is, if there is no request for a release key, the process returns to the step S9 as it is. Here, if “NO” in the step S9, the process returns to the same step S9 as it is. However, if there is no request for a release key after a predetermined time, the information processing may be ended. Good.

一方、ステップS9で“YES”であれば、つまり解除キーの要求が有れば、ステップS11で、その要求に含まれる処理アドレスが期待する処理アドレスであるかどうかを判断する。つまり、処理アドレスが、次のブロックの先頭アドレスを示すかどうかを判断する。ステップS11で“NO”であれば、つまり処理アドレスが期待するものでなければ、エミュレートを終了させるべく、そのまま情報処理を終了する。一方、ステップS11で“YES”であれば、つまり処理アドレスが期待するものであれば、ステップS13で、処理アドレスに応じた解除キーを第2情報処理装置16に送信する。つまり、次のブロックについての解除キーが送信される。   On the other hand, if “YES” in the step S9, that is, if there is a request for a release key, it is determined whether or not the processing address included in the request is an expected processing address in a step S11. That is, it is determined whether or not the processing address indicates the head address of the next block. If “NO” in the step S11, that is, if the processing address is not expected, the information processing is ended as it is to end the emulation. On the other hand, if “YES” in the step S11, that is, if the processing address is expected, a release key corresponding to the processing address is transmitted to the second information processing apparatus 16 in a step S13. That is, the release key for the next block is transmitted.

そして、ステップS15で、すべての解除キーを送信したかどうかを判断する。ステップS15で“NO”であれば、つまり送信していない解除キーがあれば、ステップS9に戻る。一方、ステップS15で“YES”であれば、つまりすべての解除キーを送信すれば、情報処理を終了する。   In step S15, it is determined whether all the release keys have been transmitted. If “NO” in the step S15, that is, if there is a release key that has not been transmitted, the process returns to the step S9. On the other hand, if “YES” in the step S15, that is, if all the release keys are transmitted, the information processing is ended.

このように、第1情報処理装置では、アプリケーションプログラムを取得し、暗号化して、暗号化プログラム、解除キーデータおよび操作データを送信するだけであり、アプリケーションプログラムを実行する能力を必要としないため、CPU20の処理能力は第2情報処理装置のCPU50aに比べて低くてよい。したがって、比較的安価な部品で第1情報処理装置12を構成することができる。   As described above, the first information processing apparatus only acquires the application program, encrypts it, and transmits the encryption program, the release key data, and the operation data, and does not need the ability to execute the application program. The processing capability of the CPU 20 may be lower than the CPU 50a of the second information processing apparatus. Therefore, the first information processing apparatus 12 can be configured with relatively inexpensive parts.

また、第2情報処理装置16では、ユーザの指示に従ってエミュレーションプログラム202cが実行されると、CPU50aは、図6に示すように、情報処理を開始し、ステップS31で、暗号化プログラムを受信したかどうかを判断する。ステップS31で“NO”であれば、つまり暗号化プログラムを受信していなければ、そのまま同じステップS31に戻る。ただし、所定時間を超えて暗号化プログラムを受信しない場合には、ケーブル18が接続されていないなどの障害が発生している可能性があるため、かかる場合には、LCD58に警告メッセージを表示したり、警告音をスピーカ(図示せず)から出力したり、それらの両方を行ったりする。   In the second information processing apparatus 16, when the emulation program 202c is executed according to the user's instruction, the CPU 50a starts information processing as shown in FIG. 6, and whether the encryption program is received in step S31. Judge whether. If “NO” in the step S31, that is, if the encryption program is not received, the process returns to the same step S31 as it is. However, if the encryption program is not received after a predetermined time, there may be a failure such as the cable 18 not being connected. In such a case, a warning message is displayed on the LCD 58. Or a warning sound is output from a speaker (not shown), or both of them are performed.

なお、図示は省略するが、CPU50aは、図6および図7に示す情報処理と並行してエミュレーションプログラムおよびアプリケーションプログラムを実行する。ただし、アプリケーションプログラムは、部分プログラム毎に実行される。   Although illustration is omitted, the CPU 50a executes an emulation program and an application program in parallel with the information processing shown in FIGS. However, the application program is executed for each partial program.

一方、ステップS31で“YES”であれば、つまり暗号化プログラムを受信すれば、ステップS33で、受信した暗号化プログラムをセキュアメモリ56に記憶する。そして、ステップS35で、解除キーを取得するタイミングであるかどうかを判断する。情報処理を開始した当初では、すぐに解除キーを取得するタイミングとなるが、2回目以降では、暗号を解除した部分プログラムの実行(進行)の具合に応じて、次のブロックの部分暗号プログラムの暗号を解除するタイミング、すなわち解除キーを取得するタイミングであるかどうかを判断する。   On the other hand, if “YES” in the step S31, that is, if the encrypted program is received, the received encrypted program is stored in the secure memory 56 in a step S33. In step S35, it is determined whether it is time to acquire the release key. At the beginning of the information processing, it is time to acquire the release key immediately. However, in the second and subsequent times, depending on the execution (progress) of the partial program that has been decrypted, the partial encryption program of the next block It is determined whether it is the timing for releasing the encryption, that is, the timing for obtaining the release key.

ステップS35で“NO”であれば、つまり解除キーを取得するタイミングでなければ、同じステップS35に戻って、解除キーを取得するタイミングになるのを待機する。一方、ステップS35で“YES”であれば、つまり解除キーを取得するタイミングであれば、ステップS37で、処理アドレスを指定して解除キーの送信を第1情報処理装置12に要求する。この要求は、通信モジュール62から送信される。また、処理アドレスは、現在実行中の部分プログラムの次の部分プログラムが記憶されるROM14aのブロックの開始アドレスである。   If “NO” in the step S35, that is, if it is not the timing for acquiring the release key, the process returns to the same step S35 and waits for the timing for acquiring the release key. On the other hand, if “YES” in the step S35, that is, if it is the timing for acquiring the release key, in step S37, a processing address is designated and the first information processing device 12 is requested to transmit the release key. This request is transmitted from the communication module 62. The processing address is a start address of a block in the ROM 14a in which a partial program next to the currently executed partial program is stored.

図7に示すように、次のステップS39では、解除キーを受信したかどうかを判断する。ステップS39で“NO”であれば、つまり解除キーを受信していなければ、ステップS41で、解除キーの送信を要求してから所定時間(たとえば、数十フレーム)を経過したかどうかを判断する。図示しないタイマによって、解除キーの送信を要求してからの時間がカウントされる。   As shown in FIG. 7, in the next step S39, it is determined whether or not a release key has been received. If “NO” in the step S39, that is, if the cancel key is not received, it is determined whether or not a predetermined time (for example, several tens of frames) has elapsed since the request for the cancel key is transmitted in a step S41. . The time after requesting the transmission of the release key is counted by a timer (not shown).

ステップS41で“NO”であれば、つまり解除キーの送信を要求してから所定時間を経過していなければ、そのままステップS39に戻る。一方、ステップS41で“YES”であれば、つまり解除キーの送信を要求してから所定時間を経過すれば、ステップS49に進む。   If “NO” in the step S41, that is, if a predetermined time has not elapsed since the request for transmitting the release key has been made, the process returns to the step S39 as it is. On the other hand, if “YES” in the step S41, that is, if a predetermined time elapses after the transmission of the release key is requested, the process proceeds to a step S49.

また、ステップS39で“YES”であれば、つまり解除キーを受信すれば、ステップS43で、受信した解除キーを用いて、対応するブロックについての暗号化部分プログラムの暗号を解除する。このとき、セキュアメモリ56から該当する暗号化部分プログラムがRAM54に読み込まれる。図示は省略するが、受信した解除キーは、データ記憶領域204に記憶される。続くステップS45では、暗号を解除した部分プログラム(202e)をプログラム記憶領域202に上書きする。   If “YES” in the step S39, that is, if a release key is received, the encryption of the encrypted partial program for the corresponding block is released using the received release key in a step S43. At this time, the corresponding encrypted partial program is read from the secure memory 56 into the RAM 54. Although not shown, the received release key is stored in the data storage area 204. In a succeeding step S45, the program storage area 202 is overwritten with the decrypted partial program (202e).

そして、ステップS47で、アプリケーションを終了したかどうかを判断する。ここでは、CPU50aは、並行して実行しているアプリケーションの処理を終了したかどうかを判断する。ステップS47で“NO”であれば、つまりアプリケーションを終了していなければ、図6に示したステップS35に戻る。つまり、次のブロックについての解除キーを取得するタイミングであるかどうかを判断するのである。   In step S47, it is determined whether the application is terminated. Here, the CPU 50a determines whether or not the processing of the application being executed in parallel has ended. If “NO” in the step S47, that is, if the application is not ended, the process returns to the step S35 shown in FIG. That is, it is determined whether it is time to acquire a release key for the next block.

一方、ステップS47で“YES”であれば、つまりアプリケーションを終了する場合には、ステップS49で、エミュレーションプログラム202cの実行を停止して、情報処理を終了する。   On the other hand, if “YES” in the step S47, that is, if the application is to be ended, the execution of the emulation program 202c is stopped and the information processing is ended in a step S49.

この実施例によれば、LCDを有する汎用の第2情報処理装置を用いるので、第1情報処理装置に表示装置を設ける必要がなく、第1情報処理装置の価格を出来る限り抑えることができる。   According to this embodiment, since a general-purpose second information processing apparatus having an LCD is used, it is not necessary to provide a display device in the first information processing apparatus, and the price of the first information processing apparatus can be suppressed as much as possible.

また、この実施例では、第1情報処理装置がアプリケーションプログラムを取得して、このアプリケーションプログラムを実行可能な他の専用機をエミュレートする第2情報処理装置に送信するので、第2情報処理装置で実行されるアプリケーションプログラムが限定されず、第2情報処理装置を用いて他の専用機の専用コンテンツを楽しむことができる。   In this embodiment, the first information processing apparatus acquires the application program and transmits it to the second information processing apparatus that emulates another dedicated machine that can execute the application program. The application program to be executed is not limited, and the second information processing apparatus can be used to enjoy the exclusive content of another dedicated machine.

さらに、この実施例では、第2情報処理装置のLCDに画像を表示し、第1情報処理装置に画像を表示するための表示装置を設ける必要がないため、既にある資源を有効利用することができる。   Furthermore, in this embodiment, since it is not necessary to provide a display device for displaying an image on the LCD of the second information processing apparatus and displaying the image on the first information processing apparatus, it is possible to effectively use existing resources. it can.

なお、この実施例では、メモリカードからアプリケーションプログラムを取得する場合について説明したが、これに限定される必要はない。インターネットのようなネットワークから取得してもよい。たとえば、所定のサーバにアクセスし、ダウンロードすることができる。かかる場合には、スマートフォンのような第2情報処理装置が所定のサーバにアクセスし、アプリケーションプログラムをダウンロードする。ただし、第1情報処理装置において、アプリケーションプログラムを暗号化する必要があるため、ダウンロードされたアプリケーションプログラムは、第2情報処理装置からそのまま第1情報処理装置に送信され、第1情報処理装置のRAMに記憶される。かかる場合には、部分プログラムのブロックはRAMのアドレスで管理される。   In this embodiment, the case where the application program is acquired from the memory card has been described. However, the present invention is not limited to this. It may be acquired from a network such as the Internet. For example, a predetermined server can be accessed and downloaded. In such a case, a second information processing apparatus such as a smartphone accesses a predetermined server and downloads an application program. However, since it is necessary to encrypt the application program in the first information processing apparatus, the downloaded application program is transmitted as it is from the second information processing apparatus to the first information processing apparatus, and the RAM of the first information processing apparatus Is remembered. In such a case, the block of the partial program is managed by the RAM address.

また、メモリカードに代えて、他の記憶媒体(ディスクやUSBメモリなど)からアプリケーションプログラムを取得するようにしてもよい。ただし、他の記憶媒体に応じたインターフェイスやデバイスを第1情報処理装置に備える必要がある。この場合にも、取得したアプリケーションプログラムは、第1情報処理装置のRAMに記憶される。   Further, the application program may be obtained from another storage medium (such as a disk or a USB memory) instead of the memory card. However, it is necessary to provide the first information processing apparatus with an interface or a device corresponding to another storage medium. Also in this case, the acquired application program is stored in the RAM of the first information processing apparatus.

このように、取得したアプリケーションプログラムが第1情報処理装置のRAMに記憶される場合には、RAMのアドレスに従ってブロック単位で暗号化が行われる。   Thus, when the acquired application program is stored in the RAM of the first information processing apparatus, encryption is performed in units of blocks according to the RAM address.

また、この実施例では、ブロック毎の部分プログラムを暗号化するようにしたが、アプリケーションプログラムの全体を1つの解除キーで解除可能に暗号化してもよい。かかる場合には、たとえば、アプリケーションプログラムを実行した後に、当該アプリケーションプログラムが消去されるようにしておけばよい。つまり、不正にアプリケーションプログラムが取得されないように手当しておけばよいのである。   In this embodiment, the partial program for each block is encrypted. However, the entire application program may be encrypted so as to be releasable with one release key. In such a case, for example, the application program may be deleted after the application program is executed. In other words, it is sufficient to take care not to illegally acquire the application program.

さらに、この実施例では、第1情報処理装置は、第2情報処理装置からの要求に応じて解除キーを送信するようにしたが、これに限定される必要はない。図2を用いて説明したように、アプリケーションプログラムを複数のブロックに分けた場合に、各ブロックのデータ量を同じにしてあるので、第1情報処理装置が、所定時間毎に、順次解除キーを第2情報処理装置に送信するようにしてもよい。   Furthermore, in this embodiment, the first information processing apparatus transmits the release key in response to a request from the second information processing apparatus, but the present invention is not limited to this. As described with reference to FIG. 2, when the application program is divided into a plurality of blocks, the data amount of each block is the same, so the first information processing apparatus sequentially issues a release key every predetermined time. You may make it transmit to a 2nd information processing apparatus.

さらに、この実施例では、有線通信にUSBの規格を適用するようにしたが、他の規格が適用されてよい。たとえば、IEEE 1394、Serial ATA(SATA)、InfiniBand、PCI Express、Serial Attached SCSI、Fibre Channeを適用することができる。   Furthermore, in this embodiment, the USB standard is applied to the wired communication, but other standards may be applied. For example, IEEE 1394, Serial ATA (SATA), InfiniBand, PCI Express, Serial Attached SCSI, and Fiber Channel can be applied.

なお、この実施例で示した具体的な数値は一例に過ぎず、実際の製品に応じて、適宜変更される。   In addition, the specific numerical value shown in this Example is only an example, and is suitably changed according to an actual product.

10 …情報処理システム
12 …第1情報処理装置
14 …メモリカード
16 …第2情報処理装置
20、50a …CPU
24、54 …RAM
28、62 …無線モジュール
32 …コネクタ
34 …コントローラ
36、66 …USBコネクタ
50 …SoC
56 …セキュアメモリ
58 …LCD
64 …入力装置
DESCRIPTION OF SYMBOLS 10 ... Information processing system 12 ... 1st information processing apparatus 14 ... Memory card 16 ... 2nd information processing apparatus 20, 50a ... CPU
24, 54 ... RAM
28, 62 ... wireless module 32 ... connector 34 ... controller 36, 66 ... USB connector 50 ... SoC
56 ... Secure memory 58 ... LCD
64: Input device

Claims (18)

第1情報処理装置、および表示部を有する汎用の第2情報処理装置を含む情報処理システムであって、
前記第1情報処理装置は、
アプリケーションプログラムを取得する取得部と、
前記取得部によって取得されたアプリケーションプログラムを前記第2情報処理装置に送信するプログラム送信部を備え、
前記第2情報処理装置は、
前記アプリケーションプログラム用の環境を模倣し、前記プログラム送信部によって送信されたアプリケーションプログラムを、当該アプリケーションプログラムの処理機能を有しない前記第1情報処理装置に代って実行するエミュレータ部と、
前記エミュレータ部による実行結果を前記表示部に表示する表示制御部を備える、情報処理システム。
An information processing system including a first information processing device and a general-purpose second information processing device having a display unit,
The first information processing apparatus
An acquisition unit for acquiring an application program;
A program transmission unit that transmits the application program acquired by the acquisition unit to the second information processing apparatus;
The second information processing apparatus
An emulator unit that imitates the environment for the application program and executes the application program transmitted by the program transmission unit on behalf of the first information processing apparatus that does not have the processing function of the application program;
An information processing system comprising a display control unit for displaying an execution result by the emulator unit on the display unit.
前記アプリケーションプログラムを記憶する記憶媒体をさらに含み、
前記第1情報処理装置は、前記記憶媒体に接続するための接続部をさらに備え、
前記取得部は、前記記憶媒体から前記アプリケーションプログラムを取得する、請求項1記載の情報処理システム。
A storage medium for storing the application program;
The first information processing apparatus further includes a connection unit for connecting to the storage medium,
The information processing system according to claim 1, wherein the acquisition unit acquires the application program from the storage medium.
前記第2情報処理装置は、ネットワークと接続される通信部をさらに備え、
前記取得部は、前記通信部によって前記ネットワークから受信した前記アプリケーションプログラムを、前記第2情報処理装置から取得する、請求項1記載の情報処理システム。
The second information processing apparatus further includes a communication unit connected to a network,
The information processing system according to claim 1, wherein the acquisition unit acquires the application program received from the network by the communication unit from the second information processing apparatus.
前記第1情報処理装置は、前記アプリケーションプログラムを暗号化する暗号化部と、暗号化された前記アプリケーションプログラムを解除する解除キーを生成する解除キー生成部と、前記解除キー生成部によって生成された解除キーを前記第2情報処理装置に送信する解除キー送信部をさらに備え、
前記プログラム送信部は、前記暗号化部によって暗号化された前記アプリケーションプログラムを前記第2情報処理装置に送信する、請求項1ないし3のいずれかに記載の情報処理システム。
The first information processing apparatus is generated by an encryption unit that encrypts the application program, a release key generation unit that generates a release key that releases the encrypted application program, and the release key generation unit. A release key transmission unit for transmitting a release key to the second information processing apparatus;
The information processing system according to claim 1, wherein the program transmission unit transmits the application program encrypted by the encryption unit to the second information processing apparatus.
前記解除キー送信部は、前記エミュレータ部において前記アプリケーションプログラムを実行する場合に、前記解除キーを前記第2情報処理装置に送信する、請求項4記載の情報処理システム。   The information processing system according to claim 4, wherein the release key transmission unit transmits the release key to the second information processing apparatus when the application unit is executed in the emulator unit. 前記暗号化部は、前記アプリケーションプログラムを、複数の部分の各々について互いに異なる解除キーで解除可能に暗号化し、
前記解除キー生成部は、前記複数の部分の各々について互いに異なる複数の解除キーを生成する、請求項4または5記載の情報処理システム。
The encryption unit encrypts the application program so that each of a plurality of parts can be released with a different release key,
The information processing system according to claim 4 or 5, wherein the release key generation unit generates a plurality of different release keys for each of the plurality of portions.
前記解除キー送信部は、前記複数の解除キーを一部ずつ継続的に送信する、請求項6記載の情報処理システム。   The information processing system according to claim 6, wherein the release key transmitting unit continuously transmits the plurality of release keys part by part. 前記第2情報処理装置は、前記エミュレータ部による前記アプリケーションプログラムの実行に応じた解除キーの要求を前記第1情報処理装置に対して行う解除キー要求部をさらに備え、
前記解除キー送信部は、前記第2情報処理装置からの要求に応じた解除キーを送信する、請求項4ないし7のいずれかに記載の情報処理システム。
The second information processing device further includes a release key requesting unit that requests the first information processing device for a release key according to the execution of the application program by the emulator unit.
The information processing system according to claim 4, wherein the release key transmission unit transmits a release key in response to a request from the second information processing apparatus.
前記プログラム送信部は、前記解除キー送信部よりも通信速度が速い経路を用いて、前記暗号化されたアプリケーションプログラムを前記第2情報処理装置に送信する、請求項4ないし8のいずれかに記載の情報処理システム。   9. The program transmission unit according to claim 4, wherein the program transmission unit transmits the encrypted application program to the second information processing apparatus using a path having a higher communication speed than the release key transmission unit. Information processing system. 前記第1情報処理装置および前記第2情報処理装置は、有線および無線のそれぞれで通信可能に接続され、
前記プログラム送信部は、前記暗号化されたアプリケーションプログラムを前記有線で前記第2情報処理装置に送信し、
前記解除キー送信部は、前記解除キーを前記無線で前記第2情報処理装置に送信する、請求項4ないし8のいずれかに記載の情報処理システム。
The first information processing apparatus and the second information processing apparatus are connected to be communicable by wire and wireless,
The program transmission unit transmits the encrypted application program to the second information processing apparatus via the wire,
The information processing system according to claim 4, wherein the release key transmission unit transmits the release key to the second information processing apparatus wirelessly.
前記エミュレータ部は、前記解除キー送信部からの前記解除キーを受信しなくなった場合に、前記アプリケーションプログラムの実行を停止する、請求項4ないし10のいずれかに記載の情報処理システム。   11. The information processing system according to claim 4, wherein the emulator unit stops the execution of the application program when it no longer receives the release key from the release key transmission unit. 前記解除キー送信部は、前記第2情報処理装置からの要求が誤っている場合に、前記解除キーの送信を停止する、請求項8記載の情報処理システム。   The information processing system according to claim 8, wherein the release key transmission unit stops transmission of the release key when a request from the second information processing apparatus is incorrect. 前記暗号化部は、前記第1情報処理装置に固有の識別情報を用いて、前記アプリケーションプログラムを暗号化する、請求項4ないし12のいずれかに記載の情報処理システム。   The information processing system according to claim 4, wherein the encryption unit encrypts the application program using identification information unique to the first information processing apparatus. 前記第1情報処理装置は、
操作入力部、および
前記操作入力部からの操作データを前記第2情報処理装置に送信する操作データ送信部をさらに備える、請求項1ないし13のいずれかに記載の情報処理システム。
The first information processing apparatus
The information processing system according to claim 1, further comprising: an operation input unit; and an operation data transmission unit that transmits operation data from the operation input unit to the second information processing apparatus.
前記第2情報処理装置は、前記第1情報処理装置よりも高い処理能力を有している、請求項1ないし14のいずれかに記載の情報処理システム。   The information processing system according to any one of claims 1 to 14, wherein the second information processing apparatus has a higher processing capability than the first information processing apparatus. 表示部と、
アプリケーションプログラム用の環境を模倣し、情報処理装置から送信されたアプリケーションプログラムを、当該アプリケーションプログラムの処理機能を有してない当該情報処理装置に代って実行するエミュレータ部と、
前記エミュレータ部による実行結果を前記表示部に表示する表示制御部を備える、汎用の他の情報処理装置と通信可能に接続される、情報処理装置であって、
前記アプリケーションプログラムを取得する取得部と、
前記取得部によって取得された前記アプリケーションプログラムを前記他の情報処理装置に送信するプログラム送信部を備える、情報処理装置。
A display unit;
An emulator unit that imitates an environment for an application program and executes an application program transmitted from the information processing device on behalf of the information processing device that does not have the processing function of the application program;
An information processing apparatus comprising a display control unit for displaying an execution result by the emulator unit on the display unit, and connected to other general-purpose information processing apparatus in a communicable manner,
An acquisition unit for acquiring the application program;
An information processing apparatus comprising: a program transmission unit that transmits the application program acquired by the acquisition unit to the other information processing apparatus.
表示部と、
アプリケーションプログラム用の環境を模倣し、情報処理装置から送信されたアプリケーションプログラムを、当該アプリケーションプログラムの処理機能を有してない当該情報処理装置に代って実行するエミュレータ部と、
前記エミュレータ部による実行結果を前記表示部に表示する表示制御部を備える、汎用の他の情報処理装置と通信可能に接続される、情報処理装置で実行される情報処理プログラムであって、
前記情報処理装置のコンピュータを、
前記アプリケーションプログラムを取得する取得部と、
前記取得部によって取得された前記アプリケーションプログラムを前記他の情報処理装置に送信するプログラム送信部として機能させる、情報処理プログラム。
A display unit;
An emulator unit that imitates an environment for an application program and executes an application program transmitted from the information processing device on behalf of the information processing device that does not have the processing function of the application program;
An information processing program executed by an information processing apparatus, connected to a general-purpose information processing apparatus, including a display control unit for displaying an execution result by the emulator unit on the display unit,
A computer of the information processing apparatus;
An acquisition unit for acquiring the application program;
An information processing program that causes the application program acquired by the acquisition unit to function as a program transmission unit that transmits the application program to the other information processing apparatus.
表示部と、
アプリケーションプログラム用の環境を模倣し、情報処理装置から送信されたアプリケーションプログラムを、当該アプリケーションプログラムの処理機能を有してない当該情報処理装置に代って実行するエミュレータ部と、
前記エミュレータ部による実行結果を前記表示部に表示する表示制御部を備える、汎用の他の情報処理装置と通信可能に接続される、情報処理装置の情報処理方法であって、
前記情報処理装置のコンピュータは、
(a)前記アプリケーションプログラムを取得し、そして
(b)前記ステップ(a)において取得した前記アプリケーションプログラムを前記他の情報処理装置に送信する、情報処理方法。
A display unit;
An emulator unit that imitates an environment for an application program and executes an application program transmitted from the information processing device on behalf of the information processing device that does not have the processing function of the application program;
An information processing method for an information processing apparatus, comprising a display control unit for displaying an execution result by the emulator unit on the display unit, and being communicably connected to another information processing apparatus,
The computer of the information processing apparatus
(A) An information processing method for acquiring the application program, and (b) transmitting the application program acquired in the step (a) to the other information processing apparatus.
JP2013089051A 2013-04-22 2013-04-22 Information processing system, information processing devices, information processing program, and information processing method Pending JP2014210126A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013089051A JP2014210126A (en) 2013-04-22 2013-04-22 Information processing system, information processing devices, information processing program, and information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013089051A JP2014210126A (en) 2013-04-22 2013-04-22 Information processing system, information processing devices, information processing program, and information processing method

Publications (1)

Publication Number Publication Date
JP2014210126A true JP2014210126A (en) 2014-11-13

Family

ID=51930376

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013089051A Pending JP2014210126A (en) 2013-04-22 2013-04-22 Information processing system, information processing devices, information processing program, and information processing method

Country Status (1)

Country Link
JP (1) JP2014210126A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017213192A (en) * 2016-05-31 2017-12-07 株式会社ソニー・インタラクティブエンタテインメント Information processing system, information processing device, and data acquisition method
CN109858274A (en) * 2018-12-04 2019-06-07 上海碳蓝网络科技有限公司 The method and apparatus that message is shown

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017213192A (en) * 2016-05-31 2017-12-07 株式会社ソニー・インタラクティブエンタテインメント Information processing system, information processing device, and data acquisition method
US11298613B2 (en) 2016-05-31 2022-04-12 Sony Interactive Entertainment Inc. Information processing device, data acquisition method, and program
CN109858274A (en) * 2018-12-04 2019-06-07 上海碳蓝网络科技有限公司 The method and apparatus that message is shown

Similar Documents

Publication Publication Date Title
US9647727B2 (en) Information processing system, information processing device, storage medium storing information processing program, and storage device
CN104205050B (en) Access the equipment on remote machine
EP2821115B1 (en) Implementing encrypted content in a game
WO2018219120A1 (en) Image display method, image processing method and device, terminal and server
US10841156B2 (en) Mobile application for monitoring and configuring second device
JP2015501593A (en) Secure communication between a medical device and its remote device
CN102473098A (en) Entropy pools for virtual machines
CN105854295B (en) A kind of method, apparatus and system for realizing multiplayer using portable digital equipment
CN106599698B (en) A kind of method and apparatus for encrypting picture, decrypting picture
CN110430194B (en) Information verification method, chess and card information verification method and device
JP7389236B2 (en) Facial image transmission method, value transfer method, device, electronic device
CN108011879A (en) File encryption, method, apparatus, equipment and the storage medium of decryption
CN110401648A (en) Obtain method, apparatus, electronic equipment and the medium of cloud service
US9604150B2 (en) Information processing system, information processing device, storage medium storing information processing program, information processing method, and storage device
JP2011107958A (en) Information processing apparatus
JP2014210126A (en) Information processing system, information processing devices, information processing program, and information processing method
CN109145644A (en) Private key obscures and digital signature generation method, device, smart machine
JP6082182B2 (en) GAME SYSTEM, GAME DEVICE, GAME PROGRAM, AND GAME CONTROL METHOD
JP6046893B2 (en) Communication system, communication terminal, information processing method, and program
CN111209031A (en) Data acquisition method and device, terminal equipment and storage medium
US20230277928A1 (en) Information processing device and image display method
JP2016026513A (en) Game device
CN115518379A (en) Data processing method and device based on cloud game, electronic equipment and storage medium
CN110968383B (en) Message frame display method and device, terminal and storage medium
JP5986371B2 (en) GAME SYSTEM, GAME DEVICE, GAME PROGRAM, AND GAME CONTROL METHOD