JP7361382B2 - non-volatile storage - Google Patents

non-volatile storage Download PDF

Info

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
Application number
JP2020008269A
Other languages
Japanese (ja)
Other versions
JP2021117522A (en
Inventor
敦志 小畑
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Axell Corp
Original Assignee
Axell Corp
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 Axell Corp filed Critical Axell Corp
Priority to JP2020008269A priority Critical patent/JP7361382B2/en
Publication of JP2021117522A publication Critical patent/JP2021117522A/en
Application granted granted Critical
Publication of JP7361382B2 publication Critical patent/JP7361382B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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には、外部メモリにデータを書き込むとき、アドレスを暗号化して書き込みアドレスを生成しかつ書き込みデータを暗号化して書き込み用暗号化データを生成し、外部メモリからデータを読み出すとき、アドレスを暗号化して読み出しアドレスを生成しかつその外部メモリから読み出された暗号化データを復号して平文データを生成するプロセッサ装置が記載されている。
Patent Document 1 below discloses that data and programs stored in an external memory device are encrypted, and a microprocessor and a program that are read out from the external memory device are decrypted when processed by the microprocessor itself. , a microprocessor that encrypts address information for writing data and programs to an external memory device.
Furthermore, Patent Document 2 below describes that when writing data to an external memory, an address is encrypted to generate a write address, the write data is encrypted to generate write encrypted data, and when data is read from an external memory, , a processor device is described that encrypts an address to generate a read address and decrypts the encrypted data read from the external memory to generate plaintext data.

特開2003-203013号公報Japanese Patent Application Publication No. 2003-203013 特開2009-163284号公報Japanese Patent Application Publication No. 2009-163284

しかしながら、特許文献1及び2のように、セキュリティ確保のため暗号化されたデータを外部メモリ装置に記憶させる構成では、外部メモリ装置にデータを書き込む際に暗号化処理が必要となり書き込み性能が低下し、また読み出し時にも復号処理が必要となり読み出し性能も低下するという課題がある。
本発明は上述の事情に鑑みてなされたものであり、データのセキュリティを確保しつつ、書き込み性能の低下や、読み出し性能の低下が生じない不揮発性記憶装置を提供することを目的とする。
However, in a configuration such as Patent Documents 1 and 2, in which encrypted data is stored in an external memory device to ensure security, encryption processing is required when writing data to the external memory device, resulting in a decrease in write performance. Moreover, there is a problem that decoding processing is required even when reading, and reading performance also deteriorates.
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 claim 1 includes a storage unit configured of a nonvolatile memory in which data can be written and read, and an obfuscation process is applied to the raw data stored in the storage unit. an obfuscation unit that converts the raw data into obfuscated data in a different format from the raw data; a data output unit that outputs the data stored in the storage unit in the output format of the raw data or the obfuscated data; A command receiving unit that accepts a status setting command including output data selection information that specifies an output format of either the input raw data or the obfuscated data, and a nonvolatile memory that stores the obfuscated data selection information. A state storage unit, a temporary state storage unit configured with a volatile memory that stores raw data selection information, and a state control unit that controls the state storage unit and the temporary state storage unit, the state control unit: Based on the output data selection information stored in the state storage unit and the temporary state storage unit, the data format read from the storage unit and output from the data output unit is set as the raw data or the obfuscated data. It is characterized in that it is a controlled non-volatile storage device.

請求項2に係る発明は、請求項1に記載の構成に加えて、文字、数字または記号のいずれかを含む文字列で構成されるコマンド文字列を、該コマンド文字列に対応づけられている前記状態設定コマンドに変換するコマンド変換部を備え、前記コマンド受付部で受け付けられる前記コマンド文字列が、前記コマンド変換部に供給され前記状態設定コマンドに変換されると、前記状態制御部は、変換された前記状態設定コマンドに基づいて前記状態記憶部及び前記一時状態記憶部に前記出力データ選択情報を格納し、前記記憶部から読み出し前記データ出力部から出力されるデータ形式を前記Rawデータあるいは前記難読化データとするように制御する不揮発性記憶装置としたことを特徴とする。 The invention according to claim 2 further comprises, in addition to the configuration described in claim 1, a command string composed of a character string containing any of letters, numbers, or symbols, which is associated with the command string. The state control unit includes a command conversion unit that converts the state setting command, and when the command character string received by the command reception unit is supplied to the command conversion unit and converted to the state setting command, the state control unit converts the command character string to the state setting command. The output data selection information is stored in the state storage section and the temporary state storage section based on the state setting command, and the output data selection information is read from the storage section and the data format output from the data output section is set to the raw data or the data output section. The present invention is characterized in that it is a non-volatile storage device that is controlled to obfuscate data.

請求項3に係る発明は、請求項1に記載の構成に加えて、暗号化されている前記状態設定コマンドを復号するコマンド変換部を備え、前記コマンド受付部で受け付けられる前記状態設定コマンドが、前記コマンド変換部に供給され復号されると、前記状態制御部は、復号された前記状態設定コマンドに基づいて前記状態記憶部及び前記一時状態記憶部に前記出力データ選択情報を格納し、前記記憶部から読み出し前記データ出力部から出力されるデータ形式を前記Rawデータあるいは前記難読化データとするように制御する不揮発性記憶装置としたことを特徴とする。 The invention according to claim 3 includes, in addition to the configuration according to claim 1, a command conversion unit that decrypts the encrypted status setting command, and the status setting command received by the command reception unit is When supplied to the command conversion unit and decoded, the state control unit stores the output data selection information in the state storage unit and the temporary state storage unit based on the decoded state setting command, and stores the output data selection information in the storage unit and the temporary state storage unit. The non-volatile storage device controls the data format read from the data output section and output from the data output section to be the raw data or the obfuscated data.

請求項1に係る発明によれば、記憶部に記憶されているデータの出力形式として、Rawデータの形式と、Rawデータに難読化処理を施した難読化データの形式のいずれかを選択できるようになっている。Rawデータの形式で出力する場合、何も処理を加えずそのままのデータを使用することができるため、読み出し性能の低下が生じない。
一方、難読化データの形式で出力する場合、Rawデータに戻すには難読化解除処理を施す必要があり、出力されたデータをそのままの形式で使用することができない。このため、記憶部に記憶されているデータのセキュリティを確保することができる。
また、記憶部には、Rawデータを書き込むことができるため、書き込みデータに何の処理も施す必要がなく、書き込み性能の低下が生じない。
According to the invention according to claim 1, it is possible to select either a raw data format or an obfuscated data format in which raw data is subjected to obfuscation processing as the output format of the data stored in the storage unit. It has become. When outputting in the raw data format, the data can be used as is without any processing, so no deterioration in read performance occurs.
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 claim 2, receiving a command string composed of a character string containing any one of letters, numbers, or symbols, and converting it into a status setting command associated with this command string, The data format to be output is selected based on this converted status setting command. The command string associated with the status setting command can be assigned a different character string depending on the sales destination of the nonvolatile storage device or the content of data stored in the storage unit, so it is possible to assign a different string to the command string associated with the status setting command. The range can be limited. As a result, the security of data stored in the storage unit is improved, and it is possible to prevent unauthorized acquisition and use of the nonvolatile storage device.

請求項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.

本発明の第一の実施形態に係る情報処理装置の構成を説明するための機能ブロック図である。FIG. 1 is a functional block diagram for explaining the configuration of an information processing device according to a first embodiment of the present invention. 同第一の実施形態に係る補助記憶装置の状態遷移を説明する図であり、(a)は全ての状態の遷移関係を示す図、(b)は状態遷移するトリガーと遷移前後の状態を示す図である。FIG. 3 is a diagram illustrating the state transition of the auxiliary storage device according to the first embodiment, in which (a) is a diagram showing the transition relationship of all states, and (b) is a diagram showing a trigger for state transition and the states before and after the transition. It is a diagram. 同第一の実施形態に係る補助記憶装置とROMライタの機能構成を示すブロック図である。FIG. 2 is a block diagram showing the functional configuration of an auxiliary storage device and a ROM writer according to the first embodiment. 同第一の実施形態に係る補助記憶装置からデータを出力させる手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure for outputting data from the auxiliary storage device based on the same first embodiment. 同第一の実施形態に係る補助記憶装置について電源投入またはリセットしたときの状態設定手順の一例を示すフローチャートである。12 is a flowchart illustrating an example of a state setting procedure when the auxiliary storage device according to the first embodiment is powered on or reset. 同第一の実施形態に係る補助記憶装置について状態設定コマンド受付時の状態設定手順の一例を示すフローチャートである。12 is a flowchart illustrating an example of a state setting procedure when receiving a state setting command for the auxiliary storage device according to the first embodiment. 同第一の実施形態に係る補助記憶装置についてデータ出力要求コマンド受付時のデータ出力手順の一例を示すフローチャートである。FIG. 2 is a flowchart showing an example of a data output procedure when receiving a data output request command for the auxiliary storage device according to the first embodiment; FIG. 本発明の第二の実施形態に係る情報処理装置の構成を説明するための機能ブロック図である。FIG. 2 is a functional block diagram for explaining the configuration of an information processing device according to a second embodiment of the present invention. 同第二の実施形態に係る補助記憶装置の状態設定コマンドと、その状態設定コマンドに対応づけられるコマンド文字列の一例を示す図である。FIG. 7 is a diagram illustrating an example of a status setting command for an auxiliary storage device and a command character string associated with the status setting command according to the second embodiment. 本発明の第三の実施形態に係る情報処理装置の構成を説明するための機能ブロック図である。FIG. 2 is a functional block diagram for explaining the configuration of an information processing device according to a third embodiment of the present invention.

以下、本発明を図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 information processing device 1 includes a data processing processor 10 and an auxiliary storage device 40 that is a "nonvolatile storage device."
The host CPU 2 shown in FIG. 1 is a CPU placed above the information processing device 1 that constitutes a gaming machine or the like.

<<データ処理プロセッサ>>
データ処理プロセッサ10は、画像、音声、発光等のデータを処理するプロセッサであり、CPU12、RAM13、画像処理部14、表示出力部16、サウンド処理部18、サウンド出力部20、発光処理部22、発光出力部24、データバス26、レジスタバス28、I/F制御部35を備えている。
<<Data processing processor>>
The data processor 10 is a processor that processes data such as images, sounds, and light emission, and includes a CPU 12, a RAM 13, an image processing section 14, a display output section 16, a sound processing section 18, a sound output section 20, a light emission processing section 22, It includes a light emission output section 24, a data bus 26, a register bus 28, and an I/F control section 35.

CPU12は、データ処理プロセッサ10の全体を制御する。
RAM13は、情報の高速な読み書きが可能な揮発性の記憶媒体であり、ワークメモリとして利用可能である。
画像処理部14は、表示すべき画像を処理するものであり、補助記憶装置40に格納されたデータをデータバス26を介して取得し、画像として描画することで画像データを生成する。
表示出力部16は、画像処理部14が生成した画像データをディスプレイ30等の表示部に出力する。ディスプレイ30は、LCD等の表示デバイスである。
The CPU 12 controls the data processor 10 as a whole.
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 image processing unit 14 processes images to be displayed, and generates image data by acquiring data stored in the auxiliary storage device 40 via the data bus 26 and drawing it as an image.
The display output unit 16 outputs the image data generated by the image processing unit 14 to a display unit such as the display 30. The display 30 is a display device such as an LCD.

サウンド処理部18は、出力すべき音声信号を処理するものであり、補助記憶装置40に格納されたデータをデータバス26を介して取得し、サウンドデータを生成する。
サウンド出力部20は、生成されたサウンドデータに基づき、スピーカ32等に音声信号を出力する。
発光処理部22は、演出に基づき、補助記憶装置40に格納されたデータをデータバス26を介して取得し、LED34等の発光体を駆動するためのデータを生成する。
発光出力部24は、発光処理部が生成したデータに基づき、LED等の発光体を駆動する。
LED(light emitting diode)34は、順方向に電圧を加えた際に発光する半導体素子であり、発光体の一例である。
I/F制御部35は、補助記憶装置40とのインターフェースを制御する。
The sound processing unit 18 processes audio signals to be output, acquires data stored in the auxiliary storage device 40 via the data bus 26, and generates sound data.
The sound output unit 20 outputs an audio signal to the speaker 32 or the like based on the generated sound data.
The light emission processing unit 22 acquires data stored in the auxiliary storage device 40 via the data bus 26 based on the effect, and generates data for driving light emitters such as the LED 34.
The light emission output section 24 drives a light emitting body such as an LED based on the data generated by the light emission processing section.
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/F control unit 35 controls the interface with the auxiliary storage device 40.

<<補助記憶装置>>
補助記憶装置40には、遊技用のコンテンツ(動画、静止画、及び音声等)のデータであるコンテンツデータが何の処理も施されていないそのままのRawデータの形式で格納されており、格納されているこのコンテンツデータを、補助記憶装置40から外部に出力する際に、Rawデータの形式でそのまま出力するか、Rawデータに難読化処理を施してRawデータと異なる形式の難読化データの形式で出力するかのいずれかを選択できるようになっている。
この補助記憶装置40は、データの書き込み及び読み出し可能な「不揮発性メモリ」である記憶部(フラッシュメモリ)42、一時記憶部(DRAM)44、一時状態記憶部47、状態記憶部45、難読化部62、メモリコントローラ46、バス48を備えている。
<<Auxiliary storage device>>
The auxiliary storage device 40 stores content data, which is data for gaming content (videos, still images, audio, etc.), in the form of raw data without any processing. When outputting this content data from the auxiliary storage device 40 to the outside, it may be output as is in the raw data format, or it may be obfuscated on the raw data and output in an obfuscated data format that is different from the raw data. You can select which one to output.
This auxiliary storage device 40 includes a storage section (flash memory) 42 which is a "nonvolatile memory" in which data can be written and read, a temporary storage section (DRAM) 44, a temporary state storage section 47, a state storage section 45, and an obfuscated 62, a memory controller 46, and a bus 48.

補助記憶装置40は、いわゆるNANDフラッシュメモリを含むSSD(Solid State Drive)である。ただし、通常のSSDでは一時記憶部44が書込み用のキャッシュメモリとして用いられるが、本発明において用いるSSDはSSDのファームウェアを変更し、一時記憶部44を読み出し用のキャッシュメモリとして利用している。なお、書込み用DRAMを読み出し用に変更せず、読み出し用として別途DRAMを用意しても良い。 The auxiliary storage device 40 is an SSD (Solid State Drive) including a so-called NAND flash memory. However, in a normal SSD, the temporary storage section 44 is used as a cache memory for writing, but in the SSD used in the present invention, the firmware of the SSD is changed and the temporary storage section 44 is used as a cache memory for reading. Note that instead of changing the writing DRAM to the reading DRAM, a separate DRAM may be prepared for the reading.

記憶部42は、例えば、NANDフラッシュメモリアレイからなる不揮発性のメモリである。この記憶部42には、コンテンツデータがRawデータの形式で格納される。
一時記憶部44は、例えば、DDR DRAMからなる揮発性のメモリであって、読み出しデータをキャッシュする。
The storage unit 42 is, for example, a nonvolatile memory consisting of a NAND flash memory array. Content data is stored in the storage unit 42 in the form of raw data.
The temporary storage unit 44 is a volatile memory made of, for example, DDR DRAM, and caches read data.

一時状態記憶部47は、前記データキャッシュ用のDDR DRAMの一部の領域或いはDDR DRAMとは別構成の揮発性メモリで構成されており、記憶部42に記憶されているデータを補助記憶装置40から外部に出力するデータの形式として、Rawデータを選択している場合にその状態を示す「Rawデータ選択情報」を含む状態設定データを一時的に格納する。 The temporary state storage unit 47 is configured of a part of the DDR DRAM for data cache or a volatile memory configured separately from the DDR DRAM, and stores data stored in the storage unit 42 in the auxiliary storage device 40. When raw data is selected, state setting data including "Raw data selection information" indicating the state is temporarily stored as the format of data outputted to the outside.

状態記憶部45は、例えば、SPI ROM(Serial Peripheral Interface ROM)等の小容量の不揮発性メモリで構成されている。この状態記憶部45には、後述するEnable Read Scrambleコマンドが上位CPU2またはデータ処理プロセッサ10から補助記憶装置40に入力された際に記憶部42に記憶されているデータの出力形式を難読化データとするためのフラグである「難読化データ選択情報」を含む状態設定データが格納される。
なお、一時状態記憶部47に格納されるRawデータ選択情報や、状態記憶部45に格納される難読化データ選択情報を、出力データ選択情報と呼ぶ。
The state storage unit 45 is composed of a small-capacity nonvolatile memory such as an SPI ROM (Serial Peripheral Interface ROM), for example. This state storage unit 45 stores the output format of the data stored in the storage unit 42 as obfuscated data when an Enable Read Scramble command, which will be described later, is input to the auxiliary storage device 40 from the host CPU 2 or data processing processor 10. Status setting data including "obfuscated data selection information" which is a flag for
Note that the Raw data selection information stored in the temporary state storage section 47 and the obfuscated data selection information stored in the state storage section 45 are referred to as output data selection information.

難読化部62は、Rawデータに難読化処理を施して難読化データの形式に変換する。難読化処理は、鍵データを使用して暗号化によって難読化してもよいし、Rawデータに所定のスクランブル処理を適用して難読化するようにしてもよい。 The obfuscation unit 62 performs obfuscation processing on the Raw data and converts it into an obfuscated data format. The obfuscation process may be performed by encrypting using key data, or by applying a predetermined scrambling process to Raw data.

メモリコントローラ46は、補助記憶装置40の外部から入力されてくるデータを記憶部42に記憶させる動作や、記憶部42に記憶されているデータを読み出して補助記憶装置40の外部に出力する動作の制御などを行う。
このメモリコントローラ46は、全体制御部50、シーケンス制御部52、ECC(Error Check and Correct)制御部54、ホストI/F制御部56、メモリI/F制御部58、状態制御部60を備え、補助記憶装置40を制御する。
The memory controller 46 performs operations such as storing data input from outside the auxiliary storage device 40 in the storage section 42 and reading data stored in the storage section 42 and outputting it to the outside of the auxiliary storage device 40. Control etc.
The memory controller 46 includes an overall control section 50, a sequence control section 52, an ECC (Error Check and Correct) control section 54, a host I/F control section 56, a memory I/F control section 58, and a state control section 60. Controls the auxiliary storage device 40.

全体制御部50は、RAM、ROM等を内蔵し(図示省略)、メモリコントローラ46全体を制御することにより、補助記憶装置40全体を制御する。また、この全体制御部50は、記憶部42にデータを書き込むデータ書込手段(データ書込部)、記憶部42からデータを読み込むデータ読込手段(データ読出部)として機能する。 The overall control unit 50 includes a built-in RAM, ROM, etc. (not shown), and controls the entire auxiliary storage device 40 by controlling the entire memory controller 46 . The overall control unit 50 also functions as a data writing unit (data writing unit) that writes data to the storage unit 42 and a data reading unit (data reading unit) that reads data from the storage unit 42.

シーケンス制御部52は、メモリコントローラ46から記憶部42に与えられる内部コマンド信号に基づき、記憶部42の動作を制御する。
ECC制御部54は、読み出しデータに付加されたエラーコレクションコードに基づき、読み出したデータに含まれる誤りを検出し、且つ誤りを検出した場合に当該データの誤りを訂正する。
The sequence control unit 52 controls the operation of the storage unit 42 based on an internal command signal given to the storage unit 42 from the memory controller 46.
The ECC control unit 54 detects errors included in the read data based on the error correction code added to the read data, and corrects the error in the data when an error is detected.

ホストI/F制御部56は、ホスト(データ処理プロセッサ10等)との間のインターフェースを制御する。このホストI/F制御部56は、補助記憶装置40の外部から入力されるRawデータまたは難読化データのいずれかの出力形式を指定する出力形式情報を保持する状態設定コマンドを受け付ける「コマンド受付部」として機能する。また、このホストI/F制御部56は、Rawデータまたは難読化データの出力形式で記憶部42に記憶されているデータを外部に出力する「データ出力部」として機能する。
メモリI/F制御部58は、記憶部42であるNANDアレイや一時記憶部44であるDRAM等とのインターフェースを制御する。
The host I/F control unit 56 controls an interface with a host (data processing processor 10, etc.). This host I/F control unit 56 is a “command reception unit” that receives a status setting command that holds output format information that specifies the output format of either raw data or obfuscated data that is input from outside the auxiliary storage device 40. ”. Further, the host I/F control unit 56 functions as a “data output unit” that outputs the data stored in the storage unit 42 in the output format of raw data or obfuscated data to the outside.
The memory I/F control section 58 controls the interface with the NAND array that is the storage section 42, the DRAM that is the temporary storage section 44, and the like.

状態制御部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 state control section 60 writes state setting data to the state storage section 45 and temporary state storage section 47 and rewrites the contents of the state setting data based on the control of the overall control section 50. In order to obtain output data selection information, the state control unit 60 checks “obfuscated data selection information” stored in the state storage unit 45 and “Raw data selection information” stored in the temporary state storage unit 47. , (1) If no selection information is stored, raw data is output; (2) If "Raw data selection information" is stored in the temporary state storage section 47 (it is not stored in the state storage section 45); (3) "Raw data selection information" is not stored in the temporary state storage section 47, and "obfuscated data selection information" is stored in the state storage section 45. control to output obfuscated data when "information" is stored. The overall control section 50 controls the state control section 60 based on commands input from the host CPU 2 or the data processing processor 10. Note that the control by the state control unit 60 is performed by checking the “obfuscated data selection information” stored in the state storage unit 45 and the “Raw data selection information” stored in the temporary state storage unit 47, and (1) If "Raw data selection information" is not stored in the temporary state storage section 47 and "obfuscated data selection information" is stored in the state storage section 45, the obfuscated data is output, (2) above In the case of other conditions, control may be performed to output Raw data.

メモリコントローラ46の各構成は、メモリコントローラ46のマイクロプロセッサにより実現する。
また、データバス26とバス48との接続は、シリアル高速通信バスや、PCIe(PCIエクスプレス)等を利用することができる。
Each configuration of the memory controller 46 is realized by a microprocessor of the memory controller 46.
Furthermore, the data bus 26 and the bus 48 can be connected using a serial high-speed communication bus, PCIe (PCI Express), or the like.

<<<補助記憶装置の状態遷移>>>
図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 auxiliary storage device 40, and FIG. 2(b) shows a diagram explaining the trigger for transitioning to each state and the states before and after the transition. has been done.
As shown in FIG. 2A, the auxiliary storage device 40 can take three states: a raw data output state 100, an obfuscated data output state 102, and a temporary raw data output state 104.

Rawデータ出力状態100は、例えば遊技機メーカーが遊技機を開発したり、遊技機を製造したりする際の補助記憶装置40の状態であり、記憶部42に記憶されているデータはRawデータの形式で出力される。 The raw data output state 100 is the state of the auxiliary storage device 40 when a game machine manufacturer develops or manufactures a game machine, for example, and the data stored in the storage unit 42 is the state of the raw data. output in the format.

難読化データ出力状態102は、例えば本発明に係る補助記憶装置40が遊技機に組み込まれ、当該遊技機が遊技機メーカーから出荷された際の補助記憶装置40の状態であり、記憶部42に記憶されているデータは難読化データの形式で出力される。このため、難読化解除機能を有する処理プロセッサ10をこの補助記憶装置40に接続して、出力される難読化データをRawデータに変換してからデータを使用することができるものの、難読化解除機能を有さない処理プロセッサ10に接続してデータの読み出しを行っても、出力されるデータはそのまま利用できない。また補助記憶装置40に格納された著作権保護対象のコンテンツを読み出すことを目的として、この補助記憶装置40をコンピュータに接続してデータの読み出しを行っても、出力されるデータはそのまま使用できず、データのセキュリティが確保される。 The obfuscated data output state 102 is, for example, the state of the auxiliary storage device 40 when the auxiliary storage device 40 according to the present invention is incorporated into a gaming machine and the gaming machine is shipped from the gaming machine manufacturer. The stored data is output in the form of obfuscated data. Therefore, although it is possible to connect the processor 10 having the deobfuscation function to this auxiliary storage device 40 and convert the output obfuscated data into raw data before using the data, the deobfuscation function Even if the data is read by connecting to a processor 10 that does not have a processor 10, the output data cannot be used as is. Furthermore, even if the auxiliary storage device 40 is connected to a computer and the data is read out for the purpose of reading content that is subject to copyright protection stored in the auxiliary storage device 40, the output data cannot be used as is. , data security is ensured.

一時的Rawデータ出力状態104は、例えば難読化解除機能を有さない処理プロセッサ10をこの補助記憶装置40に接続して使用する場合の補助記憶装置40の状態であり、データ処理プロセッサ10は、補助記憶装置40から出力されるデータをそのまま使用できるため、読み出し性能の低下が生じない。また、遊技機の開発段階において、遊技機が市場に供給された後の状態、即ち、補助記憶装置40の出力が難読化データ出力状態102に変更された後に補助記憶装置40に書き込まれたデータとデータ処理プロセッサ10に供給されるデータとを比較する際などに用いられる補助記憶装置40の状態である。 The temporary raw data output state 104 is a state of the auxiliary storage device 40 when, for example, a processor 10 that does not have an obfuscation release function is connected to this auxiliary storage device 40, and the data processing processor 10 is Since the data output from the auxiliary storage device 40 can be used as is, no deterioration in read performance occurs. Further, during the development stage of the gaming machine, data written to the auxiliary storage device 40 after the gaming machine is supplied to the market, that is, after the output of the auxiliary storage device 40 has been changed to the obfuscated data output state 102. This is the state of the auxiliary storage device 40 used when comparing data supplied to the data processing processor 10 and the like.

図2(b)に示すように、Rawデータ出力状態100と難読化データ出力状態102との間の状態遷移及び難読化データ出力状態102から一時的Rawデータ出力状態104への状態遷移は、上位CPU2またはデータ処理プロセッサ10から補助記憶装置40に入力されるコマンドにより行われる。 As shown in FIG. 2(b), the state transition between the Raw data output state 100 and the obfuscated data output state 102 and the state transition from the obfuscated data output state 102 to the temporary Raw data output state 104 are This is performed by a command input from the CPU 2 or the data processor 10 to the auxiliary storage device 40.

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 data output state 100 to the obfuscated data output state 102. This Enable Read Scramble command is a state setting command that sets a flag for output data selection information that specifies obfuscated data as the output format. Therefore, when the host I/F control unit 56, which is a command reception unit, receives an Enable Read Scramble command in the Raw data output state 100, the overall control unit 50 stores the Enable Read Scramble flag in the state storage unit 45. The state control unit 60 outputs the data read out based on the Enable Read Scramble flag stored in the state storage unit 45 via the obfuscation unit 62.
As described above, the state control unit 60 checks the “obfuscated data selection information” stored in the state storage unit 45 and the “Raw data selection information” stored in the temporary state storage unit 47, and determines the output data format. Therefore, when the power is turned on or reset after the state transitions to the obfuscated data output state 102 (hereinafter referred to as power-on, etc.), the temporary state storage section 47 composed of volatile memory stores the "Raw" data. "Data selection information" is not stored, but obfuscated data is output from the auxiliary storage device 40 based on "obfuscated data selection information" stored in the state storage section 45 configured with non-volatile memory. . In this way, the auxiliary storage device 40 starts up as the obfuscated data output state 102.

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 data output state 102 to the temporary raw data output state 104. This Release Read Scramble command is a state setting command that sets a flag for raw data selection information that specifies raw data as the output format. Therefore, when the host I/F control unit 56 receives a Release Read Scramble command in the obfuscated data output state 102, the state control unit 60 converts the data stored in the storage unit 42 into the raw data output format. The host I/F control unit 56 controls the output.
However, this Release Read Scramble command does not rewrite the obfuscated data selection information held in the state storage unit 45. Therefore, even if the host I/F control unit 56 receives the Release Read Scramble command, the obfuscated data selection information stored in the status storage unit 45 is not rewritten, and the data output format at power-on, etc. Obfuscated data remains specified. Therefore, after transitioning to the temporary raw data output state 104 by the Release Read Scramble command, if the power is turned off and then on again, the auxiliary storage device 40 starts up in the obfuscated data output state 102. To express this, in FIG. 2B, the trigger for transitioning from the temporary raw data output state 104 to the obfuscated data output state 102 is described as power-on or reset.

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 data output state 102 to the Raw data output state 100. This Disable Read Scramble command is a state setting command that erases the "obfuscated data selection information" flag and the "Raw data selection information" flag stored in the state storage section 45 and temporary state storage section 47, respectively.
In this way, the Disable Read Scramble command erases the obfuscated data selection information flag held in the state storage unit 45, so if the power is turned off and then on again after transitioning to the Raw data output state 100, the state control In the unit 60, since neither the state storage unit 45 nor the temporary state storage unit 47 holds a data output format flag, the auxiliary storage device 40 starts up in the Raw data output state 100. That is, the content data stored in the storage unit 42 is in an initial state in which no security is applied.

この補助記憶装置40を遊技機メーカー等の販売先に出荷する際には、初期設定としてRawデータ出力状態100に設定されている。こうすることにより、電源を投入した状態でRawデータの書き込みと読み出しを行えるため、販売先におけるコンテンツデータの開発作業が円滑に行われるようになっている。 When this auxiliary storage device 40 is shipped to a sales destination such as a gaming machine manufacturer, the raw data output state 100 is set as an initial setting. By doing this, raw data can be written and read while the power is turned on, so that content data development work at the sales destination can be carried out smoothly.

なお、本発明の第一の実施形態では、図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 auxiliary storage device 40 is in three states: a raw data output state 100, an obfuscated data output state 102, and a temporary raw data output state 104. It is designed to transition. However, it is not always necessary to take these three states, and it may be possible to transition between two states: the obfuscated data output state 102 and the temporary raw data output state 104.
Furthermore, in the obfuscated data output state 102, one of the purposes for the auxiliary storage device 40 to output obfuscated data is to ensure the security of the data stored in the storage unit 42; If so, data output may be stopped in the obfuscated data output state 102 unless a Release Read Scramble command or a Disable Read Scramble command is input.

<<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 auxiliary storage device 40 and the ROM writer 70. The ROM writer 70 is an example of an external device connected to the auxiliary storage device 40.
The ROM writer 70 is a means for writing game content data into the storage unit 42 of the auxiliary storage device 40. The ROM writer 70 is connected to a storage medium such as an HDD (Hard Disk Drive) 90 in which content data for games to be stored in the storage unit 42 of the auxiliary storage device 40 is stored, and the content data is read from the HDD 90. At the same time, the read content data is output to the auxiliary storage device 40, which is the writing destination.
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 CPU 72 controls the ROM writer 70 as a whole. The ROM 74 is a nonvolatile memory that stores control programs and the like. The RAM 76 is a volatile storage means that functions as a work memory for the CPU 72. The I/F control unit 82 controls the interface with external devices such as the auxiliary storage device 40.
The input circuit 78 receives values, instructions, etc. input from an input device 86 including keys, switches, etc., and outputs them to the CPU 72. The display circuit 80 displays various information on the display device 88 based on instructions from the CPU 72.

補助記憶装置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 auxiliary storage device 40, the host I/F control unit 56 receives gaming content data transmitted from the ROM writer 70, and the overall control unit 50 stores the received content data as raw data in the storage unit 42. Make me remember. In this way, raw data can be directly written to the storage unit 42, so there is no need to perform processing such as encryption on the written data, and no deterioration in writing performance occurs.
Note that data can be written to the storage unit 42 even when the auxiliary storage device 40 is in any of the raw data output state 100, the obfuscated data output state 102, and the temporary raw data output state 104. It has become.
After writing data to the storage unit 42, it is preferable to send an Enable Read Scramble command to the auxiliary storage device 40 and set a flag for obfuscated data selection information in the state storage unit 45. By doing so, the auxiliary storage device 40 starts up in the obfuscated data output state 102 when the power is turned on, and data security is ensured.
Note that the normality of the content data stored in the auxiliary storage device 40 may be inspected by using the checksum value of the obfuscated content data. For example, when an inspector inspects a gaming machine, he takes out the auxiliary storage device 40 from the gaming machine and checks the checksum value with a ROM writer (ROM checker) 70. When the gaming machine is turned off and the auxiliary storage device 40 is taken out after this happens, the raw data selection information flag written in the temporary state storage section 47 is erased, and the obfuscated data selection written in the state storage section 45 is erased. Since only the information flag remains, the auxiliary storage device 40 enters the obfuscated data output state 102, and by using the checksum value of the obfuscated content, it can be confirmed that the data has not been altered. I can do it.

<補助記憶装置の使用方法>
次に、補助記憶装置40に記憶されているデータを読み出す際の使用方法について説明する。
<How to use auxiliary storage>
Next, a method for reading data stored in the auxiliary storage device 40 will be described.

図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 auxiliary storage device 40.
First, when the auxiliary storage device 40 is connected to the data processing processor 10 and the like and the power is turned on, the auxiliary storage device 40 performs a startup operation when the power is turned on (step S1). The procedure for setting the state of the auxiliary storage device 40 in this startup operation is shown as a flowchart in FIG. 5, which will be described later.
After startup, when a state setting command is input from the data processing processor 10 or the like and accepted by the host I/F control unit 56 of the auxiliary storage device 40, the auxiliary storage device 40 performs a state transition operation based on the received state setting command. (Step S2). The state setting procedure of the auxiliary storage device 40 in this state transition operation is shown as a flowchart in FIG. 6, which will be described later.
Thereafter, when a data output request command is input from the data processing processor 10 or the like and accepted by the host I/F control unit 56, the auxiliary storage device 40 transfers the data stored in the storage unit 42 to the host I/F control unit. A data output operation is performed to output data from 56 (step S3). The data output procedure of the auxiliary storage device 40 in this data output operation is shown as a flowchart in FIG. 7, which will be described later.
However, if a status setting command is not input from the data processing processor 10 or the like, but a data output request command is input, step S2 is skipped and the process proceeds to the next step 3.

図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 auxiliary storage device 40 is powered on or reset.
When the auxiliary storage device 40 is powered on, the state control section 60 reads the output data selection information stored in the state storage section 45 and the temporary state storage section 47 (step S11). Then, if there is no output data selection information in any of the storage units (Yes in step S12), the state control unit 60 controls the raw data output state 100 (step S14). On the other hand, if there is output data selection information in any of the storage units (No in step S12) and raw data selection information is in the temporary state storage unit 47 (Yes in step S13), the temporary raw data output state 104 (step S15). Further, if there is output data selection information in any of the storage units (No in step S12) and there is no Raw data selection information in the temporary state storage unit 47 (No in step S13), the obfuscated data output state 102 is control (step S16).

図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 auxiliary storage device 40 receives a state setting command.
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/F control unit 56 of the auxiliary storage device 40 receives the status setting command (step S20), the status control unit 60 outputs the output data selection information stored in the status storage unit 45 and the temporary status storage unit 47. The relevant flag is checked (step S21).

状態制御部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 state control unit 60 determines that the data selection information flag is present in the state storage unit 45 (Yes in step S22), it determines whether the received state setting command is a Release Read Scramble (RRS) command, and the received state setting command is If it is an RRS command (Yes in step S23), a flag for raw data selection information is set in the temporary state storage unit 47 (step S24), and the process transitions to the temporary raw data output state 104 (step S25).
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 state storage unit 45 and temporary state storage unit 47 are erased (step S27), and the state transitions to the raw data output state 100 (step S28).
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 data output state 102 is maintained (step S29).
That is, if the state storage unit 45 has a flag for output data selection information, the auxiliary storage device 40 is in the obfuscated data output state 102, and the state changes from the obfuscated data output state 102 only by an RRS command or a DRS command. Even if an ERS command is input, the obfuscated data output state 102 is maintained.
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 state storage unit 45, no state transition is performed.

図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 auxiliary storage device 40 receives a data output request command.
When the data output request command is accepted by the host I/F control unit 56 of the auxiliary storage device 40 (step S41), the overall control unit 50 determines whether the command is valid (step S42), and if it is invalid, The host I/F control unit outputs an invalid notification to the outside (step S43). On the other hand, if the accepted command is valid (Yes in step S42), obfuscated data or raw data is output according to the output data selection information of the auxiliary storage device (step S44).
<Effects of the first embodiment>
As described above, according to the first embodiment, the output format of the data stored in the storage unit 42 is the raw data format and the obfuscated data format in which the raw data is subjected to obfuscation processing. You can choose. When outputting in the raw data format, the data processing processor 10 and the like can use the data as is without performing any processing, so no deterioration in read performance occurs. Further, since the raw data stored in the storage section 42 is read out and output as is, the data written in the storage section 42 and the data read out completely match. For this reason, there is no possibility that data defects such as data stored in the storage unit 42 and decoded data do not completely match, which may occur due to decoding processing, for example.
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 storage unit 42 can be ensured.
Further, since raw data can be written to the storage unit 42, there is no need to perform any processing on the written data, and no deterioration in writing performance occurs.
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 storage unit 42 that stores game content data is subject to a test conducted to ensure the soundness of the game. In the verification, the normality of the content data stored in the storage section 42 is tested using a checksum value covering the entire area of the storage section 42 . By outputting the data stored in the storage unit 42 in the form of obfuscated data, data security can be ensured in case of unauthorized use, and the checksum value of the obfuscated data can be used for inspection. can be passed.

また、第一の実施形態によれば、電源投入時等、状態記憶部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 auxiliary storage device 40 is set to the Raw data output state 100 or It rises as one of the obfuscated data output states 102. Therefore, the output format of the auxiliary storage device 40 can be reliably set when the power is turned on. When the output format of the auxiliary storage device 40 is raw data when the power is turned on, etc., the raw data can be written to the storage section 42 and the raw data stored in the storage section 42 can be read out as is, so it can be used as a normal external memory device. can do. Further, if the output format at power-on, etc. is Raw data, when developing content data to be stored in the storage unit 42, the Raw data under development is written to the storage unit 42, and the Raw data stored in the storage unit 42 is Data can be read out as is and evaluated and inspected, improving development efficiency.
On the other hand, if the output format at power-on is obfuscated data, even if the auxiliary storage device 40 in which data is stored in the storage unit 42 is obtained illegally, the output data will be obfuscated. , the read data cannot be used as is. Therefore, the security of the data stored in the storage unit 42 is ensured. Furthermore, if the output format at power-on is obfuscated data, even if you try to use the illegally obtained auxiliary storage device 40 as a normal external memory device, the output data will be obfuscated. It cannot be used as a normal external memory device. Therefore, unauthorized distribution of the auxiliary storage device 40 can be prevented.

また、第一の実施形態によれば、外部から入力される状態設定コマンドにより電源投入時等の補助記憶装置40の出力形式をRawデータまたは難読化データのいずれかに設定することができるようになっており、コマンドの送信により電源投入時等のデータ出力形式を容易に設定することができる。 Further, according to the first embodiment, the output format of the auxiliary storage device 40 can be set to either raw data or obfuscated data when the power is turned on, etc. using a status setting command input from the outside. This makes it possible to easily set the data output format when power is turned on, etc. by sending commands.

〔第二の実施形態〕
次に、本発明の第二の実施形態に係る情報処理装置について図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 auxiliary storage device 40 includes a command converter 66 and the communication between the upper CPU 2 or the data processor 10 and the auxiliary storage device 40 is The difference lies in the commands. In the first embodiment, the status setting commands of the Enable Read Scramble command, Disable Read Scramble command, and Release Read Scramble command are used as they are for communication. On the other hand, in the second embodiment, the status setting command is not used for communication, and the command string is composed of a character string containing any of letters, numbers, or symbols that are in one-to-one correspondence with the status setting command. is used for communication.

補助記憶装置40は、外部から入力されてくる入力コマンド文字列を受け付けると、この入力コマンド文字列をコマンド変換部66に供給し、入力コマンド文字列を予め設定したコマンドに変換する。ここで、入力コマンド文字列とは、上位CPU2またはデータ処理プロセッサ10などの外部からコマンドとして補助記憶装置40に入力されてくる文字列のことである。
そして、補助記憶装置40では、入力コマンド文字列がコマンド変換対象のコマンドの場合に所定のコマンドに変換され状態設定コマンドが受け付けられたと判定する。それ以後は、この状態設定コマンドに基づいて、上述の第一の実施形態に係る補助記憶装置40と同様の動作を行うようになっている。
When the auxiliary storage device 40 receives an input command string input from the outside, it supplies the input command string to the command converter 66, and converts the input command string into a preset command. Here, the input command character string is a character string that is input to the auxiliary storage device 40 as a command from an external device such as the host CPU 2 or the data processing processor 10.
Then, in the auxiliary storage device 40, if the input command character string is a command to be converted, it is determined that the input command string is converted into a predetermined command and the status setting command is accepted. After that, based on this status setting command, the same operation as the auxiliary storage device 40 according to the first embodiment described above is performed.

<コマンド文字列>
図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 auxiliary storage device 40 and a command character string that is associated one-to-one with the status setting command. For example, the Enable Read Scramble command, which is a status setting command, can have a one-to-one correspondence with the character string A_Company_Enable as a command character string. Similarly, the command character string A_Company_Disable can be associated with the Disable Read Scramble command, and the command character string A_Company_Release can be associated with the Release Read Scramble command, respectively. In this way, without directly using the ERS, DRS, and RRS commands, by providing a function to convert any command string into a predetermined status setting command, commands that control the output status of the auxiliary storage can be stored in the auxiliary storage. It becomes possible to change the output of the auxiliary storage device without disclosing it to the user of the device.
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 auxiliary storage device 40 or for each content data to be stored in the storage section 42. By doing so, command strings can be managed in detail, and the scope of use of the auxiliary storage device 40 can be set or restricted in detail. As a result, the auxiliary storage device 40 cannot be used by anyone other than a specific user or for a specific purpose, so the command string functions as a password.
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 auxiliary storage device 40 sold to Company A, it will not be able to understand the command string intended for Company A, thereby preventing unauthorized use of the auxiliary storage device 40. I can do it.
Furthermore, command strings such as Content1_Enable, Content1_Disable, and Content1_Release can be set for a certain content data 1, and command strings such as Content2_Enable, Content2_Disable, and Content2_Release can be set for another content data 2. With this setting, if the auxiliary storage device 40 for content data 1 is mistakenly connected to the data processing processor 10 or the like for content data 2, it will not operate normally, so the misuse can be immediately noticed.

<補助記憶装置のコマンド変換部>
データ処理プロセッサ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 data processing processor 10 etc. and the auxiliary storage device 40, the command conversion unit 66 of the auxiliary storage device 40 includes the command character string as well as the status setting command. Columns are pre-memorized.
When the auxiliary storage device 40 receives an input command string input from the outside, the overall control section 50 supplies this input command string to the command conversion section 66. The command conversion unit 66 compares a pre-stored command string with an input command string and extracts a command string that matches the input command string. Then, the command conversion unit 66 determines that the status setting command associated with this matched command character string has been accepted, and outputs this status setting command to the overall control unit 50. Thereafter, the state control unit 60 is controlled based on this state setting command, and the output format of raw data or obfuscated data is selected.

なお、コマンド変換部66で変換されるコマンド文字列は、補助記憶装置40の販売先などで、任意に変更できるようにしてもよい。このようにするには、コマンド文字列を書き換えるための所定のコマンドを用意しておき、販売先などにおいて、上位CPU2またはデータ処理プロセッサ10から補助記憶装置40に向けてこの所定のコマンドを送信して、コマンド変換部66に保持されているコマンド文字列を書き換えるようにすればよい。 Note that the command character string converted by the command conversion unit 66 may be changed arbitrarily by the sales place of the auxiliary storage device 40 or the like. To do this, prepare a predetermined command to rewrite the command string, and send this predetermined command from the host CPU 2 or data processor 10 to the auxiliary storage device 40 at the sales place. Then, the command character string held in the command converter 66 may be rewritten.

<第二の実施形態の効果>
この第二の実施形態によれば、上述の第一の実施形態と同様の効果を生ずる。
それに加えて、この第二の実施形態によれば、補助記憶装置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 auxiliary storage device 40 determines, based on the received input command string, that the status setting command associated with the command string has been accepted. Since a different command string can be assigned to each sales destination of the auxiliary storage device 40 or to each content of data to be stored in the auxiliary storage device 40, the settings of the command string can be managed in detail. As a result, the security of the data stored in the storage unit 42 is improved, and unauthorized use of the auxiliary storage device 40 can be prevented.

〔第三の実施形態〕
次に、本発明の第三の実施形態に係る情報処理装置について説明する。
図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 auxiliary storage device 40 has a configuration in which a command converter 66 having a decoding function is added to the configuration of the above-described first embodiment shown in FIG. Furthermore, the host CPU 2 or data processor 10 has a configuration in which a command encryption unit 25 for encrypting commands is added to the configuration of the first embodiment shown in FIG. 1. The other configuration of the information processing device 1 is almost the same as the configuration of the first embodiment.
The difference between the third embodiment and the first embodiment is that the status setting command sent from the host CPU 2 or data processor 10 to the auxiliary storage device 40 is encrypted.

データ処理プロセッサ10等では、補助記憶装置40との通信に使用するコマンドをコマンド暗号化部25にて所定の暗号鍵を用いて暗号化してから送信する。そして、補助記憶装置40のコマンド変換部(復号部)66では、受信したコマンドを所定の復号鍵を用いて復号する。それ以後は、復号されたコマンドに基づいて、上述の第一の実施形態に係る補助記憶装置40と同様の動作が行われる。 In the data processing processor 10 and the like, the command encryption unit 25 encrypts the command used for communication with the auxiliary storage device 40 using a predetermined encryption key, and then transmits the command. Then, the command conversion unit (decryption unit) 66 of the auxiliary storage device 40 decrypts the received command using a predetermined decryption key. After that, the same operation as the auxiliary storage device 40 according to the first embodiment described above is performed based on the decoded command.

この第三の実施形態によれば、上述の第一の実施形態と同様の効果を生ずる。
それに加えて、この第三の実施形態によれば、暗号化されている状態設定コマンドを復号し、復号された状態設定コマンドに基づいて補助記憶装置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 auxiliary storage device 40 is controlled based on the decrypted status setting command. Since unencrypted status setting commands cannot be read from outside, the data stored in the storage unit 42 cannot be read out illegally, improving data security and preventing unauthorized access to the auxiliary storage device 40. Use can be prevented.

1…情報処理装置、10…データ処理プロセッサ、40…補助記憶装置(不揮発性記憶装置)、42…記憶部(不揮発性メモリ)、45…状態記憶部、46…メモリコントローラ、47…一時状態記憶部、50…全体制御部、56…ホストI/F制御部(コマンド受付部、データ出力部)、60…状態制御部、62…難読化部、66…コマンド変換部(復号部)、70…ROMライタ、100…Rawデータ出力状態、102…難読化データ出力状態、104…一時的Rawデータ出力状態
DESCRIPTION OF SYMBOLS 1... Information processing device, 10... Data processing processor, 40... Auxiliary storage device (nonvolatile storage device), 42... Storage part (nonvolatile memory), 45... State storage part, 46... Memory controller, 47... Temporary state storage Part, 50... Overall control unit, 56... Host I/F control unit (command reception unit, data output unit), 60... State control unit, 62... Obfuscation unit, 66... Command conversion unit (decoding unit), 70... ROM writer, 100...Raw data output state, 102...Obfuscated data output state, 104...Temporary Raw data output state

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.
JP2020008269A 2020-01-22 2020-01-22 non-volatile storage Active JP7361382B2 (en)

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)

* Cited by examiner, † Cited by third party
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

Patent Citations (2)

* Cited by examiner, † Cited by third party
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