(57)【要約】【課題】鍵の流出に対する影響を抑えることができる認証方法を提供する。【解決手段】認証方法は、認証装置が、被認証装置が、第１元鍵の識別子に基づき複数の派生鍵から選択鍵を選択するステップと、被認証装置が、チャレンジデータと選択鍵に基づく第１生成鍵とに基づき認証データを生成するステップと、認証装置が、第１元鍵と第１の値とを一方向性関数の入力として認証鍵を生成するステップと、認証装置が、チャレンジデータと認証鍵に基づく第２生成鍵とに基づき比較データを生成するステップと、認証装置が、比較データと認証データとを比較することで被認証装置を認証するステップと、を含む。【選択図】図５
2019075774.tif 000002
【特許請求の範囲】
【請求項１】
複数の元鍵のうちの第１元鍵と、前記第１元鍵の識別子と、を保持する認証装置による被認証装置の認証方法であって、
前記被認証装置は、第１の値と、前記複数の元鍵それぞれと前記第１の値とを一方向性関数の入力として生成された複数の派生鍵と、を保持しており、
前記認証方法は、
前記被認証装置が、前記認証装置から通知された前記第１元鍵の識別子に基づき前記複数の派生鍵から選択鍵を選択するステップと、
前記被認証装置が、前記認証装置から通知されたチャレンジデータと、前記選択鍵に基づく第１生成鍵と、に基づき認証データを生成するステップと、
前記認証装置が、前記第１元鍵と、前記被認証装置から通知された前記第１の値とを前記一方向性関数の入力として認証鍵を生成するステップと、
前記認証装置が、前記チャレンジデータと、前記認証鍵に基づく第２生成鍵と、に基づき比較データを生成するステップと、
前記認証装置が、前記比較データと、前記被認証装置から通知された前記認証データと、を比較することで前記被認証装置を認証するステップと、
を含む、ことを特徴とする認証方法。
【請求項２】
前記選択鍵は、前記複数の派生鍵のうち、前記第１元鍵と前記第１の値とを前記一方向性関数の入力として生成された派生鍵であることを特徴とする請求項１に記載の認証方法。
【請求項３】
前記第１生成鍵は、前記選択鍵であり、
前記第２生成鍵は、前記認証鍵である、ことを特徴とする請求項１又は２に記載の認証方法。
【請求項４】
前記チャレンジデータは、前記認証装置がランダムに生成したデータであることを特徴とする請求項３に記載の認証方法。
【請求項５】
前記被認証装置が、第２の値と前記選択鍵とに基づき前記第１生成鍵を生成するステップと、
前記認証装置が、前記被認証装置から通知された前記第２の値と前記認証鍵とに基づき前記第２生成鍵を生成するステップと、
をさらに含むことを特徴とする請求項１又は２に記載の認証方法。
【請求項６】
前記被認証装置は、前記第２の値に対して所定の演算を行った第３の値と前記選択鍵とに基づき前記第１生成鍵を生成し、
前記認証装置は、前記第２の値に対して前記所定の演算を行った第３の値と前記認証鍵とに基づき前記第２生成鍵を生成することを特徴とする請求項５に記載の認証方法。
【請求項７】
前記被認証装置は、前記複数の派生鍵それぞれに対応するレジスタを有し、
前記第２の値は、前記選択鍵として選択された派生鍵に対応するレジスタの値であり、
前記被認証装置は、前記第１生成鍵を生成する際に、前記選択鍵として選択された派生鍵に対応するレジスタの値を前記第２の値から前記第３の値に更新することを特徴とする請求項５又は６に記載の認証方法。
【請求項８】
前記第２の値は、前記被認証装置がランダムに生成した値であることを特徴とする請求項５に記載の認証方法。
【請求項９】
前記チャレンジデータは、前記認証装置がランダムに生成したデータ又は所定のデータであることを特徴とする請求項５から８のいずれか1項に記載の認証方法。
【請求項１０】
前記認証データと前記比較データは、同じアルゴリズムにより生成されることを特徴とする請求項１から９のいずれか1項に記載の認証方法。
【請求項１１】
前記認証データは、前記チャレンジデータの前記第１生成鍵による暗号化データ又は暗号化ハッシュ値であることを特徴とする請求項１０に記載の認証方法。
【請求項１２】
前記被認証装置は、第４の値を保持しており、
前記認証データは、前記チャレンジデータと前記第４の値とを結合したデータの前記第１生成鍵による暗号化データ又は暗号化ハッシュ値であることを特徴とする請求項１０に記載の認証方法。
【請求項１３】
前記一方向性関数は、暗号化ハッシュ関数、又は、共通鍵暗号で使用される関数であることを特徴とする請求項１から１２のいずれか１項に記載の認証方法。
【請求項１４】
複数の元鍵のうちの第１元鍵と、前記第１元鍵の識別子と、を保持する保持手段と、
前記第１元鍵の識別子と、チャレンジデータとを、被認証装置に通知する通知手段と、
前記被認証装置から認証データと、第１の値を受信する受信手段と、
前記第１元鍵と前記第１の値とを一方向性関数の入力として認証鍵を生成し、前記チャレンジデータと、前記認証鍵又は前記認証鍵から生成した生成鍵と、に基づき比較データを生成する第１生成手段と、
前記認証データと前記比較データとを比較することで前記被認証装置を認証する認証手段と、
を備えていることを特徴とする認証装置。
【請求項１５】
前記チャレンジデータをランダムに生成する第２生成手段をさらに備えており、
前記第１生成手段は、前記チャレンジデータと、前記認証鍵と、に基づき前記比較データを生成することを特徴とする請求項１４に記載の認証装置。
【請求項１６】
前記受信手段は、前記被認証装置から第２の値を受信し、
前記第１生成手段は、前記第２の値と前記認証鍵とに基づき前記生成鍵を生成し、前記チャレンジデータと、前記生成鍵と、に基づき前記比較データを生成することを特徴とする請求項１４に記載の認証装置。
【請求項１７】
前記第１生成手段は、前記第２の値に対して所定の演算を行った第３の値と、前記認証鍵と、に基づき前記生成鍵を生成することを特徴とする請求項１６に記載の認証装置。
【請求項１８】
前記第２の値は、前記認証装置による前記被認証装置の認証の度に、前記被認証装置により更新されることを特徴とする請求項１６又は１７に記載の認証装置。
【請求項１９】
前記第２の値は、前記被認証装置がランダムに生成した値であることを特徴とする請求項１６に記載の認証装置。
【請求項２０】
前記チャレンジデータは、所定のデータであることを特徴とする請求項１６から１９のいずれか１項に記載の認証装置。
【請求項２１】
前記比較データは、前記チャレンジデータの前記認証鍵又は前記生成鍵による暗号化データ又は暗号化ハッシュ値であることを特徴とする請求項１４から２０のいずれか１項に記載の認証装置。
【請求項２２】
前記被認証装置は、前記複数の元鍵それぞれと前記第１の値とを前記一方向性関数の入力として生成された複数の派生鍵を保持しており、
前記認証データは、前記第１元鍵の識別子に基づき前記複数の派生鍵から選択された選択鍵又は前記選択鍵に基づき生成された鍵と、前記チャレンジデータとに基づき、前記比較データと同じアルゴリズムにより生成されたデータであることを特徴とする請求項２１に記載の認証装置。
【請求項２３】
前記受信手段は、前記被認証装置から第４の値を受信し、
前記比較データは、前記チャレンジデータと前記第４の値とを結合したデータの前記認証鍵又は前記生成鍵による暗号化データ又は暗号化ハッシュ値であることを特徴とする請求項１４から２０のいずれか１項に記載の認証装置。
【請求項２４】
前記被認証装置は、前記複数の元鍵それぞれと前記第１の値とを前記一方向性関数の入力として生成された複数の派生鍵を保持しており、
前記認証データは、前記第１元鍵の識別子に基づき前記複数の派生鍵から選択された選択鍵又は前記選択鍵に基づき生成された鍵と、前記チャレンジデータと、前記第４の値と、に基づき、前記比較データと同じアルゴリズムにより生成されたデータであることを特徴とする請求項２３に記載の認証装置。
【請求項２５】
請求項１４から２４のいずれか１項に記載の認証装置を有する画像形成装置。
【請求項２６】
前記被認証装置は、前記画像形成装置から着脱可能なユニットであることを特徴とする請求項２５に記載の画像形成装置。
【請求項２７】
第１の値と、複数の元鍵それぞれと前記第１の値とを一方向性関数の入力として生成された複数の派生鍵を保持する保持手段と、
認証装置から通知された前記複数の元鍵のうちの第１元鍵の識別子に基づき、前記複数の派生鍵から選択鍵を選択する選択手段と、
前記認証装置から通知されたチャレンジデータと、前記選択鍵又は前記選択鍵から生成した生成鍵と、に基づき認証データを生成する第１生成手段と、
前記認証データと、前記第１の値とを、前記認証装置に通知する通知手段と、
を備えていることを特徴とする被認証装置。
【請求項２８】
前記第１生成手段は、前記チャレンジデータと、前記選択鍵と、に基づき前記認証データを生成し、
前記チャレンジデータは、前記認証装置がランダムに生成したデータであることを特徴とする請求項２７に記載の被認証装置。
【請求項２９】
前記第１生成手段は、第２の値と前記選択鍵とに基づき前記生成鍵を生成し、前記チャレンジデータと、前記生成鍵と、に基づき前記認証データを生成し、
前記通知手段は、前記第２の値を前記認証装置に通知することを特徴とする請求項２７に記載の被認証装置。
【請求項３０】
前記第１生成手段は、前記第２の値に対して所定の演算を行った第３の値と前記選択鍵とに基づき前記生成鍵を生成することを特徴とする請求項２９に記載の被認証装置。
【請求項３１】
前記複数の派生鍵それぞれに対応するレジスタをさらに有し、
前記第２の値は、前記選択鍵として選択された派生鍵に対応するレジスタに格納された値であり、
前記第１生成手段は、前記選択鍵として選択された派生鍵に対応するレジスタの値を前記第２の値から前記第３の値に更新することを特徴とする請求項３０に記載の被認証装置。
【請求項３２】
前記第２の値をランダムに生成する第２生成手段をさらに備えていることを特徴とする請求項２９に記載の被認証装置。
【請求項３３】
前記チャレンジデータは、前記認証装置がランダムに生成したデータ又は所定のデータであることを特徴とする請求項２７から３２のいずれか1項に記載の被認証装置。
【請求項３４】
前記認証データは、前記チャレンジデータの前記選択鍵又は前記生成鍵による暗号化データ又は暗号化ハッシュ値であることを特徴とする請求項２７から３３のいずれか１項に記載の被認証装置。
【請求項３５】
前記保持手段は、第４の値を保持しており、
前記通知手段は、前記第４の値を前記認証装置に通知し、
前記認証データは、前記チャレンジデータと前記第４の値とを結合したデータの前記選択鍵又は前記生成鍵による暗号化データ又は暗号化ハッシュ値であることを特徴とする請求項２７から３３のいずれか１項に記載の被認証装置。
【請求項３６】
前記被認証装置は、画像形成装置から着脱可能なユニットであることを特徴とする請求項２７から３５のいずれか１項に記載の被認証装置。
【請求項３７】
前記被認証装置は、画像形成装置から着脱可能なユニットであり、
前記第４の値は、前記ユニットの識別子であることを特徴とする請求項３５に記載の被認証装置。
【請求項３８】
前記一方向性関数は、暗号化ハッシュ関数、又は、共通鍵暗号で使用される関数であることを特徴とする請求項２７から３７のいずれか１項に記載の被認証装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、認証装置による被認証装置の認証技術及び画像形成装置に関する。
【背景技術】
【０００２】
画像形成装置は、交換ユニットを有する。例えば、記録材に形成したトナー像を、記録材に定着させる定着ユニットは、高温環境で利用されるため、その寿命は画像形成装置の本体に比べて短い。したがって、定着ユニットは、交換可能な交換ユニットとして、通常、設計される。また、画像形成装置には、そのユーザの選択によりオプションとして画像形成装置に取り付け可能な拡張ユニットが用意されることがある。例えば、フィーダや排紙ユニットが、拡張ユニットとして用意され得る。これら画像形成装置の本体から着脱可能に設計された交換ユニットや拡張ユニットの模倣品が市場に出回ることがある。そのような模倣品を画像形成装置に装着して使用すると、画像形成装置本体が誤動作するなどの問題がおきる可能性がある。このため、画像形成装置に装着したユニットが、正規品であるか否かを識別する必要がある。
【０００３】
装着されたユニットが正規品であるかを判定・認証するため、暗号技術の一種である認証技術を利用することが既に行われている。非特許文献１は、共通鍵暗号であるＡＥＳアルゴリズムを開示している。非特許文献２は、暗号化ハッシュ関数であるＳＨＡ２５６アルゴリズムを開示している。認証には、特許文献１に記載されている様に、共通鍵暗号や暗号化ハッシュ関数を利用したチャレンジ・レスポンス認証法が一般的に使用される。特許文献１は、被認証装置が、認証装置から受信した乱数データ（チャレンジ）を暗号化して暗号データを送り返し（レスポンス）、暗号データが正しいかを認証装置が判定することで認証を行う構成を開示している。なお、非特許文献３は、共通鍵暗号に基づきメッセージ認証コード（レスポンス)を計算する方法を開示している。さらに、非特許文献４は、暗号化ハッシュ関数に基づきメッセージ認証コード(レスポンス)を計算する方法を開示している。チャレンジ・レスポンス認証法は、認証装置と非認証装置が同じ暗号鍵を有することを前提としている。したがって、暗号鍵を秘匿することが重要となる。このため、暗号鍵の保存及び認証処理は、セキュリティＬＳＩの様な、セキュリティ性の高い耐タンパチップで行われる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−１６２９８６号公報
【非特許文献】
【０００５】
【非特許文献１】ＮＩＳＴ＿ＦＩＰＳ＿ＰＵＢ  １８０−４
【非特許文献２】ＮＩＳＴ＿ＦＩＰＳ＿ＰＵＢ  １９７
【非特許文献３】ＮＩＳＴ  ＳＰ  ８００−３８Ｂ
【非特許文献４】ＮＩＳＴ＿ＦＩＰＳ＿ＰＵＢ  １９８−１
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、セキュリティＬＳＩに対する解析技術は年々進歩しており、開発当初はセキュリティ性能が高くても、短い期間でセキュリティ性能が低下する恐れがある。特許文献１では、認証装置と被認証装置が共通の暗号鍵を保持しているため、認証装置及び被認証装置のどちらか一方に対する解析が成功すると、認証装置による認証を成功させる被認証装置を製造することが可能になる。
【０００７】
本発明は、鍵の流出に対する影響を抑えることができる認証方法、認証装置、被認証装置及び画像形成装置を提供するものである。
【課題を解決するための手段】
【０００８】
本発明の一態様によると、複数の元鍵のうちの第１元鍵と、前記第１元鍵の識別子と、を保持する認証装置による被認証装置の認証方法であって、前記被認証装置は、第１の値と、前記複数の元鍵それぞれと前記第１の値とを一方向性関数の入力として生成された複数の派生鍵と、を保持しており、前記認証方法は、前記被認証装置が、前記認証装置から通知された前記第１元鍵の識別子に基づき前記複数の派生鍵から選択鍵を選択するステップと、前記被認証装置が、前記認証装置から通知されたチャレンジデータと、前記選択鍵に基づく第１生成鍵と、に基づき認証データを生成するステップと、前記認証装置が、前記第１元鍵と、前記被認証装置から通知された前記第１の値とを前記一方向性関数の入力として認証鍵を生成するステップと、前記認証装置が、前記チャレンジデータと、前記認証鍵に基づく第２生成鍵と、に基づき比較データを生成するステップと、前記認証装置が、前記比較データと、前記被認証装置から通知された前記認証データと、を比較することで前記被認証装置を認証するステップと、を含む、ことを特徴とする。
【発明の効果】
【０００９】
本発明によると、鍵の流出に対する影響を抑えることができる。
【図面の簡単な説明】
【００１０】
【図１】一実施形態による認証システムの構成図。
【図２】一実施形態による被認証チップとコントローラの構成図。
【図３】一実施形態による元鍵と、固有値と、派生鍵との関係の説明図。
【図４】一実施形態による認証チップ及び被認証チップが保持する情報を示す図。
【図５】一実施形態による認証方法のシーケンス図。
【図６】一実施形態による認証システムの構成図。
【図７】一実施形態による被認証チップとコントローラの構成図。
【図８】一実施形態による被認証チップが保持する情報を示す図。
【図９】一実施形態による認証方法のシーケンス図。
【図１０】一実施形態による被認証チップが保持する情報を示す図。
【図１１】一実施形態による認証方法のシーケンス図。
【図１２】一実施形態による被認証チップが保持する情報を示す図。
【図１３】一実施形態による認証方法のシーケンス図。
【図１４】一実施形態による被認証チップが保持する情報を示す図。
【図１５】一実施形態による認証方法のシーケンス図。
【発明を実施するための形態】
【００１１】
以下、本発明の例示的な実施形態について図面を参照して説明する。なお、以下の実施形態は例示であり、本発明を実施形態の内容に限定するものではない。また、以下の各図においては、実施形態の説明に必要ではない構成要素については図から省略する。
【００１２】
＜第一実施形態＞
図１は、本実施形態による認証システムを適用した画像形成装置１００の構成図である。画像形成装置１００は、認証装置であるコントローラ１０１を有する。本実施形態において、コントローラ１０１は、認証処理に加えて画像形成装置１００全体の動作も制御する。プロセスカートリッジ１０２は、被認証装置であり、コントローラ１０１の制御の下、シートに画像を形成する。なお、プロセスカートリッジ１０２は、画像形成装置１００から着脱可能なユニットである。コントローラ１０１は、装着されているプロセスカートリッジ１０２の正当性を認証して、プロセスカートリッジ１０２が正規品であるか否かを判定する。このため、プロセスカートリッジ１０２には、認証のための被認証チップ１０３が設けられる。被認証チップ１０３は、耐タンパチップである。また、コントローラ１０１には、被認証チップ１０３と通信する通信Ｉ／Ｆ回路１０４と、認証処理を制御する制御装置１０５と、プロセスカートリッジ１０２を認証するための認証チップ１０６が実装される。認証チップ１０６は、耐タンパチップである。通信Ｉ／Ｆ回路１０４は、プロセスカートリッジ１０２が画像形成装置１００に装着された状態において、被認証チップ１０３と電気的に接続される様に画像形成装置１００は構成されている。したがって、制御装置１０５は、プロセスカートリッジ１０２が画像形成装置１００に装着された状態において、通信Ｉ／Ｆ回路１０４を介して被認証チップ１０３と通信できる。
【００１３】
図２は、コントローラ１０１と被認証チップ１０３との接続構成及び内部構成をより詳細に示したものである。認証チップ１０６は、制御装置１０５からコマンドを受信すると、当該コマンドの応答として制御装置１０５にレスポンスを返す。認証チップ１０６の入出力部２０１は、制御装置１０５とコマンド／レスポンスの送受信を行う。マイコン２０２は、制御装置１０５からのコマンドに従って内部処理を実行する。なお、その際、マイコン２０２は、揮発性メモリ２０３に一時的なデータを保存する。暗号器２０４は、マイコン２０２の指令に従い、認証処理における暗号計算を実行する。不揮発性メモリ２０５は、暗号計算で使用する鍵や、認証処理に必要なデータを保持している。
【００１４】
また、被認証チップ１０３は、制御装置１０５からのコマンドを通信Ｉ／Ｆ回路１０４を介して受信し、その応答として通信Ｉ／Ｆ回路１０４を介して制御装置１０５にレスポンスを送信する。被認証チップ１０３の入出力部３０１は、通信Ｉ／Ｆ回路１０４とコマンド／レスポンスの送受信を行う。マイコン３０２は、制御装置１０５からのコマンドに従って内部処理を実行する。なお、その際、マイコン３０２は、揮発性メモリ３０３に一時的なデータを保存する。暗号器３０４は、マイコン３０２の指令に従い、認証処理における暗号計算を実行する。なお、暗号器２０４と暗号器３０４とは、同じアルゴリズムにより暗号化の演算を行う。不揮発性メモリ３０５は、暗号計算で使用する鍵や、認証処理に必要なデータを保持している。認証処理の起点は制御装置１０５である。つまり、制御装置１０５は、コマンドを認証チップ１０６及び被認証チップ１０３に送信し、認証チップ１０６及び被認証チップ１０３は、コマンドに従った処理を行って、レスポンスを制御装置１０５に送信する。
【００１５】
図３は、認証に使用する鍵の構成の説明図である。まず、予め複数の元鍵（ＭＫ）を生成する。それぞれの元鍵には、その識別子（元鍵ＩＤ）が付与される。図３には、ｎ個の元鍵が示されており、その識別子は、それぞれ、１〜ｎである。以下、識別子がｉである元鍵を、ＭＫ＿ｉと表記する。なお、複数の元鍵は、ある元鍵から他の元鍵を類推することができない様にそれぞれの値が選択されている。認証チップ１０６の不揮発性メモリ２０５には、これら複数の元鍵のうちの１つの元鍵と、当該１つの元鍵の識別子（元鍵ＩＤ）が保存される。図４（Ａ）は、元鍵ＩＤとして値ｉと、元鍵ＭＫ＿ｉが不揮発性メモリ２０５に格納されている様子を示している。なお、不揮発性メモリ２０５に格納しておく元鍵は、コントローラ１０１を製造する際、あらかじめ生成しておいたｎ個の元鍵からランダムに選択する。
【００１６】
一方、被認証チップ１０３の不揮発性メモリ３０５には、派生鍵（ＤＫ）が格納される。１つの派生鍵は、１つの元鍵と１つの固有値から一方向性関数により導出される。以下では、固有値ｊと元鍵ＭＫ＿ｉから導出される派生鍵を、派生鍵ＤＫ＿ｉｊと表記する。派生鍵ＤＫ＿ｉｊは、ＤＫ＿ｉｊ＝Ｆ（ＭＫ＿ｉ，ｊ）との演算により求められる。なお、Ｆ（）は、一方向性関数であり、暗号化ハッシュ関数や共通鍵暗号の演算で使用される関数であり得る。図３に示す様に、ｎ個の元鍵と、ｍ個の固有値から、合計ｎ×ｍ個の派生鍵が生成される。
【００１７】
被認証チップ１０３の不揮発性メモリ３０５には、１つの固有値と、当該固有値とｎ個の元鍵それぞれとにより生成される、ｎ個の派生鍵が格納される。図４（Ｂ）は、不揮発性メモリ３０５に固有値ｊと、派生鍵ＤＫ＿１ｊ〜ＤＫ＿ｎｊが格納されている状態を示している。
【００１８】
一方向性関数Ｆ（）には、上述した様に、暗号化ハッシュ関数や共通鍵暗号関数を使用することができる。暗号化ハッシュ関数の場合、非特許文献１に開示されているＳＨＡ−２５６を使用できる。この場合、派生鍵ＤＫ＿ｉｊは、元鍵ＭＫ＿ｉと、固有値ｊとを連結したデータを、ＳＨＡ−２５６に従う暗号化ハッシュ関数の入力とすることで求められる。また、共通鍵暗号関数の場合、非特許文献２で規格化されたＡＥＳを使用することができる。この場合、派生鍵ＤＫ＿ｉｊは、固有値ｊをメッセージとし、当該メッセージを元鍵ＭＫ＿ｉによりＡＥＳに従う方法で暗号化することで求められる。不揮発性メモリ３０５に格納する固有値は、プロセスカートリッジ１０２を製造する際、プロセスカートリッジ１０２毎に異なる様に決定する。なお、総てのプロセスカートリッジ１０２に異なる固有値を格納する構成ではなく、複数の固有値から選択した１つの固有値を、プロセスカートリッジ１０２に割り当てる構成であっても良い。そして、製造工程において、プロセスカートリッジ１０２に割り当てた固有値と、当該固有値とｎ個の元鍵のそれぞれとから生成されるｎ個の派生鍵を、当該プロセスカートリッジ１０２の不揮発性メモリ３０５に格納する。
【００１９】
図５は、認証処理のシーケンス図である。なお、図５において、文字Ｃで始まる信号は、コマンドを示し、文字Ｒで始まる信号はレスポンスを示している。また、文字ＯＰは、対応する装置又はチップで行う処理を示している。Ｃ０１で、制御装置１０５は、被認証チップ１０３に対して固有値を問い合わせる。被認証チップ１０３は、不揮発性メモリ３０５から固有値ｊを読み出して、Ｒ０１で、制御装置１０５に固有値ｊを通知する。制御装置１０５は、Ｃ０２で、認証チップ１０６に対し認証鍵生成を指示するコマンドを発行する。このコマンドには、固有値ｊが含まれる。認証チップ１０６は、ＯＰ０１で、コマンドに従い、不揮発性メモリ２０５に格納された元鍵ＭＫ＿ｉと、受信した固有値ｊとに基づき認証鍵ＤＫ＿ｉｊを生成する。なお、認証鍵の生成方法は、派生鍵の生成方法と同じである。認証鍵ＤＫ＿ｉｊを生成すると、認証チップ１０６は、Ｒ０２で、認証鍵の生成完了を制御装置１０５に通知する。制御装置１０５は、Ｃ０３で、認証チップ１０６へ元鍵ＩＤを問い合わせる。認証チップ１０６は、不揮発性メモリ２０５に格納された元鍵ＩＤを読み出し、Ｒ０３で、元鍵ＩＤを制御装置１０５に通知する。なお、本例において、不揮発性メモリ２０５に格納された元鍵ＩＤはｉである。
【００２０】
制御装置１０５は、Ｃ０４で、元鍵ＩＤを、被認証チップ１０３に送信する。被認証チップ１０３は、ＯＰ０２で、元鍵ＩＤに対応する派生鍵を選択鍵として選択する。したがって、被認証チップ１０３が正当なものであると、被認証チップ１０３が選択する選択鍵は、ＯＰ０１で認証チップ１０６が生成した認証鍵ＤＫ＿ｉｊと同じになる。選択鍵を選択すると、被認証チップ１０３は、Ｒ０４で、選択鍵の選択完了を制御装置１０５に通知する。制御装置１０５は、ＯＰ０３で、乱数データをチャレンジデータとして生成する。制御装置１０５は、Ｃ０５で、認証データの生成コマンドを被認証チップ１０３に送信する。このコマンドには、乱数データ（チャレンジデータ）が含まれる。
【００２１】
被認証チップ１０３は、ＯＰ０４で、暗号器３０４を使用し、選択鍵ＤＫ＿ｉｊと乱数データからレスポンスデータである認証データを生成する。被認証チップ１０３は、Ｒ０５で、認証データ（レスポンスデータ）を、制御装置１０５に通知する。制御装置１０５は、Ｃ０６で、認証チップ１０６に比較データの生成コマンドを発行する。このコマンドは、乱数データ及び認証データと、を含む。認証チップ１０６は、ＯＰ０５で、暗号器２０４を使用し、認証鍵ＤＫ＿ｉｊと乱数データから比較データを生成し、認証データと比較する。暗号器２０４と暗号器３０４は同じ暗号演算を行うため、被認証チップ１０３が正当なものであると、認証データと比較データは一致する。認証チップ１０６は、Ｒ０６で、比較結果、つまり、比較データと認証データが一致するか否かを制御装置１０５に通知する。制御装置１０５は、比較データと認証データが一致するとの通知を受けると、ＯＰ０６で、認証ＯＫと判断し、不一致であると認証ＮＧと判断する。
【００２２】
制御装置１０５は、認証ＯＫと判断すると、プロセスカートリッジ１０２が正当品であると判定し、認証ＮＧと判断すると、プロセスカートリッジ１０２が正当品ではないと判定する。制御装置１０５は、プロセスカートリッジ１０２が正当品ではないと判定すると、例えば、ユーザに、プロセスカートリッジ１０２が正当品ではないことを表示する。或いは、制御装置１０５は、プロセスカートリッジ１０２が正当品ではないと判定すると、例えば、画像形成処理を保留し、図示していない画像形成装置の表示部に、画像形成を許可するか否かの判断を利用者に委ねる表示を行う。
【００２３】
なお、図５のシーケンスの順序は、一例であり、本発明は図５に示すシーケンスの順序に限定されない。例えば、被認証チップ１０３に先に選択鍵を選択させ、その後、認証チップ１０６に認証鍵を算出させる構成とすることができる。また、元鍵ＩＤと乱数データを同時に被認証チップ１０３に通知して、認証データを被認証チップに生成させることもできる。さらに、固有値、乱数データ及び認証データを同時に認証チップ１０６に通知し、認証鍵の算出と、比較データの算出と、認証データと比較データとの比較を認証チップ１０６に指示することもできる。つまり、認証チップ１０６や、被認証チップ１０３が、その演算に必要なデータを、当該演算を行うまでに通知すればよい。また、図５のシーケンスでは、認証チップ１０６において、比較データと認証データを比較していたが、比較データと認証データの比較を制御装置１０５で行う構成とすることもできる。この場合、Ｃ０６で認証データを認証チップ１０６に通知する必要はないが、Ｒ０６では比較結果を通知するのではなく、比較データを制御装置１０５に通知する。
【００２４】
認証データの計算には、例えば、非特許文献３に記載された、共通鍵暗号技術に基づくＣＭＡＣを使用することができる。この場合、乱数データをメッセージとし、選択鍵ＤＫ＿ｉｊでメッセージの暗号化を行い、メッセージの暗号化データを認証データとする。また、認証データの計算には、例えば、非特許文献４に記載された、暗号化ハッシュ関数に基づくＨＭＡＣを使用することができる。この場合、乱数データをテキストとし、選択鍵ＤＫ＿ｉｊでメッセージの暗号化ハッシュ値を求める。比較データの計算についても同様である。なお、当然ではあるが、認証データと比較データの計算には同じアルゴリズムを使用する。
【００２５】
例えば、認証チップ１０６が攻撃を受け、当該認証チップ１０６が保持している元鍵ＭＫ＿ｉが流出したものとする。この場合、攻撃者は、取得した元鍵ＭＫ＿ｉを使用して生成される派生鍵を生成することはできるが、それ以外の元鍵に対応する派生鍵を生成することはできない。この場合、攻撃者は、元鍵ＭＫ＿ｉを認証チップ１０６に格納した画像形成装置１００には正当であると認証させることができるユニットを製造できるが、これらユニットは、それ以外の元鍵を認証チップ１０６に格納した画像形成装置１００では認証成功とはならない。
【００２６】
また、被認証チップ１０３が攻撃を受け、被認証チップ１０３が保持している派生鍵が流出したものとする。ここで、図５のシーケンスに示す様に、選択鍵は、被認証チップ１０３が保持する複数の派生鍵から認証チップ１０６が保持する元鍵ＩＤに応じて選択される。したがって、被認証チップ１０３から総ての派生鍵が流出しない限り、総ての画像形成装置１００で認証を成功させることができるユニットを製造することはできない。ここで、耐タンパチップに対する驚異的な解析技術である破壊攻撃は、チップを切ったり削ったりするものであるため、チップを破壊するまでに被認証チップに格納された複数の鍵を取得するのは極めて困難である。
【００２７】
以上の構成により、攻撃により元鍵又は派生鍵の流出に対する影響を抑えることができる。この様に、本実施形態によると、認証チップ１０６及び被認証チップ１０３への解析の困難性を従来に比べて高くすることができる。特に認証チップ１０６の解析については、実質的に意味をなくならせる認証システムを提供することができる。
【００２８】
＜第二実施形態＞
続いて、第二実施形態について第一実施形態との相違点を中心に説明する。なお、第一実施形態で説明したのと同様の構成要素については同じ参照符号を使用してその説明は省略する。図６は、本実施形態による認証システムを画像形成装置８００に適用した例を示している。第一実施形態と異なり、コントローラ１０１は、画像形成装置８００から着脱可能なユニットである定着器８０２の認証を行う。定着器８０２は、耐タンパチップである被認証チップ８０３を有する。図７は、コントローラ１０１と被認証チップ８０３との接続構成及び内部構成をより詳細に示したものである。本実施形態のコントローラ１０１の構成は、第一実施形態と同様であり、不揮発性メモリ２０５には、図４（Ａ）に示す情報が格納される。一方、図８に示す様に、被認証チップ８０３の不揮発性メモリ９０５には、固有値ｊと、派生鍵ＤＫ＿１ｊ〜ＤＫ＿ｎｊと、ユニット識別子ＵＩＤと、が格納される。ユニット識別子ＵＩＤは、画像形成装置８００に装着できるユニットに割り当てられ、当該ユニットを識別するためのデータである。なお、派生鍵ＤＫ＿１ｊ〜ＤＫ＿ｎｊの生成方法は、第一実施形態と同様である。
【００２９】
図９は、本実施形態による認証処理のシーケンス図である。Ｃ０５までの処理は、第一実施形態と同様であり、その説明は省略する。被認証チップ８０３は、乱数データを受信すると、ＯＰ２４において、暗号器３０４を使用して認証データを生成する。本実施形態において、暗号器３０４は、乱数データと、不揮発性メモリ９０５に格納されているユニット識別子を結合した結合データと、選択鍵ＤＫ＿ｉｊとにより、認証データを生成する。被認証チップ８０３は、Ｒ２５で、認証データ及びユニット識別子を、制御装置１０５に通知する。制御装置１０５は、Ｃ２６で、認証チップ１０６に比較データの生成コマンドを発行する。このコマンドは、乱数データ、認証データ及びユニット識別子と、を含む。認証チップ１０６は、ＯＰ２５で、暗号器２０４を使用し、乱数データとユニット識別子を結合した結合データと、認証鍵ＤＫ＿ｉｊとにより、比較データを生成する。暗号器２０４と暗号器３０４は同じ暗号演算を行うため、被認証チップ８０３が正当なものであると、認証データと比較データは一致する。認証チップ１０６は、Ｒ０６で、比較結果、つまり、比較データと認証データが一致するか否かを制御装置１０５に通知する。制御装置１０５は、比較データと認証データが一致するとの通知を受けると、ＯＰ０６で、認証ＯＫと判断し、不一致であると認証ＮＧと判断する。
【００３０】
認証データの計算には、例えば、非特許文献３に記載された、共通鍵暗号技術に基づくＣＭＡＣを使用することができる。この場合、乱数データとユニット識別子とを結合した結合データをメッセージとし、選択鍵ＤＫ＿ｉｊでメッセージの暗号化を行う。また、認証データの計算には、例えば、非特許文献４に記載された、暗号化ハッシュ関数に基づくＨＭＡＣを使用することができる。この場合、乱数データとユニット識別子とを結合した結合データをテキストとし、選択鍵ＤＫ＿ｉｊでテキストの暗号化ハッシュ値を求める。比較データの計算についても同様である。なお、当然ではあるが、認証データと比較データの計算には同じアルゴリズムを使用する。
【００３１】
本実施形態では、認証データ及び比較データの生成にユニット識別子も使用する。したがって、第一実施形態と同様の効果に加えて、ユニット識別子が、正規品において使用されている値であるかの検証を行うことができる。つまり、例えば、図９には示していないが、認証データと比較データとが一致しても、ユニット識別子が定着器８０２で使用されていないものであると、認証ＮＧと判定することができる。
【００３２】
＜第三実施形態＞
続いて、第三実施形態について第一実施形態との相違点を中心に説明する。本実施形態による認証システムは、図１及び図２と同じ構成であり、認証チップ１０６の不揮発性メモリ２０５には、図４（Ａ）に示す情報が格納される。また、図１０に示す様に、被認証チップ１０３の不揮発性メモリ３０５には、第一実施形態と同様に固有値ｊと、派生鍵ＤＫ＿１ｊ〜ＤＫ＿ｎｊが格納される。さらに、本実施形態では、被認証チップ１０３の不揮発性メモリ３０５にレジスタＲｇ＿１ｊ〜Ｒｇ＿ｎｊが設けられる。レジスタＲｇ＿ｉｊ（ｉは、１からｎまでの整数）は、派生鍵ＤＫ＿ｉｊ及び値がｉの元鍵ＩＤに対応する。後述する様にレジスタＲｇ＿ｉｊには、派生鍵ＤＫ＿ｉｊに対応するレジスタ値が格納され、派生鍵ＤＫ＿ｉｊのレジスタ値は、派生鍵ＤＫ＿ｉｊが認証処理で使用される度にその値が更新される。本実施形態においては、派生鍵ＤＫ＿ｉｊが認証処理で使用されると、レジスタＲｇ＿ｉｊのレジスタ値を１だけ増加させるものとする。なお、レジスタＲｇ＿ｉｊの初期値は、例えば、ランダムに決定される。
【００３３】
図１１は、本実施形態による認証処理のシーケンス図である。Ｃ３１で、制御装置１０５は、被認証チップ１０３に対して固有値を問い合わせる。被認証チップ１０３は、不揮発性メモリ３０５から固有値ｊを読み出して、Ｒ３１で、制御装置１０５に固有値ｊを通知する。制御装置１０５は、Ｃ３２で、認証チップ１０６へ元鍵ＩＤを問い合わせる。認証チップ１０６は、不揮発性メモリ２０５に格納された元鍵ＩＤを読み出し、Ｒ３２で、元鍵ＩＤを制御装置１０５に通知する。なお、本例において、不揮発性メモリ２０５に格納された元鍵ＩＤはｉである。制御装置１０５は、Ｃ３３で、被認証チップ１０３に元鍵ＩＤを送信すると共に、被認証チップ１０３に対して、送信した元鍵ＩＤに対応するレジスタ値を問い合わせる。本実施形態において、元鍵ＩＤはｉであるため、これは、レジスタＲｇ＿ｉｊに格納されたレジスタ値を問い合わせることに相当する。なお、元鍵ＩＤを直接送信するのではなく、不揮発性メモリ３０５のレジスタＲｇ＿ｉｊのアドレスを被認証チップ１０３に通知することで、元鍵ＩＤを被認証チップ１０３に通知する構成とすることもできる。なお、この場合、元鍵ＩＤと当該元鍵ＩＤに対応するレジスタＲｇ＿ｉｊの不揮発性メモリ３０５でのアドレスとの関係については制御装置１０５に格納しておく。被認証チップ１０３は、不揮発性メモリ３０５からレジスタＲｇ＿ｉｊのレジスタ値を読み出して、Ｒ３３で、制御装置１０５にレジスタＲｇ＿ｉｊのレジスタ値を通知する。
【００３４】
制御装置１０５は、Ｃ３４で、認証チップ１０６に対し認証鍵生成を指示するコマンドを発行する。このコマンドには、固有値ｊが含まれる。認証チップ１０６は、ＯＰ３２で、コマンドに従い、不揮発性メモリ２０５に格納された元鍵ＭＫ＿ｉと、受信した固有値ｊとに基づき認証鍵ＤＫ＿ｉｊを生成する。なお、認証鍵の生成方法は、派生鍵の生成方法と同じである。認証鍵ＤＫ＿ｉｊを生成すると、認証チップ１０６は、Ｒ３４で、認証鍵の生成完了を制御装置１０５に通知する。
【００３５】
制御装置１０５は、Ｃ３５で、被認証チップ１０３に対して生成鍵生成を指示するコマンドを発行する。被認証チップ１０３は、ＯＰ３３で、まず、元鍵ＩＤに対応する派生鍵を選択鍵として選択する。なお、元鍵ＩＤは、Ｃ３３で通知されている。被認証チップ１０３が正当なものであると、被認証チップ１０３が選択する選択鍵は、ＯＰ３２で認証チップ１０６が生成した認証鍵ＤＫ＿ｉｊと同じになる。続いて、被認証チップ１０３は、選択鍵に対応するレジスタＲｇ＿ｉｊに格納されているレジスタ値を１だけ増加する様に更新する。そして、更新後のレジスタ値と選択鍵とを一方向性関数の入力として生成鍵を生成する。生成鍵を生成すると、被認証チップ１０３は、Ｒ３５で、生成鍵の生成完了を制御装置１０５に通知する。
【００３６】
Ｃ３６で、制御装置１０５は、認証チップ１０６に対して生成鍵生成を指示するコマンドを発行する。このコマンドには、レジスタ値が含まれる。なお、Ｃ３４のタイミングで認証チップ１０６にレジスタ値を事前に通知する構成とすることもでき、この場合、Ｃ３６ではコマンド指示のみとなる。ＯＰ３４で、認証チップ１０６は、ＯＰ３２で生成した認証鍵ＤＫ＿ｉｊと、通知されたレジスタ値を１だけ増加させた値とに基づき生成鍵を生成する。なお、生成鍵の生成アルゴリズムは、ＯＰ３３における被認証チップ１０３での生成鍵の生成アルゴリズムと同じである。生成鍵を生成すると、Ｒ３６で、認証チップ１０６は、生成鍵の生成完了を制御装置１０５に通知する。
【００３７】
ＯＰ３５で、制御装置１０５は、所定の固定値をチャレンジデータとして生成する。Ｃ３７で、制御装置１０５は、認証データの生成コマンドを被認証チップ１０３に送信する。このコマンドには、固定値（チャレンジデータ）が含まれる。ＯＰ３６で、被認証チップ１０３は、暗号器３０４を使用し、生成鍵と固定値からレスポンスデータである認証データを生成する。Ｒ３７で、被認証チップ１０３は、認証データ（レスポンスデータ）を、制御装置１０５に通知する。
【００３８】
同様に、Ｃ３８で、制御装置１０５は、比較データの生成コマンドを認証チップ１０６に送信する。このコマンドには、ＯＰ３５で生成した固定値（チャレンジデータ）が含まれる。ＯＰ３７で、認証チップ１０６は、暗号器２０４を使用し、生成鍵と固定値から比較データを生成する。Ｒ３８で、認証チップ１０６は、比較データ（レスポンスデータ）を、制御装置１０５に通知する。
【００３９】
ＯＰ３８で、制御装置１０５は、被認証チップ１０３から受信した認証データと認証チップ１０６から受信した比較データを比較する。暗号器２０４と暗号器３０４は同じ暗号演算を行うため、被認証チップ１０３が正当なものであると、認証データと比較データは一致する。制御装置１０５は、一致する場合に認証ＯＫと判断し、不一致であると認証ＮＧと判断する。
【００４０】
制御装置１０５は、認証ＯＫと判断すると、プロセスカートリッジ１０２が正当品であると判定し、認証ＮＧと判断すると、プロセスカートリッジ１０２が正当品ではないと判定する。制御装置１０５は、プロセスカートリッジ１０２が正当品ではないと判定すると、例えば、画像形成処理を保留し、図示していない画像形成装置の表示部に、画像形成を許可するか否かの判断を利用者に委ねる表示を行う。
【００４１】
なお、図１１のシーケンスの順序は、一例であり、本発明は図１１に示すシーケンスの順序に限定されない。具体的には、認証チップ１０６／被認証チップ１０３が演算に必要とするデータを、当該演算が行われるまでに認証チップ１０６／被認証チップ１０３に制御装置１０５が通知する限り、シーケンスの順序は任意である。また、本実施形態では、レジスタ値を１だけ増加させる演算を行って、演算後のレジスタ値に基づき生成鍵を生成していた。しかしながら、認証チップ１０６及び被認証チップ１０３が同じ所定の演算を行う限り、レジスタ値の演算方法（更新方法）は、レジスタ値を１だけ増加することに限定されず、任意の演算方法を使用することができる。また、認証データ及び比較データの計算方法は、第一実施形態における選択鍵／認証鍵が生成鍵となる以外は同様である。言い換えると、本実施形態では、選択鍵／認証鍵から生成鍵を生成するものであるが、第一実施形態及び第二実施形態は、選択鍵／認証鍵を生成鍵として使用するものである。
【００４２】
暗号のための鍵を解読する方法の一つに、暗号器を繰り返し動作させながら、暗号器への入出力を観察する方法がある。例えば、同じ画像形成装置１００とプロセスカートリッジ１０２の組み合わせでは、認証に使用される認証鍵／選択鍵は常に同じであるため、この方法により認証鍵／選択鍵が流出する可能性がある。しかしながら、本実施形態では、第一実施形態の認証鍵／選択鍵に代えて、認証鍵／選択鍵から派生させた生成鍵を使用して認証データ／比較データを生成する。この生成鍵の生成には、認証の度に値が変わるレジスタ値を使用するため、生成される生成鍵は、認証の都度、変化する。よって、本実施形態の構成では、暗号器を繰り返し動作させながら、暗号器への入出力を観察する方法に対しても認証鍵／選択鍵を導出することが極めて困難になる。また、本実施形態では、制御装置１０５と認証チップ１０６／被認証チップ１０３との間で送受信されるレジスタ値ではなく、レジスタ値に対して所定の演算を行った値に基づき生成鍵を生成する。したがって、所定の演算の内容が流出しない限り、送受信されるレジスタ値を取得できたとしても生成鍵の生成に利用された更新後のレジスタ値は不明であり、認証鍵／選択鍵の流出の危険性を低減することができる。
【００４３】
なお、本実施形態においては、認証データ／比較データの生成に使用する生成鍵が認証の都度、変化するため、チャレンジデータを、固定的な所定のデータとしたが、第一実施形態と同様にチャレンジデータをランダムデータとすることもできる。また、本実施形態では、制御装置１０５において認証データと比較データとの比較を行ったが、第一実施形態と同様に認証チップ１０６で比較する構成であっても良い。
【００４４】
＜第四実施形態＞
続いて、第四実施形態について第三実施形態との相違点を中心に説明する。本実施形態による認証システムは、図１及び図２と同じ構成であり、認証チップ１０６の不揮発性メモリ２０５には、図４（Ａ）に示す情報が格納される。一方、図１２に示す様に、被認証チップ１０３の不揮発性メモリ３０５には、第三実施形態と同じ情報に加えて、ユニット識別子ＵＩＤが格納される。ユニット識別子ＵＩＤは、画像形成装置１００に装着できるユニットに割り当てられ、当該ユニットを識別するためのデータである。
【００４５】
図１３は、本実施形態による認証処理のシーケンス図である。Ｃ３７までの処理は、第三実施形態と同様であり、その説明は省略する。被認証チップ１０３は、チャレンジデータを受信すると、ＯＰ５１において、暗号器３０４を使用して認証データを生成する。本実施形態において、暗号器３０４は、チャレンジデータと、不揮発性メモリ３０５に格納されているユニット識別子を結合した結合データと、生成鍵とにより、認証データを生成する。被認証チップ１０３は、Ｒ５１で、認証データ及びユニット識別子を、制御装置１０５に通知する。Ｃ５１で、制御装置１０５は、比較データの生成コマンドを認証チップ１０６に送信する。このコマンドには、チャレンジデータとユニット識別子が含まれる。ＯＰ５２で、認証チップ１０６は、暗号器２０４を使用し、受信したチャレンジデータとユニット識別子を結合した結合データと、生成鍵とにより比較データを生成する。Ｒ３８で、認証チップ１０６は、比較データ（レスポンスデータ）を、制御装置１０５に通知する。その後の処理は第三実施形態と同様である。
【００４６】
本実施形態では、認証データ／比較データの生成にユニット識別子も使用する。したがって、第三実施形態と同様の効果に加えて、ユニット識別子が、正規品において使用されている値であるかの検証を行うことができる。つまり、例えば、図１３には示していないが、認証データと比較データが一致しても、ユニット識別子が使用されていないものであると、認証ＮＧと判定することができる。
【００４７】
＜第五実施形態＞
続いて、第五実施形態について第三実施形態との相違点を中心に説明する。本実施形態による認証システムは、図１及び図２と同じ構成であり、認証チップ１０６の不揮発性メモリ２０５には、図４（Ａ）に示す情報が格納される。一方、図１４に示す様に、被認証チップ１０３の不揮発性メモリ３０５には、第三実施形態のレジスタＲｇ＿１ｊ〜Ｒｇ＿ｎｊに代えて、１つのレジスタＲｇが設けられる。
【００４８】
図１５は、本実施形態による認証処理のシーケンス図である。Ｃ４１からＲ４２までの処理は、第三実施形態のＣ３１からＲ３２と同様であり、その説明は省略する。Ｃ４３で、制御装置１０５は、被認証チップ１０３に対して、レジスタ値を問い合わせる。被認証チップ１０３は、まず、ＯＰ４１で、内部で乱数を生成し、生成した乱数をレジスタＲｇに格納する。また、被認証チップ１０３は、レジスタＲｇに格納したレジスタ値を、Ｒ４３で、制御装置１０５に通知する。その後のＣ４４及びＲ４４の処理は、第三実施形態のＣ３４及びＲ３４と同様である。
【００４９】
Ｃ４５で、制御装置１０５は、被認証チップ１０３に元鍵ＩＤを送信すると共に、被認証チップ１０３に対して生成鍵生成を指示するコマンドを発行する。被認証チップ１０３は、ＯＰ４３で、まず、元鍵ＩＤに対応する派生鍵を選択鍵として選択する。したがって、被認証チップ１０３が正当なものであると、被認証チップ１０３が選択する選択鍵は、ＯＰ４２で認証チップ１０６が生成した認証鍵ＤＫ＿ｉｊと同じになる。続いて、被認証チップ１０３は、選択鍵とレジスタ値に基づき生成鍵を生成する。なお、生成鍵の生成方法は、レジスタ値をそのまま使用すること以外は、第三実施形態と同様である。生成鍵を生成すると、被認証チップ１０３は、Ｒ４５で、生成鍵の生成完了を制御装置１０５に通知する。Ｃ４６からＲ４６までの処理は、第三実施形態のＣ３６からＲ３６までの処理と同様である。なお、ＯＰ４４において、認証チップ１０６は、通知されたレジスタ値をそのまま使用して生成鍵を生成する。
【００５０】
ＯＰ４５で、制御装置１０５は、乱数データをチャレンジデータとして生成する。Ｃ４７で、制御装置１０５は、認証データの生成コマンドを被認証チップ１０３に送信する。このコマンドには、乱数データ（チャレンジデータ）が含まれる。ＯＰ４６で、被認証チップ１０３は、暗号器３０４を使用し、生成鍵と乱数データからレスポンスデータである認証データを生成する。Ｒ４７で、被認証チップ１０３は、認証データ（レスポンスデータ）を、制御装置１０５に通知する。
【００５１】
同様に、Ｃ４８で、制御装置１０５は、比較データの生成コマンドを認証チップ１０６に送信する。このコマンドには、ＯＰ４５で生成した乱数データ（チャレンジデータ）及び認証データが含まれる。ＯＰ４７で、認証チップ１０６は、暗号器２０４を使用し、生成鍵と乱数データから比較データを生成し、受信した認証データと比較する。暗号器２０４と暗号器３０４は同じ暗号演算を行うため、被認証チップ１０３が正当なものであると、認証データと比較データは一致する。Ｒ４８で、認証チップ１０６は、比較結果、つまり、比較データと認証データが一致するか否かを制御装置１０５に通知する。
【００５２】
ＯＰ４８で、制御装置１０５は、比較データと認証データが一致するとの通知を受けると、認証ＯＫと判断し、不一致であると認証ＮＧと判断する。なお、本実施形態では、第一実施形態と同様に認証チップ１０６で認証データと比較データとの比較を行ったが、第三実施形態と同様に、制御装置１０５で行っても良い。また、本実施形態においても、第三実施形態と同様に、生成鍵は、認証の都度、ランダムに変化するため、チャレンジデータとして乱数ではなく、固定値を使用することもできる。また、本実施形態においては、認証の都度、レジスタ値をランダムに生成したが、第三実施形態と同様に、認証の都度、所定の演算を行って更新する構成とすることもできる。つまり、第三実施形態では、派生鍵それぞれに対応するレジスタを設けたが、総ての派生鍵で共通の一つのレジスタを設ける構成とすることもできる。さらに、本実施形態においても第二実施形態や第四実施形態と同様に、ユニット識別子ＵＩＤをさらに利用して認証データ／比較データを生成することもできる。
【００５３】
［その他の実施形態］
なお、上記実施形態では、画像形成装置のプロセスカートリッジ１０２や定着器８０２を交換ユニットとして認証していたが、画像形成装置の任意の交換ユニット（拡張ユニット）を被認証装置として認証することができる。また、画像形成装置のみならず、任意の装置を認証装置とし、当該任意の装置の本体から着脱可能な任意のユニットを被認証装置とする場合においても本発明を適用することができる。
【００５４】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００５５】
１０３：被認証チップ、１０６：認証チップ、２０５、３０５：不揮発性メモリ、２０４、３０４：暗号器
【図１】
2019075774.tif 000003
【図２】
2019075774.tif 000004
【図３】
2019075774.tif 000005
【図４】
2019075774.tif 000006
【図５】
2019075774.tif 000007
【図６】
2019075774.tif 000008
【図７】
2019075774.tif 000009
【図８】
2019075774.tif 000010
【図９】
2019075774.tif 000011
【図１０】
2019075774.tif 000012
【図１１】
2019075774.tif 000013
【図１２】
2019075774.tif 000014
【図１３】
2019075774.tif 000015
【図１４】
2019075774.tif 000016
【図１５】
2019075774.tif 000017