JP6473874B2 - Memory device, host device, and memory system - Google Patents

Memory device, host device, and memory system Download PDF

Info

Publication number
JP6473874B2
JP6473874B2 JP2015145323A JP2015145323A JP6473874B2 JP 6473874 B2 JP6473874 B2 JP 6473874B2 JP 2015145323 A JP2015145323 A JP 2015145323A JP 2015145323 A JP2015145323 A JP 2015145323A JP 6473874 B2 JP6473874 B2 JP 6473874B2
Authority
JP
Japan
Prior art keywords
cryptographic module
circuit
dummy
generation circuit
control circuit
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
JP2015145323A
Other languages
Japanese (ja)
Other versions
JP2017028505A (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.)
MegaChips Corp
Original Assignee
MegaChips 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 MegaChips Corp filed Critical MegaChips Corp
Priority to JP2015145323A priority Critical patent/JP6473874B2/en
Priority to US15/213,918 priority patent/US10615959B2/en
Publication of JP2017028505A publication Critical patent/JP2017028505A/en
Application granted granted Critical
Publication of JP6473874B2 publication Critical patent/JP6473874B2/en
Priority to US16/799,836 priority patent/US11115181B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、メモリ装置、ホスト装置、及びそれらを備えるメモリシステムに関する。   The present invention relates to a memory device, a host device, and a memory system including them.

ホスト装置とそれに接続されるメモリ装置とを備えるメモリシステムにおいて、両装置間で送受信されるコマンドやデータを暗号化することによってセキュリティ性を向上させたメモリシステムが実用化されている。   2. Description of the Related Art In a memory system including a host device and a memory device connected to the host device, a memory system in which security is improved by encrypting commands and data transmitted / received between both devices has been put into practical use.

現在使用されている暗号方式は、暗号学的な解析手法に対して計算量的に安全であるとされている。しかし、実際にメモリシステムに暗号モジュールを実装する場合には、消費電力や処理時間のような、実装に依存したリークが発生する。そのような動作状況を様々な物理的手段で観察することにより、秘密鍵等の秘密情報を不正に取得しようとするサイドチャネル攻撃の脅威が増している。   Currently used cryptography is computationally safe for cryptographic analysis techniques. However, when the cryptographic module is actually mounted on the memory system, leaks depending on the mounting, such as power consumption and processing time, occur. By observing such an operating state with various physical means, the threat of side channel attacks that attempt to illegally acquire secret information such as a secret key has increased.

サイドチャネル攻撃の一つとして、装置の消費電力を測定することによって秘密情報を解析する電力解析攻撃がある。その中でも、測定した複数の消費電力波形に対して統計処理による解析を行う差分電力解析(DPA:Differential Power Analysis)が、特に強力な攻撃法として報告されている(下記非特許文献1参照)。   As one of the side channel attacks, there is a power analysis attack that analyzes secret information by measuring the power consumption of the apparatus. Among them, differential power analysis (DPA: Differential Power Analysis) for performing analysis by statistical processing on a plurality of measured power consumption waveforms has been reported as a particularly powerful attack method (see Non-Patent Document 1 below).

そのため近年では、DPA攻撃に対する種々の対策回路が提案されており、例えば下記非特許文献2には、RSL(Random Switching Logic)回路及びWDDL(Wave Dynamic Differential Logic)回路が提案されている。RSL回路は、乱数を用いて論理回路の動作モードを切り替えることによって状態遷移確率の偏りをなくし、それによって暗号鍵に依存しないよう消費電力をランダム化する。WDDL回路は、プリチャージ動作を行った後、演算時のビット値の違いに起因する消費電流の相違を相補回路によって低減することにより、消費電力を均一化する。   Therefore, in recent years, various countermeasure circuits against DPA attacks have been proposed. For example, the following Non-Patent Document 2 proposes an RSL (Random Switching Logic) circuit and a WDDL (Wave Dynamic Differential Logic) circuit. The RSL circuit eliminates the bias of the state transition probability by switching the operation mode of the logic circuit using a random number, and thereby randomizes the power consumption so as not to depend on the encryption key. After performing the precharge operation, the WDDL circuit equalizes the power consumption by reducing the difference in current consumption due to the difference in bit value at the time of calculation by the complementary circuit.

Paul Kocher、他2名、”Introduction to Differential Power Analysis and related Attacks”、[online]、Cryptography Research、平成27年7月1日検索、インターネット<http://www.cryptography.com/public/pdf/DPATechInfo.pdf>Paul Kocher and two others, “Introduction to Differential Power Analysis and related Attacks”, [online], Cryptography Research, search July 1, 2015, Internet <http://www.cryptography.com/public/pdf/ DPATechInfo.pdf> Daisuke Suzuki、他2名、"Random Switching Logic: A Countermeasure against DPA based on Transition Probability"、[online]、International Association for Cryptologic Research、平成27年7月1日検索、インターネット<http://eprint.iacr.org/2004/346.pdf>Daisuke Suzuki and two others, "Random Switching Logic: A Countermeasure against DPA based on Transition Probability", [online], International Association for Cryptologic Research, July 1, 2015 search, Internet <http: //eprint.iacr .org / 2004 / 346.pdf>

しかし、ホスト装置とメモリ装置とを備えるメモリシステムにおいて、上述したRSL回路又はWDDL回路を装置に実装する場合には、これらの回路を実装しない装置と比較して、演算時間、回路規模、及び消費電力が2〜3倍以上に増大するため、コストが増大する。   However, in a memory system including a host device and a memory device, when the RSL circuit or the WDDL circuit described above is mounted on the device, operation time, circuit scale, and consumption are compared with a device that does not mount these circuits. Since the power increases by 2 to 3 times or more, the cost increases.

本発明はかかる事情に鑑みて成されたものであり、DPA攻撃に対する対策を低コストで実装することが可能な、メモリ装置、ホスト装置、及びそれらを備えるメモリシステムを得ることを目的とするものである。   The present invention has been made in view of such circumstances, and an object of the present invention is to obtain a memory device, a host device, and a memory system including them that can implement a countermeasure against a DPA attack at a low cost. It is.

本発明の第1の態様に係るメモリ装置は、ホスト装置に接続されるメモリ装置であって、前記ホスト装置と前記メモリ装置との間で送受信されるデータを暗号化及び復号化するために通常動作を実行する、第1の暗号モジュール及び第2の暗号モジュールと、前記第1の暗号モジュール及び前記第2の暗号モジュールの動作を制御する制御回路と、を備え、前記制御回路は、前記第2の暗号モジュールが通常動作を実行し前記第1の暗号モジュールが通常動作を実行しない第1の期間において、前記第1の暗号モジュールにダミー動作を実行させ、前記第1の暗号モジュールは、入力データに基づいて一時データを生成する一時データ生成回路を有し、前記第2の暗号モジュールは、前記一時データ生成回路によって生成された一時データに基づいて暗号処理を実行する暗号処理回路を有し、前記制御回路は、第1の期間において、ダミーの入力データを前記一時データ生成回路に入力し、前記制御回路は、前記一時データ生成回路の状態遷移情報を保持する保持回路を有し、前記第1の暗号モジュールにダミー動作を実行させる場合には、最新の状態遷移情報を前記保持回路に退避し、次に前記一時データ生成回路に通常動作を実行させる場合には、前記保持回路が保持している状態遷移情報を前記一時データ生成回路に書き戻すことを特徴とするものである。
A memory device according to a first aspect of the present invention is a memory device connected to a host device, and is usually used for encrypting and decrypting data transmitted and received between the host device and the memory device. A first cryptographic module and a second cryptographic module that execute an operation; and a control circuit that controls operations of the first cryptographic module and the second cryptographic module, wherein the control circuit includes the first cryptographic module and the second cryptographic module. In a first period in which the second cryptographic module performs a normal operation and the first cryptographic module does not perform a normal operation, the first cryptographic module performs a dummy operation, and the first cryptographic module A temporary data generating circuit for generating temporary data based on the data, and the second cryptographic module is configured to store the temporary data generated by the temporary data generating circuit. And the control circuit inputs dummy input data to the temporary data generation circuit in the first period, and the control circuit includes: When having a holding circuit that holds state transition information and causing the first cryptographic module to perform a dummy operation, the latest state transition information is saved in the holding circuit, and then the temporary data generation circuit When the operation is executed, the state transition information held by the holding circuit is written back to the temporary data generation circuit .

第1の態様に係るメモリ装置によれば、制御回路は、第2の暗号モジュールが通常動作を実行し第1の暗号モジュールが通常動作を実行しない第1の期間において、第1の暗号モジュールにダミー動作を実行させる。このように、第2の暗号モジュールのみが通常動作を実行する第1の期間において第1の暗号モジュールをダミー動作させることにより、第2の暗号モジュールが具有する消費電力特性を隠蔽することができる。その結果、DPA攻撃に対する対策を低コストで実装することが可能となる。
また、第1の態様に係るメモリ装置によれば、制御回路は、第1の期間において、ダミーの入力データを一時データ生成回路に入力する。このように、ダミーの入力データを一時データ生成回路に入力することにより、一時データ生成回路にダミーの一時データを生成するダミー動作を実行させることが可能となる。
また、第1の態様に係るメモリ装置によれば、制御回路は、第1の暗号モジュールにダミー動作を実行させる場合には、一時データ生成回路の最新の状態遷移情報を保持回路に退避し、次に一時データ生成回路に通常動作を実行させる場合には、保持回路が保持している状態遷移情報を一時データ生成回路に書き戻す。これにより、一時データ生成回路はダミー動作後の通常動作において一時データを齟齬なく生成することが可能となる。
According to the memory device of the first aspect, the control circuit controls the first cryptographic module in the first period in which the second cryptographic module performs a normal operation and the first cryptographic module does not perform a normal operation. Perform a dummy operation. As described above, the power consumption characteristic of the second cryptographic module can be concealed by performing the dummy operation of the first cryptographic module in the first period in which only the second cryptographic module performs the normal operation. . As a result, a countermeasure against the DPA attack can be implemented at a low cost.
In the memory device according to the first aspect, the control circuit inputs dummy input data to the temporary data generation circuit in the first period. Thus, by inputting dummy input data to the temporary data generation circuit, it is possible to cause the temporary data generation circuit to execute a dummy operation for generating dummy temporary data.
According to the memory device of the first aspect, when the control circuit causes the first cryptographic module to perform a dummy operation, the control circuit saves the latest state transition information of the temporary data generation circuit to the holding circuit, Next, when causing the temporary data generation circuit to perform a normal operation, the state transition information held by the holding circuit is written back to the temporary data generation circuit. As a result, the temporary data generation circuit can generate the temporary data in the normal operation after the dummy operation.

本発明の第2の態様に係るメモリ装置は、第1の態様に係るメモリ装置において特に、前記制御回路は、第1の期間とは異なる第2の期間において、前記第1の暗号モジュール及び前記第2の暗号モジュールの双方を同時に通常動作させることを特徴とするものである。   The memory device according to a second aspect of the present invention is the memory device according to the first aspect, in particular, the control circuit includes the first cryptographic module and the control circuit in a second period different from the first period. Both the second cryptographic modules are normally operated at the same time.

第2の態様に係るメモリ装置によれば、制御回路は、第2の期間において、第1の暗号モジュール及び第2の暗号モジュールの双方を同時に通常動作させる。このように、第1の暗号モジュール及び第2の暗号モジュールの双方を同時に通常動作させることにより、一方のみを通常動作させた場合に露呈する消費電力特性を隠蔽することができる。その結果、DPA攻撃に対する対策を低コストで実装することが可能となる。   According to the memory device of the second aspect, the control circuit normally operates both the first cryptographic module and the second cryptographic module simultaneously in the second period. In this manner, by simultaneously operating both the first cryptographic module and the second cryptographic module at the same time, it is possible to conceal the power consumption characteristics exposed when only one of them is normally operated. As a result, a countermeasure against the DPA attack can be implemented at a low cost.

本発明の第の態様に係るメモリ装置は、第1又は第2の態様に係るメモリ装置において特に、前記ダミーの入力データは固定値であることを特徴とするものである。
The memory device according to a third aspect of the present invention is characterized in that, in the memory device according to the first or second aspect, the dummy input data is a fixed value.

の態様に係るメモリ装置によれば、ダミーの入力データは固定値である。このように、ダミーの入力データをあえて固定値とし、何らかの鍵データの生成処理が実行されていることを攻撃者に予見させることにより、解析によってダミーの入力データを特定するという無駄な作業を攻撃者に行わせる効果が期待できる。その結果、真の入力データを長期間保護することが可能となる。また、ダミーの入力データを固定値とすることにより、ダミー動作に伴う一時データ生成回路の消費電力を均一化することが可能となる。
According to the memory device of the third aspect, the dummy input data is a fixed value. In this way, the dummy input data is set to a fixed value and the attacker predicts that some key data generation processing is being executed, thereby attacking the useless work of identifying dummy input data through analysis. Can be expected. As a result, it is possible to protect true input data for a long time. Further, by setting the dummy input data to a fixed value, the power consumption of the temporary data generation circuit accompanying the dummy operation can be made uniform.

本発明の第の態様に係るメモリ装置は、第1又は第2の態様に係るメモリ装置において特に、前記ダミーの入力データは変動値であることを特徴とするものである。
The memory device according to a fourth aspect of the present invention is characterized in that, in the memory device according to the first or second aspect, the dummy input data is a variable value.

の態様に係るメモリ装置によれば、ダミーの入力データは変動値である。従って、ダミーの入力データが変動する度に一時データ生成回路の消費電力も変動するため、メモリ装置全体の消費電力を変動させることができる。その結果、DPA攻撃による消費電力特性の解析を困難化することが可能となる。
According to the memory device of the fourth aspect, the dummy input data is a fluctuation value. Accordingly, since the power consumption of the temporary data generation circuit varies each time the dummy input data varies, the power consumption of the entire memory device can be varied. As a result, it becomes possible to make it difficult to analyze the power consumption characteristics due to the DPA attack.

本発明の第の態様に係るメモリ装置は、第〜第のいずれか一つの態様に係るメモリ装置において特に、前記入力データは鍵情報であることを特徴とするものである。
The memory device according to a fifth aspect of the present invention is characterized in that, in the memory device according to any one of the first to fourth aspects, the input data is key information.

の態様に係るメモリ装置によれば、入力データとして鍵情報を入力することにより、一時データ生成回路は、一時データとしてセッション鍵を生成することが可能となる。
According to the memory device of the fifth aspect, the temporary data generation circuit can generate the session key as the temporary data by inputting the key information as the input data.

本発明の第の態様に係るメモリ装置は、第1〜第のいずれか一つの態様に係るメモリ装置において特に、前記ホスト装置からの不正アクセスを検出する不正アクセス検出回路をさらに備え、前記制御回路は、前記不正アクセス検出回路が不正アクセスを検出した場合に、第1の期間において前記第2の暗号モジュールにダミー動作を実行させることを特徴とするものである。
A memory device according to a sixth aspect of the present invention, in the memory device according to any one of the first to fifth aspects, further includes an unauthorized access detection circuit for detecting unauthorized access from the host device, The control circuit causes the second cryptographic module to perform a dummy operation in a first period when the unauthorized access detection circuit detects unauthorized access.

の態様に係るメモリ装置によれば、制御回路は、不正アクセス検出回路が不正アクセスを検出した場合に、第1の期間において第2の暗号モジュールにダミー動作を実行させる。従って、システムの可用性を確保できるとともに、不正アクセスを検出しない場合にダミー動作を実行させることに起因する消費電力の増大を回避することが可能となる。
According to the memory device of the sixth aspect, the control circuit causes the second cryptographic module to perform a dummy operation in the first period when the unauthorized access detection circuit detects unauthorized access. Therefore, the availability of the system can be ensured, and an increase in power consumption caused by executing a dummy operation when no unauthorized access is detected can be avoided.

本発明の第の態様に係るホスト装置は、メモリ装置が接続されるホスト装置であって、前記ホスト装置と前記メモリ装置との間で送受信されるデータを暗号化及び復号化するために通常動作を実行する、第1の暗号モジュール及び第2の暗号モジュールと、前記第1の暗号モジュール及び前記第2の暗号モジュールの動作を制御する制御回路と、を備え、前記制御回路は、前記第2の暗号モジュールが通常動作を実行し前記第1の暗号モジュールが通常動作を実行しない第1の期間において、前記第1の暗号モジュールにダミー動作を実行させ、前記第1の暗号モジュールは、入力データに基づいて一時データを生成する一時データ生成回路を有し、前記第2の暗号モジュールは、前記一時データ生成回路によって生成された一時データに基づいて暗号処理を実行する暗号処理回路を有し、前記制御回路は、第1の期間において、ダミーの入力データを前記一時データ生成回路に入力し、前記制御回路は、前記一時データ生成回路の状態遷移情報を保持する保持回路を有し、前記第1の暗号モジュールにダミー動作を実行させる場合には、最新の状態遷移情報を前記保持回路に退避し、次に前記一時データ生成回路に通常動作を実行させる場合には、前記保持回路が保持している状態遷移情報を前記一時データ生成回路に書き戻すことを特徴とするものである。
A host device according to a seventh aspect of the present invention is a host device to which a memory device is connected, and is usually used for encrypting and decrypting data transmitted and received between the host device and the memory device. A first cryptographic module and a second cryptographic module that execute an operation; and a control circuit that controls operations of the first cryptographic module and the second cryptographic module, wherein the control circuit includes the first cryptographic module and the second cryptographic module. In a first period in which the second cryptographic module performs a normal operation and the first cryptographic module does not perform a normal operation, the first cryptographic module performs a dummy operation, and the first cryptographic module A temporary data generating circuit for generating temporary data based on the data, and the second cryptographic module is configured to store the temporary data generated by the temporary data generating circuit. And the control circuit inputs dummy input data to the temporary data generation circuit in the first period, and the control circuit includes: When having a holding circuit that holds state transition information and causing the first cryptographic module to perform a dummy operation, the latest state transition information is saved in the holding circuit, and then the temporary data generation circuit When the operation is executed, the state transition information held by the holding circuit is written back to the temporary data generation circuit .

の態様に係るホスト装置によれば、制御回路は、第2の暗号モジュールが通常動作を実行し第1の暗号モジュールが通常動作を実行しない第1の期間において、第1の暗号モジュールにダミー動作を実行させる。このように、第2の暗号モジュールのみが通常動作を実行する第1の期間において第1の暗号モジュールをダミー動作させることにより、第2の暗号モジュールが具有する消費電力特性を隠蔽することができる。その結果、DPA攻撃に対する対策を低コストで実装することが可能となる。
また、の態様に係るホスト装置によれば、制御回路は、第1の期間において、ダミーの入力データを一時データ生成回路に入力する。このように、ダミーの入力データを一時データ生成回路に入力することにより、一時データ生成回路にダミーの一時データを生成するダミー動作を実行させることが可能となる。
また、の態様に係るホスト装置によれば、制御回路は、第1の暗号モジュールにダミー動作を実行させる場合には、一時データ生成回路の最新の状態遷移情報を保持回路に退避し、次に一時データ生成回路に通常動作を実行させる場合には、保持回路が保持している状態遷移情報を一時データ生成回路に書き戻す。これにより、一時データ生成回路はダミー動作後の通常動作において一時データを齟齬なく生成することが可能となる。
According to the host device of the seventh aspect, the control circuit causes the first cryptographic module to be in the first cryptographic module in the first period in which the second cryptographic module performs normal operation and the first cryptographic module does not perform normal operation. Perform a dummy operation. As described above, the power consumption characteristic of the second cryptographic module can be concealed by performing the dummy operation of the first cryptographic module in the first period in which only the second cryptographic module performs the normal operation. . As a result, a countermeasure against the DPA attack can be implemented at a low cost.
In the host device according to the seventh aspect, the control circuit inputs dummy input data to the temporary data generation circuit in the first period. Thus, by inputting dummy input data to the temporary data generation circuit, it is possible to cause the temporary data generation circuit to execute a dummy operation for generating dummy temporary data.
Further , according to the host device of the seventh aspect, when the control circuit causes the first cryptographic module to perform a dummy operation, the control circuit saves the latest state transition information of the temporary data generation circuit to the holding circuit, Next, when causing the temporary data generation circuit to perform a normal operation, the state transition information held by the holding circuit is written back to the temporary data generation circuit. As a result, the temporary data generation circuit can generate the temporary data in the normal operation after the dummy operation.

本発明の第の態様に係るホスト装置は、第の態様に係るホスト装置において特に、前記制御回路は、第1の期間とは異なる第2の期間において、前記第1の暗号モジュール及び前記第2の暗号モジュールの双方を同時に通常動作させることを特徴とするものである。
The host device according to an eighth aspect of the present invention is the host device according to the seventh aspect, in particular, the control circuit includes the first cryptographic module and the second circuit in a second period different from the first period. Both the second cryptographic modules are normally operated at the same time.

の態様に係るホスト装置によれば、制御回路は、第2の期間において、第1の暗号モジュール及び第2の暗号モジュールの双方を同時に通常動作させる。このように、第1の暗号モジュール及び第2の暗号モジュールの双方を同時に通常動作させることにより、一方のみを通常動作させた場合に露呈する消費電力特性を隠蔽することができる。その結果、DPA攻撃に対する対策を低コストで実装することが可能となる。
According to the host device of the eighth aspect, the control circuit normally operates both the first cryptographic module and the second cryptographic module simultaneously in the second period. In this manner, by simultaneously operating both the first cryptographic module and the second cryptographic module at the same time, it is possible to conceal the power consumption characteristics exposed when only one of them is normally operated. As a result, a countermeasure against the DPA attack can be implemented at a low cost.

本発明の第の態様に係るホスト装置は、第7又は第8の態様に係るホスト装置において特に、前記ダミーの入力データは固定値であることを特徴とするものである。
The host device according to the ninth aspect of the present invention is characterized in that, in the host device according to the seventh or eighth aspect, the dummy input data is a fixed value.

の態様に係るホスト装置によれば、ダミーの入力データは固定値である。このように、ダミーの入力データをあえて固定値とし、何らかの鍵データの生成処理が実行されていることを攻撃者に予見させることにより、解析によってダミーの入力データを特定するという無駄な作業を攻撃者に行わせる効果が期待できる。その結果、真の入力データを長期間保護することが可能となる。また、ダミーの入力データを固定値とすることにより、ダミー動作に伴う一時データ生成回路の消費電力を均一化することが可能となる。
According to the host device of the ninth aspect, the dummy input data is a fixed value. In this way, the dummy input data is set to a fixed value and the attacker predicts that some key data generation processing is being executed, thereby attacking the useless work of identifying dummy input data through analysis. Can be expected. As a result, it is possible to protect true input data for a long time. Further, by setting the dummy input data to a fixed value, the power consumption of the temporary data generation circuit accompanying the dummy operation can be made uniform.

本発明の第10の態様に係るホスト装置は、第7又は第8の態様に係るホスト装置において特に、前記ダミーの入力データは変動値であることを特徴とするものである。
The host device according to the tenth aspect of the present invention is characterized in that, in the host device according to the seventh or eighth aspect, the dummy input data is a variable value.

10の態様に係るホスト装置によれば、ダミーの入力データは変動値である。従って、ダミーの入力データが変動する度に一時データ生成回路の消費電力も変動するため、ホスト装置全体の消費電力を変動させることができる。その結果、DPA攻撃による消費電力特性の解析を困難化することが可能となる。
According to the host device according to the tenth aspect, the dummy input data is a fluctuation value. Accordingly, since the power consumption of the temporary data generation circuit varies every time the dummy input data varies, the power consumption of the entire host device can be varied. As a result, it becomes possible to make it difficult to analyze the power consumption characteristics due to the DPA attack.

本発明の第11の態様に係るホスト装置は、第〜第10のいずれか一つの態様に係るホスト装置において特に、前記入力データは鍵情報であることを特徴とするものである。
The host device according to an eleventh aspect of the present invention is characterized in that, in the host device according to any one of the seventh to tenth aspects, the input data is key information.

11の態様に係るホスト装置によれば、入力データとして鍵情報を入力することにより、一時データ生成回路は、一時データとしてセッション鍵を生成することが可能となる。
According to the host device of the eleventh aspect, by inputting key information as input data, the temporary data generation circuit can generate a session key as temporary data.

本発明の第12の態様に係るメモリシステムは、第1〜第のいずれか一つの態様に係るメモリ装置と、第〜第11のいずれか一つの態様に係るホスト装置と、を備えることを特徴とするものである。
A memory system according to a twelfth aspect of the present invention includes the memory device according to any one of the first to sixth aspects, and the host device according to any one of the seventh to eleventh aspects. It is characterized by.

12の態様に係るメモリシステムによれば、メモリ装置及びホスト装置の双方においてDPA攻撃に対する対策がそれぞれ実装されているため、メモリシステム全体としてDPA攻撃に対する耐性を高めることが可能となる。



According to the memory system of the twelfth aspect, since the countermeasure against the DPA attack is implemented in both the memory device and the host device, it is possible to increase the resistance against the DPA attack as the entire memory system.



本発明によれば、DPA攻撃に対する対策を低コストで実装することが可能となる。   According to the present invention, it is possible to implement a countermeasure against a DPA attack at a low cost.

本発明の実施の形態に係るメモリシステムの構成を示す図である。It is a figure which shows the structure of the memory system which concerns on embodiment of this invention. メモリ装置の暗号ブロックの構成を示す図である。It is a figure which shows the structure of the encryption block of a memory device. セッション鍵生成回路及びストリームデータ生成回路の処理内容を示すタイミングチャートである。It is a timing chart which shows the processing content of a session key generation circuit and a stream data generation circuit. ホスト装置の暗号ブロックの構成を示す図である。It is a figure which shows the structure of the encryption block of a host apparatus. セッション鍵生成回路及びストリームデータ生成回路の処理内容を示すタイミングチャートである。It is a timing chart which shows the processing content of a session key generation circuit and a stream data generation circuit. メモリ装置の暗号ブロックの構成を示す図である。It is a figure which shows the structure of the encryption block of a memory device.

以下、本発明の実施の形態について、図面を用いて詳細に説明する。なお、異なる図面において同一の符号を付した要素は、同一又は相応する要素を示すものとする。   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に示すようにメモリシステム1は、ホスト装置2と、ホスト装置2に着脱自在に接続される半導体メモリ等のメモリ装置3とを備えて構成されている。   FIG. 1 is a diagram showing a simplified configuration of a memory system 1 according to an embodiment of the present invention. As shown in FIG. 1, the memory system 1 includes a host device 2 and a memory device 3 such as a semiconductor memory that is detachably connected to the host device 2.

ホスト装置2は、CPU11、内部メモリ12、主制御回路13、及び暗号ブロック14を有している。メモリ装置3は、暗号ブロック14と同様の暗号ブロック21と、コンテンツデータ等の任意のデータが格納されたメモリアレイ22とを有している。暗号ブロック14,21は、ホスト装置2とメモリ装置3との間で送受信されるコマンドやデータに対して、暗号化処理及び復号化処理を実行する。   The host device 2 includes a CPU 11, an internal memory 12, a main control circuit 13, and an encryption block 14. The memory device 3 includes an encryption block 21 similar to the encryption block 14 and a memory array 22 in which arbitrary data such as content data is stored. The encryption blocks 14 and 21 execute encryption processing and decryption processing on commands and data transmitted and received between the host device 2 and the memory device 3.

図2は、メモリ装置3の暗号ブロック21の構成を示す図である。図2に示すように暗号ブロック21は、制御回路31、暗号モジュール32,33、セレクタ34、及び演算回路35を有している。制御回路31は、レジスタ等の保持回路41を有している。暗号モジュール32は、セッション鍵生成回路42を有している。セッション鍵生成回路42は、一時データ生成回路として機能し、セレクタ34から入力された入力データとしての鍵情報(秘密鍵K11又はダミー鍵K12)に基づいて、一時データとしてのセッション鍵D12を生成する。暗号モジュール33は、ストリームデータ生成回路43を有している。ストリームデータ生成回路43は、暗号処理回路として機能し、鍵情報(秘密鍵K13)と、セッション鍵生成回路42から入力されたセッション鍵D12とに基づいて、ストリーム暗号のためのストリームデータD13を生成する。演算回路35は、ホスト装置2から受信した暗号化コマンドS11と、ストリームデータ生成回路43から入力されたストリームデータD13との排他的論理和を演算することにより、非暗号のコマンドS12を復元する。また、演算回路35は、メモリアレイ22から読み出された非暗号のデータS13と、ストリームデータ生成回路43から入力されたストリームデータD13との排他的論理和を演算することにより、暗号化データS14を生成する。   FIG. 2 is a diagram illustrating a configuration of the encryption block 21 of the memory device 3. As shown in FIG. 2, the encryption block 21 includes a control circuit 31, encryption modules 32 and 33, a selector 34, and an arithmetic circuit 35. The control circuit 31 has a holding circuit 41 such as a register. The cryptographic module 32 has a session key generation circuit 42. The session key generation circuit 42 functions as a temporary data generation circuit, and generates a session key D12 as temporary data based on key information (secret key K11 or dummy key K12) as input data input from the selector 34. . The cryptographic module 33 has a stream data generation circuit 43. The stream data generation circuit 43 functions as an encryption processing circuit, and generates stream data D13 for stream encryption based on the key information (secret key K13) and the session key D12 input from the session key generation circuit 42. To do. The arithmetic circuit 35 restores the non-encrypted command S12 by calculating an exclusive OR of the encrypted command S11 received from the host device 2 and the stream data D13 input from the stream data generating circuit 43. Further, the arithmetic circuit 35 calculates the exclusive OR of the non-encrypted data S13 read from the memory array 22 and the stream data D13 input from the stream data generation circuit 43, thereby obtaining the encrypted data S14. Is generated.

図3は、セッション鍵生成回路42及びストリームデータ生成回路43の処理内容を示すタイミングチャートである。コマンド処理期間(時刻T11〜T12)において、ストリームデータ生成回路43は、コマンド又はデータの暗号化又は復号化を実行するための通常動作として、ストリームデータD13の生成処理を行い、これにより暗号化コマンドS11の復号化が実行される。また、コマンド処理期間において、セッション鍵生成回路42は、通常動作ではないダミー動作を実行する。レイテンシ期間(時刻T12〜T13)において、セッション鍵生成回路42は、通常動作としてセッション鍵D12の更新処理を行う。それと同時にストリームデータ生成回路43は、通常動作として、現在入力されている更新前のセッション鍵D12を用いて初期化処理を行う。メモリアレイ22からのデータの読み出しが完了した後のデータ処理期間(時刻T13〜T14)において、ストリームデータ生成回路43は、通常動作としてストリームデータD13の生成処理を行い、これにより非暗号のデータS13の暗号化が実行される。また、データ処理期間においてセッション鍵生成回路42は、通常動作ではないダミー動作を実行する。   FIG. 3 is a timing chart showing the processing contents of the session key generation circuit 42 and the stream data generation circuit 43. In the command processing period (time T11 to T12), the stream data generation circuit 43 performs generation processing of the stream data D13 as a normal operation for executing encryption or decryption of the command or data, and thereby the encrypted command. The decryption of S11 is executed. In the command processing period, the session key generation circuit 42 performs a dummy operation that is not a normal operation. In the latency period (time T12 to T13), the session key generation circuit 42 performs update processing of the session key D12 as a normal operation. At the same time, the stream data generation circuit 43 performs an initialization process as a normal operation using the session key D12 before update that is currently input. In the data processing period (time T13 to T14) after the reading of data from the memory array 22 is completed, the stream data generation circuit 43 performs the generation process of the stream data D13 as a normal operation, and thereby the non-encrypted data S13. Encryption is performed. In the data processing period, the session key generation circuit 42 executes a dummy operation that is not a normal operation.

以下、メモリアレイ22に格納されているデータをメモリ装置3からホスト装置2に読み出す処理を例にとり、メモリ装置3の動作を詳細に説明する。   Hereinafter, the operation of the memory device 3 will be described in detail by taking as an example a process of reading data stored in the memory array 22 from the memory device 3 to the host device 2.

メモリシステム1が起動されると、制御回路31は、メモリアレイ22の所定場所に格納されているDPA制御情報D11(ON又はOFFのフラグ情報)を読み出す。制御回路31は、DPA制御情報D11がONに設定されている場合には以下に述べるDPA対策処理を実行し、OFFに設定されている場合には実行しない。本実施の形態の例では、DPA制御情報D11はONに設定されているものとする。なお、DPA制御情報D11は、ホスト装置2から発行されるコマンドの一部に格納されていても良く、この場合には、DPA対策処理の実行の要否をホスト装置2によって簡易に切り替えることが可能となる。   When the memory system 1 is activated, the control circuit 31 reads out DPA control information D11 (ON or OFF flag information) stored at a predetermined location in the memory array 22. The control circuit 31 executes the DPA countermeasure process described below when the DPA control information D11 is set to ON, and does not execute it when it is set to OFF. In the example of the present embodiment, it is assumed that the DPA control information D11 is set to ON. The DPA control information D11 may be stored in a part of a command issued from the host apparatus 2. In this case, the host apparatus 2 can easily switch whether or not to execute the DPA countermeasure process. It becomes possible.

次に制御回路31は、DPA対策処理としてセッション鍵生成回路42のダミー動作を実行するために、セッション鍵生成回路42の現在の設定内容を示す状態遷移情報を、暗号モジュール32から読み出す。そして、読み出した状態遷移情報を、保持回路41によって保持する。また、制御回路31は、セレクタ34にダミー鍵K12を選択させる。ダミー鍵K12は、固定値であっても良いし、乱数生成器を用いた変動値であっても良い。あるいは、ダミー鍵K12は秘密鍵K11と同一であっても良い。   Next, the control circuit 31 reads state transition information indicating the current setting content of the session key generation circuit 42 from the cryptographic module 32 in order to execute the dummy operation of the session key generation circuit 42 as the DPA countermeasure process. Then, the read state transition information is held by the holding circuit 41. Further, the control circuit 31 causes the selector 34 to select the dummy key K12. The dummy key K12 may be a fixed value or a variable value using a random number generator. Alternatively, the dummy key K12 may be the same as the secret key K11.

次にホスト装置2は、CPU11が発行した読み出しコマンドを暗号ブロック14によって暗号化することにより、暗号化コマンドS11をメモリ装置3に送信する。   Next, the host apparatus 2 transmits the encryption command S11 to the memory device 3 by encrypting the read command issued by the CPU 11 with the encryption block 14.

次にコマンド処理期間(時刻T11〜T12)において、セッション鍵生成回路42は、ダミー鍵K12に基づいてダミーのセッション鍵D12を生成するダミー動作を実行する。生成されたダミーのセッション鍵D12は、ストリームデータ生成回路43には入力されない。また、コマンド処理期間においてストリームデータ生成回路43は、通常動作として、セッション鍵生成回路42から入力された最新のセッション鍵D12に基づいてストリームデータD13の生成処理を行い、これにより暗号化コマンドS11の復号化が実行される。   Next, in the command processing period (time T11 to T12), the session key generation circuit 42 executes a dummy operation for generating a dummy session key D12 based on the dummy key K12. The generated dummy session key D12 is not input to the stream data generation circuit 43. Further, during the command processing period, the stream data generation circuit 43 performs generation processing of the stream data D13 based on the latest session key D12 input from the session key generation circuit 42 as a normal operation, and thereby the encryption command S11 Decryption is performed.

次にレイテンシ期間(時刻T12〜T13)において、制御回路31は、保持回路41が保持している状態遷移情報をセッション鍵生成回路42に書き戻す。これにより、セッション鍵生成回路42の設定内容は、ダミー動作を実行する前の状態に再設定される。また、制御回路31は、セレクタ34に秘密鍵K11を選択させる。セッション鍵生成回路42は、通常動作としてセッション鍵D12の更新処理を行うことにより、次回に使用する新たなセッション鍵D12を生成する。それと同時にストリームデータ生成回路43は、通常動作として、現在入力されている更新前のセッション鍵D12を用いて初期化処理を行う。   Next, in the latency period (time T12 to T13), the control circuit 31 writes the state transition information held by the holding circuit 41 back to the session key generation circuit 42. Thereby, the setting content of the session key generation circuit 42 is reset to the state before the dummy operation is executed. Further, the control circuit 31 causes the selector 34 to select the secret key K11. The session key generation circuit 42 generates a new session key D12 to be used next time by performing update processing of the session key D12 as a normal operation. At the same time, the stream data generation circuit 43 performs an initialization process as a normal operation using the session key D12 before update that is currently input.

次に制御回路31は、DPA対策処理としてセッション鍵生成回路42のダミー動作を実行するために、セッション鍵生成回路42の現在の設定内容(つまり更新後の設定内容)を示す状態遷移情報を、暗号モジュール32から読み出す。そして、読み出した状態遷移情報を、保持回路41によって保持する。また、制御回路31は、セレクタ34にダミー鍵K12を選択させる。   Next, in order to execute the dummy operation of the session key generation circuit 42 as the DPA countermeasure process, the control circuit 31 stores the state transition information indicating the current setting content (that is, the updated setting content) of the session key generation circuit 42. Read from the cryptographic module 32. Then, the read state transition information is held by the holding circuit 41. Further, the control circuit 31 causes the selector 34 to select the dummy key K12.

次に、上述した暗号化コマンドS11の復号化によって復元された非暗号のコマンドS12に基づいて、メモリアレイ22から所望のデータS13が読み出される。   Next, desired data S13 is read from the memory array 22 based on the non-encrypted command S12 restored by the decryption of the encrypted command S11.

次にデータ処理期間(時刻T13〜T14)において、セッション鍵生成回路42は、ダミー鍵K12に基づいてダミーのセッション鍵D12を生成するダミー動作を実行する。生成されたダミーのセッション鍵D12は、ストリームデータ生成回路43には入力されない。また、データ処理期間においてストリームデータ生成回路43は、通常動作として、セッション鍵生成回路42から入力されたセッション鍵D12に基づいてストリームデータD13の生成処理を行い、これにより非暗号のデータS13の暗号化が実行される。暗号化データS14は、メモリ装置3からホスト装置2に送信される。   Next, in the data processing period (time T13 to T14), the session key generation circuit 42 executes a dummy operation for generating a dummy session key D12 based on the dummy key K12. The generated dummy session key D12 is not input to the stream data generation circuit 43. Further, during the data processing period, the stream data generation circuit 43 performs the generation process of the stream data D13 based on the session key D12 input from the session key generation circuit 42 as a normal operation, thereby encrypting the non-encrypted data S13. Is executed. The encrypted data S14 is transmitted from the memory device 3 to the host device 2.

このように本実施の形態に係るメモリ装置3によれば、制御回路31は、暗号モジュール33(第2の暗号モジュール)が通常動作を実行し、暗号モジュール32(第1の暗号モジュール)が通常動作を実行しないコマンド処理期間及びデータ処理期間(第1の期間)において、暗号モジュール32にダミー動作を実行させる。このように、暗号モジュール33のみが通常動作を実行する第1の期間において暗号モジュール32をダミー動作させることにより、暗号モジュール33が具有する消費電力特性を隠蔽することができる。その結果、DPA攻撃に対する対策を低コストで実装することが可能となる。   As described above, according to the memory device 3 according to the present embodiment, the control circuit 31 is configured such that the cryptographic module 33 (second cryptographic module) performs normal operation and the cryptographic module 32 (first cryptographic module) is normal. In the command processing period and the data processing period (first period) during which no operation is performed, the cryptographic module 32 is caused to perform a dummy operation. As described above, the power consumption characteristics of the cryptographic module 33 can be concealed by performing the dummy operation of the cryptographic module 32 in the first period in which only the cryptographic module 33 performs the normal operation. As a result, a countermeasure against the DPA attack can be implemented at a low cost.

また、制御回路31は、レイテンシ期間(第2の期間)において、暗号モジュール32及び暗号モジュール33の双方を同時に通常動作させる。このように、暗号モジュール32及び暗号モジュール33の双方を同時に通常動作させることにより、一方のみを通常動作させた場合に露呈する消費電力特性を隠蔽することができる。その結果、DPA攻撃に対する対策を低コストで実装することが可能となる。   Further, the control circuit 31 normally operates both the cryptographic module 32 and the cryptographic module 33 simultaneously in the latency period (second period). In this way, by simultaneously operating both the cryptographic module 32 and the cryptographic module 33 simultaneously, it is possible to conceal the power consumption characteristics exposed when only one of them is normally operated. As a result, a countermeasure against the DPA attack can be implemented at a low cost.

また、制御回路31は、第1の期間において、ダミー鍵K12(ダミーの入力データ)をセッション鍵生成回路42(一時データ生成回路)に入力する。このように、ダミー鍵K12をセッション鍵生成回路42に入力することにより、セッション鍵生成回路42にダミーのセッション鍵D12(ダミーの一時データ)を生成するダミー動作を実行させることが可能となる。   In addition, the control circuit 31 inputs the dummy key K12 (dummy input data) to the session key generation circuit 42 (temporary data generation circuit) in the first period. Thus, by inputting the dummy key K12 to the session key generation circuit 42, it is possible to cause the session key generation circuit 42 to execute a dummy operation for generating a dummy session key D12 (dummy temporary data).

また、ダミー鍵K12をあえて固定値とし、何らかの鍵データの生成処理が実行されていることを攻撃者に予見させることにより、解析によってダミー鍵K12を特定するという無駄な作業を攻撃者に行わせる効果が期待できる。その結果、秘密鍵K11を長期間保護することが可能となる。また、ダミー鍵K12を固定値とすることにより、ダミー動作に伴うセッション鍵生成回路42の消費電力を均一化することが可能となる。   In addition, the dummy key K12 is set to a fixed value, and the attacker predicts that some key data generation processing is being executed, thereby causing the attacker to perform useless work of specifying the dummy key K12 by analysis. The effect can be expected. As a result, the private key K11 can be protected for a long time. Further, by setting the dummy key K12 to a fixed value, it becomes possible to equalize the power consumption of the session key generation circuit 42 accompanying the dummy operation.

また、ダミー鍵K12を変動値とすることにより、ダミー鍵K12が変動する度にセッション鍵生成回路42の消費電力も変動するため、メモリ装置3全体の消費電力を変動させることができる。その結果、DPA攻撃による消費電力特性の解析を困難化することが可能となる。   Further, by setting the dummy key K12 as a variation value, the power consumption of the session key generation circuit 42 varies each time the dummy key K12 varies, so that the power consumption of the entire memory device 3 can be varied. As a result, it becomes possible to make it difficult to analyze the power consumption characteristics due to the DPA attack.

また、制御回路31は、暗号モジュール32にダミー動作を実行させる場合には、セッション鍵生成回路42の最新の状態遷移情報を保持回路41に退避し、次にセッション鍵生成回路42に通常動作を実行させる場合には、保持回路41が保持している状態遷移情報をセッション鍵生成回路42に書き戻す。これにより、セッション鍵生成回路42はダミー動作後の通常動作においてセッション鍵D12を齟齬なく生成することが可能となる。   Further, when the control circuit 31 causes the cryptographic module 32 to execute a dummy operation, the control circuit 31 saves the latest state transition information of the session key generation circuit 42 to the holding circuit 41, and then performs normal operation on the session key generation circuit 42. In the case of execution, the state transition information held by the holding circuit 41 is written back to the session key generation circuit 42. Thereby, the session key generation circuit 42 can generate the session key D12 without any problem in the normal operation after the dummy operation.

また、入力データとして秘密鍵K11(鍵情報)を入力することにより、セッション鍵生成回路42は、一時データとしてセッション鍵D12を生成することが可能となる。   Further, by inputting the secret key K11 (key information) as input data, the session key generation circuit 42 can generate a session key D12 as temporary data.

<第1の変形例>
上記実施の形態では、DPA対策をメモリ装置3に実装する例について説明したが、DPA対策をホスト装置2に実装しても良い。
<First Modification>
In the above-described embodiment, the example in which the DPA countermeasure is implemented in the memory device 3 has been described.

図4は、ホスト装置2の暗号ブロック14の構成を示す図である。図4に示すように暗号ブロック14は、制御回路51、暗号モジュール52,53、セレクタ54、及び演算回路55を有している。制御回路51は、レジスタ等の保持回路61を有している。暗号モジュール52は、セッション鍵生成回路62を有している。セッション鍵生成回路62は、一時データ生成回路として機能し、セレクタ54から入力された入力データとしての鍵情報(秘密鍵K21又はダミー鍵K22)に基づいて、一時データとしてのセッション鍵D22を生成する。暗号モジュール53は、ストリームデータ生成回路63を有している。ストリームデータ生成回路63は、暗号処理回路として機能し、鍵情報(秘密鍵K23)と、セッション鍵生成回路62から入力されたセッション鍵D22とに基づいて、ストリーム暗号のためのストリームデータD23を生成する。演算回路55は、メモリ装置3から受信した暗号化データS23と、ストリームデータ生成回路63から入力されたストリームデータD23との排他的論理和を演算することにより、非暗号のデータS24を復元する。また、演算回路55は、主制御回路13から入力された非暗号のコマンドS21と、ストリームデータ生成回路63から入力されたストリームデータD23との排他的論理和を演算することにより、暗号化コマンドS22を生成する。   FIG. 4 is a diagram illustrating the configuration of the encryption block 14 of the host device 2. As shown in FIG. 4, the encryption block 14 includes a control circuit 51, encryption modules 52 and 53, a selector 54, and an arithmetic circuit 55. The control circuit 51 has a holding circuit 61 such as a register. The cryptographic module 52 has a session key generation circuit 62. The session key generation circuit 62 functions as a temporary data generation circuit, and generates a session key D22 as temporary data based on key information (secret key K21 or dummy key K22) as input data input from the selector 54. . The cryptographic module 53 has a stream data generation circuit 63. The stream data generation circuit 63 functions as an encryption processing circuit, and generates stream data D23 for stream encryption based on the key information (secret key K23) and the session key D22 input from the session key generation circuit 62. To do. The arithmetic circuit 55 restores the non-encrypted data S24 by calculating an exclusive OR of the encrypted data S23 received from the memory device 3 and the stream data D23 input from the stream data generating circuit 63. Further, the arithmetic circuit 55 calculates the exclusive OR of the non-encrypted command S21 input from the main control circuit 13 and the stream data D23 input from the stream data generation circuit 63, thereby obtaining the encrypted command S22. Is generated.

図5は、セッション鍵生成回路62及びストリームデータ生成回路63の処理内容を示すタイミングチャートである。コマンド処理期間(時刻T21〜T22)において、ストリームデータ生成回路63は、コマンド又はデータの暗号化又は復号化を実行するための通常動作として、ストリームデータD23の生成処理を行い、これにより非暗号のコマンドS21の暗号化が実行される。また、コマンド処理期間において、セッション鍵生成回路62は、通常動作ではないダミー動作を実行する。レイテンシ期間(時刻T22〜T23)において、セッション鍵生成回路62は、通常動作としてセッション鍵D22の更新処理を行う。それと同時にストリームデータ生成回路63は、通常動作として、現在入力されている更新前のセッション鍵D22を用いて初期化処理を行う。データ処理期間(時刻T23〜T24)において、ストリームデータ生成回路63は、通常動作としてストリームデータD23の生成処理を行い、これにより暗号化データS23の復号化が実行される。また、データ処理期間においてセッション鍵生成回路62は、通常動作ではないダミー動作を実行する。   FIG. 5 is a timing chart showing the processing contents of the session key generation circuit 62 and the stream data generation circuit 63. In the command processing period (time T21 to T22), the stream data generation circuit 63 performs generation processing of the stream data D23 as a normal operation for executing encryption or decryption of the command or data, and thereby performs non-encryption. Encryption of command S21 is executed. In the command processing period, the session key generation circuit 62 performs a dummy operation that is not a normal operation. In the latency period (time T22 to T23), the session key generation circuit 62 performs update processing of the session key D22 as a normal operation. At the same time, the stream data generation circuit 63 performs initialization processing using the session key D22 before update that is currently input as a normal operation. In the data processing period (time T23 to T24), the stream data generation circuit 63 performs the generation process of the stream data D23 as a normal operation, and thereby the encrypted data S23 is decrypted. In the data processing period, the session key generation circuit 62 executes a dummy operation that is not a normal operation.

以下、メモリアレイ22に格納されているデータをメモリ装置3からホスト装置2に読み出す処理を例にとり、ホスト装置2の動作を詳細に説明する。   Hereinafter, the operation of the host device 2 will be described in detail by taking as an example a process of reading data stored in the memory array 22 from the memory device 3 to the host device 2.

メモリシステム1が起動されると、制御回路51は、メモリアレイ22の所定場所に格納されているDPA制御情報D11を読み出す。制御回路51は、DPA制御情報D11がONに設定されている場合には以下に述べるDPA対策処理を実行し、OFFに設定されている場合には実行しない。本変形例では、DPA制御情報D11はONに設定されているものとする。   When the memory system 1 is activated, the control circuit 51 reads out DPA control information D11 stored in a predetermined location of the memory array 22. The control circuit 51 executes the DPA countermeasure process described below when the DPA control information D11 is set to ON, and does not execute it when it is set to OFF. In this modification, it is assumed that the DPA control information D11 is set to ON.

次に制御回路51は、DPA対策処理としてセッション鍵生成回路62のダミー動作を実行するために、セッション鍵生成回路62の現在の設定内容を示す状態遷移情報を、暗号モジュール52から読み出す。そして、読み出した状態遷移情報を、保持回路61によって保持する。また、制御回路51は、セレクタ54にダミー鍵K22を選択させる。ダミー鍵K22は、固定値であっても良いし、乱数生成器を用いた変動値であっても良い。あるいは、ダミー鍵K22は秘密鍵K21と同一であっても良い。   Next, the control circuit 51 reads out state transition information indicating the current setting contents of the session key generation circuit 62 from the cryptographic module 52 in order to execute the dummy operation of the session key generation circuit 62 as the DPA countermeasure process. The read state transition information is held by the holding circuit 61. In addition, the control circuit 51 causes the selector 54 to select the dummy key K22. The dummy key K22 may be a fixed value or a variable value using a random number generator. Alternatively, the dummy key K22 may be the same as the secret key K21.

次にCPU11は、非暗号の読み出しコマンドS21を発行する。コマンドS21は、主制御回路13を介して暗号ブロック14に入力される。   Next, the CPU 11 issues a non-encrypted read command S21. The command S21 is input to the encryption block 14 via the main control circuit 13.

次にコマンド処理期間(時刻T21〜T22)において、セッション鍵生成回路62は、ダミー鍵K22に基づいてダミーのセッション鍵D22を生成するダミー動作を実行する。生成されたダミーのセッション鍵D22は、ストリームデータ生成回路63には入力されない。また、コマンド処理期間においてストリームデータ生成回路63は、通常動作として、セッション鍵生成回路62から入力された最新のセッション鍵D22に基づいてストリームデータD23の生成処理を行い、これにより非暗号のコマンドS21の暗号化が実行される。   Next, in the command processing period (time T21 to T22), the session key generation circuit 62 executes a dummy operation for generating a dummy session key D22 based on the dummy key K22. The generated dummy session key D22 is not input to the stream data generation circuit 63. Further, during the command processing period, the stream data generation circuit 63 performs generation processing of the stream data D23 based on the latest session key D22 input from the session key generation circuit 62 as a normal operation, and thereby the unencrypted command S21. Encryption is performed.

次にレイテンシ期間(時刻T22〜T23)において、制御回路51は、保持回路61が保持している状態遷移情報をセッション鍵生成回路62に書き戻す。これにより、セッション鍵生成回路62の設定内容は、ダミー動作を実行する前の状態に再設定される。また、制御回路51は、セレクタ54に秘密鍵K21を選択させる。セッション鍵生成回路62は、通常動作としてセッション鍵D22の更新処理を行うことにより、次回に使用する新たなセッション鍵D22を生成する。それと同時にストリームデータ生成回路63は、通常動作として、現在入力されている更新前のセッション鍵D22を用いて初期化処理を行う。   Next, in the latency period (time T22 to T23), the control circuit 51 writes the state transition information held in the holding circuit 61 back to the session key generation circuit 62. Thereby, the setting contents of the session key generation circuit 62 are reset to the state before the dummy operation is executed. Further, the control circuit 51 causes the selector 54 to select the secret key K21. The session key generation circuit 62 generates a new session key D22 to be used next time by performing update processing of the session key D22 as a normal operation. At the same time, the stream data generation circuit 63 performs initialization processing using the session key D22 before update that is currently input as a normal operation.

次に制御回路51は、DPA対策処理としてセッション鍵生成回路62のダミー動作を実行するために、セッション鍵生成回路62の現在の設定内容(つまり更新後の設定内容)を示す状態遷移情報を、暗号モジュール52から読み出す。そして、読み出した状態遷移情報を、保持回路61によって保持する。また、制御回路51は、セレクタ54にダミー鍵K22を選択させる。   Next, in order to execute the dummy operation of the session key generation circuit 62 as the DPA countermeasure process, the control circuit 51 stores state transition information indicating the current setting content (that is, the updated setting content) of the session key generation circuit 62. Read from the cryptographic module 52. The read state transition information is held by the holding circuit 61. In addition, the control circuit 51 causes the selector 54 to select the dummy key K22.

次にデータ処理期間(時刻T23〜T24)において、セッション鍵生成回路62は、ダミー鍵K22に基づいてダミーのセッション鍵D22を生成するダミー動作を実行する。生成されたダミーのセッション鍵D22は、ストリームデータ生成回路63には入力されない。また、データ処理期間においてストリームデータ生成回路63は、通常動作として、セッション鍵生成回路62から入力されたセッション鍵D22に基づいてストリームデータD23の生成処理を行い、これにより、メモリ装置3から受信した暗号化データS23の復号化が実行される。復号化されたデータS24は、主制御回路13を介してCPU11に入力される。   Next, in the data processing period (time T23 to T24), the session key generation circuit 62 executes a dummy operation for generating a dummy session key D22 based on the dummy key K22. The generated dummy session key D22 is not input to the stream data generation circuit 63. Further, during the data processing period, the stream data generation circuit 63 performs the generation process of the stream data D23 based on the session key D22 input from the session key generation circuit 62 as a normal operation, and thus received from the memory device 3 Decryption of the encrypted data S23 is executed. The decrypted data S24 is input to the CPU 11 via the main control circuit 13.

このように本変形例に係るホスト装置2によれば、制御回路51は、暗号モジュール53(第2の暗号モジュール)が通常動作を実行し、暗号モジュール52(第1の暗号モジュール)が通常動作を実行しないコマンド処理期間及びデータ処理期間(第1の期間)において、暗号モジュール52にダミー動作を実行させる。このように、暗号モジュール53のみが通常動作を実行する第1の期間において暗号モジュール52をダミー動作させることにより、暗号モジュール53が具有する消費電力特性を隠蔽することができる。その結果、DPA攻撃に対する対策を低コストで実装することが可能となる。   As described above, according to the host device 2 according to this modification, the control circuit 51 is configured such that the cryptographic module 53 (second cryptographic module) performs a normal operation and the cryptographic module 52 (first cryptographic module) performs a normal operation. In the command processing period and the data processing period (first period) during which no encryption is executed, the cryptographic module 52 is caused to execute a dummy operation. In this way, the power consumption characteristics of the cryptographic module 53 can be concealed by performing the dummy operation of the cryptographic module 52 in the first period in which only the cryptographic module 53 performs the normal operation. As a result, a countermeasure against the DPA attack can be implemented at a low cost.

また、制御回路51は、レイテンシ期間(第2の期間)において、暗号モジュール52及び暗号モジュール53の双方を同時に通常動作させる。このように、暗号モジュール52及び暗号モジュール53の双方を同時に通常動作させることにより、一方のみを通常動作させた場合に露呈する消費電力特性を隠蔽することができる。その結果、DPA攻撃に対する対策を低コストで実装することが可能となる。   In addition, the control circuit 51 normally operates both the cryptographic module 52 and the cryptographic module 53 simultaneously in the latency period (second period). As described above, by simultaneously operating both the cryptographic module 52 and the cryptographic module 53 at the same time, it is possible to conceal the power consumption characteristics exposed when only one of the cryptographic module 52 and the cryptographic module 53 is normally operated. As a result, a countermeasure against the DPA attack can be implemented at a low cost.

また、制御回路51は、第1の期間において、ダミー鍵K22(ダミーの入力データ)をセッション鍵生成回路62(一時データ生成回路)に入力する。このように、ダミー鍵K22をセッション鍵生成回路62に入力することにより、セッション鍵生成回路62にダミーのセッション鍵D22(ダミーの一時データ)を生成するダミー動作を実行させることが可能となる。   In addition, the control circuit 51 inputs the dummy key K22 (dummy input data) to the session key generation circuit 62 (temporary data generation circuit) in the first period. Thus, by inputting the dummy key K22 to the session key generation circuit 62, it is possible to cause the session key generation circuit 62 to execute a dummy operation for generating a dummy session key D22 (dummy temporary data).

また、ダミー鍵K22をあえて固定値とし、何らかの鍵データの生成処理が実行されていることを攻撃者に予見させることにより、解析によってダミー鍵K22を特定するという無駄な作業を攻撃者に行わせる効果が期待できる。その結果、秘密鍵K21を長期間保護することが可能となる。また、ダミー鍵K22を固定値とすることにより、ダミー動作に伴うセッション鍵生成回路62の消費電力を均一化することが可能となる。   In addition, the dummy key K22 is set to a fixed value, and the attacker predicts that some key data generation processing is being executed, thereby causing the attacker to perform useless work of specifying the dummy key K22 by analysis. The effect can be expected. As a result, the private key K21 can be protected for a long period. Further, by setting the dummy key K22 to a fixed value, it becomes possible to equalize the power consumption of the session key generation circuit 62 accompanying the dummy operation.

また、ダミー鍵K22を変動値とすることにより、ダミー鍵K22が変動する度にセッション鍵生成回路62の消費電力も変動するため、ホスト装置2全体の消費電力を変動させることができる。その結果、DPA攻撃による消費電力特性の解析を困難化することが可能となる。   In addition, by setting the dummy key K22 as a variation value, the power consumption of the session key generation circuit 62 varies each time the dummy key K22 varies, so that the power consumption of the entire host device 2 can be varied. As a result, it becomes possible to make it difficult to analyze the power consumption characteristics due to the DPA attack.

また、制御回路51は、暗号モジュール52にダミー動作を実行させる場合には、セッション鍵生成回路62の最新の状態遷移情報を保持回路61に退避し、次にセッション鍵生成回路62に通常動作を実行させる場合には、保持回路61が保持している状態遷移情報をセッション鍵生成回路62に書き戻す。これにより、セッション鍵生成回路62はダミー動作後の通常動作においてセッション鍵D22を齟齬なく生成することが可能となる。   Further, when the control module 51 causes the cryptographic module 52 to perform a dummy operation, the control circuit 51 saves the latest state transition information of the session key generation circuit 62 to the holding circuit 61, and then performs normal operation on the session key generation circuit 62. In the case of execution, the state transition information held by the holding circuit 61 is written back to the session key generation circuit 62. Thereby, the session key generation circuit 62 can generate the session key D22 without any problem in the normal operation after the dummy operation.

また、入力データとして秘密鍵K21(鍵情報)を入力することにより、セッション鍵生成回路62は、一時データとしてセッション鍵D22を生成することが可能となる。   Further, by inputting the secret key K21 (key information) as input data, the session key generation circuit 62 can generate a session key D22 as temporary data.

なお、DPA対策をホスト装置2及びメモリ装置3の双方に実装しても良く、この場合には、メモリシステム1全体としてDPA攻撃に対する耐性を高めることが可能となる。   Note that DPA countermeasures may be implemented in both the host device 2 and the memory device 3, and in this case, the memory system 1 as a whole can increase resistance to DPA attacks.

<第2の変形例>
上記実施の形態では、DPA制御情報D11に基づいてDPA対策処理の実行の要否が判定されたが、ホスト装置2からメモリ装置3への不正アクセスがあったことを条件として、DPA対策処理を実行しても良い。
<Second Modification>
In the above embodiment, the necessity of executing the DPA countermeasure process is determined based on the DPA control information D11. However, the DPA countermeasure process is performed on condition that there is an unauthorized access from the host device 2 to the memory device 3. May be executed.

図6は、メモリ装置3の暗号ブロック21の構成を示す図である。図2に示した構成に対して不正アクセス検出回路36が追加されている。不正アクセス検出回路36には、復号化によって復元された非暗号のコマンドS12が、演算回路35から入力される。   FIG. 6 is a diagram showing a configuration of the encryption block 21 of the memory device 3. An unauthorized access detection circuit 36 is added to the configuration shown in FIG. The unauthorized access detection circuit 36 receives the unencrypted command S12 restored by the decryption from the arithmetic circuit 35.

不正アクセス検出回路36は、例えば、所定のアクセス禁止領域へのアクセス要求、メモリアレイ22のデータ容量を超えるアクセス要求、コマンドIDが定義されていない未定義コマンドによるアクセス要求、及び、規定のコマンドシーケンス以外のシーケンスによるアクセス要求等をホスト装置2から受けた場合に、そのアクセスを不正アクセスとして検出し、不正アクセス検出信号D14を制御回路31に入力する。   The unauthorized access detection circuit 36, for example, receives an access request to a predetermined access prohibited area, an access request exceeding the data capacity of the memory array 22, an access request by an undefined command with no command ID defined, and a prescribed command sequence. When an access request or the like based on a sequence other than the above is received from the host device 2, the access is detected as an unauthorized access, and an unauthorized access detection signal D 14 is input to the control circuit 31.

制御回路31は、不正アクセス検出信号D14が入力されたことを実行条件として、上記実施の形態で説明したDPA対策処理を実行する。   The control circuit 31 executes the DPA countermeasure process described in the above embodiment on the condition that the unauthorized access detection signal D14 is input.

このように本変形例に係るメモリ装置3によれば、制御回路31は、不正アクセス検出回路36が不正アクセスを検出した場合に、DPA対策処理を実行する。従って、メモリシステム1の可用性を確保できるとともに、不正アクセスを検出しない場合にダミー動作を実行させることに起因する消費電力の増大を回避することが可能となる。   As described above, according to the memory device 3 according to the present modification, the control circuit 31 executes the DPA countermeasure process when the unauthorized access detection circuit 36 detects unauthorized access. Therefore, it is possible to ensure the availability of the memory system 1 and avoid an increase in power consumption caused by executing a dummy operation when no unauthorized access is detected.

1 メモリシステム
2 ホスト装置
3 メモリ装置
14,21 暗号ブロック
31,51 制御回路
32,33,52,53 暗号モジュール
36 不正アクセス検出回路
41,61 保持回路
42,62 セッション鍵生成回路
43,63 ストリームデータ生成回路
DESCRIPTION OF SYMBOLS 1 Memory system 2 Host apparatus 3 Memory apparatus 14,21 Encryption block 31,51 Control circuit 32,33,52,53 Encryption module 36 Unauthorized access detection circuit 41,61 Holding circuit 42,62 Session key generation circuit 43,63 Stream data Generator circuit

Claims (12)

ホスト装置に接続されるメモリ装置であって、
前記ホスト装置と前記メモリ装置との間で送受信されるデータを暗号化及び復号化するために通常動作を実行する、第1の暗号モジュール及び第2の暗号モジュールと、
前記第1の暗号モジュール及び前記第2の暗号モジュールの動作を制御する制御回路と、
を備え、
前記制御回路は、前記第2の暗号モジュールが通常動作を実行し前記第1の暗号モジュールが通常動作を実行しない第1の期間において、前記第1の暗号モジュールにダミー動作を実行させ
前記第1の暗号モジュールは、入力データに基づいて一時データを生成する一時データ生成回路を有し、
前記第2の暗号モジュールは、前記一時データ生成回路によって生成された一時データに基づいて暗号処理を実行する暗号処理回路を有し、
前記制御回路は、第1の期間において、ダミーの入力データを前記一時データ生成回路に入力し、
前記制御回路は、
前記一時データ生成回路の状態遷移情報を保持する保持回路を有し、
前記第1の暗号モジュールにダミー動作を実行させる場合には、最新の状態遷移情報を前記保持回路に退避し、
次に前記一時データ生成回路に通常動作を実行させる場合には、前記保持回路が保持している状態遷移情報を前記一時データ生成回路に書き戻す、メモリ装置。
A memory device connected to a host device,
A first cryptographic module and a second cryptographic module that perform normal operations to encrypt and decrypt data transmitted and received between the host device and the memory device;
A control circuit for controlling operations of the first cryptographic module and the second cryptographic module;
With
The control circuit causes the first cryptographic module to perform a dummy operation in a first period in which the second cryptographic module performs a normal operation and the first cryptographic module does not perform a normal operation ;
The first cryptographic module has a temporary data generation circuit that generates temporary data based on input data;
The second cryptographic module has a cryptographic processing circuit that performs cryptographic processing based on the temporary data generated by the temporary data generating circuit,
The control circuit inputs dummy input data to the temporary data generation circuit in the first period,
The control circuit includes:
A holding circuit for holding state transition information of the temporary data generation circuit;
When causing the first cryptographic module to perform a dummy operation, the latest state transition information is saved in the holding circuit,
Next, when causing the temporary data generation circuit to perform a normal operation, the memory device writes the state transition information held in the holding circuit back to the temporary data generation circuit .
前記制御回路は、第1の期間とは異なる第2の期間において、前記第1の暗号モジュール及び前記第2の暗号モジュールの双方を同時に通常動作させる、請求項1に記載のメモリ装置。   The memory device according to claim 1, wherein the control circuit normally operates both the first cryptographic module and the second cryptographic module simultaneously in a second period different from the first period. 前記ダミーの入力データは固定値である、請求項1又は2に記載のメモリ装置。  The memory device according to claim 1, wherein the dummy input data is a fixed value. 前記ダミーの入力データは変動値である、請求項1又は2に記載のメモリ装置。  The memory device according to claim 1, wherein the dummy input data is a variable value. 前記入力データは鍵情報である、請求項1〜4のいずれか一つに記載のメモリ装置。  The memory device according to claim 1, wherein the input data is key information. 前記ホスト装置からの不正アクセスを検出する不正アクセス検出回路をさらに備え、  An unauthorized access detection circuit for detecting unauthorized access from the host device;
前記制御回路は、前記不正アクセス検出回路が不正アクセスを検出した場合に、第1の期間において前記第2の暗号モジュールにダミー動作を実行させる、請求項1〜5のいずれか一つに記載のメモリ装置。  6. The control circuit according to claim 1, wherein when the unauthorized access detection circuit detects unauthorized access, the control circuit causes the second cryptographic module to execute a dummy operation in a first period. 7. Memory device.
メモリ装置が接続されるホスト装置であって、  A host device to which a memory device is connected,
前記ホスト装置と前記メモリ装置との間で送受信されるデータを暗号化及び復号化するために通常動作を実行する、第1の暗号モジュール及び第2の暗号モジュールと、  A first cryptographic module and a second cryptographic module that perform normal operations to encrypt and decrypt data transmitted and received between the host device and the memory device;
前記第1の暗号モジュール及び前記第2の暗号モジュールの動作を制御する制御回路と、  A control circuit for controlling operations of the first cryptographic module and the second cryptographic module;
を備え、With
前記制御回路は、前記第2の暗号モジュールが通常動作を実行し前記第1の暗号モジュールが通常動作を実行しない第1の期間において、前記第1の暗号モジュールにダミー動作を実行させ、  The control circuit causes the first cryptographic module to perform a dummy operation in a first period in which the second cryptographic module performs a normal operation and the first cryptographic module does not perform a normal operation;
前記第1の暗号モジュールは、入力データに基づいて一時データを生成する一時データ生成回路を有し、  The first cryptographic module has a temporary data generation circuit that generates temporary data based on input data;
前記第2の暗号モジュールは、前記一時データ生成回路によって生成された一時データに基づいて暗号処理を実行する暗号処理回路を有し、  The second cryptographic module has a cryptographic processing circuit that performs cryptographic processing based on the temporary data generated by the temporary data generating circuit,
前記制御回路は、第1の期間において、ダミーの入力データを前記一時データ生成回路に入力し、  The control circuit inputs dummy input data to the temporary data generation circuit in the first period,
前記制御回路は、  The control circuit includes:
前記一時データ生成回路の状態遷移情報を保持する保持回路を有し、  A holding circuit for holding state transition information of the temporary data generation circuit;
前記第1の暗号モジュールにダミー動作を実行させる場合には、最新の状態遷移情報を前記保持回路に退避し、  When causing the first cryptographic module to perform a dummy operation, the latest state transition information is saved in the holding circuit,
次に前記一時データ生成回路に通常動作を実行させる場合には、前記保持回路が保持している状態遷移情報を前記一時データ生成回路に書き戻す、ホスト装置。  Next, when causing the temporary data generation circuit to perform a normal operation, the host device writes back the state transition information held by the holding circuit to the temporary data generation circuit.
前記制御回路は、第1の期間とは異なる第2の期間において、前記第1の暗号モジュール及び前記第2の暗号モジュールの双方を同時に通常動作させる、請求項7に記載のホスト装置。  The host device according to claim 7, wherein the control circuit normally operates both the first cryptographic module and the second cryptographic module simultaneously in a second period different from the first period. 前記ダミーの入力データは固定値である、請求項7又は8に記載のホスト装置。  The host device according to claim 7 or 8, wherein the dummy input data is a fixed value. 前記ダミーの入力データは変動値である、請求項7又は8に記載のホスト装置。  The host device according to claim 7 or 8, wherein the dummy input data is a variable value. 前記入力データは鍵情報である、請求項7〜10のいずれか一つに記載のホスト装置。  The host device according to claim 7, wherein the input data is key information. 請求項1〜6のいずれか一つに記載のメモリ装置と、  A memory device according to any one of claims 1 to 6;
請求項7〜11のいずれか一つに記載のホスト装置と、  A host device according to any one of claims 7 to 11,
を備える、メモリシステム。A memory system.
JP2015145323A 2015-07-22 2015-07-22 Memory device, host device, and memory system Active JP6473874B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2015145323A JP6473874B2 (en) 2015-07-22 2015-07-22 Memory device, host device, and memory system
US15/213,918 US10615959B2 (en) 2015-07-22 2016-07-19 Memory device, host device, and memory system
US16/799,836 US11115181B2 (en) 2015-07-22 2020-02-25 Memory device, host device, and memory system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015145323A JP6473874B2 (en) 2015-07-22 2015-07-22 Memory device, host device, and memory system

Publications (2)

Publication Number Publication Date
JP2017028505A JP2017028505A (en) 2017-02-02
JP6473874B2 true JP6473874B2 (en) 2019-02-27

Family

ID=57946158

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015145323A Active JP6473874B2 (en) 2015-07-22 2015-07-22 Memory device, host device, and memory system

Country Status (1)

Country Link
JP (1) JP6473874B2 (en)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002526797A (en) * 1998-09-30 2002-08-20 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Data processing device for preventing differential current consumption analysis and method of operating this device
JP3993063B2 (en) * 2001-10-15 2007-10-17 三菱電機株式会社 Cryptographic communication device
JP2006081059A (en) * 2004-09-13 2006-03-23 Matsushita Electric Ind Co Ltd Cipher circuit and integrated circuit
JP4249166B2 (en) * 2005-08-24 2009-04-02 Kddi株式会社 Stream cipher method and apparatus
JP6521499B2 (en) * 2013-05-10 2019-05-29 株式会社メガチップス Cryptographic processing apparatus, semiconductor memory and memory system
JP2014224879A (en) * 2013-05-16 2014-12-04 株式会社メガチップス Random number generator; encryption processing device, storage device, and information processing system
JP6348273B2 (en) * 2013-11-13 2018-06-27 株式会社メガチップス Information processing system

Also Published As

Publication number Publication date
JP2017028505A (en) 2017-02-02

Similar Documents

Publication Publication Date Title
Moradi et al. Improved side-channel analysis attacks on Xilinx bitstream encryption of 5, 6, and 7 series
US11115181B2 (en) Memory device, host device, and memory system
US10102390B2 (en) Memory authentication with redundant encryption
US9875378B2 (en) Physically unclonable function assisted memory encryption device techniques
US9128876B2 (en) Memory location specific data encryption key
US8804949B2 (en) Method for protecting IC cards against power analysis attacks
US9515820B2 (en) Protection against side channels
US9760737B2 (en) Techniques for integrated circuit data path confidentiality and extensions thereof
JP2017504838A (en) Countermeasures against side-channel attacks against cryptographic algorithms
WO2016042287A1 (en) Puf and address dependent data encryption
KR102397579B1 (en) Method and apparatus for white-box cryptography for protecting against side channel analysis
JP6533553B2 (en) Encryption / decryption device and power analysis protection method therefor
CN113711194A (en) Efficient side-channel attack resistant memory encryptor based on key update
Unterluggauer et al. Exploiting the physical disparity: Side-channel attacks on memory encryption
Chuengsatiansup et al. Side-channeling the Kalyna key expansion
JPWO2008013083A1 (en) Pseudorandom number generator, stream cipher processor, and program
US9311493B2 (en) System for processing an encrypted instruction stream in hardware
CN113518988A (en) Side channel attack resistant memory access on embedded central processing unit
US8266446B2 (en) Software protection against fault attacks
JP6473874B2 (en) Memory device, host device, and memory system
JP6516610B2 (en) Memory device, host device, and memory system
JP2003337750A (en) Semiconductor device with internal analysis prevention function
Schmidt et al. A probing attack on AES
JP2016025532A (en) Communication system, communication apparatus and communication method
JP2007251390A (en) Semiconductor integrated circuit

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170622

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180717

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180824

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181018

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: 20181120

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181220

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190116

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20190116

R150 Certificate of patent or registration of utility model

Ref document number: 6473874

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