特許第5976308号(P5976308)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ オベルチュール テクノロジーズの特許一覧

特許5976308攻撃の場合のマイクロ回路カードの指令手段の電源の安全確保
<>
  • 特許5976308-攻撃の場合のマイクロ回路カードの指令手段の電源の安全確保 図000002
  • 特許5976308-攻撃の場合のマイクロ回路カードの指令手段の電源の安全確保 図000003
  • 特許5976308-攻撃の場合のマイクロ回路カードの指令手段の電源の安全確保 図000004
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5976308
(24)【登録日】2016年7月29日
(45)【発行日】2016年8月23日
(54)【発明の名称】攻撃の場合のマイクロ回路カードの指令手段の電源の安全確保
(51)【国際特許分類】
   G06F 21/81 20130101AFI20160809BHJP
【FI】
   G06F21/81
【請求項の数】10
【外国語出願】
【全頁数】9
(21)【出願番号】特願2011-273503(P2011-273503)
(22)【出願日】2011年12月14日
(65)【公開番号】特開2012-128860(P2012-128860A)
(43)【公開日】2012年7月5日
【審査請求日】2014年11月26日
(31)【優先権主張番号】1060465
(32)【優先日】2010年12月14日
(33)【優先権主張国】FR
(73)【特許権者】
【識別番号】511304475
【氏名又は名称】オベルチュール テクノロジーズ
(74)【代理人】
【識別番号】110000729
【氏名又は名称】特許業務法人 ユニアス国際特許事務所
(72)【発明者】
【氏名】ニコラ、モーリン
(72)【発明者】
【氏名】クリストフ、ジロー
【審査官】 打出 義尚
(56)【参考文献】
【文献】 特開2010−068523(JP,A)
【文献】 欧州特許出願公開第01113386(EP,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/81
(57)【特許請求の範囲】
【請求項1】
当該モジュールへの攻撃を検出するための手段と、
攻撃が検出されたときに、不揮発性メモリのセル(110、510)への書き込み動作を指令するために、プログラミング電圧(U)の印加可能なチャージポンプ(120)に充電することができる指令手段(130)と、
通常の動作の際に電力が供給され、攻撃が検出されたときにのみ前記チャージポンプ(120)へと電力を供給するように構成されたコンデンサ(140)とを備えており、
前記コンデンサ(140)が、攻撃が検出されたときに前記指令手段(130)にも電力を供給することを特徴とするモジュール(100、500、600)。
【請求項2】
前記指令手段(130)が、フリップフロップ(132)及びNOTゲート(134)を備えており、前記フリップフロップの出力が、通常の動作においては第1のレベルにあり、攻撃が検出されたときに第2のレベルにあり、前記第2のレベルが、前記書き込み動作の継続時間の全体において高のままであることを特徴とする請求項1に記載のモジュール(100、500、600)。
【請求項3】
前記セル(110)が、ワン・タイム・プログラマブル(OTP)セルであることを特徴とする請求項1又は2に記載のモジュール(100)。
【請求項4】
前記セル(510)が、EEPROMメモリのセルであることを特徴とする請求項1又は2に記載のモジュール(500、600)。
【請求項5】
制御信号(SC)を含んでおり、
前記制御信号(SC)のレベル(NH、NB)が前記セル(510)の書き込み又はブランク状態を表わし、
前記制御信号(SC)が、攻撃が検出されたときに当該モジュール(500)の重要信号(SIV)を維持するために使用されることを特徴とする請求項4に記載のモジュール(500)。
【請求項6】
前記重要信号(SIV)が、リセット信号、クロック信号、又は当該モジュール(500)の外部の機器に接続された入力/出力信号の中から選択されることを特徴とする請求項5に記載のモジュール(500)。
【請求項7】
制御信号(SC)を含んでおり、
前記制御信号(SC)のレベル(NH、NB)が前記セル(510)の書き込み又はブランク状態を表わし、
前記制御信号(SC)が、当該モジュールの重要部品(150)への電力の供給を制御するスイッチ(T3)に対する指令に使用されることを特徴とする請求項4に記載のモジュール(600)。
【請求項8】
前記スイッチ(T3)が、PMOSトランジスタであることを特徴とする請求項7に記載のモジュール(600)。
【請求項9】
前記重要部品が、プロセッサ(150)であることを特徴とする請求項7に記載のモジュール(600)。
【請求項10】
ISO 7816規格によるマイクロ回路カードで構成される請求項1に記載のモジュール(100、500、600)。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電子モジュールの保護の分野に位置する。
【背景技術】
【0002】
この発明は、特に、マイクロ回路カード(例えばISO 7816規格によるもの)の保護に適用されるが、これに限られるわけではない。
【0003】
故障注入攻撃(fault injection attack)に対するマイクロ回路カードの保護の範囲において、以下のような対策が知られている。混乱が検出されたときにカードの不揮発性メモリの予約領域に所定の値を書き込み、この領域の内容を各々の指令の開始時にカードによってチェックする。そして、チェックしたこの内容が、前記所定の値に等しい場合には、カードが指令の実行を拒絶し、カードが使用不可能になる。
【0004】
公知の様相では、不揮発性メモリへの書き込み動作に先立ってチャージポンプの充電が必須であり、結果としてカードの電流消費の極めて顕著な増加が必然的に生じる。
【0005】
この急激な変化は、カードと直列に接続された抵抗器を使用する単純電力解析(SPA)によって観測可能である。
【0006】
従って、チャージポンプの充電検出モジュールを利用できる攻撃者にとってみれば、通常の動作においてはあり得ない電力消費の増加を検出し、すなわちカードの自身を動作不可能にしようとする試みの現れを検出したときに、前記領域への前記所定の値の書き込みを防止すべくカードへの電源を速やかに遮断することで、上述の攻撃対策を回避できてしまう。
【発明の概要】
【発明が解決しようとする課題】
【0007】
本発明は、この問題に対する解決策を提供する。
【課題を解決するための手段】
【0008】
より正確には、本発明は、
モジュールへの攻撃を検出するための手段と、
攻撃が検出されたときに、不揮発性メモリのセルへの書き込み動作を指令するために、プログラミング電圧の印加可能なチャージポンプに充電することができる指令手段と、
通常の動作の際に電力が供給され、攻撃が検出されたときにのみ前記チャージポンプへと電力を供給するように構成されたコンデンサと、を備えるモジュールに関する。
【0009】
このモジュールは、前記コンデンサが、攻撃が検出されたときに前記指令手段にも電力を供給することを特徴とする。
【0010】
本発明によれば、極めて好都合なことに、コンデンサの放電をマイクロ回路カードの電力消費の解析によって検出することが不可能である。
【0011】
攻撃が検出されたときに、コンデンサは指令手段にも電力を供給する。このため、マイクロ回路カードへの電力の供給を遮断しようとする攻撃は、効果的なものではなくなるだろう。
【0012】
本発明の一特定の実施の形態においては、指令手段が、フリップフロップ及びNOTゲートを備えており、ゲートの出力が、通常の動作においては第1の通常レベルにあり、攻撃が検出されたときに第2のレベルにある。
【0013】
不揮発性メモリのセルは、ワン・タイム・プログラマブル(OTP)セル又はEEPROMメモリのセルとすることができる。
【0014】
本発明の一特定の実施の形態においては、このモジュールが、制御信号を含んでおり、この制御信号のレベルが、EEPROMセルの書き込み又はブランク状態を表わす。この制御信号は、攻撃が検出されたときに当該モジュールの重要信号を維持するために使用される。
【0015】
この重要信号を、リセット信号、クロック信号、又は当該モジュールの外部の機器に接続される入力/出力信号の中から選択することができる。
【0016】
別の実施の形態においては、前記制御信号が、当該モジュールの重要部品への電力の供給を制御するスイッチに対する指令に使用される。
【0017】
前記重要部品は、例えばプロセッサで構成することができる。
【0018】
前記スイッチは、PMOSトランジスタとすることができる。
【0019】
本発明の一特定の実施の形態においては、当該モジュールが、ISO 7816規格によるマイクロ回路カードである。
【図面の簡単な説明】
【0020】
図1】本発明の第1の実施の形態によるモジュール100を示している。
図2】本発明の別の実施の形態によるマイクロ回路カード500を示している。
図3】本発明の別の実施の形態によるマイクロ回路カード600を示している。
【発明を実施するための形態】
【0021】
本発明の他の特徴及び利点が、添付の図面(決して本発明を限定しようとするものではない3つの実施の形態を示している)を参照しつつ以下に提示される説明から、明らかになるであろう。
【0022】
図1に、本発明の第1の実施の形態によるモジュール100を示す。このモジュールは、この例では、ISO 7816規格によるマイクロ回路カードで構成されている。
【0023】
このマイクロ回路カードは、セル110からなる不揮発性メモリを備えており、このセルは、1回だけプログラム可能である。このセルは、OTP(One Time Programmable)セルという名前で当業者に知られている。
【0024】
本発明によれば、OTPセル110は、マイクロ回路カード100に対する悪意のある攻撃の検出を表わす変数を保存すべく、変更されるように設計されている。そのような攻撃については、例えば或る動作を2回実行して対応する出力を比較することによって検出することができるが、個々の攻撃の検出は本発明の主題ではない。
【0025】
公知の様相で、マイクロ回路カード100は、OTPセル110へと値を書き込むように実現されたチャージポンプ120を備えている。不揮発性メモリへの書き込みに先立って、セル110にプログラミング電圧Uを印加するために、チャージポンプ120の充電が行われる。この充電に伴い、マイクロ回路カードの電流消費が極めて顕著に増加する。
【0026】
この急激な変化を、例えば抵抗器をマイクロ回路カード100に直列に接続することによって、例えばSPA(単純電力解析)によって観測することができる。
【0027】
マイクロ回路カード100は、OTPセル110への変数の書き込みを指令するための手段130を備えている。より正確には、この手段は、通常動作においては第1のレベル(低レベルNB)にあり、攻撃が検出されたときは第2のレベル(高レベルNH)にある指令(信号)COMを生成する。
【0028】
ここで説明される実施の形態においては、この指令手段が、D型フリップフロップ132と、NOTゲート134とを備えている。D型フリップフロップ132が、OTPセル110への書き込み動作を制御するビットに相当する。
【0029】
換言すると、この例においては、攻撃が検出されると、D型フリップフロップ132の出力が低レベル(NB)から高レベル(NH)へと反転される。
【0030】
本発明によれば、マイクロ回路カードが、電圧VCCが通常の動作において供給されるコンデンサ140を備えている。
【0031】
ここで説明される実施の形態においては、コンデンサ140の一方のリード線がスイッチT1へと接続されており、通常の動作においてはこのスイッチT1が導通されてコンデンサ140が充電される。このスイッチT1は、D型フリップフロップ132の出力へと直接接続されたPMOSトランジスタで構成されており、このD型フリップフロップ132は通常の動作において低レベル(NB)にある
【0032】
チャージポンプ120も、指令手段130によって制御される。指令手段130は、通常の動作の間はチャージポンプ120への電力の供給を阻止する。
【0033】
より正確には、ここで説明される実施の形態においては、チャージポンプ120の一方のリード線が、通常の動作において非導通であるスイッチT2に接続されている。このスイッチT2は、PMOSトランジスタで構成され、このPMOSトランジスタは、NOTゲート134を介してD型フリップフロップ132の出力へと接続されている。
【0034】
本発明によれば、コンデンサ140が、攻撃が検出されたときにのみチャージポンプ120への電力供給を行うように設計されている。ここで説明される実施の形態においては、コンデンサ140の一方のリード線が、スイッチT2へと接続されている。
【0035】
攻撃が検出されたとき、D型フリップフロップ132の出力が高レベル(NH)へと反転することで、スイッチT2の導通、コンデンサ140によるチャージポンプ120への充電、及びOTPセル110への書き込み動作がもたらされる。
【0036】
ここで説明される実施の形態においては、マイクロ回路カードのプロセッサ150が、OTPセルの中身をソフトウェアにて監視(ポーリング、割り込みなど)し、攻撃に応答する動作を実行するが、そのような動作は本発明の一部を構成するものではない。
【0037】
公知の様相で、OTPセル110のレジスタへの書き込みを正しく行うためには、D型フリップフロップの出力が、書き込み動作の全体にわたって高レベル(NH)のままであることが必要である。
【0038】
しかしながら、攻撃者にとって、例えばEMA(電磁気解析)を使用して、コンデンサ140からチャージポンプ120への放電の開始を検出し、マイクロ回路カード100への電力の供給を遮断して、D型フリップフロップの出力を乱し、つまりOTPセル110への書き込み作業を邪魔することが可能である。
【0039】
本発明は、コンデンサ140から指令手段130にも電力を供給することによって、この問題を解決する。
【0040】
本発明によれば、極めて好都合なことに、コンデンサ140の放電を、マイクロ回路カードの電力消費を解析することによって検出することは不可能である。
【0041】
従って、ここで説明される実施の形態においては、コンデンサ140が、D型フリップフロップ132及びNOTゲート134へと電力を供給する。
【0042】
フリップフロップ132への書き込みを、プロセッサ150又は他のハードウェア部品によって行うことができる。
【0043】
一変種(図示されていない)においては、このフリップフロップが、プロセッサ150の特定のレジスタの1ビットであってよい。
【0044】
図2に、本発明の別の実施の形態によるマイクロ回路カード500を示す。
【0045】
この図において、マイクロ回路カード500の構成要素のうちで、図1のマイクロ回路カード100の構成要素と同様の構成要素には、同じ参照符号を付している。
【0046】
この実施の形態においては、マイクロ回路カード500の不揮発性メモリが、EEPROMセル510である。この実施の形態の原理は、攻撃が検出されたときにチャージポンプ120へと電力を供給することによってEEPROMセル510への書き込み動作を開始させ、EEPROMメモリへの書き込み動作が実行されるときに、通常モードにおいては高レベルにある制御信号SCを低レベルへと反転させることにある。
【0047】
ここで説明される実施の形態においては、攻撃が検出されたときにマイクロ回路カード500の重要信号SIVを維持するために、制御信号SCは、これらの信号SC、SIVをANDゲートによって結合させることによって使用される。
【0048】
この重要信号は、例えばリセット信号(RESET)、クロック信号(CLOCK)、又はこのマイクロ回路カードの読み取り機に接続される入力/出力(IO)信号の中から選択することができる。
【0049】
このANDゲートからもたらされる信号SIVSが、本発明によって保護される重要信号である。
【0050】
ここで説明される実施の形態においては、EEPROMセル510のドレインdが、チャージポンプ120の出力及び制御信号SCへと接続され、これによって制御信号SCのレベルがEEPROMセル510の書き込み又はブランク状態を表わす。
【0051】
通常の動作においては、EEPROMセル510がブランクであり、ソースsとドレインdとの間に高いインピーダンスを有し、ゲートが接地されている。つまり、このEEPROMセル510は、開いたスイッチと同様に振る舞い、電流が通過することがない。
【0052】
第1のリード線が電圧VCCへと接続され、他方のリード線がドレインdへと接続された抵抗器520が、信号SCを高レベルに保持することを可能にする。
【0053】
この通常動作モードにおいて、チャージポンプ120は、チャージポンプ120の出力に配置された第1のダイオード530によって保護されている。
【0054】
指令手段130によって攻撃が検出されたとき、スイッチT2が導通状態になり、チャージポンプ120が、プログラミング電圧U(例えば、15V程度である)をEEPROMセル510のドレインdへと出力する。
【0055】
これにより、公知の様相で、EEPROM510の浮遊ゲートgfが正に充電され、書き込み動作がEEPROM510へと実行され、負になる閾値電圧(ゲート−ソース間)の低下が引き起こされる。
【0056】
書き込み動作の継続時間の全体にわたって、プログラミング電圧Uが電圧VCCよりも高いことに注目することが重要である。制御信号SCを、書き込み動作の継続時間の全体にわたって、Uレベルにではなく、VCCレベルに維持するために、マイクロ回路カード500は、EEPROM510のドレインdと制御信号SCを引き出すための抵抗器520との間に直列に配置された第2のダイオード540を備えている。
【0057】
この第2のダイオード540は、制御信号SCの後方に位置する論理回路を保護するために、チャージポンプ120の出力の制御信号SCへの接続を防止する。
【0058】
ひとたびEEPROMへの書き込み動作が完了すると、EEPROMは導通状態(ゲートと0Vであるソースとの間の電圧が、閾値電圧よりも大きくなる)になり、ソースsとドレインdとの間のインピーダンスが、抵抗器520と比べて低くなる。
【0059】
結果として、制御信号SCが低レベルへと反転し、このレベルを論理的に監視することによって攻撃を検出することができる。
【0060】
図3に、本発明の別の実施の形態によるマイクロ回路カード600を示す。
【0061】
この図において、マイクロ回路カード600の構成要素のうちで、図2のマイクロ回路カード500の構成要素と同様の構成要素には、同じ参照符号を付している。
【0062】
この実施の形態においては、マイクロ回路カード600が、図2の制御信号SCに対して相補的な制御信号SCを生成するためのNOTゲート560を有している。
【0063】
換言すると、この実施の形態においては、制御信号SCが、通常の動作において低レベル(NB)にあり、攻撃が検出された場合に高レベル(NH)にある。
【0064】
この制御信号SCが、カードの重要な構成要素(この例ではプロセッサ150)への電力の供給を遮断することができるスイッチを制御する。
【0065】
ここで説明される実施の形態においては、このスイッチが、PMOSトランジスタT3で構成される。
【0066】
より正確には、図3の実施の形態においては、マイクロ回路カード600が、制御信号SCによって制御されるトランジスタT3を備えている。この制御内容は、以下の通りである。通常の動作においては、制御信号SCが低レベルにあり、CPU150に電圧VCCが供給される。そして、攻撃が検出された場合には、制御信号SCが高レベルへと反転し、CPU150にはもはや電力が供給されない。
【符号の説明】
【0067】
100: モジュール(マイクロ回路カード)
110: セル(OTPセル)
120: チャージポンプ
130: 変数書込指令手段
132: D型フリップフロップ
134: NOTゲート
140: コンデンサ
150: プロセッサ
500: マイクロ回路カード
510: EEPROMセル
520: 抵抗器
530: 第1のダイオード
540: 第2のダイオード
560: NOTゲート
600: マイクロ回路カード
図1
図2
図3