Source: https://patents.google.com/patent/JP5275482B2/en
Timestamp: 2019-04-20 21:39:35+00:00

Document:
According to one embodiment, encrypted secret identification information (E-SecretID) and the key management information (FKB) are read from a memory device. Encrypted management key (E-FKey) is obtained using the key management information (FKB) and index information (k). The index information (k) and the encrypted management key (E-FKey) are transmitted to the semiconductor memory device. An index key (INK) is generated using the first key information (NKey) and the received index information (k). The encrypted management key (E-FKey) is decrypted using the index key (INK) to obtain management key (FKey), which is transmitted to the host device.
ホスト装置、半導体記憶装置、およびその認証方法に関するものである。 The host device, a semiconductor memory device, and to a an authentication method.
一般に、情報セキュリティを要する分野において、自己の正当性を証明する手段として互いに共有した秘密情報と暗号器を用いた手法が採られている。 In general, in fields requiring information security, method using secret information and encryptor covalently to each other as a means to demonstrate the validity of the self it is adopted.
例えば、電子決済に用いるICカード（SmartCard）等では、カード内のICには当該ICカードを個別化するためのID及び秘密情報が保持されており、更にICカードは、ID及び秘密情報に基づく認証を行うための暗号処理機能を有している。 For example, in the IC card (SmartCard) or the like used in the electronic settlement, the IC in the card is held ID and secret information for individualizing the IC card further IC card, based on the ID and secret information and a cryptographic processing function for performing authentication.
別の例では、コンテンツの著作権保護において、SD（登録商標）カードの正当性を証明する手段としてはContent Protection for Recordable Media（CPRM）において認証方式が規定されている。 In another example, the copyright protection of the contents, authentication method is defined in SD (TM) Content Protection for Recordable Media as a means to demonstrate the validity of the card (CPRM).
秘密情報の不正利用の防止に有利なストレージメディア 、ホスト装置、メモリ装置、及びシステムを提供する。 Preferred storage media to prevent unauthorized use of the secret information, the host device, a memory device, and provides a system.
実施形態のストレージメディアによれば、コントローラと、 該コントローラによりコントロールされるメモリ装置とを含むストレージメディアであって、前記メモリ装置は、第１鍵情報及び前記メモリ装置に固有に割り当てられた第１識別情報が格納されるとともに前記メモリ装置外からのリードが制限される第１領域と、 前記第１識別情報が暗号化されて生成された暗号化第１識別情報が格納されるとともにリーダブルな第２領域と、 鍵管理情報が格納されるとともにリーダブル及びライタブルとされる第３領域と、を有し、前記コントローラは、 外部装置からの前記鍵管理情報のリードコマンドを受けた場合、前記第３領域から前記鍵管理情報をリードするとともに該鍵管理情報を前記外部装置に送り、前記外部装置からの前記暗号化第 According to the storage medium of embodiments, the controller and provides a storage medium including a memory device that is controlled by the controller, prior Symbol memory device, a uniquely assigned to the first key information and the memory device 1 a first region read from outside the memory device together with the identification information is stored is limited, a first identification information is stored first identification information encrypted generated encrypted Rutotomoni Readable and a second region, a third region which is Readable and writeable with key management information is stored, wherein the controller, when receiving the read command of the key management information from the external device, wherein the 3 regions with leading the key management information sends the key management information to the external device, first the encrypted from the external device 識別情報のリードコマンドを受けた場合、前記第２領域から前記暗号化第１識別情報をリードするとともに該暗号化第１識別情報を前記外部装置に送り、前記外部装置からの認証情報を得るためのコマンドを受けた場合、前記外部装置から受けた該外部装置に割り当てられた第２識別情報を前記メモリ装置に送り、前記メモリ装置は、 前記第１鍵情報と、前記第２識別情報とを用いて暗号化処理を行うことにより、第２鍵情報を生成し、前記第２鍵情報と前記外部装置から受けた乱数情報とを用いて暗号化処理を行うことにより、第３鍵情報を生成し、前記第３鍵情報と前記第１識別情報とを用いて一方向性変換処理を行うことにより、前記認証情報を生成し、該認証情報と秘匿鍵情報を得るためのデータとを前記外部装置に送り、前記外 Upon receiving a read command identification information, the encryption of the first identification information with leading the encrypted first identification information from the second area is sent to the external device, obtain the authentication information from the external device when receiving a command for, sending the second identification information assigned to the external device received from said external device to said memory device, said memory device includes a first key information, and the second identification information by performing the encryption process was used to generate the second key information, by performing the encryption process by using the random number information received from the said second key information external device, the third key information produced, by performing a one-way conversion process using said third key information and the first identification information, the generated authentication information, and data for obtaining the encryption key information and said authentication information Ri sent to the external device, the outer 装置に認証されるように構成される。 Configured so that the authentication device.
第１の実施形態に係るメモリシステムの構成例を示すブロック図。 Block diagram illustrating a configuration example of a memory system according to the first embodiment. データ記憶場所のその他の例を示す図。 Diagram illustrating another example of data storage locations. 図１中のFKB復号部２２の構成例を示すブロック図。 Block diagram illustrating a configuration example of FKB decoding unit 22 in FIG. 第１の実施形態に係るメモリシステムの認証フローを示すフロー図。 Flow diagram illustrating authentication flow of the memory system according to the first embodiment. 第１の実施形態に係る暗号化FKey束（FKB）の構成例を示す図。 Diagram illustrating a configuration example of the encryption FKey pack (FKB) according to the first embodiment. 変形例１に係るメモリシステムの構成例を示すブロック図。 Block diagram illustrating a configuration example of a memory system according to a first modification. 変形例１に係るメモリシステムの認証フローを示すフロー図。 Flow diagram illustrating authentication flow of the memory system according to a first modification. 変形例１に係る暗号化FKey束（FKB）の構成例を示す図。 Diagram illustrating a configuration example of the encryption FKey pack according to Modification 1 (FKB). 第２の実施形態に係るメモリシステムの構成例を示すブロック図。 Block diagram illustrating a configuration example of a memory system according to the second embodiment. 第２の実施形態に係るメモリシステムの認証フローを示すフロー図。 Flow diagram illustrating authentication flow of the memory system according to the second embodiment. 第２の実施形態に係る暗号化FKey束（FKB）の構成例を示す図。 Diagram illustrating a configuration example of the encryption FKey pack (FKB) according to the second embodiment. 変形例２に係るメモリシステムの構成例を示すブロック図。 Block diagram illustrating a configuration example of a memory system according to a second modification. 変形例２に係るメモリシステムの認証フローを示すフロー図。 Flow diagram illustrating authentication flow of the memory system according to a second modification. 変形例２に係る暗号化FKey束（FKB）の構成例を示す図。 Diagram illustrating a configuration example of the encryption FKey pack according to Modification 2 (FKB). 第３の実施形態に係るメモリシステムの構成例を示すブロック図。 Block diagram illustrating a configuration example of a memory system according to the third embodiment. 第３の実施形態に係るメモリシステムの認証フローを示すフロー図。 Flow diagram illustrating authentication flow of the memory system according to the third embodiment. 変形例３に係るメモリシステムの構成例を示すブロック図。 Block diagram illustrating a configuration example of a memory system according to a third modification. 変形例３に係るメモリシステムの認証フローを示すフロー図。 Flow diagram illustrating authentication flow of the memory system according to a third modification. 第４の実施形態に係るＮＡＮＤ製造者による秘密情報の書き込み処理を例示する図。 Diagram illustrating a process of writing confidential information by the NAND manufacturer according to the fourth embodiment. 第４の実施形態に係るカード製造者によるFKBの書き込み処理を例示する図。 Diagram illustrating the write process of FKB by the card manufacturer according to the fourth embodiment. 第４の実施形態に係る販売時にFKBが未記録の場合のカードを例示する図。 Figure FKB at the time of sale of the fourth embodiment is illustrated cards when unrecorded. 第４の実施形態に係るFKBをダウンロードするシステムを示すブロック図。 Block diagram illustrating a system for downloading FKB according to the fourth embodiment. 第４の実施形態に係るFKBをダウンロードするフローを示すフロー図。 Flow diagram illustrating the flow of downloading FKB according to the fourth embodiment. 第５の実施形態に係るメモリシステムの構成例を示すブロック図。 Block diagram illustrating a configuration example of a memory system according to the fifth embodiment. 第５の実施形態に係るメモリシステムの認証フローを示すフロー図。 Flow diagram illustrating authentication flow of the memory system according to the fifth embodiment. 第５の実施形態に係るＮＡＮＤ製造者による秘密情報の書き込み処理を例示する図。 Diagram illustrating a process of writing confidential information by the NAND manufacturer according to the fifth embodiment. 第６の実施形態に係るＮＡＮＤ型フラッシュメモリの構成例を示すブロック図。 Block diagram illustrating a configuration example of a NAND type flash memory according to the sixth embodiment. 図２７中のＮＡＮＤ型フラッシュメモリの一ブロックの構成例を示す等価回路図。 Equivalent circuit diagram showing a configuration example of a first block of the NAND flash memory of FIG. 27.
以下、実施形態について図面を参照して説明する。 It will be described below with reference to the accompanying drawings embodiments. この説明においては、ホスト装置、半導体記憶装置、およびその認証方法として、メモリシステムを一例に挙げるが、これに限られることはない。 In this description, the host device, a semiconductor memory device, and as the authentication method, the memory system are listed in an example, but not limited thereto. 尚、この説明においては、全図にわたり共通の部分には共通の参照符号を付す。 In the description below, the same parts throughout the drawings are denoted by common reference numerals.
第１の実施形態に係るホスト装置、半導体記憶装置、およびその認証方法について説明する。 The host device according to the first embodiment, a semiconductor memory device, and its authentication method will be described.
まず、図１を用い、第１の実施形態に係るメモリシステムの構成例について説明する。 First, referring to FIG. 1, illustrating an example of the configuration of a memory system according to the first embodiment.
図示するように、第１の実施形態に係るメモリシステムは、被認証装置であるＮＡＮＤ型フラッシュメモリ１０、認証装置であるホスト装置２０、および両者を仲介するコントローラ１９を備える。 As shown, the memory system according to the first embodiment includes a controller 19 that mediates host device 20, and both a NAND-type flash memory 10, the authentication device is a prover. ホスト装置２０は、コントローラ１９を介して、ＮＡＮＤ型フラッシュメモリ１０にアクセスする。 The host device 20 via the controller 19, accesses the NAND flash memory 10.
ここで、ＮＡＮＤ型フラッシュメモリ１０等の半導体製品の製造工程について、簡単に説明する。 Here, a manufacturing process of a semiconductor product such as a NAND-type flash memory 10 will be briefly described. 半導体製品の製造工程は、主に基盤ウエハー上に回路を形成する前工程と、前期ウエハーを個片に切り分けた後、配線や樹脂パッケージ封入などを行う後工程に分けられる。 The manufacturing process of semiconductor products, the steps prior to the main circuits are formed on a substrate wafer, after isolated the year wafer into pieces, divided into steps after performing such wiring and resin packaged. ここで、コントローラ１９は、前工程においてＮＡＮＤ型フラッシュメモリ１０内に包含されるよう構成される場合、前工程においては包含されないが後工程において同一パッケージに包含されるように構成される場合、ＮＡＮＤ型フラッシュメモリ１０とは異なるチップの形態をとる場合、など様々な場合がある。 Here, when the controller 19 is pre-case step configured to be included in the NAND flash memory 10 in configured to be included in the same package in a later step is not included in the previous step, NAND there are various cases when, like in the form of different chips is the type flash memory 10. 図１を含め、以下では、コントローラ１９は、ＮＡＮＤ型フラッシュメモリ１０とは異なるチップの形態を採る場合を例にとっている。 Including 1, in the following, the controller 19 is taken as an example a case where the form of the different chips from the NAND-type flash memory 10. 以下、特に断りのない限り、ホスト装置２０とＮＡＮＤ型フラッシュメモリ１０間のデータや命令のやり取りにおいては、多くの場合コントローラ１９が仲介するものである。 Hereinafter, unless otherwise specified, in the exchange of data and instructions between the host device 20 and the NAND-type flash memory 10, in which in many cases the controller 19 mediates. この場合でもコントローラ１９は、前述のデータや命令の本質的内容を変えることはないため、詳細については、省略して説明する場合がある。 Controller 19 also in this case, does not alter the essential contents of the data and instructions described above, for more information, which may be described omitted. なお、ＮＡＮＤ型フラッシュメモリ１０およびコントローラ１９の構成例の詳細な説明については、後述する。 The detailed description of the configuration example of a NAND type flash memory 10 and controller 19 will be described later.
なお、ホスト装置２０は、民生機器のように専用ハードウェアで構成される場合、専用ハードウェアとそれを動作させるファームウェアの組み合わせで構成される場合だけでなく、装置の機能がPC上で動作するソフトウェアプログラムで構成される場合も考えられる。 The host device 20, when composed of dedicated hardware as consumer, not only composed of a combination of firmware for operating it with dedicated hardware, the functionality of the device operates on a PC If consists of a software program may be considered.
以下において、図１に示す各コンポーネント、データ処理について、説明する。 In the following, each component shown in FIG. 1, the data processing will be described. 本例では、被認証装置であるＮＡＮＤ型フラッシュメモリ１０に記録されている秘密識別情報であるSecretIDを第３者から秘匿した状態で読み出すと共に、前述の被認証装置１０から読み出されたデータであることを確実に確認する方法、及び同方法をＮＡＮＤ型フラッシュメモリ１０に適用する場合の構成例を示すものである。 In this example, reads in a state of concealing the SecretID a secret identification information recorded in the NAND flash memory 10 is a prover a third party, the data read from the authenticated device 10 described above how to reliably confirm that there, and shows a configuration example of a case of applying the same method to the NAND flash memory 10.
ＮＡＮＤ型フラッシュメモリ１０は、上記のように本例では、被認証装置である。 NAND-type flash memory 10, in this embodiment as described above, a prover.
図示するように、本例に係るＮＡＮＤ型フラッシュメモリ１０は、セルアレイ１１、及びセルアレイ１１の周辺領域に配置されるデータキャッシュ１２Ａ、１２Ｂ、１２Ｃ、および認証回路１７を備える。 As illustrated, NAND-type flash memory 10 according to the present embodiment includes a cell array 11, and data cache 12A disposed in the peripheral region of the cell array 11, 12B, 12C, and an authentication circuit 17.
セルアレイ（Cell array）１１は、外部からの読み出し／書き込みが可能な領域（Read/Write area）１１−１、外部からの読み出し／書き込みが禁止された秘匿領域（Hidden area）１１−２、外部からの書き込みが禁止されたROM領域（ROM area）１１−３等を備える。 Cell array (Cell array) 11, a region capable of reading / writing from the outside (Read / Write area) 11-1, concealed area in which the read / write is prohibited from the outside (Hidden area) 11-2, an external area writing is prohibited ROM (ROM area) includes a 11-3 like.
読み書き可能領域（Read/Write area）１１−１は、データ記録及びデータ読み出しのいずれもＮＡＮＤ型フラッシュメモリ１０の外部から可能な領域である。 Read-write area (Read / Write area) 11-1, both the data recording and data reading is an area as possible from the outside of the NAND flash memory 10. 読み書き可能領域１１−１には、FKey vを秘匿するために用意された多重暗号化FKey束である鍵管理情報FKBv（Family Key Block）および秘密情報NKey iを示すためのインデックス情報i（index of NKey）が記録される。 The read-write area 11-1, the index information i (index of for indicating the key management information FKBv (Family Key Block) and secret information NKey i is a multiple encryption FKey bundle that is provided for concealing the FKey v NKey) is recorded. 鍵管理情報FKBvは、ＮＡＮＤ型フラッシュメモリ１０に記録される他のデータとは異なり、ＮＡＮＤ型フラッシュメモリ１０の製造時だけでなく、例えばＳＤ Ｃａｒd（登録商標）の様にＮＡＮＤ型フラッシュメモリ１０にコントローラを結合させて一般ユーザ向けのストレージメディアを製造する段階や、或いは前記ストレージメディアを販売後にユーザの要求に従ってサーバからダウンロードして記録するように構成することも可能である。 Key management information FKBv, unlike other data recorded in the NAND flash memory 10, not only during manufacture of the NAND type flash memory 10, for example, NAND-type flash memory 10 as the SD Card (registered trademark) step and to produce a storage medium for general users by combining the controller, or may be configured to record to download from a server according to user requests after selling the storage media. 詳細については、後述する。 For more information, which will be described later.
ここで、鍵管理情報（FKBv）とは、ホスト２０が保持する秘密情報である識別鍵情報（IDKey k 、これについては後述する）と、当該識別鍵情報（IDKey k ）の識別情報（k）又は当該ホスト２０の識別情報とを用いて、第１段目の復号処理を行った上で、更に当該ＮＡＮＤフラッシュメモリに秘匿されている秘密鍵情報NKeyを用いて第２段目の復号処理を行うことによって秘匿情報（FKey v ）を復号できるようにするために用意された暗号化データである。 Here, the key management information (FKBv), identification key information (IDKey k, which will be described later) is the private information by the host 20 holds the, the identification key data identification information (IDKey k) (k) or by using the identification information of the host 20, after performing the decoding process of the first stage, the second stage of the decoding processing by using the secret key information NKey being further concealment to the NAND flash memory it is encrypted data that is provided in order to enable decoding confidential information (FKey v) by performing. なお、FKBの復号処理に識別情報（k）を用いる場合には、当該識別情報（k）の構成方法に依存して、当該識別情報（k）全体を用いるだけでなく、その一部を用いる場合も考えられる。 In the case of using the identification information (k) to the decoding process of FKB, depending on the configuration method of the identification information (k), not only using the entire identification information (k), using a part of If it is also conceivable. 例えば、製造工程に合わせてＮＡＮＤ型フラッシュメモリ１０毎にユニークに用意するだけでなく、ＮＡＮＤ型フラッシュメモリ１０の製造ロット（lot）単位など、複数のＮＡＮＤ型フラッシュメモリ１０に共通に用意すること等も可能な鍵管理情報である。 For example, not only prepared uniquely to the NAND flash memory 10 each in accordance with the manufacturing process, such as production lot (lot) unit of the NAND flash memory 10, or the like to prepare in common to a plurality of NAND-type flash memory 10 it is also possible key management information. また、鍵管理情報（FKBv）のインデックス情報vは、FKBvの識別情報又はバージョン番号情報であっても良い。 In addition, the index information v of the key management information (FKBv) may be identification information or version number information of FKBv.
秘匿領域（Hidden area）１１−２は、ＮＡＮＤ型フラッシュメモリ１０の外部に対してはデータ記録だけでなく、データ読み出しも禁止される領域（Read/Program inhibit）である。 Hidden area (Hidden area) 11-2, to the outside of the NAND flash memory 10 as well as the data recording, an area in which data reading is also prohibited (Read / Program inhibit). 本例に係る秘匿領域１１−２には、上記認証においてＮＡＮＤ型フラッシュメモリ１０が用いる秘密鍵情報NKey iおよびＮＡＮＤ型フラッシュメモリ１０の秘密識別情報SecretIDが記録される。 Hidden area 11-2 of this example, the secret identification information SecretID private key information NKey i and NAND-type flash memory 10 NAND-type flash memory 10 is used in the authentication is recorded.
ROM領域（ROM area）１１−３は、外部からのデータ記録が禁止され、データ読み出しが許可される領域である。 ROM area (ROM area) 11-3 is prohibited data recorded from the outside, a region where data reading is allowed. 本例に係るROM領域１１−３には、インデックスvで指定されたFKey vによって暗号化された秘密識別情報SecretID（E-SecretID）および読み書き可能領域１１−１に記録される鍵管理情報であるFKBvによって秘匿されているFKey vを示すためのインデックス情報v（index of FKey）が記録される。 In the ROM area 11-3 according to this embodiment is the key management information recorded in the secret identification information SecretID (E-SecretID) and read-write areas 11-1 encrypted by FKey v indicated by the index v index information v for indicating FKey v being concealed (index of FKey) is recorded by FKBv. 本例では、インデックスiやインデックスvを記録する際にデータに誤りが生じてしまった場合でも、正しい識別情報が読み出せるようにするために、一般的には誤り訂正符号化された状態で記録される。 In this example, even if an error in the data had occurred when recording the index i and the index v, in order to be read is correct identifying information, recorded in a state in which the generally error-correction-coded It is. しかし、ここでは、これを省略し、誤り訂正符号化／復号処理については特に図示しない。 Here, however, this is omitted, not specifically illustrated for the error correction coding / decoding process.
暗号化された秘密識別情報（E-SecretID）とは、ＮＡＮＤ型フラッシュメモリチップ１０ごとに固有に（ユニークに）付される秘密識別情報（SecretID）を暗号化したデータである。 The secret identification information encrypted (E-SecretID), (uniquely) unique to each NAND type flash memory chip 10 is data obtained by encrypting the secret identification information (SecretID) to be subjected. 或いは、ＮＡＮＤ型フラッシュメモリに予めコンテンツを記録して販売する様なプリレコ（事前記録）コンテンツ配布用途に使う場合には、同じコンテンツデータを記録する際には敢えて同じ秘密識別情報（SecretID）を暗号化した暗号化秘密識別情報（E-SecretID）を記録するなど、用途に合わせて同じ暗号化秘密識別情報を複数のＮＡＮＤ型フラッシュメモリに記録することも可能である。 Alternatively, NAND-type flash memory to like to sell to pre-recorded content Purireko (pre-recorded) If you use the content distribution applications, encryption dare the same secret identification information (SecretID) is the time of recording the same content data such as phased recorded encrypted secret identification information (E-SecretID), it is also possible to suit to record the same encrypted secret identification information to a plurality of NAND-type flash memory.
なお、読み書き可能領域１１−１とROM領域１１−３に記録されている情報は、実施例説明の為に便宜的に記録領域を指定しているが、実際にはＮＡＮＤ製造やホスト装置からの読み出し時の利便性、外部からの書き換え防止の必要性などを考慮して、必要に応じてどちらの領域に書き込むかを決定することが可能である。 The information recorded in the read-write area 11-1 and ROM area 11-3 is specifies a conveniently recorded area for example described, actually from NAND manufacture and host device convenience in reading, in consideration of necessity of rewriting prevention from outside, it is possible to determine whether writing in either space as needed. 詳細については、後述する。 For more information, which will be described later.
データキャッシュ（Data Cache）１２Ａ、１２Ｂ、１２Ｃは、セルアレイ１１から読み出したデータを一時的に記憶する。 Data cache (Data Cache) 12A, 12B, 12C temporarily stores data read from the cell array 11.
認証回路１７は、データ生成部（Generate）１３、１４、１６、暗号化部（Encrypt）１０１、復号部（Decrypt）１００、１０３、一方向性変換部（Oneway）１５を備える。 Authentication circuit 17 includes a data generation unit (Generate) 13, 14, 16, the encryption unit (Encrypt) 101, decoding unit (Decrypt) 100, 103, one-way conversion unit (Oneway) 15.
データ生成部（Generate）１３、１４、１６は、複数の入力データから予め定められた演算によって出力データを生成する回路である。 Data generator (Generate) 13, 14, 16 is a circuit for generating an output data according to a predetermined operation from a plurality of input data.
データ生成部１３は、ホスト装置２０から受信した元情報（HC j ）を前述の秘密情報NKey iを用いて変換することでHKey i、jを生成する。 Data generating unit 13, HKey by converting original information received from the host device 20 (HC j) by using the secret information NKey i mentioned above i, to generate a j.
データ生成部１４は、ホスト装置２０から受信した乱数RN hを前記HKey i、jを用いて変換することで、セッション鍵SKey i、jを生成する。 Data generating unit 14, the random number RN h received from the host device 20 HKey i, by converting with j, generates a session key SKey i, j.
データ生成部（Generate 2）１６は、ホスト装置２０がFKBから選択した多重（2重）暗号化管理鍵（EE-FKey）のレコードを示すインデックス情報kを、秘密情報NKey iを用いて変換することでインデックス鍵（INK k ）を生成する。 Data generator (Generate 2) 16 is the index information k indicating the record of multiple host device 20 has selected from FKB (2 double) encrypted management key (EE-FKey), transformed using the secret information NKey i It generates an index key (INK k) by.
上記３つのデータ生成部１３、１４、１６は、例えば、全体の回路規模を小さくするために一方向性変換部１５と同じ或いは一方向性変換部１５を流用した回路やAES（Advanced Encryption Standard）暗号化器などを用いることも可能である。 The three data generation unit 13, 14, 16, for example, by diverting the same or one-way converter 15 and the one-way converter 15 in order to reduce the overall circuit scale circuits and AES (Advanced Encryption Standard) it is also possible to use a encryptor. 同様にデータ処理手順を分かり易くするために異なる構成要素として図示されている2つのデータ生成部１３、１４は、同じ回路を繰り返し利用することが可能である。 Two data generation unit 13, 14 are illustrated as different components in order to simplify the data processing procedure in the same manner, it is possible to repeatedly use the same circuit. 同様の理由で，データ生成部１６も他の2つのデータ生成部１３、１４と同じ回路を繰り返し利用することも可能である。 For the same reason, it is possible to data generation unit 16 also repeat the same circuit as the other two data generator 13 and 14 utilized.
復号部（Decrypt）は、暗号化された入力データを別途入力された鍵データによって復号する回路である。 Decoding unit (Decrypt) is a circuit for decoding the encrypted key data which is separately inputted input data. 本実施例では、復号部（Decrypt）１００は、セッション鍵SKey i, jによって暗号化された上でホスト装置２０から送られてきた暗号化データEnc (SKey i, j , E-FKey v,k )を、生成した上記セッション鍵SKey i, jを用いて復号する。 In this embodiment, the decoding unit (Decrypt) 100, the session key SKey i, the encrypted data Enc sent from the host device 20 after having been encrypted by j (SKey i, j, E -FKey v, k ) and generated the session key SKey i, decoded using the j.
復号部１０３は、セッション鍵SKey i, jを用いて復号することによって得られた暗号化された管理鍵情報（E-FKey v,k )を、生成部１６により生成されるインデックス鍵（INK k ）を用いて、更に復号する。 Decoding unit 103, a session key SKey i, management key information encrypted obtained by decoding using j (E-FKey v, k ) the index key (INK k generated by the generator 16 ) is used to further decoding.
暗号化部（Encrypt）は、入力データを別途入力された鍵データによって暗号化する回路である。 Encrypting unit (Encrypt) is a circuit for encrypting the key data of the input data is input separately. 本実施例では、暗号化部（Encrypt）１０１は、ホスト装置２０に管理鍵情報（FKey v,k )を送付する際に、セッション鍵SKey i, jを用いて暗号化する。 In this embodiment, the encryption unit (Encrypt) 101 is the management key information to the host device 20 (FKey v, k) at the time of sending a is encrypted using the session key SKey i, j.
一方向性変換部（Oneway）１５は、入力されたデータと別途入力された鍵データとに一方向性の変換を施し、一方向性変換された入力データを出力する回路である。 One-way conversion unit (Oneway) 15 performs a one-way conversion on the input data separately input key data, a circuit for outputting the input data converted unidirectional. 本実施例では、一方向性変換部（Oneway）１５は、秘匿領域１１−２から読み出した秘密識別情報（SecretID）をデータ生成部１４によって生成されたセッション鍵データSKey i、jを用いて一方向性関数により変換し、一方向性変換識別情報Oneway-ID (= Oneway(SKey i、j 、 SecretID))を生成する。 In this embodiment, one-way conversion unit (Oneway) 15 is the secret identification information read from the hidden area 11-2 (SecretID) generated by the data generating unit 14 session key data SKey i, with j one converted by the directional function, one-way conversion identification information Oneway-ID (= Oneway (SKey i, j, SecretID)) to generate a. また、前述の通り、メモリシステム全体のハードウェア回路規模を小さくするために、一方向性変換部１５を前記データ生成部１４等としても使用することも可能である。 Further, as described above, in order to reduce the overall memory system hardware circuit scale, it is also possible to also use a one-way converter 15 as the data generator 14 and the like.
また、図示しないが、コントローラ１９を介してホスト装置２０に送付されるデータを出力する出力部なども必要に応じて、構成要素として配置されても良い。 Although not shown, as necessary, such as an output unit for outputting data to be sent through the controller 19 to the host device 20 may be disposed as a component.
図示するように、本例に係るホスト装置（Host）２０は、復号部（Decrypt）２１、２００１、FKB復号部（Process FKB）２２、メモリ（Memory）２３、乱数生成部（RNG）２４、選択部（Select 2）２５、データ生成部（Generate）２６、暗号化部（Encrypt）２００、一方向性変換部（Oneway）２７、及びデータ検証部（Verify）２８等を備える。 As illustrated, the host device (Host) 20 according to this embodiment, the decoding unit (Decrypt) 21,2001, FKB decoder (Process FKB) 22, memory (Memory) 23, a random number generator (RNG) 24, Selection part (Select 2) 25 includes a data generation unit (generate) 26, the encryption unit (encrypt) 200, one-way conversion unit (Oneway) 27, and a data verifying unit (the verify) 28 or the like. この他、例えば、図示しない誤り訂正処理部なども必要に応じて構成要素として備えることが可能である。 In addition, for example, it is possible to provide a component as necessary error correction processing section (not shown).
復号部（Decrypt）２１は、ＮＡＮＤ型フラッシュメモリ１０から入力されたデータ(E-SecretID)を、復号部２０１から出力される管理鍵FKey vで復号し、復号された秘密識別情報SecretIDを出力する。 Decoding unit (Decrypt) 21 is a data input from the NAND-type flash memory 10 (E-SecretID), decoded by the management key FKey v outputted from the decoding unit 201, and outputs the secret identification information SecretID decoded .
復号部（Decrypt）２０１は、データ生成部２６から生成されるセッション鍵SKey i, jを用いて、ＮＡＮＤ型フラッシュメモリ１０から受信した暗号化管理鍵（E-FKey v ）を復号して、管理鍵FKey vを得る。 Decoding unit (Decrypt) 201, the session key SKey i which is generated from the data generating unit 26, using j, by decrypting the encrypted management key received from the NAND flash memory 10 (E-FKey v), Management get the key FKey v.
FKB復号部（Process FKB）２２は、ＮＡＮＤ型フラッシュメモリ１０から送信される鍵管理情報（FKBv）、およびメモリ２３に秘匿されている識別鍵情報IDKey k 、識別鍵情報IDKey kのインデックス情報kを用い、多重（2重）暗号化された管理鍵EE-FKey v, kに第１段目の復号処理を施す。 FKB decoder (Process FKB) 22, the key management information transmitted from the NAND flash memory 10 (FKBv), and the identification key information IDKey k that is concealed in the memory 23, the index information k identification key information IDKey k used, multiple (double) encrypted management key EE-FKey v, the first stage of the decoding process k performed.
メモリ２３は、インデックス情報k、識別鍵情報IDKey k 、秘密鍵情報セットHKey i、j (i=1、…、m。尚、jは当該HKey i、jにおいては固定の値である)、およびホスト定数HC jを記憶する。 Memory 23, the index information k, the identification key information IDKey k, the secret key information set HKey i, j (i = 1 , ..., m. Note, j is a fixed value in the HKey i, j), and storing host constants HC j. ここで、少なくとも識別鍵情報IDKey kおよび秘密鍵情報セットHKey i、j (i=1、…、m)は、ホスト装置２０の外部から秘匿される。 Here, at least the identification key information IDKey k and private key information set HKey i, j (i = 1 , ..., m) is concealed from the external host device 20. ホスト定数（または元情報）HC jとは、認証要求（Request authentication）時にＮＡＮＤ型フラッシュメモリ１０に送付するために予め保持しているホスト装置２０の定数をいう。 The host constant (or source information) HC j, refers to constant of the host device 20 held in advance in order to send the authentication request (Request authentication) at the NAND flash memory 10. 詳細については、後述する。 For more information, which will be described later.
乱数生成部（RNG: Random Number Generator）２４は、認証に用いる乱数RN hを生成する。 Random number generator (RNG: Random Number Generator) 24 generates a random number RN h used for authentication.
データ選択部（Select2）２５は、ＮＡＮＤ型フラッシュメモリ１０のデータキャッシュ１２Ｃから読み出した秘密情報NKey iのインデックス情報iを用いて、当該ホスト装置２０が秘匿している秘密情報セットHKey i、j (i=1、…、m。尚、jは当該HKey i、jにおいては固定の値である)から、ＮＡＮＤ型フラッシュメモリ１０との認証処理に必要な秘密情報HKey i、jを選択する。 Data selection unit (Select2) 25 uses the index information i of the secret information NKey i read from the data cache 12C of the NAND flash memory 10, the secret information set corresponding host device 20 is concealed HKey i, j ( i = 1, ..., m. Note, j is selected from the HKey i, which is a fixed value in j), the secret information necessary for authentication processing with the NAND-type flash memory 10 HKey i, a j.
データ生成部（Generate）２６は、複数の入力データから予め定められた演算によって出力データを生成する演算部である。 Data generator (Generate) 26 is an arithmetic unit for generating output data according to a predetermined operation from a plurality of input data. 本例では、データ生成部２６は、当該ホスト装置２０自身が生成した乱数RN hを当該ホスト装置２０が秘匿している秘密情報HKey i、jを用いて変換することで、セッション鍵SKey i、jを生成する。 In this example, the data generator 26, a random number RN h of the host device 20 itself has generated by conversion using the secret information HKey i, j in which the host device 20 is concealed, the session key SKey i, to generate a j. 例えば、データ生成部２６は、上記AES暗号化演算などを用いることも可能である。 For example, the data generator 26, it is also possible to use a like the AES encryption operation.
暗号化部（Encrypt）２００は、上記生成されたセッション鍵SKey i, jを用いて、FKB復号部２２で第１段目の復号処理が施された暗号化管理鍵（E-FKey v, k ）を暗号化し、2重暗号化データEnc (SKey i, j , E-FKey v,k )として、ＮＡＮＤ型フラッシュメモリ１０に送信する。 Encrypting unit (Encrypt) 200 is the generated session key SKey i, with j, encrypted management key first stage decoding process is performed by the FKB decoding section 22 (E-FKey v, k ) encrypts, double encrypted data Enc (SKey i, j, E -FKey v, as k), and transmits to the NAND-type flash memory 10.
一方向変換部（Oneway）２７は、復号部２１から出力されるSecretIDを、データ生成部２６から出力されるセッション鍵SKey i、jを用いて一方向性関数により変換し、一方向性変換識別情報Oneway-IDを生成する。 One-way conversion unit (Oneway) 27 is a SecretID output from the decoding unit 21 converts the one-way function using the session key SKey i, j output from the data generating unit 26, one-way conversion identification to generate the information Oneway-ID.
ここで、上記識別鍵情報IDKey k 、HKey i、jは、例えば、民生機器であれば内部の専用メモリにメーカ独自の方法で暗号化した上で記録されていたり、ソフトウェアプログラムであればタンパーレジスタントソフトウェア（TRS）技術によって不正な解析から保護できる状態で保持していたり、或いはセキュリティモジュールを内蔵している場合には当該セキュリティモジュールの機能を利用して秘匿するなどの対策を採った状態等で秘匿される。 Here, the identification key information IDKey k, HKey i, j, for example, or have been recorded if consumer within the dedicated memory on encrypted with a proprietary method, tamper resistant if a software program or are held in a state that can be protected against unauthorized analysis by cement software (TRS) technology, or state if a built-in security module took measures such as confidential by utilizing the function of the security module etc. in is confidential.
データ検証部（Verify）２８は、ＮＡＮＤ型フラッシュメモリ１０から受信した一方向性変換識別情報Oneway-IDと、ホスト装置２０内の一方向性変換部２７から得られた一方向性変換識別情報Oneway-IDとが一致するか否かを比較して判定する。 Data verification unit (the Verify) 28 includes a one-way conversion identification information Oneway-ID received from the NAND-type flash memory 10, one-way conversion identification information obtained from the one-way converter 27 in the host device 20 Oneway determining by comparing whether the -ID match. 上記一方向性変換識別情報Oneway-IDの両方の値が一致した場合（OK）には、復号部２１で得られた前記SecretIDが正しいSecretIDであると判定して、得られたSecretIDを以降の処理に引き渡す。 If the value of both the one-way conversion identification information Oneway-ID matches the (OK), it is determined that the SecretID obtained by the decoding unit 21 is the correct SecretID, since the resulting SecretID It passed to the processing. 一方、不一致の場合（NG）には、前記SecretIDが不正なIDであると判定し、その旨を以降の処理に出力する。 On the other hand, if a mismatch (NG), the SecretID is determined to be invalid ID, and outputs the fact to the subsequent processing.
なお、コントローラ（Controller）１９は、ＮＡＮＤ型フラッシュメモリ１０を制御して、ホスト装置２０との間のデータ転送等を行う。 The controller (Controller) 19 controls the NAND type flash memory 10, performs data transfer, etc. between the host device 20. 詳細については、後述する。 For more information, which will be described later.
また、メモリシステムの構成例は、上記説明したものに限られない。 The configuration example of the memory system is not limited to the above described. 例えば、図示しない誤り訂正処理部等のその他の構成要素も必要に応じて備えることが可能である。 For example, it is possible to other components, such as error correction processing section (not shown) is also provided as required.
暗号化された秘密識別情報（E-SecretID）が記憶されるセルアレイ１１の場所は、上記の場合に限られず、例えば、図２のように示される。 Location of the cell array 11 in which the secret identification information encrypted (E-SecretID) is stored is not limited to the above case, for example, it is as shown in FIG.
例１に示すように、暗号化された秘密鍵情報（E-SecretID）を、ROM領域１１−３でなく、読み書き可能領域１１−１に記憶させることも可能である。 As shown in Example 1, the secret key information encrypted (E-SecretID), rather than ROM area 11-3, it is also possible to store in the read-write area 11-1.
例２に示すように、暗号化された秘密識別情報（E-SecretID）を読み書き可能領域１１−１に、秘密情報NKey iを示すためのインデックス情報ｉ（index of NKey）をROM領域に記憶させることも可能である。 As shown in Example 2, the read-write area 11-1 secret identification information encrypted (E-SecretID), and stores the index information for indicating the secret information NKey i i the (index of NKey) in the ROM area it is also possible.
このように、秘匿領域１１−２に記憶させる情報は、秘匿性が高い情報であるため他の領域に書き込むことは望ましくない。 Thus, information stored in the hidden area 11-2, it is undesirable to write to another area for confidentiality is high information. しかしながら、その他の情報は、例えば、製造時のデータ書き込み工程や、データの利用時の利便性等を考慮して、必要に応じて、読み書き可能領域１１−１やROM領域１１−３のいずれかに書き込むことが可能である。 However, other information, for example, and data write stage of its preparation, in consideration of convenience and the like at the time of use of the data, if necessary, any of the read-write area 11-1 and ROM area 11-3 it is possible to write to.
図１で示したFKB復号部２２は、より具体的には、図３の示す構成でも良い。 FKB decoding unit 22 shown in FIG. 1, more specifically, may be configured to show the FIG. 図示するように、FKB復号部２２は、データ選択部（Select1）２１−１および復号部（Decrypt）２２−２を備える。 As illustrated, FKB decoding unit 22 includes a data selector (Select1) 21-1 and the decoding unit a (Decrypt) 22-2.
第１段目のデータ選択部（Select1）２１−１は、ＮＡＮＤ型フラッシュメモリ１０から読み出した多重暗号化管理鍵（FKey v ）束（FKBv）からメモリ２３に記憶されるインデックス情報kを用いてメモリ２３に秘匿されている識別鍵情報によって復号可能なデータを選択して、復号部２２−２に出力する。 Data selecting unit of the first stage (Select1) 21-1, using the index information k stored from multiple encrypted management key read from the NAND type flash memory 10 (FKey v) bundle (FKBv) in the memory 23 select the decodable data by the identification key information being concealed in the memory 23, and outputs to the decoding unit 22-2.
復号部（Decrypt）２２−２は、メモリ２３によりホスト２０が秘匿している識別鍵情報IDKey kを用いて、データ選択部２２−１において選択された多重（本例では、２重）管理鍵EE-FKey vを復号して暗号化管理鍵E-FKey v, kを得る。 Decoder (Decrypt) 22-2, using the identification key information IDKey k by the host 20 by the memory 23 is confidential (in this example, double) multi-selected in the data selecting unit 22-1 management key EE-FKey v decrypts the encrypted management key E-FKey v, obtain k. 換言すると、復号部２２−２は、第１段目の復号処理を施すものである。 In other words, the decoding unit 22-2 is used for providing a decoding process of the first stage.
次に、図４に沿って、第１の実施形態に係るメモリシステムの認証フローについて説明する。 Then, along with FIG. 4, it will be described authentication flow of the memory system according to the first embodiment. 図示するように、本例の認証フローは、大別すると４つのステップ群ＳＴ１〜ＳＴ４により構成される。 As illustrated, authentication flow of the present embodiment is composed of four groups of steps ST1~ST4 roughly classified into.
認証を開始すると、ホスト装置２０は、ＮＡＮＤ型フラッシュメモリ１０から鍵管理情報である多重（本例では、２重）暗号化管理鍵（FKey）束（FKB: Family Key Block）および暗号化SecretID（E-SecretID）を読み出す。 When starting the authentication, the host device 20 (in this example, double) multi a key management information from the NAND flash memory 10 encrypts the management key (FKey) bundle (FKB: Family Key Block) and encryption SecretID ( E-SecretID) read out.
続いて、ホスト装置２０は、読み出したFKBからデータ選択部（Select1）２１−１によりデータ選択処理を行い、ホスト装置２０が復号可能な多重暗号化管理鍵EE-FKey vを読み出すと共に、秘匿している識別鍵情報IDKey kおよびインデックス情報kを用いて上記復号処理部２１−２により復号することにより暗号化管理鍵E-FKey vを得る。 Subsequently, the host apparatus 20 reads FKB perform data selection processing by the data selection unit (Select1) 21-1 from, the host apparatus 20 reads the decodable multiple encrypted management key EE-FKey v, confidentiality and obtaining an encrypted management key E-FKey v by decoding by the decoding unit 21-2 using it are identification key information IDKey k and index information k.
続いて、ホスト装置２０は、認証要求時に必要となる乱数RN hを生成する。 Subsequently, the host device 20 generates a random number RN h needed when the authentication request. 認証処理に乱数RN hを用いることにより、以下の処理でＮＡＮＤ型フラッシュメモリ１０との間で毎回異なる共有鍵を利用することができる。 By using the random number RN h the authentication process can be utilized each time with a different shared key between the NAND flash memory 10 in the following process.
続いて、ホスト装置は、認証要求（Request authentication）と共に予め保持しているホスト定数（HC j ）および乱数RN hとをＮＡＮＤ型フラッシュメモリ１０に送出する。 Subsequently, the host device sends the authentication request and (Request authentication) advance the held host constants with (HC j) and the random number RN h in the NAND flash memory 10.
続いて、ＮＡＮＤ型フラッシュメモリ１０は、NKey i (i=1、…、m)を秘匿領域１１−２からロードし、データキャッシュ１２Ｂに保存する。 Then, NAND-type flash memory 10, NKey i (i = 1, ..., m) is loaded from the hidden area 11-2 is stored in the data cache 12B.
続いて、ＮＡＮＤ型フラッシュメモリ１０は、ホスト装置２０が秘密情報セットHKey i、j (i=1、…、m)からＮＡＮＤ型フラッシュメモリ１０との認証に必要となるHKey i、jを選択するために必要なNKeyのインデックス情報iをデータキャッシュ１２Ｃに読み出し、ホスト装置２０に送出する。 Subsequently, the NAND flash memory 10, sets the host device 20 is secret information HKey i, j (i = 1 , ..., m) HKey i required for authentication of the NAND flash memory 10 from, selecting the j It reads the index information i of NKey necessary for the data cache 12C, and sends to the host device 20.
続いて、ＮＡＮＤ型フラッシュメモリ１０は、秘匿しているNKey iと受信したホスト定数HC jとを用いて、データ生成部１３におけるデータ生成処理によりHKey i、jを生成する。 Then, NAND-type flash memory 10 by using the host constants HC j and the received NKey i being concealed, HKey i, to generate a j by the data generating process in the data generating unit 13. これと共に、受信した乱数RN hを用いて、データ生成部１４におけるデータ生成処理により、セッション鍵データSKey i、j (= Generate(HKey i、j 、 RN h ))を生成する。 At the same time, by using a random number RN h received by the data generation process in the data generating unit 14, the session key data SKey i, j (= Generate ( HKey i, j, RN h)) to generate a.
上記Step Ｓ１７の処理と並行して、ホスト装置２０は、受信したインデックス情報iを用いて、予め秘匿していた秘密情報セットHKey i、j (i=1、…、m)から当該ＮＡＮＤ型フラッシュメモリ１０との認証処理に必要な秘密情報HKey i、jを選択する。 In parallel with the processing of the Step S17, the host device 20 uses the index information i received, previously concealed to have secret information set HKey i, j (i = 1 , ..., m) from the NAND-type flash secret information required for authentication processing of the memory 10 HKey i, to select j.
続いて、ホスト装置２０は、選択した秘密情報HKey i、jと生成した乱数RN hと用いて、データ生成部２６におけるデータ生成処理により、セッション鍵データSKey i、j (= Generate(HKey i、j 、 RN h ))を生成する。 Subsequently, the host device 20, the secret information HKey i selected by using the random number RN h generated with j, the data generation processing in the data generating unit 26, the session key data SKey i, j (= Generate ( HKey i, j, to generate the RN h)).
続いて、ホスト装置２０は、Step Ｓ１２でFKBから選択した多重暗号化管理鍵のレコード番号（記録位置）を示すインデックス情報kと、セッション鍵データSKey i, jを用いて、暗号化管理鍵E-FKey v,kを暗号化したデータEnc(SKey i, j 、 E-FKey v )とを、ＮＡＮＤ型フラッシュメモリ１０に送出する。 Subsequently, the host device 20, and index information k indicating the multiplexing encryption management key record number (record position) selected from FKB in Step S12, using the session key data SKey i, j, encrypted management key E -FKey v, encrypts the k data Enc (SKey i, j, E -FKey v) and is sent to the NAND flash memory 10. なお、識別情報（k）構成方法に依っては、当該識別情報（k）全体を送出せずに、ＮＡＮＤ型フラッシュメモリにおいてインデックス鍵INK kの生成に必要ではない情報を切り取った識別情報（k）の一部を送出することもある。 Incidentally, depending on the identification information (k) configuring, without sending the entire identification information (k), identification information cut information not necessary for the generation of index key INK k in the NAND flash memory (k ) sometimes delivering part of.
続いて、ＮＡＮＤ型フラッシュメモリ１０は、セッション鍵データSKey i, jを用いて、セッション鍵データで暗号化された暗号化管理鍵Enc(SKey i, j , E-FKey v )を復号して、暗号化管理鍵E-FKey v,kを得る。 Then, NAND-type flash memory 10, the session key data SKey i, with j, encrypted encrypted by the session key data management key Enc (SKey i, j, E -FKey v) decoding the, encrypted management key E-FKey v, obtain k.
続いて、ＮＡＮＤ型フラッシュメモリ１０は、NKey iとインデックス情報kを用いてインデックス鍵INK kを生成する。 Then, NAND-type flash memory 10, to generate an index key INK k by using the NKey i and index information k.
続いて、ＮＡＮＤ型フラッシュメモリ１０は、インデックス鍵INK kを用いて、暗号化管理鍵E-FKey v,kを復号し、管理鍵FKey v,kを得る。 Then, NAND-type flash memory 10 by using the index key INK k, the encrypted management key E-FKey v, decodes the k, obtained management key FKey v, a k.
続いて、ＮＡＮＤ型フラッシュメモリ１０は、セッション鍵SKey i,jを用いて、管理鍵FKey v,kを暗号化し、暗号化したデータEnc(SKey i, j , E-FKey v, k )として、ホスト装置２０に送出する。 Then, NAND-type flash memory 10, the session key SKey i, with j, management key FKey v, encrypts the k, the encrypted data Enc (SKey i, j, E -FKey v, k) as, and it sends to the host device 20.
続いて、ホスト装置２０は、セッション鍵SKey i,jを用いて、上記暗号化管理鍵を復号し、管理鍵FKey v,kを得る。 Subsequently, the host device 20, the session key SKey i, with j, decrypts the encrypted management key to obtain management key FKey v, a k.
続いて、ホスト装置２０は、得られた管理鍵FKey v,kを用いて、ＮＡＮＤ型フラッシュメモリ１０から読み出した暗号化された秘密識別情報E-SecretIDを復号することにより、秘密識別情報SecretIDを得る。 Subsequently, the host device 20, the resulting management key FKey v, with k, by decoding the secret identification information E-SecretID encrypted read from the NAND flash memory 10, a secret identification information SecretID obtain.
続いて、ホスト装置２０は、ID要求（Request ID）をＮＡＮＤ型フラッシュメモリ１０に送る。 Subsequently, the host device 20 sends ID request (Request ID) to the NAND flash memory 10.
続いて、ＮＡＮＤ型フラッシュメモリ１０は、秘密識別情報SecretIDを秘匿領域１１−２から読み出し、データキャッシュ１２Ａに保存する。 Then, NAND-type flash memory 10 reads the secret identification information SecretID from hidden area 11-2 is stored in the data cache 12A.
続いて、ＮＡＮＤ型フラッシュメモリ１０は、生成したセッション鍵データSKey i、jを用いて、秘密識別情報SecretIDを一方向性変換器１５における一方向性変換処理を行い、一方向性変換データ Oneway-ID (=Oneway(SKey i、j 、 SecretID))を生成し、生成された一方向性変換データOneway-IDをホスト装置２０に送出する。 Then, NAND-type flash memory 10, the generated session key data SKey i, with j, performs a one-way conversion process in unidirectional transducer 15 the secret identification information SecretID, unidirectional conversion data Oneway- ID (= Oneway (SKey i, j, SecretID)) generates and sends the generated one-way converted data Oneway-ID to the host device 20.
続いて、ホスト装置２０は、秘密識別情報SecretIDを、生成したセッション鍵データSKey i、jを用いて一方向性変換部２７における一方向性変換処理を行い、一方向性変換データOneway-IDを求める。 Subsequently, the host device 20, a secret identification information SecretID, generated session key data SKey i, performs a one-way conversion process in one-way converter 27 with j, the one-way conversion data Oneway-ID Ask.
続いて、ホスト装置２０は、ＮＡＮＤ型フラッシュメモリ１０より受信した一方向性変換データOneway-IDと、生成した一方向性変換データOneway-IDとが一致するか否かを判定する。 Subsequently, the host device 20 determines a one-way conversion data Oneway-ID received from the NAND flash memory 10, the generated whether the one-way conversion data Oneway-ID match. 上記一方向性変換識別情報Oneway-IDの両方の値が一致した場合（OK）には、復号部２１で得られた前記SecretIDが正しいSecretIDであると判定して以降の処理に秘密識別情報SecretIDを引き渡す。 If the value of both the one-way conversion identification information Oneway-ID match (OK), the secret identification information SecretID the determination to subsequent processing and the SecretID obtained by the decoding unit 21 is a correct SecretID the hand over. 一方、不一致の場合（NG）には、前記SecretIDが不正なIDであると判定し、その旨を以降の処理に出力する。 On the other hand, if a mismatch (NG), the SecretID is determined to be invalid ID, and outputs the fact to the subsequent processing.
以上の動作により、第１の実施形態に係る認証フローを終了する（End）。 With the above operation, it terminates the authentication flow according to the first embodiment (End).
なお、本実施例の説明した手順に限定されるものではなく、図1に示す処理を矛盾なく実現する範囲において上記処理の順番が入れ替わる場合もある。 It is not limited to the procedure described in this example, there is a case where the order of the processing is switched in a range to achieve consistently the processing shown in FIG. また、上記処理手順ではステップＳＴ２で生成した同じセッション鍵SKey i、jをステップＳＴ３及びステップＳＴ４で使用しているが，ステップＳＴ４の前ステップＳＴ２を再度行うことでステップＳＴ３とステップＳＴ４で異なるセッション鍵を用いることも考えられる。 Moreover, the procedure same session key generated in step ST2 is SKey i, but using in step ST3 and step ST4 to j, different step ST3 and step ST4 by executing the previous step ST2 in step ST4 again session it is also conceivable to use a key.
次に、図５を用い、第１の実施形態に係る鍵管理情報FKB(Family Key Block)についてより詳しく説明する。 Next, referring to FIG. 5, it will be described in more detail the key management information FKB according to the first embodiment (Family Key Block).
上記のように、本例に係る秘密識別情報SecretIDが記録されているＮＡＮＤ型フラッシュメモリ１０に適合した鍵管理情報FKBを生成するためのプロセスは、以下の通りである。 As described above, the process for generating the key management information FKB conforming to the NAND flash memory 10 that secret identification information SecretID according to the present embodiment is recorded is as follows.
まず、予め用意された秘密鍵情報であるIDKey i (i=1,…,n)（Set of IDKey i 's）の１つ１つのIDKey iに対応するインデックスkと、秘匿する管理鍵FKey vを生成するFKBを記録するＮＡＮＤ型フラッシュメモリ１０に秘匿されている秘密情報NKey iとを用いて、生成部１６で予め決めておいた生成アルゴリズムにより、インデックス鍵INK k （k = 1,…, n）を生成する。 First, IDKey i is a secret key information prepared in advance (i = 1, ..., n ) (Set of IDKey i 's) and the index k corresponding to each one of IDKey i, managing key FKey v to conceal by using the secret information NKey i that is concealed in the NAND-type flash memory 10 to record the FKB for generating, by generation algorithm that has been predetermined by the generator 16, the index key INK k (k = 1, ... , n) to generate.
続いて、第１重暗号化として、生成された各々のインデックス鍵INK k （k = 1,…,n）を用いて、秘匿する管理鍵FKey vを暗号化し、暗号化管理鍵E-FKey v,k = Encrypt(INK k , FKey v ) (k = 1,…, n)を求める。 Subsequently, as the first heavy encryption, generated each index key INK k (k = 1, ... , n) was used to encrypt the management key FKey v to conceal the encrypted management key E-FKey v , k = Encrypt (INK k, FKey v) (k = 1, ..., n) is determined.
続いて、第２重暗号化として、予め用意された秘密鍵情報であるIDKey i (i=1,…,n)（Set of IDKey i 's）の１つ１つのIDKey iを用いて、インデックス（k）が対応する暗号化管理鍵E-FKey v,kを１つ１つ暗号化（Encrypt）する。 Then, as a second double encryption, IDKey i is a secret key information prepared in advance (i = 1, ..., n ) using one one IDKey i of (Set of IDKey i 's) , index (k) corresponding to the encrypted management key E-FKey v, 1 single one encrypt the k (encrypt).
このように、本例に係る鍵管理情報FKBとは、多重暗号化として、２重に暗号化された管理鍵 EE-FKey v,k = Encrypt(IDKey k , E-FKey v,k ) (k = 1,…, n)の集合であり、この多重暗号化FKey v,kの集合を多重暗号化管理鍵（FKey）束と称する。 Thus, the key management information FKB according to this embodiment, as the multiple encrypted, encrypted doubly management key EE-FKey v, k = Encrypt (IDKey k, E-FKey v, k) (k = 1, ..., it is a set of n), the multiple encryption FKey v, a set of k is referred to as a multiple encrypted management key (FKey) bundles.
なお、図中では暗号化（Encrypt）処理が施されたデータであることを表す際に、”E-”を、更にもう1回暗号化処理が施されたデータであることを表す際に、”EE-“と表記している。 Incidentally, when indicating that in the figure in representing the encryption (Encrypt) processing is data that has been subjected to "E-", a further data once the encryption process is performed, It is referred to as "EE-".
また、鍵管理情報FKBの構成については、本例に限られない。 Further, the configuration of the key management information FKB, not limited to this example. 例えば、特定のIDKey iが露呈してしまった場合、当該IDKey iを保持しているホスト装置２０では多重暗号化FKey束からFKeyを復号することができないようにするために、当該識別鍵情報IDKey kで復号可能な暗号化FKey v （上述の例ではEE-FKey v,k ）をFKBから削除することにより、新たに構成されたFKBを記録したＮＡＮＤ型フラッシュメモリ１０を使用した場合には、当該ホスト装置では正しいFKey v及びSecretIDを得る（復号する）ことができないようにすることも可能である。 For example, if a particular IDKey i have had exposed, to the multiplexed encrypted FKey bundle the host device 20 holds the IDKey i so can not decrypt the FKey, the identification key information IDKey k decodable encryption FKey v (described above in the example EE-FKey v, k) by deleting from FKB, when using a NAND-type flash memory 10 which records the newly configured FKB is it is also possible to correct FKey v and obtain SecretID (decoding) can not be in the host device. このようにすることで、当該識別鍵情報IDKey kを保持したホスト装置２０を無効化する機能を提供することも可能である。 In this way, it is also possible to provide the ability to disable the host device 20 which holds the identification key information IDKey k.
鍵管理情報FKBの生成方法についても、本例に限られない。 For even generation method of the key management information FKB, not limited to this example. 例えば、ＣＰＲＭ（非特許文献１）において用いられているＭＫＢ（Media Key Block）技術や、非特許文献３に開示されているＭＫＢ技術に、本発明と同様に多重暗号化処理を施した鍵管理情報を用いてFKBを生成しても、ホスト装置２０を無効化する機能を提供することが可能である。 For example, CPRM and MKB (Media Key Canada Block) technology used in the (non-patent document 1), the MKB technology disclosed in Non-Patent Document 3, the key management subjected to multiplexing encryption processing in the same manner as in the present invention be generated FKB using the information, it is possible to provide the ability to disable the host device 20.
ここで、ＭＫＢ技術とは、複数の機器がそれぞれ異なる秘密情報を持つ状況で、機器の無効化を実現しつつ、（無効化対象でない機器の間で）共通の秘密情報（Media Key）を効率よく共有するための技術であり、Broadcast Encryption方式とも称される。 Here, the MKB technology, in situations with different secret plurality of devices respectively, while realizing disabling equipment efficiency (invalidation not an object between devices) common secret information (Media Key Canada) is a technique for improving sharing, also referred Broadcast Encryption scheme.
上記のように、第１の実施形態に係るホスト装置、半導体記憶装置、およびその認証方法によれば、少なくとも下記（１）乃至（４）の効果が得られる。 As described above, the host apparatus according to the first embodiment, a semiconductor memory device, and according to the authentication method, at least the following advantageous effects (1) to (4) can be obtained.
（１）ホスト装置２０から秘密情報が漏洩した場合であっても、漏洩した情報を用いたＮＡＮＤ型フラッシュメモリ１０の秘密情報の不正利用を防止することができる。 (1) from the host device 20 in a case where secret information is leaked, it is possible to prevent unauthorized use of the secret information of the NAND flash memory 10 using the information leaked.
ここで、認証装置であるホスト装置２０は、民生機器の様な専用ハードウェア装置だけでなく、例えば、PC（パーソナルコンピュータ）などで実行可能なプログラム（ソフトウェア）として提供され当該ソフトウェアが実質的なホスト装置となる場合もある。 Here, the host device 20 is the authentication apparatus is not only dedicated hardware devices such as consumer electronics, for example, the software is provided as a PC (personal computer) executable program, etc. (software) is substantially there is a case where the host device. 一方、被認証装置であるＮＡＮＤ型フラッシュメモリ１０は、記録メディアであり、ファームウェアと呼ばれるプログラムが介在する場合であっても、重要な処理や情報はセルアレイ１１中のハードウェア内に秘匿された状態で記憶される。 State Meanwhile, the NAND flash memory 10 is a prover, a recording medium, even when a program called firmware mediated critical processes and information which is concealed within the in the cell array 11 of the hardware in are stored. そのため、現実的には、例えば、PC上で実行されるソフトウェアは、記録メディアに比べて耐タンパー性能（攻撃に対する耐性）が低くなってしまうことが懸念される。 Therefore, in reality, for example, software running on a PC, tamper performance (resistance to attack) is a concern that becomes lower than the recording medium. そのため、耐タンパー性能の低いホスト装置（認証装置）２０を攻撃することで、耐タンパー性の高いＮＡＮＤ型フラッシュメモリ１０（被認証装置）に秘匿された秘密情報をも暴露され、耐タンパー性の高い装置に成りすまされることが懸念される。 Therefore, by attacking tamper performance low host device (authentication device) 20 are also exposed secret information concealed tamper highly NAND type flash memory 10 (the prover), the tamper-resistant it is feared that spoofed high device.
そこで、第１の実施形態に係る構成及びその認証方式では、上記のように、比較的耐タンパー性の高いＮＡＮＤ型フラッシュメモリ１０は、第１鍵情報（NKey i ）から第２鍵情報（HKey i,j ）を生成することができる第１鍵情報（NKey i ）をセルアレイ１１に秘匿する。 Therefore, in the configuration and method of authentication according to the first embodiment, as hereinabove described, relatively tamper highly NAND type flash memory 10, the second key information from the first key information (NKey i) (HKey i, to conceal the first key information which is capable of generating a j) (NKey i) in the cell array 11. 一方、ホスト装置２０は、第２鍵情報（HKey i,j ）からは第１鍵情報（NKey i ）を生成することができない第２鍵情報（HKey i,j ）のみをメモリ２３に秘匿する。 On the other hand, the host device 20 from the second key information (HKey i, j) to conceal the second key information (HKey i, j) can not be generated first key information (NKey i) only into the memory 23 .
そのため、ＮＡＮＤ型フラッシュメモリ１０は、ホスト装置２０から受領した元情報（HC j ）と自身が秘匿する第１鍵情報（NKey i ）を用いて、認証装置２０が秘匿する第２鍵情報（HKey i,j ）を生成する。 Therefore, NAND type flash memory 10 by using the first key information based on information received from the host device 20 and (HC j) itself concealed (NKey i), second key information authentication device 20 is confidential (HKey i, j) to generate. ＮＡＮＤ型フラッシュメモリ１０は、第２鍵情報（HKey i,j ）と乱数情報（RN ｈ ）とからセッション鍵（SKey i,j ）を生成する。 NAND-type flash memory 10, generates a session key (SKey i, j) from the second key information (HKey i, j) and the random number information (RN h).
ホスト装置２０は、インデックス情報iにより選択される第２鍵情報（HKey i,j ）と乱数情報（RN ｈ ）とからセッション鍵（SKey i,j ）を生成する。 The host device 20 generates a second key information selected by the index information i (HKey i, j) from the random number information (RN h) the session key (SKey i, j). その結果、ＮＡＮＤ型フラッシュメモリ１０とホスト装置２０とは、共に同じセッション鍵（SKey i,j ）を共有する。 As a result, the NAND flash memory 10 and the host device 20 share the same for both session key (SKey i, j).
このように、本例では、ＮＡＮＤ型フラッシュメモリ（被認証装置）１０が秘匿する情報の秘密レベルと、ホスト装置（認証装置）２０が秘匿する情報の秘密レベルとを非対称とすることができる。 Thus, in this example, it can be a secret level information NAND-type flash memory (apparatus to be authenticated) 10 concealed, and the secret level of information the host device (authentication device) 20 is concealed asymmetric. 例えば、本例では、比較的耐タンパー性の高いＮＡＮＤ型フラッシュメモリ１０が秘匿する情報の秘密レベルを、比較的耐タンパー性の低いホスト装置２０が秘匿する情報の秘密レベルよりも、より高く設定することができる。 For example, in this embodiment, a relatively secret level of information tamper highly NAND type flash memory 10 is confidential, than the secret level of information relatively tamper-resistant low host device 20 is concealed, set higher can do.
そのため、仮にホスト装置２０が秘匿する情報が漏洩した場合であっても、比較的耐タンパー性の高いＮＡＮＤ型フラッシュメモリ１０が秘匿する情報の秘密レベルがさらに高いため、漏洩した情報を用いてＮＡＮＤ型フラッシュメモリ１０に”成りすますこと”ができない。 Therefore, even if a data by the host device 20 is concealed is leaked, relatively for tamper highly NAND flash memory 10 is a higher secret level of information concealing using the information leaked NAND type in the flash memory 10 "impersonate that" can not be. 従って、漏洩した情報を用いたＮＡＮＤ型フラッシュメモリ１０の秘密情報の不正利用を防止することができる点で有利である。 Therefore, it is advantageous in that it is possible to prevent unauthorized use of the secret information of the NAND flash memory 10 using the information leaked. その結果、例えば、ホスト装置２０から読み出されたID情報が、目的の被認証装置１０から読み出した情報であることを確実に確認し、その相手方の不正利用の無効化等が可能となる。 As a result, for example, ID information read by the host device 20 is reliably verify that the information read from the authentication device 10 of the object, it is possible to invalidate such unauthorized use of the other party.
（２）ホスト装置から漏洩した識別鍵情報IDKey kが不正に利用された場合でも、漏洩したIDKey kの特定作業を軽減することができる。 (2) even if the identification key information leaked from the host device IDKey k is misused, it is possible to reduce the specific working IDKey k leaked.
本例に係る鍵管理情報FKBは、図５で示したように、多重暗号化として、２重に暗号化された管理鍵 EE-FKey v,k = Encrypt(IDKey k , E-FKey v,k ) (k = 1,…, n)の集合である。 Key management information FKB according to the present embodiment, as shown in FIG. 5, as the multiple encrypted, encrypted doubly management key EE-FKey v, k = Encrypt (IDKey k, E-FKey v, k ) (k = 1, ..., is a set of n).
そのため、本例では、ホスト装置２０がFKBを復号した結果を、暗号化したデータEnc(SKey i, j , E-FKey v )の状態で一旦ＮＡＮＤ型フラッシュメモリ１０に送り返す（ステップＳ２０）。 Therefore, in this example, the result of the host apparatus 20 decrypts the FKB, once sent back to the NAND flash memory 10 in the form of encrypted data Enc (SKey i, j, E -FKey v) ( step S20). 更に、復号部１００により、復号処理を施さなければ暗号化秘密識別情報（E-SecretID）の復号に必要な管理鍵FKeyが得られない（ステップＳ２１）。 Further, the decoding unit 100 is not obtained management key FKey necessary for decoding encrypted secret identification information unless subjected to decoding processing (E-SecretID) (step S21). このように、ホスト装置２０のProcess FKB２２内の処理において、FKB内のn個の2重暗号化管理鍵EE-FKey v, kの内の何番目（k）のレコードを処理したかを認証するためのいわばレスポンスプロセス（ＳＴ３）を備え、このインデックス情報（k）と一緒にＮＡＮＤ型フラッシュメモリ１０に送出しなければならない構成とする。 Thus, the processing in Process FKB22 of the host device 20 to authenticate whether treated n pieces of double encrypted management key EE-FKey v in FKB, what number of the k records (k) so to speak with the response process (ST3) for, a structure that must be sent to the NAND flash memory 10 with the index information (k). 従って、例えば、ライセンス管理者等は、不正に利用されているIDKey kのインデックス情報（k）から、実際に不正利用されている識別鍵情報IDKey kを特定することが可能となる。 Thus, for example, the license manager or the like from the index information IDKey k being illegally utilized (k), it is possible to specify the identification key information IDKey k that is actually illegal use.
（３）秘匿性を保持できる。 (3) capable of holding confidentiality.
上記のように、認証動作において、ホスト装置２０とＮＡＮＤ型フラッシュメモリ１０との間でのレスポンスプロセス（ＳＴ３）を行う場合には、暗号化されたデータの状態で行われる。 As described above, in the authentication operation, when performing the response process (ST3) between the host device 20 and the NAND-type flash memory 10 is performed in the state of the encrypted data.
例えば、ステップＳ２０の際に、ホスト装置２０がFKBを復号した結果は、暗号化したデータEnc(SKey i, j , E-FKey v )の状態で一旦ＮＡＮＤ型フラッシュメモリ１０に送り返される。 For example, when the step S20, the result of the host apparatus 20 decrypts the FKB is encrypted data Enc (SKey i, j, E -FKey v) sent back once the NAND flash memory 10 in the state of. また、ステップＳ２４の際に、ＮＡＮＤ型フラッシュメモリ１０は、セッション鍵SKey i,jを用いて、管理鍵FKey v,kを暗号化し、暗号化したデータEnc(SKey i, j , E-FKey v, k )の状態で、ホスト措置２０に送出する。 At the time of step S24, NAND-type flash memory 10, using the session key SKey i, j, management key FKey v, encrypts the k, the encrypted data Enc (SKey i, j, E -FKey v , in the state of k), and sends the host measures 20.
そのため、秘匿性を保持することができる点で有利である。 Therefore, it is advantageous in that it can hold the secrecy.
（４）実装化において有利である。 (4) it is advantageous in implementation of.
本例のような構成では、比較的大きな回路規模を要求される公開鍵暗号処理やMKB処理のハードウェア実装が困難である等の回路規模上の制約が同時に課せられる環境下である。 The structure of this embodiment, be in the environment constraints on the circuit scale and the like hardware implementation of public key encryption and MKB processing required a relatively large circuit scale is difficult imposed simultaneously.
しかしながら、本例によれば、鍵情報が非対称であるものの比較的大きな回路規模を必要とする公開鍵暗号処理を用いる必要がない。 However, according to this embodiment, the key information is not necessary to use a public key encryption which requires a relatively large circuit scale although asymmetric. さらに、上記のように、ホスト装置（認証装置）２０とＮＡＮＤ型フラッシュメモリ（被認証装置）１０とが秘匿する情報の秘密レベルを非対称とすることにより、片方の装置から漏れた情報だけではもう一方の装置に成りすますことができない認証手段を行い、認証装置２０と被認証装置１０との間で秘密情報であるセッション鍵（SKey i,j ）を共有する。 Further, as described above, by the secret level of information and a host device (authentication device) 20 and a NAND-type flash memory (the prover) 10 concealed asymmetric, only information leaked from one device anymore authenticate means can not impersonate the one device to share a session key is a secret information with the authentication device 20 and the authentication device 10 (SKey i, j).
そのため、上記制約が課される厳しい環境下であっても、実装化において有利であると言える。 Therefore, even under severe environment in which the constraints are imposed, it can be said to be advantageous in mounting of.
さらに、上記のように、メモリシステムを構成するデータ生成回路や暗号化器を同じ処理とすることにより、回路規模を比較的小さくすることも可能である。 Further, as described above, by the data generation circuit and encryptor constituting the memory system and the same process, it is possible to relatively reduce the circuit scale.
この点については、AES（Advanced Encryption Standard）暗号を利用する以下の変形例１−３でより具体的に説明する。 In this regard, more particularly described in the following modified example 1-3 using the AES (Advanced Encryption Standard) encryption.
次に、変形例１に係る認証装置、被認証装置、およびその認証方法について説明する。 Next, the authentication device according to Modification 1, the prover, and its authentication method will be described. この説明において、上記第１の実施形態と重複する部分の説明については、省略する。 In the description, parts common to those of the first embodiment will be omitted.
本例は、共通鍵暗号であるAdvanced Encryption Standard (AES)暗号を利用して、上記第１の実施形態を実装化する一例である。 This example uses the Advanced Encryption Standard (AES) encryption is a common key encryption is an example of implementing the above-described first embodiment.
Advanced Encryption Standard (AES)暗号やData Encryption Standard (DES)に代表される共通鍵暗号では、暗号化処理（Encryption）と復号処理（Decryption）のアルゴリズムが標準化団体によって規定されている。 Advanced Encryption The Standard (AES) encryption and Data Encryption common key encryption typified Standard (DES), the algorithm of encryption (Encryption) and decryption (Decryption) is defined by the standardization organization. 例えば「AES暗号化処理」されたデータ（暗号化データ）を復号するためには、暗号化に使用した鍵（暗号化鍵）を共有すると共にAES暗号化処理と対になる「AES復号処理」を行うことにより暗号化前のデータ（平文データ）を得ることができる。 For example, in order to decode the "AES encryption process" data (encrypted data) will AES encryption paired with sharing a key used for encryption (encryption key) "AES decryption process" it is possible to obtain the encrypted data before (plaintext data) by performing. この様に、共通鍵暗号の暗号化処理と復号処理とは対になって利用されるが、AES暗号やDESの様に、一般的な共通暗号アルゴリズムでは暗号化処理と復号処理を入れ替えて利用することも可能である。 Thus, although the encryption processing and decryption processing of common key encryption is used in pairs, as the AES encryption or DES, in the general common encryption algorithm interchanged encryption processing and decryption processing utilizing it is also possible to.
例えば、AES暗号を例にとると、「暗号化処理」にAES復号処理（AES_D）を用い、「復号処理」にAES暗号化処理（AES_E）を用いることで、上記の暗号化／復号処理と同等の機能を実現することができる。 For example, taking the AES encryption as an example, using the AES decryption processing (AES_D) to "encryption process", by using the "decryption" in AES encryption process (AES_E), and the encryption / decryption it is possible to realize the same function.
より具体的に、暗号化／復号処理は、次のように表すことができる。 More specifically, the encryption / decryption process can be represented as follows.
ここで、Chiper_Textが元々の入力データ（平文データ）であり、Plain_Textが出力データ（暗号化データ）あったと考えてみると、Plain_Text = AES_D(Kay, Cipher_Text)の処理によってCipher_Text（入力）から変換されたPlain_Text（出力）が得られる。 Here, Chiper_Text is the original input data (plaintext data), come to think and plain_text had output data (encrypted data), it is converted Plain_Text = AES_D (Kay, Cipher_Text) by treatment from Cipher_Text (input) was Plain_Text (output) is obtained.
このPlain_Textを入力データとしてAES暗号化処理（AES_E）に与えると、次のように表される。 Given this Plain_Text as input data to the AES encryption process (AES_E), it is expressed as follows.
即ち、Cipher_Text（出力）が得られる。 That, Cipher_Text (output) is obtained. このCipher_Textは、AES復号処理（AES_D）に入力されたデータであり、正しく元のデータに戻ることが分かる。 This Cipher_Text is data that is input to the AES decryption process (AES_D), it can be seen that correctly return to the original data. 上記のように、AES暗号などの共通鍵暗号では、暗号化／復号はデータの変換処理であり、その順番を入れ替えても同様の効果を得ることができることが明らかである。 As described above, in the common key encryption such as AES encryption, the encryption / decryption is the conversion of data, it is clear that it is possible to obtain the same effect by replacing the order.
そこで、本例では、AES暗号を利用し、上記ＮＡＮＤ型フラッシュメモリ１０が備える復号部（Decrypt）１００、１０１、１０３をAES暗号化処理（AES_E）とし、対応してホスト装置２０が備える暗号部（Encrypt）２００、２０１、２７をAES復号処理（AES_D）として、各々実装する場合を一例に説明する。 Therefore, in this example, using the AES encryption, the decryption unit NAND type flash memory 10 is provided (Decrypt) 100,101,103 AES encryption process and (AES_E), encryption unit included in the host device 20 corresponds (Encrypt) 200,201,27 as the AES decryption process (AES_D), explaining the case of each mounted on one example.
変形例１に係るメモリシステムは、図６のように示される。 Memory system according to Modification 1 is as shown in FIG.
図示するように、本例では、AES暗号を利用し、ＮＡＮＤ型フラッシュメモリ１０が備える復号部（Decrypt）１００、１０３及び暗号化部（Encrypt）１０１をAES暗号化処理部（AES_E）とし、これに対応するホスト装置２０が備える暗号化部（Encrypt）２００及び復号部（Decrypt）２０１、２１をAES復号処理部（AES_D）として、各々実装する。 As shown, in this example, using the AES encryption, decryption unit NAND type flash memory 10 is provided (Decrypt) 100, 103 and encryption unit (Encrypt) 101 AES encryption processing unit and (AES_E), which encryption unit the host device 20 is provided with corresponding (encrypt) 200 and decoding section (Decrypt) 201,21 as AES decryption processing unit (AES_D), respectively mounted on. このように、上記第１の実施形態と表記上は相違があるが、機能についての相違はない。 Thus, the notation on the first embodiment there is a difference, but the difference in the function.
変形例１に係る認証フローは、図７のように示される。 Authentication flow according to the first modification is as shown in FIG.
図示するように、本例では、ステップ群ＳＴ３において、AES暗号を利用する点で、次のように第１の実施形態と相違する。 As shown, in this example, in the group of steps ST3, in that utilizing the AES encryption, different from the first embodiment as follows.
まず、ステップＳ２０において、ホスト装置２０は、暗号化管理鍵D-FKey v,kを、AES復号機能を用いて暗号化し（Encrypt D-FKey v,k by AES Decryption function）、暗号化したデータAES_D(SKey i, j , D-FKey v )とインデックス情報kとを、ＮＡＮＤ型フラッシュメモリ１０に送出する。 First, in step S20, the host device 20, encrypted management key D-FKey v, a k, encrypted using the AES decryption function (Encrypt D-FKey v, k by AES Decryption function), encrypted data AES_D (SKey i, j, D- FKey v) and the index information k, is sent to the NAND flash memory 10.
なお、”D-“は、その後に続くデータがAES復号処理を用いて変換されたことを表している。 Incidentally, "D-" represents that the subsequent data is transformed using AES decryption process.
続いて、ＮＡＮＤ型フラッシュメモリ１０は、上記暗号化データAES_D(SKey i, j , D-FKey v )をAES暗号化機能を用いて復号し（Decrypt by AES Encryption function）、、暗号化管理鍵D-FKey v,kを得る。 Then, NAND-type flash memory 10, the encrypted data AES_D (SKey i, j, D -FKey v) was decrypted using the AES encryption function (Decrypt by AES Encryption function) ,, encrypted management key D -FKey v, obtain k.
続いて、ＮＡＮＤ型フラッシュメモリ１０は、暗号化管理鍵D-FKey v,kをインデックス鍵INK k 、およびAES暗号化機能を用いて復号化し（Decrypt by AES Encryption function）、管理鍵FKey v,kを得る。 Then, NAND-type flash memory 10, and decrypted by using the encryption management key D-FKey v, k the index key INK k, and AES encryption function (Decrypt by AES Encryption function), management key FKey v, k obtained.
続いて、ＮＡＮＤ型フラッシュメモリ１０は、管理鍵FKey v,kをセッション鍵SKey i,jおよびAES暗号化機能を用いて暗号化し、暗号化したデータAES_E(SKey i, j , FKey v, k )として、ホスト措置２０に送出する。 Then, NAND-type flash memory 10, management key FKey v, k a session key SKey i, encrypted with the j and AES encryption function, encrypted data AES_E (SKey i, j, FKey v, k) as it will be sent to the host measures 20.
次に、図８を用い、変形例１に係る鍵管理情報FKB(Family Key Block)についてより詳しく説明する。 Next, referring to FIG. 8, the key management information FKB according to Modification 1 (Family Key Block) will be described in more detail.
上記のように、本例に係るAES暗号を利用した鍵管理情報FKBを生成するためのプロセスは、以下の通りである。 As described above, the process for generating the key management information FKB using AES encryption according to this embodiment is as follows.
まず、上記と同様に、インデックス鍵INK k （k = 1,…, n）を生成する。 First, similarly to the above, the index key INK k (k = 1, ... , n) to generate a.
続いて、第１重暗号化として、AES復号処理（AES_D）を利用し、生成された各々のインデックス鍵INK k （k = 1,…,n）を用いて、秘匿する管理鍵FKey vを暗号化し、暗号化管理鍵D-FKey v,k = AES_D(INK k , FKey v ) (k = 1,…, n)を求める。 Subsequently, as the first heavy encryption, using the AES decryption processing (AES_D), the index key INK k each generated (k = 1, ..., n ) by using the encryption management key FKey v to conceal However, the encrypted management key D-FKey v, k = AES_D (INK k, FKey v) (k = 1, ..., n) is determined.
続いて、第２重暗号化として、AES暗号処理（AES_E）を利用し、予め用意された識別鍵鍵情報であるIDKey i (i=1,…,n)（Set of IDKey i 's）の１つ１つのIDKey iを用いて、インデックス（k）が対応する暗号化管理鍵D-FKey v,kを１つ１つ暗号化（Encrypt）する。 Subsequently, as the double encryption, using AES encryption processing (AES_E), IDKey i is prepared beforehand identification Kagikagi information (i = 1, ..., n ) of the (Set of IDKey i 's) using one single IDKey i, index (k) corresponding encrypted management key D-FKey v, one single encrypting k (encrypt).
このように、本例に係る鍵管理情報FKBとは、多重暗号化として、AES暗号を利用して２重に暗号化された管理鍵 DE-FKey v,k = AES_E(IDKey k , D-FKey v,k ) (k = 1,…, n)の集合であり、この多重暗号化FKey v,kの集合を多重暗号化管理鍵（FKey）束と称する。 Thus, the key management information FKB according to the present embodiment, as multiple encrypted, using the AES encryption double management key is encrypted DE-FKey v, k = AES_E (IDKey k, D-FKey v, k) (k = 1 , ..., is a set of n), the multiple encryption FKey v, a set of k is referred to as a multiple encrypted management key (FKey) bundles.
なお、図中ではAES暗号化処理（AES_E）又はAES復号処理（AES_D）を利用して、暗号化（Encrypt）処理が施されたデータであることを表す際に、”E-または ”D-”として同様に表記している。 Incidentally, in the figure by using the AES encryption process (AES_E) or AES decryption process (AES_D), in representing the encryption (Encrypt) processing is data that has been subjected to, "E- or" D- It is expressed in the same way as ".
その他の構成および動作は、実質的に上記第１の実施形態と同様であるため、詳細な説明を省略する。 Other configurations and operations are the same as the substantially the first embodiment, and detailed description thereof will be omitted.
上記のように、変形例１に係るホスト装置、半導体記憶装置、およびその認証方法によれば、少なくとも上記（１）乃至（４）と同様の効果が得られる。 As described above, the host apparatus according to the first modification, the semiconductor memory device, and according to the authentication method, the same effects as those of at least the (1) to (4) can be obtained.
さらに、本例では、共通鍵暗号であるAES暗号を利用して、メモリシステムを実装化する。 Further, in this embodiment, by using the AES encryption is a common key cipher, to implement the memory system.
このように、ＮＡＮＤ型フラッシュメモリ１０に実装しなければならない暗号化／復号処理をAES暗号化処理に統一することにより、暗号化処理と復号処理との２つの処理を実装する場合に比べ、ＮＡＮＤ型フラッシュメモリ１０の実装負荷（回路規模）を軽減化することが可能となる点で有利である。 In this way, by unifying the encryption / decryption process that must be implemented in the NAND flash memory 10 to the AES encryption process, compared with the case of implementing the two processes of encryption processing and decryption processing, NAND it is advantageous in that it becomes possible to reduce of implementing load (circuit scale) type flash memory 10.
更に、前述したように、データ生成部（Generate）１３、１４等をAES暗号化処理で、一方向性変換部（Oneway）１５をAES暗号化処理を利用した方式にすることも可能である。 Further, as described above, the data generating section (Generate) 13, 14, etc. In AES encryption process, it is also possible to unidirectional converting unit (Oneway) 15 in method using AES encryption process. この場合、ＮＡＮＤ型フラッシュメモリ１０の処理に必要な実装負荷（回路規模）を更に軽減することも可能である。 In this case, it is possible to further reduce implementation load (circuit scale) required for the processing of the NAND flash memory 10.
また、本例では、ホスト装置２０が備える復号部（Decrypt）２１をAES復号処理部（AES_D）として実装する例を説明したが、これに限らず、ホスト装置２０が備える復号部（Decrypt）２１をAES暗号化処理部（AES_E）として実装しても良い。 Furthermore, in the present embodiment, the decoding unit by the host device 20 is provided with (Decrypt) 21 was described as an example be implemented as AES decryption processing unit (AES_D), not limited to this, the decoding unit by the host device 20 is provided (Decrypt) 21 the may be implemented as AES encryption processing unit (AES_E). この場合、第１の実施形態に係るROM領域１１−３には、E-SecretID=AES_D(FKey v , SecretID)が記録される。 In this case, the ROM area 11-3 according to the first embodiment, E-SecretID = AES_D (FKey v, SecretID) is recorded. また、第１の実施形態のステップＳ２６において、ホスト装置２０は、得られた管理鍵データFKey v,kを用いて、ＮＡＮＤ型フラッシュメモリ１０から読み出した暗号化された秘密識別情報E-SecretIDを暗号化することにより、秘密識別情報SecretIDを得る。 Further, in step S26 in the first embodiment, the host device 20, the resulting management key data FKey v, with k, the secret identification information E-SecretID encrypted read from the NAND flash memory 10 by encrypting, the secret identification information SecretID. このことは、各実施形態および変形例にも適用可能であることは勿論である。 This is, of course also to the embodiments and the modifications are applicable.
次に、第２の実施形態に係るホスト装置、半導体記憶装置、およびその認証方法について説明する。 Next, the host apparatus according to the second embodiment, a semiconductor memory device, and its authentication method will be described. 本例は、鍵管理情報FKBvが、多重暗号化として、３重に暗号化された管理鍵 EEE-FKey v,k = Encrypt(IDKey k , EE-FKey v,k ) (k = 1,…, n)の一例に関するものである。 This example, the key management information FKBv is, as a multiple encrypted, encrypted management key EEE-FKey v in triplicate, k = Encrypt (IDKey k, EE-FKey v, k) (k = 1, ..., it relates to an example of n). 以下の説明において、上記第１の実施形態と重複する部分の説明については、省略する。 In the following description, description of parts overlapping the first embodiment will be omitted.
第２の実施形態に係るメモリシステムは、図９のように示される。 Memory system according to the second embodiment is as shown in FIG.
本例では、鍵管理情報FKBvが、多重暗号化として、３重に暗号化された管理鍵 EEE-FKey v,k = Encrypt(IDKey k , EE-FKey v,k )である。 In this example, the key management information FKBv is, as a multiple encrypted, is encrypted management key EEE-FKey v in triplicate, k = Encrypt (IDKey k, EE-FKey v, k).
そのため、図示するように、ホスト装置２０が、復号部２０２を更に備える点で、上記第１の実施形態と相違する。 Therefore, as illustrated, the host device 20, in that it further includes a decoding unit 202, differs from the first embodiment.
復号部（Decrypt）２０２は、識別鍵情報IDKey kを用いて、復号部２０１から受信する暗号化管理鍵（E-FKey v ）を復号して、管理鍵FKey vを得る。 Decoding unit (Decrypt) 202, using the identification key information IDKey k, by decrypting the encrypted management key received from decryption unit 201 (E-FKey v), obtaining a management key FKey v.
第２の実施形態に係るメモリシステムの認証フローは、図１０のように示される。 Authentication flow of the memory system according to the second embodiment is as shown in FIG. 10.
図示するように、本例では、鍵管理情報FKBvが、多重暗号化として、３重に暗号化された管理鍵 EEE-FKey v,kであることに対応する点で、上記第１の実施形態と相違する。 As shown, in this example, the key management information FKBv is, as a multiple encrypted, encrypted triplicate management key EEE-FKey v, in that it corresponds to a k, the first embodiment and different.
より具体的には、次のステップＳ２５−１を更に備える点で、実質的に相違する。 More specifically, in that further comprises the following steps S25-1, substantially different.
ホスト装置２０は、復号部２０２において、識別鍵情報IDKey kを用い、復号部２０１から受信する暗号化管理鍵（E-FKey v,k ）を復号して、管理鍵FKey v,kを得る。 The host device 20, the decoding unit 202, using the identification key information IDKey k, encrypted management key (E-FKey v, k) received from the decoding unit 201 decodes to give management key FKey v, a k.
その他の構成、動作に関しては、実質的に上記第１の実施形態と同様であるため、詳細な説明を省略する。 Other configurations, with respect to the operation is the same as the substantially the first embodiment, and detailed description thereof will be omitted.
次に、図１１を用い、第２の実施形態に係る鍵管理情報FKB(Family Key Block)についてより詳しく説明する。 Next, referring to FIG. 11, it will be described in more detail the key management information FKB according to the second embodiment (Family Key Block).
第３重暗号化として、２重に暗号化された管理鍵 EE-FKey v,k = Encrypt(IDKey k , E-FKey v,k )をさらに、識別鍵情報IDKey iを用いて同様に、インデックス（k）が対応する暗号化管理鍵EE-FKey v,kとして１つ１つ暗号化（Encrypt）する。 As a triple encryption, encrypted doubly management key EE-FKey v, k = Encrypt (IDKey k, E-FKey v, k) further, similarly using the identification key information IDKey i, the index (k) corresponding to the encrypted management key EE-FKey v, one single encrypted as k (encrypt).
このように、本例に係る鍵管理情報FKBとして、３重に暗号化された管理鍵 Triply-encrypted FKey v,k ： EEE-FKey v,k = Encrypt(IDKey k , EE-FKey v,k ) (k = 1,…, n)を得ることができる。 Thus, as a key management information FKB according to the present embodiment, management key encrypted triple Triply-encrypted FKey v, k: EEE-FKey v, k = Encrypt (IDKey k, EE-FKey v, k) (k = 1, ..., n) can be obtained.
なお、図中では暗号化（Encrypt）処理が施されたデータであることを表す際に”E-”、２回暗号化処理が施されたデータであることを表す際に”EE-“、更に３回暗号化処理が施されたデータであることを表す際に”EEE-“、と各々表記している。 Incidentally, the encryption in the drawing (Encrypt) process when indicating that the data has been subjected "E -", in representing the two encryption process is data that has been subjected to "EE-", "EEE-" when indicating that more is three data encryption process is performed, to be respectively denoted.
上記のように、第２の実施形態に係るホスト装置、半導体記憶装置、およびその認証方法によれば、少なくとも上記（１）乃至（４）と同様の効果が得られる。 As described above, the host apparatus according to the second embodiment, a semiconductor memory device, and according to the authentication method, the same effects as those of at least the (1) to (4) can be obtained. さらに、本例によれば、下記（５）に示す効果が得られる。 Further, according to this embodiment, effects can be obtained in the following (5).
（５）管理鍵FKey vの不正取得を防止することが可能となる。 (5) it is possible to prevent the illegal acquisition of management key FKey v.
本例では、鍵管理情報FKBvが、多重暗号化として、３重に暗号化された管理鍵 EEE-FKey v,k = Encrypt(IDKey k , EE-FKey v,k )である。 In this example, the key management information FKBv is, as a multiple encrypted, is encrypted management key EEE-FKey v in triplicate, k = Encrypt (IDKey k, EE-FKey v, k). そのため、ホスト装置２０が、復号部２０２を更に備える点で、上記第１の実施形態と相違する。 Therefore, the host device 20, in that it further includes a decoding unit 202, differs from the first embodiment.
上記構成および動作によれば、たとえＮＡＮＤ型フラッシュメモリ１０から秘密情報NKey iが漏洩してしまった場合でも、漏洩したNKey iとホスト装置２０から受け取った情報からだけでは管理鍵FKey vを容易に得ることが不可能となる。 According to the above configuration and operation, if the NAND flash memory 10 even if the secret information NKey i have had leaked, the management key FKey v easily only from information received from NKey i and the host device 20 that leaks it becomes impossible to obtain. そのため、管理鍵FKey vの不正取得を防止することが可能となる点で、更に有利である。 Therefore, in that it is possible to prevent unauthorized acquisition of management key FKey v, it is furthermore advantageous.
次に、変形例２に係るホスト装置、半導体記憶装置、およびその認証方法について説明する。 Next, the host apparatus according to the second modification, the semiconductor memory device, and its authentication method will be described. 本例は、変形例１と同様にAES暗号を利用して、上記第２の実施形態を実装化する一例である。 This example utilizes the same manner AES encryption and modification 1, an example of implementing the above second embodiment.
変形例２に係るメモリシステムは、図１２のように示される。 Memory system according to Modification 2 is as shown in FIG. 12.
本例では、AES暗号を利用して、上記第２の実施形態を実装化する一例である。 In this example, using the AES encryption is one example of implementing the above second embodiment.
そのため、図示するように、ホスト装置２０が備える復号部２０２として、AES暗号を利用し、AES暗号化処理部（AES_D）として実装化している。 Therefore, as shown, as the decoding unit 202 by the host device 20 is provided, using the AES encryption is implemented as AES encryption processor (AES_D).
そのため、３重に暗号化された管理鍵 EEE-FKey v,k = Encrypt(IDKey k , EE-FKey v,k )を、AES暗号を利用して対応することが可能である。 Therefore, it is possible to triple the encrypted management key EEE-FKey v, k = Encrypt (IDKey k, EE-FKey v, k) and the corresponding using AES encryption.
変形例２に係る認証フローは、図１３のように示される。 Authentication flow according to the second modification is as shown in FIG. 13.
図示するように、本例では、ステップ群ＳＴ３において、AES暗号を利用するものである。 As shown, in this example, in the group of steps ST3, it is to utilize the AES cipher.
次に、図１４を用い、変形例２に係る鍵管理情報FKB(Family Key Block)についてより詳しく説明する。 Next, referring to FIG. 14, the key management information FKB according to Modification 2 (Family Key Block) will be described in more detail. なお、鍵管理情報FKBについては、次に説明する変形例３に関しても同様である。 Note that the key management information FKB, The same applies to the modification 3 described below.
第３重暗号化として、２重に暗号化された管理鍵 ED-FKey v,k = AES_D(IDKey k , E-FKey v,k )をさらに、識別鍵情報IDKey iを用いて同様に、AES暗号を利用して、インデックス（k）が対応する暗号化管理鍵ED-FKey v,kとして１つ１つ暗号化（Encrypt）する。 As a triple encryption, encrypted management key ED-FKey v doubly, k = AES_D (IDKey k, E-FKey v, k) further, similarly using the identification key information IDKey i, AES using the encryption, to encrypt index (k) is the corresponding management key ED-FKey v, 1 single one encryption as k (encrypt).
このように、本例に係る鍵管理情報FKBとして、３重に暗号化された管理鍵 Triply-encrypted FKey v,k ： EDE-FKey v,k = AES_E(IDKey k , ED-FKey v,k ) (k = 1,…, n)を得ることができる。 Thus, as a key management information FKB according to the present embodiment, management key encrypted triple Triply-encrypted FKey v, k: EDE-FKey v, k = AES_E (IDKey k, ED-FKey v, k) (k = 1, ..., n) can be obtained.
なお、図中ではAES暗号化処理を用いて暗号化（Encrypt）処理が施されたデータであることを表す際に”E”を、AES復号処理を用いて暗号化（Encrypt）処理が施されたデータであることを表す際に”D”を付けており、AES暗号を利用して３回暗号化処理が施されたデータが”EDE-“と表記している場合には、1回目の暗号化にAES暗号化処理を、2回目の暗号化にAES復号処理を、3回目の暗号化にAES暗号化処理を、各々用いたことを表している。 Incidentally, the "E" in representing that the data encryption (Encrypt) processing is applied using the AES encryption process, encrypted (Encrypt) process using the AES decryption process undergone in the figure and it is with the "D" in representing that the data, when the data 3 times encryption process using the AES encryption has been performed is indicated as "EDE-" is first the AES encryption process to encrypt the AES decryption process for the second time encryption, the AES encryption process to encrypt the third represents for using each.
上記のように、変形例２に係るホスト装置、半導体記憶装置、およびその認証方法によれば、少なくとも上記（１）乃至（５）と同様の効果が得られる。 As described above, the host apparatus according to the second modification, the semiconductor memory device, and according to the authentication method, the same effects as those of at least the (1) to (5) is obtained. さらに、本例のように、必要に応じて、AES暗号を利用することが可能である。 Furthermore, as in this embodiment, if necessary, it is possible to use the AES cipher.
次に、第３の実施形態に係るホスト装置、半導体記憶装置、およびその認証方法について説明する。 Next, the host apparatus according to the third embodiment, a semiconductor memory device, and its authentication method will be described. 本例は、鍵管理情報FKBvが、多重暗号化として、３重に暗号化された管理鍵 EEE-FKey v,k = Encrypt(IDKey k , EE-FKey v,k ) (k = 1,…, n)の一例に関するものである。 This example, the key management information FKBv is, as a multiple encrypted, encrypted management key EEE-FKey v in triplicate, k = Encrypt (IDKey k, EE-FKey v, k) (k = 1, ..., it relates to an example of n). この説明において、上記第２の実施形態と重複する部分の説明については、省略する。 In the description, parts common to those of the second embodiment will be omitted.
第３の実施形態に係るメモリシステムは、図１５のように示される。 Memory system according to the third embodiment is as shown in Figure 15.
図中の破線で示すように、本例では、ＮＡＮＤ型フラッシュメモリ１０が暗号化部（Encrypt）１０１を備えておらず、ホスト装置２もこれに対応する復号部（Decrypt）２０１を備えていない点で、上記第２の実施形態と相違する。 As shown by the broken line in the figure, in this example, NAND-type flash memory 10 is not provided with an encryption unit (Encrypt) 101, does not have the decoding unit (Decrypt) 201 corresponding thereto is also the host apparatus 2 in point, it differs from the second embodiment.
このように、メモリシステムが、暗号化部１０１および復号部２０１を備えていないため、処理時間を高速化できる点で、有利である。 Thus, the memory system, since that does not have an encryption unit 101 and the decoding unit 201, in that it can speed up the processing time, it is advantageous.
第３の実施形態に係るメモリシステムの認証フローは、図１６のように示される。 Authentication flow of the memory system according to the third embodiment is as shown in FIG. 16.
図示するように、本例では、メモリシステムが、暗号化部１０１および復号部２０１を備えていないため、ステップＳ２４、Ｓ２５が不要となっている。 As shown, in this example, the memory system, since that does not have an encryption unit 101 and the decoding unit 201, step S24, S25 are not needed.
上記のように、第３の実施形態に係るホスト装置、半導体記憶装置、およびその認証方法によれば、少なくとも上記（１）乃至（５）と同様の効果が得られる。 As described above, the host apparatus according to the third embodiment, a semiconductor memory device, and according to the authentication method, the same effects as those of at least the (1) to (5) is obtained.
さらに、本例では、メモリシステムが、暗号化部１０１および復号部２０１を備えていないため、ステップＳ２４、Ｓ２５を省略とすることができる。 Further, in this embodiment, the memory system, since that does not have an encryption unit 101 and the decoding unit 201, may be omitted the step S24, S25. そのため、認証処理に係る処理時間を低減でき、高速化できる点で有利である。 Therefore, it is possible to reduce the processing time for authentication processing, it can advantageously be faster.
次に、変形例３に係るホスト装置、半導体記憶装置、およびその認証方法について説明する。 Next, the host apparatus according to the third modification, the semiconductor memory device, and its authentication method will be described. 本例は、変形例２と同様にAES暗号を利用して、上記第３の実施形態を実装化する一例である。 This example utilizes the same manner AES encryption and modification 2, an example of implementing the above-described third embodiment.
変形例２に係るメモリシステムは、図１７のように示される。 Memory system according to Modification 2 is as shown in Figure 17.
本例では、AES暗号を利用して、上記第３の実施形態を実装化する一例である。 In this example, using the AES encryption is one example of implementing the above-described third embodiment.
そのため、図示するように、メモリシステムが備える暗号化部、復号部が、上記と同様に、AES暗号を利用したAES処理部（AES_D、AES_E）として実装化されている。 Therefore, as shown, the encryption unit included in the memory system, the decoding unit, similarly to the above, AES processing unit using the AES cipher (AES_D, AES_E) are implemented as. 但し、上記第２の実施形態と同様に、暗号化部１０１および復号部２０１を備えていないため、それらについては、AES暗号を利用したAES処理部として実装化されていない。 However, as in the second embodiment, since having no encryption section 101 and decoding section 201, for they are not implemented as the AES processing section using the AES cipher.
変形例３に係る認証フローは、図１８のように示される。 Authentication flow according to the third modification is as shown in Figure 18.
図示するように、本例では、ステップ群ＳＴ３において、AES暗号を利用するものである。 As shown, in this example, in the group of steps ST3, it is to utilize the AES cipher. 同様に、暗号化部１０１および復号部２０１を備えていないため、ステップＳ２４、Ｓ２５を省略することができる。 Similarly, having no encryption section 101 and decoding section 201, it is possible to omit the step S24, S25.
本例に係る鍵管理情報FKB(Family Key Block)については、上記図１４で示した変形例２に係る鍵管理情報FKBと同様である。 For key management information according to the present embodiment FKB (Family Key Block) is the same as the key management information FKB according to Modification 2 shown in FIG 14. そのため、詳細な説明については、省略する。 Therefore, the detailed description is omitted.
上記のように、変形例３に係るホスト装置、半導体記憶装置、およびその認証方法によれば、少なくとも上記（１）乃至（５）と同様の効果が得られる。 As described above, the host apparatus according to the third modification, the semiconductor memory device, and according to the authentication method, the same effects as those of at least the (1) to (5) is obtained. さらに、本例のように、必要に応じて、AES暗号を利用することが可能である。 Furthermore, as in this embodiment, if necessary, it is possible to use the AES cipher.
次に、上記の秘密情報やFKBの書き込みについて、第４の実施形態として説明する。 Next, the writing of the secret information and FKB, be described as a fourth embodiment.
ここでは、上記第１の実施形態に係る秘密情報やFKBを書き込む場合を一例に挙げる。 Here, the case of writing the secret information and FKB according to the first embodiment as an example. 以下の説明において、上記第１の実施形態と重複する部分の説明については、省略する。 In the following description, description of parts overlapping the first embodiment will be omitted.
まず、図１９を用い、例えば、ＮＡＮＤ型フラッシュメモリ１０の製造時等に秘密情報や鍵管理情報FKBを書き込む場合について説明する。 First, referring to FIG. 19, for example, the case where during manufacture of the NAND flash memory 10 writes secret information and key management information FKB.
図示するように、ライセンス管理者（Licensing Administrator）４０は、以下のデータを生成する：FKBv (v=1,…,n)、FKey v (v=1,…,n)、 v (v=1,…,n)、 およびNKey i 、 i。 As shown, the license manager (Licensing Administrator) 40 generates the following data: FKBv (v = 1, ... , n), FKey v (v = 1, ..., n), v (v = 1 , ..., n), and NKey i, i. なお、前述した通り、FKBvは、FKey vを暗号化したものである。 Incidentally, as described above, FKBv is obtained by encrypting the FKey v. また、vは複数の値であっても良い。 In addition, v may be a plurality of values. 例えば、vとして1,2,3の３つの値をライセンス管理者４０が生成する場合、ライセンス管理者４０は、生成したvに対応させる形で、(FKB1, FKey 1 ), (FKB2, FKey 2 ), (FKB3, FKey 3 )を生成する。 For example, if v three values of 1, 2, 3 license administrator 40 as to produce, the license manager 40 in the form which corresponds to the generated v, (FKB1, FKey 1) , (FKB2, FKey 2 ), to produce a (FKB3, FKey 3).
続いて、ライセンス管理者４０は、生成したデータの内、FKey v (v=1,…,n)、 v (v=1,…,n)、 NKey i 、 iをメモリ製造者３０に渡す。 Then, the license manager 40 of the generated data, FKey v (v = 1, ..., n), v (v = 1, ..., n), NKey i, and passes i the memory vendor 30. これらのデータを渡す際には、例えば、ライセンス管理者４０は、予めメモリ製造者３０の公開鍵を入手しておき、データを当該公開鍵を用いて暗号化した上でメモリ製造者３０に送信する等といった、安全な手段を用いる。 When passing these data transmission, for example, the license manager 40 in advance to obtain the public key in advance memory vendor 30, the data in the memory vendor 30 on which was encrypted using the public key such like to use a secure means.
メモリ製造者（Memory Vender）３０は、上記ＮＡＮＤ型フラッシュメモリ１０に加え、ライセンス管理者４０から渡されたFKBv (v=1,…,n)等のデータ３１を保持し、選択部３２、３３、生成部３４、暗号化部３５を備える。 Memory manufacturers (Memory Vender) 30 is the addition to the NAND flash memory 10, FKBv passed from the license manager 40 (v = 1, ..., n) holds data 31 such as, the selection unit 32, 33 comprises generating section 34, the encryption unit 35.
上記構成により、データ３１を受け取ったメモリ製造者３０は、vの中から一つの値を選択部３２により選択し、当該vの値をＮＡＮＤ型フラッシュメモリ１０のROM area１１−３へインデックス情報v（index of FKey）として書き込む。 With the above structure, memory vendor 30 receives data 31, v selects one of the values ​​by the selection unit 32 from the index information v the value of the v to ROM Area11-3 of the NAND flash memory 10 ( index of FKey) is written as.
また、メモリ製造者３０は、インデックス情報i（index of NKey）の値をＮＡＮＤ型フラッシュメモリ１０のRead/Write area１１−３へ、NKey iの値をHidden area１１−２へそれぞれ書き込む。 In addition, the memory vendor 30, the value of the index information i (index of NKey) to Read / Write area11-3 of NAND-type flash memory 10, and writes each the value of NKey i to Hidden area11-2.
メモリ製造者３０は、生成部（SecretID Generator）３４において秘密識別情報SecretIDを生成する。 Memory vendor 30 generates secret identification information SecretID the generator (SecretID Generator) 34. さらに、選択部３２は、前記選択したvに対応するFKey vを選択する。 Further, the selection unit 32 selects the FKey v corresponding to the selected v. メモリ製造者３０は、選択したFKey vを用いて、生成したSecretIDを暗号化し、暗号化された秘密識別情報E-SecretIDを生成する。 Memory vendor 30, using a FKey v selected, the generated SecretID encrypted, to generate the secret identification information E-SecretID encrypted.
さらに、メモリ製造者３０は、秘密識別情報SecretIDの値をＮＡＮＤ型フラッシュメモリ１０のHidden area１１−２へ、暗号化された秘密識別情報E-SecretIDの値をROM area１１−３へそれぞれ書き込む。 Further, the memory vendor 30, the value of the secret identification information SecretID to Hidden Area11-2 the NAND type flash memory 10, and writes each encrypted value of the secret identification information E-SecretID to ROM area11-3.
以上の動作により、ＮＡＮＤ型フラッシュメモリ１０の製造時等に所定の秘密情報やFKBを書き込むことができる。 By the above operation, it is possible to write predetermined secret information and FKB during manufacture of the NAND flash memory 10. なお、上記各値を書き込む順番は、暗号化された秘密識別情報E-SecretIDは、暗号化処理しないと得られない値であるため、暗号部３５による上記暗号化処理後となる。 The order of writing the respective value, the secret identification information E-SecretID encrypted are the Never value obtained with no encryption processing, the post above encryption processing by the encryption unit 35. しかし、それ以外の書き込み動作の順序について制約はなく、上述の例以外の順番で書き込んでも良い。 However, no restriction about the order of the other write operation, may be written in the order other than the above example.
さらに、メモリ製造者３０は、書き込み処理を終えたＮＡＮＤ型フラッシュメモリ１０をカード製造者（Card Vendor）に渡す。 Further, the memory vendor 30, passes the NAND type flash memory 10 which has finished the writing process to the card manufacturer (Card Vendor).
このように、本例では、インデックス情報v（index of FKey）等が、ＮＡＮＤ型フラッシュメモリ１０にあらかじめ書き込まれた状態とすることができる。 Thus, in this embodiment, the index information v (index of FKey) etc., can be pre-written state NAND type flash memory 10.
次に、図２０を用い、FKBをカード製造者５０が書き込む場合について説明する。 Next, referring to FIG. 20, a description will be given of a case of writing the card manufacturer 50 and FKB.
カード製造者（Card Vendor）５０は、上記メモリ製造者３０から上記所定の情報v等が書き込まれたＮＡＮＤ型フラッシュメモリ１０を受け取る。 Card vendor (Card Vendor) 50 receives the NAND flash memory 10 in which the predetermined information v and the like written from the memory vendor 30. そして、例えばSD（登録商標）カード等の様に、そのＮＡＮＤ型フラッシュメモリ１０を制御するコントローラ１９を結合させ、一般ユーザ等向けのストレージメディア（ここでは、Card）５５を製造する。 Then, for example, SD as such (registered trademark) card, the controller 19 that controls the NAND type flash memory 10 is coupled, (in this case, Card) storage media general users such as for the production of 55.
カード製造者５０は、上記ストレージメディア（Card）５５に加え、ライセンス管理者４０から受け取るデータ（FKBv）５１、選択部５２を備える。 Card manufacturer 50, in addition to the storage media (Card) 55, data (FKBv) 51 received from the license manager 40, a selection unit 52.
カード製造者５０が鍵管理情報FKBvを書き込む処理については、次の通りである。 For processing the card vendor 50 writes the key management information FKBv is as follows.
まず、カード製造者５０は、鍵管理情報FKBvをライセンス管理者からデータ５１として受け取る。 First, the card vendor 50 receives as data 51 to the key management information FKBv from the license manager. この際、データ５１の受け渡しには、上述した安全な手段を用いる。 At this time, the transfer of data 51, using a secure means described above.
そして、カード製造者５０は、（コントローラ１９を介して）ＮＡＮＤ型フラッシュメモリ１０のROM area１１−３に記録されるインデックス情報vの値をデータキャッシュ１２Ｃ等に読み出す。 Then, the card vendor 50 reads the value of the index information v recorded in ROM Area11-3 of (controller 19 via a) NAND type flash memory 10 to the data cache 12C or the like.
続いて、カード製造者５０は、読み出したインデックス情報vの値に対応する鍵管理情報FKBvを選択部５２により選択し、（コントローラ１９を介して）ＮＡＮＤ型フラッシュメモリ１０のRead/Write area１１−１に選択した鍵管理情報FKBvとして書き込む。 Subsequently, the card manufacturer 50 selected by the selection unit 52 to the key management information FKBv corresponding to the value of the read index information v, (via the controller 19) NAND type flash memory 10 Read / Write area11-1 writing as the key management information FKBv that was selected.
暗号化FKey束（FKB）を後から書き込き込む場合について、説明する。 For if you burn them writes from after the encryption FKey pack (FKB), it will be explained.
この処理は、暗号化FKey束（FKB）が、ＮＡＮＤ型フラッシュメモリ１０の製造時に書き込まれる場合等には、特に必要のない処理である。 This process is encrypted FKey bundle (FKB) is, in a case like that are written at the time of manufacture of the NAND flash memory 10, in particular unnecessary processing. しかし、ＮＡＮＤ型フラッシュメモリ１０とコントローラ１９などが結合されて、例えば、SD（登録商標）カードなどのストレージメディア製品として一般ユーザ入手し、カード利用時に市場において後から書き込まれる場合などには、必要となるFKBの書き込み処理に関するものである。 However, is such as NAND type flash memory 10 and controller 19 is coupled, for example, a general user to obtain as a storage media products, such as SD (TM) card, such as when written later in the market at the time of card use is required it relates writing process of FKB to be.
図２１では、上記のように鍵管理情報FKBが未記録のストレージメディア（Card）５５に記録されたデータの場合の状態を示している。 In Figure 21, the key management information FKB as described above shows a state where the data recorded in the unrecorded storage media (Card) 55.
図示するように、ＮＡＮＤ型フラッシュメモリ１０は、秘密情報NKey iと秘密識別情報SecretIDとが秘匿領域１１−２に記録される。 As illustrated, NAND-type flash memory 10, and the secret information NKey i and secret identification information SecretID is recorded in the hidden area 11-2. 鍵管理情報FKBを特定するために必要となるインデックス情報vとインデックス情報vで指定されたFKey vによって暗号化されたSecretID（E-SecretID）とがROM領域１１−３に記録される。 Encrypted SecretID and (E-SecretID) is recorded in the ROM area 11-3 by the index information v and index information v specified in the FKey v needed to identify the key management information FKB. 前記秘密情報NKey iを特定するために必要なインデックス情報iが読み書き可能領域に書き込まれた状態である。 Wherein a state of index information i is written in the read-write area necessary to identify the secret information NKey i. しかしながら、鍵管理情報FKBは、ＮＡＮＤ型フラッシュメモリ１０に、まだ書き込まれていない。 However, the key management information FKB is, the NAND-type flash memory 10, have not yet been written.
次に、上記のように鍵管理情報FKBが未記録状態のストレージメディア５５に、サーバからFKBをダウンロードして記録する場合について、図２２を用いて説明する。 Next, the key management information FKB as described above in the storage medium 55 in an unrecorded state, a case of downloading and recording FKB from the server will be described with reference to FIG. 22.
図示するように、この場合には、ＮＡＮＤ型フラッシュメモリ１０に、必要に応じてデータキャッシュ１２が配置される。 As illustrated, in this case, the NAND-type flash memory 10, data cache 12 is arranged as needed.
本例に係るサーバ７０は、FKBデータベース（FKB v (v=1、…、n) ）７１およびvからFKBvを選択するための選択部７２を備える。 Server 70 according to this embodiment includes FKB database (FKB v (v = 1, ..., n)) a selection unit 72 for selecting a FKBv from 71 and v.
また、サーバ７０とメモリシステム（ＮＡＮＤ型フラッシュメモリ１０、コントローラ１９、ホスト装置２０）とは、インターネット６０を介して電気的に通信接続される。 The server 70 and the memory system (NAND type flash memory 10, controller 19, the host device 20) and are electrically connected for communication via the Internet 60.
なお、ホスト装置２０は、FKBの新規書き込みが必要かどうかを判定し、必要に応じてFKBをサーバに要求する機能を備える。 The host apparatus 20 determines whether it is necessary to newly write FKB, a function of requesting the FKB to servers as needed.
次に、図２３に沿って、暗号化FKeyID束（FKB）をサーバ７０からダウンロードしてＮＡＮＤ型フラッシュメモリ１０に書き込むフローについて説明する。 Then, along with FIG. 23, the flow will be described for writing in the NAND flash memory 10 download encrypted FKeyID bundle (FKB) from the server 70.
図示するように、まず、ホスト装置２０が、FKBのダウンロードが必要と判定したことにより、FKB書き込みが開始（Start）され、ホスト装置２０はサーバ７０に対してFKB要求を出す。 As shown, first, the host apparatus 20, by the determination requires downloading FKB, FKB writing is started (Start), the host device 20 issues an FKB request to the server 70.
続いて、サーバ７０は、ＮＡＮＤ型フラッシュメモリ１０に対して、FKey vを特定するために必要となるインデックス情報vを要求する。 Subsequently, the server 70, to the NAND-type flash memory 10, and requests the index information v needed to identify FKey v.
続いて、ＮＡＮＤ型フラッシュメモリ１０は、ROM領域１１−３からvを読み出し、vをサーバに送出する。 Then, NAND-type flash memory 10 reads the v from the ROM region 11-3, and sends v to the server.
続いて、サーバ７０は、受信したvに対応するFKBvをFKBデータベース７１の中から選択する。 Subsequently, the server 70 selects the FKBv corresponding to the received v from the FKB database 71.
続いて、サーバ７０は、選択したFKBvをＮＡＮＤ型フラッシュメモリに送出する。 Subsequently, the server 70 sends the FKBv selected NAND flash memory.
続いて、ＮＡＮＤ型フラッシュメモリ１０は、受信したFKBvを読み書き可能領域１１−１に書き込み、記録する。 Then, NAND-type flash memory 10, writes the FKBv received the read-write area 11-1 is recorded.
以上の動作により、第１の実施形態に係る暗号化FKey束（FKB）ダウンロードするフローを終了する（End）。 With the above operation, the flow is completed to encrypt FKey bundle (FKB) downloading of the first embodiment (End).
本例に係る鍵管理情報FKB(Family Key Block)については、その構成方法には依存しないため、上記第１〜第３の実施形態の何れのFKBでも利用可能である。 For key management information FKB according to the present embodiment (Family Key Block) is in its configuration method does not depend and is available any of FKB of the first to third embodiments. そのため、詳細な説明については、省略する。 Therefore, the detailed description is omitted.
第４の実施形態に係る構成及び動作によれば、少なくとも上記（１）乃至（５）と同様の作用を得ることができる。 According to the configuration and operation according to the fourth embodiment, it is possible to obtain the same effect as at least the (1) to (5). さらに、本例によれば、後からFKBを書き込む場合においても、必要に応じて本例を適用することが可能であり、下記（６）に示す効果が得られる。 Further, according to this embodiment, even when writing FKB later, it is possible to apply the present embodiment as needed, effects can be obtained in the following (6).
（６）製造工程の簡略化、製造コストの低減化に対して有利である。 (6) simplification of the manufacturing process, it is advantageous for reducing the manufacturing cost.
本例に係るＮＡＮＤ型フラッシュメモリ１０は、読み書き可能領域１１−１に、その用途に応じてＮＡＮＤ型フラッシュメモリ１０ごとに固有（ユニーク），或いは製造ロット（lot）単位など，複数のＮＡＮＤ型フラッシュメモリ１０に共通に付される鍵管理情報（FKBv）を備え、ROM領域にＮＡＮＤ型フラッシュメモリ１０ごとに固有に（ユニークに）付される暗号化された秘密識別情報（E-SecretID）を備える。 NAND-type flash memory 10 according to the present embodiment, the read-write area 11-1, intrinsic (unique) for each NAND-type flash memory 10 depending on the application, or the like production lot (lot) units, a plurality of NAND-type flash comprising a key management information to be subjected in common to the memory 10 (FKBv), provided uniquely to each NAND type flash memory 10 to the ROM region secret identification information (unique) encrypted subjected (E-SecretID) .
製造ロット単位で鍵管理情報（FKBv）を共通化させた場合には、ＮＡＮＤ型フラッシュメモリ１０ごとに記録しなければならない固有（ユニーク）な情報を、暗号化された秘密識別情報（E-SecretID）の様にデータサイズの小さいデータだけに減らすことができる。 If the key management information (FKBv) is shared by production lot unit, the intrinsic (unique) information which must be recorded for each NAND-type flash memory 10, the secret identification information (E-SecretID encrypted ) can be reduced only to a small data of the data size as of. 換言すれば、共通に付される鍵管理情報（FKBv）と固有の暗号化秘密識別情報（E-SecretID）とに分け、２段階に暗号化することにより、ＮＡＮＤ型フラッシュメモリ１０に書き込むべき固有の暗号化秘密識別情報（E-SecretID）のデータサイズを抑えることができるものである。 In other words, divided into key management information to be added to common with (FKBv) a unique encrypted secret identification information (E-SecretID), by encrypting the two stages, to be written into the NAND-type flash memory 10 unique in which it is possible to suppress the data size of the encrypted secret identification information (E-SecretID).
例えば、上記図１９で示したように、ＮＡＮＤ型フラッシュメモリの製造時等において、メモリ製造者３０は、ライセンス管理者４０から受け取ったＮＡＮＤ型フラッシュメモリ１０ごとに固有な情報（E-SecretID）を書き込む。 For example, as shown in FIG 19, in the manufacture or the like of the NAND type flash memory, memory vendor 30, information specific to each NAND type flash memory 10 received from the license manager 40 (E-SecretID) writes.
そして、ＮＡＮＤ型フラッシュメモリ１０に共通に付される暗号化された鍵管理情報（FKBv）については、カード製造者５０等がＮＡＮＤ型フラッシュメモリ１０に共通に書き込むことができる。 Then, the encrypted key management information are subjected in common to the NAND flash memory 10 (FKBv) can be written card manufacturer 50 or the like in common to the NAND flash memory 10. 例えば、上記図２０で示したように、カード製造者５０が、上記ライセンス管理者４０から受け取ったＮＡＮＤ型フラッシュメモリ１０ごとに共通な鍵管理情報（FKBv）を書き込む。 For example, as shown in FIG 20, the card manufacturer 50 writes the common key management information (FKBv) for each NAND type flash memory 10 received from the license manager 40. そのため、メモリ製造者３０が書き込まなければならないＮＡＮＤ型フラッシュメモリ１０ごとに固有（ユニーク）なデータのサイズを低減することが可能となる。 Therefore, it is possible to reduce the size of the data unique (unique) for each NAND-type flash memory 10 to memory vendor 30 must be written.
ここで、ＮＡＮＤ型フラッシュメモリ１０の製造時等に、ＮＡＮＤ型フラッシュメモリ１０に固有かつデータサイズの大きい情報を書き込む場合、製造工程が煩雑となり、製造時間が長期化し、製造コストが増大してしまう。 Here, during manufacture of the NAND flash memory 10, when writing to the NAND flash memory 10 large information unique and the data size, the manufacturing process becomes complicated, the manufacturing time will be prolonged, the production cost is increased . しかしながら、本例に係る構成および方法によれば、共通に付される鍵管理情報（FKBv）と固有の暗号化秘密識別情報（E-SecretID）とに分けて２段階に暗号化することにより、このような煩雑な製造工程は不要となるため、製造工程を簡略化でき、製造コストを低減できる点で有利である。 However, according to the configuration and the method according to the present embodiment, by encrypting in two stages divided into key management information to be added to common with (FKBv) unique encrypted secret identification information (E-SecretID), since such a complicated manufacturing process is unnecessary, it can simplify the manufacturing process is advantageous in that the manufacturing cost can be reduced. また、製造時間を短縮化できるため、消費電力を低減できる点でもメリットがある。 Further, since it shortens the production time is advantageous also in that it can reduce power consumption.
また、ホスト装置２０側においても、FKeyを用いてＮＡＮＤ型フラッシュメモリに固有な値であるSecretIDを暗号化してE-SecretIDを生成し、さらに、IDKey kを用いてFKeyを暗号化してFKBを生成するという構成を取ることにより、ＮＡＮＤ型フラッシュメモリ１０と同様のメリットを享受することが可能となる。 Also, generating a FKB even in the host device 20 side, generate an E-SecretID encrypts SecretID a unique value to the NAND flash memory using the FKey, further encrypts FKey with IDKey k by taking the configuration that, it is possible to receive the same benefits as the NAND-type flash memory 10.
次に、第５の実施形態に係るホスト装置、半導体記憶装置、およびその認証方法について説明する。 Next, the host apparatus according to the fifth embodiment, a semiconductor memory device, and its authentication method will be described. 本例は、SecretIDを公開鍵暗号で暗号化する一例に関するものである。 This example relates to an example of encrypting a public key encryption to SecretID. この説明において、上記第１の実施形態と重複する部分の説明については、省略する。 In the description, parts common to those of the first embodiment will be omitted.
ここで、上記の第１の実施形態等では、FKey vを暗号化鍵としてSecretIDを共通鍵暗号を用いて暗号化している。 Here, in the such as the first embodiment described above, are encrypted using the common key cryptography to SecretID the FKey v as an encryption key. 第５の実施形態では、SecretIDを、公開鍵暗号を用いて暗号化する。 In the fifth embodiment, the SecretID, is encrypted using the public key encryption. 暗号化の詳細については、図２６を用いて、後述する。 For more information on encryption, using FIG. 26, described later.
第５の実施形態に係るメモリシステムは、図２４のように示される。 Memory system according to the fifth embodiment is as shown in Figure 24.
図示するように、本例に係るメモリシステムは、次の点で、上記第１の実施形態と相違する。 As shown, memory system according to the present embodiment, in the following points, it differs from the first embodiment.
まず、ホスト装置２０は、メモリ２３にホスト秘密情報HSecretを記憶する。 First, the host device 20 stores a host secret information HSecret in the memory 23. また、ホスト装置２０は、秘密鍵生成部（Secret-Key Generate）２０５、及び公開鍵暗号方式の復号部（Public-Key Decrypt）２０６を更に備える。 The host device 20 further includes a secret key generation unit (Secret-Key Generate) 205, and the decoding unit of the public key cryptosystem (Public-Key Decrypt) 206.
秘密鍵生成部２０５は、復号部２０１から出力される鍵情報FKey v,k及びホスト秘密情報HSecretを用いて、秘密鍵情報SecKey vを生成する。 The secret key generating unit 205, key information FKey v outputted from the decoding unit 201, using the k and host secret information HSecret, generates the secret key information SecKey v.
復号部２０６は、秘密鍵情報SecKey vを用い、公開鍵暗号方式にて、暗号化された秘密識別情報E-SecretIDを復号することにより、秘密識別情報SecretIDを得る。 Decoding unit 206, using the private key information SecKey v, at the public key encryption method, by decoding the secret identification information E-SecretID encrypted, the secret identification information SecretID.
これらの動作の詳細については、次の認証フローにおいて合わせて説明する。 For more information about these operations will be described in conjunction in the next authentication flow.
第５の実施形態に係るメモリシステムの認証フローは、図２５のように示される。 Authentication flow of the memory system according to the fifth embodiment is as shown in Figure 25.
図示するように、本例では、Step Ｓ２０５、Ｓ２０６を更に行う点で、上記第１の実施形態と相違する。 As shown, in this example, Step S205, S206 in that further performed, it differs from the first embodiment.
ホスト装置２０は、秘密鍵生成部２０５において、得られた管理鍵FKey v,k及びホスト秘密情報HSecretを用いて、公開鍵情報SecKey vを生成する。 The host device 20, the secret key generating unit 205, the resulting management key FKey v, using k and host secret information HSecret, generates the public key information SecKey v. ここで、秘密鍵生成部２０５での具体的な処理は、次の式（Ｉ）のように示される。 Here, specific processing of the secret key generation unit 205 is shown as the following formula (I).
ここで、XORはビット毎の排他的論理和を表す。 Here, XOR indicates an exclusive OR for each bit. なお、関数Fについて、上記の式（Ｉ）に限らず、FKey v,k及びHSecretから公開鍵PubKey vに対応する秘密鍵SecKey vを生成できる関数ならば任意の関数をFとして定めることができる。 As for the function F, not limited to the above formula (I), FKey v, any function if the function capable of generating a secret key SecKey v corresponding from k and HSecret public key PubKey v can be defined as F .
続いて、ホスト装置２０は、公開鍵暗号方式の復号部２０６において、生成した秘密鍵情報SecKey vを用いて、ＮＡＮＤ型フラッシュメモリ１０から読み出した暗号化された秘密識別情報E-SecretIDを復号することにより、秘密識別情報SecretIDを得る。 Subsequently, the host device 20, the decoding unit 206 of the public key encryption method, using the generated secret key information SecKey v, to decode the secret identification information E-SecretID encrypted read from the NAND flash memory 10 it gives the secret identification information SecretID.
次に、図２６を用い、例えば、ＮＡＮＤ型フラッシュメモリ１０の製造時等に秘密情報や鍵管理情報FKBを書き込む場合について説明する。 Next, referring to FIG. 26, for example, the case where during manufacture of the NAND flash memory 10 writes secret information and key management information FKB.
図示するように、ライセンス管理者（Licensing Administrator）４０は、上記データFKBv (v=1,…,n)、FKey v (v=1,…,n)、 v (v=1,…,n)、 NKey i 、 iに加え、公開鍵情報PubKeyv (v=1,…,n)、秘密鍵情報SecKeyv (v=1,…,n)、およびホスト秘密情報HSecretを生成する点で、上記実施形態と相違する。 As shown, the license manager (Licensing Administrator) 40 is the data FKBv (v = 1, ..., n), FKey v (v = 1, ..., n), v (v = 1, ..., n) , NKey i, in addition to i, public key information PubKeyv (v = 1, ..., n), the secret key information SecKeyv (v = 1, ..., n), and in that it produces a host secret information HSecret, the above-described embodiment and different.
ここで、鍵情報の組(PubKeyv、SecKeyv)は、公開鍵暗号における公開鍵・秘密鍵の組である。 Here, a set of key information (PubKeyv, SecKeyv) is a set of public key and a private key in a public key cryptography. 公開鍵暗号として、例えば、RSA暗号、ElGamal暗号、楕円曲線暗号等、任意の公開鍵暗号を用いることができる。 As a public key cryptography, for example, it can be used RSA encryption, ElGamal encryption, elliptic curve cryptography or the like, any public key encryption. また、ホスト秘密情報HSecretは、ホスト装置２０に与えられる秘密情報である。 The host secret information HSecret is secret information provided to the host device 20.
先にFKey vを生成した後で、上記の式（Ｉ）を満たす秘密鍵SecKey vを定め、さらにこの秘密鍵SecKey vに対応する公開鍵PubKey vを定める。 Previously After generating the FKey v, determine the private key SecKey v satisfying the above formula (I), further defines the public key PubKey v corresponding to this secret key SecKey v. また、先に鍵情報の組(PubKey v , SecKey v )を生成した後に、式（Ｉ）を満たすFKey v,kを定めても良い。 Also, ahead of the key information set (PubKey v, SecKey v) after generating, FKey v satisfying formula (I), may be determined to k.
続いて、ライセンス管理者４０は、生成したデータの内、データ３１として公開鍵PubKey v (v=1,…,n)、 v (v=1,…,n)、 NKey i 、 iをメモリ製造者３０に渡す。 Then, the license manager 40, of the generated data, published as data 31 key PubKey v (v = 1, ... , n), v (v = 1, ..., n), NKey i, the i-memory production pass to the person 30.
データ３１を受け取ったメモリ製造者３０は、vの中から一つの値を選択部３２により選択し、生成部（SecretID Generator）３４において秘密識別情報SecretIDを生成する。 Memory manufacturers 30 that has received the data 31, v selects one of the values ​​by the selection unit 32 from among, for generating a secret identification information SecretID the generator (SecretID Generator) 34. さらに、選択部３２は、前記選択したvに対応する公開鍵PubKey vを選択する。 Further, the selection unit 32 selects the public key PubKey v corresponding to the selected v.
メモリ製造者３０は、選択した公開鍵PubKey vを用いて、生成したSecretIDを公開鍵暗号方式により暗号化し、暗号化された秘密識別情報E-SecretIDを生成する。 Memory vendor 30, using a public key PubKey v selected, the generated SecretID encrypted with the public key encryption method, generates the secret identification information E-SecretID encrypted.
その他については、上記第４の実施形態と同様である。 Other processes are the same as in the fourth embodiment.
なお、上記の例では、ホスト秘密情報HSecretは、全てのホスト装置に共通である例を挙げたが、例えば、ホスト装置の製造会社毎に異なるホスト秘密情報を用意しても良いし、期間毎に異なるホスト秘密情報を用いても良い。 In the above example, the host secret information HSecret is, an example is common to all of the host device, for example, may be prepared different host secret information for each manufacturer of the host device, each period it may be used for different host secret information to. この場合、管理鍵データ及びそれぞれのホスト秘密情報に対応する公開鍵がそれぞれ生成されることになる。 In this case, the public key corresponding to the management key data and each host secret information is generated, respectively. そのため、図２６において、複数の暗号化された秘密識別情報がＮＡＮＤ型フラッシュメモリに書き込まれる。 Therefore, in FIG. 26, the secret identification information a plurality of encryption is written in the NAND-type flash memory.
上記のように、第５の実施形態に係るホスト装置、半導体記憶装置、およびその認証方法によれば、少なくとも上記（１）乃至（５）と同様の効果が得られる。 As described above, the host apparatus according to the fifth embodiment, a semiconductor memory device, and according to the authentication method, the same effects as those of at least the (1) to (5) is obtained.
上記のように、第５の実施形態では、秘密識別情報SecretIDを、公開鍵暗号を用いた公開鍵PubKey vにより暗号化する。 As described above, in the fifth embodiment, the secret identification information SecretID, encrypts the public key PubKey v using public key cryptography. このように、必要に応じ、本例を適用することが可能である。 Thus, if necessary, it is possible to apply the present embodiment. なお、第５の実施形態は、第１の実施形態に限らず、上記の各実施形態および変形例にも適用可能であることは勿論である。 Incidentally, the fifth embodiment is not limited to the first embodiment, it is of course also applicable to the embodiments and modifications described above.
次に、上記ＮＡＮＤ型フラッシュメモリ１０の構成例等について、第６の実施形態として説明する。 Next, the configuration examples and the like of the NAND type flash memory 10 will be described as a sixth embodiment. 以下の説明において、上記第１の実施形態と重複する部分の説明については、省略する。 In the following description, description of parts overlapping the first embodiment will be omitted.
図２７を用い、第６の実施形態に係るＮＡＮＤ型フラッシュメモリ１０の全体構成例について説明する。 Reference to Figure 27, illustrating the overall configuration example of a NAND type flash memory 10 according to the sixth embodiment.
図示するように、ＮＡＮＤ型フラッシュメモリ１０は、メモリセルアレイ１１及びその周辺回路を備える。 As illustrated, NAND-type flash memory 10 includes a memory cell array 11 and its peripheral circuits.
メモリセルアレイ１１は、複数のブロックBLOCK1- BLOCKnを含む。 Memory cell array 11 includes a plurality of blocks BLOCK1- BLOCKn. 各ブロックの構成は、図２８において後述するが、複数のメモリセルトランジスタＭＣ、ワード線ＷＬ、ビット線ＢＬ等を含むものである。 Structure of each block will be described later in FIG. 28, is intended to include a plurality of memory cell transistors MC, the word line WL, the bit line BL and the like. 各ブロック中のメモリセルトランジスタＭＣ中のデータは、一括して消去される。 Data of the memory cell transistors in MC in each block are collectively erased. メモリセルトランジスタ単位及びページ単位でのデータ消去はできない。 Data can not be erased in the memory cell transistor units and page-by-page basis. すなわち、個々のブロックが最小の消去単位となる。 That is, each block is the smallest unit of erase.
周辺回路は、センスアンプ７７、入出力制御回路８４、ロジックコントロール回路８５等を備える。 Peripheral circuit, a sense amplifier 77, input-output control circuit 84 includes a logic control circuit 85, and the like.
センスアンプ７７は、ビット線ＢＬを介してメモリセルアレイ１１内のメモリセル（メモリセルトランジスタＭＣ）のデータを読み出し、ビット線ＢＬを介してメモリセルアレイ２内のメモリセルの状態を検出する。 The sense amplifier 77 reads the data of the memory cells in the memory cell array 11 (memory cell transistors MC) through a bit line BL, and detects the state of the memory cells in the memory cell array 2 via the bit line BL.
データキャッシュ１２（１２Ａ−１２Ｃ）は、センスアンプ７７から読み出されたデータまたはセンスアンプ７７に供給されるデータを一時的に保持する。 Data cache 12 (12A-12C) temporarily holds data supplied to the data or the sense amplifier 77 is read out from the sense amplifier 77.
カラムデコーダ７５は、ＮＡＮＤ型フラッシュメモリ１０の外部からＩＯ端子を介して供給されたアドレス信号に基づいて、特定のビット線ＢＬ、センスアンプ等を選択する。 Column decoder 75, based on the outside from the supplied via the IO terminal address signals of the NAND flash memory 10, selects particular bit lines BL, the sense amplifier and the like.
カラムアドレスバッファ７４は、アドレス信号を一時的に保持し、カラムデコーダ７５に供給する。 Column address buffer 74 temporarily holds an address signal supplied to the column decoder 75.
ロウデコーダ７８は、データ読み出し、書き込み、あるいは消去に必要な種々の電圧を電圧生成回路８６から受け取り、そのような電圧をアドレス信号に基づいて特定のワード線ＷＬに印加する。 The row decoder 78, read data, it receives write, or a variety of voltage required to erase from the voltage generating circuit 86, is applied to the particular word line WL based on such voltage to the address signal.
ロウアドレスバッファデコーダ７９は、アドレス信号を一時的に保持し、ロウデコーダ７８に供給する。 Row address buffer decoder 79 temporarily holds an address signal supplied to the row decoder 78.
電圧生成回路８６は、基準電源電圧ＶＳＳ、ＶＣＣ、電圧ＶＳＳＱ、ＶＣＣＱ等を受け取り、これらからデータ書き込み、読み出し、消去等に必要な電圧を生成する。 Voltage generation circuit 86 receives the reference power supply voltage VSS, VCC, voltage VSSQ, the VCCQ like, data from these write, read, and generates a voltage required for erasing and the like.
入出力制御回路８４は、ＩＯ端子を介して、ＮＡＮＤ型フラッシュメモリ１０の動作を制御する種々のコマンド、アドレス信号、書き込みデータを受け取り、また読み出しデータを出力する。 Output control circuit 84 via the IO terminal, various commands, address signal for controlling the operation of the NAND flash memory 10 receives the write data, and outputs the read data. 入出力制御回路８４から出力されたアドレス信号は、アドレスレジスタ８２によってラッチされる。 Address signal output from the output control circuit 84 is latched by the address register 82. ラッチされたアドレス信号は、カラムアドレスバッファ７４及びロウアドレスバッファ７９に供給される。 Latched address signal is supplied to the column address buffer 74 and row address buffer 79. 入出力制御回路８４から出力されたコマンドは、コマンドレジスタ８３によってラッチされる。 Command outputted from the output control circuit 84 is latched by the command register 83. ステータスレジスタ８１は、入出力制御回路１２のための種々のステータスについての値を保持する。 Status register 81 holds the value of the various status for the output control circuit 12.
ＮＡＮＤ型フラッシュメモリ１０は、外部インターフェイス（ＮＡＮＤ Ｉ／Ｆ）として、コマンド、アドレス、データ入出力用のＩＯ端子、動作を制御するための種々の制御信号を外部から受け取る。 NAND-type flash memory 10, an external interface (NAND I / F), receives command and address, IO terminal for data input and output, the various control signals for controlling the operation from the outside. 制御信号には、例えばチップイネーブル／ＣＥ、コマンドラッチイネーブルＣＬＥ、アドレスラッチイネーブルＡＬＥ、リードイネーブルＲＥ及び／ＲＥ、ライトイネーブルＷＥ及び／ＷＥ、ライトプロテクトＷＰ、クロックＤＱＳ、／ＤＱＳが含まれる。 The control signals include, for example, a chip enable / CE, a command latch enable CLE, an address latch enable ALE, read enable RE and / RE, write enable WE and / WE, write protect WP, clock DQS, / DQS is.
これらの制御信号は、対応する端子において受け取られ、ロジック制御回路２１に供給される。 These control signals are received at the corresponding terminal is supplied to the logic control circuit 21. ロジックコントロール回路８５は、制御信号に基づいて、入出力制御回路８４を制御して、端子ＩＯ上の信号をコマンド、アドレス、またはデータとして入出力制御回路８４を介してアドレスレジスタ８２、コマンドレジスタ８３、ページバッファ１２等に到達することを許可したり禁止したりする。 Logic control circuit 85 based on the control signal, and controls the output control circuit 84, command signal on terminal IO, address or via the input-output control circuit 84 as the data address register 82, a command register 83 , or to prohibit or allow it to reach the page buffer 12, and the like. また、ロジックコントロール回路８５は、コマンドレジスタ８３から、ラッチされたコマンドを受け取る。 Moreover, the logic control circuit 85, the command register 83 receives the latched command.
制御信号のうち、ＷＥ端子はデータ入力用クロックを供給し、ＲＥ端子はデータ出力用クロックを供給し、ＤＱＳ端子はデータ入出力用クロックを伝送し、ＣＬＥ端子はデータ入力をコマンドとして入力するイネーブル用であり、ＡＬＥ端子はデータ入力をアドレスとして入力するイネーブル用であり、ＣＥ端子はデータ入出力等全般の機能を有効化するためである。 Among the control signals, enable WE terminal supplies the data input clock, RE pin supplies the data output clock, DQS terminal may transmit the data input clock, CLE terminal is for inputting data input as a command a use, ALE terminal is for enabling to input data input as an address, CE terminal is to enable the functions of the data input and output, etc. in general.
また、Ｒ／Ｂ端子はＮＡＮＤ型フラッシュメモリ１０の内部動作状態を示し、ＷＰ端子は誤書き込み防止用の書き込み防止信号を伝送し、Ｖｃｃ／Ｖｓｓ／Ｖｃｃｑ／Ｖｓｓｑ端子等は電力供給用である。 Further, R / B terminal shows the internal operation status of the NAND flash memory 10, WP terminal transmits a write-protect signal for prevent erroneous writing, Vcc / Vss / Vccq / Vssq terminal or the like is used for power supply. また、本実施形態では、高速インターフェースにてデータ伝送を実現する際に利用される端子（Toggle）として、ＲＥ端子、ＷＥ端子、ＤＱＳ端子には、各々相補信号を伝送する／ＲＥ端子、／ＷＥ端子、／ＤＱＳ端子が存在する。 Further, in the present embodiment, as a terminal to be used in implementing data transmission at a high speed interface (Toggle), RE terminal, WE terminal, the DQS terminal, each transmitting complementary signals / RE terminal, / WE terminal, / DQS terminal is present.
ロジックコントロール回路８５は、シーケンス制御回路８８、パラメータレジスタ８９、認証回路１７を備える。 Logic control circuit 85 includes a sequence control circuit 88, a parameter register 89, an authentication circuit 17. ロジック制御回路８５は、また、レディ／ビジー信号（Ｒ／Ｂ）の出力を司る。 Logic control circuit 85 also governs the output of the ready / busy signal (R / B). 具体的には、ロジック制御回路８５は、ＮＡＮＤ型フラッシュメモリ１０がビジー状態の間、ビジー信号を出力する。 Specifically, the logic control circuit 85, NAND-type flash memory 10 during the busy state, outputs a busy signal.
シーケンス制御回路８８は、コマンドレジスタ８３からコマンドを受け取る。 The sequence control circuit 88 receives a command from the command register 83. シーケンス制御回路８８は、受け取ったコマンドに基づいて、コマンドにより指示される処理（データ読み出し、書き込み、消去等）を実行するように、センスアンプ７７、電圧生成回路８６等を制御する。 The sequence control circuit 88, based on the received command, (read data, write, erase, etc.) processing instructed by the command to execute, sense amplifier 77, and controls the voltage generation circuit 86 and the like.
パラメータレジスタ８９は、ロジック制御回路８５の動作を規定する種々の上記制御パラメータ８９０等を保持する。 Parameter register 89 holds various of the control parameter 890 that defines the operation of the logic control circuit 85, and the like. 制御パラメータ８９０は、シーケンス制御回路８８から参照、または更新され、ロジックコントロール回路８５や入出力制御回路８８におけるシーケンスの制御に利用される。 Control parameter 890, see the sequence control circuit 88, or is updated, is used to control the sequence in the logic control circuit 85 and the output control circuit 88.
認証回路１７は、上記生成部１３等を含み、上記の認証に関する処理を行う。 Authentication circuit 17 includes the generator 13, and performs the processing relating to the authentication. 例えば、認証回路１７は、パラメータレジスタに含まれる制御パラメータ８９０の書き換え等の更新も行う。 For example, the authentication circuit 17 also updates the rewrite of the control parameters 890 included in the parameter register. また、認証回路１７は、認証を要求するコマンドを受け取り、メモリセルアレイ１１中の特定のデータを用いて認証のための特定の演算を行い、結果をメモリ１０の外部へ出力する。 The authentication circuit 17 receives a command requesting authentication, performs a specific operation for authentication by using the specific data in the memory cell array 11, and outputs the result to the external memory 10. この一連の動作の実行の過程で、認証回路１７は、必要なデータの読み出し、書き込み等を制御パラメータ８９０の更新を通じて、シーケンス制御回路８８に許可する。 In the course of execution of the series of operations, the authentication circuit 17, the necessary data read through the update of the control parameters 890 such as writing, to allow the sequence control circuit 88.
レディ／ビジー回路（RY/BY）８７は、ロジックコントロール回路８５の制御を受けて、スイッチトランジスタを介して、Ｒ／Ｂ信号をＮＡＮＤ型フラッシュメモリ１０の外部に通知する。 Ready / busy circuit (RY / BY) 87, under the control of logic control circuit 85 via a switch transistor, and notifies the R / B signal to the outside of the NAND flash memory 10.
次に、図２８を用い、メモリセルアレイ１１を構成するブロック（ＢＬＯＣＫ）の構成例について説明する。 Next, referring to FIG. 28, illustrating an example of the configuration of blocks (BLOCK) in the memory cell array 11. ここでは、図２７中のＢＬＯＣＫ１を一例に挙げて説明する。 Here, a description will be given on an example of BLOCK1 in FIG. ここで、上記のように、ブロックＢＬＯＣＫ１中のメモリセルは、一括してデータ消去されるため、ブロックはデータ消去単位である。 Here, as described above, the memory cell in the block BLOCK1, because it is data collectively erased, the block is a data erasure unit.
ブロックＢＬＯＣＫ１は、ワード線方向（ＷＬ方向）に配置される複数のメモリセルユニットＭＵから構成される。 Block BLOCK1 includes a plurality of memory cell units MU arranged in a word line direction (WL direction). メモリセルユニットＭＵは、ＷＬ方向と交差するビット線方向（ＢＬ方向）に配置され、電流経路が直列接続される８個のメモリセルＭＣ０〜ＭＣ７からなるＮＡＮＤストリング（メモリセルストリング）と、ＮＡＮＤストリングの電流経路の一端に接続されるソース側の選択トランジスタＳ１と、ＮＡＮＤストリングの電流経路の他端に接続されるドレイン側の選択トランジスタＳ２とから構成される。 Memory cell unit MU is disposed in the bit line direction (BL direction) intersecting the WL direction, a NAND string of eight memory cells MC0~MC7 whose current paths are connected in series (memory cell string), NAND string the source side of the select transistors S1 connected to one end of the current path, and a drain side select transistor S2 connected to the other end of the current path of the NAND string.
なお、本実施形態では、メモリセルユニットＭＵは、８個のメモリセルＭＣ０〜ＭＣ７から構成されるが、２つ以上のメモリセル、例えば、５６個、３２個等から構成されていればよく、８個に限定されるというものではない。 In the present embodiment, the memory cell unit MU may consists of eight memory cells MC0 to MC7, 2 or more memory cells, for example, 56, if it is composed of 32 or the like, not that it is limited to eight.
ソース側の選択トランジスタＳ１の電流経路の他端はソース線ＳＬに接続される。 The other end of the current path of the source side select transistor S1 is connected to a source line SL. ドレイン側の選択トランジスタＳ２の電流経路の他端は、各メモリセルユニットＭＵに対応してメモリセルユニットＭＵの上方に設けられ、ＢＬ方向に延出するビット線ＢＬに接続される。 The other end of the current path of the drain side select transistor S2 is provided above the memory cell unit MU corresponding to each memory cell unit MU, which are connected to the bit line BL extending in the BL direction.
ワード線ＷＬ０〜ＷＬ７は、ＷＬ方向に延び、ＷＬ方向の複数のメモリセルの制御ゲート電極ＣＧに共通に接続される。 Word lines WL0~WL7 extends in the WL direction are connected in common to the control gate electrode CG of the memory cells in the WL direction. 選択ゲート線ＳＧＳは、ＷＬ方向に延び、ＷＬ方向の複数の選択トランジスタＳ１に共通に接続される。 Selection gate line SGS extends in the WL direction are connected in common to a plurality of select transistors S1 in the WL direction. 選択ゲート線ＳＧＤも、ＷＬ方向に延び、ＷＬ方向の複数の選択トランジスタＳ２に共通に接続される。 Selection gate lines SGD extends in the WL direction are connected in common to a plurality of selection transistors S2 in the WL direction.
また、ワード線ＷＬ０〜ＷＬ７毎にページ（ＰＡＧＥ）が存在する。 In addition, there page (PAGE) is in each word line WL0~WL7. 例えば、図中の破線で囲って示すように、ワード線ＷＬ７には、ページ７（ＰＡＧＥ７）が存在する。 For example, as indicated by a broken-line box in the figure, the word line WL7, there are pages 7 (PAGE7). このページ（ＰＡＧＥ）毎に、データ読み出し動作、データ書き込み動作が行われるため、ページ（ＰＡＧＥ）はデータ読み出し単位であり、データ書き込み単位である。 For each page (PAGE), since the data read operation, the data write operation is performed, page (PAGE) is a data read unit, a data write unit.
以上、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。 Having thus described several embodiments of the present invention, these embodiments have been presented by way of example only, and are not intended to limit the scope of the invention. これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。 Indeed, the novel embodiments described herein may be embodied in other various forms, without departing from the spirit of the invention, various omissions, substitutions, and changes can be made. これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。 Such embodiments and modifications are included in the scope and spirit of the invention, and are included in the invention and the scope of their equivalents are described in the claims.
以下に、本願の出願当初における特許請求の範囲を付記する。 Hereinafter, by appending claims in originally filed application.
前記半導体記憶装置が、前記インデックス鍵（INK）を用いて、前記暗号化された管理鍵情報（E-FKey）を復号して取得する管理鍵情報（FKey）を前記ホスト装置に送信するステップとを具備する認証方法。 A step wherein the semiconductor memory device, by using the index key (INK), to transmit management key information obtained by decrypting the encrypted management key information (E-FKey) a (FKey) to said host device authentication method comprising a.
前記ホスト装置が、前記半導体装置から受信した前記管理鍵情報（FKey）を用いて、読み出した前記暗号化秘密識別情報（E-SecretID）を復号し、秘密識別情報（SecretID）を取得するステップとを具備するに記載の認証方法。 A step of said host device, said using the management key information received from the semiconductor device (FKey), wherein to decrypt the encrypted secret identification information (E-SecretID) read to obtain the secret identification information (SecretID) authentication method according to  comprising a.
前記ホスト装置が、受信した前記一方向性変換データ（Oneway-ID）と、生成した前記一方向性変換データ（Oneway-ID'）とが一致するか否かを判定するステップとを更に具備するに記載の認証方法。 It said host device further includes a received the one-way conversion data (Oneway-ID), and the resulting the unidirectional conversion data (Oneway-ID ') is a step of determining whether or not matching authentication method according to .
前記半導体記憶装置から前記ホスト装置に送信される管理鍵情報（FKey）は、前記第１セッション鍵（SKey）により暗号化されるまたはに記載の認証方法。 The management key information from the semiconductor memory device is transmitted to the host device (FKey), the authentication method according to the encrypted by the first session key (SKey)  or .
復号された前記管理鍵情報（FKey）は、前記ホスト装置に送信される。 The management key information decoded (FKey) is transmitted to the host device.
前記第１セッション鍵（SKey）を用いて、前記秘密識別情報（SecretID）に一方向性変換処理を行い、一方向性変換データ（Oneway-ID）を生成する一方向性変換器とを更に具備するに記載の半導体記憶装置。 Using the first session key (SKey), wherein performs unidirectional conversion secret identification information (SecretID), further comprising a unidirectional transducer to generate a one-way conversion data (Oneway-ID) to the semiconductor memory device according to .
前記第１、第２復号部および前記第１暗号化部は、共通鍵暗号を利用した復号処理または暗号化処理に統一して実装化されるに記載の半導体記憶装置。  The first, second decoding section and the first encryption unit, a semiconductor memory device according to the common key cryptography unified in decryption or encryption process and utilizing the mounting of in .
前記インデックス情報（k）或いは前記インデックス情報（k）の一部および前記暗号化された管理鍵情報（E-FKey）は、前記半導体記憶装置に送信される。 The index information (k) or a portion, and the encrypted management key information of the index information (k) (E-FKey) is transmitted to the semiconductor memory device.
復号された前記管理鍵情報（FKey）を用いて、前記半導体記憶装置から読み出す暗号化秘密識別情報（E-SecretID）を復号し、秘密識別情報（SecretID）を生成する第２復号部とを更に具備するに記載のホスト装置。 Decoded using said management key information (FKey), wherein to decrypt the encrypted secret identification information (E-SecretID) read from the semiconductor memory device, further a second decoding section that generates a secret identity (SecretID) the host device according to , comprising.
前記第１暗号化部および前記第１、第２復号部は、共通鍵暗号を利用した復号処理または暗号化処理に統一して実装化されるに記載のホスト装置。  The first encryption unit and the first, second decoding unit, the host apparatus according to  to be implemented by being united to the decryption or encryption process using the common key cryptography.
生成した前記一方向性変換データ（Oneway-ID）と前記半導体記憶装置から受信する一方向性変換データ（Oneway-ID）とが一致するか否かを判定する検証部とを更に具備するまたはに記載のホスト装置。 The resulting one-way converting data (Oneway-ID) receiving the unidirectional conversion data (Oneway-ID) from said semiconductor memory device further comprising a determining verifying unit whether the match [9 the host device according to or .
１０…ＮＡＮＤ型フラッシュメモリ（被認証装置）、１９…コントローラ、１１…セルアレイ、E-SecretID…固有の暗号化秘密識別情報、SecretID…固有の秘密識別情報、FKB…鍵管理情報、NKey…第１鍵情報、２０…ホスト装置（認証装置）、２３…メモリ、IDKey…識別鍵情報、k…インデックス情報、HKey…第２鍵情報、SKey…セッション鍵情報、FKey…管理鍵情報。 10 ... NAND-type flash memory (apparatus to be authenticated), 19 ... controller, 11 ... cell arrays, E-SecretID ... unique encrypted secret identification information, SecretID ... unique secret identification information, FKB ... key management information, NKey ... first key information, 20 ... host device (authentication device), 23 ... memory, IDKey ... identification key information, k ... index information, HKey ... second key information, SKey ... session key information, FKey ... management key information.
前記第３鍵情報と前記第１識別情報とを用いて一方向性変換処理を行うことにより、前記認証情報を生成し、該認証情報を前記外部装置に送り、前記外部装置に認証されるように構成されたストレージメディア。 By performing the one-way conversion process by using the first identification information and the third key information, to generate the authentication information, sends the authentication information to the external device is authenticated to the external device configured storage media so.
前記第３鍵情報と、前記暗号化第１識別情報が復号されて新たに生成された第１識別情報とを入力値とした一方向性変換処理を行い、検証情報を生成するように構成されたホスト装置。 Said third key information, the performing a first identification information and the one-way conversion processing an input value to the encrypted first identification information is newly generated is decoded, is configured to generate the verification information It was the host device.
前記第３鍵情報と前記第１識別情報とを用いて一方向性変換処理を行うことにより、前記外部装置との認証に用いられる認証情報を生成し、該認証情報を前記外部装置に送り、前記外部装置に認証されるように構成されたメモリ装置。 By performing the one-way conversion process by using the first identification information and the third key information, generates authentication information used for authentication with the external device sends the authentication information to the external device the configuration memory device to be authenticated to the external device.
前記第３鍵情報と、前記暗号化第１識別情報が復号されて新たに生成された第１識別情報とを入力値とした一方向性変換処理を行い、検証情報を生成するように構成されたシステム。 Said third key information, the performing a first identification information and the one-way conversion processing an input value to the encrypted first identification information is newly generated is decoded, is configured to generate the verification information system.
前記検証情報と、前記メモリ装置で一方向性変換処理を行うことにより生成された認証情報とが一致するか否か検証する、ホスト装置。 The verification information and the authentication information generated by performing a one-way conversion process memory device verifies whether match, the host device.
前記検証情報と、前記メモリ装置で一方向性変換処理を行うことにより生成された認証情報とが一致するか否か検証する、システム。 Wherein the verification information, and the generated authentication information to verify whether the match by performing a one-way conversion process by the memory device, the system.

References: v.

 v.

 v.

 v. 
 v. 
 v.

 v.

 v.

 v. 
 v. 
 v.