【国等の委託研究の成果に係る記載事項】(出願人による申告)平成25年度、独立行政法人科学技術振興機構戦略的創造研究推進事業(チーム型研究(CREST))委託研究「サイドチャネル攻撃への安全性評価手法の確立およびPUFデバイスの実装・評価とセキュリティシステムへの応用」、産業技術力強化法第19条の適用を受ける特許出願
【文献】
Anthony van Herrewege et al.,Reverse Fuzzy Extractors: Enabling Lightweight Mutual Authentication for PUF-enabled RFIDs,Lecture Notes in Computer Science,Springer,2012年,Vol. 7397,pp. 374-389
【文献】
G. E. Suh and S. Devadas,Physical Unclonable Functions for Device Authentication and Secret Key Generation,Proceedings of the 44th annual Design Automation Conference (DAC '07),ACM,2007年 6月 4日,pp. 9-14,ISBN: 978-1-59593-627-1,DOI: 10.1145/1278480.1278484
(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、上記物理複製困難回路からの出力には多くのノイズが含まれることから、当該出力から安定的にデバイス固有情報を生成するためにファジーエクストラクタ(Fuzzy Extractor)と呼ばれる技術が考案されたものの、当該技術におけるアルゴリズムは複雑で処理時間や必要な回路の規模が大きくなるという問題があった。
【0005】
本発明は、このような問題を解決するためになされたもので、簡易な回路や方法によって高速にデバイス固有の情報を生成するデバイス固有情報生成装置及びデバイス固有情報生成システムとデバイス固有情報生成方法を提供することを目的とする。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本発明は、入力信号に応じてデバイスの物理特性に依存する第一の固有信号を生成する特性信号生成手段と、第一の固有信号を変換することにより変換信号を生成して外部記憶装置に保存する変換手段と、再度入力された入力信号に応じて生成された第二の固有信号と外部記憶装置に保存された変換信号に応じて生成された信号を復号する復号手段とを備えたデバイス固有情報生成装置を提供する。
【0007】
また、上記課題を解決するために、本発明は、デバイスとデバイスから供給される情報を読み取る情報読取装置から構成されるデバイス固有情報生成システムであって、上記デバイスは、入力信号に応じてデバイスの物理特性に依存する固有信号を生成する特性信号生成手段と、入力信号を再度特性信号生成手段に入力することにより生成された第二の固有信号を変換して第二の変換信号を生成する第一の変換手段とを備え、上記情報読取装置は、予め入力された入力信号に応じて特性信号生成手段により生成された第一の固有信号を変換して第一の変換信号を生成する第二の変換手段と、第一の変換信号及び第二の変換信号により生成された信号を復号する復号手段とを備えたデバイス固有情報生成システムを提供する。
【0008】
また、上記課題を解決するために、本発明は、デバイスとデバイスから供給される情報を読み取る情報読取装置から構成されるデバイス固有情報生成システムであって、上記デバイスは、入力信号に応じてデバイスの物理特性に依存する固有信号を生成する特性信号生成手段と、入力信号を再度特性信号生成手段に入力することにより生成された第二の固有信号を変換して第二の変換信号を生成する第一の変換手段とを備え、上記情報読取装置は、予め入力された入力信号に応じて特性信号生成手段により生成された第一の固有信号を変換して第一の変換信号を生成する第二の変換手段と、第一の変換信号及び第二の変換信号により生成された信号を復号する復号手段とを備え、上記デバイスは、第二の固有信号と復号手段による復号により生成された信号から第一の固有信号を生成する演算手段をさらに備えたデバイス固有情報生成システムを提供する。
【0009】
また、上記課題を解決するために、本発明は、デバイスとデバイスから供給される情報を読み取る情報読取装置から構成されるデバイス固有情報生成システムであって、上記デバイスは、入力信号に応じてデバイスの物理特性に依存する固有信号を生成する特性信号生成手段と、特性信号生成手段により生成された第一の固有信号を変換して第一の変換信号を生成すると共に、入力信号を再度特性信号生成手段に入力することにより生成された第二の固有信号を変換して第二の変換信号を生成する変換手段とを備え、上記情報読取装置は、第一の変換信号及び第二の変換信号により生成された信号を復号する復号手段を備え、上記デバイスは、第二の固有信号と復号手段による復号により生成された信号から第一の固有信号を生成する演算手段をさらに備えたデバイス固有情報生成システムを提供する。
【0010】
また、上記課題を解決するために、本発明は、入力信号に応じてデバイスの物理特性に依存する第一の固有信号を生成する特性信号生成ステップと、第一の固有信号を変換することにより変換信号を生成して外部記憶装置に保存する変換ステップと、再度入力された入力信号に応じて生成された第二の固有信号と外部記憶装置に保存された変換信号に応じて生成された信号を復号する復号ステップとを有するデバイス固有情報生成方法を提供する。
【0011】
また、上記課題を解決するために、本発明は、入力信号及び入力信号に応じて生成されたデバイスの物理特性に依存する第一の固有信号を予め保存する固有信号保存ステップと、固有信号保存ステップで予め保存された入力信号を再度デバイスに入力する再入力ステップと、第一の固有信号を変換して第一の変換信号を生成する第一の変換ステップと、再入力ステップにおいて再度入力された入力信号に応じて生成された第二の固有信号を変換して第二の変換信号を生成する第二の変換ステップと、第一の変換信号及び第二の変換信号により生成された信号を復号する復号ステップとを有するデバイス固有情報生成方法を提供する。
【0012】
また、上記課題を解決するために、本発明は、入力信号及び入力信号に応じて生成されたデバイスの物理特性に依存する第一の固有信号を予め保存する固有信号保存ステップと、固有信号保存ステップで予め保存された入力信号を再度デバイスに入力する再入力ステップと、第一の固有信号を変換して第一の変換信号を生成する第一の変換ステップと、再入力ステップにおいて再度入力された入力信号に応じて生成された第二の固有信号を変換して第二の変換信号を生成する第二の変換ステップと、第一の変換信号及び第二の変換信号により生成された信号を復号する復号ステップと、第二の固有信号と、復号ステップにおける復号により生成された信号から第一の固有信号を生成する演算ステップとを有するデバイス固有情報生成方法を提供する。
【0013】
また、上記課題を解決するために、本発明は、入力信号に応じて生成されたデバイスの物理特性に依存する第一の固有信号を変換することにより得られた第一の変換信号と入力信号を予め保存する変換信号保存ステップと、変換信号保存ステップで予め保存された入力信号を再度デバイスに入力する再入力ステップと、再入力ステップにおいて再度入力された入力信号に応じて生成された第二の固有信号を変換して第二の変換信号を生成する変換ステップと、変換信号保存ステップにおいて保存された第一の変換信号及び第二の変換信号により生成された信号を復号する復号ステップと、第二の固有信号と復号ステップによる復号により生成された信号から第一の固有信号を生成する演算ステップとを有するデバイス固有情報生成方法を提供する。
【発明の効果】
【0014】
本発明によれば、デバイス固有の情報を生成するために必要な回路の規模を低減することができると共に、高速にデバイス固有の情報を生成することができる。
【発明を実施するための形態】
【0016】
以下、本発明の実施の形態について、図面を参照して詳しく説明する。なお、図中同一符号は同一又は相等部分を示す。
図1は、本発明の実施の形態に係るデバイス固有情報生成装置の構成を示すブロック図である。
【0017】
図1に示されるように、本発明の実施の形態に係るデバイス固有情報生成装置100は、デバイスの物理特性に依存する固有信号を生成する物理複製困難回路(PUF)3と、PUF3に接続されたレジスタ101と、レジスタ101に接続された変換器102及び復号器103とを備える。
【0018】
ここで、レジスタ101は入力信号Cに応じてPUF3から出力された固有信号R1の一部D1を信号Key1として出力し、変換器102は固有信号R1を誤り訂正符号のシンドロームS1に変換してデータベースDBに登録する。また、復号器103は再度入力された入力信号Cに応じてPUF3から出力された固有信号R2と、入力信号Cに応じてデータベースDBから読み出されたシンドロームS1から信号Key2を生成する。
【0019】
この信号Key2を生成する処理は、例えば、固有信号R2のシンドロームS2を計算し、シンドロームS1からシンドロームS2を減じた値に対応する誤りパターンを復号し、この誤りパターンを固有信号R2と加算することにより行える。また、シンドロームの代わりに誤り訂正符号の符号語をランダムに選択し固有信号に加算あるいは減算した値を利用してもよい。
【0020】
ここで信号Key1と信号Key2は、例えば
図2に示されるように、セットトップボックスやATM、あるいは入退室管理システム等のデバイス固有情報生成装置100と組み合わせて使う別の機器110において比較器112において比較され、これらが一致する場合にはデバイスが真正なものであることを示す信号Tが生成される一方、一致しない場合には偽造されたものであることを示す信号Fが生成される。
【0021】
なお、ここでの比較は、信号Key1と信号Key2とを直接比較してもよいし、それらを加工した信号を比較してもよい。
【0022】
また、信号Key2は、デバイス内でのみ生成される暗号鍵として使用することができ、
図3には信号Key2を用いて暗号化器121により平文を暗号化すると共に、復号器123で暗号文を平文に復号する例が示される。
【0023】
図4は、
図1に示されたデバイス固有情報生成装置100を搭載したICチップ1の構成を示すブロック図である。
【0024】
ICチップ1は、デバイスの物理特性に依存する固有信号を生成する物理複製困難回路(PUF)3と、PUF3に接続されたシンドローム算出器5と、シンドローム算出器5に接続された復号器7と、復号器7に接続されたレジスタ9と、シンドローム算出器5及びレジスタ9に接続された比較器10とを備える。
【0025】
ここで、シンドローム算出器5は、PUF3に接続されたレジスタ11と、レジスタ11に接続された符号化器13と、符号化器13に接続されたレジスタ15と、レジスタ11及びレジスタ15に接続された加算器17と、加算器17に接続されたレジスタ19とを含む。
【0026】
図5は、
図4に示されたICチップ1を用いたデバイス固有情報生成方法を示すフローチャートである。以下において、本識別方法を
図5を用いて詳しく説明する。
【0027】
ステップS1において、PUF3にチャレンジ信号Cを入力し、デバイスの物理特性に依存する第一の固有信号R1を予めレジスタ11に保存する。
【0028】
なお、レジスタ11に保存された固有信号R1の一部、例えば固有信号R1が255ビットである場合における上位115ビット、がIDや暗号鍵等の秘密情報Key1として使用される。
【0029】
次にステップS2において、符号化器13は、レジスタ11に保存された固有信号R1の上記一部をBCH符号等の誤り訂正符号を用いて符号化する。なお、符号化器13により生成された信号はレジスタ15に保存される。
【0030】
次にステップS3において、加算器17は、レジスタ11に保存された固有信号R1とレジスタ15に保存された信号とを加算する。そして、加算器17により生成された信号はレジスタ19に保存され、保存された一部の信号(シンドロームS1)、上記例では255ビットのうち下位140ビットの信号、を外部のデータベースDBにチャレンジ信号Cを指標(インデックス)として予め登録する。
【0031】
次にステップS4において、加算器17はPUF3に再入力されたチャレンジ信号Cに応じて生成された固有信号R2と、再入力されたチャレンジ信号Cに応じてデータベースDBから読み出されたシンドロームS1を加算して検証信号を生成する。なお、上記例では加算時においてシンドロームS1の上位155ビットを0とした上で、255ビットを有する固有信号R2と加算される。
【0032】
次にステップS5において、復号器7は加算器17による上記加算により得られた信号を復号する。なお、本復号により得られた信号はレジスタ9に保存され、保存された信号の一部、上記例においては上位155ビットの信号、が秘密情報Key2と扱われる。
【0033】
次にステップS6において、比較器10は上記秘密情報Key1と上記秘密情報Key2を比較してこれらが一致すると判断した場合には、ICチップ1が真正なものであることを示す信号Tを出力すると共に、一致しないと判断した場合にはICチップ1が真正なものでないことを示す信号Fを出力する。
【0034】
以上より、本発明の実施の形態に係るデバイス固有情報生成装置及びデバイス固有情報生成方法によれば、PUF3の出力信号を符号化した信号の一部であるシンドロームS1を予め記憶することによって、デバイスの認証に必要なデータのサイズを理論値限界近くまで低減することができる。
【0035】
また、デバイスの認証に必要となるデータのサイズをこのように低減できることから、上記認証の速度を高速化することができ、必要な回路規模を低減することができる。
【0036】
なお、上記においてはICチップ1について説明したが、上記PUF3を種々の製品に組み込んだ上で上記デバイス固有情報生成方法を実施することによっても上記効果を得ることができる。
【0037】
図6は、本発明の実施の形態に係る第一のデバイス固有情報生成システムの構成を示すブロック図である。
図6に示されるように、本システムはデバイス130及び情報読取装置140から構成されるが、具体的な構成例が
図7に示される。
【0038】
図7に示されるように、第一のデバイス固有情報生成システムはICチップ20とICリーダー30とから構成される。ここで、ICチップ20はPUF3と、PUF3に接続されたシンドローム算出器5とを含み、ICリーダー30は外部のデータベースDBに接続されたシンドローム算出器5と、シンドローム算出器5に接続された減算器31と、減算器31に接続された復号器33と、上記データベースDB及び復号器33に接続された減算器35と、減算器35及びPUF3に接続された比較器37とを含む。
【0039】
ここでの復号器33は、例えば、誤り訂正符号のシンドロームから誤りパターンを求めるためのものであるが、シンドローム算出器5を誤り訂正符号の符号語をランダムに選択し入力加算あるいは減算する装置とすることも可能であり、その場合の復号器33は誤り訂正符号の符号語と固有情報とが加算あるいは減算された信号から誤りパターンを求めるためのものとなる。
【0040】
図8は、
図7に示されたデバイス固有情報生成システムを用いた第一のデバイス固有情報生成方法を示すフローチャートである。以下において、本識別方法を
図8を用いて詳しく説明する。
【0041】
ステップS1において、PUF3にチャレンジ信号Cを入力し、生成された第一の固有信号R1を、チャレンジ信号Cをインデックスとして予めデータベースDBに登録する。
【0042】
次にステップS2において、予めデータベースDBに登録されたチャレンジ信号Cを再度PUF3に入力する。
【0043】
次に、ステップS3において、ICリーダー30に含まれたシンドローム算出器5はデータベースDBに予め登録された第一の固有信号R1をBCH符号等の誤り訂正符号を用いて符号化してシンドロームS1を生成する。
【0044】
次に、ステップS4において、ICチップ20に含まれたシンドローム算出器5はステップS2において再入力されたチャレンジ信号Cに応じてPUF3により生成された第二の固有信号R2をBCH符号等の誤り訂正符号を用いて符号化してシンドロームS2を生成する。
【0045】
次に、ステップS5において、減算器31はシンドロームS1からシンドロームS2を減算し、復号器33は減算器31による減算により得られた信号を復号する。
【0046】
次に、ステップS6において、減算器35はデータベースDBに予め登録された第一の固有信号R1から復号器33による復号により生成された信号を減算する。
【0047】
次に、ステップS7において、比較器37はステップS2においてPUF2により生成された第二の固有信号R2と、減算器35により生成された信号とを比較し、それらの信号が一致する場合にはICチップ20が真正なものであることを示す信号Tを出力すると共に、一致しない場合にはICチップ20が真正なものでないことを示す信号Fを出力する。
【0048】
ここでの比較は、第二の固有信号R2と、減算器35により生成された信号とを直接比較してもよいし、それらを加工した信号を比較してもよい。
【0049】
なお、
図7に示されたICリーダー30においては、第二の固有信号R2から第一の固有信号R1を減算器31で減算した結果を復号器33で復号して誤りパターンを示す信号d(=R2−R1)を生成し、減算器35の替わりに加算器を用いて第一の固有信号R1と信号dを加算することによって第二の固有信号R2を生成するようにしてもよい。
【0050】
さらには、
図7に示されたICリーダー30においては、第二の固有信号R2と第一の固有信号R1を減算器31の替わりに加算器を用いて加算した結果を復号器33で復号して誤りパターンを示す信号d(=R1+R2)を生成し、減算器35により本信号dから第一の固有信号R1を減算することによって第二の固有信号R2を生成するようにしてもよい。
【0051】
以上のような第一のデバイス固有情報生成システム及びデバイス固有情報生成方法によれば、一般的に多くのデータ処理を行うために大きな規模の回路が必要とされる復号器をICチップ20に含める必要がないため、的確な認証を実現するICチップ20の構成を簡易なものとすることができ、製造コストを低減することができる。
【0052】
また、ICチップ20内で生成される第二の固有信号R2は別途乱数生成器を用いなくとも毎回変動するため、余計な仕組みを入れることなくサイドチャネル攻撃対策を実現できる。
【0053】
図9は、本発明の実施の形態に係る第二のデバイス固有情報生成システムの構成を示すブロック図である。
図9に示されるように、本システムはデバイス150及び情報読取装置160から構成されるが、具体的な構成例が
図10に示される。
【0054】
図10に示されるように、第二のデバイス固有情報生成システムはICチップ40とICリーダー50とから構成される。ここで、ICチップ40はPUF3と、PUF3に接続されたシンドローム算出器5と、PUF3に接続された加算器41とを含み、ICリーダー50は外部のデータベースDBに接続されたシンドローム算出器5と、シンドローム算出器5に接続された減算器31と、減算器31に接続された復号器33と、上記データベースDB及び上記加算器41に接続された比較器51とを含む。
【0055】
ここでの復号器33は、例えば、誤り訂正符号のシンドロームから誤りパターンを求めるためのものであるが、シンドローム算出器5を誤り訂正符号の符号語をランダムに選択し入力加算あるいは減算する装置とすることも可能であり、その場合の復号器33は誤り訂正符号の符号語と固有情報とが加算あるいは減算された信号から誤りパターンを求めるためのものとなる。
【0056】
図11は、
図10に示されたデバイス固有情報生成システムを用いた第二のデバイス固有情報生成方法を示すフローチャートである。以下において、本識別方法を
図11を用いて詳しく説明する。
【0057】
ステップS1において、PUF3にチャレンジ信号Cを入力し、生成された第一の固有信号R1を、チャレンジ信号Cをインデックスとして予めデータベースDBに登録する。
【0058】
次にステップS2において、予めデータベースDBに登録されたチャレンジ信号Cを再度PUF3に入力する。
【0059】
次に、ステップS3において、ICリーダー50に含まれたシンドローム算出器5はデータベースDBに予め登録された第一の固有信号R1をBCH符号等の誤り訂正符号を用いて符号化してシンドロームS1を生成する。
【0060】
次に、ステップS4において、ICチップ40に含まれたシンドローム算出器5はステップS2において再入力されたチャレンジ信号Cに応じてPUF3により生成された第二の固有信号R2をBCH符号等の誤り訂正符号を用いて符号化してシンドロームS2を生成する。
【0061】
次に、ステップS5において、減算器31はシンドロームS1からシンドロームS2を減算し、復号器33は減算器31による減算により得られた信号を復号する。
【0062】
次に、ステップS6において、加算器41はステップS2において再入力されたチャレンジ信号Cに応じてPUF3により生成された第二の固有信号R2と、復号器33による復号により生成された信号dを加算する。
【0063】
次に、ステップS7において、比較器51は予めデータベースDBに登録された第一の固有信号R1と、加算器41により生成された信号とを比較し、それらの信号が一致する場合にはICチップ40が真正なものであることを示す信号Tを出力すると共に、一致しない場合にはICチップ40が真正なものでないことを示す信号Fを出力する。
【0064】
ここでの比較は、第一の固有信号R1と、加算器41により生成された信号とを直接比較してもよいし、それらを加工した信号を比較してもよい。
【0065】
なお、
図10に示されたICリーダー50においては、第二の固有信号R2から第一の固有信号R1を減算器31で減算した結果を復号器33で復号して誤りパターンを示す信号d(=R2−R1)を生成し、加算器41の替わりに減算器を用いて第二の固有信号R2から信号dを減算することによって第一の固有信号R1を生成するようにしてもよい。
【0066】
さらには、
図10に示されたICリーダー50においては、第二の固有信号R2と第一の固有信号R1を減算器31の替わりに加算器を用いて加算した結果を復号器33で復号して誤りパターンを示す信号d(=R1+R2)を生成し、加算器41の替わりに減算器を用いて本信号dから第二の固有信号R2を減算することによって第一の固有信号R1を生成するようにしてもよい。
【0067】
また、以下に示す
図13及び
図15に示されたデバイス固有情報生成システムにおいても、同様な変形例を考えることができる。
【0068】
以上のような第二のデバイス固有情報生成システム及びデバイス固有情報生成方法によっても、一般的に多くのデータ処理を行うために規模の大きな回路が必要とされる復号器をICチップ40に含める必要がないため、的確な認証を実現するICチップ40の構成を簡易なものとすることができ、製造コストを低減することができる。
【0069】
また、第二のデバイス固有情報生成システム及びデバイス固有情報生成方法によれば、チャレンジ信号Cに対して一意に決定される第一の固有信号R1が復元されて比較器51による比較対象とされるため、デバイス認証の信頼性を高めることができる。なお、第一の固有信号R1は上記のように固定された値であるが、安全性を高めるために乱数を使って変動させても良い。
【0070】
図12は、本発明の実施の形態に係る第三のデバイス固有情報生成システムの構成を示すブロック図である。
図12に示されるように、本システムはデバイス170及び情報読取装置180から構成されるが、具体的な構成例が
図13に示される。
【0071】
図13に示されるように、第三のデバイス固有情報生成システムはICチップ60とICリーダー70とから構成される。ここで、ICチップ60はPUF3と、PUF3に接続されたシンドローム算出器5と、PUF3に接続された加算器41と、加算器41に接続された秘密鍵生成器61を含み、ICリーダー70は外部のデータベースDBに接続された減算器31と、減算器31に接続された復号器33とを含む。なお、公開鍵生成器65はPUF3とデータベースDBの間に接続される。
【0072】
図14は、
図13に示されたデバイス固有情報生成システムを用いた第三のデバイス固有情報生成方法を示すフローチャートである。以下において、本識別方法を
図14を用いて詳しく説明する。
【0073】
ステップS1において、PUF3にチャレンジ信号Cを入力し、生成された第一の固有信号R1をシンドローム算出器5によりBCH符号等の誤り訂正符号を用いて符号化する。そして、かかる符号化により得られた第1の符号化信号(シンドロームS1)をチャレンジ信号Cをインデックスとして予めデータベースDBに登録する。
【0074】
次に、ステップS2において、ステップS1で予めデータベースDBに登録されたチャレンジ信号Cを再度PUF3に入力する。
【0075】
次に、ステップS3において、シンドローム算出器5はステップS2で再入力されたチャレンジ信号Cに応じてPUF3により生成された第二の固有信号R2をBCH符号等の誤り訂正符号を用いて符号化して第2の符号化信号(シンドロームS2)を生成する。
【0076】
次に、ステップS4において、減算器31はステップS1においてデータベースDBに予め登録されたシンドロームS1からステップS3で生成されたシンドロームS2を減算する。そして、復号器33は、減算器31により生成された信号を復号する。
【0077】
次に、ステップS5において、加算器41はステップS2において再入力されたチャレンジ信号Cに応じてPUF3により生成された第二の固有信号R2と、復号器33による復号により生成された信号dを加算して第一の固有信号R1を生成する。
【0078】
以上のような第三のデバイス固有情報生成システム及びデバイス固有情報生成方法によっても、一般的に多くのデータ処理を行うため回路規模が大きい復号器をICチップ60に含める必要がないため、的確な認証を実現するICチップ60の構成を簡易なものとすることができ、製造コストを低減することができる。
【0079】
また、第三のデバイス固有情報生成システム及びデバイス固有情報生成方法によれば、チャレンジ信号Cに対して一意に決定される第一の固有信号R1を復元することによりICチップ60を認証するため、デバイス認証の信頼性を高めることができる。
【0080】
また、第三のデバイス固有情報生成システムにおいては、
図13に示されるように、公開鍵生成器65によって第一の固有信号R1から公開鍵PKが生成され、チャレンジ信号CをインデックスとしてデータベースDBに登録される。そして、ICリーダー70はデータベースDBからチャレンジ信号Cをインデックスとして公開鍵PKを読み出すと共に、ICチップ60に含まれた秘密鍵生成器61は加算器41で生成された第一の固有信号R1から秘密鍵SKを生成する。
【0081】
このことから、第三のデバイス固有情報生成システムによれば、ICチップ60とICリーダー70の間においては、シンドロームS2及び復号器33による復号により生成された信号dのみが通信されることになるため、たとえこれらの信号が悪意ある第三者に盗聴等されたとしても、第一の固有情報R1及びそれを基に生成された秘密鍵SKの推認を困難にすることができる。
【0082】
さらに、
図15には、
図13に示された秘密鍵生成器61の替わりに、秘密鍵SKを使った処理と同じ処理を秘密鍵SKを直接使わず実現する演算装置81を備えたICチップ80の構成が示される。
【0083】
ここで、演算装置81は、
図15に示されるように第一の固有信号R1及び第二の固有信号R2を使って演算するが、例えば以下のような演算を行うものである。
【0084】
[演算例1]
秘密鍵SKを例えばs=KDF(R1)とする。但し、KDF(Key Derivation Function)は第一の固有信号R1をsに変換する関数である。
【0085】
通常において、共通鍵KをsPを計算することにより求める場合に、演算装置81では以下のような演算を実行する。但し、P,K‘,K“,Kを位数がnである楕円曲線上の点、s’及びd‘を整数とする。
【0087】
なお、上式(1)において
d’= {KDF(R1)-s’}mod nと演算してもよく、
【数2】
と演算してもよい。
【0088】
[演算例2]
秘密鍵sと外部から計算可能な値rとの積rsについて、rs mod nを計算する場合に、以下の式(3)あるいは式(4)のように演算する。
【0091】
これらのような演算を実行することにより、毎回sPやrs mod nなど秘密鍵sを直接用いた計算を行うことがないため、疑似乱数生成器等の回路を別途導入することなくサイドチャネル攻撃に対する防御を実現することができる。