JP7361382B2 - non-volatile storage - Google Patents
non-volatile storage Download PDFInfo
- Publication number
- JP7361382B2 JP7361382B2 JP2020008269A JP2020008269A JP7361382B2 JP 7361382 B2 JP7361382 B2 JP 7361382B2 JP 2020008269 A JP2020008269 A JP 2020008269A JP 2020008269 A JP2020008269 A JP 2020008269A JP 7361382 B2 JP7361382 B2 JP 7361382B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- command
- state
- output
- storage device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Description
本発明は、データの書き込み及び読み出し可能な不揮発性メモリを備える不揮発性記憶装置に関し、特に、その不揮発性メモリに記憶されているコンテンツデータをそのままの形式で出力するか、あるいは、難読化された形式で出力するかについて切り換え可能な不揮発性記憶装置に関する。 The present invention relates to a nonvolatile storage device equipped with a nonvolatile memory in which data can be written and read, and in particular, the present invention relates to a nonvolatile storage device that includes a nonvolatile memory in which data can be written and read. The present invention relates to a nonvolatile storage device that can switch output format.
パチンコ、パチスロ等の遊技機は遊興性を高めるため、多くの映像データや音声データ等が用いられ、様々な演出が行われている。これら演出に用いられる映像データや音声データには歌手の映像や楽曲等、著作権に関する許諾を受けて遊技機に実装される場合もあり、これらのデータの管理には相当の注意が払われている。
近年、遊技機に用いられる機材のリユースが盛んに行われており、遊技機に実装された映像・音声データ等が格納されているメモリ装置等もリユースの対象となり得、遊技機メーカーの管理外に置かれる可能性もある。このため、例えば、遊技機に実装されるメモリ装置に難読化(暗号化)された映像データや音声データを格納し、これら映像データや音声データを処理するVDP(Video Display Processor)に難読化を解除する機能を持たせることで、メモリ装置から不正にデータを読み出しても著作権で保護された映像や音声の生データが得られないような構成としている。特に、インターネットやSNS(Social Networking Service)の普及に伴いデータが容易に頒布・拡散される環境となっているため、遊技機に用いられる映像や音声等が不正な目的のために用いられないようにする必要がある。
一方、遊技機に実装される映像や音声であっても、データの流出について特段の対応を行わない場合もある。例えば、数字が回転する映像等はデータ自体の商品価値が乏しい(不正目的としてデータを流出させる動機が乏しい)ので、生データをメモリ装置に格納し、難読化解除機能を持たないVDPで映像や音声を処理する場合もある。遊技機メーカーは難読化解除機能を有するVDPや難読化解除機能を持たないVDPを利用しており、難読化解除機能を持たないVDPを利用する場合であっても、遊技機に利用するコンテンツによってはデータを管理したいという要望がある。このような場合、暗号化を施したデータをメモリ装置に書き込み、遊技機の稼働中にVDPでデータを処理する際に、読み出したデータを復号して用いる等、PC(Personal Computer)で利用されているUSB(Universal Serial Bus)メモリの暗号化処理等が利用されうる。
In order to enhance the entertainment value of gaming machines such as pachinko and pachislot, a large amount of video data, audio data, etc. are used to perform various effects. The video and audio data used in these productions may include images of singers, songs, etc., and may be implemented in gaming machines with copyright permission. Considerable care must be taken in managing this data. There is.
In recent years, the reuse of equipment used in gaming machines has become popular, and memory devices installed in gaming machines that store video and audio data, etc., can also be reused and are outside the control of gaming machine manufacturers. There is also a possibility that it will be placed in For this reason, for example, obfuscated (encrypted) video data and audio data are stored in a memory device installed in a gaming machine, and the VDP (Video Display Processor) that processes this video data and audio data is obfuscated. By providing a release function, the configuration is such that even if data is read illegally from the memory device, raw video and audio data protected by copyright cannot be obtained. In particular, with the spread of the Internet and SNS (Social Networking Services), we are now in an environment where data is easily distributed and disseminated, so we are taking precautions to ensure that video and audio used in gaming machines are not used for illicit purposes. It is necessary to
On the other hand, there are cases in which no special measures are taken to prevent data leakage, even for video and audio installed in gaming machines. For example, the data itself has little commercial value for videos with rotating numbers (there is little motivation to leak the data for fraudulent purposes), so the raw data is stored in a memory device and the video is processed using a VDP that does not have a deobfuscation function. It may also process audio. Game machine manufacturers use VDPs that have a deobfuscation function and VDPs that do not have a deobfuscation function, and even when using a VDP that does not have a deobfuscation function, there are differences depending on the content used in the game machine. There is a desire to manage data. In such cases, encrypted data is written to a memory device, and the read data is decrypted and used when the data is processed by VDP while the gaming machine is operating. Encryption processing of a USB (Universal Serial Bus) memory, etc., which is currently available, can be used.
下記特許文献1には、外部メモリ装置に格納されているデータやプログラムが暗号化されており、マイクロプロセッサ本体で処理する際にその外部メモリ装置から読み出したデータやプログラムを復号化するマイクロプロセッサや、外部メモリ装置にデータやプログラムを書き込むアドレス情報を暗号化するマイクロプロセッサなどが記載されている。
また、下記特許文献2には、外部メモリにデータを書き込むとき、アドレスを暗号化して書き込みアドレスを生成しかつ書き込みデータを暗号化して書き込み用暗号化データを生成し、外部メモリからデータを読み出すとき、アドレスを暗号化して読み出しアドレスを生成しかつその外部メモリから読み出された暗号化データを復号して平文データを生成するプロセッサ装置が記載されている。
Furthermore,
しかしながら、特許文献1及び2のように、セキュリティ確保のため暗号化されたデータを外部メモリ装置に記憶させる構成では、外部メモリ装置にデータを書き込む際に暗号化処理が必要となり書き込み性能が低下し、また読み出し時にも復号処理が必要となり読み出し性能も低下するという課題がある。
本発明は上述の事情に鑑みてなされたものであり、データのセキュリティを確保しつつ、書き込み性能の低下や、読み出し性能の低下が生じない不揮発性記憶装置を提供することを目的とする。
However, in a configuration such as
The present invention has been made in view of the above-mentioned circumstances, and an object of the present invention is to provide a nonvolatile storage device that does not cause a decrease in write performance or read performance while ensuring data security.
かかる課題を解決するために、請求項1に記載の発明は、データの書き込み及び読み出し可能な不揮発性メモリにより構成した記憶部と、該記憶部に記憶されているRawデータに難読化処理を施して前記Rawデータと異なる形式の難読化データに変換する難読化部と、前記Rawデータまたは前記難読化データの出力形式で前記記憶部に記憶されているデータを出力するデータ出力部と、外部から入力される前記Rawデータまたは前記難読化データのいずれかの出力形式を指定する出力データ選択情報を含む状態設定コマンドを受け付けるコマンド受付部と、難読化データ選択情報を格納する不揮発性メモリにより構成した状態記憶部と、Rawデータ選択情報を格納する揮発性メモリにより構成した一時状態記憶部と、前記状態記憶部及び前記一時状態記憶部を制御する状態制御部とを備え、該状態制御部は、前記状態記憶部及び前記一時状態記憶部に格納された前記出力データ選択情報に基づいて前記記憶部から読み出し前記データ出力部から出力されるデータ形式を前記Rawデータあるいは前記難読化データとするように制御する不揮発性記憶装置としたことを特徴とする。
In order to solve this problem, the invention according to
請求項2に係る発明は、請求項1に記載の構成に加えて、文字、数字または記号のいずれかを含む文字列で構成されるコマンド文字列を、該コマンド文字列に対応づけられている前記状態設定コマンドに変換するコマンド変換部を備え、前記コマンド受付部で受け付けられる前記コマンド文字列が、前記コマンド変換部に供給され前記状態設定コマンドに変換されると、前記状態制御部は、変換された前記状態設定コマンドに基づいて前記状態記憶部及び前記一時状態記憶部に前記出力データ選択情報を格納し、前記記憶部から読み出し前記データ出力部から出力されるデータ形式を前記Rawデータあるいは前記難読化データとするように制御する不揮発性記憶装置としたことを特徴とする。
The invention according to
請求項3に係る発明は、請求項1に記載の構成に加えて、暗号化されている前記状態設定コマンドを復号するコマンド変換部を備え、前記コマンド受付部で受け付けられる前記状態設定コマンドが、前記コマンド変換部に供給され復号されると、前記状態制御部は、復号された前記状態設定コマンドに基づいて前記状態記憶部及び前記一時状態記憶部に前記出力データ選択情報を格納し、前記記憶部から読み出し前記データ出力部から出力されるデータ形式を前記Rawデータあるいは前記難読化データとするように制御する不揮発性記憶装置としたことを特徴とする。
The invention according to claim 3 includes, in addition to the configuration according to
請求項1に係る発明によれば、記憶部に記憶されているデータの出力形式として、Rawデータの形式と、Rawデータに難読化処理を施した難読化データの形式のいずれかを選択できるようになっている。Rawデータの形式で出力する場合、何も処理を加えずそのままのデータを使用することができるため、読み出し性能の低下が生じない。
一方、難読化データの形式で出力する場合、Rawデータに戻すには難読化解除処理を施す必要があり、出力されたデータをそのままの形式で使用することができない。このため、記憶部に記憶されているデータのセキュリティを確保することができる。
また、記憶部には、Rawデータを書き込むことができるため、書き込みデータに何の処理も施す必要がなく、書き込み性能の低下が生じない。
According to the invention according to
On the other hand, when outputting in the form of obfuscated data, it is necessary to perform deobfuscation processing to return it to raw data, and the outputted data cannot be used in its original form. Therefore, the security of the data stored in the storage unit can be ensured.
Furthermore, since raw data can be written in the storage section, there is no need to perform any processing on the written data, and no deterioration in writing performance occurs.
請求項2に係る発明によれば、文字、数字または記号のいずれかを含む文字列で構成されるコマンド文字列を受け付けて、このコマンド文字列に対応づけられている状態設定コマンドに変換し、この変換された状態設定コマンドに基づいて、出力されるデータ形式が選択されるようになっている。状態設定コマンドに対応づけられるコマンド文字列は、不揮発性記憶装置の販売先ごとや記憶部に記憶されているデータの内容ごとに異なる文字列を割り当てることができるため、不揮発性記憶装置の使用対象範囲を限定することができる。この結果、記憶部に記憶されているデータのセキュリティが向上するとともに、不揮発性記憶装置を不正に入手して使用することを防止することができる。
According to the invention according to
請求項3に係る発明によれば、暗号化されている状態設定コマンドを復号し、復号された状態設定コマンドに基づいて、出力されるデータ形式が選択されるようになっている。外部からは暗号化されていない状態設定コマンドを読み取ることができないため、記憶部に記憶されているデータを不正に読み出すことができず、データのセキュリティが向上するとともに、不揮発性記憶装置を不正に入手して使用することを防止することができる。 According to the invention according to claim 3, the encrypted status setting command is decrypted, and the data format to be output is selected based on the decrypted status setting command. Since unencrypted status setting commands cannot be read from outside, data stored in the storage unit cannot be read out illegally, improving data security and preventing unauthorized access to non-volatile storage devices. It can be prevented from being obtained and used.
以下、本発明を図1~図10に示した実施形態を用いて詳細に説明する。但し、この実施形態に記載される構成要素、種類、組み合わせ、形状、その相対配置などは特定的な記載がない限り、この発明の範囲をそれのみに限定する主旨ではなく単なる説明例に過ぎない。
以下、本発明の実施形態を詳細に説明する。
The present invention will be explained in detail below using the embodiments shown in FIGS. 1 to 10. However, unless there is a specific description, the components, types, combinations, shapes, relative arrangements thereof, etc. described in this embodiment are merely illustrative examples and do not limit the scope of this invention. .
Embodiments of the present invention will be described in detail below.
〔第一の実施形態〕
<情報処理装置>
本発明の第一の実施形態に係る情報処理装置の構成について説明する。図1は、本発明の第一の実施形態に係る情報処理装置の構成を説明するための機能ブロック図である。
情報処理装置1は、データ処理プロセッサ10、「不揮発性記憶装置」である補助記憶装置40、を備えている。
図1に示す上位CPU2は、遊技機等を構成する情報処理装置1に対して上位に配置されたCPUである。
[First embodiment]
<Information processing device>
The configuration of an information processing device according to a first embodiment of the present invention will be described. FIG. 1 is a functional block diagram for explaining the configuration of an information processing apparatus according to a first embodiment of the present invention.
The
The
<<データ処理プロセッサ>>
データ処理プロセッサ10は、画像、音声、発光等のデータを処理するプロセッサであり、CPU12、RAM13、画像処理部14、表示出力部16、サウンド処理部18、サウンド出力部20、発光処理部22、発光出力部24、データバス26、レジスタバス28、I/F制御部35を備えている。
<<Data processing processor>>
The
CPU12は、データ処理プロセッサ10の全体を制御する。
RAM13は、情報の高速な読み書きが可能な揮発性の記憶媒体であり、ワークメモリとして利用可能である。
画像処理部14は、表示すべき画像を処理するものであり、補助記憶装置40に格納されたデータをデータバス26を介して取得し、画像として描画することで画像データを生成する。
表示出力部16は、画像処理部14が生成した画像データをディスプレイ30等の表示部に出力する。ディスプレイ30は、LCD等の表示デバイスである。
The CPU 12 controls the
The RAM 13 is a volatile storage medium in which information can be read and written at high speed, and can be used as a work memory.
The
The
サウンド処理部18は、出力すべき音声信号を処理するものであり、補助記憶装置40に格納されたデータをデータバス26を介して取得し、サウンドデータを生成する。
サウンド出力部20は、生成されたサウンドデータに基づき、スピーカ32等に音声信号を出力する。
発光処理部22は、演出に基づき、補助記憶装置40に格納されたデータをデータバス26を介して取得し、LED34等の発光体を駆動するためのデータを生成する。
発光出力部24は、発光処理部が生成したデータに基づき、LED等の発光体を駆動する。
LED(light emitting diode)34は、順方向に電圧を加えた際に発光する半導体素子であり、発光体の一例である。
I/F制御部35は、補助記憶装置40とのインターフェースを制御する。
The
The
The light
The light
The LED (light emitting diode) 34 is a semiconductor element that emits light when a voltage is applied in the forward direction, and is an example of a light emitting body.
The I/
<<補助記憶装置>>
補助記憶装置40には、遊技用のコンテンツ(動画、静止画、及び音声等)のデータであるコンテンツデータが何の処理も施されていないそのままのRawデータの形式で格納されており、格納されているこのコンテンツデータを、補助記憶装置40から外部に出力する際に、Rawデータの形式でそのまま出力するか、Rawデータに難読化処理を施してRawデータと異なる形式の難読化データの形式で出力するかのいずれかを選択できるようになっている。
この補助記憶装置40は、データの書き込み及び読み出し可能な「不揮発性メモリ」である記憶部(フラッシュメモリ)42、一時記憶部(DRAM)44、一時状態記憶部47、状態記憶部45、難読化部62、メモリコントローラ46、バス48を備えている。
<<Auxiliary storage device>>
The
This
補助記憶装置40は、いわゆるNANDフラッシュメモリを含むSSD(Solid State Drive)である。ただし、通常のSSDでは一時記憶部44が書込み用のキャッシュメモリとして用いられるが、本発明において用いるSSDはSSDのファームウェアを変更し、一時記憶部44を読み出し用のキャッシュメモリとして利用している。なお、書込み用DRAMを読み出し用に変更せず、読み出し用として別途DRAMを用意しても良い。
The
記憶部42は、例えば、NANDフラッシュメモリアレイからなる不揮発性のメモリである。この記憶部42には、コンテンツデータがRawデータの形式で格納される。
一時記憶部44は、例えば、DDR DRAMからなる揮発性のメモリであって、読み出しデータをキャッシュする。
The
The
一時状態記憶部47は、前記データキャッシュ用のDDR DRAMの一部の領域或いはDDR DRAMとは別構成の揮発性メモリで構成されており、記憶部42に記憶されているデータを補助記憶装置40から外部に出力するデータの形式として、Rawデータを選択している場合にその状態を示す「Rawデータ選択情報」を含む状態設定データを一時的に格納する。
The temporary
状態記憶部45は、例えば、SPI ROM(Serial Peripheral Interface ROM)等の小容量の不揮発性メモリで構成されている。この状態記憶部45には、後述するEnable Read Scrambleコマンドが上位CPU2またはデータ処理プロセッサ10から補助記憶装置40に入力された際に記憶部42に記憶されているデータの出力形式を難読化データとするためのフラグである「難読化データ選択情報」を含む状態設定データが格納される。
なお、一時状態記憶部47に格納されるRawデータ選択情報や、状態記憶部45に格納される難読化データ選択情報を、出力データ選択情報と呼ぶ。
The
Note that the Raw data selection information stored in the temporary
難読化部62は、Rawデータに難読化処理を施して難読化データの形式に変換する。難読化処理は、鍵データを使用して暗号化によって難読化してもよいし、Rawデータに所定のスクランブル処理を適用して難読化するようにしてもよい。
The
メモリコントローラ46は、補助記憶装置40の外部から入力されてくるデータを記憶部42に記憶させる動作や、記憶部42に記憶されているデータを読み出して補助記憶装置40の外部に出力する動作の制御などを行う。
このメモリコントローラ46は、全体制御部50、シーケンス制御部52、ECC(Error Check and Correct)制御部54、ホストI/F制御部56、メモリI/F制御部58、状態制御部60を備え、補助記憶装置40を制御する。
The
The
全体制御部50は、RAM、ROM等を内蔵し(図示省略)、メモリコントローラ46全体を制御することにより、補助記憶装置40全体を制御する。また、この全体制御部50は、記憶部42にデータを書き込むデータ書込手段(データ書込部)、記憶部42からデータを読み込むデータ読込手段(データ読出部)として機能する。
The
シーケンス制御部52は、メモリコントローラ46から記憶部42に与えられる内部コマンド信号に基づき、記憶部42の動作を制御する。
ECC制御部54は、読み出しデータに付加されたエラーコレクションコードに基づき、読み出したデータに含まれる誤りを検出し、且つ誤りを検出した場合に当該データの誤りを訂正する。
The
The
ホストI/F制御部56は、ホスト(データ処理プロセッサ10等)との間のインターフェースを制御する。このホストI/F制御部56は、補助記憶装置40の外部から入力されるRawデータまたは難読化データのいずれかの出力形式を指定する出力形式情報を保持する状態設定コマンドを受け付ける「コマンド受付部」として機能する。また、このホストI/F制御部56は、Rawデータまたは難読化データの出力形式で記憶部42に記憶されているデータを外部に出力する「データ出力部」として機能する。
メモリI/F制御部58は、記憶部42であるNANDアレイや一時記憶部44であるDRAM等とのインターフェースを制御する。
The host I/
The memory I/
状態制御部60は、全体制御部50の制御に基づいて、状態記憶部45や一時状態記憶部47への状態設定データの書き込みや、状態設定データの内容の書き換えを行う。状態制御部60は、出力データ選択情報を入手するため、状態記憶部45に格納された「難読化データ選択情報」と、一時状態記憶部47に格納された「Rawデータ選択情報」をチェックし、(1)いずれの選択情報も格納されていない場合にはRawデータを出力、(2)一時状態記憶部47に「Rawデータ選択情報」が格納されていれば(状態記憶部45に格納された「難読化データ選択情報」の有無にかかわらず)、Rawデータを出力、(3)一時状態記憶部47に「Rawデータ選択情報」が格納されず、状態記憶部45に「難読化データ選択情報」が格納されている場合に難読化データを出力するよう制御する。全体制御部50は、上位CPU2またはデータ処理プロセッサ10から入力されるコマンドに基づいて、状態制御部60を制御するようになっている。なお、上記状態制御部60による制御は、状態記憶部45に格納された「難読化データ選択情報」と、一時状態記憶部47に格納された「Rawデータ選択情報」をチェックし、(1)一時状態記憶部47に「Rawデータ選択情報」が格納されておらず、かつ状態記憶部45に「難読化データ選択情報」が格納されている場合には難読化データを出力、(2)上記以外の条件の場合には、Rawデータを出力するよう制御するとしても良い。
The
メモリコントローラ46の各構成は、メモリコントローラ46のマイクロプロセッサにより実現する。
また、データバス26とバス48との接続は、シリアル高速通信バスや、PCIe(PCIエクスプレス)等を利用することができる。
Each configuration of the
Furthermore, the
<<<補助記憶装置の状態遷移>>>
図2(a)には、補助記憶装置40の状態遷移を説明する図が示されており、図2(b)には、各状態に遷移するトリガーと遷移前後の状態を説明する図が示されている。
図2(a)に示すように、補助記憶装置40は、Rawデータ出力状態100、難読化データ出力状態102、一時的Rawデータ出力状態104の3つの状態を取り得る。
<<<Auxiliary storage device state transition>>>
FIG. 2(a) shows a diagram explaining the state transition of the
As shown in FIG. 2A, the
Rawデータ出力状態100は、例えば遊技機メーカーが遊技機を開発したり、遊技機を製造したりする際の補助記憶装置40の状態であり、記憶部42に記憶されているデータはRawデータの形式で出力される。
The raw
難読化データ出力状態102は、例えば本発明に係る補助記憶装置40が遊技機に組み込まれ、当該遊技機が遊技機メーカーから出荷された際の補助記憶装置40の状態であり、記憶部42に記憶されているデータは難読化データの形式で出力される。このため、難読化解除機能を有する処理プロセッサ10をこの補助記憶装置40に接続して、出力される難読化データをRawデータに変換してからデータを使用することができるものの、難読化解除機能を有さない処理プロセッサ10に接続してデータの読み出しを行っても、出力されるデータはそのまま利用できない。また補助記憶装置40に格納された著作権保護対象のコンテンツを読み出すことを目的として、この補助記憶装置40をコンピュータに接続してデータの読み出しを行っても、出力されるデータはそのまま使用できず、データのセキュリティが確保される。
The obfuscated
一時的Rawデータ出力状態104は、例えば難読化解除機能を有さない処理プロセッサ10をこの補助記憶装置40に接続して使用する場合の補助記憶装置40の状態であり、データ処理プロセッサ10は、補助記憶装置40から出力されるデータをそのまま使用できるため、読み出し性能の低下が生じない。また、遊技機の開発段階において、遊技機が市場に供給された後の状態、即ち、補助記憶装置40の出力が難読化データ出力状態102に変更された後に補助記憶装置40に書き込まれたデータとデータ処理プロセッサ10に供給されるデータとを比較する際などに用いられる補助記憶装置40の状態である。
The temporary raw
図2(b)に示すように、Rawデータ出力状態100と難読化データ出力状態102との間の状態遷移及び難読化データ出力状態102から一時的Rawデータ出力状態104への状態遷移は、上位CPU2またはデータ処理プロセッサ10から補助記憶装置40に入力されるコマンドにより行われる。
As shown in FIG. 2(b), the state transition between the Raw
Enable Read Scrambleコマンドは、Rawデータ出力状態100から難読化データ出力状態102に遷移させるコマンドである。このEnable Read Scrambleコマンドは、出力形式として難読化データを指定する出力データ選択情報のフラグを立てる状態設定コマンドである。このため、Rawデータ出力状態100のときに、コマンド受付部であるホストI/F制御部56でEnable Read Scrambleコマンドを受け付けると、全体制御部50は、Enable Read Scrambleのフラグを状態記憶部45に格納し、状態制御部60は状態記憶部45に格納されたEnable Read Scrambleのフラグに基づき読み出されるデータを難読化部62を介して出力する。
上記のように状態制御部60は状態記憶部45に格納された「難読化データ選択情報」と、一時状態記憶部47に格納された「Rawデータ選択情報」をチェックし、出力データ形式を決定するので、一旦、難読化データ出力状態102に状態遷移した後の電源投入時またはリセット時(以下、電源投入時等と称する)では揮発性メモリで構成される一時状態記憶部47には「Rawデータ選択情報」は格納されておらず、不揮発性メモリで構成される状態記憶部45に格納されている「難読化データ選択情報」に基づき、補助記憶装置40からは難読化データが出力される。このようにして、補助記憶装置40が難読化データ出力状態102として立ち上がる。
The Enable Read Scramble command is a command for transitioning from the Raw
As described above, the
Release Read Scrambleコマンドは、難読化データ出力状態102から一時的Rawデータ出力状態104に遷移させるコマンドである。このRelease Read Scrambleコマンドは、出力形式としてRawデータを指定するRawデータ選択情報のフラグを立てる状態設定コマンドである。このため、難読化データ出力状態102のときに、ホストI/F制御部56でRelease Read Scrambleコマンドを受け付けると、状態制御部60は、記憶部42に記憶されているデータをRawデータの出力形式でホストI/F制御部56から出力させるように制御する。
ただし、このRelease Read Scrambleコマンドは、状態記憶部45に保持されている難読化データ選択情報の書き換えは行わない。このため、ホストI/F制御部56で、Release Read Scrambleコマンドを受け付けても、状態記憶部45に格納されている難読化データ選択情報が書き換わらず、電源投入時等のデータの出力形式として難読化データを指定したままになっている。したがって、Release Read Scrambleコマンドによって、一時的Rawデータ出力状態104に遷移した後に、電源を切断し再投入等すると、補助記憶装置40が難読化データ出力状態102として立ち上がる。このことを表現するために、図2(b)では、一時的Rawデータ出力状態104から難読化データ出力状態102に遷移するトリガーを電源投入またはリセットと記載している。
The Release Read Scramble command is a command for transitioning from the obfuscated
However, this Release Read Scramble command does not rewrite the obfuscated data selection information held in the
Disable Read Scrambleコマンドは、難読化データ出力状態102からRawデータ出力状態100に遷移させるコマンドである。このDisable Read Scrambleコマンドは、状態記憶部45および一時状態記憶部47にそれぞれ格納されている「難読化データ選択情報」のフラグと「Rawデータ選択情報」のフラグを消去する状態設定コマンドである。
このようにDisable Read Scrambleコマンドによって、状態記憶部45に保持される難読化データ選択情報のフラグが消去されるため、Rawデータ出力状態100に遷移した後に、電源を切断し再投入すると、状態制御部60は、状態記憶部45及び一時状態記憶部47のいずれにもデータ出力形式のフラグが保持されていないため補助記憶装置40がRawデータ出力状態100として立ち上がる。すなわち、記憶部42に格納されたコンテンツデータに対して何らセキュリティがかけられていない初期状態となる。
The Disable Read Scramble command is a command for transitioning from the obfuscated
In this way, the Disable Read Scramble command erases the obfuscated data selection information flag held in the
この補助記憶装置40を遊技機メーカー等の販売先に出荷する際には、初期設定としてRawデータ出力状態100に設定されている。こうすることにより、電源を投入した状態でRawデータの書き込みと読み出しを行えるため、販売先におけるコンテンツデータの開発作業が円滑に行われるようになっている。
When this
なお、本発明の第一の実施形態では、図2に示すように、補助記憶装置40が、Rawデータ出力状態100、難読化データ出力状態102、一時的Rawデータ出力状態104の3つの状態に遷移するようになっている。しかし、必ずしもこれら3つの状態を取る必要はなく、難読化データ出力状態102と一時的Rawデータ出力状態104との2つの状態の間を遷移するようにしてもよい。
また、難読化データ出力状態102において、補助記憶装置40が難読化データを出力する目的の一つは、記憶部42に記憶されているデータのセキュリティの確保であるが、データセキュリティの確保のみであれば、難読化データ出力状態102で、Release Read ScrambleコマンドやDisable Read Scrambleコマンドが入力されない限り、データの出力を停止するようにしてもよい。
In the first embodiment of the present invention, as shown in FIG. 2, the
Furthermore, in the obfuscated
<<ROMライタ>>
図3は、補助記憶装置40とROMライタ70の機能構成を示すブロック図である。ROMライタ70は、補助記憶装置40に接続される外部装置の一例である。
ROMライタ70は、補助記憶装置40の記憶部42に遊技用のコンテンツデータを書き込ませる手段である。ROMライタ70には、補助記憶装置40の記憶部42に格納する遊技用のコンテンツデータ等が記憶されたHDD(Hard Disk Drive)90等の記憶媒体が接続されており、HDD90からコンテンツデータを読み出すと共に、読み出したコンテンツデータを書き込み先である補助記憶装置40に出力する。
このようにコンテンツデータの書き込み等、遊技機の製造過程においては、データの書き込みや読み出しに難読化データを用いないため、書き込み、読み出しを高速に行うことが可能となる。
<<ROM writer>>
FIG. 3 is a block diagram showing the functional configuration of the
The
In this way, in the manufacturing process of the game machine, such as writing content data, obfuscated data is not used for writing or reading data, so writing and reading can be performed at high speed.
CPU72は、ROMライタ70の全体を制御する。ROM74は、制御プログラム等を格納する不揮発性のメモリである。RAM76は、CPU72のワークメモリとして機能する揮発性の記憶手段である。I/F制御部82は、補助記憶装置40等の外部装置とのインターフェースを制御する。
入力回路78は、キーやスイッチ等を備えた入力装置86から入力された値や指示等を受け付けてCPU72に出力する。表示回路80はCPU72からの命令に基づいて、各種の情報を表示装置88に表示する。
The
The input circuit 78 receives values, instructions, etc. input from an
補助記憶装置40では、ROMライタ70から送信されてくる遊技用のコンテンツデータをホストI/F制御部56で受け付けて、全体制御部50が、受け付けたコンテンツデータをRawデータのまま記憶部42に記憶させる。このように、記憶部42にRawデータを直接書き込むことができるため、書き込みデータに暗号化等の処理を施す必要がなく、書き込み性能の低下が生じない。
なお、記憶部42へのデータの書き込みは、補助記憶装置40が、Rawデータ出力状態100、難読化データ出力状態102、一時的Rawデータ出力状態104のいずれの状態であっても可能なようになっている。
そして、記憶部42へのデータの書き込み終了後には、補助記憶装置40に向けてEnable Read Scrambleコマンドを送信し、状態記憶部45に難読化データ選択情報のフラグを立てておくことが好ましい。こうすることにより、電源投入時等に補助記憶装置40が難読化データ出力状態102で立ち上がるようになり、データセキュリティが確保される。
なお、補助記憶装置40に格納されたコンテンツデータの正常性を検査するにあたっては、難読化されたコンテンツデータのチェックサム値を利用することで対応すれば良い。例えば、検査員が遊技機の検査を行う場合、遊技機から補助記憶装置40を取り出し、ROMライタ(ROMチェッカ)70でチェックサム値の確認が行われるが、遊技機に実装され、稼働状態となった後に遊技機の電源を遮断して補助記憶装置40を取り出すと、一時状態記憶部47に書き込まれたRawデータ選択情報のフラグは消去され、状態記憶部45に書き込まれた難読化データ選択情報のフラグのみ残るので、補助記憶装置40は難読化データ出力状態102の状態となり、難読化されたコンテンツのチェックサム値を利用することで、データの改変が行われていないことを確認することができる。
In the
Note that data can be written to the
After writing data to the
Note that the normality of the content data stored in the
<補助記憶装置の使用方法>
次に、補助記憶装置40に記憶されているデータを読み出す際の使用方法について説明する。
<How to use auxiliary storage>
Next, a method for reading data stored in the
図4は、補助記憶装置40からデータを出力させる手順の一例を示すフローチャートである。
まず、補助記憶装置40をデータ処理プロセッサ10等に接続して、電源を投入すると、補助記憶装置40は、電源投入時の起動動作を行う(ステップS1)。この起動動作における補助記憶装置40の状態設定手順が、後述する図5のフローチャートとして示されている。
起動後、データ処理プロセッサ10等から状態設定コマンドが入力され、補助記憶装置40のホストI/F制御部56で受け付けられると、補助記憶装置40は、受け付けた状態設定コマンドに基づいて状態遷移動作を行う(ステップS2)。この状態遷移動作における補助記憶装置40の状態設定手順が、後述する図6のフローチャートとして示されている。
その後、データ処理プロセッサ10等からデータ出力要求コマンドが入力され、ホストI/F制御部56で受け付けられると、補助記憶装置40は、記憶部42に記憶されているデータをホストI/F制御部56から出力するデータ出力動作を行う(ステップS3)。このデータ出力動作における補助記憶装置40のデータ出力手順が、後述する図7のフローチャートとして示されている。
ただし、データ処理プロセッサ10等から状態設定コマンドが入力されず、データ出力要求コマンドが入力される場合には、ステップS2はスキップされ、次のステップ3に進むようになっている。
FIG. 4 is a flowchart showing an example of a procedure for outputting data from the
First, when the
After startup, when a state setting command is input from the
Thereafter, when a data output request command is input from the
However, if a status setting command is not input from the
図5は、補助記憶装置40について電源投入またはリセットしたときの状態設定手順の一例を示すフローチャートである。
補助記憶装置40に電源が投入されると、状態制御部60は、状態記憶部45及び一時状態記憶部47に格納されている出力データ選択情報を読み取る(ステップS11)。そして、状態制御部60はいずれの記憶部にも出力データ選択情報がない場合(ステップS12でYes)にはRawデータ出力状態100として制御する(ステップS14)。一方、いずれかの記憶部に出力データ選択情報があり(ステップS12でNo)、かつ、一時状態記憶部47にRawデータ選択情報がある場合(ステップS13でYes)、一時的Rawデータ出力状態104として制御する(ステップS15)。さらに、いずれかの記憶部に出力データ選択情報があり(ステップS12でNo)、かつ、一時状態記憶部47にRawデータ選択情報がない場合(ステップS13でNo)、難読化データ出力状態102として制御する(ステップS16)。
FIG. 5 is a flowchart showing an example of a state setting procedure when the
When the
図6は、補助記憶装置40が状態設定コマンドを受け付けたときの状態設定手順の一例を示すフローチャートである。
上述のように状態設定コマンドとは、Enable Read Scramble(ERS)コマンド、Disable Read Scramble(DRS)コマンド、Release Read Scramble(RRS)コマンドのことであり、これらのコマンドは、Rawデータまたは難読化データのいずれかの出力形式を指定する出力データ選択情報を決定する。
FIG. 6 is a flowchart showing an example of a state setting procedure when the
As mentioned above, the state setting commands are the Enable Read Scramble (ERS) command, Disable Read Scramble (DRS) command, and Release Read Scramble (RRS) command, and these commands are used to read raw data or obfuscated data. Determine output data selection information that specifies one of the output formats.
補助記憶装置40のホストI/F制御部56で状態設定コマンドが受け付けられると(ステップS20)、状態制御部60は、状態記憶部45および一時状態記憶部47に格納されている出力データ選択情報に関するフラグをチェックする(ステップS21)。
When the host I/
状態制御部60が状態記憶部45にデータ選択情報フラグありと判断すると(ステップS22でYes)、受け付けた状態設定コマンドがRelease Read Scramble(RRS)コマンドか否かを判断し、受け付けた状態設定コマンドがRRSコマンドの場合(ステップS23でYes)、一時状態記憶部47にRawデータ選択情報のフラグを立て(ステップS24)、一時的Rawデータ出力状態104に遷移する(ステップS25)。
一方、受け付けた状態設定コマンドがRelease Read Scramble(RRS)コマンドでない場合(ステップS23でNo)、受け付けコマンドがDisable Read Scramble(DRS)コマンドか否かを判断し(ステップS26)、受け付けた状態設定コマンドがDRSコマンドの場合(ステップS26でYes)、状態記憶部45及び一時状態記憶部47の出力データ選択情報に関するフラグを消去し(ステップS27)、Rawデータ出力状態100に遷移する(ステップS28)。
また、ステップS26において、受け付けコマンドがDRSコマンドでない場合(ステップS26でNo)、状態遷移は行わず難読化データ出力状態102を維持する(ステップS29)。
すなわち、状態記憶部45に出力データ選択情報のフラグがあれば補助記憶装置40は難読化データ出力状態102であり、難読化データ出力状態102からはRRSコマンドあるいはDRSコマンドによってのみ状態が遷移し、ERSコマンドが入力されても難読化データ出力状態102を維持する。
また、ステップS22において、状態記憶部45に出力データ選択情報のフラグが無い場合(ステップS22でNo)、受け付けた状態設定コマンドがERSコマンドか否か判断し(ステップS30)、ERSコマンドである場合(ステップS30でYes)、状態記憶部45に難読化データ選択情報のフラグを立て(ステップS31)、難読化データ出力状態102に遷移する(ステップS29)。なお、ステップS30で受け付けコマンドがERSコマンド以外と判断した場合(ステップS30でNo)、状態遷移は行わずに終了する。例えば、状態記憶部45に出力データ選択情報のフラグが無い状態でRRSコマンドやDRSコマンドが誤って入力されても、何ら状態遷移は行われない。
When the
On the other hand, if the received status setting command is not a Release Read Scramble (RRS) command (No in step S23), it is determined whether the accepted command is a Disable Read Scramble (DRS) command (step S26), and the received status setting command If is a DRS command (Yes in step S26), the flags related to the output data selection information in the
Further, in step S26, if the received command is not a DRS command (No in step S26), no state transition is performed and the obfuscated
That is, if the
Further, in step S22, if there is no flag of output data selection information in the status storage unit 45 (No in step S22), it is determined whether the received status setting command is an ERS command (step S30), and if it is an ERS command, (Yes in step S30), sets a flag for obfuscated data selection information in the state storage unit 45 (step S31), and transitions to obfuscated data output state 102 (step S29). Note that if it is determined in step S30 that the received command is other than the ERS command (No in step S30), the process ends without performing any state transition. For example, even if an RRS command or a DRS command is erroneously input in a state where there is no flag of output data selection information in the
図7は、補助記憶装置40がデータ出力要求コマンドを受け付けたときのデータ出力手順の一例を示すフローチャートである。
補助記憶装置40のホストI/F制御部56でデータ出力要求コマンドが受け付けられると(ステップS41)、全体制御部50は、コマンドが有効か否かを判断し(ステップS42)、無効の場合には無効である通知を、ホストI/F制御部から外部に出力する(ステップS43)。一方、受け付けコマンドが有効な場合(ステップS42でYes)、補助記憶装置の出力データ選択情報に応じ、難読化データあるいはRawデータを出力する(ステップS44)。
<第一の実施形態の効果>
以上のように、この第一の実施形態によれば、記憶部42に記憶されているデータの出力形式として、Rawデータの形式と、Rawデータに難読化処理を施した難読化データの形式を選択できるようになっている。Rawデータの形式で出力する場合、データ処理プロセッサ10等は、何も処理を加えずそのままのデータを使用することができるため、読み出し性能の低下が生じない。また、記憶部42に記憶されているRawデータを読み出してそのまま出力するため、記憶部42に書き込んだデータと読み出したデータとが完全に一致する。このため、例えば復号処理により発生する記憶部42に記憶させたデータと復号後のデータとが完全に一致しないというデータの不具合が生ずるおそれもない。
一方、難読化データの形式で出力する場合、Rawデータに戻すには難読化解除処理を施す必要があり、出力されたデータをそのままの形式では使用できない。このため、記憶部42に記憶されているデータのセキュリティを確保することができる。
また、記憶部42には、Rawデータを書き込むことができるため、書き込みデータに何の処理も施す必要がなく、書き込み性能の低下が生じない。
さらに、外部から入力される状態設定コマンドにより難読化データの出力状態とRawデータの出力状態とを切り換えて、データを出力させるようになっており、コマンドの送信により容易にデータの出力形式を変更できる。
FIG. 7 is a flowchart showing an example of a data output procedure when the
When the data output request command is accepted by the host I/
<Effects of the first embodiment>
As described above, according to the first embodiment, the output format of the data stored in the
On the other hand, when outputting in the form of obfuscated data, it is necessary to perform deobfuscation processing to return to raw data, and the outputted data cannot be used in its original form. Therefore, the security of the data stored in the
Further, since raw data can be written to the
Furthermore, the data can be output by switching between the obfuscated data output state and the raw data output state using a state setting command input from the outside, and the data output format can be easily changed by sending a command. can.
遊技用のコンテンツデータを格納した記憶部42は、遊技の健全性を担保するために実施される検定の対象となる。検定においては、記憶部42の全領域を対象としたチェックサム値を利用して、記憶部42に格納されたコンテンツデータの正常性が検査される。記憶部42に記憶されているデータを難読化データの形式で出力させることにより、不正使用の場合にデータのセキュリティを確保しつつ、難読化データのチェックサム値を検査に利用することにより、検定をパスさせることができる。
The
また、第一の実施形態によれば、電源投入時等、状態記憶部45及び一時状態記憶部47に格納されている出力データ選択情報に基づいて、補助記憶装置40がRawデータ出力状態100または難読化データ出力状態102のいずれかの状態として立ち上がる。このため、電源投入時等の補助記憶装置40の出力形式を確実に設定することができる。電源投入時等の補助記憶装置40の出力形式がRawデータの場合、記憶部42にRawデータを書き込み、記憶部42に記憶されているRawデータをそのまま読み出せるため、通常の外部メモリ装置として使用することができる。また、電源投入時等の出力形式がRawデータであれば、記憶部42に格納されるコンテンツデータの開発作業時に、開発中のRawデータを記憶部42に書き込み、記憶部42に記憶させたRawデータをそのまま読み出して評価や検査を行うことができ、開発効率が向上する。
一方、電源投入時等の出力形式が難読化データである場合、記憶部42にデータが格納されている補助記憶装置40を不正に入手しても、出力されるデータが難読化されているため、読み出したデータをそのまま使用することができない。このため、記憶部42に格納されているデータのセキュリティが確保される。また、電源投入時等の出力形式が難読化データであれば、不正に入手した補助記憶装置40を通常の外部メモリ装置として使用を試みても、出力されるデータが難読化されているため、通常の外部メモリ装置として使用することができない。このため、補助記憶装置40の不正な流通を防止することができる。
Further, according to the first embodiment, when the power is turned on, etc., the
On the other hand, if the output format at power-on is obfuscated data, even if the
また、第一の実施形態によれば、外部から入力される状態設定コマンドにより電源投入時等の補助記憶装置40の出力形式をRawデータまたは難読化データのいずれかに設定することができるようになっており、コマンドの送信により電源投入時等のデータ出力形式を容易に設定することができる。
Further, according to the first embodiment, the output format of the
〔第二の実施形態〕
次に、本発明の第二の実施形態に係る情報処理装置について図8等を用いて説明する。この第二の実施形態に係る情報処理装置の構成は、図1に示す上述の第一の実施形態の構成とほぼ同様になっている。
この第二の実施形態と第一の実施形態との相違は、補助記憶装置40にコマンド変換部66を備えると共に、上位CPU2またはデータ処理プロセッサ10と、補助記憶装置40との間で通信されるコマンドが異なっている点にある。第一の実施形態では、Enable Read Scrambleコマンド、Disable Read Scrambleコマンド、Release Read Scrambleコマンドの状態設定コマンドがそのまま通信に使用されている。一方、第二の実施形態では、状態設定コマンドを通信に使用せず、状態設定コマンドと一対一に対応づけられている文字、数字または記号のいずれかを含む文字列で構成されるコマンド文字列が通信に使用される。
[Second embodiment]
Next, an information processing apparatus according to a second embodiment of the present invention will be described using FIG. 8 and the like. The configuration of the information processing apparatus according to the second embodiment is almost the same as the configuration of the above-described first embodiment shown in FIG.
The difference between the second embodiment and the first embodiment is that the
補助記憶装置40は、外部から入力されてくる入力コマンド文字列を受け付けると、この入力コマンド文字列をコマンド変換部66に供給し、入力コマンド文字列を予め設定したコマンドに変換する。ここで、入力コマンド文字列とは、上位CPU2またはデータ処理プロセッサ10などの外部からコマンドとして補助記憶装置40に入力されてくる文字列のことである。
そして、補助記憶装置40では、入力コマンド文字列がコマンド変換対象のコマンドの場合に所定のコマンドに変換され状態設定コマンドが受け付けられたと判定する。それ以後は、この状態設定コマンドに基づいて、上述の第一の実施形態に係る補助記憶装置40と同様の動作を行うようになっている。
When the
Then, in the
<コマンド文字列>
図9には、補助記憶装置40の状態設定コマンドと、その状態設定コマンドに一対一に対応づけられているコマンド文字列の一例が示されている。例えば、状態設定コマンドであるEnable Read Scrambleコマンドには、A_Company_Enableという文字列をコマンド文字列として一対一に対応づけることができる。同様に、Disable Read Scrambleコマンドには、A_Company_Disableというコマンド文字列を、Release Read Scrambleコマンドには、A_Company_Releaseというコマンド文字列をそれぞれ一対一に対応づけることができる。このようにERSコマンド、DRSコマンド、RRSコマンドを直接利用せず、任意のコマンド文字列を所定の状態設定コマンドに変換する機能を持たせることで補助記憶装置の出力状態を制御するコマンドを補助記憶装置の利用者に開示することなく、補助記憶装置の出力を変更することが可能となる。
また、コマンド文字列を構成する文字、数字、記号等の組合せを、補助記憶装置40の販売先ごとや、記憶部42に記憶させるコンテンツデータごとに異なるように文字列を割り当てることもできる。こうすることにより、コマンド文字列を細かく管理することができるようになり、補助記憶装置40の使用対象範囲を細かく設定したり、制限したりすることができるようになる。この結果、特定の使用者や特定の用途以外には、補助記憶装置40を使用できなくなるため、コマンド文字列がパスワードとして機能するようになる。
例えば、販売先であるA社に対しては、A_Company_Enable、A_Company_Disable、A_Company_Releaseというコマンド文字列を設定し、B社に対しては、B_Company_Enable、B_Company_Disable、B_Company_Releaseというコマンド文字列を設定することができる。このように設定すると、A社向けに販売した補助記憶装置40を、B社が不正に入手しても、A社用のコマンド文字列が分からず、補助記憶装置40の不正使用を防止することができる。
また、あるコンテンツデータ1に対しては、Content1_Enable、Content1_Disable、Content1_Releaseというコマンド文字列を設定し、別のコンテンツデータ2に対しては、Content2_Enable、Content2_Disable、Content2_Releaseというコマンド文字列を設定することができる。このように設定すると、コンテンツデータ1向けの補助記憶装置40を、誤ってコンテンツデータ2用のデータ処理プロセッサ10等に接続すると、正常に動作しないため、すぐに誤使用に気づくことができる。
<Command string>
FIG. 9 shows an example of a status setting command for the
Furthermore, the combination of letters, numbers, symbols, etc. that make up the command string can be assigned to different combinations for each sales destination of the
For example, command strings such as A_Company_Enable, A_Company_Disable, and A_Company_Release can be set for company A, which is a sales destination, and command strings such as B_Company_Enable, B_Company_Disable, and B_Company_Release can be set for company B. With this setting, even if Company B illegally obtains the
Furthermore, command strings such as Content1_Enable, Content1_Disable, and Content1_Release can be set for a
<補助記憶装置のコマンド変換部>
データ処理プロセッサ10等と補助記憶装置40との間の通信に、状態設定コマンドに代えてコマンド文字列を使用するため、補助記憶装置40のコマンド変換部66には、状態設定コマンドとともに、コマンド文字列があらかじめ記憶される。
補助記憶装置40が、外部から入力されてくる入力コマンド文字列を受け付けると、全体制御部50は、この入力コマンド文字列を、コマンド変換部66に供給する。コマンド変換部66では、あらかじめ記憶されているコマンド文字列と入力コマンド文字列とを比較して、入力コマンド文字列に一致するコマンド文字列を抽出する。そして、コマンド変換部66は、この一致したコマンド文字列に対応づけられている状態設定コマンドが受け付けられたものと判定し、この状態設定コマンドを全体制御部50に出力する。その後、この状態設定コマンドに基づいて、状態制御部60が制御され、Rawデータまたは難読化データの出力形式の選択が行われる。
<Command converter of auxiliary storage device>
In order to use a command character string in place of the status setting command for communication between the
When the
なお、コマンド変換部66で変換されるコマンド文字列は、補助記憶装置40の販売先などで、任意に変更できるようにしてもよい。このようにするには、コマンド文字列を書き換えるための所定のコマンドを用意しておき、販売先などにおいて、上位CPU2またはデータ処理プロセッサ10から補助記憶装置40に向けてこの所定のコマンドを送信して、コマンド変換部66に保持されているコマンド文字列を書き換えるようにすればよい。
Note that the command character string converted by the
<第二の実施形態の効果>
この第二の実施形態によれば、上述の第一の実施形態と同様の効果を生ずる。
それに加えて、この第二の実施形態によれば、補助記憶装置40は、受信した入力コマンド文字列に基づいて、該コマンド文字列に対応づけられている状態設定コマンドが受け付けられたと判定する。コマンド文字列は、補助記憶装置40の販売先ごとや補助記憶装置40に記憶させるデータの内容ごとに異なる文字列を割り当てることができるため、コマンド文字列の設定を細かく管理することできる。この結果、記憶部42に記憶されているデータのセキュリティが向上するとともに、補助記憶装置40の不正使用を防止することができる。
<Effects of the second embodiment>
According to this second embodiment, effects similar to those of the first embodiment described above are produced.
In addition, according to the second embodiment, the
〔第三の実施形態〕
次に、本発明の第三の実施形態に係る情報処理装置について説明する。
図10は、この第三の実施形態に係る情報処理装置の構成を示す機能ブロック図である。この補助記憶装置40は、図1に示す上述の第一の実施形態の構成に、復号機能を有するコマンド変換部66が追加された構成になっている。また、上位CPU2またはデータ処理プロセッサ10は、図1に示す上述の第一の実施形態の構成に、コマンドを暗号化するコマンド暗号化部25が追加された構成になっている。それ以外の情報処理装置1の構成は、第一の実施形態の構成とほぼ同様である。
第三の実施形態と第一の実施形態との相違は、上位CPU2またはデータ処理プロセッサ10から補助記憶装置40に向けて送信される状態設定コマンドが暗号化されている点にある。
[Third embodiment]
Next, an information processing apparatus according to a third embodiment of the present invention will be described.
FIG. 10 is a functional block diagram showing the configuration of an information processing apparatus according to the third embodiment. This
The difference between the third embodiment and the first embodiment is that the status setting command sent from the
データ処理プロセッサ10等では、補助記憶装置40との通信に使用するコマンドをコマンド暗号化部25にて所定の暗号鍵を用いて暗号化してから送信する。そして、補助記憶装置40のコマンド変換部(復号部)66では、受信したコマンドを所定の復号鍵を用いて復号する。それ以後は、復号されたコマンドに基づいて、上述の第一の実施形態に係る補助記憶装置40と同様の動作が行われる。
In the
この第三の実施形態によれば、上述の第一の実施形態と同様の効果を生ずる。
それに加えて、この第三の実施形態によれば、暗号化されている状態設定コマンドを復号し、復号された状態設定コマンドに基づいて補助記憶装置40の制御が行われる。外部からは暗号化されていない状態設定コマンドを読み取ることができないため、記憶部42に記憶されているデータを不正に読み出すことができず、データのセキュリティが向上するとともに、補助記憶装置40の不正使用を防止することができる。
According to this third embodiment, effects similar to those of the first embodiment described above are produced.
In addition, according to the third embodiment, the encrypted status setting command is decrypted, and the
1…情報処理装置、10…データ処理プロセッサ、40…補助記憶装置(不揮発性記憶装置)、42…記憶部(不揮発性メモリ)、45…状態記憶部、46…メモリコントローラ、47…一時状態記憶部、50…全体制御部、56…ホストI/F制御部(コマンド受付部、データ出力部)、60…状態制御部、62…難読化部、66…コマンド変換部(復号部)、70…ROMライタ、100…Rawデータ出力状態、102…難読化データ出力状態、104…一時的Rawデータ出力状態
DESCRIPTION OF
Claims (3)
該記憶部に記憶されているRawデータに難読化処理を施して前記Rawデータと異なる形式の難読化データに変換する難読化部と、
前記Rawデータまたは前記難読化データの出力形式で前記記憶部に記憶されているデータを出力するデータ出力部と、
外部から入力される前記Rawデータまたは前記難読化データのいずれかの出力形式を指定する出力データ選択情報を含む状態設定コマンドを受け付けるコマンド受付部と、
難読化データ選択情報を格納する不揮発性メモリにより構成した状態記憶部と、
Rawデータ選択情報を格納する揮発性メモリにより構成した一時状態記憶部と、
前記状態記憶部及び前記一時状態記憶部を制御する状態制御部とを備え、
該状態制御部は、前記状態記憶部及び前記一時状態記憶部に格納された前記出力データ選択情報に基づいて前記記憶部から読み出し前記データ出力部から出力されるデータ形式を前記Rawデータあるいは前記難読化データとするように制御することを特徴とする不揮発性記憶装置。 A storage section configured with non-volatile memory in which data can be written and read;
an obfuscation unit that performs obfuscation processing on the raw data stored in the storage unit and converts it into obfuscated data in a format different from the raw data;
a data output unit that outputs the data stored in the storage unit in an output format of the raw data or the obfuscated data;
a command reception unit that receives a status setting command including output data selection information specifying an output format of either the raw data or the obfuscated data input from the outside;
a state storage unit configured with a nonvolatile memory that stores obfuscated data selection information;
a temporary state storage unit configured with a volatile memory that stores raw data selection information;
comprising a state control unit that controls the state storage unit and the temporary state storage unit,
The state control section reads out the data from the storage section based on the output data selection information stored in the state storage section and the temporary state storage section, and converts the data format output from the data output section into the raw data or the difficult-to-read data format. 1. A non-volatile storage device characterized by being controlled so as to store converted data.
前記コマンド受付部で受け付けられる前記コマンド文字列が、前記コマンド変換部に供給され前記状態設定コマンドに変換されると、
前記状態制御部は、変換された前記状態設定コマンドに基づいて前記状態記憶部及び前記一時状態記憶部に前記出力データ選択情報を格納し、前記記憶部から読み出し前記データ出力部から出力されるデータ形式を前記Rawデータあるいは前記難読化データとするように制御することを特徴とする請求項1に記載の不揮発性記憶装置。 comprising a command conversion unit that converts a command string consisting of a character string containing any of letters, numbers, or symbols into the state setting command associated with the command string;
When the command string received by the command reception unit is supplied to the command conversion unit and converted into the state setting command,
The state control section stores the output data selection information in the state storage section and the temporary state storage section based on the converted state setting command, and reads the output data selection information from the storage section and outputs the data from the data output section. 2. The nonvolatile storage device according to claim 1, wherein the format is controlled to be the raw data or the obfuscated data.
前記コマンド受付部で受け付けられる前記状態設定コマンドが、前記コマンド変換部に供給され復号されると、
前記状態制御部は、復号された前記状態設定コマンドに基づいて前記状態記憶部及び前記一時状態記憶部に前記出力データ選択情報を格納し、前記記憶部から読み出し前記データ出力部から出力されるデータ形式を前記Rawデータあるいは前記難読化データとするように制御することを特徴とする請求項1に記載の不揮発性記憶装置。
comprising a command conversion unit that decrypts the encrypted state setting command;
When the state setting command received by the command reception unit is supplied to the command conversion unit and decoded,
The state control section stores the output data selection information in the state storage section and the temporary state storage section based on the decoded state setting command, and reads the output data selection information from the storage section and outputs the data from the data output section. 2. The nonvolatile storage device according to claim 1, wherein the format is controlled to be the raw data or the obfuscated data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020008269A JP7361382B2 (en) | 2020-01-22 | 2020-01-22 | non-volatile storage |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020008269A JP7361382B2 (en) | 2020-01-22 | 2020-01-22 | non-volatile storage |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021117522A JP2021117522A (en) | 2021-08-10 |
JP7361382B2 true JP7361382B2 (en) | 2023-10-16 |
Family
ID=77175618
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020008269A Active JP7361382B2 (en) | 2020-01-22 | 2020-01-22 | non-volatile storage |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7361382B2 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002024090A (en) | 2000-07-12 | 2002-01-25 | Matsushita Electric Ind Co Ltd | Semiconductor device |
JP2007304847A (en) | 2006-05-11 | 2007-11-22 | Megachips Lsi Solutions Inc | Memory device |
-
2020
- 2020-01-22 JP JP2020008269A patent/JP7361382B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002024090A (en) | 2000-07-12 | 2002-01-25 | Matsushita Electric Ind Co Ltd | Semiconductor device |
JP2007304847A (en) | 2006-05-11 | 2007-11-22 | Megachips Lsi Solutions Inc | Memory device |
Also Published As
Publication number | Publication date |
---|---|
JP2021117522A (en) | 2021-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5100884B1 (en) | Memory device | |
US8589669B2 (en) | Data protecting method, memory controller and memory storage device | |
US20090024784A1 (en) | Method for writing data into storage on chip and system thereof | |
US20140250302A1 (en) | Device | |
JP4816012B2 (en) | Information processing apparatus, software installation method, and optical disc | |
KR20140046476A (en) | Authenticator | |
JP2004013905A (en) | Use of hashing in secure bootloader | |
WO1999038078A1 (en) | Storage device, encrypting/decrypting device, and method for accessing nonvolatile memory | |
JP2008102618A (en) | Electronic equipment and firmware protecting method | |
JP5204291B1 (en) | Host device, device, system | |
WO2006126686A1 (en) | Data processing device | |
WO2006129654A1 (en) | Electronic device, update server device, key update device | |
US7076667B1 (en) | Storage device having secure test process | |
WO2007000993A1 (en) | Verification method, information processing device, recording medium, verification system, certification program, and verification program | |
JP2006079449A (en) | Storage medium access control method | |
US20050263977A1 (en) | Method of preventing firmware piracy | |
JP4991971B1 (en) | Device to be authenticated and authentication method thereof | |
JP4767619B2 (en) | External storage device and SBC control method | |
JP5204290B1 (en) | Host device, system, and device | |
US20130007396A1 (en) | Method for protecting digital contents of a solid state memory | |
JP2005332221A (en) | Storage device | |
US9875048B2 (en) | Solid state memory unit and method for protecting a memory including verification of a sequence of requests for access to physical blocks | |
JP7361382B2 (en) | non-volatile storage | |
JP5759827B2 (en) | MEMORY SYSTEM, INFORMATION PROCESSING DEVICE, MEMORY DEVICE, AND MEMORY SYSTEM OPERATION METHOD | |
US11113399B2 (en) | Electronic apparatus and control method of electronic apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230116 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230908 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20230919 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230926 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7361382 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |