JP2009277138A - Semiconductor integrated circuit device, bus device, and data transfer method - Google Patents
Semiconductor integrated circuit device, bus device, and data transfer method Download PDFInfo
- Publication number
- JP2009277138A JP2009277138A JP2008129816A JP2008129816A JP2009277138A JP 2009277138 A JP2009277138 A JP 2009277138A JP 2008129816 A JP2008129816 A JP 2008129816A JP 2008129816 A JP2008129816 A JP 2008129816A JP 2009277138 A JP2009277138 A JP 2009277138A
- Authority
- JP
- Japan
- Prior art keywords
- data
- transfer
- attribute information
- bus
- semiconductor device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
Description
この発明は、半導体集積回路装置、バス装置、及びデータ転送方法に関する。例えば、暗号化されたデータの保護方法に関する。 The present invention relates to a semiconductor integrated circuit device, a bus device, and a data transfer method. For example, the present invention relates to a method for protecting encrypted data.
近年の半導体集積回路(LSI)においては、データの保護(security)技術の重要性が高まっている。特に、暗号化されたデータを復号化した後におけるデータの取り扱いが重要である。 In recent semiconductor integrated circuits (LSIs), the importance of data protection technology is increasing. In particular, handling of data after decrypting the encrypted data is important.
この点、復号化されたデータに対して、当該データが復号化されたデータであることを示す情報を付加する手法が提案されている(例えば非特許文献1参照)。本手法によれば、データに上記情報が付加されていた場合には、データブロッカーが、所定のハードウェアに対するデータの転送を遮断する。従って、保護すべきデータが不用意にハードウェアに転送されることを防止出来る。
In this regard, a method has been proposed in which information indicating that the data is decoded data is added to the decoded data (see Non-Patent
しかし、上記従来の手法であると、保護すべきデータを転送出来るハードウェアは、LSIの製造時に決定されてしまい、データ毎の柔軟な対応が困難であるという問題があった。すなわち、例えば複数のセキュリティ区分が存在する場合に、あるセキュリティ区分のデータの転送は禁止し、それよりも区分の低いデータの転送は許可する、といったデータ転送が困難であった。
この発明は、データの秘匿性を確保しつつ、複数のセキュリティ区分に対応可能な半導体集積回路、バス装置、及びデータ転送方法を提供する。 The present invention provides a semiconductor integrated circuit, a bus device, and a data transfer method that can handle a plurality of security classifications while ensuring data confidentiality.
この発明の一態様に係る半導体集積回路装置は、半導体装置と、データの転送先を示す第1属性情報を含み且つ暗号化されたデータを復号化すると共に、復号した旨を示す第2属性情報を、復号化した前記データに付加する復号回路と、前記復号回路で復号化された前記データを、前記第2属性情報と共に前記半導体装置へ転送する転送回路と、前記半導体装置と前記転送回路との間をデータ転送可能に接続するバス装置と、前記転送回路によって前記バス装置を介して転送された前記データにつき、前記第1属性情報及び第2属性情報を確認して、該データが暗号化された状態から復号化されたデータであって、且つ前記第1属性情報によって示される前記転送先が前記半導体装置と不一致であった場合に、前記データの前記半導体装置への転送を遮断する遮断装置とを具備する。 A semiconductor integrated circuit device according to an aspect of the present invention includes a semiconductor device, and second attribute information including first attribute information indicating a data transfer destination and decrypting the encrypted data and indicating that the data has been decrypted A decoding circuit for adding the decoded data to the semiconductor device, a transfer circuit for transferring the data decoded by the decoding circuit together with the second attribute information to the semiconductor device, the semiconductor device and the transfer circuit, The first attribute information and the second attribute information for the data transferred via the bus device by the transfer circuit, and the data is encrypted. And when the transfer destination indicated by the first attribute information is inconsistent with the semiconductor device, the data is decoded to the semiconductor device. ; And a blocking device for blocking the transfer.
また、この発明の一態様に係るバス装置は、半導体装置に接続可能とされ、前記半導体装置にデータを転送するバス装置であって、外部から与えられる前記データを転送するデータ転送線と、前記データ転送線によって転送された前記データに含まれる情報に基づいて、前記データが暗号化された状態から平文に戻されたデータであって且つ前記半導体装置への転送を禁止されたデータであると判断した場合に、前記半導体装置への転送を遮断する遮断装置とを具備する。 A bus device according to one aspect of the present invention is a bus device that is connectable to a semiconductor device and transfers data to the semiconductor device, the data transfer line transferring the data given from the outside, Based on information included in the data transferred by a data transfer line, the data is data that has been returned to plain text from an encrypted state and is prohibited from being transferred to the semiconductor device. And a blocking device that blocks transfer to the semiconductor device when it is determined.
更に、この発明の一態様に係るデータ転送方法は、転送先を示す第1属性情報を含み且つ暗号化された第1データを復号化して第2データを得るステップと、前記第2データに対して、復号した旨を示す第2属性情報を付加して第3データを得るステップと、半導体装置を転送先として、前記第3データをバス装置へ転送するステップと、前記バス装置へ転送されたデータにつき、前記第1属性情報及び第2属性情報をチェックするステップと、前記第1属性情報及び第2属性情報をチェックした結果、前記第3データが暗号化された状態から復号化されたデータであって、且つ前記第1属性情報の示す転送先が前記半導体装置と不一致であった場合、該第3データの前記半導体装置への転送を遮断し、それ以外の場合には該第3データの前記半導体装置への転送を許可するステップとを具備する。 Furthermore, the data transfer method according to an aspect of the present invention includes the step of obtaining the second data by decrypting the encrypted first data including the first attribute information indicating the transfer destination, and the second data And adding the second attribute information indicating the decryption, obtaining the third data, transferring the third data to the bus device using the semiconductor device as the transfer destination, and transferring the data to the bus device. For the data, the first attribute information and the second attribute information are checked, and the first attribute information and the second attribute information are checked. As a result, the third data is decrypted from the encrypted state. If the transfer destination indicated by the first attribute information does not match the semiconductor device, the transfer of the third data to the semiconductor device is interrupted, and otherwise the third data Before And a step of allow transfer to the semiconductor device.
この発明によれば、データの秘匿性を確保しつつ、複数のセキュリティ区分に対応可能な半導体集積回路、バス装置、及びデータ転送方法を提供出来る。 According to the present invention, it is possible to provide a semiconductor integrated circuit, a bus device, and a data transfer method that can cope with a plurality of security classifications while ensuring data confidentiality.
以下、この発明の実施形態につき図面を参照して説明する。この説明に際し、全図にわたり、共通する部分には共通する参照符号を付す。 Embodiments of the present invention will be described below with reference to the drawings. In the description, common parts are denoted by common reference symbols throughout the drawings.
[第1の実施形態]
この発明の第1の実施形態に係る半導体集積回路装置、バス装置、及びデータ転送方法について、図1を用いて説明する。図1は、本実施形態に係る半導体集積回路装置のブロック図である。
[First Embodiment]
A semiconductor integrated circuit device, a bus device, and a data transfer method according to a first embodiment of the present invention will be described with reference to FIG. FIG. 1 is a block diagram of a semiconductor integrated circuit device according to this embodiment.
<半導体集積回路装置の全体構成について>
図示するように、半導体集積回路装置(LSI)1は、RAM2、DMA(Direct Memory Access)コントローラ3、ハードウェアエンジン4、5、データブロッカー6〜9、復号回路10、属性付加装置11、メモリ12、セレクタ装置13、及びバス14を備えている。なお、RAM2、DMAコントローラ3、及びハードウェアエンジン4、5を区別しない場合には、これらをまとめて「ハードウェア」と呼ぶことがある。
<Overall Configuration of Semiconductor Integrated Circuit Device>
As shown in the figure, a semiconductor integrated circuit device (LSI) 1 includes a
RAM2は例えばフラッシュメモリ等の半導体メモリであり、種々のデータを保持する。保持するデータのいずれかは暗号化されたデータである。そして暗号化されたデータは、正味のデータであり保護すべき秘密データと、この秘密データの転送先となる転送先情報とを含んでおり、共に暗号化されている。
The
DMAコントローラ3は、RAM2及びハードウェアエンジン4、5間のデータ転送を制御する。DMAコントローラ3は、データの転送モードとして、保護転送と通常転送との2つのモードを有する。保護転送は、暗号化されたデータが復号化されて得られた平文のデータを転送するモードであり、通常転送はそれ以外の場合のモードである。すなわち、秘匿性を考慮すべきデータを転送する場合の転送モードが、保護転送である。そしてDMAコントローラ3は、保護転送を行う際には転送モード信号MODEを例えば“1”とし、通常転送を行う際には“0”とする。転送モード信号MODEは、セレクタ装置13に与えられる。DMAコントローラ3の詳細については後述する。
The
ハードウェアエンジン4、5は、例えば画像処理や無線通信等、所定の機能を実行するための機能ブロックである。そして、RAM2内のデータを用いて、所定の機能を実行するための処理を行う。
The
データブロッカー6〜9は、それぞれRAM2、DMAコントローラ3、及びハードウェアエンジン4、5に対応づけられて設けられている。またデータブロッカー6〜9には、転送先識別番号DstNoが入力される。転送先識別番号DstNoは、各データブロッカー6〜9が対応するハードウェアに応じて付加される番号であり、RAM2、DMAコントローラ3、及びハードウェアエンジン4、5に関する転送先識別番号DstNoは、例えばそれぞれ“1”、“2”、“3”、“4”である。従って、データブロッカー6〜9には転送先識別番号DstNoとして、“1”〜“4”がそれぞれ与えられる。そしてデータブロッカー6〜9はそれぞれ、転送先識別番号DstNoと、データと共に転送される第1属性情報Attr1及び第2属性情報Attr2とに基づいて、RAM2、DMAコントローラ3、及びハードウェアエンジン4、5に対するデータの転送を遮断する。第1属性情報Attr1及び第2属性情報Attr2、並びにデータブロッカー6〜9の詳細については後述する。
The
復号回路10は、DMAコントローラ3から与えられる暗号化されたデータを、復号鍵を用いて復号化する。復号化されたデータには、前述の秘密データと転送先情報とが含まれる。そして復号回路10は、復号化された秘密データと転送先情報とを、属性付加装置11へ出力する。
The
メモリ12は例えば半導体メモリであり、復号回路10で使用する復号鍵の記録された復号鍵テーブルを保持する。そしてメモリ12は、DMAコントローラ3の命令に従って、必要な復号鍵を復号回路10へと出力する。
The
属性付加装置11は、復号回路10から与えられる復号化されたデータにおいて、秘密データと転送先情報とを分離し、セレクタ装置13へ出力する。この際、属性付加装置11は転送先情報を、第1属性情報Attr1としてセレクタ装置13へ出力する。また属性付加装置11は、復号回路10から秘密データを受け取った際には、第2属性情報Attr2をアサートして(本実施形態では“1”として)、セレクタ装置13へ出力する。つまり第1属性情報Attr1は、ある秘密データについて、当該秘密データの宛先として許可されたハードウェアの情報である。また第2属性情報Attr2は、あるデータについて、当該データが暗号化された状態から復号化されたデータであるか否かを示す情報である。
The
セレクタ装置13は、第1セレクタ20及び第2セレクタ21を備えている。第1セレクタ20及び第2セレクタ21は、例えばマルチプレクサである。
The
上記第1セレクタ20は、属性付加装置11から与えられる、復号化された秘密データと、DMAコントローラ3から直接与えられるデータとのいずれかを選択する。より具体的には、転送モード信号MODE=“1”である場合には、属性付加装置11から与えられるデータを選択し、“0”である場合にはDMAコントローラ3から直接与えられるデータを選択する。そして、選択したデータをバス14へ出力する。すなわち、保護転送の場合には、復号化された秘密データをバス14へ出力し、通常転送の場合には、RAM2からDMAコントローラ3に与えられたデータをそのままバス14へ出力する。
The
上記第2セレクタ21は、属性付加装置11から与えられる第1属性情報Attr1及び第2属性情報Attr2と、“0”とのいずれかを選択する。より具体的には、転送モード信号MODE=“1”である場合には、属性付加装置11から与えられる第1、第2属性情報Attr1、Attr2を選択してバス14へ出力する。他方、MODE=“0”である場合には“0”を選択し、第1属性情報Attr1=“0”、第2属性情報Attr2=“0”としてバス14へ出力する。
The
バス14は、RAM2、DMAコントローラ3、及びハードウェアエンジン4、5の相互間において、データを転送する。バス14にはマスター・インタフェースIF1、IF3、IF4およびスレーブ・インタフェースIF2が存在する。マスター・インタフェースIF1、IF3、IF4は、それぞれRAM2、ハードウェアエンジン4、ハードウェアエンジン5に接続される。スレーブ・インタフェースIF2はDMAコントローラ3に接続される。また、それぞれのインタフェースIF1〜IF4において、後述する出口OUT1〜OUT4から出力される信号は、それぞれデータブロッカー6〜9に接続されている。
The
<バス14について>
次に、バス14で伝送する信号について、図2を用いて説明する。図2は、バスの入出力信号を示す概念図である。マスター・インタフェースIF1、IF3、IF4とスレーブ・インタフェースIF2は、信号の伝送方向が逆になっている。スレーブ・インタフェースIF2は、バス14の外部からの転送要求を受信することが可能で、データ転送を制御するDMAコントローラなどを接続することができる。なお、バス14から出力される信号のうち、データ信号および後述する第1属性情報および第2属性情報が出力される部分を、それぞれ出口OUT1〜OUT4と呼ぶ。なお、図では、マスター・インタフェースIF1の記載が省略されているが、マスター・インタフェースIF3またはIF4などと同等である。出口OUT3、4と同様に出口OUT1も定義される。
<About
Next, signals transmitted through the
図示するようにバス14は、大きくは4つの信号系列を有している。
まず、制御信号の系列である。制御信号の一例はリクエスト信号Request及びイネーブル信号R/W_Enableであり、それぞれ1ビットの信号である。リクエスト信号Requestは、転送先のハードウェアに対してデータの送受信を要求するための信号であり、イネーブル信号R/W_Enableは、転送先のハードウェアに対してデータの読み出しまたは書き込みをイネーブルにするための信号である。
As shown in the figure, the
First, a control signal sequence. An example of the control signal is a request signal Request and an enable signal R / W_Enable, each of which is a 1-bit signal. The request signal Request is a signal for requesting transmission / reception of data to the transfer destination hardware, and the enable signal R / W_Enable is for enabling reading or writing of data to the transfer destination hardware. Signal.
次に、データ信号の系列である。データ信号には、読み出した読み出しデータRead_Dataと書き込むべき書き込みデータWrite_Dataの2種類があり、信号線として独立している。また、それぞれ例えば32ビットの信号である。
なお、上記セレクタ装置13の第1セレクタ20から出力される書き込みデータが、スレーブ・インタフェースIF2への入力信号Write_Dataとなる。データブロッカー6、8および9はそれぞれ、対応するマスター・インタフェースIF1、IF3、IF4から与えられるデータ信号Write_Dataを遮断したり、通過させたりする。データブロッカー7は、スレーブ・インタフェースIF2のデータ信号Read_Dataの伝播を遮断したり通過させたりする。なお、データブロッカー6、8および9と、データブロッカー7が遮断したり通過させたりする信号は、それぞれ信号Write_dataと信号Read_Dataと異なるが、これは接続されたインタフェースがマスター・インタフェースなのか、スレーブ・インタフェースであるかの違いにすぎない。各データブロッカーは同じ機能を有している。
Next, a series of data signals. There are two types of data signals, read-out read data Read_Data and write-in data Write_Data to be written, which are independent as signal lines. Each is a 32-bit signal, for example.
The write data output from the
次に、アドレス信号Addressである。アドレス信号は、データを転送すべき宛先となるハードウェアのアドレスを示す信号である。 Next, an address signal Address. The address signal is a signal indicating an address of hardware that is a destination to which data is to be transferred.
最後に、第1属性情報Attr1及び第2属性情報Attr2である。各属性情報は 信号Read_Dataおよび信号Write_Dataのそれぞれに付随して存在する。図2においては、信号Attr1(R)、信号Attr1(W)、信号Attr2(R)および信号Attr2(W)が属性情報を伝達する信号である。なお、各信号名の文字列(R)または(W)は、Read_DataおよびWrite_Dataのどちらのデータの属性であるかをそれぞれ示す。また、これらの属性情報を伝達する信号は、信号Read_Dataおよび信号Write_Dataと同期して転送される。なお以下では、Attr1(R)及びAttr1(W)を単にAttr1と呼び、Attr2(R)及びAttr2(W)を単にAttr2と呼ぶことがある。 Finally, the first attribute information Attr1 and the second attribute information Attr2. Each attribute information is associated with each of the signal Read_Data and the signal Write_Data. In FIG. 2, a signal Attr1 (R), a signal Attr1 (W), a signal Attr2 (R), and a signal Attr2 (W) are signals that transmit attribute information. Note that the character string (R) or (W) of each signal name indicates which data attribute is Read_Data or Write_Data. In addition, a signal for transmitting the attribute information is transferred in synchronization with the signal Read_Data and the signal Write_Data. Hereinafter, Attr1 (R) and Attr1 (W) may be simply referred to as Attr1, and Attr2 (R) and Attr2 (W) may be simply referred to as Attr2.
第1属性情報Attr1はデータの転送先が許可されているハードウェアの情報を示す。より具体的には、第1属性情報Attr1には、復号化されたデータの転送を許可するハードウェアの転送先識別番号DstNoが設定される。本実施形態では、第1属性情報Attr1は例えば3ビットの信号である。
第2属性情報Attr2は、暗号化された状態から平文に戻された状態であることを示す。より具体的には、第2属性情報Attr2は1ビットの信号であり、“1”である場合には、当該第2属性情報Attr2が付与されたデータは平文に戻されたデータであることを示す。なお、RAM2が接続されているマスター・インタフェース1の信号 Attr1(R)および 信号 Attr2(R)には“0”(ゼロ)が入力されている。従って、RAM2から読み出されたデータを転送する際には、当該データについて第2属性情報Attr2は“0”となる。また、第1属性情報Attr1は、第2属性情報Attr2が“1”の場合だけ有効な意味を持つ。
The first attribute information Attr1 indicates information on hardware that is permitted to transfer data. More specifically, a hardware transfer destination identification number DstNo that permits transfer of decrypted data is set in the first attribute information Attr1. In the present embodiment, the first attribute information Attr1 is, for example, a 3-bit signal.
The second attribute information Attr2 indicates that the encrypted state is returned to plain text. More specifically, the second attribute information Attr2 is a 1-bit signal, and when it is “1”, it is determined that the data to which the second attribute information Attr2 is attached is the data returned to the plain text. Show. Note that “0” (zero) is input to the signal Attr1 (R) and the signal Attr2 (R) of the
<DMAコントローラ3の詳細について>
次に、上記DMAコントローラ3の詳細について、特にRAM2から読み出した信号の取り扱いに着目して、図3を用いて説明する。図3は、DMAコントローラ3の動作を示すフローチャートである。また以下では、バス14で伝送される信号のうち、特に本実施形態に関連する信号についてのみ言及する。例えば、以下において説明を省略した場合であっても、データの転送する際には当然ながらアドレス信号Address等が必要となる。
<Details of
Next, details of the
図示するようにDMAコントローラ3は、RAM2からデータを読み出すと、このデータが暗号化されている場合には(ステップS10、YES)、復号回路10にデータを転送する。そしてDMAコントローラ3は復号回路10に対して、当該データについての復号化を命令する(ステップS11)。またこの際には、必要な復号鍵を復号回路10に与えるよう、メモリ12に対して命令する。ステップS11の命令に応答して、復号回路10は復号鍵を用いてデータの復号化を行う。
As shown in the figure, when the data is read from the
更にDMAコントローラ3は、転送モード信号MODEを“1”として、保護転送を行う(ステップS12)。転送モード信号MODEを“1”とすることでDMAコントローラ3は、セレクタ装置13の第1セレクタ20に対して、属性付加装置11から出力される秘密データを選択するよう命令する(ステップS13)。また第2セレクタ21に対して、属性付加装置11から出力される第1、第2属性情報Attr1、Attr2を選択するよう命令する(ステップS14)。
Further, the
以上の結果、バス14には、復号回路10で復号された秘密データが書き込みデータWrite_Dataとして出力され、暗号化されたデータに格納されていた転送先情報が第1属性情報Attr1として出力され、“1”が第2属性情報Attr2として出力される。
As a result, the secret data decrypted by the
ステップS10において、データが暗号化されていない場合には(ステップS10、NO)、DMAコントローラ3は転送モード信号MODEを“0”として、通常転送を行う(ステップS15)。転送モード信号MODEを“0”とすることでDMAコントローラ3は、セレクタ装置13の第1セレクタ20に対して、DMAコントローラ3から出力されるデータを選択するよう命令する(ステップS16)。また第2セレクタ21に対して、第1、第2属性情報Attr1、Attr2として“0”を選択するよう命令する(ステップS17)。
In step S10, if the data is not encrypted (step S10, NO), the
以上の結果、バス14には、RAM2から読み出されたデータがそのまま書き込みデータWrite_Dataとして出力され、“0”が第1属性情報Attr1及び第2属性情報Attr2として出力される。
As a result, the data read from the
<データブロッカー6〜9の詳細について>
次に、データブロッカー6〜9の詳細について、図4を用いて説明する。図4は、データブロッカー6〜9の動作を示すフローチャートである。
<Details of data blockers 6-9>
Next, details of the
データブロッカー6〜9はそれぞれ、バス14の出口OUT1〜OUT4から出力される信号のデータを受け取ると、まず当該データが暗号化された状態から復号されたデータであるか否かを確認する。すなわち第2属性情報Attr2が“1”であるか否かを確認する。
When the
復号化されたデータでなかった場合、すなわちAttr2=“0”であった場合には(ステップS20、NO)、データブロッカー6〜9は、対応するハードウェアに対する当該データの転送を許可する(ステップS21)。すなわち、バス14から出力されたデータを、当該データブロッカー6〜9に接続されたハードウェアへ転送する。
When the data is not decrypted, that is, when Attr2 = "0" (step S20, NO), the
他方、復号化されたデータであった場合、すなわちAttr2=“1”であった場合には(ステップS20、YES)、データブロッカー6〜9は次に、それぞれに対応するハードウェアが、当該データの転送先として許可されているか否かを判定する。すなわち、第2属性情報Attr1が転送先識別番号DstNoと一致するか否かを判定する。
On the other hand, when the data is decrypted, that is, when Attr2 = “1” (step S20, YES), the
一致した場合、すなわちAttr1=DstNoであった場合には(ステップS22、YES)、ステップS21の処理を行う。他方、不一致であった場合、すなわちAttr1≠DstNoであった場合には(ステップS22、NO)、データブロッカー6〜9は、対応するハードウェアに対する当該データの転送を遮断する(ステップS23)。
When they match, that is, when Attr1 = DstNo (step S22, YES), the process of step S21 is performed. On the other hand, when there is a mismatch, that is, when Attr1 ≠ DstNo (step S22, NO), the
以上の処理によりデータブロッカー6〜9は、復号化された秘密データが、転送を許可されていないハードウェアに転送されることを防止する。
Through the above processing, the
<LSI1の動作について>
次に、上記構成のLSI1におけるデータ転送方法について、RAM2からハードウェアエンジン4へのデータ転送の場合を例に挙げて、保護転送の場合と通常転送の場合とに分けて、以下説明する。他のハードウェア間のデータ転送も同様である。
<Operation of
Next, the data transfer method in the
<保護転送について>
まず保護転送について、図5を用いて説明する。図5は、LSI1における処理の流れを示すフローチャートである。処理の流れは大まかに、暗号化されたデータのRAM2からDMAコントローラ3への転送、復号化と属性情報の設定、及び復号化されたデータのDMAコントローラ3からハードウェアエンジン4への転送、の3つのステップを含む。以下、順次説明する。
<About protected transfer>
First, protected transfer will be described with reference to FIG. FIG. 5 is a flowchart showing the flow of processing in the
まず、暗号化されたデータのRAM2からDMAコントローラ3への転送が行われる。すなわち、DMAコントローラ3がRAM2から暗号化されたデータを読み出す(ステップS30)。この際、暗号化されたデータはハードウェアエンジン4への転送を許可されたデータであり、転送先情報としてDstNo=“3”を保持していたとする。バス14は、DMAコントローラ3の命令に応答して、Attr2=“0”として、暗号化されたデータをデータブロッカー7へ転送する(ステップS31)。データブロッカー7は、Attr2=“0”であるので、暗号化されたデータをそのままDMAコントローラ3へ転送する(ステップS32)。
First, the encrypted data is transferred from the
次に、復号化と属性情報の設定が行われる。すなわちDMAコントローラ3は、復号回路10に対して、暗号化されたデータの復号化を命令する(ステップS33)。またDMAコントローラ3は、MODE=“1”として保護転送を開始する(ステップS34)。そして復号回路10が、DMAコントローラ3から与えられる暗号化されたデータを復号化して、属性付加装置11へ出力する(ステップS35)。引き続き属性付加装置11は、Attr2=“1”とする。また、当該データの転送先情報“3”をAttr1に設定する(ステップS36)。
Next, decoding and setting of attribute information are performed. That is, the
次に、復号化されたデータのDMAコントローラ3からハードウェアエンジン4へのデータ転送が行われる。すなわちセレクタ装置13が、属性付加装置11から出力される秘密データと、Attr1=“3”及びAttr2=“1”とを選択して、バス14へ出力する。そしてバス14は、セレクタ装置13から出力された秘密データ(書き込みデータWrite_Data)と、Attr1及びAttr2とを、転送先であるハードウェアエンジン4に対応するデータブロッカー8へと転送する(ステップS38)。するとデータブロッカー8は、Attr2=“1”であり、且つAttr2=DstNo=“3”であるので、当該秘密データは転送を許可されたものと認識し、秘密データをハードウェアエンジン4へ転送する(ステップS39)。
Next, data transfer of the decoded data from the
以上によって、RAM2において暗号化された秘密データが、ハードウェアエンジン4へ転送される。なお、この秘密データがデータブロッカー6、7、9に転送されたとしても、データブロッカー6、7、9においてはAttr1がDstNoに一致しないので、データブロッカー6、7、9は、RAM2、DMAコントローラ3、及びハードウェアエンジン5への当該秘密データの転送を遮断する(ステップS40)。
Thus, the secret data encrypted in the
<通常転送について>
次に通常転送について説明する。通常転送の場合にも、まず上記ステップS30〜S32の処理が行われて、データがDMAコントローラ3へ転送される。但し、データは暗号化されていないデータである。
<Regarding normal transfer>
Next, normal transfer will be described. Also in the case of normal transfer, first, the processes of steps S30 to S32 are performed, and the data is transferred to the
そしてセレクタ装置13は、Attr1=“0”、Attr2=“0”として、これらのAttr1、Attr2と、DMAコントローラ3から出力されるデータとをバス14へ出力する。するとデータブロッカー8は、Attr2=“0”であるので、Attr1を確認することなく、当該データをハードウェアエンジン4へ転送する。
The
<効果>
本実施形態に係るLSI1であると、下記(1)の効果が得られる。
<Effect>
With the
(1)データの秘匿性を確保しつつ、複数のセキュリティ区分に対応出来る。
上記非特許文献1で開示された構成であると、背景技術で説明したとおり、保護すべきデータを転送出来るハードウェアは、LSIの製造時に決定される。従って、あるハードウェアに対してデータの転送を許可するか遮断するかは、暗号化されているか否かによってのみ決定される。そのため、秘匿性は十分に確保出来るが、複数のセキュリティ区分に対応することが困難であった。
(1) It is possible to cope with a plurality of security classifications while ensuring data confidentiality.
With the configuration disclosed in
この点、本実施形態に係る構成であると、秘密データと共に転送先情報を合わせて暗号化している。転送先情報とは、当該秘密データの転送を許可するハードウェアの情報である。更に復号化した後、転送先情報を第1属性情報Attr1として秘密データに付加して、バス14へ出力する。そしてデータブロッカー6〜9は、付加された第1属性情報Attr1が各々の転送先識別番号DstNoと一致した場合にのみ、秘密データの転送を許可する。
In this respect, the configuration according to the present embodiment encrypts the transfer destination information together with the secret data. The transfer destination information is hardware information that permits transfer of the secret data. After further decryption, the transfer destination information is added to the secret data as the first attribute information Attr1, and is output to the
従って、暗号化されたデータの各々について、転送先となるハードウェアを自由に決定出来る。つまり、暗号化されたあるデータについてはあるハードウェアに対して転送を許可し、暗号化された別のデータについては別のハードウェアに対して転送を許可する、といった設定が可能となる。 Therefore, it is possible to freely determine hardware as a transfer destination for each encrypted data. In other words, it is possible to set such that transfer of certain encrypted data is permitted to a certain hardware, and transfer of another encrypted data is permitted to another hardware.
また、付加された第1属性情報Attr1が各々の転送先識別番号DstNoと一致しない場合には、データブロッカー6〜9は秘密データの転送を遮断する。従って、秘密データの秘匿性も十分に確保出来る。
Further, when the added first attribute information Attr1 does not match each transfer destination identification number DstNo, the
よって、データの秘匿性を十分に確保しつつ、複数のセキュリティ区分に対応することが可能となる。 Therefore, it is possible to cope with a plurality of security classifications while sufficiently securing data confidentiality.
[第2の実施形態]
次に、この発明の第2の実施形態に係る半導体集積回路装置、バス装置、及びデータ転送方法について説明する。本実施形態は、上記第1の実施形態において、暗号化されたデータにハッシュ(hush)を埋め込んだものである。図6は、本実施形態に係るLSI1のブロック図である。以下では、第1の実施形態と異なる点についてのみ説明する。
[Second Embodiment]
Next explained is a semiconductor integrated circuit device, a bus device and a data transfer method according to the second embodiment of the invention. In the present embodiment, a hash is embedded in the encrypted data in the first embodiment. FIG. 6 is a block diagram of the
図示するように、本実施形態に係る暗号化されたデータは、秘密データ及び転送先情報(Attr1)に加えて、ハッシュ値を備えており、これらが暗号化されている。また本実施形態に係るLSI1は、ハッシュ値確認回路15を備えている。ハッシュ値確認回路15について、図7を用いて説明する。図7は、ハッシュ値確認回路15の動作を示すフローチャートである。
As illustrated, the encrypted data according to the present embodiment includes a hash value in addition to the secret data and the transfer destination information (Attr1), and these are encrypted. Further, the
図示するようにハッシュ値確認回路15は、まず復号化されたデータ(秘密データ、転送先情報、及びハッシュ値)を、復号回路10から受信する(ステップS50)。そして復号化されたデータにおいて、ハッシュ値を確認する(ステップS51)。
As illustrated, the hash
ステップS51の結果、復号化された秘密データがハッシュ値と一致しなかった場合(ステップS52、NO)、ハッシュ値確認回路15はDMAコントローラ3に対して、当該データの転送を禁止する(ステップS53)。この場合、復号化されたデータが属性付加装置11へ転送されなくても良い。
As a result of step S51, when the decrypted secret data does not match the hash value (step S52, NO), the hash
他方、ステップS51の結果、復号化された秘密データがハッシュ値と一致した場合(ステップS52、YES)、ハッシュ値確認回路15は当該データの転送を許可し、復号化された秘密データと転送先情報とを属性付加装置11へ転送する(ステップS54)。
On the other hand, as a result of step S51, when the decrypted secret data matches the hash value (step S52, YES), the hash
<効果>
本実施形態に係るLSI1であると、第1の実施形態で説明した(1)の効果に加えて、下記(2)の効果が得られる。
<Effect>
In the
(2)データの改竄耐性を高めることが出来る。
本実施形態に係る構成であると、秘密データと共にハッシュ値を合わせて暗号化している。そしてデータを復号化した後、ハッシュ値確認回路15が、秘密データとハッシュ値とを比較し、両者が一致した場合にのみ、秘密データの転送を許可する。従って、秘密データが改竄されたような場合にはデータの転送が遮断され、データの改竄耐性を向上出来る。
(2) The falsification resistance of data can be increased.
In the configuration according to the present embodiment, the hash value together with the secret data is encrypted. After the data is decrypted, the hash
[第3の実施形態]
次に、この発明の第3の実施形態に係る半導体集積回路装置、バス装置、及びデータ転送方法について説明する。本実施形態は、上記第1、第2の実施形態において、秘密データ転送後におけるバスの取り扱いに関するものである。以下では、第1、第2の実施形態と異なる点についてのみ説明する。
[Third Embodiment]
Next explained is a semiconductor integrated circuit device, a bus device and a data transfer method according to the third embodiment of the invention. This embodiment relates to the handling of the bus after the secret data transfer in the first and second embodiments. Hereinafter, only differences from the first and second embodiments will be described.
図8は、本実施形態に係るバス14の内部構成を模式的に示すブロック図である。図示するようにバス14は、複数のフリップフロップ30が直列接続された構成を有している。そしてデータは、フリップフロップ30を順次転送されることで、宛先となるハードウェアへ伝送される。バス14は更に、最前段のフリップフロップ30の前段に設けられたセレクタ31を備えている。セレクタ31は、第1属性情報Attr1に応じて、転送すべきデータと“0”とのいずれかを選択して、最前段のフリップフロップ30に入力する。より具体的には、Attr1=“7”とされた場合には“0”を選択し、それ以外の場合には転送すべきデータを選択する。
FIG. 8 is a block diagram schematically showing the internal configuration of the
次に、本実施形態に係るDMAコントローラ3の動作について、図9を用いて説明する。図9は、復号化されたデータの転送直後におけるDMAコントローラ3の動作を示すフローチャートである。
Next, the operation of the
図示するようにDMAコントローラ3は、復号化されたデータの転送が終了すると、疑似転送を開始する(ステップS60)。疑似転送とは、いずれかのハードウェアにデータを転送することなく、バス14内のフリップフロップ30内に固定データを転送する処理である。疑似転送を命令するためにDMAコントローラ3は、第1属性情報Attr1を“7”として(Attr1の全ビットを“1”として)、セレクタ装置13からバス14へ出力する(ステップS61)。Attr1が“7”とされると、セレクタ装置13は疑似転送が開始されたことを認識して、バス14に書き込みデータを出力しない。またはセレクタ装置13によって書き込みデータが出力されたとしても、バス14は書き込みデータを受け付けない。
As shown in the drawing, the
Attr1=“7”を受信したバス14において、セレクタ31は“0”を選択して、フリップフロップ30へ順次転送する(ステップS62)。その結果、バス14に含まれる全フリップフロップ30には“0”が格納される(ステップS63)。
In the
<効果>
本実施形態に係るLSI1であると、第1、第2の実施形態で説明した(1)、(2)の効果に加えて、下記(3)の効果が得られる。
<Effect>
In the
(3)データの秘匿性をより向上出来る。
通常、バス14はフリップフロップの集合によって構成される。そして、データの転送後、場合によってフリップフロップには転送したデータが残ってしまうことがある。すると、秘密データがフリップフロップに残ってしまった場合、外部から強制的にバスにアクセスすることで、秘密データが漏洩する恐れがある。
(3) The confidentiality of data can be further improved.
Usually, the
しかし、本実施形態に係る構成であると、DMAコントローラ3は秘密データの転送後、バス14内のフリップフロップ30に固定値“0”を格納している(疑似転送)。すなわち、バス14を初期化している。従って、フリップフロップ30から秘密データが漏洩することを防止し、データの秘匿性をより向上出来る。
However, in the configuration according to the present embodiment, the
なお、疑似転送においてフリップフロップ30に格納するデータは“0”に限られるものでは無く、例えば“1”や、ランダムデータであっても良い。また、上記実施形態では疑似転送を行う際、Attr1の全ビットを“1”にする場合を例に説明したが、勿論、この場合に限られるものでないし、例えば疑似転送専用のビットを加えても良いし、または専用の信号を設けても良い。
Note that the data stored in the flip-
また、セレクタ31は各フリップフロップ30に対して設けられても良い。このような場合の構成を図10に示す。図10はバス14のブロック図である。図示するように、各フリップフロップ30の入力段にセレクタ31が設けられている。本構成とすれば、“0”を複数のフリップフロップ30に順次転送する必要が無く、疑似転送を高速に行うことが出来る。勿論、全てのフリップフロップ30に設けるのでは無く、複数個おきに設けても良い。
The
以上のように、この発明の第1乃至第3の実施形態に係る半導体集積回路装置であると、秘密データを、当該秘密データの転送先を示す第1属性情報と共に暗号化している。更に属性付加装置11が、暗号化されたデータが復号化された旨を示す第2属性情報と、前記第1属性情報とを、復号化された秘密データに付加している。そしてデータブロッカー6〜9が、転送されたデータが平文に戻されたデータであって、且つ第1属性情報によって示される転送先が対応するハードウェア2〜5と不一致であった場合に、このデータの転送を遮断する。
As described above, in the semiconductor integrated circuit device according to the first to third embodiments of the present invention, the secret data is encrypted together with the first attribute information indicating the transfer destination of the secret data. Further, the
従って、暗号化されたデータの各々について、転送先となるハードウェアを自由に決定出来る。その結果、データの秘匿性を十分に確保しつつ、複数のセキュリティ区分に対応することが可能となる。 Therefore, it is possible to freely determine hardware as a transfer destination for each encrypted data. As a result, it is possible to cope with a plurality of security classifications while sufficiently securing data confidentiality.
なお、上記第1乃至第3の実施形態では、転送先識別番号DstNoは、各データブロッカー6〜9が対応するハードウェア2〜5に応じて付加される番号である場合を例に説明した。しかし、ハードウェアに応じる代わりに、バス14の出口OUT1〜OUT4に応じて付加される番号であっても同様である。また、第1属性情報Attr1がハードウェアのアドレスそのものである場合には、データブロッカー6〜9は第1属性情報Attr1とアドレス信号Addressとを比較すれば良い。
In the first to third embodiments, the transfer destination identification number DstNo is described as an example in which the
更に、データブロッカー6〜9はバス14の内部に設けられても良い。このようなバス14の構成を図11に示す。なお図11では、バス14の出口とそれに対応したデータブロッカー6〜9のみを図示しており、インタフェース等の記載は省略している。図示するようにバス14は、データを転送するデータ転送線40と、前述のデータブロッカー6〜9とを備えている。そしてデータブロッカー6〜9は、データ転送線40によって転送されるデータに含まれる情報(Attr1、Attr2)に基づいて、データが平文に戻されたデータであって、且つ対応する半導体装置(RAM2、DMAコントローラ3、及びハードウェアエンジン4、5)への転送を禁止されたデータであった場合に、半導体装置への転送を遮断する。
Further, the
また、転送先を示す第1属性情報Attr1は、転送先識別番号DstNoそのもので無くても良い。すなわち、例えばAttr1は4ビットの信号であって、各ビットがRAM2、DMAコントローラ3、及びハードウェアエンジン4、5に対応し、“1”とされたビットに対応するハードウェアに対して転送が許可されるようにしても良い。例えばAttr1=(b1、b2、b3、b4)であって、b1〜b4の各々がRAM2、DMAコントローラ3、及びハードウェアエンジン4、5に対応していると仮定する。すると、Attr1=(1000)であれば、RAM2への転送は許可され、DMAコントローラ3及びハードウェアエンジン4、5への転送は遮断される。また、Attr1=(1110)であれば、RAM2、DMAコントローラ3及びハードウェアエンジン4への転送は許可され、ハードウェアエンジン5への転送は遮断される。つまりデータブロッカー6〜9は、自身の対応するビットb1〜b4のいずれかを確認し、そのビットが“1”であれば転送を許可し、“0”であれば遮断する。この場合、例えばAttr1=(0000)の場合に疑似転送を行うものとしても良い。
Further, the first attribute information Attr1 indicating the transfer destination may not be the transfer destination identification number DstNo itself. That is, for example, Attr1 is a 4-bit signal, and each bit corresponds to RAM2,
すなわちバス14は、外部から入力されたデータを順次転送する複数の保持回路30を備え、転送回路3は、データの転送終了後、ある要求(例えばバス初期化命令)をバス14に出力し、この要求に従ってバス14は、保持回路30の一部または全部を、あらかじめ定めされた一定の値で上書きする。
That is, the
なお、本願発明は上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。更に、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出されうる。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出されうる。 Note that the present invention is not limited to the above-described embodiment, and various modifications can be made without departing from the scope of the invention in the implementation stage. Furthermore, the above embodiments include inventions at various stages, and various inventions can be extracted by appropriately combining a plurality of disclosed constituent elements. For example, even if some constituent requirements are deleted from all the constituent requirements shown in the embodiment, the problem described in the column of the problem to be solved by the invention can be solved, and the effect described in the column of the effect of the invention Can be extracted as an invention.
1…LSI、2…RAM、3…DMAコントローラ、4、5…ハードウェアエンジン4、6〜9…データブロッカー、10…復号回路、11…属性付加装置、12…メモリ、13…セレクタ装置、14…バス、15…ハッシュ値確認回路、20、21、31…セレクタ、30…フリップフロップ30、40…データ転送線
DESCRIPTION OF
Claims (5)
データの転送先を示す第1属性情報を含み且つ暗号化されたデータを復号化すると共に、復号した旨を示す第2属性情報を、復号化した前記データに付加する復号回路と、
前記復号回路で復号化された前記データを、前記第2属性情報と共に前記半導体装置へ転送する転送回路と、
前記半導体装置と前記転送回路との間をデータ転送可能に接続するバス装置と、
前記転送回路によって前記バス装置を介して転送された前記データにつき、前記第1属性情報及び第2属性情報を確認して、該データが暗号化された状態から復号化されたデータであって、且つ前記第1属性情報によって示される前記転送先が前記半導体装置と不一致であった場合に、前記データの前記半導体装置への転送を遮断する遮断装置と
を具備することを特徴する半導体集積回路装置。 A semiconductor device;
A decryption circuit including first attribute information indicating a data transfer destination and decrypting the encrypted data, and adding second attribute information indicating the decryption to the decrypted data;
A transfer circuit for transferring the data decoded by the decoding circuit to the semiconductor device together with the second attribute information;
A bus device that connects the semiconductor device and the transfer circuit so that data can be transferred;
For the data transferred via the bus device by the transfer circuit, the first attribute information and the second attribute information are confirmed, and the data is decrypted from an encrypted state, And a shut-off device that shuts off transfer of the data to the semiconductor device when the transfer destination indicated by the first attribute information does not match the semiconductor device. .
前記復号回路において復号化された前記データと前記ハッシュ値とを比較し、両者が不一致であった場合に、該データの転送を中止するハッシュ値確認回路を更に備える
ことを特徴とする請求項1記載の半導体集積回路装置。 The data further includes a hash value;
The hash value confirmation circuit that compares the data decrypted by the decryption circuit with the hash value and stops transfer of the data when they do not match is further provided. The semiconductor integrated circuit device described.
前記転送回路は、前記データの転送終了後、予め定められた一定のデータを前記バス装置へ転送する
ことを特徴とする請求項1記載の半導体集積回路装置。 The bus device includes a plurality of holding circuits that sequentially transfer data input from the outside,
The semiconductor integrated circuit device according to claim 1, wherein the transfer circuit transfers predetermined data to the bus device after completion of the data transfer.
外部から与えられる前記データを転送するデータ転送線と、
前記データ転送線によって転送された前記データに含まれる情報に基づいて、前記データが暗号化された状態から平文に戻されたデータであって且つ前記半導体装置への転送を禁止されたデータであると判断した場合に、前記半導体装置への転送を遮断する遮断装置と
を具備することを特徴とするバス装置。 A bus device that is connectable to a semiconductor device and transfers data to the semiconductor device,
A data transfer line for transferring the data given from the outside;
Based on information included in the data transferred by the data transfer line, the data is returned to plain text from an encrypted state and is prohibited from being transferred to the semiconductor device. And a blocking device that blocks transfer to the semiconductor device when it is determined.
前記第2データに対して、復号した旨を示す第2属性情報を付加して第3データを得るステップと、
半導体装置を転送先として、前記第3データをバス装置へ転送するステップと、
前記バス装置へ転送されたデータにつき、前記第1属性情報及び第2属性情報をチェックするステップと、
前記第1属性情報及び第2属性情報をチェックした結果、前記第3データが暗号化された状態から復号化されたデータであって、且つ前記第1属性情報の示す転送先が前記半導体装置と不一致であった場合、該第3データの前記半導体装置への転送を遮断し、それ以外の場合には該第3データの前記半導体装置への転送を許可するステップと
を具備することを特徴とするデータ転送方法。 Decrypting the encrypted first data including the first attribute information indicating the transfer destination to obtain the second data;
Adding second attribute information indicating decryption to the second data to obtain third data;
Transferring the third data to a bus device using a semiconductor device as a transfer destination;
Checking the first attribute information and the second attribute information for the data transferred to the bus device;
As a result of checking the first attribute information and the second attribute information, the third data is data decrypted from the encrypted state, and the transfer destination indicated by the first attribute information is the semiconductor device. A step of blocking the transfer of the third data to the semiconductor device if not, and a step of permitting transfer of the third data to the semiconductor device otherwise. Data transfer method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008129816A JP2009277138A (en) | 2008-05-16 | 2008-05-16 | Semiconductor integrated circuit device, bus device, and data transfer method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008129816A JP2009277138A (en) | 2008-05-16 | 2008-05-16 | Semiconductor integrated circuit device, bus device, and data transfer method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009277138A true JP2009277138A (en) | 2009-11-26 |
Family
ID=41442483
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008129816A Withdrawn JP2009277138A (en) | 2008-05-16 | 2008-05-16 | Semiconductor integrated circuit device, bus device, and data transfer method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009277138A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016163445A (en) * | 2015-03-03 | 2016-09-05 | 東京電力ホールディングス株式会社 | Contract menu generation method |
-
2008
- 2008-05-16 JP JP2008129816A patent/JP2009277138A/en not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016163445A (en) * | 2015-03-03 | 2016-09-05 | 東京電力ホールディングス株式会社 | Contract menu generation method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7886150B2 (en) | System debug and trace system and method, and applications thereof | |
JP6621894B2 (en) | Anti-counterfeit communication system | |
US8543838B1 (en) | Cryptographic module with secure processor | |
US8750503B1 (en) | FPGA configuration bitstream encryption using modified key | |
CN103003824B (en) | Storage device and the method for the content file of Partial encryption are provided to main process equipment | |
US8966286B2 (en) | Method, system and integrated circuit for enabling access to a memory element | |
US20070162964A1 (en) | Embedded system insuring security and integrity, and method of increasing security thereof | |
US8156345B2 (en) | Method and system for memory attack protection to achieve a secure interface | |
US8285988B2 (en) | Method and system for command authentication to achieve a secure interface | |
Pierce et al. | Enhanced secure architecture for joint action test group systems | |
US20020150252A1 (en) | Secure intellectual property for a generated field programmable gate array | |
JP2010509662A (en) | Method and system for encryption of information stored in external non-volatile memory | |
JP4591163B2 (en) | Bus access control device | |
US8681996B2 (en) | Asymmetric key wrapping using a symmetric cipher | |
TWI393006B (en) | Security system and method for code dump protection | |
TWI474257B (en) | Microprocessor, method of protection and method of revoking first password | |
US8024583B2 (en) | Confidential information processing host device and confidential information processing method | |
JP2009277138A (en) | Semiconductor integrated circuit device, bus device, and data transfer method | |
US20080104396A1 (en) | Authentication Method | |
US8844022B2 (en) | Method and system to allow system-on-chip individual I/O control to be disabled and enabled by programmable non-volatile memory | |
JP4972692B2 (en) | DMA controller and data transfer method | |
US7978850B2 (en) | Manufacturing embedded unique keys using a built in random number generator | |
TWI744892B (en) | Electronic system and method for operating an electronic system | |
JP2009123051A (en) | Semiconductor integrated circuit, secret protection method, secret protection program, and recording medium | |
WO2021044578A1 (en) | Information processing device, information processing method, and information processing program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20110802 |