JP5398845B2 - 情報処理装置及びプログラム - Google Patents
情報処理装置及びプログラム Download PDFInfo
- Publication number
- JP5398845B2 JP5398845B2 JP2011543000A JP2011543000A JP5398845B2 JP 5398845 B2 JP5398845 B2 JP 5398845B2 JP 2011543000 A JP2011543000 A JP 2011543000A JP 2011543000 A JP2011543000 A JP 2011543000A JP 5398845 B2 JP5398845 B2 JP 5398845B2
- Authority
- JP
- Japan
- Prior art keywords
- value
- auxiliary
- authentication
- backup
- calculated
- 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
Links
- 230000010365 information processing Effects 0.000 title claims description 18
- 238000004364 calculation method Methods 0.000 claims description 89
- 238000004891 communication Methods 0.000 claims description 72
- 238000012795 verification Methods 0.000 claims description 30
- 230000007246 mechanism Effects 0.000 claims description 22
- 238000012545 processing Methods 0.000 claims description 13
- 230000004044 response Effects 0.000 description 45
- 238000000034 method Methods 0.000 description 33
- 239000000047 product Substances 0.000 description 24
- 230000006870 function Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 9
- 101000746134 Homo sapiens DNA endonuclease RBBP8 Proteins 0.000 description 6
- 101000969031 Homo sapiens Nuclear protein 1 Proteins 0.000 description 6
- 102100021133 Nuclear protein 1 Human genes 0.000 description 6
- 101100194362 Schizosaccharomyces pombe (strain 972 / ATCC 24843) res1 gene Proteins 0.000 description 3
- 239000013065 commercial product Substances 0.000 description 3
- 101100194363 Schizosaccharomyces pombe (strain 972 / ATCC 24843) res2 gene Proteins 0.000 description 2
- 230000006378 damage Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000010304 firing Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0869—Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Description
模造品は潜在的市場の喪失やブランドイメージの低下を招くのみならず、製造物責任を巡るトラブルの増加により正規品の生産性低下をも招く。
しかし、認証機構は模造品の使用を防ぐためなので、製造物である装置本来の機能とは無関係であり、ユーザには直接的なメリットが無い。
一方で対策を講じるためには部品調達や開発費などのコストが必要で、これら模造品対策に要したコストは製造物の原価に含まれる。
しかしながら、模造品対策を理由として装置価格を上げることは、ユーザにとって不要な機能をユーザが金銭的に負担する構図となるため、通常は市場のユーザから理解を得られない。
その結果、製造業者は模造品対策が必要であることを認識しながらも、コスト面の制約によりしばしば導入を諦めることがあり、従い如何に安価に実現できるかが重要となる。
なお、以下で説明するチャレンジ−レスポンス方式を用いた認証技術として、たとえば、特許文献1に開示の技術がある。
マスタ機器がスレーブ機器を認証する場合を想定しており、マスタ機器とスレーブ機器は予め互いに秘密鍵を共有していることが前提である。
また、両者は同じアルゴリズムのHASH計算論理を有していることとする。
多くの場合、このHASH計算論理にはSHA−1アルゴリズムが用いられるが、一方向性を有する計算論理であればアルゴリズムは任意である。
この際の任意の値は、マスタ機器が、スレーブ機器が同じ秘密鍵を共有する相手であるかを試すためのチャレンジコードとして働く。
マスタ機器はスレーブ機器を認証するために、マスタ機器内で乱数を生成してスレーブ機器に渡す(=チャレンジ)。
それと同時に、マスタ機器は、生成した乱数と秘密鍵の2つの情報をHASH計算論理へ入力してHASH値を計算する。
スレーブ機器側もまた、マスタ機器から受取った乱数を用いて同様の計算を行い、HASH値をマスタ機器に送信する(=レスポンス)。
スレーブ機器が正規のスレーブ機器である場合、マスタ機器と秘密鍵を共有しているので、マスタ機器とスレーブ機器で同じHASH値が得られるはずである。
チャレンジ−レスポンス方式では、攻撃者が通信路上で観測を行うことを想定している。
通信路上は乱数値と乱数値に基づくHASH値しかやり取りざれないため、生成する乱数が毎回変化するならば、通信路上の値は常に不規則に変化するため、秘密鍵を特定することは困難である。
ゆえに第三者が秘密鍵を知りえないため、スレーブ機器の利用に先立ちチャレンジ−レスポンス方式でスレーブ機器を認証すれば、正規品かどうかを知ることが出来る。
しかし、スレーブ機器は演算装置を有するとは限らず、一例としてメモリ機器は通常、メモリ回路しか基板上に存在しない。
そのため、近年ではマスタ機器とスレーブ機器の間でチャレンジ−レスポンス方式の認証を行う場合、マスタ機器側は演算装置にて、スレーブ側は認証用に認証IC(Integrated Circuit)を取り付けこのICにて、チャレンジ−レスポンス方式の一連の処理を行う。
こうした社会的背景により、携帯電話のバッテリには正規品であるかどうかを確認できる認証機構を設けることが義務付けられた。
こうした社会的要請により、スレーブ機器用の認証ICは低価格化、高機能化が進んだ。
スレーブ機器用ICは、HASH計算論理と、外部観測不可能な秘密鍵の記憶領域、外部観測可能な不揮発記憶領域を有することが一般的であり、該構成に類するICは市場にて安価にかつ十分に流通している。
この理由として、通常マスタ機器は演算装置を有しており機能的には認証ICが不要であることが考えられる。
また、他の理由として、スレーブ機器用のICと比較してマスタ機器用のICは出荷個数が少ないことが予想されるため、単価が高価となり、ICベンダが一般用途向けに開発や出荷を行わないことが考えられる。
しかし従来の実装では、マスタ機器側にてデバッグI/O(Input Output)からメモリデータが観測され秘密鍵の値が漏えいする場合がある。
IC(Integrated Circuit)から、ICごとに固有のIC固有値と、照合のための照合値を受信する通信部と、
秘密鍵を記憶する秘密鍵記憶部と、
前記秘密鍵記憶部に記憶されている前記秘密鍵と前記通信部により受信された前記IC固有値に対して一方向計算を行う一方向計算部と、
前記通信部により受信された前記照合値と前記一方向計算部により算出された算出値とを照合し、前記照合値と前記算出値とが一致するか否かを判定する判定部とを有することを特徴とする。
図1は、本実施の形態に係る装置構成例を示す。
認証ICは、マスタ機器2とスレーブ機器3とに搭載されており、各々、同じICである。
マスタ機器2は、認証IC21と、演算装置22を備え、演算装置22は内向きの通信路23と外向きの通信路24を備える。
内向きの通信路23にはマスタ機器が用いる認証IC21が接続されている。
また、外向きの通信路24はスレーブ機器3との通信を行うための通信路で、スレーブ機器3にもまた認証IC31が接続されている。
認証IC21と認証IC31は物理的には異なるものだが、機構的には同一のものである。
認証ICの機構は後述の図2にて述べる。
なお、マスタ機器2は情報処理装置の例であり、スレーブ機器3は認証対象物の例である。
また、認証IC31は認証対象ICの例であり、認証IC21は補助ICの例である。
本明細書では、スレーブ機器3が1台接続されている例を想定して説明するが、複数台接続の場合も動作は同様である。
認証IC1は、その内部にデータ送受信部11と、レスポンスコード保持部12と、IC固有番号格納部13と、HASH計算論理部14と、秘密鍵格納領域15と、不揮発記憶領域16と、を備える。
図6に示すように、認証IC21及び認証IC31の両者は、機構的には図2の認証IC1を想定している。
なお、認証IC21においては、HASH計算論理部2114は一方向計算部として機能し、また、秘密鍵格納領域2115は秘密鍵記憶部として機能する。
以下にて、図2の認証IC1の各構成要素を説明する。
本明細書ではコマンドをCOM1〜8で表す。
COM1〜8の内訳は次の通りである。
COM1コマンドではマスタ機器2が通信相手のIC固有番号を通信路に出力し、同じIC固有番号を保持する認証ICが、自身の指定されたことを認識する。
COM1で指定された認証ICは、次のコマンドを1コマンドだけ待ち、これを受取ると受信したコマンドに従った処理を行う。
これを終えると認証ICは自身が指定された認識を解除する。
マスタ機器2は別の処理をコマンド指示する前に、再度COM1で認証ICを特定する必要がある。
そのためCOM8コマンドが用意されており、これは通信路上に存在する全ての認証ICが、自身の固有番号を通信路上に出力する。
電気信号が競合しないよう、通信路はCSMA(Carrier Sense Multiple Access)方式など物理層にて競合制御が行われる。
マスタ機器2は定期的にCOM8コマンドを出力し、通信路上の認証ICの存在を確認する。
計算されたHASH値はレスポンスコード保持部12に格納される。
HASH計算論理の実行は2種類あり、鍵値とマスタ側が送信した値(=チャレンジ−レスポンスにおけるチャレンジコード)を引数としてHASH計算論理を実行する場合と、鍵値、マスタ側が送信した値と不揮発記憶領域16の値を引数としてHASH計算論理を実行する場合がある。
この区別は以下の通りである。
直ちにHASH計算を行う場合は次にHASH計算実行のための予め定められたコードを通信路24に出力する。
あるいは不揮発記憶領域16の値まで含める場合、COM2コマンドに続きスレーブ側への送信値を出力した後、不揮発記憶領域16の利用を促すための予め定められたコードを通信路24上に出力し、最後にHASH計算実行のためのコードを通信路24に出力する。
認証ICは本コマンドを受信すると、レスポンスコード保持部12に格納されている値を通信路上に出力する。
計算が終了していない場合は、値0など、予め計算未終了を示す特別な値を出力してマスタ機器2に未終了である旨を通知する。
マスタ機器2はCOM4のコマンドコードの後、通信路上に秘密鍵を出力するため、認証ICはその値を受取る。
なお、一度秘密鍵を設定したら以降二度と設定できない機構で良い。
あるいは、次のような機構でも良い。
出荷前にCOM4により認証ICに秘密鍵を一度設定し、この際は秘密鍵の値を無条件で秘密鍵として採用する。
その後、認証ICが既に秘密鍵を保持している場合、マスタ機器2はCOM4コマンドコードの後に秘密鍵を通信路に出力し、さらにその後、現在の秘密鍵のHASH値を通信路に出力する。
認証ICはこのコマンドを受取ると、通信路にIC固有番号を出力する。
COM8は通常マスタから発行されるが、COM5は直ちにIC固有番号を確認する場合に用いられ、COM5の応答が得られない場合は、当該認証ICを有する機器の接続が解除されたことを意味する。
マスタ機器は通信路上にコマンドコードを出力した後、続いて格納先アドレスと、格納する値を出力し、さらに、格納する値と秘密鍵を引数とするHASH計算結果の値を出力する。
なお、格納する値は1Byteなど、予め1回の送信量が決められているものとする。
認証ICはコマンドを受取ると、その後の値を一旦格納して、秘密鍵と共にHASH計算を行う。
HASH計算結果と、マスタ機器2が出力したHASH値とが一致した場合のみ、受信した値を指定されたアドレスに格納する。
マスタ機器2はこのコマンドに続き読み出し先のアドレスを通信路上に出力し、これを受けて、認証ICは不揮発記憶領域16内の指定されたアドレスに格納されている値を通信路上に出力する。
COM6と同様に読み出すデータ長は1Byteなど、予め1回の送信量が決められているものとする。
コマンドの説明は以上である。
マスタ機器2からデータ送受信部11経由で一度値を読まれると、値をゼロクリアする。
この理由は、マスタ機器2以外の第三者が任意のタイミングで値の読み出しを試みても読み出せないようにするためである。
IC固有番号は該ICの製造の際に割り当てられるシリアル番号で、該ICの製造者が世の中に唯一の番号であることを保証するものである。
認証を行う者同士で同じ関数を実装している限り、実装されているHASH関数は任意である。
即ち、図1の認証IC21と認証IC31は機構的には認証IC1であり、同じHASH計算論理部を備える。
格納した値を外部から読み出すことが出来ない必要があり、従い外部からの読み出し要求には応じない。
秘密鍵の格納はコマンドCOM4に述べる動作に従う。
不揮発記憶領域16の一つの利用例は以下である。
該IC1をプリンタトナーの模造品対策に用いる場合、プリンタがマスタ機器、トナーがスレーブ機器である。
このように利用する場合、一般的にはトナーの使用回数などが不揮発記憶領域16に格納される。
通信部222は、スレーブ機器3の認証IC31から、認証IC31に予め格納されているIC固有番号(認証対象IC固有値)と、認証IC31に予め格納されている照合のためのHASH値(認証対象IC照合値)を受信する。
また、通信部222は、前述のCOM1〜COM8を発行する。
判定部223は、通信部222により受信されたHASH値と認証IC21のHASH計算論理部2114により算出されたHASH値(算出値)とを照合し、両者が一致するか否かを判定する。
つまり、認証IC21のHASH計算論理部2114は、秘密鍵格納領域2115に格納されている秘密鍵と通信部222により受信された認証IC31のIC固有番号に対してHASH計算(一方向計算)を行ってHASH値を算出し、判定部223は認証IC31から受信したHASH値と認証IC21のHASH計算論理部2114により算出されたHASH値とを照合する。
res1(224)は、認証IC21のHASH計算論理部2114により算出されたHASH値を蓄積するためのレジスタである。
res2(225)は、認証IC31から受信したHASH値を蓄積するためのレジスタである。
本実施の形態では、マスタ機器2のスレーブ機器3に対する認証を2つの段階に分けている。
先ず図4に従い、認証IC31が確かに正規品出荷時のICであることを確認し、その後、図5に従いチャレンジ−レスポンス認証を行う。
図4及び図5の動作はマスタ機器2が通信路24上に新たなスレーブ機器3を検出した際に1度行われる。
認証1段階目はチャレンジ−レスポンス認証とは無関係の処理であり、認証2段階目はチャレンジ−レスポンス認証そのものである。
認証1段階目が必要な理由については後述する。
なお、図4、図5とも、動作の主体はマスタ機器上の演算装置22であり、演算装置22の通信部222より発せられる各種コマンドに従い認証IC21及び認証IC31が駆動する。
新たなスレーブ機器を検出したマスタ機器2では、通信部222が、検出したスレーブ機器3上に存在する認証IC31のIC固有番号を読み出し、この値をチャレンジコードとして、マスタ機器2内の認証IC21に送信する。
認証IC21では、チャレンジコードである認証IC31のIC固有番号の値と、秘密鍵とを引数としてHASH計算論理部2114においてチャレンジ−レスポンス処理が実行され、HASH計算結果が得られる。
演算装置22では通信部222が認証IC21からレスポンスコード(HASH計算値)を受取る。
次に、通信部222が認証IC31内の不揮発記憶領域3116に予め格納されているHASH値を読み出す。
認証IC31内の不揮発記憶領域3116内のHASH値は出荷時点で予め格納された値であり、判定部223において、先に認証IC21より得られたレスポンスコード(HASH計算値)と、認証IC31から受信したHASH値とを比較する。
この両者が一致する場合、認証1段階目の処理を終了し、認証2段階目の処理を行う。
他方、両者が一致しない場合、模造品を検出したこととなり、該スレーブを利用しない。
先に述べた如く、認証2段階目はいわゆるチャレンジ−レスポンス認証を実施する。
演算装置22では、判定部223が、チャレンジコードとして乱数値を生成し、通信部222が、マスタ機器2上の認証IC21と、スレーブ機器3上の認証IC31の双方にチャレンジコードを送信する。
認証IC21及び認証IC31では互いにレスポンスコードを計算するため、両者のレスポンスコードを取得して突き合わせ、等しい値であれば、新規に接続されたスレーブ機器3は正規品であると判断できる。
認証2段階目において、二者のレスポンスコードが異なる場合、通信路23あるいは通信路24におけるデータ破壊が無ければ、秘密鍵が一致しない場合だけである。
この理由は、機器認証を物理的にも論理的にも行うためである。
チャレンジ−レスポンス認証は互いに共有する秘密鍵の正しさをもって相手を認証する方式であるが、論理的な計算に閉じており物理情報との関連性が無い。
そのため、仮に攻撃者が、正規品のマスタ機器と模造品のスレーブ機器を有しており、正規品マスタ機器上の認証ICを初期状態のままの市販品認証ICと取り替え、かつ模造品スレーブ機器にも同様に、初期状態のままの市販品認証ICを取り付けたとする。
即ち、図1の構成で、認証IC21及び認証IC31が市販品購入時の初期状態のままとする。
この条件でチャレンジ−レスポンス認証のみ実施すると、認証は論理的な情報で閉じており、マスタ機器側もスレーブ機器側も秘密鍵が初期値のまま一致してしまい、認証が成立してしまう。
ゆえに、認証に物理情報との関連性を持たせ、認証ICの交換で模造品が利用できてしまうことを防ぐために、認証1段階目を実施する必要がある。
一連の動作において、マスタ機器2上の認証IC21は秘密鍵の保持とHASH演算の実行を行う意味で重要な役割を有する。
それゆえに、マスタ機器2は電源投入時、自己の有する認証IC21の正当性を確認し、確認が取れた段階で通常運用状態となり、新規のスレーブ機器3の接続を検出する度に図4、図5に従った認証処理を行うように動作する必要がある。
先に述べた図4及び図5、即ちマスタ機器2がスレーブ機器3の認証を行う動作は、マスタ機器2上の認証IC21が正しく正規品である、という前提でスレーブ機器3上の認証IC31を認証する動作である。
その動作と比較して、マスタ機器2上の認証IC21の認証は、その時点では正規品であることを担保できる存在(即ち、マスタ−スレーブ間認証における認証IC21)が無い。
そこで、図4即ち認証1段階目と同様、認証IC21の不揮発記憶領域2116にも、出荷時に予めHASH値を格納しておく。
このHASH値はやはり認証1段階目と同様、秘密鍵と、認証IC21のIC固有番号の値とを引数とするHASH値とし、装置出荷時点に格納するものである。
演算装置22の通信部222が、まず認証IC21よりIC固有番号の値(補助IC固有値)を受取り、この値をチャレンジコードとして認証IC21に入力し、レスポンスコード(補助IC算出値)を得る。
他方、認証IC21の不揮発記憶領域2116には予めHASH値(補助IC照合値)が格納されており、演算装置22の通信部222が、このHASH値を読み出し、判定部223が、先に得たレスポンスコードと突き合わせる。
もし出荷時の認証IC21であれば、IC固有番号の値は変化していないため、同じHASH値が得られているはずである。
それゆえ値が一致すれば通常運用状態へ移行し、そうで無い場合は認証ICの交換を検出したこととなり、認証IC21を認証しない。
しかしながらIC固有番号が同一ではないため、HASH計算結果は不揮発記憶領域2116に格納された値と異なる。
模造品を製造する攻撃者が、図2に述べる市販品の認証ICを用いる限りにおいては図7で正当性を確認することが可能であるが、当該ICの替わりに、COM3とCOM7の両方に同じ値を返す何らかの装置を取り付けると図7の認証が成立してしまう。
しかしながらこの場合、今度はスレーブ機器3との認証の時点で正しく動作しない。
即ち、模造したマスタ機器に正規のスレーブ機器が接続できないこととなるため、結果的にこの場合も模造品対策が成されている。
より具体的には、マスタ機器とスレーブ機器の双方において、マスタ機器上でシステム全体を管理する演算装置から制御可能な位置に認証ICを備え、該認証ICは、データ送受信部と、レスポンスコード保持部と、IC固有番号と、HASH計算論理と、秘密鍵格納領域と、不揮発記憶領域とを備える機構を説明した。
そして、模造品対策方式として、認証ICの不揮発記憶領域には出荷時に予め秘密鍵とIC固有番号を引数とするHASH計算結果を格納しておき、運用時にマスタ機器が新たなスレーブ機器を検出する毎に、スレーブ機器のIC固有番号と秘密鍵によりHASH計算をマスタ機器の認証ICで再計算すると共に、スレーブ機器の認証ICの内部に備わる不揮発記憶領域から出荷時に格納されたHASH値を読み出し、再計算したHASH値と、読み出したHASH値との一致をもって、スレーブ機器が正規品であるかを認証することを説明した。
マスタ機器2上に、認証IC21のIC固有番号以外の固有番号が存在する場合、かつ認証IC21内の不揮発記憶領域2116に2種類のHASH値が格納可能な場合、図7に述べたマスタ機器上の認証ICを認証する手続きを強化することが可能である。
この処理を図8及び図9に示す。
この実施の形態では、マスタ機器2上の認証IC21の正当性を認証する処理は2段階で成されるため、図8を認証1段階目、図9を認証2段階目と呼ぶ。
なお、図4及び図5でも認証1段階目、認証2段階目との用語を用いたが、前記図4、図5はマスタ機器2とスレーブ機器3の間の認証であり、図8及び図9はマスタ機器2上の認証IC21の認証であるため、意味が異なる。
また、図8は図7と同じ処理であり、その後に図9を行う。
なお、図9の認証第2段階目を先に行い、次に図8の認証第1段階目を行うようにしてもよい。
認証第1段階目と認証第2段階目の両方において正当と認証されなければならず、一方の段階で認証されても他方の段階で認証されなければ、認証IC21は正当ではない。
なお、演算装置22の構成は、図3と同じである。
また、ASIC25の位置は通信路24上である必要も無く、演算装置22が固有番号251の値を取得可能であれば良い。
固有番号251はバックアップ固有値の例であり、ASIC25はバックアップ固有値記憶部の例である。
まず、不揮発記憶領域#1(21161)には、図7と同様、認証IC21のIC固有番号と秘密鍵とを引数とするHASH計算の結果を格納する。
次いで、不揮発記憶領域#2(21162)には、ASICの固有番号251と秘密鍵とを引数とするHASH計算の結果(バックアップ照合値)を格納する。
認証1段階目は図7とほとんど同じであり、COM7で不揮発記憶領域#1(21161)を読み出すことのみが異なる。
しかし格納されている値は図7の不揮発記憶領域に格納された値と同じである。
図8の認証1段階目でHASH値が一致すれば、図2の認証第2段階目に移行する。
図8の認証1段階目では認証IC21が図2に述べる認証ICであるならば、出荷時のICであることの十分な認証となるが、自己認証であるため、図2に述べるICとは異なる機構であるかもしれない。
それゆえに、認証IC21自身にとって自己と無関係であるASIC25の固有番号251にてHASH値を計算する。
その後、通信部222は、予め不揮発記憶領域#2(21162)に格納していたHASH値(バックアップ照合値)を読み出し、判定部223が、先のレスポンス(バックアップ算出値)と不揮発記憶領域#2(21162)からのHASH値(バックアップ照合値)と比較する。
両者が一致すれば、判定部223は、認証IC21は正当であると判断する。
より具体的には、マスタ機器上において認証ICのIC固有番号以外の固有番号が存在し、かつ認証IC内の不揮発記憶領域に2種類のHASH値が格納可能な場合に、認証の強度を強化することを可能とする方式を説明した。
そして、その方式は、認証ICのIC固有番号による認証と、マスタ機器上の固有番号による認証の、2段階によりマスタ機器上の認証ICの正当性を認証するものである。
以上の実施の形態1及び実施の形態2では、認証IC21を用いる例を説明したが、本実施の形態では認証IC21を用いることなくスレーブ機器の認証を行う構成を説明する。
なお、スレーブ機器3の構成は図1に示す通りであり、また、認証IC31の構成も図2及び図6に示す通りである。
秘密鍵記憶部226は、認証IC21の秘密鍵格納領域2115と同様の機能である。
つまり、秘密鍵記憶部226は、スレーブ機器3の認証IC31と秘密に共有している秘密鍵を記憶している。
また、HASH計算論理部227は、認証IC21のHASH計算論理部2114と同様の機能である。
つまり、HASH計算論理部227は、認証IC31のHASH計算論理部3114と同じHASH関数を用いてHASH計算を行う。
なお、HASH計算論理部227は一方向計算部の例である。
次に、通信部222が認証IC31内の不揮発記憶領域3116に予め格納されているHASH値を読み出す。
そして、判定部223において、HASH計算論理部227により得られたレスポンスコード(HASH計算値)と、認証IC31から受信したHASH値とを比較する。
この両者が一致する場合、認証1段階目の処理を終了し、認証2段階目の処理を行う。
他方、両者が一致しない場合、模造品を検出したこととなり、該スレーブを利用しない。
HASH計算論理部227及び認証IC31では互いにレスポンスコードを計算するため、両者のレスポンスコードを取得して突き合わせ、等しい値であれば、新規に接続されたスレーブ機器3は正規品であると判断できる。
前述のように、S/W実装の場合はマスタ機器側にてデバッグI/Oからメモリデータが観測され秘密鍵の値が漏えいする可能性があるが、このような秘密鍵の漏えいを防止する機構を設ければ、本実施の形態のように認証IC21を用いなくてもスレーブ機器の正当性を判断することができる。
マスタ機器2は、図1等に示すように演算装置22を含む装置であればよく、前述のプリンタのほか、パーソナルコンピュータ等のコンピュータ、コピー機、携帯電話機、カーナビゲーション装置、各種組み込み機器等の情報機器が想定される。
図13は、実施の形態1〜3に示すマスタ機器2のハードウェア資源の一例を示す図である。
なお、図13の構成は、あくまでもマスタ機器2のハードウェア構成の一例を示すものであり、マスタ機器2のハードウェア構成は図13に記載の構成に限らず、他の構成であってもよい。
CPU911は演算装置22に相当する。
CPU911は、バス912を介して、認証IC906に接続されている。認証IC906は、図1等の認証IC21に相当する。
通信ボード915は、有線通信、無線通信のいずれに対応していてもよく、例えば、LAN(ローカルエリアネットワーク)、インターネット、WAN(ワイドエリアネットワーク)、SAN(ストレージエリアネットワーク)などに接続されていても構わない。
磁気ディスク装置920には、オペレーティングシステム921(OS)、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されていてもよい。
プログラム群923のプログラムは、CPU911が実行する。
すなわち、実施の形態1〜3で説明したフローチャートに示すステップ、手順、処理により、本発明に係る情報処理方法を実現することができる。
Claims (10)
- 情報処理装置であって、
前記情報処理装置以外の認証対象物に設けられている認証対象IC(Integrated Circuit)から、前記認証対象ICに予め格納されている、ICごとに固有のIC固有値及び照合のための照合値を、認証対象IC固有値及び認証対象IC照合値として受信する通信部と、
秘密鍵を記憶する秘密鍵記憶部と、前記秘密鍵記憶部に記憶されている前記秘密鍵と前記通信部により受信された前記認証対象IC固有値に対して一方向計算を行う一方向計算部とが含まれる補助ICと、
前記通信部により受信された前記認証対象IC照合値と前記補助ICの前記一方向計算部により算出された算出値とを照合し、前記認証対象IC照合値と前記算出値とが一致するか否かを判定する判定部とを有し、
前記補助ICには、
前記補助ICのIC固有値である補助IC固有値と、照合のための照合値である補助IC照合値とが予め格納されており、
前記通信部は、
前記補助ICから前記補助IC固有値を受信し、受信した前記補助IC固有値を前記補助ICの前記一方向計算部に対して送信し、前記補助ICの前記一方向計算部から前記補助IC固有値と前記秘密鍵に対して一方向計算が行われて算出された値を補助IC算出値として受信し、更に、前記補助ICから前記補助IC照合値を受信し、
前記判定部は、
前記通信部により受信された前記補助IC照合値と前記補助IC算出値とを照合し、前記補助IC照合値と前記補助IC算出値とが一致するか否かを判定することを特徴とする情報処理装置。 - 前記判定部は、
前記認証対象IC照合値と前記一方向計算部による算出値とを照合し、前記認証対象IC照合値と前記算出値とが一致しない場合に前記認証対象物を認証しないことを特徴とする請求項1に記載の情報処理装置。 - 前記秘密鍵記憶部に記憶されている前記秘密鍵と同じ秘密鍵と前記認証対象IC固有値に対して前記一方向計算部と同じ一方向計算が行われて算出された値が前記認証対象IC照合値として受信された場合に、前記判定部により前記認証対象IC照合値と前記算出値とが一致すると判定されることを特徴とする請求項2に記載の情報処理装置。
- 前記判定部は、
前記補助IC照合値と前記補助IC算出値とが一致しない場合に前記補助ICを認証しないことを特徴とする請求項1に記載の情報処理装置。 - 前記秘密鍵と前記補助IC固有値に対して前記一方向計算部と同じ一方向計算が行われて算出された値が前記補助IC照合値として受信された場合に、前記判定部により前記補助IC照合値と前記補助IC算出値とが一致すると判定されることを特徴とする請求項1に記載の情報処理装置。
- 前記情報処理装置には、2つの照合値が補助IC照合値とバックアップ照合値として予め格納されている補助ICが設けられ、
前記情報処理装置は、更に、
前記補助IC外で、前記補助IC固有値以外の固有値をバックアップ固有値として記憶するバックアップ固有値記憶部を有し、
前記通信部は、
前記補助ICから前記補助IC固有値を受信し、受信した前記補助IC固有値を前記補助ICの前記一方向計算部に対して送信し、前記補助ICの前記一方向計算部から前記補助IC算出値を受信し、前記補助ICから前記補助IC照合値を受信し、更に、前記バックアップ固有値記憶部から前記バックアップ固有値を受信し、受信した前記バックアップ固有値を前記補助ICの前記一方向計算部に対して送信し、前記補助ICの前記一方向計算部から前記バックアップ固有値と前記秘密鍵に対して一方向計算が行われて算出された値をバックアップ算出値として受信し、前記補助ICから前記バックアップ照合値を受信し、
前記判定部は、
前記通信部により受信された前記補助IC照合値と前記補助IC算出値とを照合し、前記補助IC照合値と前記補助IC算出値とが一致するか否かを判定し、更に、前記通信部により受信された前記バックアップ照合値と前記バックアップ算出値とを照合し、前記バックアップ照合値と前記バックアップ算出値とが一致するか否かを判定することを特徴とする請求項1に記載の情報処理装置。 - 前記判定部は、
前記補助IC照合値と前記補助IC算出値との間の不一致、前記バックアップ照合値と前記バックアップ算出値との不一致の少なくともいずれかがある場合に前記補助ICを認証しないことを特徴とする請求項6に記載の情報処理装置。 - 前記秘密鍵と前記補助IC固有値に対して前記一方向計算部と同じ一方向計算が行われて算出された値が前記補助IC照合値として受信された場合に、前記判定部により前記補助IC照合値と前記補助IC算出値とが一致すると判定され、
前記秘密鍵と前記バックアップ固有値に対して前記一方向計算部と同じ一方向計算が行われて算出された値が前記バックアップ照合値として受信された場合に、前記判定部により前記バックアップ照合値と前記バックアップ算出値とが一致すると判定されることを特徴とする請求項6に記載の情報処理装置。 - 前記補助ICが、
前記認証対象ICと同じ機構のICであることを特徴とする請求項1に記載の情報処理装置。 - コンピュータを、請求項1に記載された情報処理装置として機能させることを特徴とするプログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2009/069776 WO2011064833A1 (ja) | 2009-11-24 | 2009-11-24 | 情報処理装置及び情報処理方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2011064833A1 JPWO2011064833A1 (ja) | 2013-04-11 |
JP5398845B2 true JP5398845B2 (ja) | 2014-01-29 |
Family
ID=44065957
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011543000A Active JP5398845B2 (ja) | 2009-11-24 | 2009-11-24 | 情報処理装置及びプログラム |
Country Status (3)
Country | Link |
---|---|
JP (1) | JP5398845B2 (ja) |
TW (1) | TWI464616B (ja) |
WO (1) | WO2011064833A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220058295A1 (en) * | 2020-08-20 | 2022-02-24 | Micron Technology, Inc. | Safety and security for memory |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007048297A (ja) * | 2006-08-17 | 2007-02-22 | Sony Corp | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム |
JP2007133913A (ja) * | 2007-02-16 | 2007-05-31 | Sony Corp | データ記憶装置およびデータ記憶方法 |
JP2008059013A (ja) * | 2006-08-29 | 2008-03-13 | Hitachi Ltd | Icメモリ並びにicメモリ用のアクセス装置及び正当性検証方法 |
WO2008117340A1 (ja) * | 2007-03-27 | 2008-10-02 | Fujitsu Limited | デバッグ対象機器、該認証プログラム、及びデバッグ認証方法 |
JP2010515966A (ja) * | 2007-01-07 | 2010-05-13 | アップル インコーポレイテッド | コンピューティング・デバイスの安全なブート |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5963134A (en) * | 1997-07-24 | 1999-10-05 | Checkpoint Systems, Inc. | Inventory system using articles with RFID tags |
-
2009
- 2009-11-24 WO PCT/JP2009/069776 patent/WO2011064833A1/ja active Application Filing
- 2009-11-24 JP JP2011543000A patent/JP5398845B2/ja active Active
-
2010
- 2010-03-25 TW TW099108855A patent/TWI464616B/zh active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007048297A (ja) * | 2006-08-17 | 2007-02-22 | Sony Corp | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム |
JP2008059013A (ja) * | 2006-08-29 | 2008-03-13 | Hitachi Ltd | Icメモリ並びにicメモリ用のアクセス装置及び正当性検証方法 |
JP2010515966A (ja) * | 2007-01-07 | 2010-05-13 | アップル インコーポレイテッド | コンピューティング・デバイスの安全なブート |
JP2007133913A (ja) * | 2007-02-16 | 2007-05-31 | Sony Corp | データ記憶装置およびデータ記憶方法 |
WO2008117340A1 (ja) * | 2007-03-27 | 2008-10-02 | Fujitsu Limited | デバッグ対象機器、該認証プログラム、及びデバッグ認証方法 |
Also Published As
Publication number | Publication date |
---|---|
JPWO2011064833A1 (ja) | 2013-04-11 |
TW201118640A (en) | 2011-06-01 |
TWI464616B (zh) | 2014-12-11 |
WO2011064833A1 (ja) | 2011-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11301554B2 (en) | Secure tamper resistant smart card | |
JP5703391B2 (ja) | 耐タンパー性ブート処理のためのシステム及び方法 | |
EP2979221B1 (en) | Systems, methods and apparatuses for secure storage of data using a security-enhancing chip | |
EP2927836B1 (en) | Anytime validation for verification tokens | |
US11734406B2 (en) | Secure tamper resistant smart card | |
US9118643B2 (en) | Authentication and data integrity protection of token | |
JPH11506560A (ja) | スマートカードにコマンドを安全に入れる方法 | |
KR20170095163A (ko) | 하드웨어 디바이스 및 그 인증 방법 | |
CN108399329A (zh) | 一种提高可信应用程序安全的方法 | |
US11522714B2 (en) | User apparatus using block chain, block chain system including the same and product information managing method thereof | |
CN109902452A (zh) | Fpga授权验证方法、装置及处理设备 | |
AU2017285278B2 (en) | Protection device and dongle and method for using the same | |
CN106156635A (zh) | 终端启动方法和装置 | |
CN100566253C (zh) | 一种安全使用智能密钥装置的方法及系统 | |
CN106295404A (zh) | 基于安全内核的一体化soc芯片 | |
CN104537282B (zh) | 一种基于加密闪盘和大数据运算技术的授权使用方法 | |
CN111160879A (zh) | 一种硬件钱包及其安全性提升方法和装置 | |
JP5183517B2 (ja) | 情報処理装置及びプログラム | |
US8051097B2 (en) | System and method for authentication using a shared table and sorting exponentiation | |
KR101751098B1 (ko) | 이동 단말 장치 칩 프로그래밍을 위한 방법 | |
US9177123B1 (en) | Detecting illegitimate code generators | |
JP5398845B2 (ja) | 情報処理装置及びプログラム | |
WO2024112599A1 (en) | System and method for security suite concatenating validation elements for blockchain binding operations | |
CN101562523B (zh) | 应用在移动存储设备上的安全认证方法 | |
JP2021508892A (ja) | 電子デバイスの無欠性検査 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130730 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130829 |
|
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: 20130924 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131022 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5398845 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |