JP2010021624A - 情報処理装置 - Google Patents
情報処理装置 Download PDFInfo
- Publication number
- JP2010021624A JP2010021624A JP2008177879A JP2008177879A JP2010021624A JP 2010021624 A JP2010021624 A JP 2010021624A JP 2008177879 A JP2008177879 A JP 2008177879A JP 2008177879 A JP2008177879 A JP 2008177879A JP 2010021624 A JP2010021624 A JP 2010021624A
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- processing apparatus
- random number
- information processing
- processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
【課題】暗号演算処理を含む情報処理装置において、暗号の不正な解読を防止することができる技術を提供する。
【解決手段】1つの暗号処理アルゴリズムに対する複数の等価な論理回路と、乱数発生器と、前記乱数発生器で生成された乱数に基づいて前記複数の等価な論理回路を切り替えるスイッチとを再構成可能回路(RECONF)107内に構成する。CPU106は、ROM112に格納された構成情報に基づいて再構成可能回路107に論理回路を構成し、暗号演算処理を行う。データの暗号演算処理を行うときには、実際に処理を行う回路がランダムに切り替わるため、構成情報が読み出されても、実際に処理を行っている回路の特定を行うことが困難であり、既知の消費電力解析、タイミング解析によっての不正な解読を防止できる。
【選択図】図1
【解決手段】1つの暗号処理アルゴリズムに対する複数の等価な論理回路と、乱数発生器と、前記乱数発生器で生成された乱数に基づいて前記複数の等価な論理回路を切り替えるスイッチとを再構成可能回路(RECONF)107内に構成する。CPU106は、ROM112に格納された構成情報に基づいて再構成可能回路107に論理回路を構成し、暗号演算処理を行う。データの暗号演算処理を行うときには、実際に処理を行う回路がランダムに切り替わるため、構成情報が読み出されても、実際に処理を行っている回路の特定を行うことが困難であり、既知の消費電力解析、タイミング解析によっての不正な解読を防止できる。
【選択図】図1
Description
本発明は、情報処理装置に関し、特に携帯電話端末機器のように、データの処理だけでなく、外部との通信やデータの保護のために暗号処理を行う必要のある情報処理装置に適用して有効な技術に関する。
本発明者が検討した技術として、情報処理装置においては、たとえば以下の技術が考えられる。
暗号演算を高速に実行する必要性や、メモリの読み出し等の簡単な攻撃からの保護を目的として、たとえば暗号演算処理専用ハードウェアがシステムLSI内部に搭載されてきた。携帯電話端末機器などに搭載されるシステムLSIでは、電子決済などのセキュリティ保護が必要な処理を行うようになってきており、今後一層堅牢なシステムが求められている。
また、暗号演算処理に関しては,非特許文献1で示されるような電力解析や、非特許文献2で示されるようなタイミング解析などの攻撃手法が知られている。これらの非特許文献1及び2には、従来の半導体装置が、暗号演算処理回路が半導体装置の内部に固定して配置されていることが記載されている。そして、特許文献1において、その物理的配置が特定されると、暗号演算の消費電力や処理時間が一意に決まり、鍵の特定に対する脆弱性を有している旨が記載されている。
ICカードなどの暗号演算処理を行う半導体装置においては、この脆弱性に対する1つの解決策として、たとえば特許文献1に開示された技術がある。特許文献1には、再構成可能回路と乱数発生器を設け、同一の処理を行う複数の論理構成情報を用意し、乱数発生器で生成された乱数にしたがって論理構成情報を選択して再構成し、暗号演算処理を実行する技術が開示されている。同一の暗号演算処理を行う場合であっても消費電力波形や処理時間が異なるため、被処理データや鍵の特定が困難になる。この技術は、専用ハードウェアではなく、再構成可能回路を用い、処理する論理回路の構成をランダムに選択することから、実際に処理を行う回路を一意に特定することを困難にしている。
特開2007−49524号公報
ポール・コッカー(Paul Kocher),ジョシュア・ジャッフェ(Joshua Jaffe),ベンジャミン・ジュン(Benjamin Jun),「ディファレンシャル・パワー・アナリシス(Differential Power Analysis)」,クリプト99(Crypto'99),1999年,p.388−397
ポール・コッカー(Paul Kocher),「タイミング・アタックス・オン・インプリメンテイションズ・オブ・ディフィ・ヘルマン・アール・エス・エー・ディー・エス・エス・アンド・アザー・システムズ(Timing Attacks on Implementations of Diffie−Hellman,RSA,DSS,and Other Systems)」,クリプト96(Crypto'96),1996年,p.104−113
ワイ・ツノオ(Y.Tsunoo),イー・ツジハラ(E.Tsujihara),ケイ・ミネマツ(K.Minematsu),エッチ・ミヤウチ(H.Miyauchi),「クリプトアナリシス・オブ・ブロック・サイファーズ・インプリメンテド・オン・コンピュータズ・ウィズ・キャッシュ(Cryptanalysis of Block Ciphers Implemented on Computers with Cache)」,アイ・エス・アイ・ティー・エー2002(ISITA2002,2002年10月,p.7−11
伊東,辻井,「ア・ファースト・アルゴリズム・フォー・マルティプリケイティブ・インバース・イン・ジー・エフ・ユージング・ノーマル・ベース(A Fast Algorithm for Multiplicative Inverse in GF(2^m) using Normal Bases)」,インフォメイション・アンド・コンピューテイション(Information and Computation),1988年,第78巻,第3号,p171−177
ところで、前記のような情報処理装置の技術について、本発明者が検討した結果、以下のようなことが明らかとなった。
たとえば、前記特許文献1のようにICカードなどで提案されている、複数の論理構成情報を乱数発生器から発生させた乱数によって選択して、再構成可能回路に論理回路を構成し、暗号処理を実行する前記方法を、一般のシステムLSIに適用する場合、次の課題が存在する。
システムLSIには、外部メモリに置かれたプログラムを実行可能であるものや、あるいは内部に複数のCPUを有するものもある。このような複雑なシステムにおいては、たとえば設計者の意図に反して、攻撃者によって、内部メモリに格納された論理構成情報を読み出し、回路構成を解析することが可能な場合がある。
また、ROMに用意した複数の論理構成情報のうち、どれが選択されたかを特定できる場合がある。たとえば、CPUが一旦アクセスしたメモリ領域がキャッシュにコピーされる場合、それ以外のメモリ領域とでメモリアクセス時間に差異があることを利用した攻撃方法が非特許文献3において指摘されている。
この手法によれば、複数の構成情報をメモリに格納し、ランダムに選択して再構成可能回路に構成した場合でも、どの構成情報が選択されたかがソフトウェアによって観測され、実際に再構成可能回路に構成される論理回路の配置が明らかになってしまう恐れがある。
その場合、実際にどの論理回路がどのような配置で構成されて、データ処理が実行されたかが特定されてしまう。特定の回路で処理を行ったことが攻撃者に知られた場合には、既知の消費電力解析やタイミング解析によって被処理データの解読が可能になる可能性がある。
たとえば、AES暗号方式において、共通鍵からラウンドキーを生成するとき、共通鍵をバイトごとに分けていくつかのステップで処理する。特に、S−BOXとよばれるステップでは、鍵データのガロア体における逆元を求めた後、逆元にアファイン変換を行う。このときに、逆元演算の消費電力波形と鍵データとの間に相関があることが知られている。
したがって、このようなシステムLSIにおいては、構成情報が読み出されてしまった場合にも、実際に処理が実行された回路の特定が困難であるような方法が必要である。
そこで、本発明の1つの目的は、暗号演算処理を含む情報処理装置において、暗号の不正な解読を防止することができる技術を提供することにある。
本発明の前記並びにその他の目的と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。
本願において開示される実施例のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。
すなわち、複数のプロセッシングエレメントの接続関係を切り替えることにより構成される、第1論理回路、第2論理回路及びスイッチ回路を有する再構成可能回路と、乱数発生器とを有し、スイッチ回路は、乱数発生器で生成された乱数に基づいて第1論理回路と第2論理回路のどちらに演算を行わせるかを切り替えることを特徴とする。
代表的な実施例によれば、消費電力解析およびタイミング解析などによる不正な解読を防止することができる。
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
以下の実施の形態においては便宜上その必要があるときは、複数のセクションまたは実施の形態に分割して説明するが、特に明示した場合を除き、それらは互いに無関係なものではなく、一方は他方の一部または全部の変形例、詳細、補足説明等の関係にある。また、以下の実施の形態において、要素の数等(個数、数値、量、範囲等を含む)に言及する場合、特に明示した場合および原理的に明らかに特定の数に限定される場合等を除き、その特定の数に限定されるものではなく、特定の数以上でも以下でもよい。
図1は、本発明の一実施の形態による情報処理装置において、携帯電話端末システムの構成例を示すブロック図である。
図1に示すように、本実施の形態による携帯電話端末システムは、無線通信のための信号処理を実行するベースバンドLSI(Base Band LSI)102と、RFアンプ(RF)103と、アンテナ104と、データ処理を行うアプリケーションLSI 101と、データが保存される外部メモリ(Memory)105と、これらを接続するシステムバス114などから構成されている。
アプリケーションLSI101は、CPU106と、RAM111と、ROM112と、LSI外部と接続するためのインターフェース(I/F)113と、再構成可能回路(RECONF)107と、再構成可能回路107の制御を行うコントローラ(CTR)108と、再構成可能回路107とCPU106の両方からアクセス可能なレジスタ(REG)109と、割込みコントローラ(INT)110などから成る。
携帯電話端末システムが通信を行う際には、アプリケーションLSI101から出力されたデータをベースバンドLSI102でデジタル信号からアナログ信号に変換し、RFアンプ103で増幅した後、アンテナ104からデータを発信する。
たとえば、電子決済データを携帯電話端末からサーバに送信する際には、事前に交換された共通鍵を用いて、共通鍵暗号方式であるAES(Advanced Encryption Standard)によりデータを暗号化してから送信を行う。
本実施の形態の携帯電話端末システムにおいて、電子決済データをAES暗号化するために、アプリケーションLSI101内のCPU106は再構成可能回路107を用いる。
図2は、再構成可能回路107の構成例を示すブロック図である。
図2に示すように、再構成可能回路107は、たとえば、2次元状に縦m行・横n列に配列されたプロセッシングエレメント(PE)301〜309と、四方の隣接するPEどうし、PEとレジスタ109を接続する配線から成る。なお、m,nは自然数であり、図2では、複数のPEを一部省略してPE301〜309のみを示している。
図3は、プロセッシングエレメント(PE)301〜309の各構成例を示すブロック図である。
図3に示すように、プロセッシングエレメント(PE)301〜309のそれぞれは、隣り合う上下左右のPEと接続される32ビット幅の配線の入出力N,S,W,Eと、ALU403と、フリップフロップ404と、データパスを切り替えるマルチプレクサ(MUX)401,402,405と、デマルチプレクサ(DMUX)406から成る。マルチプレクサ401,402の入力、デマルチプレクサ406の出力N,E,W,SはそれぞれPEの入出力N,E,W,Sに接続されている。マルチプレクサ401,402,405とデマルチプレクサ406の制御信号を切り替えることにより、PE内のデータフローおよび隣接するPEとの接続関係を制御することができる。ALU403の機能と、データパスを切り替えるマルチプレクサ401,402,405とデマルチプレクサ406は、図1および図2に示したコントローラ108によって制御されている。これにより各PE間、PEとレジスタ109間のデータパス、PE内の機能を制御することができる。
構成情報とは、各PE間、PEとレジスタ109間のデータパス、PE内の機能を決めるパラメータである。CPU106は、この構成情報に基づいて、コントローラ108の制御レジスタを設定することにより、再構成可能回路107の回路を再構成することができる。
次に、CPU106が再構成可能回路107を制御して、暗号演算処理を実行するフローを説明する。図4は、CPU106による暗号演算処理フローを示すフローチャートである。
図4に示されるように、ステップS501でCPU106が暗号演算処理の実行を開始すると、ROM112から1つの構成情報を読み出す(ステップS502)。そして、読み出した構成情報に基づいて、再構成可能回路107の制御を行うコントローラ108に設定を行い、回路を再構成する(ステップS503)。さらにCPU106はRAM111に記憶されているデータを再構成可能回路107のレジスタ109にコピーし(ステップS504)、再構成可能回路107に処理開始を指示する(ステップS505)。たとえば、コントローラ108に演算処理イネーブルビットを用意し、CPU106からこのビットに“1”を書き込むことで、処理を実行するようにできる。
再構成可能回路107は、CPU106からの処理開始指示により、レジスタ109からデータを読み込み(ステップS510)、既に暗号演算処理を行うように再構成された回路で、レジスタ109から読み込んだデータを暗号演算処理し(ステップS511)、暗号演算処理を行ったデータをレジスタ109に書き戻し(ステップS512)、CPU106に割り込み要求を送信する(ステップS513)。
CPU106は、割り込み要求を受信する(ステップS506)と、レジスタ109から処理の完了したデータをRAM111にコピーし(ステップS507)、一連の処理のフローを終了する(ステップS508)。
以下、実際に暗号演算処理を行う論理回路の構成と処理の一例を説明する。図5は、再構成可能回路107で再構成された回路構成例を示すブロック図である。図5に示す再構成可能回路107aは、再構成可能回路107に、乱数発生器201と、スイッチとしてのマルチプレクサ(MUX)202およびデマルチプレクサ(DMUX)203と、スイッチによって選択される等価な複数の論理回路204〜207を構成した例を示す。
暗号演算処理は複雑なものもあり、再構成可能回路の回路規模によってはアルゴリズム全体を1度に実行できない場合も少なくない。この場合には、アルゴリズムを分割し、部分ごとに処理を実行し、処理が完了するたびに、再構成可能回路をCPUから前記の通りに再構成することで、全体の処理を実行することができる。1つの構成情報は、たとえば図5に示されるように、乱数発生器(RND)201と、4つの等価な論理回路(LOG1〜4)204〜207と、乱数発生器201から発生された乱数により論理回路204〜207を選択するマルチプレクサ(MUX)202とデマルチプレクサ(DMUX)203からなるスイッチとを再構成可能回路107aに構成するためのパラメータである。
ただし、データの入力に対してデータを出力する論理回路AとBが等価な回路であるとは、回路Aの出力と回路Bの出力が想定される範囲の各入力に対して演算結果が等しいことである。すなわち、等価とは、ある値に対する演算結果が同じであることをいう。たとえば、等価な2つの回路は演算結果が等しければよく、演算結果が確定するタイミングは異なっていても構わない。等価な論理回路を複数有することにより、同一の演算に対しても異なる消費電力波形とすることができる。
なお、1つの構成情報で構成される等価な回路の個数は2つ以上の複数であればよく、図5のように4つ(LOG1〜4)でなくても構わない。
このように本願発明は、プロセッシングエレメント(PE)の接続関係を切り替えることにより構成された、複数の論理回路(LOG1〜LOG4)及び複数の論理回路を切り替えるためのスイッチ回路としてのデマルチプレクサ(DMUX)及びマルチプレクサ(MUX)とを再構成可能回路(RECONF)内に有し、乱数発生器(RND)からの乱数RNDにより、どの論理回路に演算を行わせるかをスイッチ回路を用いて切り替えることを特徴とする。
この特徴により、演算を行わせる際に用いる論理回路を乱数を用いてランダムに選択することが可能になるため、同一のデータを処理する際にも、消費電力波形等は同一にならず、また予測もできない。そのため、消費電力解析及びタイミング解析等による不正な解読を防止することが可能となる。この詳細については、図13を用いて後述する。
ここで、本実施例の乱数発生器(RND)は、プロセッシングエレメント(PE)を用いて構成することができる。また、乱数発生器は、CPUを介さずに直接再構成可能回路(RECONF)に乱数を送付することができる。これらの特徴により本実施例は、再構成可能回路(RECONF)の外部に乱数発生器を配置し外部から乱数を伝送する場合と比較して、乱数を伝送する経路自体を不正に解析されることを防ぐことが可能となる。
次に図5および図6により、CPU106から構成情報が設定された後の再構成可能回路107aの処理フローを説明する。図6は、再構成された再構成可能回路107aの動作例を示すタイミングチャートである。
再構成可能回路107aの処理開始がCPU106のイネーブルビット(ENB)書き込みで指示されると、再構成可能回路107a内に構成された乱数発生器201が乱数(RND)を生成し始める。図6で、RNDはたとえば4クロックサイクルごとに1つずつH、I、J、Kと乱数を出力している。この乱数がマルチプレクサ202、デマルチプレクサ203の制御信号に入力されて、複数の等価な論理回路(LOG1〜4)204〜207が切り替わる。図6では、順に論理回路LOG1、LOG2、LOG3、LOG4が選択されている。
たとえば、図5の乱数発生器201から出力された乱数に基づいてマルチプレクサ202、デマルチプレクサ203を切り替えることにより、等価な論理回路204〜207のうちの一つの回路が選択される。
さらに、複数の等価な論理回路204〜207から1つが選択されたタイミングの次のクロックの立ち上がり時に、データの処理がこの選択された論理回路内で実行される。
たとえば、3つのデータが逐次的に実行される場合、各データごとにこのような論理回路の切り替えが行われる。3つのデータが順にLOG1、LOG2、LOG3の論理回路で処理され、すべてのデータの処理が完了すると、コントローラ108は割込み信号INTを発信し、一連の処理を終了する。
データの処理が終了すると、図1のコントローラ108から割込みコントローラ110に割込み信号を発生させ、再構成可能回路の暗号演算処理を終了する。
次に図7を用いて、乱数発生器201の構成例を説明する。図7は再構成可能回路の一部に論理構成情報に基づいて実現される論理構成例を示すブロック図である。図7は乱数発生器201の構成例を示している。
図7において、601〜607はそれぞれ再構成可能回路107aのPEの1つを設定することで実現され、601〜607であらわされる演算回路は再構成可能回路上に実現される。601から606は32ビットの算術演算ユニットALUであり、設定にしたがって各種算術演算、論理演算、ビット操作などを行うことができる。PE(NOT)601はビット反転、PE(8−bit ROTL)602は8ビット左回転、PE(THR)603はデータ通過、PE(STR 0x000F)604は即値0x000Fのストア、PE(XOR)605は排他的論理和、PE(AND)606は論理積、PE(FF)607はフリップフロップであり、図7のように接続される。PE(FF)607からは、乱数RNDが出力される。
図7のように構成される論理回路を詳細に記述すると、図8のようになる。
それぞれ、図7の601〜607が、図8の701〜707に対応している。“0”との排他的論理和と、“1”との論理積とはデータ通過と同じ動作であり、“1”との排他的論理和はインバータ、“0”との論理積はデータマスクと同じ動作である。これらを書き下すと、図9のようになる。なお、図9は再構成可能回路の一部に論理構成情報に基づいて実現される論理構成例を示す回路図である。
したがって、図9の論理回路(701〜703,705〜707)は、図10の論理回路(801〜806)で表される。図10において、801,803,804,805は701に、802は705に、806は707に、それぞれ対応している。図9の論理回路は、図10に示すように5個のインバータ801〜805と、1個のフリップフロップ806とからなるリングオシレータを8本形成する。
奇数個のインバータ801〜805からなるリングオシレータは最終段のインバータ805の出力が初段のインバータ801の入力に接続されており、初段入力の論理否定を最終段のインバータ805が出力し、これが初段入力に再び入力され、初段入力の値が論理否定される。このことにより、リングオシレータは発振することになる。
製造時のトランジスタ特性のばらつきや熱雑音などによって各ゲートの遅延時間に微小な変化が生じ、リングオシレータの発振周波数が変化する。これを用いて、観測者からは予測不可能な真性乱数を発生させることができる。
フリップフロップであるPE707の出力の下位8ビットは、8ビット幅の乱数を発生する。
AES暗号方式は8ビットのデータをガロア体GF(256)の元と同一視している。なお、特に断りのない限りこれを16進数で表示することにする。
ガロア体の積演算を実行する、等価な論理回路を複数有するような構成情報を用意し、AES暗号演算処理のS−BOXとよばれるステップを安全に実行する。
ガロア体の逆元を求める回路として、たとえば非特許文献4に記載された回路構成があり、ガロア体の元の2乗回路がその基本となる。ガロア体の積は任意の元と0x02との積演算と和の組合せで実現できる。
図11および図12に、図5で示した複数の等価な論理回路204〜207の構成例を示す。図11および図12は、入力データDに対して、ガロア体の積演算の基本となる0x02×Dを出力する等価な論理回路である。ここで、本明細書においては、ガロア体の積演算を、記号×を用いて表す。図11において、1001〜1004はそれぞれ再構成可能回路のPEの1つを設定することで実現され、1001〜1004で表わされる演算回路は再構成可能回路107上に実現される。同様に、図12において、1101〜1108はそれぞれ再構成可能回路107のPEの1つを設定することで実現され、1101〜1108で表わされる演算回路は再構成可能回路107上に実現される。しかし、入力から出力までに通過するゲートの段数や構成が異なるため、処理時間や消費電力は異なる。
図11において、PE(Left 1−bit Shift)1001は1ビット左シフト、PE(STR 0x117)1002は即値0x117をストア、PE(XOR)1003は排他的論理和、PE(MUX)1004はPE(Left 1−bit Shift)1001の出力信号のビット7によって制御されるマルチプレクサをそれぞれ表している。
図12において、PE(STR 0x55)1101は即値0x55をストア、PE(Left 1−bit Shift)1102は左1ビットシフト、PE(STR 0x117)1103は即値0x117をストア、PE(XOR)1104は排他的論理和、PE(Left 1−bit Shift)1105は左1ビットシフト、PE(XOR)1106は排他的論理和、PE(MUX)1107は入力Dのビット7によって制御されるマルチプレクサ、PE(XOR)1108は排他的論理和をそれぞれ表している。
たとえば、図12のPE1101において、即値0x55をストアする命令の代わりに、乱数発生器から発生させられた8ビットの乱数をそのまま出力することにしても、図12の回路はDに対してガロア体の積0x02×Dを実行する図11の回路と等価な論理回路になる。このとき、この論理回路は乱数との演算をデータパスに加えた回路で、かつ図11と等価な論理回路である。
このように、PE1101の値は、演算結果0x02×Dの値に影響を与えないため、PE1101を乱数の入力として用いることができる。従って、図11及び12に記載の発明は、データの入力Dと、乱数の入力として扱うことが可能な入力PE1101とを有することを特徴とする。この特徴により、同一の演算を行う際にも乱数を並行してデータパスに流すことが可能となるため、より消費電力波形等をランダムなものとすることができるため、より不正な解析を防止することが可能となる。
図13に、1つの論理回路でデータを処理した場合の消費電力波形W01〜W04と、複数の等価な論理回路を構成し、乱数発生器から発生させられた乱数に基づいて論理回路を切り替えながらデータを処理した場合の消費電力波形W11〜W14を示す。同じ論理回路でデータ処理の実行を続けた場合、同一データの処理を実行する際の消費電力波形は毎回同じになると考えられる。たとえば、データAを処理した際の波形W01とW04は同一である。
一方、データ処理のたびに複数の等価な論理回路をランダムに切り替えて選択し、データを処理した場合には、同じデータを処理した場合でも、実際の処理に用いられている回路が異なるため、波形は同一とは限らず、また予測もできない。たとえば、データAを処理した際の波形W11とW14は異なる波形である。
これによって、再構成可能回路を再構成する際に用いられた構成情報が読み取られたとしても、消費電力波形から、処理したデータの特定を行うことが非常に困難になる。
したがって、本実施の形態の情報処理装置によれば、再構成可能回路の内部で乱数が発生および消滅させられているため、同一の処理を行う複数の論理回路の選択およびその選択に用いられた乱数を外部から観測することができなくなる。したがって、暗号処理に用いた再構成可能回路の構成情報が攻撃者によって読み出されて解析された場合でも、実際に処理を実行した回路がいずれであるかを判別することができず、電力解析、タイミング解析が非常に困難になり、消費電力解析およびタイミング解析による不正な解読を防止することができる。
また、これらを専用ハードウェアで実装する場合には、複数の論理回路を実際の回路として用意しなければならず、論理規模が非常に大きくなってしまうが、再構成可能回路を用いることにより、規模を大きくすることなく、より堅牢な暗号処理を可能にしている。
以上、本発明者によってなされた発明をその実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
本発明は、半導体装置、特に暗号演算処理を行う半導体装置に有効である。
101 アプリケーションLSI
102 ベースバンドLSI(Base Band LSI)
103 RFアンプ(RF)
104 アンテナ
105 外部メモリ(Memory)
106 CPU
107,107a 再構成可能回路(RECONF)
108 コントローラ(CTR)
109 レジスタ(REG)
110 割込みコントローラ(INT)
111 RAM
112 ROM
113 インターフェース(I/F)
114 システムバス
201 乱数発生器(RND)
202,401,402,405 マルチプレクサ(MUX)
203,406 デマルチプレクサ(DMUX)
204〜207 論理回路
301〜309,601〜607,701〜707,1001〜1004,1101〜1108 プロセッシングエレメント(PE)
403 ALU
404,806 フリップフロップ
801〜805 インバータ(INV)
102 ベースバンドLSI(Base Band LSI)
103 RFアンプ(RF)
104 アンテナ
105 外部メモリ(Memory)
106 CPU
107,107a 再構成可能回路(RECONF)
108 コントローラ(CTR)
109 レジスタ(REG)
110 割込みコントローラ(INT)
111 RAM
112 ROM
113 インターフェース(I/F)
114 システムバス
201 乱数発生器(RND)
202,401,402,405 マルチプレクサ(MUX)
203,406 デマルチプレクサ(DMUX)
204〜207 論理回路
301〜309,601〜607,701〜707,1001〜1004,1101〜1108 プロセッシングエレメント(PE)
403 ALU
404,806 フリップフロップ
801〜805 インバータ(INV)
Claims (7)
- 複数のプロセッシングエレメントの接続関係を切り替えることにより構成される、第1論理回路、第2論理回路及びスイッチ回路を有する再構成可能回路と、
乱数発生器とを有し、
前記スイッチ回路は、前記乱数発生器で生成された乱数に基づいて前記第1論理回路と前記第2論理回路のどちらに演算を行わせるかを切り替えることを特徴とする情報処理装置。 - 請求項1記載の情報処理装置において、
前記乱数発生器は、前記再構成可能回路内に設けられ、前記複数のプロセッシングエレメントの接続関係を切り替えることにより構成されることを特徴とする情報処理装置。 - 請求項1記載の情報処理装置において、
前記乱数発生器は、CPUを介さずに前記再構成可能回路に前記乱数を伝送することを特徴とする情報処理装置。 - 請求項1記載の情報処理装置において、
前記第1論理回路と前記第2論理回路とは、等価な論理回路であることを特徴とする情報処理装置。 - 請求項1記載の情報処理装置において、
前記第1論理回路及び第2論理回路は、データを入力するための第1入力と、前記乱数発生器で発生される第2入力とを有し、前記第2入力の値によらず前記第1入力の値に対して前記演算を行うことを特徴とする情報処理装置。 - 請求項1記載の情報処理装置において、
前記演算は、暗号処理であることを特徴とする情報処理装置。 - 請求項1記載の情報処理装置において、
前記再構成可能回路内に構成された前記第1及び第2論理回路を実現する構成情報を格納したROMと、
前記再構成可能回路の構成情報を前記ROMから読み出し、前記再構成可能回路に前記第1及び第2論理回路を構成させるCPUとをさらに有することを特徴とする情報処理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2008177879A JP2010021624A (ja) | 2008-07-08 | 2008-07-08 | 情報処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2008177879A JP2010021624A (ja) | 2008-07-08 | 2008-07-08 | 情報処理装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2010021624A true JP2010021624A (ja) | 2010-01-28 |
Family
ID=41706124
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2008177879A Pending JP2010021624A (ja) | 2008-07-08 | 2008-07-08 | 情報処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2010021624A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN113127938A (zh) * | 2020-01-14 | 2021-07-16 | 新唐科技股份有限公司 | 安全集成电路及其方法 |
-
2008
- 2008-07-08 JP JP2008177879A patent/JP2010021624A/ja active Pending
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN113127938A (zh) * | 2020-01-14 | 2021-07-16 | 新唐科技股份有限公司 | 安全集成电路及其方法 |
| JP2021111410A (ja) * | 2020-01-14 | 2021-08-02 | 新唐科技股▲ふん▼有限公司 | セキュア集積回路及びその方法 |
| JP7061207B2 (ja) | 2020-01-14 | 2022-04-27 | 新唐科技股▲ふん▼有限公司 | セキュア集積回路及びその方法 |
| CN113127938B (zh) * | 2020-01-14 | 2023-05-12 | 新唐科技股份有限公司 | 安全集成电路及其方法 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Glamocanin et al. | Are cloud FPGAs really vulnerable to power analysis attacks? | |
| CN101206816B (zh) | 运算处理装置和运算处理控制方法 | |
| CN100583039C (zh) | 用于选择随机处理器来启动多处理器系统的系统和方法 | |
| Rahimunnisa et al. | FPGA implementation of AES algorithm for high throughput using folded parallel architecture | |
| Huang et al. | Trace buffer attack: Security versus observability study in post-silicon debug | |
| WO2015145487A1 (ja) | クロック位相制御回路 | |
| Shuyu et al. | A low-overhead PUF for anti-clone attack of RFID tags | |
| JP5188414B2 (ja) | 情報処理装置及び情報処理方法及びプログラム | |
| Moradi et al. | Dual-rail transition logic: A logic style for counteracting power analysis attacks | |
| US20110154062A1 (en) | Protection of electronic systems from unauthorized access and hardware piracy | |
| Zhao et al. | A lightweight hardware-assisted security method for efpga edge devices | |
| Chhabra et al. | Hardware obfuscation of aes ip core using pufs and prng: A secure cryptographic key generation solution for internet-of-things applications | |
| Pirpilidis et al. | On the effects of ring oscillator length and hardware Trojan size on an FPGA-based implementation of AES | |
| JP2003337750A (ja) | 内部解析防止機能付き半導体デバイス | |
| Roy et al. | Reconfigurable LUT: A double edged sword for security-critical applications | |
| JP2010021624A (ja) | 情報処理装置 | |
| WO2022164381A1 (en) | An advanced encryption standard (aes) device | |
| Konstantinou et al. | Privacy-preserving functional IP verification utilizing fully homomorphic encryption | |
| Gallais et al. | Hardware trojans for inducing or amplifying side-channel leakage of cryptographic software | |
| Soares et al. | A robust architectural approach for cryptographic algorithms using GALS pipelines | |
| Singh et al. | Design of High Performance MIPS Cryptography Processor | |
| Sai et al. | Design of a high-speed and low-power AES architecture | |
| Durvaux et al. | A survey of recent results in FPGA security and intellectual property protection | |
| Singh et al. | Performance evaluation of low power MIPS crypto processor based on cryptography algorithms | |
| Wang et al. | A high-efficient and low-cost secure AMBA framework utilizing configurable data encryption modeling against probe attacks |