"伝送路を介して接続された複数のデバイスとホストとの間でデータの送受信を行い、前記複数のデバイスを前記ホストが順次認証する相互認証システムにおいて、前記ホストにおいて、前記伝送路を介して接続された前記複数のデバイスのうち、相互認証させる第1のデバイスと第2のデバイスとを決定するデバイス決定手段と、前記ホストにおいて、前記デバイス決定手段により決定された、第1及び第2のデバイスを指定して、相互認証を行うように命令する第1、第2のコマンドと、前記第1のデバイスから相互認証結果を読み出すように命令する第3のコマンドを生成するコマンド生成手段と、前記ホストにおいて、前記コマンド生成手段により生成された、前記第1のコマンドを前記伝送路を介して前記第1、第2のデバイスに送信するホスト側送信手段と、前記第1のデバイスにおいて、前記ホストが送信する、前記第1のコマンドを受信する第1のデバイス側受信手段と、前記第2のデバイスにおいて、前記ホストが送信する、前記第1のコマンドを受信する第2のデバイス側受信手段と前記第1のデバイスにおいて、第1の乱数データを生成する第1のデバイス側乱数データ生成手段と、前記第2のデバイスにおいて、第2の乱数データを生成する第2のデバイス側乱数データ生成手段と、前記第1のデバイスにおいて、前記第1のデバイス側受信手段により受信された前記第1のコマンドに応じて、前記第1の乱数データを、前記第1、第2のデバイスが共通に保持する第1の鍵データを用いて暗号化して、第1の暗号データを生成する第1のデバイス側暗号化手段と、前記第2のデバイスにおいて、前記第2のデバイス側受信手段により受信された前記第1のコマンドに応じて、前記第2の乱数データを、前記第1の鍵データを用いて第2の暗号データを生成する第2のデバイス側暗号化手段と、前記第1のデバイスにおいて、前記第1の暗号データを、前記伝送路を介して前記ホストに送信する第1のデバイス側送信手段と、前記第2のデバイスにおいて、前記第1のデバイスが送信する、前記第1の暗号データを受信する第2のデバイス側受信手段と、前記第2のデバイスにおいて、前記第2のデバイス側受信手段により受信した、前記第1の暗号データを、前記第1の鍵データを用いて、第1の復号結果を得る第2のデバイス側復号化手段と、前記第2のデバイスにおいて、前記第2のデバイス側復号化手段により得た前記第1の復号結果と、前記第2の乱数データとの間で演算を行い、第2の演算結果を得る第2のデバイス側演算手段と、前記第2のデバイスにおいて、前記第2のデバイス側暗号化手段により生成された、前記第2の暗号データを、前記伝送路を介して前記ホストに送信する第2のデバイス側送信手段と、前記第1のデバイスにおいて、前記第2のデバイスが送信する、前記第2の暗号データを受信する第1のデバイス側受信手段と、前記第1のデバイスにおいて、前記第1のデバイス側受信手段により受信した、前記第2の暗号データを、前記第1の鍵データを用いて復号し、第2の復号結果を得る第1のデバイス側復号化手段と、前記第1のデバイスにおいて、前記第1のデバイス側復号化手段により得た、前記第2の復号結果と、前記第1の乱数データとの間で演算を行い、第1の演算結果を得る第1のデバイス側演算手段と、前記ホストにおいて、前記コマンド生成手段により生成された、前記第2のコマンドを、前記伝送路を介して前記第1、第2のデバイスに送信するホスト側送信手段と、前記第1のデバイスにおいて、前記ホストが送信する、前記第2のコマンドを受信する第1のデバイス側受信手段と、前記第2のデバイスにおいて、前記ホストが送信する、前記第2のコマンドを受信する第2のデバイス側受信手段と、前記第1のデバイスにおいて、前記第1のデバイス側受信手段により受信した、前記第2のコマンドに応じて前記第1の演算結果を、前記第1、第2のデバイスが共通に保持する第2の鍵データを用いて暗号化して、第3の暗号データを生成する第1のデバイス側暗号化手段と、前記第2のデバイスにおいて、前記第2のデバイス側受信手段により受信した、前記第2のコマンドに応じて、前記第2の演算結果を、前記第2の鍵データにより暗号化して、第4の暗号データを生成する第2のデバイス側暗号化手段と、前記第1のデバイスにおいて、前記第1のデバイス側受信手段により受信した、前記第2のコマンドに応じて、前記第3の暗号データを、前記伝送路を介して前記ホストに送信する第1のデバイス側送信手段と、前記第2のデバイスにおいて、前記第1のデバイスが送信する、前記第3の暗号データを受信する第2のデバイス側受信手段と、前記第2のデバイスにおいて、前記第2のデバイス側受信手段で受信した、前記第3の暗号データを、前記第2の鍵データを用いて復号して第3の復号結果を得る第2のデバイス側復号化手段と、前記第2のデバイスにおいて、前記第3の復号結果と、前記第2の演算結果との一致不一致を判定して、前記第1のデバイスを認証する第2のデバイス側認証手段と、前記第2のデバイスにおいて、前記第2のデバイス側認証手段による判定結果が一致の場合は、前記第1のデバイスが認証されたと判断して、前記第4の暗号データを前記伝送路を介して前記ホストに送信し、不一致の場合は、前記第1のデバイスは認証されなかったと判断して、前記第2の演算結果とは異なる第3の乱数データを、前記第2のデバイス側乱数データ生成手段で生成し、前記第3の乱数データを、前記第2の鍵データを用いて、前記第2のデバイス側受信手段で受信した前記第2のコマンドに応じて、前記第2のデバイス側暗号化手段で暗号化して第5の暗号データを生成し、前記伝送路を介して前記ホストに送信する第2のデバイス側認証結果送信手段と、前記第1のデバイスにおいて、前記第2のデバイスが送信する、前記第4の暗号データあるいは、前記第5の暗号データを受信する第1のデバイス側受信手段と、前記第1のデバイスにおいて、前記第1のデバイス側受信手段で受信した、前記第4の暗号データあるいは、前記第5の暗号データを、前記第2の鍵データを用いて復号して第4の復号結果を得る第1のデバイス側復号化手段と、前記第1のデバイスにおいて、前記第4の復号結果と、前記第1の演算結果との一致不一致を判定する第1のデバイス側一致判定手段と、前記ホストにおいて、前記コマンド生成手段により生成された、前記第3のコマンドを前記伝送路を介して前記第1のデバイスに送信するホスト側送信手段と、前記第1のデバイスにおいて、前記ホストが送信する前記第3のコマンドを受信する第1のデバイス側受信手段と、前記第1のデバイスにおいて、前記第1のデバイス側受信手段で受信した、前記第3のコマンドに応じて、前記第1のデバイス側一致判定段で判定した結果を、前記伝送路を介して前記ホストに送信する第1のデバイス側一致判定結果送信手段と、前記ホストにおいて、前記第1のデバイスから送信された、前記第1のデバイス側一致判定手段での判定結果を受信するホスト側受信手段と、第1のデバイスにおいて、前記第1のデバイス側一致判定手段で判定した結果により、前記第2のデバイスとの相互認証結果を判定する第1のデバイス側相互認証手段と、前記ホストにおいて、前記ホスト側受信手段により受信された、前記第1のデバイス側一致判定手段での判定結果に基づいて、前記第1及び第2のデバイスの相互認証結果を判定する認証結果判定手段とを有することを特徴とする相互認証システム。前記第1のデバイスは予め認証されたデバイスであることを特徴とする請求項1に記載の相互認証システム。前記伝送路はI2CInterIntegratedCircuit伝送線であることを特徴とする請求項1または2に記載の相互認証システム。伝送路を介して接続された複数のデバイスとホストとの間でデータの送受信を行い、前記複数のデバイスを前記ホストが順次認証する相互認証方法であって、前記伝送路を介して接続された前記複数のデバイスのうち、相互認証させる第1のデバイスと第2のデバイスとを、前記デバイス決定手段により決定するデバイス決定工程と、前記ホストにおいて、前記デバイス決定工程で決定した、前記第1、第2のデバイスを指定して、相互認証を行うように命令する、前記第1、第2のコマンドと、前記第1のデバイスから相互認証結果を読み出すように命令する、前記第3のコマンドを、前記コマンド生成手段で生成するコマンド生成工程と、前記ホストにおいて、前記コマンド生成工程で生成した、前記第1のコマンドを、前記ホスト側送信手段で、前記伝送路を介して前記第1、第2のデバイスとに送信するホスト側送信工程と、前記第1のデバイスにおいて、前記ホスト側送信工程にて、前記ホストが送信する、前記第1のコマンドを、前記第1のデバイス側受信手段で受信する第1のデバイス側受信工程と、前記第2のデバイスにおいて、前記ホスト側送信工程にて、前記ホストが送信する、前記第1のコマンドを、前記第2のデバイス側受信手段で受信する第2のデバイス側受信工程と、前記第1のデバイスにおいて、前記第1の乱数データを、前記第1のデバイス側乱数データ生成手段で生成する第1のデバイス側乱数データ生成工程と、前記第2のデバイスにおいて、前記第2の乱数データを、前記第2のデバイス側乱数データ生成手段で生成する第2のデバイス側乱数データ生成工程と、前記第1のデバイスにおいて、前記第1のデバイス側受信工程にて受信した、前記第1のコマンドに応じて、前記第1の乱数データを、前記第1、第2のデバイスが共通に保持する、前記第1の鍵データを用いて、前記第1のデバイス側暗号化手段で、前記第1の暗号データを生成する第1のデバイス側暗号化工程と、前記第2のデバイスにおいて、前記第2のデバイス側受信工程にて受信した、前記第1のコマンドに応じて、前記第2の乱数データを、前記第1の鍵データを用いて、前記第2のデバイス側暗号化手段で、前記第2の暗号データを生成する第2のデバイス側暗号化工程と、前記第1のデバイスにおいて、前記第1の暗号データを、前記第1のデバイス側送信手段で、前記伝送路を介して前記ホストに送信する第1のデバイス側送信工程と、前記第2のデバイスにおいて、前記第1のデバイス側送信工程にて前記第1のデバイスが送信する、前記第1の暗号データを、前記第2のデバイス側受信手段で受信する第2のデバイス側受信工程と、前記第2のデバイスにおいて、前記第2のデバイス側受信工程にて受信した、前記第1の暗号データを、前記第1の鍵データを用いて、前記第2のデバイス側復号化手段で前記第1の復号結果を得る第2のデバイス側復号化工程と、前記第2のデバイスにおいて、前記第2のデバイス側復号化工程で得た、前記第1の復号結果と、前記第2の乱数データとの間で、前記第2のデバイス側演算手段で演算を行い、前記第2の演算結果を得る第2のデバイス側演算工程と、前記第2のデバイスにおいて、前記第2の暗号データを、前記第2のデバイス側送信手段で、前記伝送路を介して前記ホストに送信する第2のデバイス側送信工程と、前記第1のデバイスにおいて、前記第2のデバイス側送信工程にて、前記第2のデバイスが送信する、前記第2の暗号データを、前記第1のデバイス側受信手段で受信する第1のデバイス側受信工程と、前記第1のデバイスにおいて、前記第1のデバイス側受信工程にて受信した、前記第2の暗号データを、前記第1の鍵データを用いて、前記第1のデバイス側復号化手段で復号し、前記第2の復号結果を得る第1のデバイス側復号化工程と、前記第1のデバイスにおいて、前記第1のデバイス側復号化工程にて得た、前記第2の復号結果と、前記第1の乱数データとの間で、前記第1のデバイス側演算手段で演算を行い、前記第1の演算結果を得る第1のデバイス側演算工程と、ホストにおいて、前記コマンド生成工程で生成した、前記第2のコマンドを、前記ホスト側送信手段で、前記伝送路を介して前記第1、第2のデバイスに送信するホスト側送信工程と、前記第1のデバイスにおいて、前記ホスト側送信工程にて、前記ホストが送信する、前記第2のコマンドを、前記第1のデバイス側受信手段で受信する第1のデバイス側受信工程と、前記第2のデバイスにおいて、前記ホスト側送信工程にて、前記ホストが送信する、前記第2のコマンドを、前記第2のデバイス側受信手段で受信する第2のデバイス側受信工程と、前記第1のデバイスにおいて、前記第1のデバイス側受信工程にて受信した、前記第2のコマンドに応じて、前記第1の演算結果を、前記第1、第2のデバイスが共通に保持する、前記第2の鍵データを用いて、前記第1のデバイス側暗号化手段にて、前記第3の暗号データを生成する第1のデバイス側暗号化工程と、前記第2のデバイスにおいて、前記第2のデバイス側受信工程にて受信した、前記第2のコマンドに応じて、前記第2の演算結果を、前記第2の鍵データにより、前記第2のデバイス側暗号化手段で暗号化して、前記第4の暗号データを生成する第2のデバイス側暗号化工程と、前記第1のデバイスにおいて、前記第1のデバイス側暗号化工程にて生成された、前記第3の暗号データを、前記第1のデバイス側送信手段で、前記伝送路を介して前記ホストに送信する第1のデバイス側送信工程と、前記第2のデバイスにおいて、前記第1のデバイス側送信工程にて、前記第1のデバイスが送信する、前記第3の暗号データを、前記第2のデバイス側受信手段で受信する第2のデバイス側受信工程と、前記第2のデバイスにおいて、前記第2のデバイス側受信工程にて受信した第3の暗号データを、前記第2の鍵データを用いて、前記第2のデバイス側復号化手段にて復号して前記第3の復号結果を得る第2のデバイス側復号化工程と、前記第2のデバイスにおいて、前記第2のデバイス側復号化工程で得た、前記第3の復号結果と、前記第2の演算結果の一致不一致を、前記第2のデバイス側認証手段で判定して、前記第1のデバイスを認証する第2のデバイス側認証工程と、前記第2のデバイスにおいて、前記第2のデバイス側認証工程での、前記第2のデバイス側認証手段による判定結果が一致の場合は、前記第1のデバイスが認証されたと判断して、前記第4の暗号データを前記伝送路を介して前記ホストに送信し、不一致の場合は、前記第1のデバイスは認証されなかったと判断して、前記第2の演算結果とは異なる前記第3の乱数データを、前記第2のデバイス側乱数データ生成手段で生成し、前記第3の乱数データを、前記第2の鍵データを用いて、前記第2のデバイス側受信工程にて受信した前記第2のコマンドに応じて、前記第2のデバイス側暗号化手段で、前記第5の暗号データを生成して、前記第2のデバイス側認証結果送信手段により、前記伝送路を介して前記ホストに送信する第2のデバイス側認証結果送信工程と、前記第1のデバイスにおいて、前記第2のデバイス側認証結果送信工程にて、前記第2のデバイスが生成して、前記伝送路を介して前記ホストに送信する、前記第4の暗号データあるいは、前記第5の暗号データを、前記第1のデバイス側受信手段で受信する第1のデバイス側受信工程と、前記第1のデバイスにおいて、前記第1のデバイス側受信工程で受信した、前記第4の暗号データあるいは前記第5の暗号データを、前記第2の鍵データを用いて、前記第1のデバイス側復号化手段で復号して、前記第4の復号結果を得る第1のデバイス側復号化工程と、前記第1のデバイスにおいて、前記第1のデバイス側復号化工程にて得た、前記第4の復号結果と、前記第1の演算結果との一致不一致を、前記第1のデバイス側相互認証手段で判定する第1のデバイス側一致判定工程と、前記ホストにおいて、前記コマンド生成工程で生成した、前記第3のコマンドを、前記ホスト側送信手段で、前記伝送路を介して前記第1のデバイスに送信するホスト側送信工程と、前記第1のデバイスにおいて、前記ホスト側送信工程にて前記ホストが送信する、前記第3のコマンドを、前記第1のデバイス側受信手段で受信する第1のデバイス側受信工程と、前記第1のデバイスにおいて、前記第1のデバイス側受信工程にて受信した、前記第3のコマンドに応じて、前記第1のデバイス側一致判定手段での判定結果を、前記第1のデバイス側一致結果送信手段で、前記伝送路を介して前記ホストに送信する第1のデバイス側一致判定結果送信工程と、前記ホストにおいて、前記第1のデバイス側一致判定結果送信工程にて、前記第1のデバイスから送信される、前記第1のデバイス側一致判定手段での判定結果を、前記ホスト側受信手段で受信するホスト側受信工程と、前記第1のデバイスにおいて、前記第1のデバイス側一致判定手段での判定結果により、前記第2のデバイスとの相互認証結果を判定する第1のデバイス側相互認証結果工程と、前記ホストにおいて、前記ホスト側受信工程にて受信された前記第1のデバイス側一致判定手段での判定結果に基づいて、前記第1、第2のデバイスの相互認証結果を前記認証結果判定手段で判定する認証結果判定工程とを有し、前記ホストから送信された第1、第2のコマンドにより第1、第2のデバイスに指定されなかったデバイスは、相互認証動作に参加せず待機していることを特徴とする相互認証方法。特許文献1に記載の認証方法においては、リーダ/ライタ装置とICカードとで相互に認証を行うようにしている。このため、リーダ/ライタ装置に専用認証エンジンを具備する必要があった。また、ICカードを使用する各ユーザー向けにユーザー指定の制御用CPUのソフト向けのコードの開発する負担、及び開発した同コードを開示するために発生するセキュリティ上の管理のわずらわしさ秘密保持の負担も大きな負担であった。本発明は前述の問題点に鑑み、親機が認証エンジンを具備することなく、伝送路に接続されたデバイスの真偽を確認できるようにすることを目的とする。本発明の相互認証システムは、伝送路を介して接続された複数のデバイスとホストとの間でデータの送受信を行い、前記複数のデバイスを前記ホストが順次認証する相互認証システムであって、前記ホストにおいて、前記伝送路を介して接続された前記複数のデバイスのうち、相互認証させる第1のデバイスと第2のデバイスとを決定するデバイス決定手段と、前記ホストにおいて、前記デバイス決定手段により決定された、第1及び第2のデバイスを指定して、相互認証を行うように命令する第1、第2のコマンドと、前記第1のデバイスから相互認証結果を読み出すように命令する第3のコマンドを生成するコマンド生成手段と、前記ホストにおいて、前記コマンド生成手段により生成された、前記第1のコマンドを前記伝送路を介して前記第1、第2のデバイスに送信するホスト側送信手段と、前記第1のデバイスにおいて、前記ホストが送信する、前記第1のコマンドを受信する第1のデバイス側受信手段と、前記第2のデバイスにおいて、前記ホストが送信する、前記第1のコマンドを受信する第2のデバイス側受信手段と、前記第1のデバイスにおいて、第1の乱数データを生成する第1のデバイス側乱数データ生成手段と、前記第2のデバイスにおいて、第2の乱数データを生成する第2のデバイス側乱数データ生成手段と、前記第1のデバイスにおいて、前記第1のデバイス側受信手段により受信された前記第1のコマンドに応じて、前記第1の乱数データを、前記第1、第2のデバイスが共通に保持する第1の鍵データを用いて暗号化して、第1の暗号データを生成する第1のデバイス側暗号化手段と、前記第2のデバイスにおいて、前記第2のデバイス側受信手段により受信された前記第1のコマンドに応じて、前記第2の乱数データを、前記第1の鍵データを用いて第2の暗号データを生成する第2のデバイス側暗号化手段と、前記第1のデバイスにおいて、前記第1の暗号データを、前記伝送路を介して前記ホストに送信する第1のデバイス側送信手段と、前記第2のデバイスにおいて、前記第1のデバイスが送信する、前記第1の暗号データを受信する第2のデバイス側受信手段と、前記第2のデバイスにおいて、前記第2のデバイス側受信手段により受信した、前記第1の暗号データを、前記第1の鍵データを用いて、第1の復号結果を得る第2のデバイス側復号化手段と、前記第2のデバイスにおいて、前記第2のデバイス側復号化手段により得た前記第1の復号結果と、前記第2の乱数データとの間で演算を行い、第2の演算結果を得る第2のデバイス側演算手段と、前記第2のデバイスにおいて、前記第2のデバイス側暗号化手段により生成された、前記第2の暗号データを、前記伝送路を介して前記ホストに送信する第2のデバイス側送信手段と、前記第1のデバイスにおいて、前記第2のデバイスが送信する、前記第2の暗号データを受信する第1のデバイス側受信手段と、前記第1のデバイスにおいて、前記第1のデバイス側受信手段により受信した、前記第2の暗号データを、前記第1の鍵データを用いて復号し、第2の復号結果を得る第1のデバイス側復号化手段と、前記第1のデバイスにおいて、前記第1のデバイス側復号化手段により得た、前記第2の復号結果と、前記第1の乱数データとの間で演算を行い、第1の演算結果を得る第1のデバイス側演算手段と、前記ホストにおいて、前記コマンド生成手段により生成された、前記第2のコマンドを、前記伝送路を介して前記第1、第2のデバイスに送信するホスト側送信手段と、前記第1のデバイスにおいて、前記ホストが送信する、前記第2のコマンドを受信する第1のデバイス側受信手段と、前記第2のデバイスにおいて、前記ホストが送信する、前記第2のコマンドを受信する第2のデバイス側受信手段と、前記第1のデバイスにおいて、前記第1のデバイス側受信手段により受信した、前記第2のコマンドに応じて前記第1の演算結果を、前記第1、第2のデバイスが共通に保持する第2の鍵データを用いて暗号化して、第3の暗号データを生成する第1のデバイス側暗号化手段と、前記第2のデバイスにおいて、前記第2のデバイス側受信手段により受信した、前記第2のコマンドに応じて、前記第2の演算結果を、前記第2の鍵データにより暗号化して、第4の暗号データを生成する第2のデバイス側暗号化手段と、前記第1のデバイスにおいて、前記第1のデバイス側受信手段により受信した、前記第2のコマンドに応じて、前記第3の暗号データを、前記伝送路を介して前記ホストに送信する第1のデバイス側送信手段と、前記第2のデバイスにおいて、前記第1のデバイスが送信する、前記第3の暗号データを受信する第2のデバイス側受信手段と、前記第2のデバイスにおいて、前記第2のデバイス側受信手段で受信した、前記第3の暗号データを、前記第2の鍵データを用いて復号して第3の復号結果を得る第2のデバイス側復号化手段と、前記第2のデバイスにおいて、前記第3の復号結果と、前記第2の演算結果との一致不一致を判定して、前記第1のデバイスを認証する第2のデバイス側認証手段と、前記第2のデバイスにおいて、前記第2のデバイス側認証手段による判定結果が一致の場合は、前記第1のデバイスが認証されたと判断して、前記第4の暗号データを前記伝送路を介して前記ホストに送信し、不一致の場合は、前記第1のデバイスは認証されなかったと判断して、前記第2の演算結果とは異なる第3の乱数データを、前記第2のデバイス側乱数データ生成手段で生成し、前記第3の乱数データを、前記第2の鍵データを用いて、前記第2のデバイス側受信手段で受信した前記第2のコマンドに応じて、前記第2のデバイス側暗号化手段で暗号化して第5の暗号データを生成し、前記伝送路を介して前記ホストに送信する第2のデバイス側認証結果送信手段と、前記第1のデバイスにおいて、前記第2のデバイスが送信する、前記第4の暗号データあるいは、前記第5の暗号データを受信する第1のデバイス側受信手段と、前記第1のデバイスにおいて、前記第1のデバイス側受信手段で受信した、前記第4の暗号データあるいは、前記第5の暗号データを、前記第2の鍵データを用いて復号して第4の復号結果を得る第1のデバイス側復号化手段と、前記第1のデバイスにおいて、前記第4の復号結果と、前記第1の演算結果との一致不一致を判定する第1のデバイス側一致判定手段と、前記ホストにおいて、前記コマンド生成手段により生成された、前記第3のコマンドを前記伝送路を介して前記第1のデバイスに送信するホスト側送信手段と、前記第1のデバイスにおいて、前記ホストが送信する前記第3のコマンドを受信する第1のデバイス側受信手段と、前記第1のデバイスにおいて、前記第1のデバイス側受信手段で受信した、前記第3のコマンドに応じて、前記第1のデバイス側一致判定段で判定した結果を、前記伝送路を介して前記ホストに送信する第1のデバイス側一致判定結果送信手段と、前記ホストにおいて、前記第1のデバイスから送信された、前記第1のデバイス側一致判定手段での判定結果を受信するホスト側受信手段と、第1のデバイスにおいて、前記第1のデバイス側一致判定手段で判定した結果により、前記第2のデバイスとの相互認証結果を判定する第1のデバイス側相互認証手段と、前記ホストにおいて、前記ホスト側受信手段により受信された、前記第1のデバイス側一致判定手段での判定結果に基づいて、前記第1及び第2のデバイスの相互認証結果を判定する認証結果判定手段とを有することを特徴とする。本発明の相互認証方法は、伝送路を介して接続された複数のデバイスとホストとの間でデータの送受信を行い、前記複数のデバイスを前記ホストが順次認証する相互認証方法であって、前記伝送路を介して接続された前記複数のデバイスのうち、相互認証させる第1のデバイスと第2のデバイスとを、前記デバイス決定手段により決定するデバイス決定工程と、前記ホストにおいて、前記デバイス決定工程で決定した、前記第1、第2のデバイスを指定して、相互認証を行うように命令する、前記第1、第2のコマンドと、前記第1のデバイスから相互認証結果を読み出すように命令する、前記第3のコマンドを、前記コマンド生成手段で生成するコマンド生成工程と、前記ホストにおいて、前記コマンド生成工程で生成した、前記第1のコマンドを、前記ホスト側送信手段で、前記伝送路を介して前記第1、第2のデバイスとに送信するホスト側送信工程と、前記第1のデバイスにおいて、前記ホスト側送信工程にて、前記ホストが送信する、前記第1のコマンドを、前記第1のデバイス側受信手段で受信する第1のデバイス側受信工程と、前記第2のデバイスにおいて、前記ホスト側送信工程にて、前記ホストが送信する、前記第1のコマンドを、前記第2のデバイス側受信手段で受信する第2のデバイス側受信工程と、前記第1のデバイスにおいて、前記第1の乱数データを、前記第1のデバイス側乱数データ生成手段で生成する第1のデバイス側乱数データ生成工程と、前記第2のデバイスにおいて、前記第2の乱数データを、前記第2のデバイス側乱数データ生成手段で生成する第2のデバイス側乱数データ生成工程と、前記第1のデバイスにおいて、前記第1のデバイス側受信工程にて受信した、前記第1のコマンドに応じて、前記第1の乱数データを、前記第1、第2のデバイスが共通に保持する、前記第1の鍵データを用いて、前記第1のデバイス側暗号化手段で、前記第1の暗号データを生成する第1のデバイス側暗号化工程と、前記第2のデバイスにおいて、前記第2のデバイス側受信工程にて受信した、前記第1のコマンドに応じて、前記第2の乱数データを、前記第1の鍵データを用いて、前記第2のデバイス側暗号化手段で、前記第2の暗号データを生成する第2のデバイス側暗号化工程と、前記第1のデバイスにおいて、前記第1の暗号データを、前記第1のデバイス側送信手段で、前記伝送路を介して前記ホストに送信する第1のデバイス側送信工程と、前記第2のデバイスにおいて、前記第1のデバイス側送信工程にて前記第1のデバイスが送信する、前記第1の暗号データを、前記第2のデバイス側受信手段で受信する第2のデバイス側受信工程と、前記第2のデバイスにおいて、前記第2のデバイス側受信工程にて受信した、前記第1の暗号データを、前記第1の鍵データを用いて、前記第2のデバイス側復号化手段で前記第1の復号結果を得る第2のデバイス側復号化工程と、前記第2のデバイスにおいて、前記第2のデバイス側復号化工程で得た、前記第1の復号結果と、前記第2の乱数データとの間で、前記第2のデバイス側演算手段で演算を行い、前記第2の演算結果を得る第2のデバイス側演算工程と、前記第2のデバイスにおいて、前記第2の暗号データを、前記第2のデバイス側送信手段で、前記伝送路を介して前記ホストに送信する第2のデバイス側送信工程と、前記第1のデバイスにおいて、前記第2のデバイス側送信工程にて、前記第2のデバイスが送信する、前記第2の暗号データを、前記第1のデバイス側受信手段で受信する第1のデバイス側受信工程と、前記第1のデバイスにおいて、前記第1のデバイス側受信工程にて受信した、前記第2の暗号データを、前記第1の鍵データを用いて、前記第1のデバイス側復号化手段で復号し、前記第2の復号結果を得る第1のデバイス側復号化工程と、前記第1のデバイスにおいて、前記第1のデバイス側復号化工程にて得た、前記第2の復号結果と、前記第1の乱数データとの間で、前記第1のデバイス側演算手段で演算を行い、前記第1の演算結果を得る第1のデバイス側演算工程と、ホストにおいて、前記コマンド生成工程で生成した、前記第2のコマンドを、前記ホスト側送信手段で、前記伝送路を介して前記第1、第2のデバイスに送信するホスト側送信工程と、前記第1のデバイスにおいて、前記ホスト側送信工程にて、前記ホストが送信する、前記第2のコマンドを、前記第1のデバイス側受信手段で受信する第1のデバイス側受信工程と、前記第2のデバイスにおいて、前記ホスト側送信工程にて、前記ホストが送信する、前記第2のコマンドを、前記第2のデバイス側受信手段で受信する第2のデバイス側受信工程と、前記第1のデバイスにおいて、前記第1のデバイス側受信工程にて受信した、前記第2のコマンドに応じて、前記第1の演算結果を、前記第1、第2のデバイスが共通に保持する、前記第2の鍵データを用いて、前記第1のデバイス側暗号化手段にて、前記第3の暗号データを生成する第1のデバイス側暗号化工程と、前記第2のデバイスにおいて、前記第2のデバイス側受信工程にて受信した、前記第2のコマンドに応じて、前記第2の演算結果を、前記第2の鍵データにより、前記第2のデバイス側暗号化手段で暗号化して、前記第4の暗号データを生成する第2のデバイス側暗号化工程と、前記第1のデバイスにおいて、前記第1のデバイス側暗号化工程にて生成された、前記第3の暗号データを、前記第1のデバイス側送信手段で、前記伝送路を介して前記ホストに送信する第1のデバイス側送信工程と、前記第2のデバイスにおいて、前記第1のデバイス側送信工程にて、前記第1のデバイスが送信する、前記第3の暗号データを、前記第2のデバイス側受信手段で受信する第2のデバイス側受信工程と、前記第2のデバイスにおいて、前記第2のデバイス側受信工程にて受信した第3の暗号データを、前記第2の鍵データを用いて、前記第2のデバイス側復号化手段にて復号して前記第3の復号結果を得る第2のデバイス側復号化工程と、前記第2のデバイスにおいて、前記第2のデバイス側復号化工程で得た、前記第3の復号結果と、前記第2の演算結果の一致不一致を、前記第2のデバイス側認証手段で判定して、前記第1のデバイスを認証する第2のデバイス側認証工程と、前記第2のデバイスにおいて、前記第2のデバイス側認証工程での、前記第2のデバイス側認証手段による判定結果が一致の場合は、前記第1のデバイスが認証されたと判断して、前記第4の暗号データを前記伝送路を介して前記ホストに送信し、不一致の場合は、前記第1のデバイスは認証されなかったと判断して、前記第2の演算結果とは異なる前記第3の乱数データを、前記第2のデバイス側乱数データ生成手段で生成し、前記第3の乱数データを、前記第2の鍵データを用いて、前記第2のデバイス側受信工程にて受信した前記第2のコマンドに応じて、前記第2のデバイス側暗号化手段で、前記第5の暗号データを生成して、前記第2のデバイス側認証結果送信手段により、前記伝送路を介して前記ホストに送信する第2のデバイス側認証結果送信工程と、前記第1のデバイスにおいて、前記第2のデバイス側認証結果送信工程にて、前記第2のデバイスが生成して、前記伝送路を介して前記ホストに送信する、前記第4の暗号データあるいは、前記第5の暗号データを、前記第1のデバイス側受信手段で受信する第1のデバイス側受信工程と、前記第1のデバイスにおいて、前記第1のデバイス側受信工程で受信した、前記第4の暗号データあるいは前記第5の暗号データを、前記第2の鍵データを用いて、前記第1のデバイス側復号化手段で復号して、前記第4の復号結果を得る第1のデバイス側復号化工程と、前記第1のデバイスにおいて、前記第1のデバイス側復号化工程にて得た、前記第4の復号結果と、前記第1の演算結果との一致不一致を、前記第1のデバイス側一致判定手段で判定する第1のデバイス側一致判定工程と、前記ホストにおいて、前記コマンド生成工程で生成した、前記第3のコマンドを、前記ホスト側送信手段で、前記伝送路を介して前記第1のデバイスに送信するホスト側送信工程と、前記第1のデバイスにおいて、前記ホスト側送信工程にて前記ホストが送信する、前記第3のコマンドを、前記第1のデバイス側受信手段で受信する第1のデバイス側受信工程と、前記第1のデバイスにおいて、前記第1のデバイス側受信工程にて受信した、前記第3のコマンドに応じて、前記第1のデバイス側一致判定手段での判定結果を、前記第1のデバイス側一致結果送信手段で、前記伝送路を介して前記ホストに送信する第1のデバイス側一致判定結果送信工程と、前記ホストにおいて、前記第1のデバイス側一致判定結果送信工程にて、前記第1のデバイスから送信される、前記第1のデバイス側一致判定手段での判定結果を、前記ホスト側受信手段で受信するホスト側受信工程と、前記第1のデバイスにおいて、前記第1のデバイス側一致判定手段での判定結果により、前記第2のデバイスとの相互認証結果を判定する第1のデバイス側相互認証結果工程と、前記ホストにおいて、前記ホスト側受信工程にて受信された前記第1のデバイス側一致判定手段での判定結果に基づいて、前記第1、第2のデバイスの相互認証結果を前記認証結果判定手段で判定する認証結果判定工程とを有し、前記ホストから送信された第1、第2のコマンドにより第1、第2のデバイスに指定されなかったデバイスは、相互認証動作に参加せず待機していることを特徴とする。本発明によれば、親機が認証エンジンを具備することなく、伝送路に接続されたデバイスの真偽を確認することが可能となる。次に、図面を参照しながら本発明の実施形態を説明する。第1の実施形態図1は、本発明の実施形態を示し、相互認証システムの概略構成を示す図である。図1に示したように、本実施形態の相互認証システムにおいては、ホスト親機10に対して複数のデバイスA11、デバイスB12、デバイスC13がI2CInterIntegratedCircuit伝送路14を介して接続されている。ホスト10は、伝送路14に接続されたデバイス11~13の真偽を判断し、真のデバイスに対してのみアクセス制限を開放する。伝送路14に接続されたデバイスが真のデバイスであるか否かを判断するためには、一般には、ホスト10が認証用の専用認証エンジンを備え、ホスト10と認証対象のデバイスとの間で相互認証アルゴリズムを実行する必要がある。本実施形態においては、ホスト10に認証用の専用認証エンジンを具備することなく、伝送路14に接続されたデバイスの真偽を判断できるようにしている。図1に示したように、本実施形態の第1のデバイスA11にはメモリ11aが配設されており、メモリ11aに第1、第2の鍵データKA、KBが記憶されている。また、第2のデバイスB12にはメモリ12aが配設されており、メモリ12aに第1、第2の鍵データKA、KBが記憶されている。また、第3のデバイスC13にはメモリ13aが配設されており、メモリ13aに第1、第2の鍵データKA、KBが記憶されている。しかしながら、本実施形態のホスト10は伝送路14に接続されたデバイスとの間で相互認証を行わないので、メモリ10aには第1、第2の鍵データKA、KBが記憶されていない。図2にホスト10の概略構成例を示す。図2に示すように、ホスト10において、制御部21は、内蔵するプログラムに応じて、各種処理を行う。例えば、制御部21は、相互認証を行うデバイスに送信するコマンドを、コマンド生成部23にて生成するように制御し、生成したコマンドを送信部24に出力するよう制御する。メモリ22は、制御部21における処理に使用されるデータなどを記憶している。送信部24は、コマンド生成部23より供給されたコマンドを、I/F部25と伝送路14を介して相互認証を行うデバイスに送信する。受信部26は、I/F部25を介して、相互認証を行うデバイスにより送信されたデータを認証結果判定部27に出力する。制御部21からの制御により、認証結果判定部27は、受信部26より供給されたデータに基づいて、伝送路14に接続されたデバイスから送信された認証結果の真偽を判定し、判定結果を制御部21に出力するか、あるいは、受信部26より供給されたデータをそのまま制御部21に出力する。図3は、本発明の実施形態である第1のデバイスの構成例を示すブロック図である。第1のデバイスにおいて、制御部31は、ホスト10より供給されるコマンドに応じて、各種処理を行う。具体的には、ホスト10からのコマンドを受信部36から受け取り、そのコマンドに対応した処理を行い、その処理の結果に対応して生成した乱数データや演算結果や応答データやメモリ32からの読み出しデータ等を暗号部33に出力する。メモリ32は、RAMRandomAccessMemory部とROMReadOnlyMemory部を有している。そのうちのRAM部は、制御部31における処理に使用されるデータなどを一時的に記憶する。一方、ROM部には、デバイス固有のデバイスアドレスと暗号化または復号化において利用される第1、第2の鍵データKA、KB等が予め記憶されている。暗号部33は、制御部31より供給された暗号化するべきデータを、所定の鍵で暗号化し、暗号化したデータを送信部34に出力し、制御部31より供給されたデータを暗号化しない場合はそのまま送信部34に出力する。送信部34は、暗号部33より供給されたデータを、I/F部35を介して伝送路14に出力し、ホスト10に送信する。受信部36は、伝送路14を介して送られてきたデータをI/F部35を介して、受信し、復号部37に出力する。復号部37は、受信部36より供給されたデータを、制御部21の制御に応じて所定の鍵で復号化し、復号化したデータを制御部31に出力するか、そのまま制御部31に出力する。図4は、本発明の実施形態である第2のデバイスの構成例を示すブロック図である。第2のデバイスの構成は、図3に示した第1のデバイスの構成と全く同一であるが、動作説明を判り易くするため図3、4に分けて説明する。次に、図1を参照しながら本実施形態の相互認証システムの処理の概略を説明する。なお、図5に処理ステップを示す、各ステップで行われるデータ伝送は伝送路14を介して行われる。ステップS1ホスト10が、相互認証させる第1、第2のデバイスアドレスを指定し、さらに乱数データとして生成した第1のスクランブルデータX、を附加して、第1の相互認証コマンド1を送信部24からI/F部25を介して伝送路14に送信する。例えば、第1のデバイスA11と第2のデバイスB12とを指定して第1の相互認証コマンド1の送信を行う。本実施形態においては、第1のデバイスA11が真のデバイスであることが予め確認されている。したがって、第1~第3の相互認証コマンド1~3に従って第1のデバイスA11と第2のデバイスB12との間で相互認証を行い、第1のデバイスA11のメモリ11aに記憶されている第1、第2の鍵データKA、KBと、第2のデバイスB12のメモリ12aに記憶されている第1、第2の鍵データKA、KBとが一致し、相互認証アルゴリズム計算が同じで、動作制御に正しく応答した場合には、第2のデバイスB12は真のデバイスであるとホスト10により認証される。デバイスアドレスを指定されなかったデバイスは相互認証動作に参加せず待機する。第1のデバイスA11は、ホスト10が伝送路14に送信する第1の相互認証コマンド1をI/F部35を介して受信部36により受信する。第2のデバイスB12は、ホスト10が伝送路14に送信する第1の相互認証コマンド1をI/F部45を介して受信部46により受信する。ホスト10から送信された第1の相互認証コマンド1で第1のデバイスとしてデバイスアドレスを指定された第1のデバイスA11は、制御部31が第1の乱数Raを生成する。ホスト10から送信された第1の相互認証コマンド1で第2のデバイスとしてデバイスアドレスを指定された第2のデバイスB12は、制御部41が第2の乱数Rbを生成する。第1のデバイスA11は、メモリ11aに記憶している第1の鍵データKAとホスト10から送られてきた第1の相互認証コマンド1に附加されて来た第1のスクランブルデータX用いて、第1の乱数Raを暗号部33により暗号化して第1の暗号データを得る。第2のデバイスB12は、メモリ12aに記憶している第1の鍵データKAとホスト10から送られてきた第1の相互認証コマンド1に附加されて来た第1のスクランブルデータXを用いて、第2の乱数Rbを暗号部43により暗号化して第2の暗号データを得る。ステップ2第1のデバイスA11は、第1の暗号データを送信部34、I/F部35、伝送路14を介してホスト10に送信する。第2のデバイスB12は、第1のデバイスA11が伝送路14を介してホスト10に送信している第1の暗号データをI/F部45を介して受信部46により受信する。第2のデバイスB12は、受信した第1の暗号データを自身のメモリ12aに記憶している第1の鍵データKAと第1のスクランブルデータXを用いて複号部47で逆演算を行って復号して第1の復号データRaを得る。第2のデバイスB12は、制御部41で、第2の乱数Rbと、複号部47で逆演算を行って復号した第1の復号データRaとの間で所定の論理演算を行って第2の演算結果Rb◆Raを得る。さらに、説明を補足すると論理演算であるので交換の法則が成り立つので、Rb◆Ra=Ra◆Rbの関係がある。論理演算は、排他的OR演算、ビットシフト、ビット順の並び変え、特定ビットのデータ反転等を組み合わせて行うのが望ましい。ステップS3第2のデバイスB12は、第2の暗号データを送信部44、I/F部45、伝送路14を介してホスト10に送信する。第2のデバイスB12から伝送路14を介してホスト10に送信する第2の暗号データを第1のデバイスA11がI/F部35を介して受信部36により受信する。第1のデバイスA11は、受信した第2の暗号データをメモリ11aに記憶している第1の鍵データKAと第1のスクランブルデータXを用いて復号部37により逆演算を行って復号した第2の復号データRbを得る。第1のデバイスA11は、制御部31が、第1の乱数Raと、複号部37で逆演算を行って復号した第2の復号データRbとの間で所定の論理演算を行って第1の演算結果Ra◆Rbを得る。ホスト10が、相互認証させる第1、第2のデバイスアドレスを再度指定し、さらに、乱数データとして生成した第2のスクランブルデータYを附加して、第2の相互認証コマンド2をI/F部25を介して伝送路14に送信する。アドレスを指定されなかったデバイスは相互認証動作に参加せず待機する。第1のデバイスA11はホスト10が伝送路14に送信する第2の相互認証コマンド2をI/F部35を介して受信部36により受信する。第2のデバイスB12はホスト10が伝送路14に送信する第2の相互認証コマンド2をI/F部45を介して受信部46により受信する。第1のデバイスA11は、論理演算を行って得た第1の演算結果Ra◆Rbを、メモリ11aに記憶している第2の鍵データKBとホスト10から送られてきた第1、第2の相互認証コマンド1、2に附加されて来た第1、第2のスクランブルデータX、Yを用いて、暗号部33により暗号化して第3の暗号データを得る。第2のデバイスB12は、論理演算を行って得た第2の演算結果Rb◆Raを、メモリ12aに記憶している第2の鍵データKBとホスト10から送られてきた第1、第2の相互認証コマンド1、2に附加されて来た第1、第2のスクランブルデータX、Yを用いて、暗号部43により暗号化して第4の暗号データを得る。ステップS5第1のデバイスA11は、第3の暗号データを送信部34、I/F部35、伝送路14を介してホスト10に送信する。第2のデバイスB12は、第1のデバイスA11が伝送路14を介してホスト10に送信する第3の暗号データをI/F部45を介して受信部46により受信する。第2のデバイスB12は、受信した第3の暗号データを自身のメモリ12aに記憶している第2の鍵データKBと第1、第2のスクランブルデータX、Yを用いて復号部37で逆演算を行って復号して第3の復号データRa◆Rbを得る。第2のデバイスB12は、第2の演算結果Rb◆Raと第3の復号データRa◆Rbとの一致不一致を検出する。ステップS6第2のデバイスB12は、第2の演算結果Rb◆Raと第3の復号データRa◆Rbが一致している場合は、第4の暗号データを送信部34、I/F部35、伝送路14を介してホスト10に送信する。さらに第2のデバイスB12は相互認証が成立したと判断し、第2のデバイスB12に対するアクセスに対する所定のアクセス制限を開放する。第2のデバイスB12は、第2の演算結果Rb◆Raと第3の復号データRa◆Rbが一致していない場合は第3の乱数Rcを生成する。また、第3の乱数Rc=第2の演算結果Rb◆Raになった場合、あるいは、第3の乱数Rc=第3の復号データRa◆Rbになった場合は、第3の乱数Rcを再度生成する。第2のデバイスB12は、メモリ12aに記憶している第2の鍵データKBとホスト10から送られてきた第1、第2の相互認証コマンド1、2に附加されて送られて来た第1、第2のスクランブルデータX、Y用いて、第3の乱数Rcを暗号部43により暗号化して第5の暗号データを得る、そして、第5の暗号データを送信部44、I/F部45、伝送路14を介してホスト10に送信する。この場合は、第2のデバイスB12は相互認証が成立しなかったと判断し、第2のデバイスB12に対するアクセスに対する所定のアクセス制限を開放しない。第1のデバイスA11は、第2のデバイスB12から送信部44、I/F部45伝送路14を介してホスト10に送信する、第4の暗号データ、あるいは第5の暗号データを、I/F部35を介して受信部36により受信している。第1のデバイスA11は、受信した第4の暗号データ、あるいは第5の暗号データをメモリ11aに記憶している第2の鍵データKBと第1、第2のスクランブルデータX、Yを用いて復号部37で逆演算して復号して第4の復号データRb◆Ra、あるいは、Rcを得る。第1のデバイスA11は、第4の復号データRb◆Ra、あるいはRcと第1の演算結果Ra◆Rbとの一致不一致を判定し第1のデバイス側一致判定データTを得る。ホスト10が、第1のデバイスアドレスを指定しさらに、乱数データとして生成した第3のスクランブルデータZを附加して、相互認証の結果を問い合わせる第3の相互認証コマンド3をI/F部25を介して伝送路14に送信する。デバイスアドレスを指定されなかったデバイスは相互認証動作に参加せず待機する。第1のデバイスA11は、ホスト10が伝送路14に送信する第3の相互認証コマンド3をI/F部35を介して受信部36により受信する。第1のデバイスA11は、ホスト10から送られてきた第1、第2、第3相互認証コマンド1,2,3に附加されて来た第1~第3のスクランブルデータX、Y、Zを用いて第1のデバイス側一致判定データTをスクランブルして送信部34、I/F部35、伝送路14を介してホスト10に送信する。ホスト10は、第1のデバイスA11がスクランブルして送信する第1のデバイス側一致判定データTを、I/F部25、受信部26を介して受信する。第1のデバイスA11は、第1のデバイス側一致判定データTが一致を示している場合は、相互認証が成立したと判断し、第1のデバイスA11へのアクセスに対し所定のアクセス制限を開放する。また、第1のデバイスA11は、第1のデバイス側一致判定データTが一致を示していない場合は相互認証が成立しなかったと判断し、第1のデバイスA11へのアクセスに対する所定のアクセス制限を開放しない。ホスト10は、受信部26で受信したスクランブルされた第1のデバイス側一致判定データTを、認証結果判定部27に送る。ホスト10は、認証結果判定部27でホスト10が送った第1~第3スクランブルデータX、Y、Zを用いて第1のデバイス側一致判定データTを検出して制御部27に送る。この判定結果に応じて、第のデバイスA11と第2のデバイスB12の相互認証結果を判定し、ホスト10が第1のデバイスA11及び第2のデバイスB12の制限されたエリアにアクセスすることが可能になったか不可のままかを判断する。前述のようにして、第1のデバイスA11と第2のデバイスB12との間で相互認証することにより、ホスト10が第2のデバイスB12の真偽を認証するための演算処理を行うことなく、第2のデバイスB12が真のデバイスであることを確実に判定することができる。これにより、専用認証エンジンを具備する場合と比較してホスト10の開発コストの負担を軽減することができる。また、ホスト10の制御用CPUは既に開発済とか、過去の資産を引き継いでホスト10を使いたいユーザーの要求に応えることができる。さらに、ホスト10が鍵データを持たないので、セキュリティ上の管理の煩わしさを不要にできる。さらに、第1のデバイスA11をバージョンアップすれば、ホスト10の制御CPUには負担をかけることなく、新しいセキュリティシステムに更新することができる等、種々の利点が得られる。"