(57)【特許請求の範囲】
【請求項１】
各有効オペレーションがアルゴリズムの１ステップに対応して、アルゴリズムを実行する過程で電子回路により遂行される同一形式の一連の有効オペレーションの安全性を確保する方法であって、その一連の有効オペレーションに、同一形式の１つ又はいくつかのダミーオペレーションをランダムに導入するステップと、連続する２つの有効オペレーション又は連続する２つのダミーオペレーション又は連続する有効オペレーションとダミーオペレーションとの２つのオペレーションの実行の間に一定した時間間隔を維持する追加ステップを有することを特徴とする、同一形式の一連の有効オペレーションの安全性を確保する方法。
【請求項２】
一連の有効オペレーションに導入されるダミーオペレーションの数は、アルゴリズムを新たに実行する毎、一定であることを特徴とする、請求項１に記載の同一形式の一連の有効オペレーションの安全性を確保する方法。
【請求項３】
暗号作成解読技術の分野での請求項１又は請求項２に記載の方法の使用。
【請求項４】
請求項１又は請求項２に記載の安全性を確保する方法を実施することを特徴とする、アルゴリズムを実行するための電子装置。
【請求項５】
請求項１又は請求項２に記載の安全性を確保する方法を実施することを特徴とする、アルゴリズムを実行するための電子装置を備えるＩＣカード。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、アルゴリズムを実行する過程で電子回路により遂行される一連のオペレーションの安全性を確保する方法に関する。
更に詳細には、本発明は、アルゴリズムを実行する過程で電子回路により遂行される同一形式の一連の有効オペレーションの安全性を、有効オペレーションの実行に伴う物理現象を電子回路の外部から観察することを妨げる寄生情報を介在させることにより、確保する方法に関する。
本発明において、アルゴリズムは、タスクを成し遂げるために必要な一連の作用として理解されたい。
【０００２】
【従来の技術】
本発明の適用分野は、主に暗号技術の分野である。暗号技術は、情報を隠す科学と定義することもできる。暗号技術は、構成素子やオペレティングシステムの物理的安全性と共に、ＩＣカードの安全性の本質的な要素を構成している。暗号技術は、通信文の暗号化と解読のための技術である暗号作成解読技術を、秘密コードを破る技術である暗号解析技術とを含む。
【０００３】
ＩＣカードでは、暗号技術は、情報の秘密性を確保するために、又は、ＩＣカードもしくは利用者の認証又は更に通信文の署名のために、様々な機構を実現している。
暗号技術を実現している全手段は、暗号システムを形成している。そのような暗号システムは、秘密情報、特にデジタル通信文の暗号化と解読のための秘密情報を含んでいる。
【０００４】
この秘密情報の中に、デジタル通信文の暗号化と解読のため使用される秘密協定のパラメータである暗号化キーと解読キーとが記載されている場合も有る。
これら暗号化キーと解読キーを使用するには、それら暗号化キーと解読キーを特徴付けるいくつかのデータ転送がしばしば必要である。暗号化キーと解読キーが暗号システムで使用されるとき、デジタルキーとそのほかの秘密情報が、様々なメモリ又は処理レジスタとモジュールとの間を転送される。レジスタ間、モジュール間、又はレジスタとモジュールとの間の転送は、秘密情報の断片を運ぶ電流又は磁界が出現することで、外に現れる。その秘密情報の断片が、例えば、暗号化キーと解読キーに係る場合もある。
【０００５】
【発明が解決しようとする課題】
暗号システムは、外部世界から見えてしまう問題を持っている。実際、回路の異なる部分間の情報交換により生じる電気信号又は磁界を測定すれば、暗号化システム又は解読システムによるデータ保護に係る秘密情報の断片にアクセスできる場合もある。
例えば、その電気信号の１つは、回路の電源コンタクトが内部であるか外部であるかに係りなく、回路の電源コンタクトに見い出すことができる。
【０００６】
従って、デジタルキーは、電気的又は磁気的な信号の測定を蓄積し、その測定を統計的に解析することにより、発見できる可能性がある。
一般的に言うならば、電子回路は、その電子回路が遂行するオペレーションに関係して電気消費をする。従って、この電気消費を測定することによって、電子回路内の「隠された情報」を見つけ出すことができる。この問題は、どのような安全確保された構成要素、特に、ＩＣカードの構成要素でも生じる。
【０００７】
それ故、レジスタ間の秘密データの転送のような、同一又は類似の頻繁に行われるオペレーションを含むアルゴリズムを電子回路が実行するとき、そして、そのオペレーションを一つずつ細かく観察することにより秘密情報を発見できる場合、上述した電気信号の測定の統計的解析により、電子回路の安全性が阻害されることもある。
【０００８】
本発明の目的は、上述した問題の解決策を提案することである。
【０００９】
本発明の目的のために、本発明は、様々なレジスタ間のデータ転送での電気信号を解析しても気づかれなくする、アルゴリズムを実行する過程で電子回路により遂行される一連のオペレーションの安全性を確保する方法が提供せんとするものである。
【００１０】
【課題を解決するための手段】
上記目的を達成するために、本発明によれば、アルゴリズムを実行する過程で電子回路により遂行される同一形式の一連の有効オペレーションにダミーオペレーションを挿入する。このダミーオペレーションは、有効オペレーションに非常に似ている。各ダミーオペレーションは、アルゴリズムに実行ごとにランダムなラインに挿入される。かくして、比較可能な電流測定値を得ることが非常に困難になる。
【００１１】
ダミーオペレーションは、命令の実行に伴う観察可能な物理的パラメータ（電流消費、磁気放射など）が、有効オペレーションと同一又は見かけ上非常に類似した特徴を有するオペレーションのように構成することもできる。これら物理的パラメータは特に、回路の電流又は電圧の供給端子で検出できる。この方法では、本ダミーオペレーションは、サンプルごとには検出不能であり、従って、どんな統計的な解析も防ぐことができ、又は、少なくとも非常に困難にすることができる。
【００１２】
従って、本発明は、各有効オペレーションがアルゴリズムの１ステップに対応して、アルゴリズムを実行する過程で電子回路により遂行される同一形式の一連の有効オペレーションの安全性を確保する方法であって、その一連の有効オペレーションに、同一形式の１つ又はいくつかのダミーオペレーションをランダムに導入するステップを有することを特徴とする方法に関する。
【００１３】
有効オペレーションと同一形式のダミーオペレーションは、有効オペレーションの検出を困難にするために有効オペレーションと同一又は十分に似て見える物理的な特徴をダミーオペレーションが有するならば、当該アプリケーションに従い様々な形をとることができる。限定的ではないが、例えば、ダミーオペレーションは、計算の実際の実行でもよい。その場合、メモリに計算結果を記録しないか、又は、当該オペレーションのためには動作しないメモリに計算結果を記録する。
かくして、偽計算又はオペレーションの偽部分集合が、ダミーオペレーションにより導入される。
【００１４】
本発明は、例えばＩＣカードのような、アルゴリズムを実行する電子装置であって、以下に述べる選択的な特徴を持つ、上記した方法を実施することを特徴とする電子装置に関する。
【００１５】
【発明の実施の態様】
本発明の様々な特徴及び効果は、本発明による方法の好ましい実施の態様を示す以下の説明からより明らかになる。しかし、実施の態様は、あくまで例示であり、本発明を何ら限定するものではない。
【００１６】
本発明による方法の好ましい実施の態様によれば、或る数のダミーオペレーションが、アルゴリズムを実行する過程で電子回路により遂行される同一形式の有効オペレーション間に挿入される。これらダミーオペレーションは、ランダムに導入される。そして、ダミーオペレーションは、アルゴリズムに伴うどんな有効オペレーションにも導入できる。
また、１つ又はいくつかのダミーオペレーションを、アルゴリズムに伴う最初の有効オペレーションの前に、又は、アルゴリズムに伴う最後の有効オペレーションの後に、置くこともできる。更に、いくつかの連続するダミーオペレーションを置くこともできる。
【００１７】
同一アルゴリズムの実行ごとに電流測定が異なるように、アルゴリズムの実行ごとに新たなランダムなオペレーションが導入される。
しかしながら、好ましい実施の態様において、本発明による方法は、２つのオペレーションが連続する有効オペレーションであるか連続するダミーオペレーションであるか有効オペレーションとダミーオペレーションとであるかに関係なく、２つのオペレーションの実行の間に一定した時間間隔を維持する追加ステップを有する。かくして、アルゴリズムを実行する過程で電子回路により遂行される有効オペレーションに伴う電気信号の時間を調べても、ダミーオペレーションの挿入がはっきりとはわからない。
【００１８】
最後に、一連の有効オペレーションに導入されるダミーオペレーションの数は、アルゴリズムを新たに実行する毎、一定であることが、必須ではないが好ましい。この場合、従って、アルゴリズムの全実行時間が、アルゴリズムの実行毎、同一となる。従って、ダミーオペレーションが導入されていることが、最初の解析ではわからないので、一連の有効オペレーションに対して更に優れた安全性を与えることができる。
【００１９】
本発明によれば、アルゴリズムの或る部分のみにランダムなオペレーションを分布させることも可能である。更に、本発明による方法は、オペレーションが順序づけれているアルゴリズム、すなわち、変更できない順番に有効オペレーションが並べられたアルゴリズムにも、適用できる。
本発明の好ましい実施の態様における導入されるダミーオペレーションの数は、遂行されるオペレーションの合計数に対して２％程度である。