JP6203556B2 - Information processing system - Google Patents
Information processing system Download PDFInfo
- Publication number
- JP6203556B2 JP6203556B2 JP2013139899A JP2013139899A JP6203556B2 JP 6203556 B2 JP6203556 B2 JP 6203556B2 JP 2013139899 A JP2013139899 A JP 2013139899A JP 2013139899 A JP2013139899 A JP 2013139899A JP 6203556 B2 JP6203556 B2 JP 6203556B2
- Authority
- JP
- Japan
- Prior art keywords
- control circuit
- number sequence
- authentication code
- authentication
- information processing
- 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
- 230000010365 information processing Effects 0.000 title claims description 48
- 238000004891 communication Methods 0.000 claims description 81
- 238000000034 method Methods 0.000 claims description 18
- 239000004065 semiconductor Substances 0.000 description 53
- 230000005540 biological transmission Effects 0.000 description 7
- 230000004044 response Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Description
本発明は、通信装置と記憶装置とを備える情報処理システムに関する。 The present invention relates to an information processing system including a communication device and a storage device.
通信装置とそれに接続される半導体記憶装置とを備える情報処理システムにおいては、半導体記憶装置に記憶されたコンテンツデータが不正に読み出されることを防止すべく、コンテンツデータへのアクセスを許可する前に、通信装置と半導体記憶装置とが相互に正当性を認証し合う技術(相互認証技術)が実用化されている。 In an information processing system including a communication device and a semiconductor storage device connected thereto, in order to prevent content data stored in the semiconductor storage device from being read illegally, before permitting access to the content data, A technology (mutual authentication technology) in which a communication device and a semiconductor storage device mutually authenticate each other has been put into practical use.
一般的なチャレンジアンドレスポンス型の相互認証では、通信装置は、第1の認証コードを生成し、当該第1の認証コードを暗号化して半導体記憶装置に送信する。半導体記憶装置は、受信した第1の認証コードを復号した後、当該第1の認証コードを再び暗号化して通信装置に送信する。通信装置は、受信した第1の認証コードを復号した後、半導体記憶装置に送信した第1の認証コードと、半導体記憶装置から受信した第1の認証コードとが一致するか否かによって、半導体記憶装置の正当性を認証する。また、通信装置が半導体記憶装置の正当性を認証した後、半導体記憶装置は、第2の認証コードを生成し、当該第2の認証コードを暗号化して通信装置に送信する。通信装置は、受信した第2の認証コードを復号した後、当該第2の認証コードを再び暗号化して半導体記憶装置に送信する。半導体記憶装置は、受信した第2の認証コードを復号した後、通信装置に送信した第2の認証コードと、通信装置から受信した第2の認証コードとが一致するか否かによって、通信装置の正当性を認証する。 In general challenge-and-response mutual authentication, the communication device generates a first authentication code, encrypts the first authentication code, and transmits it to the semiconductor memory device. After decrypting the received first authentication code, the semiconductor storage device encrypts the first authentication code again and transmits it to the communication device. The communication device decrypts the received first authentication code and then determines whether the first authentication code transmitted to the semiconductor memory device matches the first authentication code received from the semiconductor memory device. Authenticate the validity of the storage device. Further, after the communication device authenticates the validity of the semiconductor storage device, the semiconductor storage device generates a second authentication code, encrypts the second authentication code, and transmits it to the communication device. After decrypting the received second authentication code, the communication device encrypts the second authentication code again and transmits it to the semiconductor memory device. The semiconductor memory device determines whether the second authentication code transmitted to the communication device after decrypting the received second authentication code matches the second authentication code received from the communication device. Authenticate the validity of
なお、下記特許文献1には、複数の相互認証手続を準備しておき、CPUが複数の相互認証手続の中から一の相互認証手続を選択することにより、その選択した相互認証手続をCPUが実行する情報処理装置が開示されている。
In
一般的に、通信装置と半導体記憶装置との間の相互認証は、マイクロプロセッサが認証プログラムを実行することによるソフトウェア処理によって行われる。従って、コンテンツデータの不正な読み出しを企図する攻撃者は、認証プログラムの解析や、マイクロプロセッサ内のROM又はRAMのデータを改ざんすることによって、相互認証の処理を回避するようにマイクロプロセッサの制御を改変しようとする。そして、そのような改変がなされれば、半導体記憶装置からコンテンツデータが不正に読み出されてしまう。 In general, mutual authentication between a communication device and a semiconductor storage device is performed by software processing by a microprocessor executing an authentication program. Therefore, an attacker who intends to read content data illegally controls the microprocessor to avoid mutual authentication processing by analyzing the authentication program or altering the ROM or RAM data in the microprocessor. Try to modify. If such a modification is made, content data is illegally read from the semiconductor memory device.
本発明はかかる事情に鑑みて成されたものであり、マイクロプロセッサの制御を改変するような攻撃を受けた場合であっても、記憶装置からコンテンツデータが不正に読み出されることを防止することが可能な、情報処理システムを得ることを目的とするものである。 The present invention has been made in view of such circumstances, and can prevent content data from being illegally read from a storage device even when subjected to an attack that alters the control of the microprocessor. The object is to obtain a possible information processing system.
本発明の第1の態様に係る情報処理システムは、通信装置と、前記通信装置に接続される記憶装置と、を備える情報処理システムであって、前記通信装置は、ソフトウェア処理によって前記情報処理システムを制御する主制御部と、前記主制御部とは別に実装され、ハードウェア処理によって前記記憶装置を制御する第1の制御回路と、を有し、前記記憶装置は、コンテンツデータが記憶された記憶部と、前記記憶部を制御する第2の制御回路と、を有し、前記第1の制御回路は、第1の数列を生成する第1の数列生成部と、前記第2の制御回路に前記第1の制御回路を認証させるための第1の認証コードを生成する第1の認証制御部と、を含み、前記第2の制御回路は、前記第1の数列生成部が生成する前記第1の数列と同一の第2の数列を生成する第2の数列生成部と、前記第1の制御回路に前記第2の制御回路を認証させるための第2の認証コードを生成する第2の認証制御部と、を含み、前記主制御部は、前記通信装置と前記記憶装置との相互認証を指示するコマンドを発行し、前記第1の制御回路は、前記コマンドを受領することにより、前記第1の数列生成部が生成した前記第1の数列を含む前記第1の認証コードを生成し、当該第1の認証コードを前記第2の制御回路に送信し、前記第2の認証制御部は、受信した前記第1の認証コードに含まれる前記第1の数列と、前記第2の数列生成部が生成した前記第2の数列とが一致するか否かによって、前記第1の制御回路を認証し、前記第1の制御回路を正当と判定した場合には、前記第2の数列生成部が前記第2の数列の次に生成した第3の数列を含む前記第2の認証コードを生成し、当該第2の認証コードを前記第1の制御回路に送信し、前記第1の認証制御部は、受信した前記第2の認証コードに含まれる前記第3の数列と、前記第1の数列生成部が前記第1の数列の次に生成した第4の数列とが一致するか否かによって、前記第2の制御回路を認証することを特徴とするものである。
An information processing system according to a first aspect of the present invention is an information processing system including a communication device and a storage device connected to the communication device, and the communication device is configured to perform the information processing system by software processing. And a first control circuit that is mounted separately from the main control unit and controls the storage device by hardware processing, and the storage device stores content data A storage unit; and a second control circuit that controls the storage unit, wherein the first control circuit includes a first number sequence generation unit that generates a first number sequence, and the second control circuit. And a first authentication control unit that generates a first authentication code for authenticating the first control circuit, wherein the second control circuit is generated by the first sequence generator. A second number sequence identical to the first number sequence Includes a second sequence generator for generating a second authentication control unit for generating a second authentication code for causing the authenticating said second control circuit to the first control circuit, and the main control The unit issues a command for instructing mutual authentication between the communication device and the storage device, and the first control circuit receives the command, whereby the first sequence generator generates the first The first authentication code including a number sequence of 1 is generated, the first authentication code is transmitted to the second control circuit, and the second authentication control unit adds the received first authentication code to the received first authentication code. The first control circuit is authenticated according to whether the first number sequence included and the second number sequence generated by the second number sequence generation unit match, and the first control circuit is If it is determined to be valid, the second sequence generator generates the second number. Next, the second authentication code including the generated third number sequence is generated, the second authentication code is transmitted to the first control circuit, and the first authentication control unit receives the received Depending on whether or not the third number sequence included in the second authentication code matches the fourth number sequence generated after the first number sequence by the first number sequence generation unit, The control circuit is authenticated .
第1の態様に係る情報処理システムによれば、主制御部は、通信装置と記憶装置との相互認証を指示するコマンドを発行する。そして、第1の制御回路は、コマンドを受領することにより、第2の制御回路との間で相互認証を実行する。このように、通信装置と記憶装置との相互認証において、主制御部が実行する処理はコマンドの発行だけであり、認証コードの作成や判定等の本質的な処理は、第1の制御回路と第2の制御回路との間で実行される。従って、プログラム解析等によって主制御部の制御を改変するような攻撃を受けた場合であっても、第1の制御回路及び第2の制御回路によるハードウェア処理の内容が解析及び改変されない限り、攻撃者によって相互認証の処理が回避されることはない。その結果、主制御部の制御を改変するような攻撃を受けた場合であっても、記憶装置からコンテンツデータが不正に読み出されることを防止することが可能となる。
また、第1の態様に係る情報処理システムによれば、第1の制御回路は、主制御部から受領したコマンドに基づいて、第2の制御回路に第1の制御回路を認証させるための第1の認証コードを生成する。このように、主制御部ではなく第1の制御回路によって第1の認証コードが生成されるため、プログラム解析等を行っても攻撃者は第1の認証コードを特定することができない。その結果、記憶装置からコンテンツデータが不正に読み出されることを防止することが可能となる。
また、第1の態様に係る情報処理システムによれば、第2の制御回路は、第1の制御回路を正当と判定した場合には、第1の制御回路に第2の制御回路を認証させるための第2の認証コードを生成し、当該第2の認証コードを第1の制御回路に送信する。従って、第1の制御回路から第2の制御回路への第1の認証コードの送信と、それに応答する第2の制御回路から第1の制御回路への第2の認証コードの送信との、一往復の通信によって、通信装置と記憶装置との相互認証を行うことができる。その結果、通信装置及び記憶装置それぞれからの往復通信(合計で二往復の通信)が必要となる一般的なチャレンジアンドレスポンス型の相互認証と比較すると、処理の高速化及び効率化を図ることが可能となる。
また、第1の態様に係る情報処理システムによれば、第2の認証制御部は、受信した第1の認証コードに含まれる第1の数列と、第2の数列生成部が生成した第2の数列とが一致するか否かによって、第1の制御回路を認証する。通信装置が不正である場合には、第1の認証コードには、第2の数列生成部が生成した第2の数列と一致する第1の数列が含まれていない。従って、通信装置(又は第1の制御回路)が不正であることを、確実に検出することが可能となる。また、第1の認証制御部は、受信した第2の認証コードに含まれる第3の数列と、第1の数列生成部が生成した第4の数列とが一致するか否かによって、第2の制御回路を認証する。記憶装置が不正である場合には、第2の認証コードには、第1の数列生成部が生成した第4の数列と一致する第3の数列が含まれていない。従って、記憶装置(又は第2の制御回路)が不正であることを、確実に検出することが可能となる。
また、第1の態様に係る情報処理システムによれば、第1の制御回路から第2の制御回路に送信される第1の認証コードに含まれる第1の数列と、当該第1の認証コードに応答して第2の制御回路から第1の制御回路に送信される第2の認証コードに含まれる第3の数列とは、互いに異なる。つまり、通信装置が記憶装置に送信する第1の認証コードと、通信装置が記憶装置から受信する第2の認証コードとは、互いに異なる。このように、送信時と受信時とで認証コードを異ならせることにより、セキュリティ強度を向上することが可能となる。
また、第1の態様に係る情報処理システムによれば、第2の認証制御部は、第1の制御回路を認証する際に生成された第2の数列の次に生成された第3の数列を含めて、第2の認証コードを生成する。これにより、記憶装置から通信装置に送信する第2の認証コードを、通信装置から記憶装置に送信する第1の認証コードから簡易かつ確実に変更することが可能となる。また、第1の認証制御部は、第2の認証コードに含まれる第3の数列と、第1の認証コードを生成する際に生成された第1の数列の次に生成された第4の数列とが一致するか否かによって、第2の制御回路を認証する。記憶装置が正当である場合には、第2の認証コードに含まれる第3の数列は、第1の数列生成部によって生成された第4の数列に一致しており、一方、記憶装置が不正である場合には、第2の認証コードに含まれる第3の数列は、第1の数列生成部によって生成された第4の数列に一致していない。従って、第3の数列が第4の数列に一致するか否かを確認することによって、記憶装置が正当であるか不正であるかを簡易かつ確実に判定することが可能となる。
According to the information processing system according to the first aspect, the main control unit issues a command for instructing mutual authentication between the communication device and the storage device. Then, the first control circuit executes mutual authentication with the second control circuit by receiving the command. In this way, in the mutual authentication between the communication device and the storage device, the process executed by the main control unit is only the command issuance, and the essential process such as creation and determination of the authentication code is performed with the first control circuit. This is executed with the second control circuit. Therefore, even when an attack that modifies the control of the main control unit by program analysis or the like is performed, unless the contents of the hardware processing by the first control circuit and the second control circuit are analyzed and modified, The attacker cannot avoid the mutual authentication process. As a result, it is possible to prevent content data from being illegally read from the storage device even in the case of an attack that alters the control of the main control unit.
Further, according to the information processing system according to the first aspect, the first control circuit causes the second control circuit to authenticate the first control circuit based on the command received from the main control unit. 1 authentication code is generated. Thus, since the first authentication code is generated not by the main control unit but by the first control circuit, the attacker cannot specify the first authentication code even if program analysis or the like is performed. As a result, it is possible to prevent content data from being illegally read from the storage device.
In addition, according to the information processing system according to the first aspect, when the second control circuit determines that the first control circuit is valid, the second control circuit causes the first control circuit to authenticate the second control circuit. A second authentication code is generated, and the second authentication code is transmitted to the first control circuit. Therefore, the transmission of the first authentication code from the first control circuit to the second control circuit and the transmission of the second authentication code from the second control circuit to the first control circuit in response thereto, Mutual authentication between the communication device and the storage device can be performed by one round-trip communication. As a result, compared to general challenge and response mutual authentication that requires two-way communication (two-way communication in total) from each of the communication device and the storage device, the processing speed and efficiency can be improved. It becomes possible.
Further, according to the information processing system according to the first aspect, the second authentication control unit includes the first number sequence included in the received first authentication code and the second number sequence generated by the second number sequence generation unit. The first control circuit is authenticated depending on whether or not the number sequence matches. When the communication device is illegal, the first authentication code does not include the first number sequence that matches the second number sequence generated by the second number sequence generation unit. Therefore, it is possible to reliably detect that the communication device (or the first control circuit) is illegal. In addition, the first authentication control unit determines whether the second number sequence included in the received second authentication code matches the fourth number sequence generated by the first number sequence generation unit. Authenticate the control circuit. When the storage device is illegal, the second authentication code does not include the third number sequence that matches the fourth number sequence generated by the first number sequence generation unit. Therefore, it is possible to reliably detect that the storage device (or the second control circuit) is illegal.
Further, according to the information processing system according to the first aspect, the first number sequence included in the first authentication code transmitted from the first control circuit to the second control circuit, and the first authentication code The third number sequence included in the second authentication code transmitted from the second control circuit to the first control circuit in response to is different from each other. That is, the first authentication code that the communication device transmits to the storage device and the second authentication code that the communication device receives from the storage device are different from each other. In this way, it is possible to improve the security strength by making the authentication code different between transmission and reception.
Moreover, according to the information processing system which concerns on a 1st aspect, a 2nd authentication control part is the 3rd number sequence produced | generated after the 2nd number sequence produced | generated when authenticating the 1st control circuit. The second authentication code is generated. Accordingly, the second authentication code transmitted from the storage device to the communication device can be easily and reliably changed from the first authentication code transmitted from the communication device to the storage device. In addition, the first authentication control unit includes a third number sequence included in the second authentication code and a fourth number generated after the first number sequence generated when generating the first authentication code. The second control circuit is authenticated depending on whether the numerical sequence matches. If the storage device is valid, the third number sequence included in the second authentication code matches the fourth number sequence generated by the first number sequence generation unit, while the storage device is incorrect. In this case, the third number sequence included in the second authentication code does not match the fourth number sequence generated by the first number sequence generation unit. Therefore, by checking whether or not the third number sequence matches the fourth number sequence, it is possible to easily and reliably determine whether the storage device is valid or illegal.
本発明の第2の態様に係る情報処理システムは、第1の態様に係る情報処理システムにおいて特に、前記第1の制御回路は、前記コマンドのコマンドID以外のデータを、前記第1の数列生成部が生成した前記第1の数列に置き換えることにより、前記第1の認証コードを生成することを特徴とするものである。
The information processing system according to a second aspect of the present invention is the information processing system according to the first aspect, in particular, the first control circuit generates the first sequence of data other than the command ID of the command The first authentication code is generated by replacing with the first number sequence generated by the unit .
第2の態様に係る情報処理システムによれば、第1の制御回路は、コマンドのコマンドID以外のデータを、第1の数列生成部が生成した第1の数列に置き換えることにより、第1の認証コードを生成する。これにより、プログラム解析等によっては特定できない第1の認証コードを、簡易に生成することが可能となる。また、第1の認証コードにはコマンドIDが含まれるため、第2の制御回路は、第1の認証コードを受信することにより、相互認証の処理を適切に開始することが可能となる。
According to the information processing system according to the second aspect, the first control circuit, the data other than the command ID of the command, by replacing the first sequence where the first sequence generator has generated, the first Generate an authentication code for. This makes it possible to easily generate the first authentication code that cannot be specified by program analysis or the like. Further, since the first authentication code includes the command ID, the second control circuit can appropriately start the mutual authentication process by receiving the first authentication code.
本発明の第3の態様に係る情報処理システムは、第1又は第2の態様に係る情報処理システムにおいて特に、前記第2の制御回路は、前記第1の認証コードに基づいて前記第1の制御回路を認証し、前記第1の制御回路を不正と判定した場合には、以後に前記通信装置から前記記憶装置に向けて送信されるデータを受信しないことを特徴とするものである。
In the information processing system according to the third aspect of the present invention, particularly in the information processing system according to the first or second aspect, the second control circuit is configured to perform the first control based on the first authentication code. If the control circuit is authenticated and the first control circuit is determined to be illegal, data transmitted from the communication device to the storage device is not received thereafter.
第3の態様に係る情報処理システムによれば、第2の制御回路は、第1の制御回路を不正と判定した場合には、以後に通信装置から記憶装置に向けて送信されるデータを受信しない。従って、不正な通信装置から記憶装置に向けて読み出しコマンドが送信された場合等であっても、記憶装置は当該読み出しコマンドを受信しない。その結果、記憶装置からコンテンツデータが不正に読み出されることを防止することが可能となる。
According to the information processing system according to the third aspect, when the second control circuit determines that the first control circuit is illegal, the second control circuit subsequently receives data transmitted from the communication device to the storage device. do not do. Therefore, even when a read command is transmitted from an unauthorized communication device to the storage device, the storage device does not receive the read command. As a result, it is possible to prevent content data from being illegally read from the storage device.
本発明の第4の態様に係る情報処理システムは、第1〜第3のいずれか一つの態様に係る情報処理システムにおいて特に、前記第1の制御回路は、前記第2の認証コードに基づいて前記第2の制御回路を認証し、前記第2の制御回路を不正と判定した場合には、前記通信装置と前記記憶装置との間での以後の通信を遮断することを特徴とするものである。
The information processing system according to a fourth aspect of the present invention is the information processing system according to any one of the first to third aspects, in particular, the first control circuit is based on the second authentication code. If the second control circuit is authenticated and it is determined that the second control circuit is illegal, subsequent communication between the communication device and the storage device is cut off. It is.
第4の態様に係る情報処理システムによれば、第1の制御回路は、第2の制御回路を不正と判定した場合には、通信装置と記憶装置との間での以後の通信を遮断する。従って、通信装置から不正な記憶装置に向けて読み出しコマンドが送信されることや、不正な記憶装置から通信装置に向けてコンテンツデータが送信されることが回避される。その結果、記憶装置からコンテンツデータが不正に読み出されることを防止することが可能となる。
According to the information processing system according to the fourth aspect, when the first control circuit determines that the second control circuit is illegal, the first control circuit blocks subsequent communication between the communication device and the storage device. . Therefore, it is possible to prevent a read command from being transmitted from the communication device to the unauthorized storage device and content data from being transmitted from the unauthorized storage device to the communication device. As a result, it is possible to prevent content data from being illegally read from the storage device.
本発明の第5の態様に係る情報処理システムは、第1〜第4のいずれか一つの態様に係る情報処理システムにおいて特に、前記第1の数列生成部及び前記第2の数列生成部は、認証の処理毎に異なる前記第1の数列及び前記第2の数列をそれぞれ生成することを特徴とするものである。
The information processing system according to the fifth aspect of the present invention is the information processing system according to any one of the first to fourth aspects, in particular, the first number sequence generation unit and the second number sequence generation unit are The first number sequence and the second number sequence that are different for each authentication process are generated.
第5の態様に係る情報処理システムによれば、第1の数列生成部及び第2の数列生成部は、認証の処理毎に異なる第1の数列及び第2の数列をそれぞれ生成する。その結果、第1の認証コード及び第2の認証コードは認証の処理毎に変更されるため、セキュリティ強度を向上することが可能となる。
According to the information processing system concerning the 5th mode, the 1st number sequence generation part and the 2nd number sequence generation part generate the 1st number sequence and the 2nd number sequence which differ for every processing of authentication, respectively. As a result, since the first authentication code and the second authentication code are changed for each authentication process, the security strength can be improved.
本発明によれば、マイクロプロセッサの制御を改変するような攻撃を受けた場合であっても、記憶装置からコンテンツデータが不正に読み出されることを防止することが可能となる。 According to the present invention, it is possible to prevent content data from being illegally read out from a storage device even when subjected to an attack that alters the control of the microprocessor.
以下、本発明の実施の形態について、図面を用いて詳細に説明する。なお、異なる図面において同一の符号を付した要素は、同一又は相応する要素を示すものとする。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. In addition, the element which attached | subjected the same code | symbol in different drawing shall show the same or corresponding element.
図1は、本発明の実施の形態に係る情報処理システム1の全体構成を概略的に示す図である。情報処理システム1は、通信装置2と半導体記憶装置3とを備えて構成されている。通信装置2は、例えばパーソナルコンピュータである。半導体記憶装置3は、例えば、通信装置2に着脱自在に接続可能なメモリカードである。あるいは、半導体記憶装置3に代えて、光ディスクや磁気ディスク等の任意の記憶装置を用いることもできる。
FIG. 1 is a diagram schematically showing an overall configuration of an
通信装置2は、ソフトウェア処理によって情報処理システム1を制御するメインシステムとしてのマイクロプロセッサ11(主制御部)と、マイクロプロセッサ11とは別に実装されたメモリコントローラ12(第1の制御回路)とを備えて構成されている。メモリコントローラ12は、ハードウェア処理によって半導体記憶装置3を制御する。
The
半導体記憶装置3は、画像、音声、テキスト、コード、管理情報等の任意のコンテンツデータが記憶されたメモリアレイ22(記憶部)と、メモリアレイ22を制御するメモリコントローラ21(第2の制御回路)とを備えて構成されている。メモリアレイ22は、例えばNAND型フラッシュメモリを用いて構成されている。但し、この例に限定されるものではなく、メモリアレイ22はNOR型フラッシュメモリ等を用いて構成されていても良い。
The semiconductor storage device 3 includes a memory array 22 (storage unit) that stores arbitrary content data such as images, sounds, texts, codes, management information, and the like, and a memory controller 21 (second control circuit) that controls the memory array 22 ). The
図2は、マイクロプロセッサ11の構成を示す図である。マイクロプロセッサ11は、バス47を介して相互に接続された、CPU41、演算器42、RAM43、ROM44、ブリッジ45、及びレジスタ46を備えて構成されている。
FIG. 2 is a diagram showing the configuration of the
図3は、メモリコントローラ12の構成を示す図である。図3の接続関係で示すように、メモリコントローラ12は、鍵生成部51(第1の数列生成部)、暗号化・復号部52、認証制御部53(第1の認証制御部)、及びマスク回路54,55を備えて構成されている。鍵生成部51は、機密性の高い固定値の共有鍵Pを用いて、所定の乱数生成アルゴリズムによってランダムな数列(以下の例ではセッション鍵K)を生成する。鍵生成部51は、メモリコントローラ12がマイクロプロセッサ11から認証コマンドCを受領する度に、毎回異なるセッション鍵K(ナンス)を生成する。
FIG. 3 is a diagram illustrating a configuration of the
図4は、メモリコントローラ21の構成を示す図である。図4の接続関係で示すように、メモリコントローラ21は、鍵生成部61(第2の数列生成部)、暗号化・復号部62、及び認証制御部63(第2の認証制御部)を備えて構成されている。鍵生成部61は、鍵生成部51が保持している共有鍵Pと同一の共有鍵Pを用いて、鍵生成部51と同一の乱数生成アルゴリズムによって、鍵生成部51が生成するセッション鍵Kと同一のセッション鍵Kを生成する。鍵生成部61は、メモリコントローラ21がメモリコントローラ12から暗号化認証コードXを受信する度に、毎回異なるセッション鍵Kを生成する。
FIG. 4 is a diagram illustrating the configuration of the
以下、図3,4を参照して、通信装置2と半導体記憶装置3との相互認証の処理について説明する。前提として、暗号化・復号部52,62は、鍵生成部51,61が前回生成したセッション鍵K(N−1)によって初期化されているものとする。また、相互認証の処理が完了して通信装置2及び半導体記憶装置3の正当性が互いに認証されるまでは、マイクロプロセッサ11からメモリアレイ22へのアクセスは許可されていない。
The mutual authentication process between the
まずマイクロプロセッサ11は、相互認証の実行を指示するための所定バイト長の認証コマンドCを発行する。認証コマンドCは、それが認証コマンドであることを識別するための特定のコマンドIDと、コマンドID以外のデータとを含む。メモリコントローラ12は、マイクロプロセッサ11から認証コマンドCを受領し、受領した認証コマンドCを認証制御部53に入力する。
First, the
次に鍵生成部51は、認証制御部53からの要求に従ってセッション鍵K(N)を生成する。セッション鍵K(N)は、暗号化・復号部52及び認証制御部53に入力される。
Next, the
次に認証制御部53は、認証コマンドC及びセッション鍵K(N)に基づいて認証コードS(N)を生成する。例えば、認証コマンドCのコマンドID以外のデータを、セッション鍵K(N)に置き換えることにより、コマンドIDとセッション鍵K(N)とを含む認証コードS(N)を生成する。認証制御部53は、生成した認証コードS(N)を暗号化・復号部52に入力する。
Next, the
次に暗号化・復号部52は、現在設定されているセッション鍵K(N−1)を用いて認証コードS(N)を暗号化することにより、暗号化認証コードX(N)を生成する。そして、生成した暗号化認証コードX(N)をメモリコントローラ21に送信する。
Next, the encryption /
次に認証制御部53は、鍵生成部51が今回生成したセッション鍵K(N)によって、暗号化・復号部52を初期化する。
Next, the
メモリコントローラ21は、メモリコントローラ12から受信した暗号化認証コードX(N)を、暗号化・復号部62に入力する。
The
次に暗号化・復号部62は、現在設定されているセッション鍵K(N−1)を用いて暗号化認証コードX(N)を復号することにより、認証コードS(N)を再生する。そして、再生した認証コードS(N)を認証制御部63に入力する。
Next, the encryption /
次に鍵生成部61は、認証制御部63からの要求に従ってセッション鍵K(N)を生成する。セッション鍵K(N)は、暗号化・復号部62及び認証制御部63に入力される。
Next, the
次に認証制御部63は、暗号化認証コードX(N)の復号により再生した認証コードS(N)に含まれるセッション鍵K(N)と、鍵生成部61から入力されたセッション鍵K(N)とを比較することにより、通信装置2(又はメモリコントローラ12。以下同様)の正当性を認証する。具体的には、両セッション鍵K(N)が一致する場合には通信装置2を正当と判定し、両セッション鍵K(N)が一致しない場合には通信装置2を不正と判定する。
Next, the
認証制御部63は、通信装置2を不正と判定した場合には、暗号化・復号部62に対して通信装置2からの送信データの受信を禁止する。これにより、メモリコントローラ21は、以後に通信装置2から半導体記憶装置3に向けて送信されるデータを受信しない。
When the
一方、通信装置2を正当と判定した場合には、次に認証制御部63は、鍵生成部61が今回生成したセッション鍵K(N)によって、暗号化・復号部62を初期化する。
On the other hand, when it is determined that the
次に鍵生成部61は、認証制御部63からの要求に従って、次回のセッション鍵K(N+1)を生成する。セッション鍵K(N+1)は、認証制御部63に入力される。
Next, the
次に認証制御部63は、鍵生成部61から入力されたセッション鍵K(N+1)に基づいて認証コードS(N+1)を生成する。例えば、セッション鍵K(N+1)をそのまま認証コードS(N+1)として使用する。認証制御部63は、生成した認証コードS(N+1)を暗号化・復号部62に入力する。
Next, the
次に暗号化・復号部62は、現在設定されているセッション鍵K(N)を用いて認証コードS(N+1)を暗号化することにより、暗号化認証コードY(N+1)を生成する。そして、生成した暗号化認証コードY(N+1)をメモリコントローラ12に送信する。
Next, the encryption /
メモリコントローラ12は、メモリコントローラ21から受信した暗号化認証コードY(N+1)を、暗号化・復号部52に入力する。
The
次に暗号化・復号部52は、現在設定されているセッション鍵K(N)を用いて暗号化認証コードY(N+1)を復号することにより、認証コードS(N+1)を再生する。そして、再生した認証コードS(N+1)を認証制御部53に入力する。
Next, the encryption /
次に鍵生成部51は、認証制御部53からの要求に従ってセッション鍵K(N+1)を生成する。セッション鍵K(N+1)は、認証制御部53に入力される。
Next, the
次に認証制御部53は、暗号化認証コードY(N+1)の復号により再生した認証コードS(N+1)に含まれるセッション鍵K(N+1)と、鍵生成部51から入力されたセッション鍵K(N+1)とを比較することにより、半導体記憶装置3(又はメモリコントローラ21。以下同様)の正当性を認証する。具体的には、両セッション鍵K(N+1)が一致する場合には半導体記憶装置3を正当と判定し、両セッション鍵K(N+1)が一致しない場合には半導体記憶装置3を不正と判定する。
Next, the
認証制御部53は、半導体記憶装置3を不正と判定した場合には、データをオール「0」又はオール「1」に置換する等のマスク処理を有効にする制御信号Dを、マスク回路54,55に入力する。これにより、通信装置2と半導体記憶装置3との間での以後の通信が遮断される。
If the
一方、半導体記憶装置3を正当と判定した場合には、次に認証制御部53は、マスク処理を無効にする制御信号Dを、マスク回路54,55に入力する。これにより、通信装置2は、半導体記憶装置3に対してコンテンツデータの読み出しコマンド等を送信することが可能となり、また、半導体記憶装置3からコンテンツデータを受信することが可能となる。
On the other hand, when it is determined that the semiconductor memory device 3 is valid, the
次回の相互認証の処理では、認証制御部63は、再生した認証コードS(N+1)に含まれるセッション鍵K(N+1)と、鍵生成部61が生成したセッション鍵K(N+1)とが一致するか否かによって、メモリコントローラ12の正当性を認証する。また、認証制御部53は、再生した認証コードS(N+2)に含まれるセッション鍵K(N+2)と、鍵生成部51が生成したセッション鍵K(N+2)とが一致するか否かによって、メモリコントローラ21の正当性を認証する。
In the next mutual authentication process, the
このように本実施の形態に係る情報処理システム1によれば、マイクロプロセッサ11(主制御部)は、通信装置2と半導体記憶装置3との相互認証を指示する認証コマンドCを発行する。そして、メモリコントローラ12(第1の制御回路)は、認証コマンドCを受領することにより、メモリコントローラ21(第2の制御回路)との間で相互認証を実行する。このように、通信装置2と半導体記憶装置3との相互認証において、マイクロプロセッサ11が実行する処理は認証コマンドCの発行だけであり、認証コードの作成や判定等の本質的な処理は、メモリコントローラ12とメモリコントローラ21との間で実行される。従って、プログラム解析や、ROM44又はRAM43のデータを改ざんすること等によって、マイクロプロセッサ11の制御を改変するような攻撃を受けた場合であっても、メモリコントローラ12,21によるハードウェア処理の内容が解析及び改変されない限り、攻撃者によって相互認証の処理が回避されることはない。その結果、マイクロプロセッサ11の制御を改変するような攻撃を受けた場合であっても、半導体記憶装置3からコンテンツデータが不正に読み出されることを防止することが可能となる。
As described above, according to the
また、本実施の形態に係る情報処理システム1によれば、メモリコントローラ12は、マイクロプロセッサ11から受領した認証コマンドCに基づいて、メモリコントローラ21にメモリコントローラ12を認証させるための第1の認証コードS(N)を生成する。このように、マイクロプロセッサ11ではなくメモリコントローラ12によって認証コードS(N)が生成されるため、プログラム解析等を行っても攻撃者は認証コードS(N)を特定することができない。その結果、半導体記憶装置3からコンテンツデータが不正に読み出されることを防止することが可能となる。
Further, according to the
また、本実施の形態に係る情報処理システム1によれば、メモリコントローラ12は、認証コマンドCのコマンドID以外のデータを、自ら生成した数列に置き換えることにより、認証コードS(N)を生成する。これにより、プログラム解析等によっては特定できない認証コードを、簡易に生成することが可能となる。また、認証コードS(N)にはコマンドIDが含まれるため、メモリコントローラ21は、認証コードS(N)を受信することにより、相互認証の処理を適切に開始することが可能となる。
Further, according to the
また、本実施の形態に係る情報処理システム1によれば、メモリコントローラ21は、メモリコントローラ12を不正と判定した場合には、以後に通信装置2から半導体記憶装置3に向けて送信されるデータを受信しない。従って、不正な通信装置2から半導体記憶装置3に向けて読み出しコマンドが送信された場合等であっても、半導体記憶装置3は当該読み出しコマンドを受信しない。その結果、半導体記憶装置3からコンテンツデータが不正に読み出されることを防止することが可能となる。
Further, according to the
また、本実施の形態に係る情報処理システム1によれば、メモリコントローラ21は、メモリコントローラ12を正当と判定した場合には、メモリコントローラ12にメモリコントローラ21を認証させるための第2の認証コードS(N+1)を生成し、当該認証コードS(N+1)をメモリコントローラ12に送信する。従って、メモリコントローラ12からメモリコントローラ21への認証コードS(N)の送信と、それに応答するメモリコントローラ21からメモリコントローラ12への認証コードS(N+1)の送信との、一往復の通信によって、通信装置2と半導体記憶装置3との相互認証を行うことができる。その結果、通信装置2及び半導体記憶装置3それぞれからの往復通信(合計で二往復の通信)が必要となる一般的なチャレンジアンドレスポンス型の相互認証と比較すると、処理の高速化及び効率化を図ることが可能となる。
Further, according to the
また、本実施の形態に係る情報処理システム1によれば、メモリコントローラ12は、メモリコントローラ21を不正と判定した場合には、通信装置2と半導体記憶装置3との間での以後の通信を遮断する。従って、通信装置2から不正な半導体記憶装置3に向けて読み出しコマンドが送信されることや、不正な半導体記憶装置3から通信装置2に向けてコンテンツデータが送信されることが回避される。その結果、半導体記憶装置3からコンテンツデータが不正に読み出されることを防止することが可能となる。
Further, according to the
また、本実施の形態に係る情報処理システム1によれば、認証制御部63は、再生した認証コードS(N)に含まれるセッション鍵K(N)と、鍵生成部61が生成したセッション鍵K(N)とが一致するか否かによって、メモリコントローラ12の正当性を認証する。通信装置2が不正である場合には、認証コードS(N)には、鍵生成部61が生成したセッション鍵K(N)と一致するセッション鍵K(N)が含まれていない。従って、通信装置2が不正であることを、確実に検出することが可能となる。また、認証制御部53は、再生した認証コードS(N+1)に含まれるセッション鍵K(N+1)と、鍵生成部51が生成したセッション鍵K(N+1)とが一致するか否かによって、メモリコントローラ21の正当性を認証する。半導体記憶装置3が不正である場合には、認証コードS(N+1)には、鍵生成部51が生成したセッション鍵K(N+1)と一致するセッション鍵K(N+1)が含まれていない。従って、半導体記憶装置3が不正であることを、確実に検出することが可能となる。
Further, according to the
また、本実施の形態に係る情報処理システム1によれば、鍵生成部51,61は、認証の処理毎に異なるセッション鍵Kをそれぞれ生成する。その結果、認証コードSは認証の処理毎に変更されるため、セキュリティ強度を向上することが可能となる。
Further, according to the
また、本実施の形態に係る情報処理システム1によれば、メモリコントローラ12からメモリコントローラ21に送信される認証コードS(N)に含まれるセッション鍵K(N)と、当該認証コードS(N)に応答してメモリコントローラ21からメモリコントローラ12に送信される認証コードS(N+1)に含まれるセッション鍵K(N+1)とは、互いに異なる。つまり、通信装置2が半導体記憶装置3に送信する認証コードS(N)と、通信装置2が半導体記憶装置3から受信する認証コードS(N+1)とは、互いに異なる。このように、送信時と受信時とで認証コードSを異ならせることにより、セキュリティ強度を向上することが可能となる。
Further, according to the
また、本実施の形態に係る情報処理システム1によれば、認証制御部63は、メモリコントローラ12を認証する際に生成されたセッション鍵K(N)の次に生成された更新後のセッション鍵K(N+1)を含めて、認証コードS(N+1)を生成する。これにより、半導体記憶装置3から通信装置2に送信する認証コードS(N+1)を、通信装置2から半導体記憶装置3に送信する認証コードS(N)から簡易かつ確実に変更することが可能となる。また、認証制御部53は、認証コードS(N+1)に含まれる更新後のセッション鍵K(N+1)と、認証コードS(N)を生成する際に生成されたセッション鍵K(N)の次に生成された更新後のセッション鍵K(N+1)とが一致するか否かによって、メモリコントローラ21を認証する。半導体記憶装置3が正当である場合には、認証コードS(N+1)に含まれる更新後のセッション鍵K(N+1)は、鍵生成部51によって生成された更新後のセッション鍵K(N+1)に一致しており、一方、半導体記憶装置3が不正である場合には、認証コードS(N+1)に含まれる更新後のセッション鍵K(N+1)は、鍵生成部51によって生成された更新後のセッション鍵K(N+1)に一致していない。従って、両セッション鍵K(N+1)が一致するか否かを確認することによって、半導体記憶装置3が正当であるか不正であるかを簡易かつ確実に判定することが可能となる。
Further, according to the
1 情報処理システム
2 通信装置
3 半導体記憶装置
11 マイクロプロセッサ
12 メモリコントローラ
21 メモリコントローラ
22 メモリアレイ
51 鍵生成部
52 暗号化・復号部
53 認証制御部
61 鍵生成部
62 暗号化・復号部
63 認証制御部
DESCRIPTION OF
Claims (5)
前記通信装置に接続される記憶装置と、
を備える情報処理システムであって、
前記通信装置は、
ソフトウェア処理によって前記情報処理システムを制御する主制御部と、
前記主制御部とは別に実装され、ハードウェア処理によって前記記憶装置を制御する第1の制御回路と、
を有し、
前記記憶装置は、
コンテンツデータが記憶された記憶部と、
前記記憶部を制御する第2の制御回路と、
を有し、
前記第1の制御回路は、
第1の数列を生成する第1の数列生成部と、
前記第2の制御回路に前記第1の制御回路を認証させるための第1の認証コードを生成する第1の認証制御部と、
を含み、
前記第2の制御回路は、
前記第1の数列生成部が生成する前記第1の数列と同一の第2の数列を生成する第2の数列生成部と、
前記第1の制御回路に前記第2の制御回路を認証させるための第2の認証コードを生成する第2の認証制御部と、
を含み、
前記主制御部は、前記通信装置と前記記憶装置との相互認証を指示するコマンドを発行し、
前記第1の制御回路は、前記コマンドを受領することにより、前記第1の数列生成部が生成した前記第1の数列を含む前記第1の認証コードを生成し、当該第1の認証コードを前記第2の制御回路に送信し、
前記第2の認証制御部は、受信した前記第1の認証コードに含まれる前記第1の数列と、前記第2の数列生成部が生成した前記第2の数列とが一致するか否かによって、前記第1の制御回路を認証し、前記第1の制御回路を正当と判定した場合には、前記第2の数列生成部が前記第2の数列の次に生成した第3の数列を含む前記第2の認証コードを生成し、当該第2の認証コードを前記第1の制御回路に送信し、
前記第1の認証制御部は、受信した前記第2の認証コードに含まれる前記第3の数列と、前記第1の数列生成部が前記第1の数列の次に生成した第4の数列とが一致するか否かによって、前記第2の制御回路を認証する、情報処理システム。 A communication device;
A storage device connected to the communication device;
An information processing system comprising:
The communication device
A main control unit for controlling the information processing system by software processing;
A first control circuit that is mounted separately from the main control unit and controls the storage device by hardware processing;
Have
The storage device
A storage unit storing content data;
A second control circuit for controlling the storage unit;
Have
The first control circuit includes:
A first number sequence generator for generating a first number sequence;
A first authentication control unit for generating a first authentication code for causing the second control circuit to authenticate the first control circuit;
Including
The second control circuit includes:
A second number sequence generation unit that generates a second number sequence that is the same as the first number sequence generated by the first number sequence generation unit;
A second authentication control unit for generating a second authentication code for causing the first control circuit to authenticate the second control circuit;
Including
The main control unit issues a command instructing mutual authentication between the communication device and the storage device,
The first control circuit, upon receiving the command, generates the first authentication code including the first number sequence generated by the first number sequence generation unit, and uses the first authentication code as the first authentication code. Transmitting to the second control circuit;
The second authentication control unit determines whether the first number sequence included in the received first authentication code matches the second number sequence generated by the second number sequence generation unit. When the first control circuit is authenticated and the first control circuit is determined to be valid, the second number sequence generation unit includes a third number sequence generated next to the second number sequence. Generating the second authentication code, and transmitting the second authentication code to the first control circuit;
The first authentication control unit includes the third number sequence included in the received second authentication code, and the fourth number sequence generated by the first number sequence generation unit next to the first number sequence. An information processing system that authenticates the second control circuit depending on whether or not the two match .
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013139899A JP6203556B2 (en) | 2013-07-03 | 2013-07-03 | Information processing system |
US14/321,041 US9959403B2 (en) | 2013-07-03 | 2014-07-01 | Information processing system for mutual authentication between communication device and storage |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013139899A JP6203556B2 (en) | 2013-07-03 | 2013-07-03 | Information processing system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015015542A JP2015015542A (en) | 2015-01-22 |
JP6203556B2 true JP6203556B2 (en) | 2017-09-27 |
Family
ID=52436999
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013139899A Active JP6203556B2 (en) | 2013-07-03 | 2013-07-03 | Information processing system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6203556B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015014839A (en) * | 2013-07-03 | 2015-01-22 | 株式会社メガチップス | Information processing system |
JP6246516B2 (en) * | 2013-07-24 | 2017-12-13 | 株式会社メガチップス | Information processing system |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2549675B2 (en) * | 1987-11-12 | 1996-10-30 | 株式会社東芝 | Portable electronic device and mutual authentication method |
JP2007086957A (en) * | 2005-09-21 | 2007-04-05 | Felica Networks Inc | Information processing system, client device, server device, information processing method and computer program |
JP2007200481A (en) * | 2006-01-27 | 2007-08-09 | Sony Corp | Information recording device and information recording method |
JP5139028B2 (en) * | 2007-10-24 | 2013-02-06 | エイチジーエスティーネザーランドビーブイ | Content data management system and method |
-
2013
- 2013-07-03 JP JP2013139899A patent/JP6203556B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2015015542A (en) | 2015-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113014539B (en) | Internet of things equipment safety protection system and method | |
EP2711859B1 (en) | Secured computing system with asynchronous authentication | |
US8171306B2 (en) | Universal secure token for obfuscation and tamper resistance | |
CN102138300B (en) | Message authentication code pre-computation with applications to secure memory | |
CN113268715A (en) | Software encryption method, device, equipment and storage medium | |
US9959403B2 (en) | Information processing system for mutual authentication between communication device and storage | |
CN102271037A (en) | Key protectors based on online keys | |
KR101739203B1 (en) | Password-based user authentication method using one-time private key-based digital signature and homomorphic encryption | |
JP2005157930A (en) | Confidential information processing system and lsi | |
JP3749640B2 (en) | IC card using device, IC card and storage medium | |
JP6387908B2 (en) | Authentication system | |
CN101281575A (en) | Method for protecting software | |
EP2232397B1 (en) | Secure data utilization | |
JP2008287488A (en) | Data distributing and preserving unit | |
JP6188633B2 (en) | Computer system, computer, semiconductor device, information processing method, and computer program | |
JP6203556B2 (en) | Information processing system | |
TWI549020B (en) | Computing device, method and system | |
JP6246516B2 (en) | Information processing system | |
JP6069120B2 (en) | Information processing system | |
CN112291189B (en) | Method, device, equipment and storage medium for sending and checking ciphertext | |
KR102199464B1 (en) | Method of authentication among nodes participating in consortium blockchain | |
CN107070648A (en) | A kind of cryptographic key protection method and PKI system | |
JP2015014839A (en) | Information processing system | |
JP2010252275A (en) | Authentication processing method, authentication processing program, recording medium and authentication processing system | |
JP6124338B2 (en) | Information processing system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160329 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170124 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170130 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170324 |
|
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: 20170817 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170830 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6203556 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |