(57)【要約】【課題】認証回路に対する第三者からの不正な解析を防ぎつつ、従来構成の利点である回路規模の小ささを維持した認証システムを提供する。【解決手段】制御回路１１０は乱数ｒを発生させ、アクセサリ機器２００内の認証回路２１０と、本体機器１００内の認証回路１２０に送信する（Ｓ１、Ｓ６）。認証回路２１０は、乱数ｒに対して同じ演算処理を２回施すことによりアクセスキーを生成する（Ｓ２、Ｓ４）。また、認証回路１２０は、乱数ｒに同じ演算処理を２回施すことにより外部演算結果ｚを生成する（Ｓ６、Ｓ１０）。認証回路２１０は、アクセスキーと外部演算結果ｚとを比較し、両者が同一の場合に、本体機器１００を認証する（Ｓ１３）。【選択図】図３
2008085547.tif 000002
【特許請求の範囲】
【請求項１】
本体機器と、前記本体機器に接続されるアクセサリ機器とが相互に認証する認証システムであって、
前記本体機器内に設けられ、乱数を発生させ、当該乱数を前記アクセサリ機器に送信する乱数発生手段と、
前記アクセサリ機器内に設けられ、前記乱数発生手段が発生した前記乱数を入力とする所定の演算を行ない第１のアクセサリ機器内演算結果を生成し、当該第１のアクセサリ機器内演算結果を前記本体機器に送信するアクセサリ機器内演算手段と、
前記本体機器内に設けられ、前記乱数発生手段が発生した前記乱数を入力とし、前記アクセサリ機器内演算手段における前記所定の演算と同一の演算を行ない第１の本体機器内演算結果を生成する本体機器内演算手段と、
前記本体機器内に設けられ、前記第１のアクセサリ機器内演算結果と前記第１の本体機器内演算結果とを比較することにより、前記アクセサリ機器の認証を行なうアクセサリ機器認証手段と、
前記本体機器内に設けられ、前記本体機器内演算手段により算出され、かつ前記第１の本体機器内演算結果に関連する第２の本体機器内演算結果を前記アクセサリ機器に送信する送信手段と、
前記アクセサリ機器内に設けられ、前記第２の本体機器内演算結果を受信し、前記第２の本体機器内演算結果と、前記アクセサリ機器内演算手段により算出され、かつ前記第１のアクセサリ機器内演算結果に関連する第２のアクセサリ機器内演算結果とを比較することにより、前記本体機器を認証する本体機器認証手段とを備える
ことを特徴とする認証システム。
【請求項２】
前記アクセサリ機器内演算手段は、さらに、前記第１のアクセサリ機器内演算結果を入力とする前記所定の演算を行ない、前記第２のアクセサリ機器内演算結果を生成し、
前記本体機器内演算手段は、さらに、前記第１の本体機器内演算結果を入力とする前記所定の演算を行ない、前記第２の本体機器内演算結果を生成する
ことを特徴とする請求項１に記載の認証システム。
【請求項３】
前記アクセサリ機器内演算手段は、前記乱数発生手段が発生した前記乱数を入力とする前記所定の演算を行なうことにより前記第２のアクセサリ機器内演算結果を算出するとともに、当該第２のアクセサリ機器内演算結果を入力とする前記所定の演算を行なうことにより前記第１のアクセサリ機器内演算結果を算出し、
前記本体機器内演算手段は、前記乱数発生手段が発生した前記乱数を入力とする前記所定の演算を行なうことにより前記第２の本体機器内演算結果を算出するとともに、当該第２の本体機器内演算結果を入力とする前記所定の演算を行なうことにより前記第１の本体機器内演算結果を算出する
ことを特徴とする請求項１に記載の認証システム。
【請求項４】
前記アクセサリ機器内演算手段は、
入力に対して前記所定の演算を行なうアクセサリ機器側演算部と、
前記演算手段における演算結果を保持するアクセサリ機器側レジスタと、
前記乱数発生手段が発生した前記乱数又は前記アクセサリ機器側レジスタに保持された値のいずれかをアクセサリ機器側選択信号に基づいて選択し、前記アクセサリ機器側演算部に入力として付与するアクセサリ機器側セレクタとを有する
ことを特徴とする請求項２又は３に記載の認証システム。
【請求項５】
前記本体機器内演算手段は、
入力に対して前記所定の演算を行なう本体機器側演算部と、
前記演算手段における演算結果を保持する本体機器側レジスタと、
前記乱数発生手段が発生した前記乱数又は前記本体機器側レジスタに保持された値のいずれかを本体機器側選択信号に基づいて選択し、前記本体機器側演算部に付与する本体機器側セレクタとを有する
ことを特徴とする請求項２〜４のいずれか１項に記載の認証システム。
【請求項６】
本体機器に接続されるアクセサリ機器を認証する認証システムであって、
前記本体機器内に設けられ、乱数を発生させ、当該乱数を前記アクセサリ機器に送信する乱数発生手段と、
前記アクセサリ機器内に設けられ、暗号鍵を記憶する暗号鍵記憶手段と、
前記アクセサリ機器内に設けられ、前記乱数発生手段が発生した前記乱数を前記暗号鍵記憶手段に記憶された暗号鍵を用いて、所定の暗号方法に基づいて暗号化し、暗号結果を前記本体機器に送信する暗号化手段と、
前記本体機器内に設けられ、復号鍵を記憶する復号鍵記憶手段と、
前記本体機器内に設けられ、前記暗号化手段より送信された前記暗号結果を受信し、当該暗号結果を前記復号鍵を用いて、前記所定の暗号方法に基づいて復号する復号手段と、
前記本体機器内に設けられ、前記復号手段における復号結果と前記乱数発生手段が発生した前記乱数とを比較することにより、前記アクセサリ機器を認証するアクセサリ機器認証手段とを備える
ことを特徴とする認証システム。
【請求項７】
本体機器と、前記本体機器に接続されるアクセサリ機器とが相互に認証する認証方法であって、
前記本体機器は、入力データに対して所定の演算を施す本体機器内演算手段を備え、
前記アクセサリ機器は、入力データに対して所定の演算を施すアクセサリ機器内演算手段を備え、
前記本体機器が、乱数を発生させ、当該乱数を前記アクセサリ機器に送信する乱数発生ステップと、
前記アクセサリ機器内演算手段が、前記乱数発生ステップにおいて発生された前記乱数を入力とする所定の演算を行ない第１のアクセサリ機器内演算結果を生成し、当該第１のアクセサリ機器内演算結果を前記本体機器に送信するアクセサリ機器内演算ステップと、
前記本体機器内演算手段が、前記乱数発生ステップにおいて発生された前記乱数を入力とする前記所定の演算を行ない第１の本体機器内演算結果を生成する本体機器内演算ステップと、
前記本体機器が、前記第１のアクセサリ機器内演算結果と前記第１の本体機器内演算結果とを比較することにより、前記アクセサリ機器の認証を行なうアクセサリ機器認証ステップと、
前記本体機器が、前記本体機器内演算手段により算出され、かつ前記第１の本体機器内演算結果に関連する第２の本体機器内演算結果を前記アクセサリ機器に送信する送信ステップと、
前記アクセサリ機器が、前記第２の本体機器内演算結果を受信し、前記第２の本体機器内演算結果と、前記アクセサリ機器内演算手段により算出され、かつ前記第１のアクセサリ機器内演算結果に関連する第２のアクセサリ機器内演算結果とを比較することにより、前記本体機器を認証する本体機器認証ステップとを含む
ことを特徴とする認証方法。
【請求項８】
前記本体機器に接続されるアクセサリ機器を認証する認証方法であって、
前記本体機器は、復号鍵を記憶する復号鍵記憶手段を備え、
前記アクセサリ機器は、暗号鍵を記憶する暗号鍵記憶手段を備え、
前記本体機器が、乱数を発生させ、当該乱数を前記アクセサリ機器に送信する乱数発生ステップと、
前記アクセサリ機器が、前記乱数発生ステップにおいて発生された前記乱数を前記暗号鍵記憶手段に記憶されている前記暗号鍵を用いて、所定の暗号方法に基づいて暗号化し、暗号結果を前記本体機器に送信する暗号化ステップと、
前記本体機器が、前記暗号化ステップにおいて送信された前記暗号結果を受信し、当該暗号結果を前記復号鍵記憶手段に記憶されている前記復号鍵を用いて、前記所定の暗号方法に基づいて復号する復号ステップと、
前記本体機器が、前記復号ステップにおける復号結果と前記乱数発生ステップにおいて発生された前記乱数とを比較することにより、前記アクセサリ機器を認証するアクセサリ機器認証ステップとを含む
ことを特徴とする認証方法。
【請求項９】
本体機器と、前記本体機器に接続されるアクセサリ機器とが相互に認証するプログラムであって、
前記本体機器が、乱数を発生させ、当該乱数を前記アクセサリ機器に送信する乱数発生ステップと、
前記アクセサリ機器が、前記乱数発生ステップにおいて発生された前記乱数を入力とする所定の演算を行ない第１のアクセサリ機器内演算結果を生成し、当該第１のアクセサリ機器内演算結果を前記本体機器に送信するアクセサリ機器内演算ステップと、
前記本体機器が、前記乱数発生ステップにおいて発生された前記乱数を入力とし、前記アクセサリ機器内演算ステップにおける前記所定の演算と同一の演算を行ない第１の本体機器内演算結果を生成する本体機器内演算ステップと、
前記本体機器が、前記第１のアクセサリ機器内演算結果と前記第１の本体機器内演算結果とを比較することにより、前記アクセサリ機器の認証を行なうアクセサリ機器認証ステップと、
前記本体機器が、前記本体機器内演算ステップにおいて算出され、かつ前記第１の本体機器内演算結果に関連する第２の本体機器内演算結果を前記アクセサリ機器に送信する送信ステップと、
前記アクセサリ機器が、前記第２の本体機器内演算結果を受信し、前記第２の本体機器内演算結果と、前記アクセサリ機器内演算ステップにおいて算出され、かつ前記第１のアクセサリ機器内演算結果に関連する第２のアクセサリ機器内演算結果とを比較することにより、前記本体機器を認証する本体機器認証ステップとをコンピュータに実行させる
ことを特徴とするプログラム。
【請求項１０】
本体機器に接続されるアクセサリ機器を認証するプログラムであって、
前記本体機器は、復号鍵を記憶する復号鍵記憶手段を備え、
前記アクセサリ機器は、暗号鍵を記憶する暗号鍵記憶手段を備え、
前記本体機器が、乱数を発生させ、当該乱数を前記アクセサリ機器に送信する乱数発生ステップと、
前記アクセサリ機器が、前記乱数発生ステップにおいて発生された前記乱数を前記暗号鍵記憶手段に記憶されている前記暗号鍵を用いて、所定の暗号方法に基づいて暗号化し、暗号結果を前記本体機器に送信する暗号化ステップと、
前記本体機器が、前記暗号化ステップにおいて送信された前記暗号結果を受信し、当該暗号結果を前記復号鍵記憶手段に記憶されている前記復号鍵を用いて、前記所定の暗号方法に基づいて復号する復号ステップと、
前記本体機器が、前記復号ステップにおける復号結果と前記乱数発生ステップにおいて発生された前記乱数とを比較することにより、前記アクセサリ機器を認証するアクセサリ機器認証ステップとをコンピュータに実行させる
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、本体機器に接続されるアクセサリ機器の認証を行なう認証システムに関する。
【背景技術】
【０００２】
近年、電気製品において外部よりアクセサリ機器を接続する事により、電気製品とアクセサリ機器とを含むシステム全体としての性能やメンテナンス性の向上が図られている。また、このような性能向上やメンテナンス性向上を図るためのアクセサリ機器が数多く製品化されている。
【０００３】
電気製品の具体例としては、携帯電話機、デジタルスチルカメラ、プリンタ等が挙げられる。また、アクセサリ機器の具体例としては、電気製品の寿命に比べて消耗の早いバッテリ、トナーカートリッジ及びインクカートリッジや、必要とする機能を顧客が選択する増設メモリ等が挙げられる。
【０００４】
しかし、電気製品が市場に浸透する事で、製造者において十分に動作確認を行った正規のアクセサリ機器以外にも、第三者が利益を得るために正規のアクセサリ機器を模造した模造アクセサリ機器が製造されるリスクも増大する。電気製品の製造者は、予期してない模造アクセサリ機器を搭載する事による発熱、発火等の事故等を防ぐためにも、アクセサリ機器が正規の製品であるかを電気製品が判別できる様な対策を実施する必要性が増してきている。しかしながら、強固な認証方法は、システム内のマイクロコンピュータの処理負担を増大させてしまう。このため、電気製品とアクセサリ機器とのコストアップの要因になるため、できる限り安易で安価に実現できる認証方法が望まれていた。
【０００５】
このような要望に対して、従来は以下の様な方法を用いて、アクセサリ機器の認証を行なっている（例えば、非特許文献１及び２参照。）。
【０００６】
図１２は、従来のアクセサリ機器の認証を行なう認証システムの構成を示すブロック図である。
【０００７】
認証システムは、本体機器７００内に設けられた制御回路７１０及び認証回路７２０と、アクセサリ機器８００内に設けられた認証回路８１０とを備えている。制御回路７１０と認証回路７２０とは、外部入出力信号線７０２により接続されている。また、制御回路７１０と認証回路８１０とは、外部入出力信号線７０１により接続されている。
【０００８】
本体機器７００にアクセサリ機器８００を接続する事により、本体機器７００に搭載されている制御回路７１０とアクセサリ機器８００に搭載されている認証回路８１０とが外部入出力信号線７０１で接続される。
【０００９】
次に、認証回路７２０及び８１０の構成について説明する。なお、認証回路７２０及び８１０は、同一の構成を有する。このため、認証回路８１０の構成のみについて説明し、認証回路７２０の構成については説明を繰り返さない。
【００１０】
図１３は、認証回路８１０の構成を示すブロック図である。
認証回路８１０は、入力回路８１２と、記憶回路８１４と、演算ブロック８１１と、出力回路８１３とを含む。
【００１１】
入力回路８１２は、本体機器７００に搭載された制御回路７１０から送信される入力信号を取り込む処理部である。
【００１２】
記憶回路８１４は、所定の鍵情報を記憶する記憶装置である。
演算ブロック８１１は、入力回路８１２から出力される入力信号と記憶回路８１４に記憶されている鍵情報を入力とする所定の演算処理を行ない、演算結果を出力する処理部である。
【００１３】
出力回路８１３は、演算ブロック８１１より出力される演算結果を取り込み、本体機器７００に搭載された制御回路７１０に出力する処理部である。
【００１４】
演算ブロック８１１は、演算回路８１５と、レジスタ８１６とを含む。
演算回路８１５は、入力回路８１２より出力される入力信号と記憶回路８１４に記憶されている鍵情報を元に、所定の演算を施す処理部である。
【００１５】
レジスタ８１６は、演算回路８１５での演算結果を保持する記憶装置である。
次に各回路間の接続関係について説明する。
【００１６】
入出力信号線８３１は、外部入出力信号線７０１に接続されており、入力回路８１２及び出力回路８１３と本体機器７００内の制御回路７１０とを接続している。入力回路８１２と演算回路８１５とは、入力信号線８３３を介して接続されている。演算回路８１５と記憶回路８１４とは、鍵情報線８２０を介して接続されている。演算回路８１５とレジスタ８１６とは、演算結果線８２１を介して接続されている。レジスタ８１６と出力回路８１３とは、演算結果線８３２を介して接続されている。
【００１７】
次に、以上の構成を有する認証システムによる認証動作について説明する。
図１４は、認証システムにおける認証動作を示すフローチャートである。
【００１８】
制御回路７１０は、乱数ｒを発生させ、乱数ｒを含む信号を、外部入出力信号線７０１を介してアクセサリ機器８００内の認証回路８１０に送信する（Ｓ１０１）。
【００１９】
認証回路８１０内の入力回路８１２は、乱数ｒを取り込み、入力信号線８３３に乱数ｒを出力する。この出力と前後するタイミングで、記憶回路２１４より鍵情報線８２０に鍵情報が出力されている。演算回路８１５は、乱数ｒと鍵情報とを入力とする所定の演算処理を行い、演算結果を演算結果線８２１を介してレジスタ８１６に格納する（Ｓ１０２）。
【００２０】
出力回路８１３は、演算結果線８３２を介して、レジスタ８１６に保持されている演算結果を読み込み、演算結果を外部演算結果ｘとして、入出力信号線８３１及び外部入出力信号線７０１を介して制御回路７１０に送信する（Ｓ１０３）。
【００２１】
制御回路７１０は、外部入出力信号線７０１を介して認証回路８１０より出力された外部演算結果ｘを取り込み保持する。続いて、制御回路７１０は、Ｓ１０１で認証回路８１０に対して送信した乱数ｒと同一の乱数ｒを含む信号を、外部入出力信号線７０２を介して本体機器７００内の認証回路７２０に送信する（Ｓ１０４）。
【００２２】
認証回路７２０は、認証回路８１０と同一の構成を有するため、認証回路７２０の演算回路８１５は、乱数ｒと記憶回路８１４に記憶されている鍵情報を入力として、所定の演算処理を行なう（Ｓ１０５）。
【００２３】
認証回路７２０は、Ｓ１０５における演算結果を外部演算結果ｙとして、外部入出力信号線７０２を介して制御回路７１０に送信する（Ｓ１０６）。
【００２４】
制御回路７１０は、外部演算結果ｘと外部演算結果ｙとを比較する（Ｓ１０７）。アクセサリ機器８００が正規の製品である場合、同一の構成を有する認証回路７２０及び認証回路８１０から出力される外部演算結果ｘ及び外部演算結果ｙは同一の値である。したがって、制御回路７１０は、外部演算結果ｘ及び外部演算結果ｙが同一の値であることを確認することにより、本体機器７００に接続されているアクセサリ機器８００が正規の物であると認証する。
【００２５】
制御回路７１０は、この認証結果に基づいて、アクセサリ機器８００が正規のものである場合にのみ、アクセサリ機器８００に対して各種命令を送信する（Ｓ１０８）。命令を受け取ったアクセサリ機器８００は、当該命令を実行することができるようになる。
【００２６】
仮に模造アクセサリ機器が本体機器７００に接続された場合であっても、制御回路７１０が発生する乱数は毎回異なる。このため、模造アクセサリ機器が、常に同一の演算結果を出力するように構成されている場合には、本体機器７００は、模造アクセサリ機器を正規のアクセサリ機器として認証することはなくなる。
【００２７】
以上のように、本体機器７００が乱数を発生し、当該乱数を本体機器７００とアクセサリ機器８００に搭載されている同一の認証回路にそれぞれ送信する事により、アクセサリ機器８００が正規のものか否かを認識することが可能となる。
【００２８】
また、制御回路７１０には、演算回路を搭載する必要がなく、乱数発生回路のみを搭載する事で認証が可能となる。このため、制御回路７１０の回路規模が小さくなるという利点がある。また、汎用的なマイクロコンピュータを制御回路７１０に使用した場合、制御回路７１０には演算処理機能が搭載されていないため、第三者が、マイクロコンピュータのプログラムを解析を行なったとしても、演算内容を見破られる危険性が低くなるという利点もある。
【非特許文献１】“NECエレクトロニクス，模倣電池を検知するための専用LSIを開発 - デジタル家電 - Tech-On!”、[online]、２００５年６月２４日、日経ＢＰ社Ｔｅｃｈ−Ｏｎ、［２００６年８月３１日検索］、インターネット<URL : http://techon.nikkeibp.co.jp/article/NEWS/20050624/106116/?ST=d-ce>
【非特許文献２】“第8回 組込みシステム開発技術展 ACCESSがNetFront新バージョンなどを披露”、[online]、２００５年、Impress Corporation ケータイWatch、［２００６年８月３１日検索］、インターネット<URL : http://k-tai.impress.co.jp/cda/article/event/24555.html>
【発明の開示】
【発明が解決しようとする課題】
【００２９】
しかしながら、従来の認証システムにおいては、以下に説明するような問題がある。
本体機器７００に搭載された認証回路７２０と正規のアクセサリ機器８００に搭載された認証回路８１０とはまったく同一である。また、制御回路７１０は外部入出力信号線７０２を介し認証回路８１０へと、外部入出力信号線７０１を介して認証回路８１０へと、同一の値である乱数ｒをそれぞれに送信する。さらに、制御回路７１０は、認証回路８１０及び認証回路７２０より同一の外部演算結果ｘ及び外部演算結果ｙをそれぞれ受信する。
【００３０】
このように、本体機器７００は、２つの同一回路との間で、同一の信号を送受信するため、信号のやり取りの解析が容易に実施されてしまい、第三者の解析が容易になるという問題がある。
【００３１】
また、認証回路の解析を実施するために、正規のアクセサリ機器８００に搭載されている認証回路８１０を取り出して、認証回路８１０に対して不正な入力信号等を与えて内部解析を実施する事も安易にできるという問題もある。
【００３２】
本発明は上述の問題点を解決するためになされたものであり、認証回路に対する第三者からの不正な解析を防ぎつつ、従来構成の利点である回路規模の小ささを維持した優れた認証システムを提供することを目的とする。
【課題を解決するための手段】
【００３３】
上記目的を達成するために、本発明のある局面に係る認証システムは、本体機器と、前記本体機器に接続されるアクセサリ機器とが相互に認証する認証システムであって、前記本体機器内に設けられ、乱数を発生させ、当該乱数を前記アクセサリ機器に送信する乱数発生手段と、前記アクセサリ機器内に設けられ、前記乱数発生手段が発生した前記乱数を入力とする所定の演算を行ない第１のアクセサリ機器内演算結果を生成し、当該第１のアクセサリ機器内演算結果を前記本体機器に送信するアクセサリ機器内演算手段と、前記本体機器内に設けられ、前記乱数発生手段が発生した前記乱数を入力とし、前記アクセサリ機器内演算手段における前記所定の演算と同一の演算を行ない第１の本体機器内演算結果を生成する本体機器内演算手段と、前記本体機器内に設けられ、前記第１のアクセサリ機器内演算結果と前記第１の本体機器内演算結果とを比較することにより、前記アクセサリ機器の認証を行なうアクセサリ機器認証手段と、前記本体機器内に設けられ、前記本体機器内演算手段により算出され、かつ前記第１の本体機器内演算結果に関連する第２の本体機器内演算結果を前記アクセサリ機器に送信する送信手段と、前記アクセサリ機器内に設けられ、前記第２の本体機器内演算結果を受信し、前記第２の本体機器内演算結果と、前記アクセサリ機器内演算手段により算出され、かつ前記第１のアクセサリ機器内演算結果に関連する第２のアクセサリ機器内演算結果とを比較することにより、前記本体機器を認証する本体機器認証手段とを備えることを特徴とする。
【００３４】
この構成によると、アクセサリ機器が乱数を発生させることなく、アクセサリ機器が本体機器が正規のものであるかを判別することができる。すなわち、従来の簡易的な片側認証を行なうシステムの構成を維持しつつ、回路の増大を極力抑えた形で相互認証を実現することができる。このため、第三者による解析等の不正な処理を妨げる効果を高めた、優れた認証システムを実現することができる。
【００３５】
本発明の他の曲面に係る認証システムは、本体機器に接続されるアクセサリ機器を認証する認証システムであって、前記本体機器内に設けられ、乱数を発生させ、当該乱数を前記アクセサリ機器に送信する乱数発生手段と、前記アクセサリ機器内に設けられ、暗号鍵を記憶する暗号鍵記憶手段と、前記アクセサリ機器内に設けられ、前記乱数発生手段が発生した前記乱数を前記暗号鍵記憶手段に記憶された暗号鍵を用いて、所定の暗号方法に基づいて暗号化し、暗号結果を前記本体機器に送信する暗号化手段と、前記本体機器内に設けられ、復号鍵を記憶する復号鍵記憶手段と、前記本体機器内に設けられ、前記暗号化手段より送信された前記暗号結果を受信し、当該暗号結果を前記復号鍵を用いて、前記所定の暗号方法に基づいて復号する復号手段と、前記本体機器内に設けられ、前記復号手段における復号結果と前記乱数発生手段が発生した前記乱数とを比較することにより、前記アクセサリ機器を認証するアクセサリ機器認証手段とを備えることを特徴とする。
【００３６】
この構成によると、従来の簡易的な片側認証のシステム構成を維持しつつ、回路の増大を極力抑えた形で同一の信号を外部に出力することを極力抑えている。このため、第三者による解析等の不正な処理を妨げる効果を高めた、優れた認証システムを実現することができる。
【００３７】
なお、本発明は、このような特徴的な手段を備える認証システムとして実現することができるだけでなく、認証システムに含まれる特徴的な手段をステップとする認証方法として実現したり、認証方法に含まれる特徴的なステップをコンピュータに実行させるプログラムとして実現したりすることもできる。そして、そのようなプログラムは、ＣＤ−ＲＯＭ（Compact Disc-Read Only Memory）等の記録媒体やインターネット等の通信ネットワークを介して流通させることができるのは言うまでもない。
【発明の効果】
【００３８】
本発明によると、認証回路に対する第三者からの不正な解析を防ぎつつ、従来構成の利点である回路規模の小ささを維持した優れた認証システムを提供することができる。
【発明を実施するための最良の形態】
【００３９】
以下、本発明による認証システムの実施の一形態について図面を用いて説明する。
【００４０】
（第１の実施形態）
図１は、本発明の第１の実施形態に係る認証システムの構成を示す機能ブロック図である。
【００４１】
本実施形態に係る認証システムは、本体機器１００と、アクセサリ機器２００とを備えている。
【００４２】
本体機器１００は、各種電気製品に相当し、具体的には、携帯電話機、デジタルスチルカメラ、プリンタ等が本体機器１００に相当する。アクセサリ機器２００は、本体機器１００に接続され、本体機器１００の機能を向上させたり、本体機器１００と一体となって本体機器１００が行う一連の処理を補助したりするために使用される機器である。具体的には、充電電池、増設メモリ、トナーカートリッジ、インクカートリッジ等がアクセサリ機器２００に相当する。
【００４３】
本体機器１００は、制御回路１１０と、認証回路１２０とを含む。
制御回路１１０は、マイクロコンピュータ等で構成されており、本体機器１００の各処理部を制御するとともに、認証回路１２０を用いて、チャレンジレスポンス方式に基づいて、アクセサリ機器２００が正規のアクセサリ機器であるか否かの認証処理を行なう回路である。
【００４４】
認証回路１２０は、外部入出力信号線１０２を介して制御回路１１０と接続され、制御回路１１０から与えられる乱数（チャレンジ）を入力として、所定の演算を施し、演算結果（レスポンス）を制御回路１１０に返す回路である。認証回路１２０の構成については後述する。
【００４５】
アクセサリ機器２００は、認証回路２１０を含む。認証回路２１０は、外部入出力信号線１０１を介して制御回路１１０に接続され、制御回路１１０から与えられる乱数（チャレンジ）に対して、認証回路１２０と同一の所定の演算を施すことにより、演算結果（レスポンス）を制御回路１１０に返す回路である。なお、認証回路１２０は、本体機器１００が正規の本体機器であるか否かの認証処理も行なう。認証回路２１０の構成については後述する。
【００４６】
本体機器１００の性能を高めるため、本体機器１００にアクセサリ機器２００を接続する場合には、本体機器１００に搭載されている制御回路１１０とアクセサリ機器２００に搭載されている認証回路２１０とが外部入出力信号線１０１を介して接続される。
【００４７】
次に、認証回路１２０及び認証回路２１０の構成について説明する。認証回路１２０及び認証回路２１０は、同一の構成を有する。このため、認証回路２１０の構成のみについて説明し、認証回路１２０の構成については説明を繰り返さない。
【００４８】
図２は、認証回路２１０の構成を示すブロック図である。
認証回路２１０は、入力回路２１２と、記憶回路２１４と、演算ブロック２１１と、出力回路２１３と、比較回路２１７とを含む。
【００４９】
入力回路２１２は、本体機器１００に搭載された制御回路１１０から送信される入力信号を取り込む処理部である。
【００５０】
記憶回路２１４は、所定の鍵情報を記憶する記憶装置である。
演算ブロック２１１は、入力回路２１２から出力される入力信号と記憶回路２１４に記憶されている鍵情報を入力とする所定の演算処理を行ない、演算結果を出力する処理部である。
【００５１】
出力回路２１３は、演算ブロック２１１より出力される演算結果を取り込み、本体機器１００に搭載された制御回路１１０に出力する処理部である。
【００５２】
比較回路２１７は、入力回路２１２が取り込んだ入力信号と演算ブロック２１１より出力される演算結果とを比較するための処理部である。
【００５３】
演算ブロック２１１は、セレクタ２１８と、演算回路２１５と、レジスタ２１６とを含む。
【００５４】
セレクタ２１８は、２入力１出力のセレクタである。セレクタ２１８の一方の入力は入力回路２１２に接続され、他方の入力はレジスタ２１６に接続されている。セレクタ２１８は、制御信号２１９に従い、２入力のうちの一方の入力を選択し、出力する。
【００５５】
演算回路２１５は、セレクタ２１８の出力と記憶回路８１４に記憶されている鍵情報を元に、所定の演算を施す処理部である。
【００５６】
レジスタ２１６は、演算回路２１５での演算結果を保持する記憶装置である。
次に各回路間の接続関係について説明する。
【００５７】
入出力信号線２３１は、外部入出力信号線１０１に接続されており、入力回路２１２及び出力回路８１３と本体機器７００内の制御回路１１０とを接続している。入力回路２１２とセレクタ２１８と比較回路２１７とは、入力信号線２３３を介して相互に接続されている。出力回路２１３とセレクタ２１８とレジスタ２１６と比較回路２１７とは、演算結果線２３２を介して相互に接続されている。演算回路２１５と記憶回路２１４とは鍵情報線２２０を介して接続されている。演算回路２１５とレジスタ２１６とは演算結果線２２１を介して接続されている。
【００５８】
次に、以上の構成を有する認証システムにおける認証動作について説明する。
図３は、第１の実施形態に係る認証システムにおける認証動作を示すフローチャートである。
【００５９】
本体機器１００内では、制御回路１１０と認証回路１２０は、外部入出力信号線１０２を介して常に接続されている。本体機器１００に所望のアクセサリ機器２００が接続され、本体機器３００内の制御回路１１０とアクセサリ機器２００内の認証回路２１０とが外部入出力信号線１０１で接続された後、認証処理が開始する。
【００６０】
制御回路１１０は、乱数ｒを発生させ、乱数ｒを含んだ信号を、外部入出力信号線１０１を介してアクセサリ機器２００内の認証回路２１０に送信する（Ｓ１）。
【００６１】
認証回路２１０内の入力回路２１２は、乱数ｒを取り込み、入力信号線２３３に乱数ｒを出力する。この段階では、制御信号２１９に基づいて、セレクタ２１８は、入力回路２１２からの出力を選択して出力するものとする。
【００６２】
乱数ｒの出力と前後するタイミングで、記憶回路２１４より鍵情報線２２０に鍵情報が出力される。演算回路２１５は、乱数ｒと鍵情報とを入力とする所定の演算処理を行い、演算結果をレジスタ２１６に格納する（Ｓ２）。
【００６３】
出力回路２１３は、演算結果線２３２を介して、レジスタ２１６に保持されている演算結果を読み込み、演算結果を外部演算結果ｘとして、入出力信号線２３１及び外部入出力信号線１０１を介して制御回路１１０に送信する（Ｓ３）。制御回路１１０は、認証回路２１０より出力された外部演算結果ｘを取り込み、内部に保持する。
【００６４】
外部演算結果ｘの送信と同時に、制御信号２１９が切り替えられ、レジスタ２１６に保持された値がセレクタ２１８より出力される。なお、制御信号２１９の切替えと前後して、記憶回路２１４より鍵情報線２２０に鍵情報が出力される。演算回路２１５は、レジスタ２１６に保持されている１回目の演算結果と鍵情報とを入力とする所定の演算処理を行い、２回目の演算結果をレジスタ２１６に格納する（Ｓ４）。認証回路２１０で算出された２回目の演算結果を「アクセスキー」とする。
【００６５】
続いて、制御回路１１０は、Ｓ１で送信した乱数ｒと同一の乱数ｒを含む信号を、外部入出力信号線１０２を介して、認証回路１２０に送信する（Ｓ５）。
【００６６】
認証回路１２０は認証回路２１０と同一の構成を有するため、認証回路１２０の演算回路２１５は、乱数ｒと記憶回路２１４に記憶されている鍵情報を入力として、所定の演算を行なう（Ｓ６）。
【００６７】
認証回路１２０は、Ｓ６における演算結果を外部演算結果ｙとして、外部入出力信号線１０２を介して制御回路１１０に送信する（Ｓ７）。
【００６８】
制御回路１１０は、外部演算結果ｘと外部演算結果ｙとを比較する（Ｓ８）。アクセサリ機器２００が正規の製品である場合、同一の構成を有する認証回路１２０及び認証回路２１０から出力される外部演算結果ｘ及び外部演算結果ｙは同一の値である。したがって、制御回路１１０が外部演算結果ｘ及び外部演算結果ｙが同一の値であることを確認することにより、本体機器１００は、アクセサリ機器２００が正規のものであると認証する。
【００６９】
制御回路１１０は、この認証結果に基づいて、アクセサリ機器２００が正規のものであると認証された場合に限り、外部入出力信号線１０２を介して認証回路１２０に外部演算結果ｙを送信する。認証回路１２０は、乱数ｒが入力として与えられた場合と同様に１回目の演算結果と鍵情報とを入力として所定の演算処理を実施する（Ｓ１０）。
【００７０】
認証回路１２０は、２重に暗号演算を行った外部演算結果ｚを、外部入出力信号線１０１に出力する。制御回路１１０は、外部演算結果ｚを受信し保持する（Ｓ１１）。アクセサリ機器２００及び本体機器１００が正規の製品である場合には、外部演算結果ｚは、暗号演算を２重に実施した値と同一になる、つまり認証回路２１０内のレジスタ２１６に保持されているアクセスキーと同一の値となる。
【００７１】
本体機器１００は、以降の認証回路２１０へのアクセス時には外部演算結果ｚを付加して送信する（Ｓ１２）。
【００７２】
認証回路２１０の比較回路２１７は、レジスタ２１６に保持されているアクセスキーとＳ１２の処理で送信された外部演算結果ｚとを比較する（Ｓ１３）。両データが一致する場合には、アクセサリ機器２００は、本体機器１００を認証し、両データが不一致の場合には、アクセサリ機器２００は、本体機器１００が模造された製品であると判断する。また、本体機器１００が模造された製品であると判断された場合には、アクセサリ機器２００は、その後の処理を継続できない構成とする。
【００７３】
すなわち、その後に、本体機器１００の制御回路１１０よりアクセサリ機器２００に対する各種命令が送信されるが（Ｓ１４）、Ｓ１３の処理において本体機器１００が認証された場合には、本体機器１００は命令を実行し、本体機器１００が模造されたものであると判断された場合には、本体機器１００より送信された命令を受け付けない、又は実行しない。
【００７４】
以上説明したように、本実施の形態に係る認証システムによると、アクセサリ機器２００側が乱数を発生させることなく、アクセサリ機器２００が本体機器１００について正規のものであるかを判別する事ができる。すなわち、従来の簡易的な片側認証を行なうシステムの構成を維持しつつ、回路の増大を極力抑えた形で相互認証を実現することができる。このため、第三者による解析等の不正な処理を妨げる効果を高めた、優れた認証システムを実現することができる。
【００７５】
なお、相互認証を実現する一般的な認証システムには、本体機器１００の制御回路１１０に暗号回路（演算回路）が備わっており、認証回路１２０及び認証回路２１０には、乱数発生回路が備わっている。本実施の形態では、これらの回路を削減することができるという効果がある。
【００７６】
また、本発明の制御回路１１０と認証回路１２０との間の通信と、制御回路１１０と認証回路２１０との間の通信は同時に実施する必要がない。このため、図４に示すように、外部入出力信号線１０１と外部入出力信号線１０２とを同一の外部入出力信号線１０４として、認証システムを構成しても、本実施の形態と同様の効果を得る事が可能である。
【００７７】
さらに、認証回路１２０については、従来技術と同一の構成であっても、同様の効果を得る事が可能である。また、認証回路１２０と認証回路２１０とを他の回路に置き換えた場合でも同様の効果を得る事ができる。
【００７８】
（第２の実施形態）
次に、本発明の第２の実施形態に係る認証システムについて説明する。
【００７９】
図５は、本発明の第２の実施形態に係る認証システムの構成を示す機能ブロック図である。
【００８０】
本実施形態に係る認証システムは、本体機器３００と、アクセサリ機器４００とを備えている。
【００８１】
第１の実施形態と同様に、本体機器３００は、各種電気製品に相当し、アクセサリ機器４００は、本体機器３００に接続され、本体機器３００の機能を向上させたり、本体機器３００と一体となって本体機器３００が行う一連の処理を補助したりするために使用される機器である。
【００８２】
本体機器３００は、マイクロコンピュータ等で構成された制御回路３１０と、制御回路３１０に外部入出力信号線３０２で接続された認証回路３２０とを含む。
【００８３】
制御回路３１０は、第１の実施形態の制御回路１１０と同様の構成を有するが、実行する処理が異なる。認証回路３２０の構成については後述する。
【００８４】
アクセサリ機器４００は、認証回路４１０を含む。認証回路４１０の構成については後述する。
【００８５】
本体機器３００の性能を高めるため、本体機器３００にアクセサリ機器４００を接続する場合、本体機器３００に搭載されている制御回路３１０とアクセサリ機器４００に搭載されている認証回路４１０とが、外部入出力信号線３０１を介して接続される。同時に、本体機器３００に搭載されている認証回路３２０とアクセサリ機器４００に搭載されている認証回路４１０とが、外部入出力信号線３０３を介して接続される。
【００８６】
次に、認証回路３２０及び認証回路４１０の構成について説明する。認証回路３２０及び認証回路４１０は、同一の構成を有する。このため、認証回路４１０の構成のみについて説明し、認証回路３２０の構成については説明を繰り返さない。
【００８７】
図６は、認証回路４１０の構成を示すブロック図である。
認証回路４１０は、図２を参照して説明した第１の実施形態に係る認証回路２１０の構成において、入力回路２１２及び出力回路２１３の代わりに入力回路４１２及び出力回路４１３をそれぞれ用いた構成である。その他の構成については、認証回路２１０と同様であるため、その詳細な説明はここでは繰り返さない。
【００８８】
なお、入力回路４１２及び出力回路４１３には、認証回路３２０と認証回路４１０との間の通信を実現するために、入出力信号線４３３に接続されている点が、第１の実施形態とは異なる。
【００８９】
なお、認証回路３２０の入出力信号線２３１は図５の外部入出力信号線３０２に、認証回路４１０の入出力信号線２３１は図５の外部入出力信号線３０１に、認証回路３２０の入出力信号線４３３は図５の外部入出力信号線３０３に、認証回路４１０の入出力信号線４３３は図５の外部入出力信号線３０３に、それぞれ接続される。
【００９０】
次に、以上の構成を有する認証システムにおける認証動作について説明する。
図７は、第２の実施形態に係る認証システムにおける認証動作を示すフローチャートである。
【００９１】
本体機器３００内では、制御回路３１０と認証回路３２０とは、外部入出力信号線３０２を介して常に接続されている。本体機器３００に所望のアクセサリ機器４００が接続され、本体機器３００内の制御回路３１０とアクセサリ機器４００内の認証回路４１０とが外部入出力信号線３０１で接続された後、認証処理が開始する。
【００９２】
制御回路３１０は、乱数ｒを発生させ、乱数ｒを含んだ信号を、外部入出力信号線３０１を介してアクセサリ機器４００内の認証回路４１０に送信する（Ｓ２１）。それと同時に、制御回路３１０は、乱数ｒを含んだ信号を、外部入出力信号線３０２を介して本体機器３００内の認証回路３２０にも送信する（Ｓ２２）。
【００９３】
認証回路４１０内の入力回路４１２は、乱数ｒを取り込み、入力信号線２３３に乱数ｒを出力する。この段階では、制御信号２１９に基づいて、セレクタ２１８は、入力回路２１２からの出力を選択して出力するものとする。
【００９４】
乱数ｒの出力と前後するタイミングで、記憶回路２１４より鍵情報線２２０に鍵情報が出力される。演算回路２１５は、乱数ｒと鍵情報とを入力とする所定の演算処理を行い、演算結果をレジスタ２１６に格納する（Ｓ２３）。
【００９５】
Ｓ２３と同様の動作が、本体機器３００内の認証回路３２０においても行なわれる（Ｓ２４）。
【００９６】
本体機器３００とアクセサリ機器４００とが正規の製品である場合には、認証回路３２０における演算結果と認証回路４１０における演算結果とは同一の値である。このため、両演算結果を比較するために、以下の処理を行う。
【００９７】
すなわち、認証回路３２０内の出力回路４１３は演算結果を取り込んで、外部入出力信号線３０３に外部演算結果ｘを出力する。認証回路４１０は外部入出力信号線３０３を介し、入力回路４１２より外部演算結果ｘを取り込む（Ｓ２５）。
【００９８】
認証回路４１０の比較回路２１７は、外部演算結果ｘと、レジスタ２１６に保持されている演算結果とを比較する（Ｓ２６）。比較の結果、２つの値が一致する場合には、アクセサリ機器４００は、本体機器３００が正規の製品であるとして、認証する。比較の結果、２つの値が異なる場合には、アクセサリ機器４００は、それ以降の処理を実施しない。
【００９９】
認証回路４１０は、本体機器３００の認証後、２度目の演算処理を開始する（Ｓ２７）。すなわち、この段階では、制御信号２１９が切り替えられ、セレクタ２１８は、レジスタ２１６に保持されている１回目の演算結果を出力する。演算回路２１５は、１回目の演算結果と記憶回路２１４に記憶されている鍵情報とを入力として、所定の演算を行い、２回目の演算結果をレジスタ２１６に格納する。
【０１００】
なお、認証回路３２０においても、１回目の演算結果と鍵情報とを入力とする所定の演算を行い、２回目の演算結果をレジスタ２１６に格納する（Ｓ２８）。
【０１０１】
次に、認証回路４１０の出力回路４１３が２回目の演算結果を外部演算結果ｙとして外部入出力信号線３０３に出力する。認証回路３２０は、外部入出力信号線３０３を介し、入力回路４１２より外部演算結果ｙを取り込む（Ｓ２９）。
【０１０２】
本体機器３００とアクセサリ機器４００とが正規の物である場合、認証回路４１０における２回目の演算結果である外部演算結果ｙと、認証回路３２０における２回目の演算結果とは同一の値である。このため、認証回路３２０の比較回路２１７は、これら２つの値を比較する（Ｓ３０）。比較の結果、２つの値が一致する場合には、本体機器３００は、アクセサリ機器４００が正規の製品であるとして、認証する。比較の結果、２つの値が異なる場合には、本体機器３００はそれ以降の処理を実行しない。
【０１０３】
本体機器３００がアクセサリ機器４００を認証した場合には、認証回路３２０より、認証完了信号が外部入出力信号線３０２に出力され、制御回路３１０は認証が正常に完了したことを確認する事ができる（Ｓ３１）。
【０１０４】
認証が正常に完了した後は、制御回路３１０から認証回路４１０に対して、各種命令が送信され（Ｓ３２）、認証回路４１０において命令が実行される。
【０１０５】
以上説明したように、本実施の形態に係る認証システムによると、アクセサリ機器４００が乱数を発生させることなく、アクセサリ機器４００が本体機器３００について正規の製品であるかを判別することができる。すなわち、従来の簡易的な片側認証を行なうシステムの構成を維持しつつ、回路の増大を極力抑えた形で相互認証を実現することができる。このため、第三者による解析等の不正な処理を妨げる効果を高めた、優れた認証システムを実現することができる。
【０１０６】
なお、相互認証を実現する一般的な認証システムには、本体機器３００の制御回路３１０に暗号回路（演算回路）と比較回路とが備わっており、認証回路３２０及び認証回路４１０には乱数発生回路が備わっている。本実施の形態では、これらの回路を削減することができるという効果がある。
【０１０７】
なお、本発明の制御回路３１０と認証回路３２０間の通信と、制御回路３１０と認証回路４１０との間の通信は同時に実施する必要がない。このため、図８に示すように、外部入出力信号線３０１と外部入出力信号線３０２とを同一の外部入出力信号線３０４として、認証システムを構成しても、本実施の形態と同様の効果を得る事が可能である。
【０１０８】
さらに、図４に示したように、外部入出力信号線３０１と外部入出力信号線３０２と、外部入出力信号線３０３とを共通の信号線として使用しても同様の効果を得る事が可能である。
【０１０９】
また、本実施の形態における相互認証においては、認証回路４１０において認証を行なった後、認証回路３２０において認証を行なうようにしたが、相互に認証を行なうことができれば、順序が逆であっても構わない。すなわち、認証回路３２０において認証を行なった後に、認証回路４１０において認証を行なうように、認証システムが処理を行なっても、同様の効果を得ることができる。
【０１１０】
（第３の実施形態）
次に、本発明の第３の実施形態に係る認証システムについて説明する。
【０１１１】
図９は、本発明の第３の実施形態に係る認証システムの構成を示す機能ブロック図である。
【０１１２】
本実施の形態に係る認証システムは、本体機器５００と、アクセサリ機器６００とを備えている。
【０１１３】
第１及び第２の実施形態と同様に、本体機器５００は、各種電気製品に相当し、アクセサリ機器６００は、本体機器５００に接続させ、本体機器５００の機能を向上させたり、本体機器５００と一体となって本体機器５００が行なう一連の処理を補助したりするために使用される機器である。
【０１１４】
本体機器５００は、マイクロコンピュータ等で構成された制御回路５１０と、制御回路５１０に外部入出力信号線３０２で接続された認証回路５２０とを含む。
【０１１５】
制御回路５１０は、第１の実施形態の制御回路１１０と同様の構成を有するが、実行する処理が異なる。認証回路５２０の構成については後述する。
【０１１６】
アクセサリ機器６００は、認証回路６１０を含む。認証回路６１０の構成については後述する。
【０１１７】
次に、認証回路５２０及び認証回路６１０の構成について説明する。認証回路５２０及び認証回路６１０は、ほぼ同一の構成を有する。このため、認証回路６１０の構成を中心に説明する。
【０１１８】
図１０は、認証回路６１０の構成を示すブロック図である。
認証回路６１０は、入力回路４１２と、出力回路４１３と、演算ブロック６１１と、記憶回路２１４とを備えている。入力回路４１２及び出力回路４１３は、図６に示したものと同様である。また、記憶回路２１４は、図２に示したものと同様である。そのため、これらの詳細な説明は、ここでは繰り返さない。
【０１１９】
演算ブロック６１１は、演算回路６１５と、レジスタ２１６とを含む。
演算回路６１５は、入力回路４１２を介して入力されるデータに対して、記憶回路２１４に記憶されている鍵情報を用いて暗号化する処理部である。一方、認証回路５２０に設けられている演算回路６１５は、入力回路４１２を介して入力されるデータに対して、記憶回路２１４に記憶されている鍵情報を用いて復号化する処理部である。
【０１２０】
すなわち、ある入力データＡと記憶回路２１４に記憶されている鍵情報とを用いて、認証回路６１０の演算回路６１５で演算処理を行なうと、入力データＡを鍵情報を用いて暗号化した暗号化データＢが得られる。暗号化データＢと記憶回路２１４に記憶されている鍵情報とを用いて、認証回路５２０の演算回路６１５で演算処理を行なうと、演算結果として、元の入力データＡを得ることが可能となる。このように、認証回路６１０の演算回路６１５と認証回路５２０の演算回路６１５とは、同一の規則に従った暗号化、復号化の関係にあるといえる。
【０１２１】
認証回路５２０の入出力信号線２３１は図９に示す外部入出力信号線３０２に、認証回路６１０の入出力信号線２３１は図９に示す外部入出力信号線３０１に、認証回路５２０の入出力信号線４３３は図９に示す外部入出力信号線３０３に、認証回路６１０の入出力信号線４３３は図９に示す外部入出力信号線３０３に、それぞれ接続される。
【０１２２】
次に、以上の構成を有する認証システムにおける認証動作について説明する。
図１１は、第３の実施形態に係る認証システムにおける認証動作を示すフローチャートである。
【０１２３】
本体機器５００内では、制御回路５１０と認証回路５２０とは、外部入出力信号線３０２を介して常に接続されている。本体機器５００に所望のアクセサリ機器６００が接続され、本体機器５００内の制御回路５１０とアクセサリ機器６００内の認証回路６１０とが外部入出力信号線３０１を介して接続された後、認証の開始となる。
【０１２４】
制御回路５１０は、乱数ｒを発生させ、乱数ｒを含んだ信号を、外部入出力信号線３０１を介してアクセサリ機器６００内の認証回路６１０に送信する（Ｓ４１）。次に、認証回路６１０内の入力回路４１２が乱数ｒを取り込み、入力信号線２３３に乱数ｒを出力する。
【０１２５】
乱数ｒの出力と前後するタイミングで、認証回路６１０の記憶回路２１４より鍵情報線２２０に鍵情報が出力される。
【０１２６】
認証回路６１０の演算回路６１５は、乱数ｒを鍵情報を用いて暗号化する演算を行い、演算結果をレジスタ２１６に格納する（Ｓ４２）。
【０１２７】
出力回路４１３は、Ｓ４２における延安結果を外部入出力信号線３０３へ外部演算結果ｘとして出力する（Ｓ４３）。認証回路５２０の入力回路４１２は、外部演算結果ｘを取り込み、入力信号線２３３に出力する。
【０１２８】
外部演算結果ｘの出力と前後するタイミングで、認証回路５２０の記憶回路２１４より鍵情報線２２０に鍵情報が出力されている。認証回路５２０の演算回路６１５は、外部演算結果ｘを鍵情報を用いて復号化する演算を行い、演算結果をレジスタ２１６に格納する（Ｓ４４）。
【０１２９】
先に述べたとおり、認証回路５２０の演算回路６１５と、認証回路６１０の演算回路６１５とは、同一の規則に従った暗号化及び復号化の関係にある。このため、認証回路５２０の演算回路６１５が出力する演算結果は、乱数ｒとなるはずである。
【０１３０】
認証回路５２０の出力回路４１３は、レジスタ２１６に保持されている演算結果を外部演算結果ｙとして外部入出力信号線３０２を介して制御回路５１０に送信する（Ｓ４５）。
【０１３１】
制御回路５１０は、最初に発生させた乱数ｒと外部演算結果ｙとを比較し（Ｓ４６）、一致した場合に、アクセサリ機器６００が正規の製品であると確認し、アクセサリ機器６００を認証する。
【０１３２】
アクセサリ機器６００の認証が行なわれた後は、制御回路５１０は、アクセサリ機器６００に対して各種命令を送信する（Ｓ４７）。命令を受信したアクセサリ機器６００は、当該命令を順次実行する。
【０１３３】
以上説明したように、本実施の形態に係る認証システムによると、従来の簡易的な片側認証のシステム構成を維持しつつ、回路の増大を極力抑えた形で同一の信号を外部に出力することを極力抑えている。このため、第三者による解析等の不正な処理を妨げる効果を高めた、優れた認証システムを実現することができる。
【０１３４】
なお、図１４に示した従来の認証システムにおける認証方法によると、制御回路７１０と認証回路８１０との間でやり取りされるデータと、制御回路７１０と認証回路７２０との間でやり取りされるデータとは同じである。このため、制御回路７１０と認証回路７２０との間でやり取りされるデータを観測すれば、制御回路７１０と認証回路８１０との間でやり取りされるデータを観測することとなる。これに対して、本実施形態に係る認証システムの認証方法によると、図１１に示すように、認証回路５２０が制御回路５１０に送信する外部演算結果ｙは、乱数ｒと同一の値である。また、認証回路５２０と認証回路６１０とでは異なる演算処理を行なっている。したがって、認証回路５２０と制御回路５１０との間でやり取りされるデータを観測したとしても、認証回路６１０で行なわれる演算処理を解析するのは困難である。
【０１３５】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
【産業上の利用可能性】
【０１３６】
本発明にかかる認証システム及び認証方法は、携帯電話機及びバッテリー等のように、本体機器にアクセサリ機器を追加することにより作動するシステム等に適用できる。
【図面の簡単な説明】
【０１３７】
【図１】本発明の第１の実施形態に係る認証システムの構成を示す機能ブロック図である。
【図２】同上に係る認証回路の構成を示すブロック図である。
【図３】同上に係る認証システムにおける認証動作を示すフローチャートである。
【図４】同上に係る認証システムの他の構成を示す機能ブロック図である。
【図５】本発明の第２の実施形態に係る認証システムの構成を示す機能ブロック図である。
【図６】同上に係る認証回路の構成を示すブロック図である。
【図７】同上に係る認証システムにおける認証動作を示すフローチャートである。
【図８】同上に係る認証システムの他の構成を示す機能ブロック図である。
【図９】本発明の第３の実施形態に係る認証システムの構成を示す機能ブロック図である。
【図１０】同上に係る認証回路の構成を示すブロック図である。
【図１１】同上に係る認証システムにおける認証動作を示すフローチャートである。
【図１２】従来のアクセサリ機器の認証を行なう認証システムの構成を示すブロック図である。
【図１３】従来の認証回路の構成を示すブロック図である。
【図１４】従来の認証システムにおける認証動作を示すフローチャートである。
【符号の説明】
【０１３８】
１００、３００、５００、７００  本体機器
２００、４００、６００、８００  アクセサリ機器
１１０、３１０、５１０、７１０  制御回路
１２０、２１０、３２０、４１０、５２０、６１０、７２０、８１０  認証機器
２１１、６１１、８１１  演算ブロック
２１２、４１２、８１２  入力回路
２１３、４１３、８１３  出力回路
２１４、８１４  記憶回路
２１５、６１５、８１５  演算回路
２１６、８１６  レジスタ
２１７  比較回路
２１８  セレクタ
【図１】
2008085547.tif 000003
【図２】
2008085547.tif 000004
【図３】
2008085547.tif 000005
【図４】
2008085547.tif 000006
【図５】
2008085547.tif 000007
【図６】
2008085547.tif 000008
【図７】
2008085547.tif 000009
【図８】
2008085547.tif 000010
【図９】
2008085547.tif 000011
【図１０】
2008085547.tif 000012
【図１１】
2008085547.tif 000013
【図１２】
2008085547.tif 000014
【図１３】
2008085547.tif 000015
【図１４】
2008085547.tif 000016