[go: up one dir, main page]

JP6516097B2 - 演算装置、icカード、演算方法、及び演算処理プログラム - Google Patents

演算装置、icカード、演算方法、及び演算処理プログラム Download PDF

Info

Publication number
JP6516097B2
JP6516097B2 JP2015118397A JP2015118397A JP6516097B2 JP 6516097 B2 JP6516097 B2 JP 6516097B2 JP 2015118397 A JP2015118397 A JP 2015118397A JP 2015118397 A JP2015118397 A JP 2015118397A JP 6516097 B2 JP6516097 B2 JP 6516097B2
Authority
JP
Japan
Prior art keywords
clock signal
command
processing
synchronization
arithmetic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015118397A
Other languages
English (en)
Other versions
JP2017004304A (ja
Inventor
山田 真生
真生 山田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dai Nippon Printing Co Ltd
Original Assignee
Dai Nippon Printing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dai Nippon Printing Co Ltd filed Critical Dai Nippon Printing Co Ltd
Priority to JP2015118397A priority Critical patent/JP6516097B2/ja
Publication of JP2017004304A publication Critical patent/JP2017004304A/ja
Application granted granted Critical
Publication of JP6516097B2 publication Critical patent/JP6516097B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、複数のコアを備え、並列処理を行うことが可能な演算装置の技術分野に関する。
故障すると安全性を損なう可能性のある制御装置等では、サブコア等の監視部によってメインコアを監視し、メインコアの異常を検出して制御装置の安全な動作を保証する策が講じられてきた。その一例として、特許文献1に開示されるように、ロックステップと称される技術が普及している。ロックステップとは、複数のコアが同じ処理を並列的に実行し、実行結果を比較して各コアが正常に動作していることを判断する技術である。ロックステップが故障の検出を目的とする一方で、例えば、特許文献2に開示されるように、暗号技術を用いて対向機器を認証することにより、安全な動作を保証する技術が知られている。
特開2010−128627号公報 特開2013−138304号公報
しかしながら、認証用デバイスとして知られているスマートカードやTPM(Trusted Platform Module)等の分野においては、サイドチャネル攻撃が知られている。サイドチャネル攻撃とは、古くから暗号演算用制御装置において存在する脅威であり、演算時に消費される電力や発生する電磁波に代表される副次的な情報(サイドチャネル情報)を利用して演算内容を推定する攻撃手法である。例えば、複数のコアを備え、並列処理を行うことが可能なICカードにおいて、当該複数のコアが同一の処理を同時に実行する場合、消費電力や電磁波が増長されてサイドチャネル攻撃の標的になりやすくなってしまうことが問題となる。
そこで、本発明は、上記問題等に鑑みてなされたものであり、複数のコアが同一の処理を実行してもサイドチャネル情報が増長されず、高い耐タンパ性を実現することが可能な演算装置、ICカード、演算方法、及び演算処理プログラムを提供することを目的とする。
上記課題を解決するために、請求項1に記載の発明は、外部端末から受信されたコマンドに応じて同一の処理を並列して実行する第1の演算ユニット及び第2の演算ユニットを備える演算装置であって、クロック信号生成手段により生成されたクロック信号を所定時間遅延させるクロック信号遅延手段を備え、前記第1の演算ユニットは、前記クロック信号生成手段により生成されたクロック信号を入力し、当該クロック信号に同期して前記処理を行い、前記第2の演算ユニットは、前記コマンドがセキュリティ処理を要求するコマンドである場合、前記クロック信号遅延手段により所定時間遅延したクロック信号を入力し、当該クロック信号に同期して前記セキュリティ処理を行い、前記コマンドがセキュリティ処理を要求するコマンドでない場合、前記クロック信号生成手段により生成されたクロック信号を入力し、当該クロック信号に同期して前記セキュリティ処理以外の処理を行うことを特徴とする。
請求項2に記載の発明は、請求項1に記載の演算装置において、前記クロック信号遅延手段は、前記クロック信号を、前記所定時間として半周期遅延させることを特徴とする。
請求項に記載の発明は、外部端末から受信されたコマンドに応じて同一の処理を並列して実行する第1の演算ユニット及び第2の演算ユニットを備えるICカードであって、クロック信号生成手段により生成されたクロック信号を所定時間遅延させるクロック信号遅延手段を備え、前記第1の演算ユニットは、前記クロック信号生成手段により生成されたクロック信号を入力し、当該クロック信号に同期して前記処理を行い、前記第2の演算ユニットは、前記コマンドがセキュリティ処理を要求するコマンドである場合、前記クロック信号遅延手段により所定時間遅延したクロック信号を入力し、当該クロック信号に同期して前記セキュリティ処理を行い、前記コマンドがセキュリティ処理を要求するコマンドでない場合、前記クロック信号生成手段により生成されたクロック信号を入力し、当該クロック信号に同期して前記セキュリティ処理以外の処理を行うことを特徴とする。
請求項に記載の発明は、外部端末から受信されたコマンドに応じて同一の処理を並列して実行する第1の演算ユニット及び第2の演算ユニットを備える演算装置における演算方法であって、クロック信号生成手段により生成されたクロック信号を所定時間遅延させるクロック信号遅延ステップを含み、前記第1の演算ユニットは、前記クロック信号生成手段により生成されたクロック信号を入力し、当該クロック信号に同期して前記処理を行い、前記第2の演算ユニットは、前記コマンドがセキュリティ処理を要求するコマンドである場合、前記クロック信号遅延ステップにより所定時間遅延したクロック信号を入力し、当該クロック信号に同期して前記セキュリティ処理を行い、前記コマンドがセキュリティ処理を要求するコマンドでない場合、前記クロック信号生成手段により生成されたクロック信号を入力し、当該クロック信号に同期して前記セキュリティ処理以外の処理を行うことを特徴とする。
請求項に記載の発明は、外部端末から受信されたコマンドに応じて同一の処理を並列して実行する第1の演算ユニット及び第2の演算ユニットを備えるコンピュータに、クロック信号生成手段により生成されたクロック信号を所定時間遅延させるクロック信号遅延ステップを実行させ、前記第1の演算ユニットは、前記クロック信号生成手段により生成されたクロック信号を入力し、当該クロック信号に同期して前記処理を行い、前記第2の演算ユニットは、前記コマンドがセキュリティ処理を要求するコマンドである場合、前記クロック信号遅延ステップにより所定時間遅延したクロック信号を入力し、当該クロック信号に同期して前記セキュリティ処理を行い、前記コマンドがセキュリティ処理を要求するコマンドでない場合、前記クロック信号生成手段により生成されたクロック信号を入力し、当該クロック信号に同期して前記セキュリティ処理以外の処理を行うことを特徴とする。
本発明によれば、複数のコアが同一の処理を実行してもサイドチャネル情報が増長されず、高い耐タンパ性を実現することができる。
ICチップCの概要構成例を示す図である。 コア1及びコア2が同じクロック信号に同期して同一の処理を行ったときの消費電力の一例を示す図である。 コア1がクロック信号に同期して認証処理を行うと共に、コア2が当該クロック信号から半周期遅延したクロック信号に同期して同一の認証処理を行ったときの消費電力の一例を示す図である。
以下、図面を参照して本発明の実施形態について詳細に説明する。以下に説明する実施形態は、ICチップに対して本発明を適用した場合の実施の形態である。
先ず、図1を参照して、本実施形態に係るICチップの概要構成について説明する。図1は、ICチップCの概要構成例を示す図である。ICチップCは、本発明の演算装置の一例である。なお、ICチップCは、キャッシュカード、クレジットカード、電子マネーカード、社員カード等に搭載されて使用される。或いは、ICチップCは、スマートフォンや携帯電話機等の通信機器に組み込まれる。ICチップCは、通信機器の回路基板上に直接組み込んで構成するようにしてもよい。
ICチップCは、図1に示すように、コア1、コア2、クロック生成回路3、クロック切替回路4、切替制御レジスタ5、RAM(Random Access Memory)6、フラッシュメモリ7、ROM(Read Only Memory)8、及びI/O回路9を備えて構成される。コア1は、第1の演算ユニットの一例である。コア2は、第2の演算ユニットの一例である。コア1とコア2とは並列処理が可能に構成されている。コア1、コア2、切替制御レジスタ5、RAM6、フラッシュメモリ7、ROM8、及びI/O回路9は、バス10に接続されている。バス10は、アドレスバスとデータバスを備える。なお、クロック生成回路3はICチップCに備えられなくともよい。この場合、ICチップCは、外部端末に備えられたクロック生成回路からI/O回路9を介してクロック信号を入力する。
コア1,2は、夫々、演算器、内部メモリ、プログラムカウンタ、及び割込みコントローラ等を備え、同一の処理を並列して実行する。演算器は、それぞれ、命令レジスタ及びデコーダを備える。内部メモリは、それぞれ、データレジスタを備える。プログラムカウンタは、次に実行されるべき命令コードが記憶されているフラッシュメモリ7またはROM8上のアドレス(番地)を保持する。割込みコントローラは、コア1とコア2とがバス10を介さずに互いに割込み指令を与えるためのものである。
クロック生成回路3は、可変周波数発生回路(PLL(Phase Locked Loop))等を備える。クロック生成回路3は、クロック信号生成手段の一例である。クロック生成回路3は、例えば、外部端末からI/O回路9を介して入力されたクロックCLK、またはICチップCが備える内部発振器(図示せず)から入力されたクロックCLKから可変周波数発生回路により、コア1、コア2、切替制御レジスタ5、RAM6、フラッシュメモリ7、ROM8、及びI/O回路9用のクロック信号を生成する。例えば、クロック生成回路3は、入力されたクロックCLKに基づいて、クロック周波数が60MHzのクロック信号(システムクロック)を生成し、生成したクロック信号をコア1及びクロック切替回路4へ出力する。また、クロック生成回路3は、入力されたクロックCLKを、切替制御レジスタ5、RAM6、フラッシュメモリ7、ROM8、及びI/O回路9へ出力する。
クロック切替回路4は、インバータ(論理反転回路)、及びセレクタ等を備える。インバータは、クロック信号遅延手段の一例である。インバータは、クロック生成回路3から入力されたクロック信号を半周期遅延(例えば、クロック周波数が60MHzである場合、1クロック(1周期)に相当する時間(17ns)の“1/2”の時間遅延)させる。言い換えれば、インバータは、入力されたクロック信号の論理レベル(ハイレベルとローレベル)を反転させる。セレクタは、切替制御レジスタ5から出力された信号の論理レベルに応じて、クロック生成回路3から入力されたクロック信号と、インバータにより半周期遅延されたクロック信号との何れか一方のクロック信号を選択可能になっている。例えば、ハイレベルの信号が入力された場合、インバータにより半周期遅延されたクロック信号が選択される。これにより選択されたクロック信号がコア2へ出力される。図1の例では、インバータにより半周期遅延されたクロック信号が出力された例を示している。これにより、コア2へ入力されるクロック信号は、コア1へ入力されるクロック信号よりも半周期遅延(言い換えれば、クロック信号の論理レベルが反転)することになる。
切替制御レジスタ5は、例えば8ビットのレジスタであり、特定のビット(例えば最上位ビット)の2値状態(0または1)に応じた論理レベルの信号をクロック切替回路4のセレクタへ出力する。例えば、上記特定ビットは、初期状態では“0”が保持されているが、所定の条件下で、インバータの使用状態を表す「1」へ設定変更される。
RAM6は、ワークメモリであり、コア1及びコア2による処理結果が一時的に記憶される。フラッシュメモリ7は、不揮発性メモリであり、コア1及びコア2に実行させるOS及びアプリケーション等のプログラムを記憶する。また、フラッシュメモリ7には、セキュアな記憶領域が設けられており、この記憶領域には、暗号鍵(秘密鍵と公開鍵の組であってもよい)が記憶されている。なお、フラッシュメモリ7の代わりに、「Electrically Erasable Programmable Read-Only Memory」を適用しても構わない。また、ROM8には、フラッシュメモリ7に記憶されるプログラムの一部が記憶される。
I/O回路9は、外部端末とのインターフェイスを担う。接触式のICチップCの場合、I/O回路9には、例えば、C1〜C8の8個の端子が備えられている。例えば、C1端子は電源端子、C2端子はリセット端子、C3端子はクロック端子、C5端子はグランド端子、C7端子は外部端末との間で通信を行うための端子である。一方、非接触式のICチップCの場合、I/O回路9には、例えば、アンテナ、及び変復調回路が備えられている。なお、外部端末の例としては、ICカード発行機、ATM、改札機、認証用ゲート等が挙げられる。或いは、ICカード1が通信機器に組み込まれる場合、外部端末には通信機器の機能を担う制御部が該当する。
以上の構成において、コア1は、クロック生成回路3により生成されたクロック信号を入力し、当該クロック信号に同期して処理を行う。一方、コア2は、クロック生成回路3により生成されたクロック信号、またはクロック生成回路3により生成され切替制御レジスタ5のインバータにより半周期遅延したクロック信号を入力し、当該クロック信号に同期してコア1と同一の処理を行う。このような処理は、例えば外部端末からのコマンドが受信された場合に、以下の(1)〜(4)の流れで繰り返し行われる。
(1)プログラムカウンタが指し示すアドレスに記憶されている命令コードが、フラッシュメモリ7から命令レジスタにフェッチされる(命令読出)。
(2)フェッチされた命令コードがデコーダによって解釈(デコード)される(命令解釈)。なお、命令コードは、アプリケーションまたはOSに記述されている。例えば、複数のアプリケーションから使用される暗号用命令コードなどは、OSに記述されている。
(3)解釈された命令が実行される(命令実行)。なお、命令実行により、例えば、通常の算術演算、論理演算、暗号化演算、復号演算等が行われる。
(4)演算結果がRAM6に書き込まれる(書き込み)。書き込み後、プログラムカウンタの値が進められ、次の命令コードがフェッチされることになる。
例えば、外部端末から受信されたコマンドが、暗号化演算または復号演算等を伴う認証処理(セキュリティ処理の一例)を要求するコマンド(認証コマンド)でない場合、コア1は、切替制御レジスタ5の特定ビットの設定変更を行うことなく(初期状態を表す“0”)、コア2へ認証処理の要求を行う。この場合、コア1及びコア2へは、クロック生成回路3により生成された同一のクロック信号が入力される。こうして、コア1及びコア2は、クロック生成回路3により生成されたクロック信号を入力し、当該クロック信号に同期して同一の処理を行う。なお、例えば認証処理であることが判定される際に、アプリケーションのレベルで判定される場合もあれば(認証コマンドを受信した場合など)、OSのレベルで判定される場合もある(暗号化演算実行時など)。
一方、外部端末から受信されたコマンドが、暗号化演算または復号演算等を伴う認証処理(セキュリティ処理の一例)を要求するコマンドである場合、コア1は、切替制御レジスタ5の特定ビットを、初期状態を表す“0”から、インバータの使用状態を表す“1”へ設定変更する。これにより、クロック切替回路4のセレクタは、切替制御レジスタ5から出力された信号の論理レベル(例えば、ハイレベル)に応じて、インバータにより半周期遅延されたクロック信号を選択するように切り替える。そして、コア1は、コア2へ認証処理の要求を行う。この場合、コア1へは、クロック生成回路3により生成されたクロック信号が入力される一方、コア2へは、当該クロック信号から半周期遅延されたクロック信号が入力される。
こうして、コア1は、クロック生成回路3により生成されたクロック信号を入力し、当該クロック信号に同期して処理を行う一方、コア2は、クロック生成回路3により生成され切替制御レジスタ5のインバータにより半周期遅延したクロック信号を入力し、当該クロック信号に同期してコア1と同一の処理を行う。
図2は、コア1及びコア2が同じクロック信号に同期して同一の処理を行ったときの消費電力の一例を示す図である。図2の場合、命令実行時に消費電力が最も高くなっており、コア1の命令実行とコア2の命令実行とが同じタイミングであることから、合計消費電力が2倍に増長されている。一方、図3は、コア1がクロック信号に同期して認証処理を行うと共に、コア2が当該クロック信号から半周期遅延したクロック信号に同期して同一の認証処理を行ったときの消費電力の一例を示す図である。図3の場合、コア1の命令実行とコア2の命令実行とが半周期ずれていることから、図2の場合に比べ、合計消費電力が平坦化されている。
以上説明したように、上記実施形態によれば、ICチップCは、クロック生成回路3により生成されたクロック信号を半周期遅延させるインバータを備え、コア1は、クロック生成回路3により生成されたクロック信号を入力し、当該クロック信号に同期して処理を行い、コア2は、クロック生成回路3により半周期遅延したクロック信号を入力し、当該クロック信号に同期してコア1と同一の処理を行うように構成したので、コア1及びコア2が同一の処理を実行してもサイドチャネル情報が増長されず、高い耐タンパ性を実現することができる。また、コア2は、認証処理等のセキュリティ処理以外の処理を行う場合、コア1と同じクロック信号を入力し、当該クロック信号に同期して当該処理を行うように構成したので、クロック信号の遅延による処理時間の遅延を最低限に抑えることができる。
なお、上記実施形態においては、クロック信号遅延手段としてインバータを適用した場合を説明したが、クロック信号の立ち上がりエッジと立ち下がりエッジとを検出するクロック検知回路を用いてクロック信号を半周期遅延させるように構成してもよい。この場合、ICチップCには、クロック切替回路4に代えてクロック検知回路が備えられ、当該クロック検知回路は、コア1とコア2のそれぞれに接続される。ここで、コア1とコア2の共通のクロック検知回路が備えられてもよいし、コア1とコア2と別々のクロック検知回路が備えられてもよい。そして、コア1に接続されるクロック検知回路はクロック信号の立ち上がりエッジを検出してクロックの開始位置とし、コア2に接続されるクロック検知回路はクロック信号の立ち下がりエッジを検出してクロックの開始位置とする。これにより、コア2は、コア1に入力されるクロック信号に対して半周期遅延したクロック信号を入力し、当該クロック信号に同期して前記処理を行うことができる。また、上記実施形態においては、クロック信号遅延手段としてインバータを例にとり、入力されたクロック信号を半周期(0.5周期)遅延(所定時間遅延の一例)させるように構成した。この場合、処理速度と、本発明の効果(サイドチャネル情報が増長されない)との兼ね合いから好適であるが、半周期遅延させることに代えて、クロック信号遅延手段は、入力されたクロック信号を1.5周期または2周期(或いは0.5周期、1.5周期、及び2周期以外の時間)遅延させるように構成してもよく、この構成であっても本発明の効果を発揮することができる。また、上記実施形態においては、2つのコアを備えたICチップを例にとって説明したが、3つ以上のコアを備えるマルチコアプロセッサに対しても本発明は適用可能である。
1,2 コア
3 クロック生成回路
4 クロック切替回路
5 切替制御レジスタ
6 RAM
7 フラッシュメモリ
8 ROM
9 I/O回路
10 バス
C ICチップ

Claims (5)

  1. 外部端末から受信されたコマンドに応じて同一の処理を並列して実行する第1の演算ユニット及び第2の演算ユニットを備える演算装置であって、
    クロック信号生成手段により生成されたクロック信号を所定時間遅延させるクロック信号遅延手段を備え、
    前記第1の演算ユニットは、前記クロック信号生成手段により生成されたクロック信号を入力し、当該クロック信号に同期して前記処理を行い、
    前記第2の演算ユニットは、前記コマンドがセキュリティ処理を要求するコマンドである場合、前記クロック信号遅延手段により所定時間遅延したクロック信号を入力し、当該クロック信号に同期して前記セキュリティ処理を行い、前記コマンドがセキュリティ処理を要求するコマンドでない場合、前記クロック信号生成手段により生成されたクロック信号を入力し、当該クロック信号に同期して前記セキュリティ処理以外の処理を行うことを特徴とする演算装置。
  2. 前記クロック信号遅延手段は、前記クロック信号を、前記所定時間として半周期遅延させることを特徴とする請求項1に記載の演算装置。
  3. 外部端末から受信されたコマンドに応じて同一の処理を並列して実行する第1の演算ユニット及び第2の演算ユニットを備えるICカードであって、
    クロック信号生成手段により生成されたクロック信号を所定時間延させるクロック信号遅延手段を備え、
    前記第1の演算ユニットは、前記クロック信号生成手段により生成されたクロック信号を入力し、当該クロック信号に同期して前記処理を行い、
    前記第2の演算ユニットは、前記コマンドがセキュリティ処理を要求するコマンドである場合、前記クロック信号遅延手段により所定時間遅延したクロック信号を入力し、当該クロック信号に同期して前記セキュリティ処理を行い、前記コマンドがセキュリティ処理を要求するコマンドでない場合、前記クロック信号生成手段により生成されたクロック信号を入力し、当該クロック信号に同期して前記セキュリティ処理以外の処理を行うことを特徴とするICカード。
  4. 外部端末から受信されたコマンドに応じて同一の処理を並列して実行する第1の演算ユニット及び第2の演算ユニットを備える演算装置における演算方法であって、
    クロック信号生成手段により生成されたクロック信号を所定時間遅延させるクロック信号遅延ステップを含み、
    前記第1の演算ユニットは、前記クロック信号生成手段により生成されたクロック信号を入力し、当該クロック信号に同期して前記処理を行い、
    前記第2の演算ユニットは、前記コマンドがセキュリティ処理を要求するコマンドである場合、前記クロック信号遅延ステップにより所定時間遅延したクロック信号を入力し、当該クロック信号に同期して前記セキュリティ処理を行い、前記コマンドがセキュリティ処理を要求するコマンドでない場合、前記クロック信号生成手段により生成されたクロック信号を入力し、当該クロック信号に同期して前記セキュリティ処理以外の処理を行うことを特徴とする演算方法。
  5. 外部端末から受信されたコマンドに応じて同一の処理を並列して実行する第1の演算ユニット及び第2の演算ユニットを備えるコンピュータに、
    クロック信号生成手段により生成されたクロック信号を所定時間遅延させるクロック信号遅延ステップを実行させ、
    前記第1の演算ユニットは、前記クロック信号生成手段により生成されたクロック信号を入力し、当該クロック信号に同期して前記処理を行い、
    前記第2の演算ユニットは、前記コマンドがセキュリティ処理を要求するコマンドである場合、前記クロック信号遅延ステップにより所定時間遅延したクロック信号を入力し、当該クロック信号に同期して前記セキュリティ処理を行い、前記コマンドがセキュリティ処理を要求するコマンドでない場合、前記クロック信号生成手段により生成されたクロック信号を入力し、当該クロック信号に同期して前記セキュリティ処理以外の処理を行うことを特徴とする演算処理プログラム。
JP2015118397A 2015-06-11 2015-06-11 演算装置、icカード、演算方法、及び演算処理プログラム Active JP6516097B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015118397A JP6516097B2 (ja) 2015-06-11 2015-06-11 演算装置、icカード、演算方法、及び演算処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015118397A JP6516097B2 (ja) 2015-06-11 2015-06-11 演算装置、icカード、演算方法、及び演算処理プログラム

Publications (2)

Publication Number Publication Date
JP2017004304A JP2017004304A (ja) 2017-01-05
JP6516097B2 true JP6516097B2 (ja) 2019-05-22

Family

ID=57754331

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015118397A Active JP6516097B2 (ja) 2015-06-11 2015-06-11 演算装置、icカード、演算方法、及び演算処理プログラム

Country Status (1)

Country Link
JP (1) JP6516097B2 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2399426A (en) * 2003-03-12 2004-09-15 Sharp Kk Fault detection in data processing apparatus
JP2008518308A (ja) * 2004-10-25 2008-05-29 ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング マルチプロセッサシステム内のデータを分配するための方法およびデータ分配ユニット
JP2010160712A (ja) * 2009-01-09 2010-07-22 Renesas Technology Corp 半導体データ処理デバイス及びデータ処理システム

Also Published As

Publication number Publication date
JP2017004304A (ja) 2017-01-05

Similar Documents

Publication Publication Date Title
Moore et al. Improving smart card security using self-timed circuits
AU725888B2 (en) Improved integrated circuit and process for using an integrated circuit of this type
JP6053786B2 (ja) Arm(登録商標)トラストゾーン実施のためのファームウェア基盤トラステッドプラットフォームモジュール(tpm)
US11308217B2 (en) Randomized execution countermeasures against fault injection attacks during boot of an embedded device
KR100909364B1 (ko) 시스템 클록의 노출을 차단하는 메모리 컨트롤러와 그 방법
CN108885663B (zh) 用于使处理器抵御瞬时故障攻击的自适应系统和程序
TWI621963B (zh) 藉由變更時脈延遲以防止旁通道攻擊的系統及其方法
Mahmoud et al. Electrical-level attacks on CPUs, FPGAs, and GPUs: Survey and implications in the heterogeneous era
EP1772811A2 (en) System and method for using dummy cycles to mask operations in a secure microcontroller
CN112149190A (zh) 用于非易失性存储器模块的热启动攻击缓解
Tsiokanos et al. DTA-PUF: Dynamic timing-aware physical unclonable function for resource-constrained devices
WO2015145487A1 (ja) クロック位相制御回路
Mahmoud et al. DFAulted: Analyzing and exploiting CPU software faults caused by FPGA-driven undervolting attacks
JP2005513604A (ja) コンピューティングシステムの耐障害性とセキュリティを向上させるシステム
CN102736890A (zh) 基于开环结构的高速随机数发生器
CN110032897B (zh) 一种多核处理器及其基于时间约束的故障攻击方法
US20130219187A1 (en) Circuit arrangement, a method for forming a circuit arrangement, and method for integrity checking
US20050028004A1 (en) Memory security device for flexible software environment
US8412996B2 (en) Method and device for checking the integrity of a logic signal, in particular a clock signal
Gross et al. CPU to FPGA power covert channel in FPGA-SoCs
JP6516097B2 (ja) 演算装置、icカード、演算方法、及び演算処理プログラム
US7747935B2 (en) Method and device for securing the reading of a memory
JP6814305B2 (ja) セキュリティ要素と一体化される端末チップ
JP3788881B2 (ja) Icカードと半導体集積回路装置
EP1728152B1 (en) Pipeline circuit

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180426

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181211

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190208

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190320

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190402

R150 Certificate of patent or registration of utility model

Ref document number: 6516097

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150