(57)【要約】【課題】認証装置が被認証装置を認証するために使用される秘密情報のセキュリティを向上させること。【解決手段】被認証装置は第一被認証鍵、第二被認証鍵、第一パスワード、第二パスワード、被認証装置の識別情報、第一鍵識別情報、および第二鍵識別情報を記憶している。認証装置は、認証鍵、第三鍵識別情報および第三パスワードを記憶している。認証装置は、認証装置と被認証装置とに共通する鍵識別情報に対応するパスワードを用いて第一認証セッションを実行する。パスワード認証が成功すると、認証装置は、共通する鍵識別情報に対応する被認証鍵を用いて第二認証セッションを実行する。【選択図】図１
2020167671.tif 000002
【特許請求の範囲】
【請求項１】
被認証装置と、当該被認証装置を認証する認証装置とを有する認証システムであって、
前記被認証装置は、
第一鍵識別情報を付与された第一被認証鍵と、第二鍵識別情報を付与された第二被認証鍵と、前記第一鍵識別情報に関連付けられた第一パスワードと、前記第二鍵識別情報に関連付けられた第二パスワードと、前記被認証装置の識別情報と、前記第一鍵識別情報と、前記第二鍵識別情報を記憶する第一記憶手段と、
第一演算手段と、
を有し、
前記認証装置は、
認証鍵と、前記認証鍵に付与された第三鍵識別情報と、第三パスワードを記憶する第二記憶手段と、
第二演算手段と、
を有し、
前記第二演算手段は、
前記被認証装置の前記第一記憶手段に記憶されている前記第一鍵識別情報および前記第二鍵識別情報、並びに、前記認証装置の前記第二記憶手段に記憶されている前記第三鍵識別情報に基づき、前記被認証装置と前記認証装置とで共通する鍵識別情報を決定し、
前記被認証装置の前記第一記憶手段に記憶されている前記被認証装置の識別情報と、前記認証装置の前記第二記憶手段に記憶されている前記第三パスワードとに基づきパスワード派生情報を演算し、
前記パスワード派生情報と、前記被認証装置と前記認証装置とで共通する鍵識別情報を前記被認証装置に送信し、
前記第一演算手段は、
前記認証装置から受信された前記パスワード派生情報に所定関数を適用して演算結果を求め、
前記第一鍵識別情報と前記第二鍵識別情報とのうち前記被認証装置と前記認証装置とで共通する鍵識別情報に関連付けられているパスワードと、前記演算結果とに基づきパスワード認証を実行し、
前記パスワード認証が成功すると、前記第一鍵識別情報と前記第二鍵識別情報とのうち前記被認証装置と前記認証装置とで共通する鍵識別情報に関連付けられている被認証鍵に所定計算を実行することで第一鍵派生情報を求め、
前記第二演算手段は、
前記第一演算手段によるパスワード認証が成功すると、前記被認証装置の識別情報と前記認証鍵とに基づき所定演算を実行することで、前記被認証装置と前記認証装置とで共通する鍵識別情報に関連付けられている被認証鍵を再現し、当該再現された被認証鍵に前記所定計算を実行することで第二鍵派生情報を求め、
前記第一演算手段により求められた前記第一鍵派生情報と前記第二演算手段により求められた前記第二鍵派生情報とに基づき、前記被認証装置を認証することを特徴とする認証システム。
【請求項２】
前記第一記憶手段は、
前記第一被認証鍵と、前記第二被認証鍵と、前記第一パスワードと、前記第二パスワードとを、前記被認証装置の外部には公開しないように記憶する第一記憶領域と、
前記第一鍵識別情報および前記第二鍵識別情報を記憶する第二記憶領域と、を有することを特徴とする請求項１に記載の認証システム。
【請求項３】
前記第二記憶手段は、
前記認証鍵と、前記第三パスワードとを前記認証装置の外部には公開しないように記憶する第三記憶領域と、
前記第三鍵識別情報を記憶する第四記憶領域と、を有することを特徴とする請求項１または２に記載の認証システム。
【請求項４】
前記所定関数は一方向性関数であることを特徴とする請求項１ないし３のいずれか一項に記載の認証システム。
【請求項５】
前記所定演算は一方向性関数を用いた演算であることを特徴とする請求項１ないし４のいずれか一項に記載の認証システム。
【請求項６】
前記第二演算手段は、第一制御部と第二制御部とを有し、
前記第二制御部と前記第二記憶手段は集積回路に実装されており、
前記第一制御部は、前記第二制御部に対して前記第三鍵識別情報の取得コマンドを送信することで、前記第二制御部を介して前記第二記憶手段から前記第三鍵識別情報を取得し、当該第三鍵識別情報に基づき前記被認証装置と前記認証装置とで共通する鍵識別情報を決定するように構成されていることを特徴とする請求項１ないし４のいずれか一項に記載の認証システム。
【請求項７】
前記第一制御部は、前記被認証装置の前記第一記憶手段に記憶されている前記被認証装置の識別情報を前記第二制御部に渡し、
前記第二制御部は、前記被認証装置の識別情報と、前記第二記憶手段に記憶されている前記第三パスワードとに基づき前記パスワード派生情報を演算して前記第一制御部に渡すように構成されていることを特徴とする請求項６に記載の認証システム。
【請求項８】
前記第一制御部は、前記第一演算手段によるパスワード認証が成功すると、前記被認証装置の識別情報を前記第二制御部に渡し、
前記第二制御部は、前記被認証装置の識別情報と前記認証鍵とに基づき所定演算を実行することで前記被認証鍵を再現し、当該再現された被認証鍵に前記所定計算を実行することで前記第二鍵派生情報を求めるように構成されていることを特徴とする請求項６に記載の認証システム。
【請求項９】
前記第一記憶手段は、さらに、パスワード認証の要否を示す要否情報を記憶しており、
前記第一演算手段は、前記要否情報が前記パスワード認証を実行しないことを示している場合、前記第二演算手段から送信される前記パスワード認証に関連するコマンドに対するレスポンスとして失敗を意味するレスポンスを送信することを特徴とする請求項１ないし８のいずれか一項に記載の認証システム。
【請求項１０】
前記第一演算手段は、前記要否情報が前記パスワード認証を実行しないことを示している場合、前記パスワード認証をスキップして、前記第一演算手段により求められた前記第一鍵派生情報と前記第二演算手段により求められた前記第二鍵派生情報とに基づく前記被認証装置の認証処理を実行することを特徴とする請求項９に記載の認証システム。
【請求項１１】
前記認証システムは、前記認証装置として第一認証装置と第二認証装置とを有し、
前記第一認証装置の前記第二記憶手段に記憶されている前記認証鍵と、前記第三鍵識別情報と、前記第三パスワードとは、前記第二認証装置の前記第二記憶手段に記憶されている前記認証鍵と、前記第三鍵識別情報と、前記第三パスワードとは異なっていることを特徴とする請求項１ないし８のいずれか一項に記載の認証システム。
【請求項１２】
前記第一認証装置の仕向国と前記第二認証装置の仕向国とが異なっていることを特徴とする請求項１１に記載の認証システム。
【請求項１３】
前記第一認証装置の出荷時期と前記第二認証装置の出荷時期とが異なっていることを特徴とする請求項１１または１２に記載の認証システム。
【請求項１４】
前記認証装置は、電子機器であり、
前記被認証装置は、前記電子機器で使用される消耗品であることを特徴とする請求項１ないし１３のいずれか一項に記載の認証システム。
【請求項１５】
前記電子機器は、画像形成装置であり、
前記消耗品は、前記画像形成装置で使用される、トナーカートリッジ、ドラムカートリッジ、インクカートリッジ、定着ユニット、中間転写ベルトユニットのいずれかを含むことを特徴とする請求項１４に記載の認証システム。
【請求項１６】
被認証装置と、当該被認証装置を認証する認証装置とを有する認証システムにおける被認証装置であって、
第一鍵識別情報を付与された第一被認証鍵と、第二鍵識別情報を付与された第二被認証鍵と、前記第一鍵識別情報に関連付けられた第一パスワードと、前記第二鍵識別情報に関連付けられた第二パスワードと、前記被認証装置の識別情報と、前記第一鍵識別情報と、前記第二鍵識別情報を記憶する第一記憶手段と、
第一演算手段と、
を有し、
前記認証装置は、認証鍵と、前記認証鍵に付与された第三鍵識別情報と、第三パスワードを記憶する第二記憶手段を有し、前記被認証装置の前記第一記憶手段に記憶されている前記第一鍵識別情報および前記第二鍵識別情報、並びに、前記認証装置の前記第二記憶手段に記憶されている前記第三鍵識別情報に基づき、前記被認証装置と前記認証装置とで共通する鍵識別情報を決定し、前記被認証装置の前記第一記憶手段に記憶されている前記被認証装置の識別情報と、前記認証装置の前記第二記憶手段に記憶されている前記第三パスワードとに基づきパスワード派生情報を演算し、前記パスワード派生情報と、前記被認証装置と前記認証装置とで共通する鍵識別情報を前記被認証装置に送信するように構成されており、
前記第一演算手段は、
前記認証装置から受信された前記パスワード派生情報に所定関数を適用して演算結果を求め、
前記第一鍵識別情報と前記第二鍵識別情報とのうち前記被認証装置と前記認証装置とで共通する鍵識別情報に関連付けられているパスワードと、前記演算結果とに基づきパスワード認証を実行し、
前記パスワード認証が成功すると、前記第一鍵識別情報と前記第二鍵識別情報とのうち前記被認証装置と前記認証装置とで共通する鍵識別情報に関連付けられている被認証鍵に所定計算を実行することで第一鍵派生情報を求め、
前記認証装置は、前記第一演算手段によるパスワード認証が成功すると、前記被認証装置の識別情報と前記認証鍵とに基づき所定演算を実行することで、前記被認証装置と前記認証装置とで共通する鍵識別情報に関連付けられている被認証鍵を再現し、当該再現された被認証鍵に前記所定計算を実行することで第二鍵派生情報を求め、前記第一演算手段により求められた前記第一鍵派生情報と前記認証装置により求められた前記第二鍵派生情報とに基づき、前記被認証装置を認証するように構成されていることを特徴とする被認証装置。
【請求項１７】
前記認証装置は、電子機器であり、
前記被認証装置は、前記電子機器で使用される消耗品であることを特徴とする請求項１６に記載の被認証装置。
【請求項１８】
前記電子機器は、画像形成装置であり、
前記消耗品は、前記画像形成装置で使用される、トナーカートリッジ、ドラムカートリッジ、インクカートリッジ、定着ユニット、中間転写ベルトユニットのいずれかを含むことを特徴とする請求項１７に記載の被認証装置。
【請求項１９】
被認証装置と、当該被認証装置を認証する認証装置とを有する認証システムにおける認証装置であって、
前記被認証装置は、第一鍵識別情報を付与された第一被認証鍵と、第二鍵識別情報を付与された第二被認証鍵と、前記第一鍵識別情報に関連付けられた第一パスワードと、前記第二鍵識別情報に関連付けられた第二パスワードと、前記被認証装置の識別情報と、前記第一鍵識別情報と、前記第二鍵識別情報を記憶する第一記憶手段を有し、
前記認証装置は、
認証鍵と、前記認証鍵に付与された第三鍵識別情報と、第三パスワードを記憶する第二記憶手段と、
第二演算手段と、
を有し、
前記第二演算手段は、
前記被認証装置の前記第一記憶手段に記憶されている前記第一鍵識別情報および前記第二鍵識別情報、並びに、前記認証装置の前記第二記憶手段に記憶されている前記第三鍵識別情報に基づき、前記被認証装置と前記認証装置とで共通する鍵識別情報を決定し、
前記被認証装置の前記第一記憶手段に記憶されている前記被認証装置の識別情報と、前記認証装置の前記第二記憶手段に記憶されている前記第三パスワードとに基づきパスワード派生情報を演算し、
前記パスワード派生情報と、前記被認証装置と前記認証装置とで共通する鍵識別情報を前記被認証装置に送信し、
前記被認証装置は、前記認証装置から受信された前記パスワード派生情報に所定関数を適用して演算結果を求め、前記第一鍵識別情報と前記第二鍵識別情報とのうち前記被認証装置と前記認証装置とで共通する鍵識別情報に関連付けられているパスワードと、前記演算結果とに基づきパスワード認証を実行し、前記パスワード認証が成功すると、前記第一鍵識別情報と前記第二鍵識別情報とのうち前記被認証装置と前記認証装置とで共通する鍵識別情報に関連付けられている被認証鍵に所定計算を実行することで第一鍵派生情報を求めるように構成されており、
前記第二演算手段は、
前記被認証装置によるパスワード認証が成功すると、前記被認証装置の識別情報と前記認証鍵とに基づき所定演算を実行することで、前記被認証装置と前記認証装置とで共通する鍵識別情報に関連付けられている被認証鍵を再現し、当該再現された被認証鍵に前記所定計算を実行することで第二鍵派生情報を求め、
前記被認証装置により求められた前記第一鍵派生情報と前記第二演算手段により求められた前記第二鍵派生情報とに基づき、前記被認証装置を認証することを特徴とする認証装置。
【請求項２０】
前記認証装置は、電子機器であり、
前記被認証装置は、前記電子機器で使用される消耗品であることを特徴とする請求項１９に記載の認証装置。
【請求項２１】
前記電子機器は、画像形成装置であり、
前記消耗品は、前記画像形成装置で使用される、トナーカートリッジ、ドラムカートリッジ、インクカートリッジ、定着ユニット、中間転写ベルトユニットのいずれかを含むことを特徴とする請求項２０に記載の認証装置。
【請求項２２】
認証装置が被認証装置を認証する認証方法であって、
前記被認証装置は、第一鍵識別情報を付与された第一被認証鍵と、第二鍵識別情報を付与された第二被認証鍵と、前記第一鍵識別情報に関連付けられた第一パスワードと、前記第二鍵識別情報に関連付けられた第二パスワードと、前記被認証装置の識別情報と、前記第一鍵識別情報と、前記第二鍵識別情報を記憶する第一記憶手段を有し、
前記認証装置は、認証鍵と、前記認証鍵に付与された第三鍵識別情報と、第三パスワードを記憶する第二記憶手段
を有しており、
前記認証方法は、
前記認証装置が、
前記被認証装置の前記第一記憶手段に記憶されている前記第一鍵識別情報および前記第二鍵識別情報、並びに、前記認証装置の前記第二記憶手段に記憶されている前記第三鍵識別情報に基づき、前記被認証装置と前記認証装置とで共通する鍵識別情報を決定し、
前記被認証装置の前記第一記憶手段に記憶されている前記被認証装置の識別情報と、前記認証装置の前記第二記憶手段に記憶されている前記第三パスワードとに基づきパスワード派生情報を演算し、
前記パスワード派生情報と、前記被認証装置と前記認証装置とで共通する鍵識別情報を前記被認証装置に送信し、
前記被認証装置が、
前記認証装置から受信された前記パスワード派生情報に所定関数を適用して演算結果を求め、
前記第一鍵識別情報と前記第二鍵識別情報とのうち前記被認証装置と前記認証装置とで共通する鍵識別情報に関連付けられているパスワードと、前記演算結果とに基づきパスワード認証を実行し、
前記パスワード認証が成功すると、前記第一鍵識別情報と前記第二鍵識別情報とのうち前記被認証装置と前記認証装置とで共通する鍵識別情報に関連付けられている被認証鍵に所定計算を実行することで第一鍵派生情報を求め、
前記認証装置が、
前記被認証装置によるパスワード認証が成功すると、前記被認証装置の識別情報と前記認証鍵とに基づき所定演算を実行することで、前記被認証装置と前記認証装置とで共通する鍵識別情報に関連付けられている被認証鍵を再現し、当該再現された被認証鍵に前記所定計算を実行することで第二鍵派生情報を求め、
前記被認証装置により求められた前記第一鍵派生情報と前記認証装置により求められた前記第二鍵派生情報とに基づき、前記被認証装置を認証することを特徴とする認証方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は認証システム、認証装置、被認証装置および認証方法に関する。
【背景技術】
【０００２】
画像形成装置などの電子機器は交換時期を迎えた部品（消耗品）を交換することで電子機器としての本来の機能を発揮する。しかし、消耗品が正規品でない場合、電子機器が故障してしまうことがある。したがって、電子機器には消耗品が取り付けられることが推奨される。
【０００３】
特許文献１によれば、カートリッジに設けられた被認証ＩＣチップに記憶された秘密認証データと、プリンタ側に配置された認証装置に記憶される秘密認証データを照合することで、カートリッジを認証する方法が提案されている。特許文献２によれば、被認証装置に記憶されている多数の秘密認証データを認証装置が切り替えて使用することが提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−１６３２０８号公報
【特許文献２】特開２０１８−０９３３７２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献２の認証装置は秘密鍵の鍵ＩＤを公開メモリから読み出し、鍵ＩＤに対応する派生鍵により認証値を演算する。被認証装置は鍵ＩＤに対応するマスタ鍵と派生値とから認証値を演算する。最終的に、認証装置は、二つの認証値を照合する。特許文献２の認証方法は非常に簡潔であり、優れているが、セキュリティを向上する余地がある。そこで、本発明は、認証装置が被認証装置を認証するために使用される秘密情報のセキュリティを向上させることを目的とする。
【課題を解決するための手段】
【０００６】
本発明によれば、たとえば、
被認証装置と、当該被認証装置を認証する認証装置とを有する認証システムであって、
前記被認証装置は、
第一鍵識別情報を付与された第一被認証鍵と、第二鍵識別情報を付与された第二被認証鍵と、前記第一鍵識別情報に関連付けられた第一パスワードと、前記第二鍵識別情報に関連付けられた第二パスワードと、前記被認証装置の識別情報と、前記第一鍵識別情報と、前記第二鍵識別情報を記憶する第一記憶手段と、
第一演算手段と、
を有し、
前記認証装置は、
認証鍵と、前記認証鍵に付与された第三鍵識別情報と、第三パスワードを記憶する第二記憶手段と、
第二演算手段と、
を有し、
前記第二演算手段は、
前記被認証装置の前記第一記憶手段に記憶されている前記第一鍵識別情報および前記第二鍵識別情報、並びに、前記認証装置の前記第二記憶手段に記憶されている前記第三鍵識別情報に基づき、前記被認証装置と前記認証装置とで共通する鍵識別情報を決定し、
前記被認証装置の前記第一記憶手段に記憶されている前記被認証装置の識別情報と、前記認証装置の前記第二記憶手段に記憶されている前記第三パスワードとに基づきパスワード派生情報を演算し、
前記パスワード派生情報と、前記被認証装置と前記認証装置とで共通する鍵識別情報を前記被認証装置に送信し、
前記第一演算手段は、
前記認証装置から受信された前記パスワード派生情報に所定関数を適用して演算結果を求め、
前記第一鍵識別情報と前記第二鍵識別情報とのうち前記被認証装置と前記認証装置とで共通する鍵識別情報に関連付けられているパスワードと、前記演算結果とに基づきパスワード認証を実行し、
前記パスワード認証が成功すると、前記第一鍵識別情報と前記第二鍵識別情報とのうち前記被認証装置と前記認証装置とで共通する鍵識別情報に関連付けられている被認証鍵に所定計算を実行することで第一鍵派生情報を求め、
前記第二演算手段は、
前記第一演算手段によるパスワード認証が成功すると、前記被認証装置の識別情報と前記認証鍵とに基づき所定演算を実行することで、前記被認証装置と前記認証装置とで共通する鍵識別情報に関連付けられている被認証鍵を再現し、当該再現された被認証鍵に前記所定計算を実行することで第二鍵派生情報を求め、
前記第一演算手段により求められた前記第一鍵派生情報と前記第二演算手段により求められた前記第二鍵派生情報とに基づき、前記被認証装置を認証することを特徴とする認証システムが提供される。
【発明の効果】
【０００７】
本発明によれば、認証装置が被認証装置を認証するために使用される秘密情報のセキュリティがさらに向上する。
【図面の簡単な説明】
【０００８】
【図１】認証システムを示す図
【図２】被認証ＩＣと認証ＩＣとを示す図
【図３】非公開データと公開データを示す図
【図４】通信プロトコルを説明する図
【図５】ＣＰＵの機能を示す図
【図６】認証方法を示すシーケンス図
【図７】ＣＰＵにより実行される認証方法を示すフローチャート
【図８】被認証ＩＣにより実行される認証方法を示すフローチャート
【図９】非公開データと公開データを示す図
【図１０】非公開データと公開データを示す図
【図１１】認証方法を示すシーケンス図
【図１２】ＣＰＵにより実行される認証方法を示すフローチャート
【図１３】カラー画像形成装置の概略図
【発明を実施するための形態】
【０００９】
以下、添付図面を参照して実施形態が詳しく説明される。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一または同様の構成に同一の参照番号が付され、重複した説明は省略される。
【００１０】
［実施例１］
実施例において電子機器の一例としてプリンタ（画像形成装置）が採用される。また、消耗品（交換部品）の一例として、カートリッジが採用される。カートリッジとは、トナーカートリッジ、ドラムカートリッジ、インクカートリッジ、定着ユニット、および中間転写ユニットなど、プリンタに対して着脱可能なユニットである。ここでプリンタ（画像形成装置）の一例としてカラー画像形成装置が図１３を用いて説明される。
図１３はカラー画像形成装置１０の構成図である。ピックアップローラ１３はシート１２を搬送路へ繰り出す。レジストセンサ１１１がシート１２の先端を検出した後であって、搬送ローラ１４、１５にシート１２の先端が通過したタイミングで、搬送ローラ１４、１５が停止する。これによりシート１２の搬送は一旦停止する。帯電ローラ２３ａ〜２３ｄは感光ドラム２２ａ〜２２ｄを帯電させる。感光ドラム２２ａ〜２２ｄは回転駆動される感光体である。スキャナユニット２０ａ〜２０ｄは、反射ミラーや発光素子を含む。スキャナユニット２０ａ〜２０ｄは、感光ドラム２２ａ〜２２ｄに対し、レーザ光２１ａ〜２１ｄを順次照射する。これにより静電潜像が形成される。
【００１１】
帯電ローラ２３ａ〜２３ｄは負極性の高電圧として、例えば−１２００Ｖの電圧を印可されている。これにより、感光ドラム２２ａ〜２２ｄの表面電位は、例えば−７００Ｖになる。レーザ光２１ａ〜２１ｄが照射されて静電潜像が形成された表面の電位は、例えば−１００Ｖになる。現像器２５ａ〜２５ｄの現像ローラ２４ａ〜２４ｄは、例えば−３５０Ｖの電圧を印可されている。現像ローラ２４ａ〜２４ｄは感光ドラム２２ａ〜２２ｄの静電潜像にトナーを供給する。これにより、各感光ドラム２２ａ〜２２ｄ上にトナー像が形成される。１次転写ローラ２６ａ〜２６ｄは、例えば＋１０００Ｖの正電圧を印可される。これにより、感光ドラム２２ａ〜２２ｄ上のトナー像が、転写体である中間転写ベルト３０に転写される。中間転写ベルト３０は、ローラ３１、３２、３３によって周回駆動し、トナー像を２次転写ローラ２７（二次転写位置）へ搬送する。トナー像が二次転写位置に到着するタイミングと、シート１２が二次転写位置に到着するタイミングとが整合するように、搬送ローラ１４、１５はシート１２の搬送を再開する。２次転写ローラ２７は中間転写ベルト３０からシート１２上にトナー像を転写する。定着装置１８は加圧ローラ１６と定着ローラ１７を有している。定着装置１８はシート１２上のトナー像に熱と圧力を加え、トナー像をシート１２上に定着させる。その後、シート１２は画像形成装置１０の外部へ排出される。クリーニングブレード３５は、中間転写ベルト３０に残ってしまったトナーを廃トナー容器３６に回収する。
【００１２】
トナーカートリッジとは、シート１２に画像を形成するために使用されるトナーを収容した容器（現像器２５ａ〜２５ｄ）を含むカートリッジである。ドラムカートリッジとは、静電潜像が形成される感光ドラム２２ａ〜２２ｄを含むカートリッジである。定着装置１８とは、画像が転写されたシート１２に画像を定着させるためのローラ対（加圧ローラ１６、定着ローラ１７）含むユニットである。中間転写ユニットとは、感光ドラム２２ａ〜２２ｄに形成された画像が転写される中間転写ベルト３０を含むユニットである。
【００１３】
画像形成装置１０はトナーを用いて画像を形成する電子写真方式の画像形成装置である。しかし、例えば、インクを用いてシートにインクを吐出して画像を形成するインクジェット方式の画像形成装置が採用されてもよい。インクジェット方式の画像形成装置の場合、インクを収容した容器を含むインクカートリッジは画像形成装置の消耗品である。
【００１４】
＜プリンタ＞
図１ＡはプリンタＩの構成を示し、図１ＢはプリンタＩＩの構成を示す。プリンタＩの仕向地とプリンタＩＩの仕向地とは異なっている。プリンタＩの仕向地は、たとえば、日本であり、プリンタＩＩの仕向地は、たとえば、米国である。なお、プリンタＩを構成する要素と、プリンタＩＩを構成する要素とは共通しているため、同一の参照符号が付与されている。両者を区別する場合には、参照符号の末尾に「'」が付与される。
【００１５】
被認証装置１００はカートリッジなどに取り付けられている。認証装置１０２は被認証装置１００を認証することでカートリッジが正規品かどうかを判定する。認証装置１０２はプリンタに搭載される。
【００１６】
被認証装置１００は被認証ＩＣ１０１を有している。ＩＣは集積回路の略称である。被認証ＩＣ１０１は、たとえば、メモリタグとして実装されてもよい。被認証ＩＣ１０１は、パスワード認証処理やメインの認証処理に必要な情報を記憶している。パスワード認証処理とは、パスワードを用いた認証処理である。メインの認証処理とは認証鍵を用いた認証処理である。パスワード認証処理は第一認証セッションと呼ばれ、メインの認証処理は第二認証セッションと呼ばれてもよい。
【００１７】
認証装置１０２は、通信ＩＦ１０３、ＣＰＵ１０４および認証ＩＣ１０５を有している。認証ＩＣ１０５は、たとえば、メモリタグとして実装されてもよい。通信ＩＦ１０３は、被認証ＩＣ１０１と通信するための通信回路である。ＣＰＵ１０４は、被認証ＩＣ１０１と認証ＩＣ１０５との間に実行される認証処理を制御する。認証ＩＣ１０５はパスワード認証処理やメインの認証処理に必要な情報を記憶している。
【００１８】
なお、プリンタＩ用の認証装置１０２が記憶している認証情報とプリンタＩＩ用の認証装置１０２'が記憶している認証情報とは異なっている。つまり、認証ＩＣ１０５が記憶している認証情報と認証ＩＣ１０５' が記憶している認証情報とが異なっている。その一方でプリンタＩ用の被認証装置１００が記憶している認証情報とプリンタＩＩ用の被認証装置１００が記憶している認証情報とは同一である。つまり、プリンタＩの被認証ＩＣ１０１とプリンタＩＩの被認証ＩＣ１０１とは共通している。これは、すべての仕向地に対して同一のカートリッジおよび被認証装置１００を供給できることを意味する。
【００１９】
図２Ａは被認証ＩＣ１０１に設けられた機能を示している。図２Ｂは認証ＩＣ１０５に設けられた機能を示している。両者に設けられた機能は共通または類似しているため、各機能の名称は共通化されている。参照符号の末尾に付与されたアルファベットは両者を区別する場合に付与されるが、通常は、省略される。
【００２０】
被認証ＩＣ１０１の演算ユニット２０１ａは、メイン認証を担当する認証部２０６ａと、パスワード認証を実行するパスワード部２０７ａとを有している。プログラムメモリ２０２ａは、演算ユニット２０１ａにより実行されるプログラム２０８ａを記憶している。非公開メモリ２０３ａは、被認証ＩＣ１０１の外部には公開されない非公開データ２１０ａを記憶している。つまり、非公開データ２１０ａは秘密情報である。公開メモリ２０４ａは、被認証ＩＣ１０１の外部に公開可能な公開データ２１１ａを記憶している。つまり、公開データ２１１ａは公開情報である。通信部２０５ａは、たとえば、シリアル通信プロトコルなどを用いて認証装置１０２と通信する。
【００２１】
認証ＩＣ１０５の演算ユニット２０１ａは、メイン認証を担当する認証部２０６ａと、パスワード認証を実行するパスワード部２０７ａとを有している。プログラムメモリ２０２ａは、演算ユニット２０１ａにより実行されるプログラム２０８ａを記憶している。非公開メモリ２０３ａは、被認証ＩＣ１０１の外部には公開されない非公開データ２１０ａを記憶している。公開メモリ２０４ａは、被認証ＩＣ１０１の外部に公開可能な公開データ２１１ａを記憶している。通信部２０５ａは、たとえば、シリアル通信プロトコルなどを用いて認証装置１０２と通信する。
【００２２】
認証ＩＣ１０５の演算ユニット２０１ｂは、メイン認証を担当する認証部２０６ｂと、パスワード認証を実行するパスワード部２０７ｂとを有している。プログラムメモリ２０２ｂは、演算ユニット２０１ｂにより実行されるプログラム２０８ｂを記憶している。非公開メモリ２０３ｂは、認証ＩＣ１０５の外部には公開されない非公開データ２１０ｂを記憶している。つまり、非公開データ２１０ｂは秘密情報である。公開メモリ２０４ｂは、認証ＩＣ１０５の外部に公開可能な公開データ２１１ｂを記憶している。つまり、公開データ２１１ｂは公開情報である。通信部２０５ｂは、たとえば、シリアル通信プロトコルなどを用いてＣＰＵ１０４と通信する。シリアル通信プロトコルは、一般に、コマンドの送信とレスポンスの受信とからなる通信方式である。シリアル通信は一例にすぎず、被認証ＩＣ１０１、ＣＰＵ１０４および認証ＩＣ１０５が相互に通信できれば、他の通信プロトコルや他の接続形態が採用されてもよい。
【００２３】
非公開メモリ２０３と公開メモリ２０４は物理的に異なるメモリであってもよいし、同一のメモリであってもよい。後者の場合、非公開メモリ２０３は非公開記憶領域として物理メモリに内に確保される。公開メモリ２０４は公開記憶領域として物理メモリに内に確保される。
【００２４】
＜非公開データと公開データ＞
図３Ａはプリンタのカートリッジ３００に設けられた被認証ＩＣに記憶される非公開データ２１０ａと公開データ２１１ａとを示している。非公開データ２１０ａは複数の被認証鍵、パスワード認証の要否を示す要否情報、パスワード認証に使用されるパスワードデータを有している。被認証鍵Ｂｋ１０はメイン認証で使用される鍵である。被認証鍵Ｂｋ１０の識別情報は鍵ＩＤ１０である。被認証鍵Ｂｋ１１はメイン認証で使用される鍵である。被認証鍵Ｂｋ１１の識別情報は鍵ＩＤ１１である。この例では、被認証鍵Ｂｋ１０、Ｂｋ１１はいずれもパスワード認証が必要である。パスワードデータは、後述されるパスワード（例：Ｍｐｗｄ１０）から派生した派生パスワード（例：Ｂｐｗｄ１０）と一方向性関数（例：ｈ）とから演算されるデータである。被認証ＩＣ１０１のパスワードデータは、認証ＩＣ１０５により生成されたパスワードデータと比較される。これにより、認証ＩＣ１０５が正規品であるかどうかが判定されてもよい。
【００２５】
公開データ２１１ａは、複数の鍵ＩＤとカートリッジ識別情報とを有している。この例では、被認証鍵Ｂｋ１０およびパスワードデータｈ（Ｂｐｗｄ１０）との両方に対応した鍵ＩＤ１０と、被認証鍵Ｂｋ１１およびパスワードデータｈ（Ｂｐｗｄ１１）との両方に対応した鍵ＩＤ１１が記憶されている。カートリッジ識別情報ＣＲＧＩＤは、認証ＩＣ１０５において認証鍵Ｍｋ１０から被認証鍵Ｂｋ１０を再現したり、パスワード（例：Ｍｐｗｄ１０）から派生した派生パスワード（例：Ｂｐｗｄ１０）を生成したりする際に使用される。
【００２６】
図３ＢはプリンタＩの非公開データ２１０ｂと公開データ２１１ｂとを示している。非公開データ２１０ｂは、認証鍵Ｍｋ１０とパスワードＭｐｗｄ１０を有している。公開データ２１１ｂは、鍵ＩＤを記憶している。鍵ＩＤ１０は、認証鍵Ｍｋ１０とパスワードＭｐｗｄ１０との両方に付与された識別情報である。
【００２７】
図３ＣはプリンタＩの非公開データ２１０ｂ'と公開データ２１１ｂ'とを示している。非公開データ２１０ｂ'は、認証鍵Ｍｋ１１とパスワードＭｐｗｄ１１を有している。公開データ２１１ｂ'は、鍵ＩＤを記憶している。鍵ＩＤ１１は、認証鍵Ｍｋ１１とパスワードＭｐｗｄ１１との両方に付与された識別情報である。
【００２８】
＜演算式＞
被認証鍵Ｂｋｉは認証鍵Ｍｋｉから派生した派生鍵である。ｉは１以上の整数である。
Ｂｋｉ  ＝  ｆ（Ｍｋｉ，ＣＲＧＩＤ）  ・・・（１）
ここで、ｆは一方向性関数である。ＣＲＧＩＤはカートリッジ識別情報である。被認証ＩＣ１０１の製造工場において被認証鍵Ｂｋｉが（１）式に基づき算出されて、被認証ＩＣ１０１に格納される。また、認証ＩＣ１０５は、被認証鍵Ｂｋｉを再現する際に（１）式を用いる。派生パスワードＢｐｗｄｉはパスワードＭｐｗｄｉとカートリッジ識別情報ＣＲＧＩＤとを次式に代入することで算出される。
Ｂｐｗｄｉ  ＝  ｇ（Ｍｐｗｄｉ，ＣＲＧＩＤ）  ・・・（２）
ここでｇは一方向性関数である。
【００２９】
パスワードデータｈ（Ｂｐｗｄｉ）は次式から算出される。
ｈ（Ｂｐｗｄｉ）  ＝  ｈ（ｇ（Ｍｐｗｄｉ，ＣＲＧＩＤ））  ・・・（３）
ここでｈは一方向性関数である。被認証ＩＣ１０１の製造工場において被認証鍵ｈ（Ｂｐｗｄｉ）が（２）式および（３）式に基づき算出されて、被認証ＩＣ１０１に格納される。
【００３０】
このように認証ＩＣ１０５は、単一の認証鍵Ｍｋｉと単一のパスワードＭｐｗｄｉを有している。被認証ＩＣ１０１は、複数の被認証鍵Ｂｋｉと複数のパスワードデータｈ（Ｂｐｗｄｉ）とを有している。つまり、被認証ＩＣ１０１は複数の認証ＩＣ１０５により認証可能である。したがって、被認証ＩＣ１０１に格納される複数の被認証鍵Ｂｋｉと複数のパスワードデータｈ（Ｂｐｗｄｉ）を複製するには、プリンタＩとプリンタＩＩとを入手してそれぞれに記憶されている認証鍵ＭｋｉおよびパスワードＭｐｗｄｉを暴露しなければならない。さらに、複数の被認証鍵Ｂｋｉと複数のパスワードデータｈ（Ｂｐｗｄｉ）の複製を困難にするには、プリンタＩとプリンタＩＩとの入手を困難にすることが有利であろう。たとえば、プリンタＩが欧州で販売され、プリンタＩＩが中国で販売される場合、プリンタＩとプリンタＩＩとの両方を入手することは困難であろう。さらに、プリンタＩの販売時期とプリンタＩＩの販売時期とを異ならせることで、プリンタＩとプリンタＩＩとの両方を入手することが困難となろう。このように、プリンタＩとプリンタＩＩと時間的および／または空間的に分離することで、認証システムが堅牢になろう。
【００３１】
＜通信プロトコル＞
図４Ａおよび図４Ｂは、認証装置１０２と被認証装置１００との間で実行される通信の通信プロトコルの一例を示している。コマンド０１ｈは、パスワードなしの被認証処理を開始することを指示するコマンドである。コマンド０１ｈのオプションデータとしては、被認証処理に使用される鍵ＩＤがある。コマンド０２ｈはパスワードありの被認証処理を開始することを指示するコマンドである。コマンド０２ｈのオプションデータとしては、被認証処理に使用される派生パスワードがある。コマンド０３ｈは被認証計算（被認証鍵Ｂｋを用いた認証セッション）を開始することを指示するコマンドである。コマンド０３ｈのオプションデータとしては、被認証計算に使用される計算条件（例：一方向性関数であるｘなど）がある。被認証計算としては、ＨＭＡＣやＣＭＡＣなどの秘密鍵を使った認証計算が採用されてもよい。ＨＭＡＣはＨａｓｈ−ｂａｓｅｄ  Ｍｅｓｓａｇｅ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｃｏｄｅの略称である。ＣＭＡＣはＣｉｐｈｅｒ−ｂａｓｅｄ ＭＡＣの略称である。コマンド０４ｈは認証チェック（例：セッション鍵ｘ（Ｂｋ）の照合）を実行することを指示するコマンドである。コマンド０４ｈのオプションデータとしては、認証チェックに使用される計算条件（例：一方向性関数ｘ）と計算結果（例：セッション鍵ｘ（Ｂｋ））とがある。コマンド４０ｈはパスワード生成を指示するコマンドである。コマンド４０ｈのオプションデータとしては、パスワード派生子（例：ＣＲＧＩＤ）がある。コマンド７Ｅｈは認証ＩＣ１０５から公開データ２１１を読み出すためのコマンドである。コマンド７Ｆｈは被認証ＩＣ１０１から公開データ２１１を読み出すためのコマンドである。
【００３２】
レスポンス８０ｈは、コマンドの実行が成功したときに送信されるレスポンスである。レスポンス８０ｈに付随して送信されるオプションデータは実行結果である。レスポンスＦＦｈは、コマンドの実行が失敗したときに送信されるレスポンスである。
【００３３】
＜パスワード認証とメイン認証の流れ＞
図５はＣＰＵ１０４がプログラムを実行することで実現する機能を示している。図６はパスワード認証とメイン認証のシーケンスを示している。図７はＣＰＵ１０４により実行されるパスワード認証とメイン認証を示している。図８は被認証ＩＣ１０１により実行される処理を示している。
【００３４】
●Ｓ７０１：認証ＩＣからの鍵ＩＤの取得
ＣＰＵ１０４（取得部５０１）は認証ＩＣ１０５から鍵ＩＤ（例：ＩＤ１０）を取得する。図６のシーケンスＳｑ１が示すように、ＣＰＵ１０４はコマンド７Ｅｈを認証ＩＣ１０５に送信することで認証ＩＣ１０５から鍵ＩＤを含む公開データ２１１を取得する。認証ＩＣ１０５の演算ユニット２０１ｂはコマンド７Ｅｈを受信すると、公開メモリ２０４ｂから公開データ２１１ｂを読み出してオプションデータを作成する。シーケンスＳｑ２で、演算ユニット２０１ｂは、レスポンス８０ｈとともにオプションデータをＣＰＵ１０４に送信する。
【００３５】
●Ｓ７０２：被認証ＩＣからの鍵ＩＤの取得
ＣＰＵ１０４（取得部５０２）は被認証ＩＣ１０１から鍵ＩＤ（例：ＩＤ１０、ＩＤ１１、ＣＲＧＩＤ）を取得する。図６のシーケンスＳｑ３が示すように、ＣＰＵ１０４はコマンド７Ｅｈを被認証ＩＣ１０１に送信することで被認証ＩＣ１０１から鍵ＩＤおよびカートリッジ識別情報を含む公開データ２１１を取得する。被認証ＩＣ１０１の演算ユニット２０１ａはコマンド７Ｅｈを受信すると、公開メモリ２０４ａから公開データ２１１ａを読み出してオプションデータを作成する。シーケンスＳｑ４で、演算ユニット２０１ａは、レスポンス８０ｈとともにオプションデータ（鍵ＩＤ１０、ＩＤ１１およびカートリッジ識別情報ＣＲＧＩＤ）をＣＰＵ１０４に送信する。
【００３６】
●Ｓ７０３：鍵ＩＤの決定
ＣＰＵ１０４（ＩＤ決定部５０３）は、認証ＩＣ１０５から取得した鍵ＩＤと被認証ＩＣ１０１から取得した鍵ＩＤとに基づき、認証処理に使用される鍵ＩＤを決定する。たとえば、認証ＩＣ１０５から取得した鍵ＩＤがＩＤ１０であり、被認証ＩＣ１０１から取得した鍵ＩＤがＩＤ１０とＩＤ１１であれば、両者に共通するＩＤ１０が選択される。
【００３７】
●Ｓ７０４：派生パスワードの生成
ＣＰＵ１０４（要求部５０４）は認証ＩＣ１０５に派生パスワードを生成するよう要求する。図６が示すように、シーケンスＳｑ５で、コマンド４０ｈが認証ＩＣ１０５に送信される。コマンド４０ｈのオプションデータには、カートリッジ識別情報ＣＲＧＩＤが含まれている。認証ＩＣ１０５のパスワード部２０７ｂは、非公開メモリ２０３ｂからパスワードＭｐｗｄ１０を読み出す。パスワード部２０７ｂは、パスワードＭｐｗｄ１０とカートリッジ識別情報ＣＲＧＩＤとを（２）式に代入することで派生パスワードＢｐｗｄ１０を演算する。シーケンスＳｑ６で、パスワード部２０７ｂは、レスポンス８０ｈと派生パスワードＢｐｗｄ１０をＣＰＵ１０４に送信する。ＣＰＵ１０４はこれらを受信する。なお、ＣＰＵ１０４が認証ＩＣ１０５からパスワードＭｐｗｄ１０を取得し、パスワードＭｐｗｄ１０とカートリッジ識別情報ＣＲＧＩＤとを（２）式に代入することで派生パスワードＢｐｗｄ１０を演算してもよい。この場合、ＣＰＵ１０４は認証ＩＣ１０５からパスワードＭｐｗｄ１０を取得するためのコマンドを送信し、認証ＩＣ１０５はパスワードＭｐｗｄ１０を含むレスポンスを送信することになる。
【００３８】
●Ｓ７０５：派生パスワードの送信
ＣＰＵ１０４（計算指示部５０５）は、派生パスワードＢｐｗｄ１０を被認証ＩＣ１０１に送信する。図６のシーケンスＳｑ７が示すように、計算指示部５０５は、コマンド０２ｈを被認証ＩＣ１０１に送信する。コマンド０２ｈのオプションデータには、ＩＤ決定部５０３により選択された鍵ＩＤと、派生パスワードＢｐｗｄ１０とが含まれている。
【００３９】
Ｓ８０１で被認証ＩＣ１０１のパスワード部２０７ａは、鍵ＩＤと、派生パスワードＢｐｗｄ１０とを受信する。Ｓ８０２でパスワード部２０７ａは、鍵ＩＤ１０に対応する要否情報を非公開メモリ２０３ａから読み出し、パスワード認証が必要かどうかを判定する。パスワード認証が必要であれば（ＴＲＵＥ）、パスワード部２０７ａは、Ｓ８０３に進む。パスワード認証が必要でなければ（ＦＡＬＳＥ）、パスワード部２０７ａは、Ｓ８０６に進む。
【００４０】
Ｓ８０３でパスワード部２０７ａは、パスワードデータｈ（Ｂｐｗｄ１０）を演算する。パスワード部２０７ａは、ＣＰＵ１０４から受信したＢｐｗｄ１０を一方向性関数ｈに入力することで、パスワードデータｈ（Ｂｐｗｄ１０）を演算する。一方向性関数ｈは、たとえば、暗号学的ハッシュ関数であってもよい。
【００４１】
Ｓ８０４でパスワード部２０７ａは、演算により求められたパスワードデータｈ（Ｂｐｗｄ１０）と非公開メモリ２０３ａに記憶されている鍵ＩＤ１０に対応したパスワードデータｈ（Ｂｐｗｄ１０）とが一致するかどうかを判定する。両者が一致すれば、パスワード部２０７ａは、Ｓ８０５に進む。両者が一致しなければ、パスワード部２０７ａは、Ｓ８１０に進む。Ｓ８１０でパスワード部２０７ａは、パスワードデータｈ（Ｂｐｗｄ１０）はパスワード認証ＮＧをＣＰＵ１０４に送信する。たとえば、パスワード部２０７ａは、レスポンスＦＦｈを送信する。
【００４２】
Ｓ８０５でパスワード部２０７ａは、パスワード認証ＯＫをＣＰＵ１０４に送信する。図６のシーケンスＳｑ８が示すように、パスワード部２０７ａは、レスポンス８０ｈを送信する。
【００４３】
●Ｓ７０６：パスワード認証の成功判定
ＣＰＵ１０４（判定部５０６）は被認証ＩＣ１０１から受信したレスポンスに基づき、パスワード認証が成功したかどうかを判定する。レスポンス８０ｈを受信した場合、ＣＰＵ１０４はパスワード認証が成功したと判定し、被認証鍵Ｂｋを用いた認証セッションを開始するために、Ｓ７０７に進む。レスポンスＦＦｈを受信した場合、ＣＰＵ１０４はパスワード認証が失敗したと判定し、Ｓ７１１に進む。Ｓ７１１でＣＰＵ１０４は認証ＮＧを出力する。
【００４４】
●Ｓ７０７：被認証ＩＣでの認証計算
ＣＰＵ１０４（認証指示部５０７）は被認証ＩＣ１０１に被認証計算の実行を要求する。これにより、被認証鍵Ｂｋを用いた認証セッションが開始される。シーケンスＳｑ９が示すように、認証指示部５０７は、レスポンス０３ｈを被認証ＩＣ１０１に送信する。レスポンス０３ｈのオプションデータには、計算条件が含まれる。Ｓ８０６で被認証ＩＣ１０１の認証部２０６ａは計算条件を受信する。Ｓ８０７で認証部２０６ａは計算条件にしたがって認証演算を実行する。この認証演算は、たとえば、被認証鍵Ｂｋ１０に対して一方向性関数ｘを適用することで実行される。Ｓ８０８で認証部２０６ａは認証演算結果をＣＰＵ１０４に送信する。認証部２０６ａはオプションデータに認証演算結果（例：ｘ（Ｂｋ１０））を搭載し、レスポンス８０ｈをＣＰＵ１０４に送信する。シーケンスＳｑ１０が示すように、ＣＰＵ１０４はレスポンス８０ｈとともに認証演算結果（例：ｘ（Ｂｋ１０））を受信する。
【００４５】
●Ｓ７０８：認証ＩＣでの認証計算
ＣＰＵ１０４（認証指示部５０８）は認証ＩＣ１０５に認証計算結果を転送する。シーケンスＳｑ１１が示すように、ＣＰＵ１０４はオプションデータに認証計算結果と計算条件（例：ＣＲＧＩＤ）を搭載し、コマンド０４ｈを認証ＩＣ１０５に送信する。認証ＩＣ１０５の認証部２０６ｂは、計算条件と認証鍵Ｍｋ１０にしたがって被認証鍵Ｂｋ１０を再現する。たとえば、認証部２０６ｂは、（１）式に、計算条件であるＣＲＧＩＤと、非公開メモリ２０３ｂから読み出した認証鍵Ｍｋ１０を代入し、被認証鍵Ｂｋ１０を演算する。さらに、認証部２０６ｂは、被認証鍵Ｂｋ１０に認証演算を実行し、認証演算結果（例：ｘ（Ｂｋ１０））を求める。この認証演算は、たとえば、被認証鍵Ｂｋ１０に対して一方向性関数ｘを適用することで実行される。認証部２０６ｂは、ＣＰＵ１０４を介して被認証ＩＣ１０１から受信された認証演算結果と、認証部２０６ｂが認証鍵Ｍｋ１０およびカートリッジ識別情報ＣＲＧＩＤから再現した被認証鍵に基づき求められた認証演算結果とが一致するかどうかを判定する。両者が一致すれば、シーケンスＳｑ１２で認証部２０６ｂはレスポンス８０ｈを送信する。両者が一致しなければ、シーケンスＳｑ１２で認証部２０６ｂはレスポンスＦＦｈを送信する。
【００４６】
●Ｓ７０９：認証チェック
ＣＰＵ１０４（判定部５０９）は、認証ＩＣ１０５から受信したレスポンスに基づき、メイン認証が成功したかどうかを判定する。レスポンス８０ｈを受信した場合、メイン認証が成功したと判定し、ＣＰＵ１０４はＳ７１０に進む。Ｓ７１０でＣＰＵ１０４は認証ＯＫをプリンタコントローラなどに出力する。レスポンスＦＦｈを受信した場合、メイン認証が失敗したと判定し、ＣＰＵ１０４はＳ７１１に進む。Ｓ７１１でＣＰＵ１０４は認証ＮＧをプリンタコントローラなどに出力する。
【００４７】
このように正しいパスワード（例：Ｍｐｗｄ１０）を保持している認証ＩＣ１０５は正しい派生パスワード（例：Ｂｐｗｄ１０）を被認証ＩＣ１０１に渡すことができるため、メイン認証に進むことができる。つまり、誤ったパスワードを有した認証ＩＣ１０５はメイン認証に進むことができない。つまり、誤ったパスワードを有した認証ＩＣ１０５は、被認証ＩＣ１０１から認証演算結果（例：ｘ（Ｂｋ１０））を取得することができない。さらに、認証ＩＣ１０５と認証ＩＣ１０５'とを空間的に分離したり、時間的に分離したりすることで、被認証鍵（例：Ｂｋ１０、Ｂｋ１１）の読み出しを早期に行う事が困難化される。実施例１の特徴は次のように理解されてもよい。
●特徴１：被認証鍵Ｂｋｉはパスワードデータによって保護されている。したがって、被認証鍵Ｂｋｉは簡単には利用されない。
●特徴２：パスワードＭｐｗｄｉがそのまま送信されることはなく、パスワードの派生値（Ｂｐｗｄｉ）が送信される。よって、パスワードＭｐｗｄｉの暴露は困難である。よって、パスワードＭｐｗｄｉの秘密性が維持される。
●特徴３：派生値（Ｂｐｗｄｉ）がそのまま使用されるのではなく、派生値（Ｂｐｗｄｉ）からパスワードデータｈ（Ｂｐｗｄｉ）が計算されてパスワード認証に使用される。よって、パスワードＭｐｗｄｉと、パスワードデータｈ（Ｂｐｗｄｉ）とは直接的に送受信されることはなく、暴露されない。つまり、パスワードデータｈ（Ｂｐｗｄｉ）の秘密性が維持される。
●特徴４：被認証ＩＣ１０１は複数の被認証鍵Ｂｋｉ、複数のパスワードデータを記憶しているが、認証ＩＣ１０５は単一の認証鍵Ｍｋｉと単一のパスワードＭｐｗｄｉしか記憶していない。したがって、認証鍵ＭｋｊとパスワードＭｐｗｄｊが暴露されにくい。ｊはｉとは異なるインデックスである。
●特徴５：プリンタの仕向地ごとに鍵ＩＤが異なる。つまり、プリンタの仕向地ごとに認証鍵ＭｋｉとパスワードＭｐｗｄｉが異なる。これにより、認証鍵Ｍｋｉと認証鍵Ｍｋｊとの空間的な分離を図ることができる。また、パスワードＭｐｗｄｉとパスワードＭｐｗｄｊとの空間的な分離を図ることができる。
●特徴６：プリンタの販売時期ごとに鍵ＩＤが異なる。つまり、プリンタの販売時期ごとに認証鍵ＭｋｉとパスワードＭｐｗｄｉが異なる。たとえば、第一の時機に販売されたプリンタの認証鍵ＭｋｉとパスワードＭｐｗｄｉは、第二の時機に販売されたプリンタの認証鍵ＭｋｊとパスワードＭｐｗｄｊと異なっている。これにより、認証鍵Ｍｋｉと認証鍵Ｍｋｊとの時間的な分離が達成される。同様に、パスワードＭｐｗｄｉとパスワードＭｐｗｄｊとの時間的な分離が達成される。
●特徴７：被認証鍵Ｂｋｉは、認証鍵Ｍｋｉとカートリッジ識別情報ＣＲＧＩＤから演算可能である。よって、認証ＩＣは自己が管理している秘密情報と公開情報とから被認証鍵Ｂｋｉを再現できる。これにより、被認証鍵Ｂｋｉの送受信が不要となり、被認証鍵Ｂｋｉの暴露が抑制される。
●特徴８：パスワードの派生値Ｂｐｗｄｉは、パスワードＭｐｗｄｉとカートリッジ識別情報ＣＲＧＩＤから演算可能である。よって、認証ＩＣは自己が管理している秘密情報と公開情報とからパスワードの派生値Ｂｐｗｄｉを計算できる。また、パスワードＭｐｗｄｉの代わりに、パスワードの派生値Ｂｐｗｄｉが送受信される。これにより、パスワードＭｐｗｄｉの送受信が不要となり、パスワードＭｐｗｄｉの暴露が抑制される。
●特徴９：パスワードＭｐｗｄｉ、認証鍵Ｍｋｉ、被認証鍵Ｂｋｉ、パスワードデータｈ（Ｂｐｗｄｉ）は秘密情報である。これらの秘密情報は認証ＩＣ１０５と被認証ＩＣ１０１との間で送受信されないため、秘密情報の秘密性が維持される。
●特徴１０：鍵ＩＤとカートリッジ識別情報ＣＲＧＩＤは公開情報である。鍵ＩＤとカートリッジ識別情報ＣＲＧＩＤとからは、秘密情報が演算されない。
【００４８】
［実施例２］
プリンタの開発は継続的に実行されているため、ほぼ一定期間ごとモデルチェンジ（製品の世代交代）が実行される。実施例１で説明されたプリンタＩ、ＩＩはパスワードチェックと認証チェックとを備えているため、強固なセキュリティを備えている。その一方で、プリンタＩ、ＩＩ（後継機）が開発される際の基礎となったプリンタｉ、ｉｉ（従来機）は認証チェックを有しているが、パスワードチェックを有していないことがある。なお、プリンタｉ、ｉｉは第一世代機種とよばれ、プリンタＩ、ＩＩは第二世代機種と呼ばれてもよい。また、プリンタｉとプリンタＩはそれぞれ仕向地Ｉで販売され、プリンタｉｉとプリンタＩＩはそれぞれ仕向地ＩＩで販売されるものと仮定されている。
【００４９】
プリンタｉ、ｉｉの消耗品とプリンタＩ、ＩＩの消耗品とが共通化されることで、消耗品の管理コストが削減される。たとえば、プリンタｉ、ｉｉ用のトナーカートリッジと、プリンタＩ、ＩＩ用のトナーカートリッジとの両方を販売店が倉庫に保管して管理することは面倒であろう。そのため、プリンタＩ、ＩＩ用のトナーカートリッジが、プリンタｉ、ｉｉでも使用できれば、倉庫には、一種類の共通トナーカートリッジが保管されていればよい。
【００５０】
この場合、共通トナーカートリッジに搭載される被認証装置１００は、第一世代の認証装置１０２により認証可能であり、かつ、第二世代の認証装置１０２により認証可能であることが求められる。
【００５１】
＜ハードウエア＞
第二世代のプリンタＩ、ＩＩの構成と第二世代のカートリッジ３００の構成は実施例１で説明された通りである。一方で、第一世代のプリンタｉ、ｉｉの認証ＩＣ１０５はパスワード部２０７ｂを有していない。同様に、第一世代のカートリッジ３００の被認証ＩＣ１０１はパスワード部２０７ａを有していない。
【００５２】
＜非公開データと公開データ＞
●第一世代のカートリッジ
図９Ａは第一世代のカートリッジ９００に搭載される被認証ＩＣ１０１に記憶される非公開データ２１０ａと公開データ２１１ａを示している。非公開データ２１０ａは、複数の被認証鍵を有している。被認証鍵Ｂｋ００、Ｂｋ０１はメイン認証で使用される鍵である。被認証鍵Ｂｋ００の識別情報は鍵ＩＤ００である。被認証鍵Ｂｋ０１の識別情報は鍵ＩＤ０１である。
【００５３】
公開データ２１１ａは、複数の鍵ＩＤとカートリッジ識別情報とを有している。この例では、被認証鍵Ｂｋ００に対応した鍵ＩＤ１０と、被認証鍵Ｂｋ０１に対応した鍵ＩＤ０１が記憶されている。カートリッジ識別情報ＣＲＧＩＤは、認証ＩＣ１０５において認証鍵Ｍｋ００から被認証鍵Ｂｋ００を再現する際に使用される。同様に、カートリッジ識別情報ＣＲＧＩＤは、認証ＩＣ１０５において認証鍵Ｍｋ０１から被認証鍵Ｂｋ０１を再現する際に使用される。
【００５４】
●第一世代のプリンタ
図９Ｂは、仕向地Ｉで販売される第一世代のプリンタｉに搭載れる認証ＩＣ１０５に記憶される非公開データ２１０ｂと公開データ２１１ｂとを示している。非公開データ２１０ｂは、鍵ＩＤ００に対応した認証鍵Ｍｋ００を有している。公開データ２１１ｂは、鍵ＩＤ００を記憶している。
【００５５】
図９Ｃは、仕向地ＩＩで販売される第一世代のプリンタｉｉに搭載れる認証ＩＣ１０５に記憶される非公開データ２１０ｂと公開データ２１１ｂとを示している。非公開データ２１０ｂは、鍵ＩＤ０１に対応した認証鍵Ｍｋ０１を有している。公開データ２１１ｂは、鍵ＩＤ０１を記憶している。
【００５６】
●第二世代のカートリッジ（共通カートリッジ）
図１０は第二世代のカートリッジ３００に搭載される被認証ＩＣ１０１に記憶される非公開データ２１０ａと公開データ２１１ａを示している。非公開データ２１０ａは、複数の被認証鍵、複数の要否情報、および複数のパスワードデータを有している。
【００５７】
被認証鍵Ｂｋ００は第一世代のプリンタｉにおけるメイン認証で使用される鍵である。被認証鍵Ｂｋ０１は第一世代のプリンタｉｉにおけるメイン認証で使用される鍵である。被認証鍵Ｂｋ１０は第二世代のプリンタＩにおけるメイン認証で使用される鍵である。被認証鍵Ｂｋ１１は第二世代のプリンタＩＩにおけるメイン認証で使用される鍵である。被認証鍵Ｂｋ００、Ｂｋ０１、Ｂｋ１０、Ｂｋ１１はそれぞれ鍵ＩＤ００、ＩＤ０１、ＩＤ１０、ＩＤ１１に対応している。
【００５８】
鍵ＩＤ００に対応する要否情報はＦＡＬＳＥに設定されている。鍵ＩＤ０１に対応する要否情報もＦＡＬＳＥに設定されている。第一世代のプリンタｉ、ｉｉではパスワード認証が実行されないからである。鍵ＩＤ１０に対応する要否情報はＴＲＵＥに設定されている。鍵ＩＤ１１に対応する要否情報もＴＲＵＥに設定されている。第二世代のプリンタＩ、ＩＩではパスワード認証が実行されるからである。
【００５９】
鍵ＩＤ００、ＩＤ０１に対応するパスワードデータは記憶されていない。第一世代のプリンタｉ、ｉｉではパスワード認証が実行されないからである。鍵ＩＤ１０、ＩＤ１１に対応するパスワードデータは記憶されている。第二世代のプリンタＩ、ＩＩではパスワード認証が実行されるからである。
【００６０】
●第二世代のプリンタ
第二世代のプリンタＩ、ＩＩについての非公開データ２１０ｂと公開データ２１１ｂは図３Ｂと図３Ｃとに示された通りである。そのため、ここではこれらの説明が省略される。
【００６１】
＜演算式＞
被認証鍵Ｂｋｉを求めるための演算式は（１）式である。つまり、被認証鍵Ｂｋ００は一方向性関数ｆに、認証鍵Ｍｋ００とカートリッジ識別情報ＣＲＧＩＤを入力することにより求められる。同様に、被認証鍵Ｂｋ０１は一方向性関数ｆに、認証鍵Ｍｋ０１とカートリッジ識別情報ＣＲＧＩＤを入力することにより求められる。
【００６２】
＜通信プロトコル＞
実施例２における通信プロトコルは実施例１における通信プロトコルと同じである。ただし、第一世代のプリンタｉ、ｉｉではパスワード認証に関与するコマンド４０ｈなどは省略されている。
【００６３】
＜パスワード認証とメイン認証の流れ＞
第二世代のプリンタＩ、ＩＩに対して共通のカートリッジ３００が接続されたときに実行されるパスワード認証とメイン認証は実施例１で説明された通りである。そこで、第一世代のプリンタｉ、ｉｉに対して共通のカートリッジ３００または第一世代のカートリッジ９００が接続されたときの流れが以下では説明される。
【００６４】
図１１は実施例２にかかるメイン認証のシーケンスを示している。図１１において図６と異なる点はパスワード認証に関する処理が存在しない点である。
【００６５】
●第一世代のプリンタｉに第一世代のカートリッジ９００が接続されるケース
シーケンスＳｑ１でＣＰＵ１０４（取得部５０１）はコマンド７Ｅｈを認証ＩＣ１０５に送信する。認証ＩＣ１０５の演算ユニット２０１ｂはコマンド７Ｅｈを受信すると、公開メモリ２０４ｂから公開データ２１１ｂを読み出してオプションデータを作成する。
【００６６】
シーケンスＳｑ２で、演算ユニット２０１ｂは、レスポンス８０ｈとともにオプションデータをＣＰＵ１０４に送信する。第一世代のプリンタｉの認証ＩＣ１０５は鍵ＩＤ００を送信する。
【００６７】
シーケンスＳｑ３でＣＰＵ１０４はコマンド７Ｅｈを被認証ＩＣ１０１に送信することで被認証ＩＣ１０１から鍵ＩＤおよびカートリッジ識別情報を含む公開データ２１１ａを取得する。被認証ＩＣ１０１の演算ユニット２０１ａはコマンド７Ｅｈを受信すると、公開メモリ２０４ａから公開データ２１１ａを読み出してオプションデータを作成する。
【００６８】
シーケンスＳｑ４で演算ユニット２０１ａは、レスポンス８０ｈとともにオプションデータ（鍵ＩＤ００、ＩＤ０１およびカートリッジ識別情報ＣＲＧＩＤ）をＣＰＵ１０４に送信する。
【００６９】
ＣＰＵ１０４（ＩＤ決定部５０３）は、認証ＩＣから受信した鍵ＩＤ００と、被認証ＩＣから受信した鍵ＩＤ００、ＩＤ０１とに基づき、共通する鍵ＩＤ００を選択する。シーケンスＳｑ５ないしＳｑ６は実行されない。
【００７０】
シーケンスＳｑ７でＣＰＵ１０４（計算指示部５０５）はコマンド０１ｈとオプションデータ（鍵ＩＤ００）を被認証ＩＣ１０１に送信する。被認証ＩＣ１０１の認証部２０６ａはコマンド０１ｈとオプションデータ（鍵ＩＤ００）を受信する。認証部２０６ａはコマンド０１ｈまたは鍵ＩＤ００に基づきパスワード認証が不要であることを認識する。認証部２０６ａは、鍵ＩＤ００に基づき非公開データ２１０ａの要否情報を読みだし、要否情報がＦＡＬＳＥであることを見つける。つまり、認証部２０６ａは、要否情報がＦＡＬＳＥであるため、パスワード認証が不要であると判定してもよい。
【００７１】
シーケンスＳｑ８で認証部２０６ａはレスポンス８０ｈを送信する。ＣＰＵ１０４はレスポンス８０ｈを受信すると、被認証ＩＣ１０１において認証処理が開始されたと認識する。
【００７２】
シーケンスＳｑ９でＣＰＵ１０４（認証指示部５０７）は被認証ＩＣ１０１に被認証計算の実行を要求する。認証指示部５０７は、レスポンス０３ｈを被認証ＩＣ１０１に送信する。レスポンス０３ｈのオプションデータには、計算条件が含まれる。被認証ＩＣ１０１の認証部２０６ａは計算条件を受信する。認証部２０６ａは計算条件にしたがって認証演算を実行する。この認証演算は、たとえば、被認証鍵Ｂｋ００に対して一方向性関数ｘを適用することで実行される。
【００７３】
シーケンスＳｑ１０で認証部２０６ａは認証演算結果をＣＰＵ１０４に送信する。認証部２０６ａはオプションデータに認証演算結果（例：ｘ（Ｂｋ００））を搭載し、レスポンス８０ｈをＣＰＵ１０４に送信する。ＣＰＵ１０４はレスポンス８０ｈとともに認証演算結果（例：ｘ（Ｂｋ００））を受信する。
【００７４】
シーケンスＳｑ１１でＣＰＵ１０４（認証指示部５０８）は認証ＩＣ１０５に認証計算結果を転送する。ＣＰＵ１０４はオプションデータに認証計算結果と計算条件（例：ＣＲＧＩＤ）を搭載し、コマンド０４ｈを認証ＩＣ１０５に送信する。認証ＩＣ１０５の認証部２０６ｂは、計算条件と認証鍵Ｍｋ００にしたがって被認証鍵Ｂｋ００を再現する。たとえば、認証部２０６ｂは、（１）式に、計算条件であるＣＲＧＩＤと、非公開メモリ２０３ｂから読み出した認証鍵Ｍｋ００を代入し、被認証鍵Ｂｋ００を演算する。さらに、認証部２０６ｂは、被認証鍵Ｂｋ００に認証演算を実行し、認証演算結果（例：ｘ（Ｂｋ００））を求める。この認証演算は、たとえば、被認証鍵Ｂｋ００に対して一方向性関数ｘを適用することで実行される。認証部２０６ｂは、ＣＰＵ１０４を介して被認証ＩＣ１０１から受信された認証演算結果と、認証部２０６ｂが認証鍵Ｍｋ００およびカートリッジ識別情報ＣＲＧＩＤから再現した被認証鍵に基づき求められた認証演算結果とが一致するかどうかを判定する。
【００７５】
シーケンスＳｑ１２で認証部２０６ｂはレスポンス８０ｈまたはレスポンスＦＦｈを送信する。被認証ＩＣ１０１から受信された認証演算結果と、認証部２０６ｂが認証鍵Ｍｋ００およびカートリッジ識別情報ＣＲＧＩＤから再現した被認証鍵に基づき求められた認証演算結果とが一致する場合に、レスポンス８０ｈが送信される。両者が一致しなければレスポンスＦＦｈが送信される。
【００７６】
●第一世代のプリンタｉに共通のカートリッジ３００が接続されるケース
シーケンスＳｑ１、シーケンスＳｑ２、シーケンスＳｑ７ないしシーケンスＳｑ１２はすでに説明された通りである。
【００７７】
シーケンスＳｑ３でＣＰＵ１０４はコマンド７Ｅｈを被認証ＩＣ１０１に送信する。被認証ＩＣ１０１の演算ユニット２０１ａはコマンド７Ｅｈを受信すると、公開メモリ２０４ａから公開データ２１１ａを読み出してオプションデータを作成する。図１０が示すように、公開データ２１１ａは、鍵ＩＤ００、ＩＤ０１、ＩＤ１０、ＩＤ１１およびカートリッジ識別情報ＣＲＧＩＤを含む。
【００７８】
シーケンスＳｑ４で演算ユニット２０１ａは、レスポンス８０ｈとともにオプションデータ（鍵ＩＤ００、ＩＤ０１、ＩＤ１０、ＩＤ１１およびカートリッジ識別情報ＣＲＧＩＤ）をＣＰＵ１０４に送信する。
【００７９】
ＣＰＵ１０４（ＩＤ決定部５０３）は、認証ＩＣから受信した鍵ＩＤ００と、被認証ＩＣから受信した鍵ＩＤ００、ＩＤ０１、ＩＤ１０、ＩＤ１１とに基づき、共通する鍵ＩＤ００を選択する。シーケンスＳｑ５ないしＳｑ６は実行されない。その後は、シーケンスＳｑ７ないしＳｑ１２が実行される。
【００８０】
●第二世代のプリンタＩに共通のカートリッジ３００が接続されるケース
これは実施例１そのものである。ただし、被認証ＩＣ１０１が図１０に示された非公開データ２１０ａと公開データ２１１ａとを有している点が異なる。被認証ＩＣ１０１から受信された公開データ２１１ａに鍵ＩＤ１０または鍵ＩＤ１１が含まれ、かつ、認証ＩＣ１０５から受信された公開データ２１１ａに鍵ＩＤ１０または鍵ＩＤ１１が含まれている。このことから、ＣＰＵ１０４（ＩＤ決定部５０３）は、パスワード認証を実行可能であると判定してもよい。
【００８１】
●第二世代のプリンタＩに第一世代のカートリッジ９００が接続されるケースは存在しない。これは第二世代のプリンタＩと第一世代のカートリッジ９００との間には互換性が無いからである。
【００８２】
＜フローチャート＞
図１２は第一世代のプリンタｉ、ｉｉのＣＰＵ１０４により実行される処理を示したフローチャートである。図７と比較すると、図１２ではＳ７０４ないしＳ７０６が省略されていることが分かる。その他のステップに関しては図７に関連して説明された通りである。第一世代のカートリッジ９００における被認証ＩＣ１０１が実行する処理は、図８に示されたＳ８０６ないしＳ８０８である。
【００８３】
第二世代のプリンタＩ、ＩＩのＣＰＵ１０４により実行される処理は図７に示された通りである。共通のカートリッジ３００における被認証ＩＣ１０１が実行する処理は、図８に示された通りである。
【００８４】
＜実施例１、２から導き出される技術思想＞
［態様１］
図１Ａおよび図１Ｂが示すように、プリンタＩ、ＩＩは、被認証装置１００と、当該被認証装置１００を認証する認証装置１０２とを有する認証システムの一例である。被認証装置１００は、第一記憶ユニット（例：非公開メモリ２０３ａ、公開メモリ２０４ａ）と第一演算ユニット（例：演算ユニット２０１ａ）を有している。第一記憶ユニットは、第一鍵識別情報（例：ＩＤ１０）を付与された第一被認証鍵（例：Ｂｋ１０）と、第二鍵識別情報（例：ＩＤ１１）を付与された第二被認証鍵（例：Ｂｋ１１）とを記憶する。さらに、第一記憶ユニットは、第一鍵識別情報に関連付けられた第一パスワード（例：ｈ（Ｂｐｗｄ１０））と、第二鍵識別情報に関連付けられた第二パスワード（例：ｈ（Ｂｐｗｄ１１））とを記憶する。さらに、第一記憶ユニットは、被認証装置１００の識別情報（例：ＣＲＧＩＤ）と、第一鍵識別情報（例：ＩＤ１０）と、第二鍵識別情報（例：ＩＤ１１）を記憶する。
【００８５】
認証装置１０２は、認証鍵（例：Ｍｋ１０）と、認証鍵に付与された第三鍵識別情報（例：ＩＤ１０）と、第三パスワード（例：Ｍｐｗｄ１０）を記憶する第二記憶ユニットを有する。さらに、認証装置１０２は、第二演算ユニット（例：ＣＰＵ１０４、認証ＩＣ１０５）を有している。
【００８６】
第二演算ユニットは、第一鍵識別情報および第二鍵識別情報、並びに、第三鍵識別情報に基づき、被認証装置１００と認証装置１０２とで共通する鍵識別情報（例：ＩＤ１０）を決定する。第二演算ユニットは、被認証装置１００の第一記憶ユニットに記憶されている被認証装置１００の識別情報と、認証装置１０２の第二記憶ユニットに記憶されている第三パスワードとに基づきパスワード派生情報（例：Ｂｐｗｄ１０）を演算する。第二演算ユニットは、パスワード派生情報と、被認証装置１００と認証装置１０２とで共通する鍵識別情報を被認証装置１００に送信する。
【００８７】
第一演算ユニットは、認証装置１０２から受信されたパスワード派生情報に所定関数（例：一方向性関数ｈ）を適用して演算結果（例：ｈ（Ｂｐｗｄ１０））を求める。第一演算ユニットは、第一鍵識別情報と第二鍵識別情報とのうち被認証装置１００と認証装置１０２とで共通する鍵識別情報に関連付けられているパスワード（例：ｈ（Ｂｐｗｄ１０））と、演算結果（例：ｈ（Ｂｐｗｄ１０））とに基づきパスワード認証を実行する。第一演算ユニットは、パスワード認証が成功すると、共通鍵識別情報に関連付けられている被認証鍵（例：Ｂｋ１０）に所定計算（例：一方向性関数ｘ）を実行することで第一鍵派生情報（例：ｘ（Ｂｋ１０））を求める。第一鍵派生情報は第一認証値と呼ばれてもよい。共通鍵識別情報とは、第一鍵識別情報と第二鍵識別情報とのうち被認証装置１００と認証装置１０２とで共通する識別情報である。
【００８８】
第二演算ユニットは、第一演算ユニットによるパスワード認証が成功すると、被認証装置１００の識別情報（例：ＣＲＧＩＤ）と認証鍵（例：Ｍｋ１０）とに基づき所定演算（例：一方向性関数ｆ）を実行する。これにより、被認証装置１００と認証装置１０２とで共通する鍵識別情報に関連付けられている被認証鍵（例：Ｂｋ１０）が再現される。第二演算ユニットは、当該再現された被認証鍵に所定計算（例：一方向性関数ｘ）を実行することで第二鍵派生情報（例：ｘ（Ｂｋ１０））を求める。第二鍵派生情報は第二認証値と呼ばれてもよい。第二演算ユニットは、第一演算ユニットにより求められた第一鍵派生情報と第二演算ユニットにより求められた第二鍵派生情報とに基づき、被認証装置１００を認証する。このように、実施例によれば、パスワード認証が成功しなければ、被認証装置１００に保持されている被認証鍵（例：Ｂｋ１０）が使用されないため、被認証鍵の秘密性（セキュリティ）が向上する。
［態様２］
第一記憶ユニットは、秘密情報を記憶する第一記憶領域（例：非公開メモリ２０３ａ）と公開情報を記憶する第二記憶領域（例：公開メモリ２０４ａ）とを有していてもよい。第一記憶領域は、第一被認証鍵と、第二被認証鍵と、第一パスワードと、第二パスワードと、被認証装置１００の外部には公開しないように記憶する。第二記憶領域は、第一鍵識別情報および第二鍵識別情報を記憶する。これにより、第一被認証鍵と、第二被認証鍵と、第一パスワードと、第二パスワードとの暴露（公開）が抑制されよう。
［態様３］
第二記憶ユニットは、認証鍵と第三パスワードとを認証装置１０２の外部には公開しないように記憶する第三記憶領域（例：非公開メモリ２０３ｂ）と、第三鍵識別情報を記憶する第四記憶領域（例：公開メモリ２０４ｂ）を有してもよい。これにより、認証鍵と第三パスワードの暴露（公開）が抑制されよう。
［態様４］
所定関数は一方向性関数（例：一方向性関数ｈ）であってもよい。これにより、演算結果（例：ｈ（Ｂｐｗｄ１０））からパスワード派生情報（例：Ｂｐｗｄ１０）を導出することが困難になる。
［態様５］
所定演算は一方向性関数（例：一方向性関数ｆ）を用いた演算であってもよい。これにより、被認証装置１００の識別情報（例：ＣＲＧＩＤ）と認証鍵（例：Ｍｋ１０）と被認証鍵（例：Ｂｋ１０）が再現可能となる。また、再現された被認証鍵（例：Ｂｋ１０）から認証鍵（例：Ｍｋ１０）を復元することは困難となる。
［態様６］
第二演算ユニットは、第一制御部（例：ＣＰＵ１０４）と第二制御部（例：演算ユニット２０１ｂ）とを有してもよい。第二制御部と第二記憶ユニットは集積回路（例：認証ＩＣ１０５）に実装されていてもよい。第一制御部は、第二制御部に対して第三鍵識別情報の取得コマンド（例：コマンド７Ｅｈ）を送信する。これにより、第二制御部を介して第二記憶ユニットから第三鍵識別情報が取得されてもよい。第一制御部は、当該第三鍵識別情報に基づき被認証装置１００と認証装置１０２とで共通する鍵識別情報（例：ＩＤ１０）を決定するように構成されていてもよい。
［態様７］
第一制御部（例：ＣＰＵ１０４）は、被認証装置１００の第一記憶ユニットに記憶されている被認証装置１００の識別情報（例：ＣＲＧＩＤ）を第二制御部に渡す。第二制御部は、被認証装置１００の識別情報と、第二記憶ユニットに記憶されている第三パスワードとに基づきパスワード派生情報（例：Ｂｐｗｄ１０）を演算して第一制御部に渡すように構成されていてもよい。
［態様８］
第一制御部は、第一演算ユニットによるパスワード認証が成功すると、被認証装置１００の識別情報（例：ＣＲＧＩＤ）を第二制御部に渡す。第二制御部は、被認証装置１００の識別情報（例：ＣＲＧＩＤ）と認証鍵（例：Ｍｋ１０）とに基づき所定演算（例：一方向性関数ｆ）を実行する。これにより、被認証鍵（Ｂｋ１０）が再現される。第二制御部は、当該再現された被認証鍵に所定計算（例：一方向性関数ｘ）を実行することで第二鍵派生情報（例：ｘ（Ｂｋ１０））を求めるように構成されていてもよい。
［態様９］
図３Ａが示すように、第一記憶ユニットは、さらに、パスワード認証の要否を示す要否情報を記憶していてもよい。要否情報がパスワード認証を実行しないことを示している場合がある。この場合に、第一演算ユニットは、第二演算ユニットから送信されるパスワード認証に関連するコマンドに対するレスポンスとして失敗を意味するレスポンスを送信してもよい。
［態様１０］
実施例２で説明されたように、要否情報がパスワード認証を実行しないことを示している場合がある。この場合に、第一演算ユニットは、パスワード認証をスキップして、第一演算ユニットにより求められた第一鍵派生情報と第二演算ユニットにより求められた第二鍵派生情報とに基づく被認証装置１００の認証処理を実行してもよい。
［態様１１］
認証システムは、認証装置１０２として第一認証装置（プリンタＩに搭載された認証装置１０２）と第二認証装置（プリンタＩＩに搭載された認証装置１０２）とを有していてもよい。
第一認証装置の第二記憶ユニットに記憶されている認証鍵（例：Ｍｋ１０）と、第二認証装置の第二記憶ユニットに記憶されている認証鍵（例：Ｍｋ１１）と、は異なっている。第一認証装置の第二記憶ユニットに記憶されている第三鍵識別情報（例：ＩＤ１０）と、第二認証装置の第二記憶ユニットに記憶されている第三鍵識別情報（例：ＩＤ１１）とは異なっている。第一認証装置の第二記憶ユニットに記憶されている第三パスワード（例：Ｍｐｗｄ１０）と、第二認証装置の第二記憶ユニットに記憶されている第三パスワード（例：Ｍｐｗｄ１１）とは異なっている。これにより、複数の秘密情報が同時に暴露されることがなくなる。
［態様１２］
第一認証装置の仕向国と第二認証装置の仕向国とが異なっていてもよい。これにより、第一認証装置と第二認証装置との空間的な分離が可能となり、すべての秘密情報を同時に暴露することが困難になる。
［態様１３］
第一認証装置の出荷時期と第二認証装置の出荷時期とが異なっていてもよい。これにより、第一認証装置と第二認証装置との時間的な分離が実現されてもよい。その結果、すべての秘密情報を同時に暴露することが困難になる。
［態様１４、１５］
認証装置１０２は、電子機器であってもよい。被認証装置１００は、電子機器で使用される消耗品であってもよい。電子機器は、画像形成装置（プリンタＩ、ＩＩ、ｉ、ｉｉ）であってもよい。消耗品は、画像形成装置で使用されるカートリッジであってもよい。
［態様１６、１９、２２］
被認証装置１００と、当該被認証装置１００を認証する認証装置１０２とを有する認証システムにおける被認証装置１００が提供される。また、被認証装置１００と、当該被認証装置１００を認証する認証装置１０２とを有する認証システムにおける認証装置１０２が提供される。図６などが示すように、認証装置１０２が被認証装置１００を認証する認証方法が提供される。
【００８９】
［態様１７、１８、２０、２１］
認証装置は、電子機器であってもよい。被認証装置は、電子機器で使用される消耗品であってもよい。たとえば、電子機器は、画像形成装置であってもよい。消耗品は、画像形成装置で使用される、トナーカートリッジ、ドラムカートリッジ、インクカートリッジ、定着ユニット、中間転写ベルトユニットのいずれかを含んでもよい。
【００９０】
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項が添付される。
【符号の説明】
【００９１】
１００：被認証装置、１０２：被認証装置、２０１：演算ユニット、２０３：非公開メモリ、２０４：公開メモリ、１０４：ＣＰＵ
認証ＩＣ１０５
【図１】
2020167671.tif 000003
【図２】
2020167671.tif 000004
【図３】
2020167671.tif 000005
【図４】
2020167671.tif 000006
【図５】
2020167671.tif 000007
【図６】
2020167671.tif 000008
【図７】
2020167671.tif 000009
【図８】
2020167671.tif 000010
【図９】
2020167671.tif 000011
【図１０】
2020167671.tif 000012
【図１１】
2020167671.tif 000013
【図１２】
2020167671.tif 000014
【図１３】
2020167671.tif 000015