(57)【要約】【課題】自動車等の車両に搭載されるＥＣＵ等の車載コンピュータの信頼性を向上させること。【解決手段】鍵生成装置は、車載コンピュータに格納される第１の鍵及び第２の鍵を生成し、車載コンピュータの初期鍵で第１の鍵を暗号化して第１の暗号化データを生成し、第１の鍵により第２の鍵を暗号化して第２の暗号化データを生成し、第１の暗号化データ及び第２の暗号化データを車両に送信し、車両から受信した第３の暗号化データを第１の鍵により復号して測定値を取得し、第２の鍵を使用して車載コンピュータのデータの期待値を計算し、期待値に基づいて測定値を検証する。【選択図】図５
2018026669.tif 000002
【特許請求の範囲】
【請求項１】
鍵生成装置と、車両に搭載される車載コンピュータとを備え、
前記鍵生成装置は、
前記車両とデータを送受する車両インタフェースと、
前記車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成部と、
前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成する暗号処理部と、
前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算部と、
前記車両インタフェースにより前記車両から受信した測定値を前記期待値に基づいて検証する検証部と、を備え、前記車両インタフェースにより、前記第１の暗号化データ及び前記第２の暗号化データを前記車両に送信し、
前記車載コンピュータは、
自車載コンピュータの外部の装置とデータを送受するインタフェース部と、
前記インタフェース部により前記鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得する暗号処理部と、
該取得された第２の鍵を使用して、自車載コンピュータが予め格納しているデータの測定値を計算する測定値計算部と、を備え、該測定値を前記インタフェース部により前記鍵生成装置に送信する、
管理システム。
【請求項２】
前記車載コンピュータのうちの第１の車載コンピュータは、前記車載コンピュータのうちの第２の車載コンピュータに、前記鍵生成装置から送信される第１の暗号化データ及び第２の暗号化データを中継する、
請求項１に記載の管理システム。
【請求項３】
鍵生成装置と、車両に搭載される車載コンピュータとを備え、
前記鍵生成装置は、
前記車両とデータを送受する車両インタフェースと、
前記車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成部と、
前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算部と、
前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成し、前記第１の鍵により前記期待値を暗号化して第４の暗号化データを生成する暗号処理部と、を備え、前記車両インタフェースにより、前記第１の暗号化データ、前記第２の暗号化データ及び前記第４の暗号化データを前記車両に送信し、
前記車載コンピュータは、
自車載コンピュータの外部の装置とデータを送受するインタフェース部と、
前記インタフェース部により前記鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第４の暗号化データを該取得した第１の鍵により復号して期待値を取得する暗号処理部と、
該取得された第２の鍵を使用して自車載コンピュータが予め格納しているデータの測定値を計算し、該取得された期待値に基づいて該測定値を検証する測定部と、
を備え、該測定値の検証結果を前記インタフェース部により送信する、
管理システム。
【請求項４】
前記車載コンピュータのうちの第１の車載コンピュータは、前記車載コンピュータのうちの第２の車載コンピュータに、前記鍵生成装置から送信される第１の暗号化データ、第２の暗号化データ及び第４の暗号化データを中継する、
請求項３に記載の管理システム。
【請求項５】
鍵生成装置と、車両に搭載される車載コンピュータとを備え、
前記鍵生成装置は、
前記車両とデータを送受する車両インタフェースと、
前記車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成部と、
前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算部と、
前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成し、前記第１の鍵により前記期待値を暗号化して第４の暗号化データを生成する暗号処理部と、を備え、前記車両インタフェースにより、検証値、前記第１の暗号化データ、前記第２の暗号化データ及び前記第４の暗号化データを前記車両に送信し、
前記車載コンピュータは、
自車載コンピュータの外部の装置とデータを送受するインタフェース部と、
前記インタフェース部により前記鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第４の暗号化データを該取得した第１の鍵により復号して期待値を取得する暗号処理部と、
該取得された第２の鍵を使用して自車載コンピュータが予め格納しているデータの測定値を計算し、該取得された期待値に基づいて該測定値を検証する測定部と、
を備え、該測定値の検証結果を前記インタフェース部により送信し、
前記車載コンピュータは、該測定値の検証が合格した場合には、前記インタフェース部により送信する測定値の検証結果に、前記インタフェース部により前記鍵生成装置から受信した検証値を含め、一方、該測定値の検証が不合格になった場合には、前記インタフェース部により送信する測定値の検証結果に、前記インタフェース部により前記鍵生成装置から受信した検証値を含めず、
前記鍵生成装置は、前記車両インタフェースにより前記車両から受信した検証値を、前記車両に供給した検証値に基づいて検証する検証部をさらに備える、
管理システム。
【請求項６】
前記車載コンピュータのうちの第１の車載コンピュータは、
前記車載コンピュータのうちの第２の車載コンピュータに、前記鍵生成装置から送信される第１の暗号化データ、第２の暗号化データ及び第４の暗号化データを中継する、
請求項５に記載の管理システム。
【請求項７】
車両とデータを送受する車両インタフェースと、
前記車両に搭載される車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成部と、
前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成する暗号処理部と、
前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算部と、
前記車両インタフェースにより前記車両から受信した測定値を前記期待値に基づいて検証する検証部と、を備え、
前記車両インタフェースにより、前記第１の暗号化データ及び前記第２の暗号化データを前記車両に送信する、
鍵生成装置。
【請求項８】
車両に搭載される車載コンピュータにおいて、
自車載コンピュータの外部の装置とデータを送受するインタフェース部と、
前記インタフェース部により鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得する暗号処理部と、
該取得された第２の鍵を使用して、自車載コンピュータが予め格納しているデータの測定値を計算する測定値計算部と、を備え、該測定値を前記インタフェース部により前記鍵生成装置に送信する、
車載コンピュータ。
【請求項９】
車両とデータを送受する車両インタフェースと、
前記車両に搭載される車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成部と、
前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算部と、
前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成し、前記第１の鍵により前記期待値を暗号化して第４の暗号化データを生成する暗号処理部と、を備え、
前記車両インタフェースにより、前記第１の暗号化データ、前記第２の暗号化データ及び前記第４の暗号化データを前記車両に送信する、
鍵生成装置。
【請求項１０】
車両に搭載される車載コンピュータにおいて、
自車載コンピュータの外部の装置とデータを送受するインタフェース部と、
前記インタフェース部により鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第４の暗号化データを該取得した第１の鍵により復号して期待値を取得する暗号処理部と、
該取得された第２の鍵を使用して自車載コンピュータが予め格納しているデータの測定値を計算し、該取得された期待値に基づいて該測定値を検証する測定部と、
を備え、
該測定値の検証結果を前記インタフェース部により送信する、
車載コンピュータ。
【請求項１１】
車両とデータを送受する車両インタフェースと、
前記車両に搭載される車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成部と、
前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算部と、
前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成し、前記第１の鍵により前記期待値を暗号化して第４の暗号化データを生成する暗号処理部と、を備え、
前記車両インタフェースにより、検証値、前記第１の暗号化データ、前記第２の暗号化データ及び前記第４の暗号化データを前記車両に送信する鍵生成装置であり、
前記鍵生成装置は、前記車両インタフェースにより前記車両から受信した検証値を、前記車両に供給した検証値に基づいて検証する検証部をさらに備える、
鍵生成装置。
【請求項１２】
車両に搭載される車載コンピュータにおいて、
自車載コンピュータの外部の装置とデータを送受するインタフェース部と、
前記インタフェース部により鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第４の暗号化データを該取得した第１の鍵により復号して期待値を取得する暗号処理部と、
該取得された第２の鍵を使用して自車載コンピュータが予め格納しているデータの測定値を計算し、該取得された期待値に基づいて該測定値を検証する測定部と、
を備え、
該測定値の検証結果を前記インタフェース部により送信し、
前記車載コンピュータは、該測定値の検証が合格した場合には、前記インタフェース部により送信する測定値の検証結果に、前記インタフェース部により前記鍵生成装置から受信した検証値を含め、一方、該測定値の検証が不合格になった場合には、前記インタフェース部により送信する測定値の検証結果に、前記インタフェース部により前記鍵生成装置から受信した検証値を含めない、
車載コンピュータ。
【請求項１３】
鍵生成装置と、車両に搭載される車載コンピュータとを備える管理システムの管理方法であって、
前記鍵生成装置が、前記車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成ステップと、
前記鍵生成装置が、前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成する暗号処理ステップと、
前記車載コンピュータが、自車載コンピュータの外部の装置とデータを送受するインタフェース部により前記鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得する暗号処理ステップと、
前記車載コンピュータが、該取得された第２の鍵を使用して、自車載コンピュータが予め格納しているデータの測定値を計算する測定値計算ステップと、
前記車載コンピュータが、該測定値を前記インタフェース部により前記鍵生成装置に送信する送信ステップと、
前記鍵生成装置が、前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算ステップと、
前記鍵生成装置が、前記車両とデータを送受する車両インタフェースにより前記車両から受信した測定値を前記期待値に基づいて検証する検証ステップと、
を含む管理方法。
【請求項１４】
鍵生成装置と、車両に搭載される車載コンピュータとを備える管理システムの管理方法であって、
前記鍵生成装置が、前記車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成ステップと、
前記鍵生成装置が、前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算ステップと、
前記鍵生成装置が、前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成し、前記第１の鍵により前記期待値を暗号化して第４の暗号化データを生成する暗号処理ステップと、
前記車載コンピュータが、自車載コンピュータの外部の装置とデータを送受するインタフェース部により前記鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第４の暗号化データを該取得した第１の鍵により復号して期待値を取得する暗号処理ステップと、
前記車載コンピュータが、該取得された第２の鍵を使用して自車載コンピュータが予め格納しているデータの測定値を計算し、該取得された期待値に基づいて該測定値を検証する測定ステップと、
前記車載コンピュータが、該測定値の検証結果を前記インタフェース部により送信する送信ステップと、
を含む管理方法。
【請求項１５】
鍵生成装置と、車両に搭載される車載コンピュータとを備える管理システムの管理方法であって、
前記鍵生成装置が、前記車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成ステップと、
前記鍵生成装置が、前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算ステップと、
前記鍵生成装置が、前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成し、前記第１の鍵により前記期待値を暗号化して第４の暗号化データを生成する暗号処理ステップと、
前記車載コンピュータが、自車載コンピュータの外部の装置とデータを送受するインタフェース部により前記鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第４の暗号化データを該取得した第１の鍵により復号して期待値を取得する暗号処理ステップと、
前記車載コンピュータが、該取得された第２の鍵を使用して自車載コンピュータが予め格納しているデータの測定値を計算し、該取得された期待値に基づいて該測定値を検証する測定ステップと、
前記車載コンピュータが、該測定値の検証が合格した場合には、前記インタフェース部により送信する測定値の検証結果に、前記インタフェース部により前記鍵生成装置から受信した検証値を含め、一方、該測定値の検証が不合格になった場合には、前記インタフェース部により送信する測定値の検証結果に、前記インタフェース部により前記鍵生成装置から受信した検証値を含めない送信準備ステップと、
前記車載コンピュータが、前記インタフェース部により測定値の検証結果を送信する送信ステップと、
前記鍵生成装置が、前記車両インタフェースにより前記車両から受信した検証値を、前記車両に供給した検証値に基づいて検証する検証ステップと、
を含む管理方法。
【請求項１６】
車両とデータを送受する車両インタフェースを備える鍵生成装置のコンピュータに、
前記車両に搭載される車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成機能と、
前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成する暗号処理機能と、
前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算機能と、
前記車両インタフェースにより前記車両から受信した測定値を前記期待値に基づいて検証する検証機能と、
前記車両インタフェースにより、前記第１の暗号化データ及び前記第２の暗号化データを前記車両に送信する送信機能と、
を実現させるためのコンピュータプログラム。
【請求項１７】
車両に搭載される車載コンピュータに、
自車載コンピュータの外部の装置とデータを送受するインタフェース部により鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得する暗号処理機能と、
該取得された第２の鍵を使用して、自車載コンピュータが予め格納しているデータの測定値を計算する測定値計算機能と、
該測定値を前記インタフェース部により前記鍵生成装置に送信する送信機能と、
を実現させるためのコンピュータプログラム。
【請求項１８】
車両とデータを送受する車両インタフェースを備える鍵生成装置のコンピュータに、
前記車両に搭載される車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成機能と、
前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算機能と、
前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成し、前記第１の鍵により前記期待値を暗号化して第４の暗号化データを生成する暗号処理機能と、
前記車両インタフェースにより、前記第１の暗号化データ、前記第２の暗号化データ及び前記第４の暗号化データを前記車両に送信する送信機能と、
を実現させるためのコンピュータプログラム。
【請求項１９】
車両に搭載される車載コンピュータに、
自車載コンピュータの外部の装置とデータを送受するインタフェース部により鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第４の暗号化データを該取得した第１の鍵により復号して期待値を取得する暗号処理機能と、
該取得された第２の鍵を使用して自車載コンピュータが予め格納しているデータの測定値を計算し、該取得された期待値に基づいて該測定値を検証する測定機能と、
該測定値の検証結果を前記インタフェース部により送信する送信機能と、
を実現させるためのコンピュータプログラム。
【請求項２０】
車両とデータを送受する車両インタフェースを備える鍵生成装置のコンピュータに、
前記車両に搭載される車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成機能と、
前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算機能と、
前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成し、前記第１の鍵により前記期待値を暗号化して第４の暗号化データを生成する暗号処理機能と、
前記車両インタフェースにより、検証値、前記第１の暗号化データ、前記第２の暗号化データ及び前記第４の暗号化データを前記車両に送信する送信機能と、を実現させ、
前記車両インタフェースにより前記車両から受信した検証値を、前記車両に供給した検証値に基づいて検証する検証機能をさらに実現させるためのコンピュータプログラム。
【請求項２１】
車両に搭載される車載コンピュータに、
自車載コンピュータの外部の装置とデータを送受するインタフェース部により鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第４の暗号化データを該取得した第１の鍵により復号して期待値を取得する暗号処理機能と、
該取得された第２の鍵を使用して自車載コンピュータが予め格納しているデータの測定値を計算し、該取得された期待値に基づいて該測定値を検証する測定機能と、
該測定値の検証結果を前記インタフェース部により送信する送信機能と、を実現させ、
前記送信機能は、該測定値の検証が合格した場合には、前記インタフェース部により送信する測定値の検証結果に、前記インタフェース部により前記鍵生成装置から受信した検証値を含め、一方、該測定値の検証が不合格になった場合には、前記インタフェース部により送信する測定値の検証結果に、前記インタフェース部により前記鍵生成装置から受信した検証値を含めない、
コンピュータプログラム。
【請求項２２】
データ提供装置と、車両に搭載される車載コンピュータとを備え、
前記データ提供装置は、
前記車両とデータを送受する車両インタフェースと、
前記車載コンピュータに適用されるデータの期待値を計算する期待値計算部と、を備え、前記車両インタフェースにより、前記データ及び前記期待値を前記車両に送信し、
前記車載コンピュータは、
自車載コンピュータの外部の装置とデータを送受するインタフェース部と、
前記インタフェース部により前記データ提供装置から受信したデータの測定値を計算し、前記インタフェース部により前記データ提供装置から受信した期待値に基づいて該測定値を検証する測定部と、
を備え、該測定値の検証結果を前記インタフェース部により前記データ提供装置に送信する、
管理システム。
【請求項２３】
データ提供装置と、車両に搭載される車載コンピュータとを備える管理システムの管理方法であって、
前記データ提供装置が、前記車載コンピュータに適用されるデータの期待値を計算する期待値計算ステップと、
前記データ提供装置が、前記車両とデータを送受する車両インタフェースにより、前記データ及び前記期待値を前記車両に送信する提供ステップと、
前記車載コンピュータが、自車載コンピュータの外部の装置とデータを送受するインタフェース部により前記データ提供装置から受信したデータの測定値を計算し、前記インタフェース部により前記データ提供装置から受信した期待値に基づいて該測定値を検証する測定ステップと、
前記車載コンピュータが、該測定値の検証結果を前記インタフェース部により前記データ提供装置に送信する送信ステップと、
を含む管理方法。
【請求項２４】
車両とデータを送受する車両インタフェースを備えるデータ提供装置のコンピュータに、
前記車両に搭載される車載コンピュータに適用されるデータの期待値を計算する期待値計算機能と、
前記車両インタフェースにより前記データ及び前記期待値を前記車両に送信する送信機能と、
前記車両インタフェースにより、前記データの測定値の検証結果を前記車両から受信する受信機能と、
を実現させるためのコンピュータプログラム。
【請求項２５】
車両に搭載される車載コンピュータに、
自車載コンピュータの外部の装置とデータを送受するインタフェース部によりデータ提供装置から受信したデータの測定値を計算し、前記インタフェース部により前記データ提供装置から受信した期待値に基づいて該測定値を検証する測定機能と、
該測定値の検証結果を前記インタフェース部により前記データ提供装置に送信する送信機能と、
を実現させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、管理システム、鍵生成装置、車載コンピュータ、管理方法、及びコンピュータプログラムに関する。
【背景技術】
【０００２】
従来、自動車は、ＥＣＵ（Electronic Control Unit：電子制御装置）を有し、ＥＣＵによってエンジン制御等の機能を実現する。ＥＣＵは、コンピュータの一種であり、コンピュータプログラムによって所望の機能を実現する。複数のＥＣＵをＣＡＮ（Controller Area Network）に接続して構成される車載制御システムについてのセキュリティ技術が例えば非特許文献１に記載されている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】竹森敬祐、“セキュアエレメントを基点とした車載制御システムの保護  −要素技術の整理と考察−”、電子情報通信学会、信学技報、vol. 114、no. 508、pp. 73-78、2015年3月
【非特許文献２】日本工業規格、ＪＩＳＤ４９０１、“車両識別番号（ＶＩＮ）”
【非特許文献３】STMicroelectronics、“AN4240 Application note”、［平成２８年６月２８日検索］、インターネット＜ＵＲＬ：http://www.st.com/web/en/resource/technical/document/application_note/DM00075575.pdf＞
【発明の概要】
【発明が解決しようとする課題】
【０００４】
自動車の車載制御システムに適用されるＥＣＵの信頼性を向上させることが一つの課題であった。
【０００５】
本発明は、このような事情を考慮してなされたものであり、自動車等の車両に搭載されるＥＣＵ等の車載コンピュータの信頼性を向上させることができる管理システム、鍵生成装置、車載コンピュータ、管理方法、及びコンピュータプログラムを提供することを課題とする。
【課題を解決するための手段】
【０００６】
（１）本発明の一態様は、鍵生成装置と、車両に搭載される車載コンピュータとを備え、前記鍵生成装置は、前記車両とデータを送受する車両インタフェースと、前記車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成部と、前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成する暗号処理部と、前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算部と、前記車両インタフェースにより前記車両から受信した測定値を前記期待値に基づいて検証する検証部と、を備え、前記車両インタフェースにより、前記第１の暗号化データ及び前記第２の暗号化データを前記車両に送信し、前記車載コンピュータは、自車載コンピュータの外部の装置とデータを送受するインタフェース部と、前記インタフェース部により前記鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得する暗号処理部と、該取得された第２の鍵を使用して、自車載コンピュータが予め格納しているデータの測定値を計算する測定値計算部と、を備え、該測定値を前記インタフェース部により前記鍵生成装置に送信する、管理システムである。
（２）本発明の一態様は、上記（１）の管理システムにおいて、前記車載コンピュータのうちの第１の車載コンピュータは、前記車載コンピュータのうちの第２の車載コンピュータに、前記鍵生成装置から送信される第１の暗号化データ及び第２の暗号化データを中継する、管理システムである。
【０００７】
（３）本発明の一態様は、鍵生成装置と、車両に搭載される車載コンピュータとを備え、前記鍵生成装置は、前記車両とデータを送受する車両インタフェースと、前記車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成部と、前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算部と、前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成し、前記第１の鍵により前記期待値を暗号化して第４の暗号化データを生成する暗号処理部と、を備え、前記車両インタフェースにより、前記第１の暗号化データ、前記第２の暗号化データ及び前記第４の暗号化データを前記車両に送信し、前記車載コンピュータは、自車載コンピュータの外部の装置とデータを送受するインタフェース部と、前記インタフェース部により前記鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第４の暗号化データを該取得した第１の鍵により復号して期待値を取得する暗号処理部と、該取得された第２の鍵を使用して自車載コンピュータが予め格納しているデータの測定値を計算し、該取得された期待値に基づいて該測定値を検証する測定部と、を備え、該測定値の検証結果を前記インタフェース部により送信する、管理システムである。
（４）本発明の一態様は、上記（３）の管理システムにおいて、前記車載コンピュータのうちの第１の車載コンピュータは、前記車載コンピュータのうちの第２の車載コンピュータに、前記鍵生成装置から送信される第１の暗号化データ、第２の暗号化データ及び第４の暗号化データを中継する、管理システムである。
【０００８】
（５）本発明の一態様は、鍵生成装置と、車両に搭載される車載コンピュータとを備え、前記鍵生成装置は、前記車両とデータを送受する車両インタフェースと、前記車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成部と、前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算部と、前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成し、前記第１の鍵により前記期待値を暗号化して第４の暗号化データを生成する暗号処理部と、を備え、前記車両インタフェースにより、検証値、前記第１の暗号化データ、前記第２の暗号化データ及び前記第４の暗号化データを前記車両に送信し、前記車載コンピュータは、自車載コンピュータの外部の装置とデータを送受するインタフェース部と、前記インタフェース部により前記鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第４の暗号化データを該取得した第１の鍵により復号して期待値を取得する暗号処理部と、該取得された第２の鍵を使用して自車載コンピュータが予め格納しているデータの測定値を計算し、該取得された期待値に基づいて該測定値を検証する測定部と、を備え、該測定値の検証結果を前記インタフェース部により送信し、前記車載コンピュータは、該測定値の検証が合格した場合には、前記インタフェース部により送信する測定値の検証結果に、前記インタフェース部により前記鍵生成装置から受信した検証値を含め、一方、該測定値の検証が不合格になった場合には、前記インタフェース部により送信する測定値の検証結果に、前記インタフェース部により前記鍵生成装置から受信した検証値を含めず、前記鍵生成装置は、前記車両インタフェースにより前記車両から受信した検証値を、前記車両に供給した検証値に基づいて検証する検証部をさらに備える、管理システムである。
（６）本発明の一態様は、上記（５）の管理システムにおいて、前記車載コンピュータのうちの第１の車載コンピュータは、前記車載コンピュータのうちの第２の車載コンピュータに、前記鍵生成装置から送信される第１の暗号化データ、第２の暗号化データ及び第４の暗号化データを中継する、管理システムである。
【０００９】
（７）本発明の一態様は、車両とデータを送受する車両インタフェースと、前記車両に搭載される車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成部と、前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成する暗号処理部と、前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算部と、前記車両インタフェースにより前記車両から受信した測定値を前記期待値に基づいて検証する検証部と、を備え、前記車両インタフェースにより、前記第１の暗号化データ及び前記第２の暗号化データを前記車両に送信する、鍵生成装置である。
【００１０】
（８）本発明の一態様は、車両に搭載される車載コンピュータにおいて、自車載コンピュータの外部の装置とデータを送受するインタフェース部と、前記インタフェース部により鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得する暗号処理部と、該取得された第２の鍵を使用して、自車載コンピュータが予め格納しているデータの測定値を計算する測定値計算部と、を備え、該測定値を前記インタフェース部により前記鍵生成装置に送信する、車載コンピュータである。
【００１１】
（９）本発明の一態様は、車両とデータを送受する車両インタフェースと、前記車両に搭載される車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成部と、前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算部と、前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成し、前記第１の鍵により前記期待値を暗号化して第４の暗号化データを生成する暗号処理部と、を備え、前記車両インタフェースにより、前記第１の暗号化データ、前記第２の暗号化データ及び前記第４の暗号化データを前記車両に送信する、鍵生成装置である。
【００１２】
（１０）本発明の一態様は、車両に搭載される車載コンピュータにおいて、自車載コンピュータの外部の装置とデータを送受するインタフェース部と、前記インタフェース部により鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第４の暗号化データを該取得した第１の鍵により復号して期待値を取得する暗号処理部と、該取得された第２の鍵を使用して自車載コンピュータが予め格納しているデータの測定値を計算し、該取得された期待値に基づいて該測定値を検証する測定部と、を備え、該測定値の検証結果を前記インタフェース部により送信する、車載コンピュータである。
【００１３】
（１１）本発明の一態様は、車両とデータを送受する車両インタフェースと、前記車両に搭載される車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成部と、前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算部と、前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成し、前記第１の鍵により前記期待値を暗号化して第４の暗号化データを生成する暗号処理部と、を備え、前記車両インタフェースにより、検証値、前記第１の暗号化データ、前記第２の暗号化データ及び前記第４の暗号化データを前記車両に送信する鍵生成装置であり、前記鍵生成装置は、前記車両インタフェースにより前記車両から受信した検証値を、前記車両に供給した検証値に基づいて検証する検証部をさらに備える、鍵生成装置である。
【００１４】
（１２）本発明の一態様は、車両に搭載される車載コンピュータにおいて、自車載コンピュータの外部の装置とデータを送受するインタフェース部と、前記インタフェース部により鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第４の暗号化データを該取得した第１の鍵により復号して期待値を取得する暗号処理部と、該取得された第２の鍵を使用して自車載コンピュータが予め格納しているデータの測定値を計算し、該取得された期待値に基づいて該測定値を検証する測定部と、を備え、該測定値の検証結果を前記インタフェース部により送信し、前記車載コンピュータは、該測定値の検証が合格した場合には、前記インタフェース部により送信する測定値の検証結果に、前記インタフェース部により前記鍵生成装置から受信した検証値を含め、一方、該測定値の検証が不合格になった場合には、前記インタフェース部により送信する測定値の検証結果に、前記インタフェース部により前記鍵生成装置から受信した検証値を含めない、車載コンピュータである。
【００１５】
（１３）本発明の一態様は、鍵生成装置と、車両に搭載される車載コンピュータとを備える管理システムの管理方法であって、前記鍵生成装置が、前記車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成ステップと、前記鍵生成装置が、前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成する暗号処理ステップと、前記車載コンピュータが、自車載コンピュータの外部の装置とデータを送受するインタフェース部により前記鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得する暗号処理ステップと、前記車載コンピュータが、該取得された第２の鍵を使用して、自車載コンピュータが予め格納しているデータの測定値を計算する測定値計算ステップと、前記車載コンピュータが、該測定値を前記インタフェース部により前記鍵生成装置に送信する送信ステップと、前記鍵生成装置が、前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算ステップと、前記鍵生成装置が、前記車両とデータを送受する車両インタフェースにより前記車両から受信した測定値を前記期待値に基づいて検証する検証ステップと、を含む管理方法である。
【００１６】
（１４）本発明の一態様は、鍵生成装置と、車両に搭載される車載コンピュータとを備える管理システムの管理方法であって、前記鍵生成装置が、前記車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成ステップと、前記鍵生成装置が、前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算ステップと、前記鍵生成装置が、前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成し、前記第１の鍵により前記期待値を暗号化して第４の暗号化データを生成する暗号処理ステップと、前記車載コンピュータが、自車載コンピュータの外部の装置とデータを送受するインタフェース部により前記鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第４の暗号化データを該取得した第１の鍵により復号して期待値を取得する暗号処理ステップと、前記車載コンピュータが、該取得された第２の鍵を使用して自車載コンピュータが予め格納しているデータの測定値を計算し、該取得された期待値に基づいて該測定値を検証する測定ステップと、前記車載コンピュータが、該測定値の検証結果を前記インタフェース部により送信する送信ステップと、を含む管理方法である。
【００１７】
（１５）本発明の一態様は、鍵生成装置と、車両に搭載される車載コンピュータとを備える管理システムの管理方法であって、前記鍵生成装置が、前記車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成ステップと、前記鍵生成装置が、前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算ステップと、前記鍵生成装置が、前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成し、前記第１の鍵により前記期待値を暗号化して第４の暗号化データを生成する暗号処理ステップと、前記車載コンピュータが、自車載コンピュータの外部の装置とデータを送受するインタフェース部により前記鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第４の暗号化データを該取得した第１の鍵により復号して期待値を取得する暗号処理ステップと、前記車載コンピュータが、該取得された第２の鍵を使用して自車載コンピュータが予め格納しているデータの測定値を計算し、該取得された期待値に基づいて該測定値を検証する測定ステップと、前記車載コンピュータが、該測定値の検証が合格した場合には、前記インタフェース部により送信する測定値の検証結果に、前記インタフェース部により前記鍵生成装置から受信した検証値を含め、一方、該測定値の検証が不合格になった場合には、前記インタフェース部により送信する測定値の検証結果に、前記インタフェース部により前記鍵生成装置から受信した検証値を含めない送信準備ステップと、前記車載コンピュータが、前記インタフェース部により測定値の検証結果を送信する送信ステップと、前記鍵生成装置が、前記車両インタフェースにより前記車両から受信した検証値を、前記車両に供給した検証値に基づいて検証する検証ステップと、を含む管理方法である。
【００１８】
（１６）本発明の一態様は、車両とデータを送受する車両インタフェースを備える鍵生成装置のコンピュータに、前記車両に搭載される車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成機能と、前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成する暗号処理機能と、前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算機能と、前記車両インタフェースにより前記車両から受信した測定値を前記期待値に基づいて検証する検証機能と、前記車両インタフェースにより、前記第１の暗号化データ及び前記第２の暗号化データを前記車両に送信する送信機能と、を実現させるためのコンピュータプログラムである。
【００１９】
（１７）本発明の一態様は、車両に搭載される車載コンピュータに、自車載コンピュータの外部の装置とデータを送受するインタフェース部により鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得する暗号処理機能と、該取得された第２の鍵を使用して、自車載コンピュータが予め格納しているデータの測定値を計算する測定値計算機能と、該測定値を前記インタフェース部により前記鍵生成装置に送信する送信機能と、を実現させるためのコンピュータプログラムである。
【００２０】
（１８）本発明の一態様は、車両とデータを送受する車両インタフェースを備える鍵生成装置のコンピュータに、前記車両に搭載される車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成機能と、前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算機能と、前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成し、前記第１の鍵により前記期待値を暗号化して第４の暗号化データを生成する暗号処理機能と、前記車両インタフェースにより、前記第１の暗号化データ、前記第２の暗号化データ及び前記第４の暗号化データを前記車両に送信する送信機能と、を実現させるためのコンピュータプログラムである。
【００２１】
（１９）本発明の一態様は、車両に搭載される車載コンピュータに、自車載コンピュータの外部の装置とデータを送受するインタフェース部により前記鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第４の暗号化データを該取得した第１の鍵により復号して期待値を取得する暗号処理機能と、該取得された第２の鍵を使用して自車載コンピュータが予め格納しているデータの測定値を計算し、該取得された期待値に基づいて該測定値を検証する測定機能と、該測定値の検証結果を前記インタフェース部により送信する送信機能と、を実現させるためのコンピュータプログラムである。
【００２２】
（２０）本発明の一態様は、車両とデータを送受する車両インタフェースを備える鍵生成装置のコンピュータに、前記車両に搭載される車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成機能と、前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算機能と、前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成し、前記第１の鍵により前記期待値を暗号化して第４の暗号化データを生成する暗号処理機能と、前記車両インタフェースにより、検証値、前記第１の暗号化データ、前記第２の暗号化データ及び前記第４の暗号化データを前記車両に送信する送信機能と、を実現させ、前記車両インタフェースにより前記車両から受信した検証値を、前記車両に供給した検証値に基づいて検証する検証機能をさらに実現させるためのコンピュータプログラムである。
【００２３】
（２１）本発明の一態様は、車両に搭載される車載コンピュータに、自車載コンピュータの外部の装置とデータを送受するインタフェース部により鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第４の暗号化データを該取得した第１の鍵により復号して期待値を取得する暗号処理機能と、該取得された第２の鍵を使用して自車載コンピュータが予め格納しているデータの測定値を計算し、該取得された期待値に基づいて該測定値を検証する測定機能と、該測定値の検証結果を前記インタフェース部により送信する送信機能と、を実現させ、前記送信機能は、該測定値の検証が合格した場合には、前記インタフェース部により送信する測定値の検証結果に、前記インタフェース部により前記鍵生成装置から受信した検証値を含め、一方、該測定値の検証が不合格になった場合には、前記インタフェース部により送信する測定値の検証結果に、前記インタフェース部により前記鍵生成装置から受信した検証値を含めない、コンピュータプログラムである。
【００２４】
（２２）本発明の一態様は、データ提供装置と、車両に搭載される車載コンピュータとを備え、前記データ提供装置は、前記車両とデータを送受する車両インタフェースと、前記車載コンピュータに適用されるデータの期待値を計算する期待値計算部と、を備え、前記車両インタフェースにより、前記データ及び前記期待値を前記車両に送信し、前記車載コンピュータは、自車載コンピュータの外部の装置とデータを送受するインタフェース部と、前記インタフェース部により前記データ提供装置から受信したデータの測定値を計算し、前記インタフェース部により前記データ提供装置から受信した期待値に基づいて該測定値を検証する測定部と、を備え、該測定値の検証結果を前記インタフェース部により前記データ提供装置に送信する、管理システムである。
（２３）本発明の一態様は、データ提供装置と、車両に搭載される車載コンピュータとを備える管理システムの管理方法であって、前記データ提供装置が、前記車載コンピュータに適用されるデータの期待値を計算する期待値計算ステップと、前記データ提供装置が、前記車両とデータを送受する車両インタフェースにより、前記データ及び前記期待値を前記車両に送信する提供ステップと、前記車載コンピュータが、自車載コンピュータの外部の装置とデータを送受するインタフェース部により前記データ提供装置から受信したデータの測定値を計算し、前記インタフェース部により前記データ提供装置から受信した期待値に基づいて該測定値を検証する測定ステップと、前記車載コンピュータが、該測定値の検証結果を前記インタフェース部により前記データ提供装置に送信する送信ステップと、を含む管理方法である。
（２４）本発明の一態様は、車両とデータを送受する車両インタフェースを備えるデータ提供装置のコンピュータに、前記車両に搭載される車載コンピュータに適用されるデータの期待値を計算する期待値計算機能と、前記車両インタフェースにより前記データ及び前記期待値を前記車両に送信する送信機能と、前記車両インタフェースにより、前記データの測定値の検証結果を前記車両から受信する受信機能と、を実現させるためのコンピュータプログラムである。
（２５）本発明の一態様は、車両に搭載される車載コンピュータに、自車載コンピュータの外部の装置とデータを送受するインタフェース部によりデータ提供装置から受信したデータの測定値を計算し、前記インタフェース部により前記データ提供装置から受信した期待値に基づいて該測定値を検証する測定機能と、該測定値の検証結果を前記インタフェース部により前記データ提供装置に送信する送信機能と、を実現させるためのコンピュータプログラムである。
【発明の効果】
【００２５】
本発明によれば、自動車等の車両に搭載されるＥＣＵ等の車載コンピュータの信頼性を向上させることができるという効果が得られる。
【図面の簡単な説明】
【００２６】
【図１】一実施形態に係る管理システム及び自動車１００１の構成例を示す図である。
【図２】一実施形態に係る鍵生成装置１３００の構成例を示す図である。
【図３】一実施形態に係る第１のＥＣＵ１０１０の構成例を示す図である。
【図４】一実施形態に係る第２のＥＣＵ１０２０の構成例を示す図である。
【図５】一実施形態に係る管理方法の例１のシーケンス図である。
【図６】一実施形態に係る管理方法の例２のシーケンス図である。
【図７】一実施形態に係る管理方法の例３のシーケンス図である。
【図８】一実施形態に係る管理方法の例４のシーケンス図である。
【図９】一実施形態に係る管理方法の例５のシーケンス図である。
【図１０】一実施形態に係る管理方法の例６のシーケンス図である。
【図１１】一実施形態に係る管理システム及び自動車１００１の他の構成例を示す図である。
【図１２】一実施形態に係る管理システムの他の構成例を示す図である。
【図１３】一実施形態に係るサーバ装置２０００の構成例を示す図である。
【図１４】一実施形態に係るＥＣＵコードの提供手順の例を示すシーケンスチャートである。
【発明を実施するための形態】
【００２７】
以下、図面を参照し、本発明の実施形態について説明する。なお、以下に示す実施形態では、車両として自動車を例に挙げて説明する。
【００２８】
図１は、本実施形態に係る管理システム及び自動車１００１の構成例を示す図である。本実施形態では、車載コンピュータの一例として、自動車１００１に搭載されるＥＣＵ（電子制御装置）を挙げて説明する。
【００２９】
図１において、自動車１００１は、第１のＥＣＵ１０１０と複数の第２のＥＣＵ１０２０とを備える。第１のＥＣＵ１０１０及び第２のＥＣＵ１０２０は、自動車１００１に備わる車載コンピュータである。第１のＥＣＵ１０１０は、自動車１００１に搭載されたＥＣＵのうち、ゲートウェイ機能を有するＥＣＵである。第２のＥＣＵ１０２０は、自動車１００１に搭載されたＥＣＵのうち、エンジン制御等の機能を有するＥＣＵである。第２のＥＣＵ１０２０として、例えば、エンジン制御機能を有するＥＣＵ、ハンドル制御機能を有するＥＣＵ、ブレーキ制御機能を有するＥＣＵなどがある。
【００３０】
第１のＥＣＵ１０１０と複数の第２のＥＣＵ１０２０は、自動車１００１に備わるＣＡＮ（Controller Area Network）１０３０に接続される。ＣＡＮ１０３０は通信ネットワークである。ＣＡＮは車両に搭載される通信ネットワークの一つとして知られている。
【００３１】
第１のＥＣＵ１０１０は、ＣＡＮ１０３０を介して、各第２のＥＣＵ１０２０との間でデータを交換する。第２のＥＣＵ１０２０は、ＣＡＮ１０３０を介して、他の第２のＥＣＵ１０２０との間でデータを交換する。
【００３２】
なお、車両に搭載される通信ネットワークとして、ＣＡＮ以外の通信ネットワークを自動車１００１に備え、ＣＡＮ以外の通信ネットワークを介して、第１のＥＣＵ１０１０と第２のＥＣＵ１０２０との間のデータの交換、及び、第２のＥＣＵ１０２０同士の間のデータの交換が行われてもよい。例えば、ＬＩＮ（Local Interconnect Network）を自動車１００１に備えてもよい。また、ＣＡＮとＬＩＮとを自動車１００１に備えてもよい。また、自動車１００１において、ＬＩＮに接続する第２のＥＣＵ１０２０を備えてもよい。また、第１のＥＣＵ１０１０は、ＣＡＮとＬＩＮとに接続されてもよい。また、第１のＥＣＵ１０１０は、ＣＡＮを介して該ＣＡＮに接続される第２のＥＣＵ１０２０との間でデータを交換し、また、ＬＩＮを介して該ＬＩＮに接続される第２のＥＣＵ１０２０との間でデータを交換してもよい。また、第２のＥＣＵ１０２０同士が、ＬＩＮを介してデータを交換してもよい。
【００３３】
自動車１００１は診断ポート１０６０を備える。診断ポート１０６０として、例えばＯＢＤ（On-board Diagnostics）ポートを使用してもよい。診断ポート１０６０には、自動車１００１の外部の装置を接続可能である。診断ポート１０６０に接続可能な自動車１００１の外部の装置として、例えば、診断端末や図１に示される鍵生成装置１３００などがある。診断ポート１０６０は第１のＥＣＵ１０１０に接続される。第１のＥＣＵ１０１０と、診断ポート１０６０に接続された装置、例えば鍵生成装置１３００とは、診断ポート１０６０を介して、データを交換する。
【００３４】
自動車１００１はインフォテイメント（Infotainment）機器１０４０を備える。インフォテイメント機器１０４０として、例えば、ナビゲーション機能、位置情報サービス機能、音楽や動画などのマルチメディア再生機能、音声通信機能、データ通信機能、インターネット接続機能などを有するものが挙げられる。インフォテイメント機器１０４０は第１のＥＣＵ１０１０に接続される。第１のＥＣＵ１０１０は、インフォテイメント機器１０４０から入力された情報を第２のＥＣＵ１０２０へ送信する。
【００３５】
自動車１００１は、ＴＣＵ（Tele Communication Unit）１０５０を備える。ＴＣＵ１０５０は通信装置である。ＴＣＵ１０５０は通信モジュール１０５１を備える。通信モジュール１０５１は、無線通信ネットワークを利用して無線通信を行う。通信モジュール１０５１は、ＳＩＭ（Subscriber Identity Module）１０５２を備える。ＳＩＭ１０５２は、無線通信ネットワークを利用するための情報が書き込まれたＳＩＭである。通信モジュール１０５１は、ＳＩＭ１０５２を使用することにより該無線通信ネットワークに接続して無線通信を行うことができる。なお、ＳＩＭ１０５２として、ｅＳＩＭ（Embedded Subscriber Identity Module）を使用してもよい。
【００３６】
ＴＣＵ１０５０は第１のＥＣＵ１０１０に接続される。第１のＥＣＵ１０１０は、ＴＣＵ１０５０の通信モジュール１０５１とデータを交換する。
【００３７】
なお、図１の構成では第１のＥＣＵ１０１０とＴＣＵ１０５０を直接接続することにより第１のＥＣＵ１０１０と通信モジュール１０５１の間でデータを交換するが、これに限定されない。例えば、ＴＣＵ１０５０をインフォテイメント機器１０４０に接続し、第１のＥＣＵ１０１０が、インフォテイメント機器１０４０を介して、ＴＣＵ１０５０の通信モジュール１０５１とデータを交換してもよい。又は、ＴＣＵ１０５０を診断ポート１０６０に接続し、第１のＥＣＵ１０１０が、診断ポート１０６０を介して、該診断ポート１０６０に接続されたＴＣＵ１０５０の通信モジュール１０５１とデータを交換してもよい。又は、第１のＥＣＵ１０１０が、ＳＩＭ１０５２を含む通信モジュール１０５１を備えてもよい。第１のＥＣＵ１０１０がＳＩＭ１０５２を含む通信モジュール１０５１を備える場合には、自動車１００１はＴＣＵ１０５０を備えなくてもよい。
【００３８】
第１のＥＣＵ１０１０は、メイン演算器１０１１とＨＳＭ（Hardware Security Module）１０１２を備える。メイン演算器１０１１は、第１のＥＣＵ１０１０の機能を実現させるためのコンピュータプログラムを実行する。ＨＳＭ１０１２は暗号処理機能等を有する。ＨＳＭ１０１２は耐タンパー性（Tamper Resistant）を有する。ＨＳＭ１０１２はセキュアエレメント（Secure Element：SE）の例である。ＨＳＭ１０１２は、鍵等のデータを記憶する記憶部１０１３を備える。メイン演算器１０１１はＨＳＭ１０１２を使用する。
【００３９】
第２のＥＣＵ１０２０は、メイン演算器１０２１とＳＨＥ（Secure Hardware Extension）１０２２を備える。メイン演算器１０２１は、第２のＥＣＵ１０２０の機能を実現させるためのコンピュータプログラムを実行する。ＳＨＥ１０２２は暗号処理機能等を有する。ＳＨＥ１０２２は耐タンパー性を有する。ＳＨＥ１０２２はセキュアエレメントの例である。ＳＨＥ１０２２は、鍵等のデータを記憶する記憶部１０２３を備える。メイン演算器１０２１はＳＨＥ１０２２を使用する。
【００４０】
自動車１００１に備わる車載コンピュータシステム１００２は、第１のＥＣＵ１０１０と複数の第２のＥＣＵ１０２０とがＣＡＮ１０３０に接続されて構成される。第１のＥＣＵ１０１０は、ゲートウェイ機能を有し、車載コンピュータシステム１００２の内部と外部の間の通信を監視する。本実施形態において、車載コンピュータシステム１００２は、自動車１００１の車載制御システムとして機能する。なお、第１のＥＣＵ１０１０がゲートウェイ機能を有さないように構成してもよい。
【００４１】
以下の説明において、第１のＥＣＵ１０１０と第２のＥＣＵ１０２０とを特に区別しないときは単にＥＣＵと称する。
【００４２】
図２は、鍵生成装置１３００の構成例を示す図である。図２において、鍵生成装置１３００は、車両インタフェース１１と記憶部１２と期待値計算部１３と検証部１４と鍵生成部１５と暗号処理部１６とを備える。
【００４３】
車両インタフェース１１は、自動車１００１とデータを送受するインタフェースである。本実施形態では、車両インタフェース１１は、診断ポート１０６０に接続し、診断ポート１０６０を介してデータを送受する。なお、車両インタフェース１１として、診断ポート１０６０のインタフェース以外のインタフェースを備えてもよい。例えば、車両インタフェース１１として、通信モジュールを備え、自動車１００１の通信モジュール１０５１と無線通信を行ってもよい。また、例えば、車両インタフェース１１として、ＣＡＮインタフェースを備え、自動車１００１のＣＡＮ１０３０に接続し、ＣＡＮ１０３０を介してデータを送受してもよい。
【００４４】
記憶部１２は、鍵等のデータを記憶する。期待値計算部１３は、ＥＣＵが予め格納しているデータの期待値を計算する。ＥＣＵが予め格納しているデータとして、例えば、ＥＣＵコード（ECU code）が挙げられる。ＥＣＵコードは、ＥＣＵに適用されるデータの例である。ＥＣＵコードは、ＥＣＵに予めインストールされる初期プログラム等のコンピュータプログラムであってもよく、又は、ＥＣＵに予め設定される初期パラメータ設定値などの設定データであってもよい。
【００４５】
検証部１４は、ＥＣＵの測定値の検証に係る処理を行う。例えば、検証部１４は、期待値計算部１３が計算した期待値に基づいて、ＥＣＵの測定値を検証する。鍵生成部１５は、ＥＣＵの鍵を生成する。暗号処理部１６は、データの暗号化及び暗号化データの復号を行う。
【００４６】
鍵生成装置１３００の機能は、該鍵生成装置１３００が備えるＣＰＵ（Central Processing Unit：中央演算処理装置）がコンピュータプログラムを実行することにより実現される。なお、鍵生成装置１３００として、汎用のコンピュータ装置を使用して構成してもよく、又は、専用のハードウェア装置として構成してもよい。
【００４７】
図３は、第１のＥＣＵ１０１０の構成例を示す図である。図３において、第１のＥＣＵ１０１０は、メイン演算器１０１１とＨＳＭ１０１２とインタフェース部２０とを備える。メイン演算器１０１１は、制御部２１と記憶部２２とを備える。ＨＳＭ１０１２は、記憶部１０１３と測定値計算部３１と暗号処理部３２と測定部３３と鍵生成部３４とを備える。
【００４８】
インタフェース部２０は、自第１のＥＣＵ１０１０の外部の装置とデータを送受する。インタフェース部２０は、ＣＡＮ１０３０を介してデータを送受するインタフェースと、インフォテイメント機器１０４０とデータを送受するインタフェースと、ＴＣＵ１０５０とデータを送受するインタフェースと、診断ポート１０６０を介してデータを送受するインタフェースとを備える。メイン演算器１０１１は、インタフェース部２０を介して、第１のＥＣＵ１０１０以外の他の装置とデータの送受を行う。
【００４９】
制御部２１は、第１のＥＣＵ１０１０の制御を行う。記憶部２２は、データを記憶する。記憶部１０１３は、鍵等のデータを記憶する。測定値計算部３１は、ＥＣＵコード等のデータの測定値を計算する。暗号処理部３２は、データの暗号化及び暗号化データの復号を行う。測定部３３は、ＥＣＵコード等のデータの測定値を計算し、該測定値を期待値に基づいて検証する。鍵生成部３４は、自動車１００１内部で使用される鍵（以下、車内鍵と称する）を生成する。
【００５０】
図４は、第２のＥＣＵ１０２０の構成例を示す図である。図４において、第２のＥＣＵ１０２０は、メイン演算器１０２１とＳＨＥ１０２２とインタフェース部４０とを備える。メイン演算器１０２１は、制御部４１と記憶部４２とを備える。ＳＨＥ１０２２は、記憶部１０２３と測定値計算部５１と暗号処理部５２と測定部５３とを備える。
【００５１】
インタフェース部４０は、自第２のＥＣＵ１０２０の外部の装置とデータを送受する。インタフェース部４０は、ＣＡＮ１０３０を介してデータを送受するインタフェースを備える。メイン演算器１０２１は、インタフェース部４０を介して、自第２のＥＣＵ１０２０以外の他の装置とデータの送受を行う。
【００５２】
制御部４１は、第２のＥＣＵ１０２０の制御を行う。記憶部４２は、データを記憶する。記憶部１０２３は、鍵等のデータを記憶する。測定値計算部５１は、ＥＣＵコード等のデータの測定値を計算する。暗号処理部５２は、データの暗号化及び暗号化データの復号を行う。測定部５３は、ＥＣＵコード等のデータの測定値を計算し、該測定値を期待値に基づいて検証する。
【００５３】
なお、本実施形態では、第１のＥＣＵ１０１０にＨＳＭを使用しているが、第１のＥＣＵ１０１０においてＨＳＭの代わりにＳＨＥを使用してもよい。なお、ＳＨＥについては、例えば非特許文献３に記載されている。
【００５４】
［ＥＣＵ識別子の構成例］
本実施形態に係るＥＣＵ識別子の構成例１、構成例１を説明する。ＥＣＵ識別子は、ＥＣＵを識別する情報である。
【００５５】
＜ＥＣＵ識別子の構成例１＞
ＥＣＵ識別子の構成例１では、ＥＣＵ識別子のビット長を６４ビット以内にする。このＥＣＵ識別子のビットの内訳の例を以下に示す。
・ＥＣＵベンダー識別子：１６ビット
・ＥＣＵ機種識別子：１６ビット
・シリアル番号：３２ビット
【００５６】
＜ＥＣＵ識別子の構成例２＞
ＥＣＵ識別子の構成例２では、ＥＣＵ識別子のビット長を１２８ビット以内にする。このＥＣＵ識別子のビットの内訳の例１、例２、例３を以下に示す。
（例１）
・車両識別番号（ＶＩＮ：Vehicle Identification Number）：１０２ビット（１７ケタの英数字、１文字は６ビット）
・ＣＡＮ識別子：１１ビット
ＣＡＮ識別子の１１ビットは、ＣＡＮの標準フォーマットのデータフレーム中の１１ビット長のＩＤフィールドに格納されるＣＡＮ識別子である。又は、ＣＡＮ識別子の１１ビットは、ＣＡＮの拡張フォーマットのデータフレーム中の１１ビット長のベースＩＤ（Base ID）フィールドに格納されるＣＡＮ識別子である。なお、車両識別番号（ＶＩＮ）については、例えば非特許文献２に記載されている。
【００５７】
（例２）
・車両識別番号（ＶＩＮ）の製造業者識別コード（ＷＭＩ：World Manufacturer Identifier）以外の残りの部分：８４ビット（１４ケタの英数字、１文字６ビット）
・ＣＡＮ識別子：２９ビット
ＣＡＮ識別子の２９ビットは、ＣＡＮの拡張フォーマットのデータフレーム中の１１ビット長のベースＩＤフィールドに格納されるＣＡＮ識別子部分「１１ビット」と、１８ビット長の拡張ＩＤ（Extend ID）フィールドに格納されるＣＡＮ識別子部分「１８ビット」との合計である。
【００５８】
（例３）
・ＳＨＥの識別子（ＵＩＤ）：１２０ビット
この例３では、ＥＣＵに備わるＳＨＥのＵＩＤを当該ＥＣＵのＥＣＵ識別子に使用する。
【００５９】
車両識別番号（ＶＩＮ）、ＣＡＮ識別子及びＳＨＥのＵＩＤは、例えば自動車１００１の製造工場において事前に取得される。
【００６０】
［管理方法の例］
次に本実施形態に係る管理方法の例を説明する。
【００６１】
＜管理方法の例１＞
図５は、本実施形態に係る管理方法の例１のシーケンス図である。図５を参照して本実施形態に係る管理方法の例１を説明する。鍵生成装置１３００は、例えば、自動車１００１の製造工場に設けられている。鍵生成装置１３００の車両インタフェース１１は、該製造工場で製造中の自動車１００１の診断ポート１０６０に接続される。
【００６２】
図５には、説明の便宜上、自動車１００１に搭載される第２のＥＣＵ（ｎ）１０２０のうち、１個の第２のＥＣＵ（１）１０２０のみを示している。但し、ｎは１からＮまでの整数である。Ｎは、自動車１００１に搭載されている第２のＥＣＵ１０２０のうち、鍵配信対象の第２のＥＣＵ１０２０の個数である。
【００６３】
鍵生成装置１３００は、マスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔと、ＥＣＵのＥＣＵコードと、初期Ｒｏｏｔ鍵Ｋｒｉとを予め記憶部１２に格納している。ＥＣＵのＥＣＵコードは、ＥＣＵの初期ＥＣＵコードを含む。
【００６４】
第１のＥＣＵ１０１０のＨＳＭ１０１２は、初期Ｒｏｏｔ鍵Ｋｒｉ及び初期署名鍵Ｋｂｉを予め記憶部１０１３に格納している。初期Ｒｏｏｔ鍵Ｋｒｉ及び初期署名鍵Ｋｂｉは、例えば第１のＥＣＵ１０１０の製造時に、ＨＳＭ１０１２に書き込まれる。第２のＥＣＵ１０２０のＳＨＥ１０２２は、初期Ｒｏｏｔ鍵Ｋｒｉ及び初期署名鍵Ｋｂｉを予め記憶部１０２３に格納している。初期Ｒｏｏｔ鍵Ｋｒｉ及び初期署名鍵Ｋｂｉは、例えば第２のＥＣＵ１０２０の製造時に、ＳＨＥ１０２２に書き込まれる。初期Ｒｏｏｔ鍵Ｋｒｉ及び初期署名鍵Ｋｂｉは、新品のＥＣＵに格納される鍵である。
【００６５】
第１のＥＣＵ１０１０のメイン演算器１０１１は、初期ＥＣＵコードＥｃｉを予め記憶部２２に格納している。初期ＥＣＵコードＥｃｉは、例えば第１のＥＣＵ１０１０の製造時に、メイン演算器１０１１に書き込まれる。初期ＥＣＵコードＥｃｉは、新品の第１のＥＣＵ１０１０に格納されるＥＣＵコードである。第２のＥＣＵ（ｎ）１０２０のメイン演算器１０２１は、初期ＥＣＵコードＥｎｉを予め記憶部４２に格納している。初期ＥＣＵコードＥｎｉは、例えば第２のＥＣＵ（ｎ）１０２０の製造時に、メイン演算器１０２１に書き込まれる。初期ＥＣＵコードＥｎｉは、新品の第２のＥＣＵ（ｎ）１０２０に格納されるＥＣＵコードである。
【００６６】
以下、鍵生成装置１３００の車両インタフェース１１と自動車１００１の診断ポート１０６０とは接続されている。
【００６７】
（ステップＳ１）鍵生成装置１３００において、鍵生成部１５は、自動車１００１に搭載されているＥＣＵのＲｏｏｔ鍵と署名鍵とを生成する。本実施形態では、鍵生成部１５は、第１のＥＣＵ１０１０のＲｏｏｔ鍵Ｋｒｃ及び署名鍵Ｋｂｃと、Ｎ個の第２のＥＣＵ（ｎ）１０２０の各々のＲｏｏｔ鍵Ｋｒｎ及び署名鍵Ｋｂｎとを生成する。記憶部１２は、第１のＥＣＵ１０１０のＲｏｏｔ鍵Ｋｒｃ及び署名鍵Ｋｂｃと、Ｎ個の第２のＥＣＵ（ｎ）１０２０の各々のＲｏｏｔ鍵Ｋｒｎ及び署名鍵Ｋｂｎとを格納する。Ｒｏｏｔ鍵Ｋｒｃ及びＫｒｎは、第１の鍵に対応する。署名鍵Ｋｂｃ及びＫｂｎは、第２の鍵に対応する。
【００６８】
鍵生成部１５は、鍵生成装置１３００の記憶部１２に格納されているマスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔと、第１のＥＣＵ１０１０のＥＣＵ識別子ＥＣＵ＿ＩＤとから第１ダイジェスト値を算出する。第１ダイジェスト値は、第１のＥＣＵ１０１０のＲｏｏｔ鍵Ｋｒｃである。鍵生成部１５は、鍵生成装置１３００の記憶部１２に格納されているマスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔと、第１のＥＣＵ１０１０のＥＣＵ識別子ＥＣＵ＿ＩＤとから第２ダイジェスト値を算出する。第２ダイジェスト値は、第１のＥＣＵ１０１０の署名鍵Ｋｂｃである。第１ダイジェスト値の算出方法と、第２ダイジェスト値を算出方法とは異なる。よって、第１ダイジェスト値（第１のＥＣＵ１０１０のＲｏｏｔ鍵Ｋｒｃ）と第２ダイジェスト値（第１のＥＣＵ１０１０の署名鍵Ｋｂｃ）とは異なる。
【００６９】
鍵生成部１５は、鍵生成装置１３００の記憶部１２に格納されているマスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔと、第２のＥＣＵ（ｎ）１０２０のＥＣＵ識別子ＥＣＵ＿ＩＤとから第１ダイジェスト値を算出する。第１ダイジェスト値は、第２のＥＣＵ（ｎ）１０２０のＲｏｏｔ鍵Ｋｒｎである。鍵生成部１５は、鍵生成装置１３００の記憶部１２に格納されているマスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔと、第２のＥＣＵ（ｎ）１０２０のＥＣＵ識別子ＥＣＵ＿ＩＤとから第２ダイジェスト値を算出する。第２ダイジェスト値は、第２のＥＣＵ（ｎ）１０２０の署名鍵Ｋｂｎである。第１ダイジェスト値の算出方法と、第２ダイジェスト値の算出方法とは異なる。よって、第１ダイジェスト値（第２のＥＣＵ（ｎ）１０２０のＲｏｏｔ鍵Ｋｒｎ）と第２ダイジェスト値（第２のＥＣＵ（ｎ）１０２０の署名鍵Ｋｂｎ）とは異なる。
【００７０】
自動車１００１のＥＣＵのＥＣＵ識別子ＥＣＵ＿ＩＤは、上述のＥＣＵ識別子の構成例のいずれかによって生成される。鍵生成装置１３００が自動車１００１のＥＣＵのＥＣＵ識別子ＥＣＵ＿ＩＤを生成してもよく、又は、自動車１００１のＥＣＵのＥＣＵ識別子ＥＣＵ＿ＩＤが鍵生成装置１３００に入力されてもよい。
【００７１】
ダイジェスト値として、例えば、ハッシュ（hash）関数により算出される値や排他的論理和演算により算出される値などが挙げられる。
【００７２】
本実施形態に係る鍵（共通鍵）の生成方法の一例を次式に示す。
共通鍵＝ダイジェスト（Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔ、ＥＣＵ＿ＩＤ、Ｎｋ）
但し、Ｎｋは変数である。ダイジェスト（Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔ、ＥＣＵ＿ＩＤ、Ｎｋ）は、マスタ鍵Ｍａｓｔｅｒ＿ＳｅｃｒｅｔとＥＣＵ識別子ＥＣＵ＿ＩＤと変数Ｎｋとから生成されるダイジェスト値である。例えば、共通鍵は、マスタ鍵Ｍａｓｔｅｒ＿ＳｅｃｒｅｔとＥＣＵ識別子ＥＣＵ＿ＩＤと変数Ｎｋとを入力値に使用して算出されるハッシュ関数値である。変数Ｎｋの値が異なれば、ダイジェスト値の算出方法は異なる。変数Ｎｋの値を変えることによって、同じマスタ鍵Ｍａｓｔｅｒ＿ＳｅｃｒｅｔとＥＣＵ識別子ＥＣＵ＿ＩＤとから、異なる共通鍵を生成することができる。例えば、Ｒｏｏｔ鍵用の変数Ｎｋの値をＮｋ＿１とし、署名鍵用の変数Ｎｋの値をＮｋ＿２とする。この場合、同じマスタ鍵Ｍａｓｔｅｒ＿ＳｅｃｒｅｔとＥＣＵ識別子ＥＣＵ＿ＩＤとを使用して、
Ｒｏｏｔ鍵＝ダイジェスト（Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔ、ＥＣＵ＿ＩＤ、Ｎｋ＿１）、
署名鍵＝ダイジェスト（Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔ、ＥＣＵ＿ＩＤ、Ｎｋ＿２）、
により、Ｒｏｏｔ鍵と署名鍵とを異なる鍵として生成することができる。
【００７３】
本実施形態に係る鍵（共通鍵）の生成方法の他の例として、ＥＣＵのＲｏｏｔ鍵をハッシュ関数により算出される値とし、署名鍵を排他的論理和演算により算出される値としてもよい。又は、その逆、つまり、ＥＣＵのＲｏｏｔ鍵を排他的論理和演算により算出される値とし、署名鍵をハッシュ関数により算出される値としてもよい。
【００７４】
（ステップＳ２）鍵生成装置１３００の暗号処理部１６は、初期Ｒｏｏｔ鍵Ｋｒｉにより第１のＥＣＵ１０１０のＲｏｏｔ鍵Ｋｒｃを暗号化して第１の暗号化データＫｒｉ（Ｋｒｃ）を生成する。鍵生成装置１３００は、車両インタフェース１１により、第１の暗号化データＫｒｉ（Ｋｒｃ）を自動車１００１の第１のＥＣＵ１０１０に送信する。自動車１００１の第１のＥＣＵ１０１０は、インタフェース部２０により、鍵生成装置１３００から診断ポート１０６０を介して、第１の暗号化データＫｒｉ（Ｋｒｃ）を受信する。
【００７５】
（ステップＳ３）第１のＥＣＵ１０１０の制御部２１は、第１の暗号化データＫｒｉ（Ｋｒｃ）をＨＳＭ１０１２に渡す。ＨＳＭ１０１２の暗号処理部３２は、記憶部１０１３に格納している初期Ｒｏｏｔ鍵Ｋｒｉにより第１の暗号化データＫｒｉ（Ｋｒｃ）を復号して、Ｒｏｏｔ鍵Ｋｒｃを取得する。ＨＳＭ１０１２は、該取得したＲｏｏｔ鍵Ｋｒｃを記憶部１０１３に格納する。ＨＳＭ１０１２は、記憶部１０１３において、該取得したＲｏｏｔ鍵Ｋｒｃを初期Ｒｏｏｔ鍵Ｋｒｉに代えて格納してもよい。
【００７６】
（ステップＳ４）鍵生成装置１３００の暗号処理部１６は、第１のＥＣＵ１０１０のＲｏｏｔ鍵Ｋｒｃにより第１のＥＣＵ１０１０の署名鍵Ｋｂｃを暗号化して第２の暗号化データＫｒｃ（Ｋｂｃ）を生成する。鍵生成装置１３００は、車両インタフェース１１により、第２の暗号化データＫｒｃ（Ｋｂｃ）を自動車１００１の第１のＥＣＵ１０１０に送信する。自動車１００１の第１のＥＣＵ１０１０は、インタフェース部２０により、鍵生成装置１３００から診断ポート１０６０を介して、第２の暗号化データＫｒｃ（Ｋｂｃ）を受信する。
【００７７】
（ステップＳ５）第１のＥＣＵ１０１０の制御部２１は、第２の暗号化データＫｒｃ（Ｋｂｃ）をＨＳＭ１０１２に渡す。ＨＳＭ１０１２の暗号処理部３２は、記憶部１０１３に格納しているＲｏｏｔ鍵Ｋｒｃにより第２の暗号化データＫｒｃ（Ｋｂｃ）を復号して、署名鍵Ｋｂｃを取得する。ＨＳＭ１０１２は、該取得した署名鍵Ｋｂｃを記憶部１０１３に格納する。ＨＳＭ１０１２は、記憶部１０１３において、該取得した署名鍵Ｋｂｃを初期署名鍵Ｋｂｉに代えて格納してもよい。
【００７８】
（ステップＳ６）第１のＥＣＵ１０１０の制御部２１は、記憶部２２に格納している初期ＥＣＵコードＥｃｉをＨＳＭ１０１２に渡して、セキュアブート処理を実行させる。セキュアブート処理において、ＨＳＭ１０１２の測定値計算部３１は、記憶部１０１３に格納している署名鍵Ｋｂｃにより、初期ＥＣＵコードＥｃｉの測定値を計算する。本実施形態では、測定値の一例として、ＣＭＡＣ（Cipher-based Message Authentication Code）を使用する。よって、測定値計算部３１は、記憶部１０１３に格納している署名鍵Ｋｂｃにより、初期ＥＣＵコードＥｃｉのＣＭＡＣを計算する。この計算結果のＣＭＡＣを測定値Ｅｃｎ＿ａと称する。ＨＳＭ１０１２は、測定値Ｅｃｎ＿ａをセキュアブート処理で使用する期待値に設定する。該期待値「測定値Ｅｃｎ＿ａ」は記憶部１０１３に格納される。
【００７９】
（ステップＳ７）第１のＥＣＵ１０１０のＨＳＭ１０１２の暗号処理部３２は、記憶部１０１３に格納しているＲｏｏｔ鍵Ｋｒｃにより測定値Ｅｃｎ＿ａを暗号化して第３の暗号化データＫｒｃ（Ｅｃｎ＿ａ）を生成する。ＨＳＭ１０１２は、第３の暗号化データＫｒｃ（Ｅｃｎ＿ａ）を制御部２１に渡す。制御部２１は、インタフェース部２０により、第３の暗号化データＫｒｃ（Ｅｃｎ＿ａ）を、診断ポート１０６０を介して、鍵生成装置１３００に送信する。鍵生成装置１３００は、車両インタフェース１１により、自動車１００１の第１のＥＣＵ１０１０から診断ポート１０６０を介して、第３の暗号化データＫｒｃ（Ｅｃｎ＿ａ）を受信する。
【００８０】
（ステップＳ８）鍵生成装置１３００の暗号処理部１６は、第１のＥＣＵ１０１０のＲｏｏｔ鍵Ｋｒｃにより第３の暗号化データＫｒｃ（Ｅｃｎ＿ａ）を復号して測定値Ｅｃｎ＿ａを取得する。期待値計算部１３は、第１のＥＣＵ１０１０の署名鍵Ｋｂｃにより、第１のＥＣＵ１０１０の初期ＥＣＵコードＥｃｉのＣＭＡＣを計算する。この計算結果のＣＭＡＣを期待値Ｅｃｎ＿ｂと称する。
なお、第１のＥＣＵ１０１０は、測定値Ｅｃｎ＿ａを暗号化しないでそのままのデータで鍵生成装置１３００に送信してもよい。
【００８１】
検証部１４は、測定値Ｅｃｎ＿ａと期待値Ｅｃｎ＿ｂとを比較し、両者が一致するか否かを判断する。この判断の結果、両者が一致する場合には測定値Ｅｃｎ＿ａの検証が合格である。測定値Ｅｃｎ＿ａの検証が合格である場合には、ステップＳ９に進む。一方、両者が一致しない場合には測定値Ｅｃｎ＿ａの検証が不合格である。測定値Ｅｃｎ＿ａの検証が不合格である場合には、図５の処理を終了する。また、測定値Ｅｃｎ＿ａの検証が不合格である場合には、鍵生成装置１３００は所定のエラー処理を実行してもよい。
【００８２】
（ステップＳ９）第１のＥＣＵ１０１０のＨＳＭ１０１２の鍵生成部３４は、車内鍵Ｋｖを生成する。記憶部１０１３は、車内鍵Ｋｖを格納する。
【００８３】
（ステップＳ１０）鍵生成装置１３００の暗号処理部１６は、初期Ｒｏｏｔ鍵Ｋｒｉにより第２のＥＣＵ（１）１０２０のＲｏｏｔ鍵Ｋｒ１を暗号化して第１の暗号化データＫｒｉ（Ｋｒ１）を生成する。鍵生成装置１３００は、車両インタフェース１１により、第１の暗号化データＫｒｉ（Ｋｒ１）を、自動車１００１の第１のＥＣＵ１０１０経由で第２のＥＣＵ（１）１０２０に送信する。自動車１００１の第１のＥＣＵ１０１０は、インタフェース部２０により、鍵生成装置１３００から診断ポート１０６０を介して、第１の暗号化データＫｒｉ（Ｋｒ１）を受信すると、該第１の暗号化データＫｒｉ（Ｋｒ１）を、インタフェース部２０により、ＣＡＮ１０３０を介して第２のＥＣＵ（１）１０２０に転送する。第２のＥＣＵ（１）１０２０は、インタフェース部４０により、第１のＥＣＵ１０１０からＣＡＮ１０３０を介して、第１の暗号化データＫｒｉ（Ｋｒ１）を受信する。
【００８４】
（ステップＳ１１）第２のＥＣＵ（１）１０２０の制御部４１は、第１の暗号化データＫｒｉ（Ｋｒ１）をＳＨＥ１０２２に渡す。ＳＨＥ１０２２の暗号処理部５２は、記憶部１０２３に格納している初期Ｒｏｏｔ鍵Ｋｒｉにより第１の暗号化データＫｒｉ（Ｋｒ１）を復号して、Ｒｏｏｔ鍵Ｋｒ１を取得する。ＳＨＥ１０２２は、該取得したＲｏｏｔ鍵Ｋｒ１を記憶部１０２３に格納する。ＳＨＥ１０２２は、記憶部１０２３において、該取得したＲｏｏｔ鍵Ｋｒ１を初期Ｒｏｏｔ鍵Ｋｒｉに代えて格納してもよい。
【００８５】
（ステップＳ１２）鍵生成装置１３００の暗号処理部１６は、第２のＥＣＵ（１）１０２０のＲｏｏｔ鍵Ｋｒ１により第２のＥＣＵ（１）１０２０の署名鍵Ｋｂ１を暗号化して第２の暗号化データＫｒ１（Ｋｂ１）を生成する。鍵生成装置１３００は、車両インタフェース１１により、第２の暗号化データＫｒ１（Ｋｂ１）を、自動車１００１の第１のＥＣＵ１０１０経由で第２のＥＣＵ（１）１０２０に送信する。自動車１００１の第１のＥＣＵ１０１０は、インタフェース部２０により、鍵生成装置１３００から診断ポート１０６０を介して、第２の暗号化データＫｒ１（Ｋｂ１）を受信すると、該第２の暗号化データＫｒ１（Ｋｂ１）を、インタフェース部２０により、ＣＡＮ１０３０を介して第２のＥＣＵ（１）１０２０に転送する。第２のＥＣＵ（１）１０２０は、インタフェース部４０により、第１のＥＣＵ１０１０からＣＡＮ１０３０を介して、第２の暗号化データＫｒ１（Ｋｂ１）を受信する。
【００８６】
（ステップＳ１３）第２のＥＣＵ（１）１０２０の制御部４１は、第２の暗号化データＫｒ１（Ｋｂ１）をＳＨＥ１０２２に渡す。ＳＨＥ１０２２の暗号処理部５２は、記憶部１０２３に格納しているＲｏｏｔ鍵Ｋｒ１により第２の暗号化データＫｒ１（Ｋｂ１）を復号して、署名鍵Ｋｂ１を取得する。ＳＨＥ１０２２は、該取得した署名鍵Ｋｂ１を記憶部１０２３に格納する。ＳＨＥ１０２２は、記憶部１０２３において、該取得した署名鍵Ｋｂ１を初期署名鍵Ｋｂｉに代えて格納してもよい。
【００８７】
（ステップＳ１４）第２のＥＣＵ（１）１０２０の制御部４１は、記憶部４２に格納している初期ＥＣＵコードＥ１ｉをＳＨＥ１０２２に渡して、セキュアブート処理を実行させる。セキュアブート処理において、ＳＨＥ１０２２の測定値計算部５１は、記憶部１０２３に格納している署名鍵Ｋｂ１により、初期ＥＣＵコードＥ１ｉの測定値を計算する。本実施形態では、測定値の一例として、ＣＭＡＣを使用する。よって、測定値計算部５１は、記憶部１０２３に格納している署名鍵Ｋｂ１により、初期ＥＣＵコードＥ１ｉのＣＭＡＣを計算する。この計算結果のＣＭＡＣを測定値Ｅ１ｎ＿ａと称する。ＳＨＥ１０２２は、測定値Ｅ１ｎ＿ａをセキュアブート処理で使用する期待値に設定する。該期待値「測定値Ｅ１ｎ＿ａ」は記憶部１０２３に格納される。
【００８８】
（ステップＳ１５）第２のＥＣＵ（１）１０２０のＳＨＥ１０２２の暗号処理部５２は、記憶部１０２３に格納しているＲｏｏｔ鍵Ｋｒ１により測定値Ｅ１ｎ＿ａを暗号化して第３の暗号化データＫｒ１（Ｅ１ｎ＿ａ）を生成する。ＳＨＥ１０２２は、第３の暗号化データＫｒ１（Ｅ１ｎ＿ａ）を制御部４１に渡す。制御部４１は、インタフェース部４０により、第３の暗号化データＫｒ１（Ｅ１ｎ＿ａ）を、ＣＡＮ１０３０を介して第１のＥＣＵ１０１０経由で鍵生成装置１３００に送信する。第１のＥＣＵ１０１０は、インタフェース部２０により、第２のＥＣＵ（１）１０２０からＣＡＮ１０３０を介して、第３の暗号化データＫｒ１（Ｅ１ｎ＿ａ）を受信すると、該第３の暗号化データＫｒ１（Ｅ１ｎ＿ａ）を、インタフェース部２０により、診断ポート１０６０を介して鍵生成装置１３００に転送する。鍵生成装置１３００は、車両インタフェース１１により、自動車１００１の第１のＥＣＵ１０１０から診断ポート１０６０を介して、第３の暗号化データＫｒ１（Ｅ１ｎ＿ａ）を受信する。
【００８９】
（ステップＳ１６）鍵生成装置１３００の暗号処理部１６は、第２のＥＣＵ（１）１０２０のＲｏｏｔ鍵Ｋｒ１により第３の暗号化データＫｒ１（Ｅ１ｎ＿ａ）を復号して測定値Ｅ１ｎ＿ａを取得する。期待値計算部１３は、第２のＥＣＵ（１）１０２０の署名鍵Ｋｂ１により、第２のＥＣＵ（１）１０２０の初期ＥＣＵコードＥ１ｉのＣＭＡＣを計算する。この計算結果のＣＭＡＣを期待値Ｅ１ｎ＿ｂと称する。
なお、第２のＥＣＵ（１）１０２０は、測定値Ｅ１ｎ＿ａを暗号化しないでそのままのデータで鍵生成装置１３００に送信してもよい。
【００９０】
検証部１４は、測定値Ｅ１ｎ＿ａと期待値Ｅ１ｎ＿ｂとを比較し、両者が一致するか否かを判断する。この判断の結果、両者が一致する場合には測定値Ｅ１ｎ＿ａの検証が合格である。測定値Ｅ１ｎ＿ａの検証が合格である場合には、ステップＳ１７に進む。一方、両者が一致しない場合には測定値Ｅ１ｎ＿ａの検証が不合格である。測定値Ｅ１ｎ＿ａの検証が不合格である場合には、第２のＥＣＵ（１）１０２０について図５の処理を終了する。よって、測定値Ｅ１ｎ＿ａの検証が不合格である場合には、第２のＥＣＵ（１）１０２０についてステップＳ１７は実行されない。また、測定値Ｅ１ｎ＿ａの検証が不合格である場合には、鍵生成装置１３００は所定のエラー処理を実行してもよい。
【００９１】
（ステップＳ１７）鍵生成装置１３００は、車両インタフェース１１により、車内鍵送付要求メッセージを自動車１００１の第１のＥＣＵ１０１０に送信する。この車内鍵送付要求メッセージは、測定値Ｅ１ｎ＿ａの検証が合格した第２のＥＣＵ（１）１０２０に車内鍵を送付することを要求するメッセージである。該車内鍵送付要求メッセージは、第２のＥＣＵ（１）１０２０のＲｏｏｔ鍵Ｋｒ１を含む。該Ｒｏｏｔ鍵Ｋｒ１は、第１のＥＣＵ１０１０のＲｏｏｔ鍵Ｋｒｃにより暗号化されて該車内鍵送付要求メッセージに格納されることが好ましい。自動車１００１の第１のＥＣＵ１０１０は、インタフェース部２０により、鍵生成装置１３００から診断ポート１０６０を介して、車内鍵送付要求メッセージを受信する。
【００９２】
（ステップＳ１８）第１のＥＣＵ１０１０の制御部２１は、車内鍵送付要求メッセージに含まれる第２のＥＣＵ（１）１０２０のＲｏｏｔ鍵Ｋｒ１をＨＳＭ１０１２に渡して、車内鍵Ｋｖの暗号化を実行させる。なお、車内鍵送付要求メッセージに含まれる第２のＥＣＵ（１）１０２０のＲｏｏｔ鍵Ｋｒ１が暗号化されている場合には、制御部２１は、該Ｒｏｏｔ鍵Ｋｒ１の暗号化データＫｒｃ（Ｋｒ１）をＨＳＭ１０１２に渡して、Ｒｏｏｔ鍵Ｋｒｃにより復号させることにより、第２のＥＣＵ（１）１０２０のＲｏｏｔ鍵Ｋｒ１を取得する。
【００９３】
ＨＳＭ１０１２の暗号処理部３２は、第２のＥＣＵ（１）１０２０のＲｏｏｔ鍵Ｋｒ１により車内鍵Ｋｖを暗号化して暗号化データＫｒ１（Ｋｖ）を生成する。ＨＳＭ１０１２は、暗号化データＫｒ１（Ｋｖ）を制御部２１に渡す。制御部２１は、インタフェース部２０により、暗号化データＫｒ１（Ｋｖ）を、ＣＡＮ１０３０を介して第２のＥＣＵ（１）１０２０に送信する。第２のＥＣＵ（１）１０２０は、インタフェース部４０により、第１のＥＣＵ１０１０からＣＡＮ１０３０を介して、暗号化データＫｒ１（Ｋｖ）を受信する。
【００９４】
（ステップＳ１９）第２のＥＣＵ（１）１０２０の制御部４１は、暗号化データＫｒ１（Ｋｖ）をＳＨＥ１０２２に渡す。ＳＨＥ１０２２の暗号処理部５２は、記憶部１０２３に格納しているＲｏｏｔ鍵Ｋｒ１により暗号化データＫｒ１（Ｋｖ）を復号して、車内鍵Ｋｖを取得する。ＳＨＥ１０２２は、該取得した車内鍵Ｋｖを記憶部１０２３に格納する。
【００９５】
上記ステップＳ１０からステップＳ１９までは、自動車１００１に搭載されている全ての第２のＥＣＵ（ｎ）１０２０に対して同様に実行される。
【００９６】
上述した管理方法の例１によれば、自動車１００１に搭載されているＥＣＵが算出したＥＣＵコードの測定値を、鍵生成装置１３００が期待値に基づいて検証することにより、自動車１００１に搭載されているＥＣＵの真贋判定を行う。これにより、自動車１００１に搭載されているＥＣＵの信頼性が向上する効果を奏する。
【００９７】
＜管理方法の例２＞
管理方法の例２は、上述した管理方法の例１の変形例である。図６は、本実施形態に係る管理方法の例２のシーケンス図である。図６において、図５の各部に対応する部分には同一の符号を付け、その説明を省略する。以下、図６を参照して、上述した管理方法の例１と異なる点を主に説明する。
【００９８】
鍵生成装置１３００の車両インタフェース１１と自動車１００１の診断ポート１０６０とは接続されている。ステップＳ１からステップＳ８までが実行される。ステップＳ１からステップＳ８までは、上述した図５に係る管理方法の例１と同じである。ステップＳ８において測定値Ｅｃｎ＿ａの検証が合格である場合には、ステップＳ２１に進む。一方、ステップＳ８において測定値Ｅｃｎ＿ａの検証が不合格である場合には、図６の処理を終了する。また、測定値Ｅｃｎ＿ａの検証が不合格である場合には、鍵生成装置１３００は所定のエラー処理を実行してもよい。
【００９９】
（ステップＳ２１）鍵生成装置１３００の暗号処理部１６は、第１のＥＣＵ１０１０のＲｏｏｔ鍵Ｋｒｃにより、Ｎ個の第２のＥＣＵ（ｎ）１０２０の各々のＲｏｏｔ鍵Ｋｒｎ及び署名鍵Ｋｂｎを各々に暗号化する。この暗号化によって、Ｎ個の第１の暗号化データＫｒｃ（Ｋｒ１）、Ｋｒｃ（Ｋｒ２）、・・・、Ｋｒｃ（ＫｒＮ）と、Ｎ個の第２の暗号化データＫｒｃ（Ｋｂ１）、Ｋｒｃ（Ｋｂ２）、・・・、Ｋｒｃ（ＫｂＮ）とが生成される。
【０１００】
鍵生成装置１３００は、車両インタフェース１１により、Ｎ個の第１の暗号化データＫｒｃ（Ｋｒ１）、Ｋｒｃ（Ｋｒ２）、・・・、Ｋｒｃ（ＫｒＮ）と、Ｎ個の第２の暗号化データＫｒｃ（Ｋｂ１）、Ｋｒｃ（Ｋｂ２）、・・・、Ｋｒｃ（ＫｂＮ）とを自動車１００１の第１のＥＣＵ１０１０に送信する。自動車１００１の第１のＥＣＵ１０１０は、インタフェース部２０により、鍵生成装置１３００から診断ポート１０６０を介して、Ｎ個の第１の暗号化データＫｒｃ（Ｋｒ１）、Ｋｒｃ（Ｋｒ２）、・・・、Ｋｒｃ（ＫｒＮ）と、Ｎ個の第２の暗号化データＫｒｃ（Ｋｂ１）、Ｋｒｃ（Ｋｂ２）、・・・、Ｋｒｃ（ＫｂＮ）とを受信する。
【０１０１】
（ステップＳ２２）第１のＥＣＵ１０１０の制御部２１は、Ｎ個の第１の暗号化データＫｒｃ（Ｋｒ１）、Ｋｒｃ（Ｋｒ２）、・・・、Ｋｒｃ（ＫｒＮ）と、Ｎ個の第２の暗号化データＫｒｃ（Ｋｂ１）、Ｋｒｃ（Ｋｂ２）、・・・、Ｋｒｃ（ＫｂＮ）とをＨＳＭ１０１２に渡す。ＨＳＭ１０１２の暗号処理部３２は、記憶部１０１３に格納しているＲｏｏｔ鍵Ｋｒｃにより、Ｎ個の第１の暗号化データＫｒｃ（Ｋｒ１）、Ｋｒｃ（Ｋｒ２）、・・・、Ｋｒｃ（ＫｒＮ）と、Ｎ個の第２の暗号化データＫｒｃ（Ｋｂ１）、Ｋｒｃ（Ｋｂ２）、・・・、Ｋｒｃ（ＫｂＮ）とを各々に復号する。この復号によって、Ｎ個のＲｏｏｔ鍵Ｋｒ１、Ｋｒ２、・・・、ＫｒＮと、Ｎ個の署名鍵Ｋｂ１、Ｋｂ２、・・・、ＫｂＮとが取得される。ＨＳＭ１０１２は、該取得したＮ個のＲｏｏｔ鍵Ｋｒ１、Ｋｒ２、・・・、ＫｒＮと、Ｎ個の署名鍵Ｋｂ１、Ｋｂ２、・・・、ＫｂＮとを記憶部１０１３に格納する。
【０１０２】
（ステップＳ２３）第１のＥＣＵ１０１０のＨＳＭ１０１２の鍵生成部３４は、車内鍵Ｋｖを生成する。記憶部１０１３は、車内鍵Ｋｖを格納する。
【０１０３】
（ステップＳ２４）第１のＥＣＵ１０１０のＨＳＭ１０１２の暗号処理部３２は、初期Ｒｏｏｔ鍵Ｋｒｉにより第２のＥＣＵ（１）１０２０のＲｏｏｔ鍵Ｋｒ１を暗号化して第１の暗号化データＫｒｉ（Ｋｒ１）を生成する。ＨＳＭ１０１２は、第１の暗号化データＫｒｉ（Ｋｒ１）を制御部２１に渡す。制御部２１は、インタフェース部２０により、第１の暗号化データＫｒｉ（Ｋｒ１）を、ＣＡＮ１０３０を介して第２のＥＣＵ（１）１０２０に送信する。第２のＥＣＵ（１）１０２０は、インタフェース部４０により、第１のＥＣＵ１０１０からＣＡＮ１０３０を介して、第１の暗号化データＫｒｉ（Ｋｒ１）を受信する。
【０１０４】
（ステップＳ２５）第２のＥＣＵ（１）１０２０の制御部４１は、第１の暗号化データＫｒｉ（Ｋｒ１）をＳＨＥ１０２２に渡す。ＳＨＥ１０２２の暗号処理部５２は、記憶部１０２３に格納している初期Ｒｏｏｔ鍵Ｋｒｉにより第１の暗号化データＫｒｉ（Ｋｒ１）を復号して、Ｒｏｏｔ鍵Ｋｒ１を取得する。ＳＨＥ１０２２は、該取得したＲｏｏｔ鍵Ｋｒ１を記憶部１０２３に格納する。ＳＨＥ１０２２は、記憶部１０２３において、該取得したＲｏｏｔ鍵Ｋｒ１を初期Ｒｏｏｔ鍵Ｋｒｉに代えて格納してもよい。
【０１０５】
（ステップＳ２６）第１のＥＣＵ１０１０のＨＳＭ１０１２の暗号処理部３２は、第２のＥＣＵ（１）１０２０のＲｏｏｔ鍵Ｋｒ１により第２のＥＣＵ（１）１０２０の署名鍵Ｋｂ１を暗号化して第２の暗号化データＫｒ１（Ｋｂ１）を生成する。ＨＳＭ１０１２は、第２の暗号化データＫｒ１（Ｋｂ１）を制御部２１に渡す。制御部２１は、インタフェース部２０により、第２の暗号化データＫｒ１（Ｋｂ１）を、ＣＡＮ１０３０を介して第２のＥＣＵ（１）１０２０に送信する。第２のＥＣＵ（１）１０２０は、インタフェース部４０により、第１のＥＣＵ１０１０からＣＡＮ１０３０を介して、第２の暗号化データＫｒ１（Ｋｂ１）を受信する。
【０１０６】
（ステップＳ２７）第２のＥＣＵ（１）１０２０の制御部４１は、第２の暗号化データＫｒ１（Ｋｂ１）をＳＨＥ１０２２に渡す。ＳＨＥ１０２２の暗号処理部５２は、記憶部１０２３に格納しているＲｏｏｔ鍵Ｋｒ１により第２の暗号化データＫｒ１（Ｋｂ１）を復号して、署名鍵Ｋｂ１を取得する。ＳＨＥ１０２２は、該取得した署名鍵Ｋｂ１を記憶部１０２３に格納する。ＳＨＥ１０２２は、記憶部１０２３において、該取得した署名鍵Ｋｂ１を初期署名鍵Ｋｂｉに代えて格納してもよい。
【０１０７】
次いでステップＳ１４からステップＳ１９までが実行される。ステップＳ１４からステップＳ１９までは、上述した図５に係る管理方法の例１と同じである。
【０１０８】
上記ステップＳ２４からステップＳ２７及びステップＳ１４からステップＳ１９までは、自動車１００１に搭載されている全ての第２のＥＣＵ（ｎ）１０２０に対して同様に実行される。
【０１０９】
なお、上記ステップＳ２２からステップＳ２７までは、自動車１００１内に閉じた処理である。このため、ステップＳ２２からステップＳ２７までは、鍵生成装置１３００の車両インタフェース１１と自動車１００１の診断ポート１０６０とは接続されていなくてもよい。
【０１１０】
上述した管理方法の例２によれば、管理方法の例１と同様に、自動車１００１に搭載されているＥＣＵが算出したＥＣＵコードの測定値を、鍵生成装置１３００が期待値に基づいて検証することにより、自動車１００１に搭載されているＥＣＵの真贋判定を行う。これにより、自動車１００１に搭載されているＥＣＵの信頼性が向上する効果を奏する。
【０１１１】
また、管理方法の例２によれば、第１のＥＣＵ１０１０は、第２のＥＣＵ（ｎ）１０２０に、鍵生成装置１３００から送信されるＮ個の第１の暗号化データＫｒｃ（Ｋｒ１）、Ｋｒｃ（Ｋｒ２）、・・・、Ｋｒｃ（ＫｒＮ）と、Ｎ個の第２の暗号化データＫｒｃ（Ｋｂ１）、Ｋｒｃ（Ｋｂ２）、・・・、Ｋｒｃ（ＫｂＮ）とを中継する機能（ステップＳ２２、Ｓ２４及びＳ２６に対応する機能）を有する。これにより、鍵生成装置１３００と自動車１００１とが接続される時間を、管理方法の例１よりも短縮できる。
【０１１２】
＜管理方法の例３＞
図７は、本実施形態に係る管理方法の例３のシーケンス図である。図７を参照して本実施形態に係る管理方法の例３を説明する。鍵生成装置１３００は、例えば、自動車１００１の製造工場に設けられている。鍵生成装置１３００の車両インタフェース１１は、該製造工場で製造中の自動車１００１の診断ポート１０６０に接続される。
【０１１３】
図７には、説明の便宜上、自動車１００１に搭載される第２のＥＣＵ（ｎ）１０２０のうち、１個の第２のＥＣＵ（１）１０２０のみを示している。但し、ｎは１からＮまでの整数である。Ｎは、自動車１００１に搭載されている第２のＥＣＵ１０２０のうち、鍵配信対象の第２のＥＣＵ１０２０の個数である。
【０１１４】
鍵生成装置１３００は、図５に係る管理方法の例１と同様に、マスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔと、ＥＣＵのＥＣＵコードと、初期Ｒｏｏｔ鍵Ｋｒｉとを予め記憶部１２に格納している。ＥＣＵのＥＣＵコードは、ＥＣＵの初期ＥＣＵコードを含む。
【０１１５】
第１のＥＣＵ１０１０のＨＳＭ１０１２は、図５に係る管理方法の例１と同様に、初期Ｒｏｏｔ鍵Ｋｒｉ及び初期署名鍵Ｋｂｉを予め記憶部１０１３に格納している。第２のＥＣＵ１０２０のＳＨＥ１０２２は、図５に係る管理方法の例１と同様に、初期Ｒｏｏｔ鍵Ｋｒｉ及び初期署名鍵Ｋｂｉを予め記憶部１０２３に格納している。
【０１１６】
第１のＥＣＵ１０１０のメイン演算器１０１１は、図５に係る管理方法の例１と同様に、初期ＥＣＵコードＥｃｉを予め記憶部２２に格納している。第２のＥＣＵ（ｎ）１０２０のメイン演算器１０２１は、図５に係る管理方法の例１と同様に、初期ＥＣＵコードＥｎｉを予め記憶部４２に格納している。
【０１１７】
以下、鍵生成装置１３００の車両インタフェース１１と自動車１００１の診断ポート１０６０とは接続されている。
【０１１８】
（ステップＳ３１）鍵生成装置１３００において、鍵生成部１５は、自動車１００１に搭載されているＥＣＵのＲｏｏｔ鍵と署名鍵とを生成する。本実施形態では、鍵生成部１５は、第１のＥＣＵ１０１０のＲｏｏｔ鍵Ｋｒｃ及び署名鍵Ｋｂｃと、Ｎ個の第２のＥＣＵ（ｎ）１０２０の各々のＲｏｏｔ鍵Ｋｒｎ及び署名鍵Ｋｂｎとを生成する。記憶部１２は、第１のＥＣＵ１０１０のＲｏｏｔ鍵Ｋｒｃ及び署名鍵Ｋｂｃと、Ｎ個の第２のＥＣＵ（ｎ）１０２０の各々のＲｏｏｔ鍵Ｋｒｎ及び署名鍵Ｋｂｎとを格納する。Ｒｏｏｔ鍵Ｋｒｃ及びＫｒｎは、第１の鍵に対応する。署名鍵Ｋｂｃ及びＫｂｎは、第２の鍵に対応する。Ｒｏｏｔ鍵Ｋｒｃ及びＫｒｎ、並びに、署名鍵Ｋｂｃ及びＫｂｎの生成方法は、図５に係る管理方法の例１のステップＳ１と同じである。
【０１１９】
期待値計算部１３は、第１のＥＣＵ１０１０の署名鍵Ｋｂｃにより、第１のＥＣＵ１０１０の初期ＥＣＵコードＥｃｉ（ＣＧＷコード）のＣＭＡＣを計算する。この計算結果のＣＭＡＣを期待値Ｅｃｎと称する。期待値計算部１３は、第２のＥＣＵ（ｎ）１０２０の署名鍵Ｋｂｎにより、第２のＥＣＵ（ｎ）１０２０の初期ＥＣＵコードＥｎｉ（ＥＣＵｎコード）のＣＭＡＣを計算する。この計算結果のＣＭＡＣを期待値Ｅｎｎと称する。これにより、第１のＥＣＵ１０１０の初期ＥＣＵコードＥｃｉ（ＣＧＷコード）についての期待値Ｅｃｎと、Ｎ個の第２のＥＣＵ（ｎ）１０２０の初期ＥＣＵコードＥｎｉ（ＥＣＵｎコード）についての各々の期待値Ｅ１ｎ、Ｅ２ｎ、・・・、ＥＮｎとが、期待値計算部１３によって生成された。記憶部１２は、第１のＥＣＵ１０１０の初期ＥＣＵコードＥｃｉ（ＣＧＷコード）についての期待値Ｅｃｎと、Ｎ個の第２のＥＣＵ（ｎ）１０２０の初期ＥＣＵコードＥｎｉ（ＥＣＵｎコード）についての各々の期待値Ｅ１ｎ、Ｅ２ｎ、・・・、ＥＮｎとを格納する。
【０１２０】
次いでステップＳ３２及びステップＳ３３が実行される。ステップＳ３２は、図５に係る管理方法の例１のステップＳ２と同じである。ステップＳ３３は、図５に係る管理方法の例１のステップＳ３と同じである。次いでステップＳ３４が実行される。
【０１２１】
（ステップＳ３４）鍵生成装置１３００の暗号処理部１６は、第１のＥＣＵ１０１０のＲｏｏｔ鍵Ｋｒｃにより第１のＥＣＵ１０１０の署名鍵Ｋｂｃ及び期待値Ｅｃｎを各々に暗号化して、第２の暗号化データＫｒｃ（Ｋｂｃ）及び第４の暗号化データＫｒｃ（Ｅｃｎ）を生成する。鍵生成装置１３００は、車両インタフェース１１により、第２の暗号化データＫｒｃ（Ｋｂｃ）及び第４の暗号化データＫｒｃ（Ｅｃｎ）を自動車１００１の第１のＥＣＵ１０１０に送信する。自動車１００１の第１のＥＣＵ１０１０は、インタフェース部２０により、鍵生成装置１３００から診断ポート１０６０を介して、第２の暗号化データＫｒｃ（Ｋｂｃ）及び第４の暗号化データＫｒｃ（Ｅｃｎ）を受信する。
【０１２２】
（ステップＳ３５）第１のＥＣＵ１０１０の制御部２１は、第２の暗号化データＫｒｃ（Ｋｂｃ）及び第４の暗号化データＫｒｃ（Ｅｃｎ）をＨＳＭ１０１２に渡す。ＨＳＭ１０１２の暗号処理部３２は、記憶部１０１３に格納しているＲｏｏｔ鍵Ｋｒｃにより第２の暗号化データＫｒｃ（Ｋｂｃ）及び第４の暗号化データＫｒｃ（Ｅｃｎ）を各々に復号して、署名鍵Ｋｂｃ及び期待値Ｅｃｎを取得する。ＨＳＭ１０１２は、該取得した署名鍵Ｋｂｃを記憶部１０１３に格納する。ＨＳＭ１０１２は、記憶部１０１３において、該取得した署名鍵Ｋｂｃを初期署名鍵Ｋｂｉに代えて格納してもよい。また、ＨＳＭ１０１２は、該取得した期待値Ｅｃｎをセキュアブート処理で使用する期待値に設定する。
【０１２３】
（ステップＳ３６）第１のＥＣＵ１０１０の制御部２１は、記憶部２２に格納している初期ＥＣＵコードＥｃｉをＨＳＭ１０１２に渡して、セキュアブート処理を実行させる。セキュアブート処理において、ＨＳＭ１０１２の測定部３３は、記憶部１０１３に格納している署名鍵Ｋｂｃにより、初期ＥＣＵコードＥｃｉの測定値を計算する。本実施形態では、測定値の一例として、ＣＭＡＣを使用する。よって、測定部３３は、記憶部１０１３に格納している署名鍵Ｋｂｃにより、初期ＥＣＵコードＥｃｉのＣＭＡＣを計算する。この計算結果のＣＭＡＣを測定値Ｅｃｎ＿ｘと称する。
【０１２４】
測定部３３は、測定値Ｅｃｎ＿ｘと期待値Ｅｃｎとを比較し、両者が一致するか否かを判断する。この判断の結果、両者が一致する場合には測定値Ｅｃｎ＿ｘの検証が合格である。一方、両者が一致しない場合には測定値Ｅｃｎ＿ｘの検証が不合格である。ＨＳＭ１０１２は、測定値Ｅｃｎ＿ｘの検証結果「合格又は不合格」を制御部２１に渡す。
【０１２５】
（ステップＳ３７）制御部２１は、インタフェース部２０により、セキュアブート結果として測定値Ｅｃｎ＿ｘの検証結果「合格又は不合格」を、診断ポート１０６０を介して、鍵生成装置１３００に送信する。鍵生成装置１３００は、車両インタフェース１１により、自動車１００１の第１のＥＣＵ１０１０から診断ポート１０６０を介して、セキュアブート結果「合格又は不合格」を受信する。
なお、第１のＥＣＵ１０１０は、セキュアブート結果としての測定値Ｅｃｎ＿ｘの検証結果「合格又は不合格」をＲｏｏｔ鍵Ｋｒｃにより暗号化して鍵生成装置１３００に送信してもよい。この場合、鍵生成装置１３００は、該暗号化されたセキュアブート結果「合格又は不合格」を受信して第１のＥＣＵ１０１０のＲｏｏｔ鍵Ｋｒｃにより復号する。
【０１２６】
鍵生成装置１３００が自動車１００１の第１のＥＣＵ１０１０から受信したセキュアブート結果「合格又は不合格」が「合格」である場合には、ステップＳ３８に進む。一方、該セキュアブート結果「合格又は不合格」が「不合格」である場合には、図７の処理を終了する。また、該セキュアブート結果「合格又は不合格」が「不合格」である場合には、鍵生成装置１３００は所定のエラー処理を実行してもよい。
【０１２７】
（ステップＳ３８）第１のＥＣＵ１０１０のＨＳＭ１０１２の鍵生成部３４は、車内鍵Ｋｖを生成する。記憶部１０１３は、車内鍵Ｋｖを格納する。
【０１２８】
次いでステップＳ３９及びステップＳ４０が実行される。ステップＳ３９は、図５に係る管理方法の例１のステップＳ１０と同じである。ステップＳ４０は、図５に係る管理方法の例１のステップＳ１１と同じである。次いでステップＳ４１が実行される。
【０１２９】
（ステップＳ４１）鍵生成装置１３００の暗号処理部１６は、第２のＥＣＵ（１）１０２０のＲｏｏｔ鍵Ｋｒ１により第２のＥＣＵ（１）１０２０の署名鍵Ｋｂ１及び期待値Ｅ１ｎを各々に暗号化して、第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）を生成する。鍵生成装置１３００は、車両インタフェース１１により、第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）を、自動車１００１の第１のＥＣＵ１０１０経由で第２のＥＣＵ（１）１０２０に送信する。自動車１００１の第１のＥＣＵ１０１０は、インタフェース部２０により、鍵生成装置１３００から診断ポート１０６０を介して、第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）を受信すると、該第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）を、インタフェース部２０により、ＣＡＮ１０３０を介して第２のＥＣＵ（１）１０２０に転送する。第２のＥＣＵ（１）１０２０は、インタフェース部４０により、第１のＥＣＵ１０１０からＣＡＮ１０３０を介して、第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）を受信する。
【０１３０】
（ステップＳ４２）第２のＥＣＵ（１）１０２０の制御部４１は、第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）をＳＨＥ１０２２に渡す。ＳＨＥ１０２２の暗号処理部５２は、記憶部１０２３に格納しているＲｏｏｔ鍵Ｋｒ１により第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）を各々に復号して、署名鍵Ｋｂ１及び期待値Ｅ１ｎを取得する。ＳＨＥ１０２２は、該取得した署名鍵Ｋｂ１を記憶部１０２３に格納する。ＳＨＥ１０２２は、記憶部１０２３において、該取得した署名鍵Ｋｂ１を初期署名鍵Ｋｂｉに代えて格納してもよい。また、ＳＨＥ１０２２は、該取得した期待値Ｅ１ｎをセキュアブート処理で使用する期待値に設定する。
【０１３１】
（ステップＳ４３）第２のＥＣＵ（１）１０２０の制御部４１は、記憶部４２に格納している初期ＥＣＵコードＥ１ｉをＳＨＥ１０２２に渡して、セキュアブート処理を実行させる。セキュアブート処理において、ＳＨＥ１０２２の測定部５３は、記憶部１０２３に格納している署名鍵Ｋｂ１により、初期ＥＣＵコードＥ１ｉの測定値を計算する。本実施形態では、測定値の一例として、ＣＭＡＣを使用する。よって、測定部５３は、記憶部１０２３に格納している署名鍵Ｋｂ１により、初期ＥＣＵコードＥ１ｉのＣＭＡＣを計算する。この計算結果のＣＭＡＣを測定値Ｅ１ｎ＿ｘと称する。
【０１３２】
測定部５３は、測定値Ｅ１ｎ＿ｘと期待値Ｅ１ｎとを比較し、両者が一致するか否かを判断する。この判断の結果、両者が一致する場合には測定値Ｅ１ｎ＿ｘの検証が合格である。一方、両者が一致しない場合には測定値Ｅ１ｎ＿ｘの検証が不合格である。ＳＨＥ１０２２は、測定値Ｅ１ｎ＿ｘの検証結果「合格又は不合格」を制御部４１に渡す。
【０１３３】
（ステップＳ４４）制御部４１は、インタフェース部４０により、セキュアブート結果として測定値Ｅ１ｎ＿ｘの検証結果「合格又は不合格」を、ＣＡＮ１０３０を介して第１のＥＣＵ１０１０経由で鍵生成装置１３００に送信する。第１のＥＣＵ１０１０は、インタフェース部２０により、第２のＥＣＵ（１）１０２０からＣＡＮ１０３０を介して、セキュアブート結果「合格又は不合格」を受信すると、該セキュアブート結果「合格又は不合格」を、インタフェース部２０により、診断ポート１０６０を介して鍵生成装置１３００に転送する。鍵生成装置１３００は、車両インタフェース１１により、自動車１００１の第１のＥＣＵ１０１０から診断ポート１０６０を介して、第２のＥＣＵ（１）１０２０のセキュアブート結果「合格又は不合格」を受信する。
なお、第２のＥＣＵ（１）１０２０は、セキュアブート結果としての測定値Ｅ１ｎ＿ｘの検証結果「合格又は不合格」をＲｏｏｔ鍵Ｋｒ１により暗号化して鍵生成装置１３００に送信してもよい。この場合、鍵生成装置１３００は、該暗号化されたセキュアブート結果「合格又は不合格」を受信して第２のＥＣＵ（１）１０２０のＲｏｏｔ鍵Ｋｒ１により復号する。
【０１３４】
鍵生成装置１３００が自動車１００１の第２のＥＣＵ（１）１０２０から受信したセキュアブート結果「合格又は不合格」が「合格」である場合には、ステップＳ４５に進む。一方、該セキュアブート結果「合格又は不合格」が不合格である場合には、第２のＥＣＵ（１）１０２０について図７の処理を終了する。よって、第２のＥＣＵ（１）１０２０からのセキュアブート結果「合格又は不合格」が不合格である場合には、第２のＥＣＵ（１）１０２０についてステップＳ４５は実行されない。また、第２のＥＣＵ（１）１０２０からのセキュアブート結果「合格又は不合格」が不合格である場合には、鍵生成装置１３００は所定のエラー処理を実行してもよい。
【０１３５】
次いでステップＳ４５からステップＳ４７までが実行される。ステップＳ４５は、図５に係る管理方法の例１のステップＳ１７と同じである。ステップＳ４６は、図５に係る管理方法の例１のステップＳ１８と同じである。ステップＳ４７は、図５に係る管理方法の例１のステップＳ１９と同じである。
【０１３６】
上記ステップＳ３９からステップＳ４７までは、自動車１００１に搭載されている全ての第２のＥＣＵ（ｎ）１０２０に対して同様に実行される。
【０１３７】
上述した管理方法の例３によれば、自動車１００１に搭載されているＥＣＵのＥＣＵコードの期待値を鍵生成装置１３００が生成してＥＣＵに供給する。そして、ＥＣＵが、自己のＥＣＵコードの測定値を、鍵生成装置１３００から供給された期待値に基づいて検証し、この検証結果を鍵生成装置１３００に通知することにより、自動車１００１に搭載されているＥＣＵの真贋判定を行う。これにより、自動車１００１に搭載されているＥＣＵの信頼性が向上する効果を奏する。
【０１３８】
＜管理方法の例４＞
管理方法の例４は、上述した管理方法の例３の変形例である。図８は、本実施形態に係る管理方法の例４のシーケンス図である。図８において、図７の各部に対応する部分には同一の符号を付け、その説明を省略する。以下、図８を参照して、上述した管理方法の例３と異なる点を主に説明する。
【０１３９】
鍵生成装置１３００の車両インタフェース１１と自動車１００１の診断ポート１０６０とは接続されている。ステップＳ３１からステップＳ３８までが実行される。ステップＳ３１からステップＳ３８までは、上述した図７に係る管理方法の例３と同じである。鍵生成装置１３００が自動車１００１の第１のＥＣＵ１０１０から受信したセキュアブート結果「合格又は不合格」が「合格」である場合には、ステップＳ３８に次いでステップＳ５１が実行される。一方、該セキュアブート結果「合格又は不合格」が「不合格」である場合には、図８の処理を終了する。また、該セキュアブート結果「合格又は不合格」が「不合格」である場合には、鍵生成装置１３００は所定のエラー処理を実行してもよい。
【０１４０】
（ステップＳ５１）鍵生成装置１３００の暗号処理部１６は、第１のＥＣＵ１０１０のＲｏｏｔ鍵Ｋｒｃにより、Ｎ個の第２のＥＣＵ（ｎ）１０２０の各々のＲｏｏｔ鍵Ｋｒｎ、署名鍵Ｋｂｎ及び期待値Ｅｎｎを各々に暗号化する。この暗号化によって、Ｎ個の第１の暗号化データＫｒｃ（Ｋｒ１）、Ｋｒｃ（Ｋｒ２）、・・・、Ｋｒｃ（ＫｒＮ）と、Ｎ個の第２の暗号化データＫｒｃ（Ｋｂ１）、Ｋｒｃ（Ｋｂ２）、・・・、Ｋｒｃ（ＫｂＮ）と、Ｎ個の第４の暗号化データＫｒｃ（Ｅ１ｎ）、Ｋｒｃ（Ｅ２ｎ）、・・・、Ｋｒｃ（ＥＮｎ）が生成される。
【０１４１】
鍵生成装置１３００は、車両インタフェース１１により、Ｎ個の第１の暗号化データＫｒｃ（Ｋｒ１）、Ｋｒｃ（Ｋｒ２）、・・・、Ｋｒｃ（ＫｒＮ）と、Ｎ個の第２の暗号化データＫｒｃ（Ｋｂ１）、Ｋｒｃ（Ｋｂ２）、・・・、Ｋｒｃ（ＫｂＮ）と、Ｎ個の第４の暗号化データＫｒｃ（Ｅ１ｎ）、Ｋｒｃ（Ｅ２ｎ）、・・・、Ｋｒｃ（ＥＮｎ）とを自動車１００１の第１のＥＣＵ１０１０に送信する。自動車１００１の第１のＥＣＵ１０１０は、インタフェース部２０により、鍵生成装置１３００から診断ポート１０６０を介して、Ｎ個の第１の暗号化データＫｒｃ（Ｋｒ１）、Ｋｒｃ（Ｋｒ２）、・・・、Ｋｒｃ（ＫｒＮ）と、Ｎ個の第２の暗号化データＫｒｃ（Ｋｂ１）、Ｋｒｃ（Ｋｂ２）、・・・、Ｋｒｃ（ＫｂＮ）と、Ｎ個の第４の暗号化データＫｒｃ（Ｅ１ｎ）、Ｋｒｃ（Ｅ２ｎ）、・・・、Ｋｒｃ（ＥＮｎ）とを受信する。
【０１４２】
（ステップＳ５２）第１のＥＣＵ１０１０の制御部２１は、Ｎ個の第１の暗号化データＫｒｃ（Ｋｒ１）、Ｋｒｃ（Ｋｒ２）、・・・、Ｋｒｃ（ＫｒＮ）と、Ｎ個の第２の暗号化データＫｒｃ（Ｋｂ１）、Ｋｒｃ（Ｋｂ２）、・・・、Ｋｒｃ（ＫｂＮ）と、Ｎ個の第４の暗号化データＫｒｃ（Ｅ１ｎ）、Ｋｒｃ（Ｅ２ｎ）、・・・、Ｋｒｃ（ＥＮｎ）とをＨＳＭ１０１２に渡す。ＨＳＭ１０１２の暗号処理部３２は、記憶部１０１３に格納しているＲｏｏｔ鍵Ｋｒｃにより、Ｎ個の第１の暗号化データＫｒｃ（Ｋｒ１）、Ｋｒｃ（Ｋｒ２）、・・・、Ｋｒｃ（ＫｒＮ）と、Ｎ個の第２の暗号化データＫｒｃ（Ｋｂ１）、Ｋｒｃ（Ｋｂ２）、・・・、Ｋｒｃ（ＫｂＮ）と、Ｎ個の第４の暗号化データＫｒｃ（Ｅ１ｎ）、Ｋｒｃ（Ｅ２ｎ）、・・・、Ｋｒｃ（ＥＮｎ）とを各々に復号する。この復号によって、Ｎ個のＲｏｏｔ鍵Ｋｒ１、Ｋｒ２、・・・、ＫｒＮと、Ｎ個の署名鍵Ｋｂ１、Ｋｂ２、・・・、ＫｂＮと、Ｎ個の期待値Ｅ１ｎ、Ｅ２ｎ、・・・、ＥＮｎとが取得される。ＨＳＭ１０１２は、該取得したＮ個のＲｏｏｔ鍵Ｋｒ１、Ｋｒ２、・・・、ＫｒＮと、Ｎ個の署名鍵Ｋｂ１、Ｋｂ２、・・・、ＫｂＮと、Ｎ個の期待値Ｅ１ｎ、Ｅ２ｎ、・・・、ＥＮｎとを記憶部１０１３に格納する。
【０１４３】
次いでステップＳ５３及びステップＳ５４が実行される。ステップＳ５３は、図６に係る管理方法の例２のステップＳ２４と同じである。ステップＳ５４は、図６に係る管理方法の例２のステップＳ２５と同じである。次いでステップＳ５５が実行される。
【０１４４】
（ステップＳ５５）第１のＥＣＵ１０１０のＨＳＭ１０１２の暗号処理部３２は、第２のＥＣＵ（１）１０２０のＲｏｏｔ鍵Ｋｒ１により第２のＥＣＵ（１）１０２０の署名鍵Ｋｂ１及び期待値Ｅ１ｎを各々に暗号化して、第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）を生成する。ＨＳＭ１０１２は、第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）を制御部２１に渡す。制御部２１は、インタフェース部２０により、第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）を、ＣＡＮ１０３０を介して第２のＥＣＵ（１）１０２０に送信する。第２のＥＣＵ（１）１０２０は、インタフェース部４０により、第１のＥＣＵ１０１０からＣＡＮ１０３０を介して、第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）を受信する。
【０１４５】
（ステップＳ５６）第２のＥＣＵ（１）１０２０の制御部４１は、第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）をＳＨＥ１０２２に渡す。ＳＨＥ１０２２の暗号処理部５２は、記憶部１０２３に格納しているＲｏｏｔ鍵Ｋｒ１により第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）を各々に復号して、署名鍵Ｋｂ１及び期待値Ｅ１ｎを取得する。ＳＨＥ１０２２は、該取得した署名鍵Ｋｂ１を記憶部１０２３に格納する。ＳＨＥ１０２２は、記憶部１０２３において、該取得した署名鍵Ｋｂ１を初期署名鍵Ｋｂｉに代えて格納してもよい。また、ＳＨＥ１０２２は、該取得した期待値Ｅ１ｎをセキュアブート処理で使用する期待値に設定する。
【０１４６】
次いでステップＳ５７が実行される。ステップＳ５７は、図７に係る管理方法の例３のステップＳ４３と同じである。次いでステップＳ５８が実行される。
【０１４７】
（ステップＳ５８）第２のＥＣＵ（１）１０２０の制御部４１は、インタフェース部４０により、セキュアブート結果として測定値Ｅ１ｎ＿ｘの検証結果「合格又は不合格」を、ＣＡＮ１０３０を介して第１のＥＣＵ１０１０に送信する。第１のＥＣＵ１０１０は、インタフェース部２０により、第２のＥＣＵ（１）１０２０からＣＡＮ１０３０を介して、セキュアブート結果「合格又は不合格」を受信する。
【０１４８】
第１のＥＣＵ１０１０が第２のＥＣＵ（１）１０２０から受信したセキュアブート結果「合格又は不合格」が「合格」である場合には、ステップＳ５９に進む。一方、該セキュアブート結果「合格又は不合格」が不合格である場合には、第２のＥＣＵ（１）１０２０について図８の処理を終了する。よって、第２のＥＣＵ（１）１０２０からのセキュアブート結果「合格又は不合格」が不合格である場合には、第２のＥＣＵ（１）１０２０についてステップＳ５９は実行されない。また、第２のＥＣＵ（１）１０２０からのセキュアブート結果「合格又は不合格」が不合格である場合には、第１のＥＣＵ１０１０は所定のエラー処理を実行してもよい。
【０１４９】
（ステップＳ５９）第１のＥＣＵ１０１０のＨＳＭ１０１２の暗号処理部３２は、第２のＥＣＵ（１）１０２０のＲｏｏｔ鍵Ｋｒ１により車内鍵Ｋｖを暗号化して暗号化データＫｒ１（Ｋｖ）を生成する。ＨＳＭ１０１２は、暗号化データＫｒ１（Ｋｖ）を制御部２１に渡す。制御部２１は、インタフェース部２０により、暗号化データＫｒ１（Ｋｖ）を、ＣＡＮ１０３０を介して第２のＥＣＵ（１）１０２０に送信する。第２のＥＣＵ（１）１０２０は、インタフェース部４０により、第１のＥＣＵ１０１０からＣＡＮ１０３０を介して、暗号化データＫｒ１（Ｋｖ）を受信する。
【０１５０】
（ステップＳ６０）第２のＥＣＵ（１）１０２０の制御部４１は、暗号化データＫｒ１（Ｋｖ）をＳＨＥ１０２２に渡す。ＳＨＥ１０２２の暗号処理部５２は、記憶部１０２３に格納しているＲｏｏｔ鍵Ｋｒ１により暗号化データＫｒ１（Ｋｖ）を復号して、車内鍵Ｋｖを取得する。ＳＨＥ１０２２は、該取得した車内鍵Ｋｖを記憶部１０２３に格納する。
【０１５１】
上記ステップＳ５３からステップＳ６０までは、自動車１００１に搭載されている全ての第２のＥＣＵ（ｎ）１０２０に対して同様に実行される。
【０１５２】
なお、上記ステップＳ５３からステップＳ６０までは、自動車１００１内に閉じた処理である。このため、ステップＳ５３からステップＳ６０までは、鍵生成装置１３００の車両インタフェース１１と自動車１００１の診断ポート１０６０とは接続されていなくてもよい。
【０１５３】
上述した管理方法の例４によれば、管理方法の例３と同様に、自動車１００１に搭載されているＥＣＵのＥＣＵコードの期待値を鍵生成装置１３００が生成してＥＣＵに供給する。そして、ＥＣＵが、自己のＥＣＵコードの測定値を、鍵生成装置１３００から供給された期待値に基づいて検証する。そして、本管理方法の例４によれば、第１のＥＣＵ１０１０による検証結果を鍵生成装置１３００に通知することにより、自動車１００１に搭載されている第１のＥＣＵ１０１０の真贋判定を行う。また、第２のＥＣＵ（ｎ）１０２０による検証結果を第１のＥＣＵ１０１０に通知することにより、自動車１００１に搭載されている第２のＥＣＵ（ｎ）１０２０の真贋判定を行う。これにより、自動車１００１に搭載されているＥＣＵの信頼性が向上する効果を奏する。また、第１のＥＣＵ１０１０がＮ個の第２のＥＣＵ（ｎ）１０２０の真贋判定を行うことにより、鍵生成装置１３００と自動車１００１とが接続される時間を、管理方法の例３よりも短縮できる。
【０１５４】
また、管理方法の例４によれば、第１のＥＣＵ１０１０は、第２のＥＣＵ（ｎ）１０２０に、鍵生成装置１３００から送信されるＮ個の第１の暗号化データＫｒｃ（Ｋｒ１）、Ｋｒｃ（Ｋｒ２）、・・・、Ｋｒｃ（ＫｒＮ）と、Ｎ個の第２の暗号化データＫｒｃ（Ｋｂ１）、Ｋｒｃ（Ｋｂ２）、・・・、Ｋｒｃ（ＫｂＮ）と、Ｎ個の第４の暗号化データＫｒｃ（Ｅ１ｎ）、Ｋｒｃ（Ｅ２ｎ）、・・・、Ｋｒｃ（ＥＮｎ）とを中継する機能（ステップＳ５２、Ｓ５３及びＳ５５に対応する機能）を有する。これにより、鍵生成装置１３００と自動車１００１とが接続される時間を、管理方法の例３よりも短縮できる。
【０１５５】
＜管理方法の例５＞
図９は、本実施形態に係る管理方法の例５のシーケンス図である。図９を参照して本実施形態に係る管理方法の例５を説明する。鍵生成装置１３００は、例えば、自動車１００１の製造工場に設けられている。鍵生成装置１３００の車両インタフェース１１は、該製造工場で製造中の自動車１００１の診断ポート１０６０に接続される。
【０１５６】
図９には、説明の便宜上、自動車１００１に搭載される第２のＥＣＵ（ｎ）１０２０のうち、１個の第２のＥＣＵ（１）１０２０のみを示している。但し、ｎは１からＮまでの整数である。Ｎは、自動車１００１に搭載されている第２のＥＣＵ１０２０のうち、鍵配信対象の第２のＥＣＵ１０２０の個数である。
【０１５７】
鍵生成装置１３００は、図５に係る管理方法の例１と同様に、マスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔと、ＥＣＵのＥＣＵコードと、初期Ｒｏｏｔ鍵Ｋｒｉとを予め記憶部１２に格納している。ＥＣＵのＥＣＵコードは、ＥＣＵの初期ＥＣＵコードを含む。
【０１５８】
第１のＥＣＵ１０１０のＨＳＭ１０１２は、図５に係る管理方法の例１と同様に、初期Ｒｏｏｔ鍵Ｋｒｉ及び初期署名鍵Ｋｂｉを予め記憶部１０１３に格納している。本管理方法の例５では、第１のＥＣＵ１０１０のＨＳＭ１０１２は、さらに初期暗号鍵Ｋｅｃｉを予め記憶部１０１３に格納している。第２のＥＣＵ１０２０のＳＨＥ１０２２は、図５に係る管理方法の例１と同様に、初期Ｒｏｏｔ鍵Ｋｒｉ及び初期署名鍵Ｋｂｉを予め記憶部１０２３に格納している。本管理方法の例５では、第２のＥＣＵ１０２０のＳＨＥ１０２２は、さらに初期暗号鍵Ｋｅｅｉを予め記憶部１０２３に格納している。
【０１５９】
第１のＥＣＵ１０１０のメイン演算器１０１１は、図５に係る管理方法の例１と同様に、初期ＥＣＵコードＥｃｉを予め記憶部２２に格納している。第２のＥＣＵ（ｎ）１０２０のメイン演算器１０２１は、図５に係る管理方法の例１と同様に、初期ＥＣＵコードＥｎｉを予め記憶部４２に格納している。
【０１６０】
以下、鍵生成装置１３００の車両インタフェース１１と自動車１００１の診断ポート１０６０とは接続されている。
【０１６１】
（ステップＳ７１）鍵生成装置１３００において、鍵生成部１５は、自動車１００１に搭載されているＥＣＵのＲｏｏｔ鍵と署名鍵とを生成する。本実施形態では、鍵生成部１５は、第１のＥＣＵ１０１０のＲｏｏｔ鍵Ｋｒｃ及び署名鍵Ｋｂｃと、Ｎ個の第２のＥＣＵ（ｎ）１０２０の各々のＲｏｏｔ鍵Ｋｒｎ及び署名鍵Ｋｂｎとを生成する。記憶部１２は、第１のＥＣＵ１０１０のＲｏｏｔ鍵Ｋｒｃ及び署名鍵Ｋｂｃと、Ｎ個の第２のＥＣＵ（ｎ）１０２０の各々のＲｏｏｔ鍵Ｋｒｎ及び署名鍵Ｋｂｎとを格納する。Ｒｏｏｔ鍵Ｋｒｃ及びＫｒｎは、第１の鍵に対応する。署名鍵Ｋｂｃ及びＫｂｎは、第２の鍵に対応する。Ｒｏｏｔ鍵Ｋｒｃ及びＫｒｎ、並びに、署名鍵Ｋｂｃ及びＫｂｎの生成方法は、図５に係る管理方法の例１のステップＳ１と同じである。
【０１６２】
本管理方法の例５では、鍵生成部１５は、さらに、自動車１００１に搭載されているＥＣＵの暗号鍵を生成する。暗号鍵は、Ｒｏｏｔ鍵及び署名鍵とは異なるように生成される。例えば、Ｒｏｏｔ鍵用の変数Ｎｋの値をＮｋ＿１とし、署名鍵用の変数Ｎｋの値をＮｋ＿２とし、暗号鍵用の変数Ｎｋの値をＮｋ＿３とする。鍵生成部１５は、マスタ鍵Ｍａｓｔｅｒ＿ＳｅｃｒｅｔとＥＣＵのＥＣＵ識別子ＥＣＵ＿ＩＤとを使用して、
Ｒｏｏｔ鍵＝ダイジェスト（Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔ、ＥＣＵ＿ＩＤ、Ｎｋ＿１）、
署名鍵＝ダイジェスト（Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔ、ＥＣＵ＿ＩＤ、Ｎｋ＿２）、
暗号鍵＝ダイジェスト（Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔ、ＥＣＵ＿ＩＤ、Ｎｋ＿３）、
により、Ｒｏｏｔ鍵と署名鍵と暗号鍵とを異なる鍵として生成する。鍵生成部１５は、上述した第１のＥＣＵ１０１０のＲｏｏｔ鍵Ｋｒｃ及び署名鍵ＫｂｃとＮ個の第２のＥＣＵ（ｎ）１０２０の各々のＲｏｏｔ鍵Ｋｒｎ及び署名鍵Ｋｂｎとに加えて、さらに、第１のＥＣＵ１０１０の暗号鍵Ｋｅｃと、Ｎ個の第２のＥＣＵ（ｎ）１０２０の各々の暗号鍵Ｋｅｎとを生成する。記憶部１２は、上述した第１のＥＣＵ１０１０のＲｏｏｔ鍵Ｋｒｃ及び署名鍵ＫｂｃとＮ個の第２のＥＣＵ（ｎ）１０２０の各々のＲｏｏｔ鍵Ｋｒｎ及び署名鍵Ｋｂｎとに加えて、さらに、第１のＥＣＵ１０１０の暗号鍵Ｋｅｃと、Ｎ個の第２のＥＣＵ（ｎ）１０２０の各々の暗号鍵Ｋｅｎとを格納する。暗号鍵Ｋｅｃ及びＫｅｎは、第３の鍵に対応する。
【０１６３】
期待値計算部１３は、第１のＥＣＵ１０１０の署名鍵Ｋｂｃにより、第１のＥＣＵ１０１０の初期ＥＣＵコードＥｃｉ（ＣＧＷコード）のＣＭＡＣを計算する。この計算結果のＣＭＡＣを期待値Ｅｃｎと称する。期待値計算部１３は、第２のＥＣＵ（ｎ）１０２０の署名鍵Ｋｂｎにより、第２のＥＣＵ（ｎ）１０２０の初期ＥＣＵコードＥｎｉ（ＥＣＵｎコード）のＣＭＡＣを計算する。この計算結果のＣＭＡＣを期待値Ｅｎｎと称する。これにより、第１のＥＣＵ１０１０の初期ＥＣＵコードＥｃｉ（ＣＧＷコード）についての期待値Ｅｃｎと、Ｎ個の第２のＥＣＵ（ｎ）１０２０の初期ＥＣＵコードＥｎｉ（ＥＣＵｎコード）についての各々の期待値Ｅ１ｎ、Ｅ２ｎ、・・・、ＥＮｎとが、期待値計算部１３によって生成された。記憶部１２は、第１のＥＣＵ１０１０の初期ＥＣＵコードＥｃｉ（ＣＧＷコード）についての期待値Ｅｃｎと、Ｎ個の第２のＥＣＵ（ｎ）１０２０の初期ＥＣＵコードＥｎｉ（ＥＣＵｎコード）についての各々の期待値Ｅ１ｎ、Ｅ２ｎ、・・・、ＥＮｎとを格納する。
【０１６４】
次いでステップＳ７２及びステップＳ７３が実行される。ステップＳ７２は、図５に係る管理方法の例１のステップＳ２と同じである。ステップＳ７３は、図５に係る管理方法の例１のステップＳ３と同じである。次いでステップＳ７４が実行される。
【０１６５】
（ステップＳ７４）鍵生成装置１３００の暗号処理部１６は、第１のＥＣＵ１０１０のＲｏｏｔ鍵Ｋｒｃにより第１のＥＣＵ１０１０の暗号鍵Ｋｅｃを暗号化して、第５の暗号化データＫｒｃ（Ｋｅｃ）を生成する。検証部１４は、乱数Ｎｏｎｃｅを発生させる。記憶部１２は、該乱数Ｎｏｎｃｅを格納する。鍵生成装置１３００は、車両インタフェース１１により、第５の暗号化データＫｒｃ（Ｋｅｃ）及び乱数Ｎｏｎｃｅを自動車１００１の第１のＥＣＵ１０１０に送信する。自動車１００１の第１のＥＣＵ１０１０は、インタフェース部２０により、鍵生成装置１３００から診断ポート１０６０を介して、第５の暗号化データＫｒｃ（Ｋｅｃ）及び乱数Ｎｏｎｃｅを受信する。
【０１６６】
（ステップＳ７５）第１のＥＣＵ１０１０の制御部２１は、第５の暗号化データＫｒｃ（Ｋｅｃ）をＨＳＭ１０１２に渡す。ＨＳＭ１０１２の暗号処理部３２は、記憶部１０１３に格納しているＲｏｏｔ鍵Ｋｒｃにより第５の暗号化データＫｒｃ（Ｋｅｃ）を復号して、暗号鍵Ｋｅｃを取得する。ＨＳＭ１０１２は、該取得した暗号鍵Ｋｅｃを記憶部１０１３に格納する。ＨＳＭ１０１２は、記憶部１０１３において、該取得した暗号鍵Ｋｅｃを初期暗号鍵Ｋｅｃｉに代えて格納してもよい。本実施形態では、暗号鍵Ｋｅｃは、ＨＳＭ１０１２が実行するセキュアブート処理において測定値の検証が合格した場合に使用することができる暗号鍵として設定される。したがって、暗号鍵Ｋｅｃは、ＨＳＭ１０１２が実行するセキュアブート処理において測定値の検証が不合格になった場合には使用することができない。
【０１６７】
記憶部２２は、乱数Ｎｏｎｃｅを格納する。乱数Ｎｏｎｃｅの格納場所は、記憶部２２の記憶領域のうち、セキュアブートの測定対象外の不揮発性記憶領域である。
【０１６８】
（ステップＳ７６）鍵生成装置１３００の暗号処理部１６は、第１のＥＣＵ１０１０のＲｏｏｔ鍵Ｋｒｃにより第１のＥＣＵ１０１０の署名鍵Ｋｂｃ及び期待値Ｅｃｎを各々に暗号化して、第２の暗号化データＫｒｃ（Ｋｂｃ）及び第４の暗号化データＫｒｃ（Ｅｃｎ）を生成する。鍵生成装置１３００は、車両インタフェース１１により、第２の暗号化データＫｒｃ（Ｋｂｃ）及び第４の暗号化データＫｒｃ（Ｅｃｎ）を自動車１００１の第１のＥＣＵ１０１０に送信する。自動車１００１の第１のＥＣＵ１０１０は、インタフェース部２０により、鍵生成装置１３００から診断ポート１０６０を介して、第２の暗号化データＫｒｃ（Ｋｂｃ）及び第４の暗号化データＫｒｃ（Ｅｃｎ）を受信する。
【０１６９】
（ステップＳ７７）第１のＥＣＵ１０１０の制御部２１は、第２の暗号化データＫｒｃ（Ｋｂｃ）及び第４の暗号化データＫｒｃ（Ｅｃｎ）をＨＳＭ１０１２に渡す。ＨＳＭ１０１２の暗号処理部３２は、記憶部１０１３に格納しているＲｏｏｔ鍵Ｋｒｃにより第２の暗号化データＫｒｃ（Ｋｂｃ）及び第４の暗号化データＫｒｃ（Ｅｃｎ）を各々に復号して、署名鍵Ｋｂｃ及び期待値Ｅｃｎを取得する。ＨＳＭ１０１２は、該取得した署名鍵Ｋｂｃを記憶部１０１３に格納する。ＨＳＭ１０１２は、記憶部１０１３において、該取得した署名鍵Ｋｂｃを初期署名鍵Ｋｂｉに代えて格納してもよい。また、ＨＳＭ１０１２は、該取得した期待値Ｅｃｎをセキュアブート処理で使用する期待値に設定する。
【０１７０】
（ステップＳ７８）第１のＥＣＵ１０１０の制御部２１は、記憶部２２に格納している初期ＥＣＵコードＥｃｉをＨＳＭ１０１２に渡して、セキュアブート処理を実行させる。セキュアブート処理において、ＨＳＭ１０１２の測定部３３は、記憶部１０１３に格納している署名鍵Ｋｂｃにより、初期ＥＣＵコードＥｃｉの測定値を計算する。本実施形態では、測定値の一例として、ＣＭＡＣを使用する。よって、測定部３３は、記憶部１０１３に格納している署名鍵Ｋｂｃにより、初期ＥＣＵコードＥｃｉのＣＭＡＣを計算する。この計算結果のＣＭＡＣを測定値Ｅｃｎ＿ｘと称する。
【０１７１】
測定部３３は、測定値Ｅｃｎ＿ｘと期待値Ｅｃｎとを比較し、両者が一致するか否かを判断する。この判断の結果、両者が一致する場合には測定値Ｅｃｎ＿ｘの検証が合格である。測定値Ｅｃｎ＿ｘの検証が合格した場合、暗号鍵Ｋｅｃが使用可能になる。一方、両者が一致しない場合には測定値Ｅｃｎ＿ｘの検証が不合格である。測定値Ｅｃｎ＿ｘの検証が不合格になった場合、暗号鍵Ｋｅｃは使用することができない。ＨＳＭ１０１２は、測定値Ｅｃｎ＿ｘの検証結果「合格又は不合格」を制御部２１に渡す。
【０１７２】
（ステップＳ７９）制御部２１は、ＨＳＭ１０１２から受け取った測定値Ｅｃｎ＿ｘの検証結果が「合格」である場合、記憶部２２に格納している乱数ＮｏｎｃｅをＨＳＭ１０１２に渡して、暗号鍵Ｋｅｃにより暗号化を実行させる。ＨＳＭ１０１２の暗号処理部３２は、記憶部１０１３に格納している暗号鍵Ｋｅｃにより乱数Ｎｏｎｃｅを暗号化して、第６の暗号化データＫｅｃ（Ｎｏｎｃｅ）を生成する。ＨＳＭ１０１２は、第６の暗号化データＫｅｃ（Ｎｏｎｃｅ）を制御部２１に渡す。一方、制御部２１は、ＨＳＭ１０１２から受け取った測定値Ｅｃｎ＿ｘの検証結果が「不合格」である場合には、乱数Ｎｏｎｃｅの暗号化を実施しない。
【０１７３】
制御部２１は、インタフェース部２０により、セキュアブート結果として測定値Ｅｃｎ＿ｘの検証結果「合格又は不合格」を、診断ポート１０６０を介して、鍵生成装置１３００に送信する。このとき、制御部２１は、測定値Ｅｃｎ＿ｘの検証結果が「合格」である場合には、セキュアブート結果「合格（ＯＫ）」に第６の暗号化データＫｅｃ（Ｎｏｎｃｅ）を含める。鍵生成装置１３００は、車両インタフェース１１により、自動車１００１の第１のＥＣＵ１０１０から診断ポート１０６０を介して、第１のＥＣＵ１０１０のセキュアブート結果「合格又は不合格」を受信する。
なお、セキュアブート結果「合格（ＯＫ）」に、乱数Ｎｏｎｃｅを暗号化しないでそのまま含めてもよい。また、セキュアブート結果「合格（ＯＫ）」に、乱数Ｎｏｎｃｅと乱数ＮｏｎｃｅのＣＭＡＣとを含めてもよい。乱数ＮｏｎｃｅのＣＭＡＣは、暗号鍵Ｋｅｃにより、計算されてもよい。セキュアブート結果「合格（ＯＫ）」に、乱数Ｎｏｎｃｅと乱数ＮｏｎｃｅのＣＭＡＣとを含める場合、乱数Ｎｏｎｃｅ若しくは乱数ＮｏｎｃｅのＣＭＡＣのいずれか一方、又は、乱数Ｎｏｎｃｅと乱数ＮｏｎｃｅのＣＭＡＣの両方を暗号化してもよい。
【０１７４】
（ステップＳ８０）鍵生成装置１３００の暗号処理部１６は、第１のＥＣＵ１０１０のセキュアブート結果「合格（ＯＫ）」に含まれる第６の暗号化データＫｅｃ（Ｎｏｎｃｅ）を、第１のＥＣＵ１０１０の暗号鍵Ｋｅｃにより復号して復号データＮｏｎｃｅを取得する。検証部１４は、復号データＮｏｎｃｅと記憶部１２に格納されている乱数Ｎｏｎｃｅとを比較し、両者が一致するか否かを判断する。この判断の結果、両者が一致する場合には、第１のＥＣＵ１０１０のセキュアブート結果「合格」が正しいと判断する。セキュアブート結果「合格」が正しいと判断された場合にはステップＳ８１に進む。一方、両者が一致しない場合には、第１のＥＣＵ１０１０のセキュアブート結果「合格」が正しくないと判断する。セキュアブート結果「合格」が正しくないと判断された場合には、図９の処理を終了する。また、セキュアブート結果「合格」が正しくないと判断された場合には、鍵生成装置１３００は所定のエラー処理を実行してもよい。
【０１７５】
また、鍵生成装置１３００が自動車１００１の第１のＥＣＵ１０１０のセキュアブート結果「不合格」を受信した場合には、図９の処理を終了する。また、セキュアブート結果「不合格」を受信した場合には、鍵生成装置１３００は所定のエラー処理を実行してもよい。
【０１７６】
（ステップＳ８１）第１のＥＣＵ１０１０のＨＳＭ１０１２の鍵生成部３４は、車内鍵Ｋｖを生成する。記憶部１０１３は、車内鍵Ｋｖを格納する。
【０１７７】
次いでステップＳ８２及びステップＳ８３が実行される。ステップＳ８２は、図５に係る管理方法の例１のステップＳ１０と同じである。ステップＳ８３は、図５に係る管理方法の例１のステップＳ１１と同じである。次いでステップＳ８４が実行される。
【０１７８】
（ステップＳ８４）鍵生成装置１３００の暗号処理部１６は、第２のＥＣＵ（１）１０２０のＲｏｏｔ鍵Ｋｒ１により第２のＥＣＵ（１）１０２０の暗号鍵Ｋｅ１を暗号化して、第５の暗号化データＫｒ１（Ｋｅ１）を生成する。検証部１４は、乱数Ｎｏｎｃｅ１を発生させる。記憶部１２は、該乱数Ｎｏｎｃｅ１を格納する。鍵生成装置１３００は、車両インタフェース１１により、第５の暗号化データＫｒ１（Ｋｅ１）及び乱数Ｎｏｎｃｅ１を、自動車１００１の第１のＥＣＵ１０１０経由で第２のＥＣＵ（１）１０２０に送信する。自動車１００１の第１のＥＣＵ１０１０は、インタフェース部２０により、鍵生成装置１３００から診断ポート１０６０を介して、第５の暗号化データＫｒ１（Ｋｅ１）及び乱数Ｎｏｎｃｅ１を受信すると、該第５の暗号化データＫｒ１（Ｋｅ１）及び乱数Ｎｏｎｃｅ１を、インタフェース部２０により、ＣＡＮ１０３０を介して第２のＥＣＵ（１）１０２０に転送する。第２のＥＣＵ（１）１０２０は、インタフェース部４０により、第１のＥＣＵ１０１０からＣＡＮ１０３０を介して、第５の暗号化データＫｒ１（Ｋｅ１）及び乱数Ｎｏｎｃｅ１を受信する。
【０１７９】
（ステップＳ８５）第２のＥＣＵ（１）１０２０の制御部４１は、第５の暗号化データＫｒ１（Ｋｅ１）をＳＨＥ１０２２に渡す。ＳＨＥ１０２２の暗号処理部５２は、記憶部１０２３に格納しているＲｏｏｔ鍵Ｋｒ１により第５の暗号化データＫｒ１（Ｋｅ１）を復号して、暗号鍵Ｋｅ１を取得する。ＳＨＥ１０２２は、該取得した暗号鍵Ｋｅ１を記憶部１０２３に格納する。ＳＨＥ１０２２は、記憶部１０２３において、該取得した暗号鍵Ｋｅ１を初期暗号鍵Ｋｅｅｉに代えて格納してもよい。本実施形態では、暗号鍵Ｋｅ１は、ＳＨＥ１０２２が実行するセキュアブート処理において測定値の検証が合格した場合に使用することができる暗号鍵として設定される。したがって、暗号鍵Ｋｅ１は、ＳＨＥ１０２２が実行するセキュアブート処理において測定値の検証が不合格になった場合には使用することができない。
【０１８０】
記憶部４２は、乱数Ｎｏｎｃｅ１を格納する。乱数Ｎｏｎｃｅ１の格納場所は、記憶部４２の記憶領域のうち、セキュアブートの測定対象外の不揮発性記憶領域である。
【０１８１】
（ステップＳ８６）鍵生成装置１３００の暗号処理部１６は、第２のＥＣＵ（１）１０２０のＲｏｏｔ鍵Ｋｒ１により第２のＥＣＵ（１）１０２０の署名鍵Ｋｂ１及び期待値Ｅ１ｎを各々に暗号化して、第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）を生成する。鍵生成装置１３００は、車両インタフェース１１により、第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）を、自動車１００１の第１のＥＣＵ１０１０経由で第２のＥＣＵ（１）１０２０に送信する。自動車１００１の第１のＥＣＵ１０１０は、インタフェース部２０により、鍵生成装置１３００から診断ポート１０６０を介して、第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）を受信すると、該第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）を、インタフェース部２０により、ＣＡＮ１０３０を介して第２のＥＣＵ（１）１０２０に転送する。第２のＥＣＵ（１）１０２０は、インタフェース部４０により、第１のＥＣＵ１０１０からＣＡＮ１０３０を介して、第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）を受信する。
【０１８２】
（ステップＳ８７）第２のＥＣＵ（１）１０２０の制御部４１は、第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）をＳＨＥ１０２２に渡す。ＳＨＥ１０２２の暗号処理部５２は、記憶部１０２３に格納しているＲｏｏｔ鍵Ｋｒ１により第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）を各々に復号して、署名鍵Ｋｂ１及び期待値Ｅ１ｎを取得する。ＳＨＥ１０２２は、該取得した署名鍵Ｋｂ１を記憶部１０２３に格納する。ＳＨＥ１０２２は、記憶部１０２３において、該取得した署名鍵Ｋｂ１を初期署名鍵Ｋｂｉに代えて格納してもよい。また、ＳＨＥ１０２２は、該取得した期待値Ｅ１ｎをセキュアブート処理で使用する期待値に設定する。
【０１８３】
（ステップＳ８８）第２のＥＣＵ（１）１０２０の制御部４１は、記憶部４２に格納している初期ＥＣＵコードＥ１ｉをＳＨＥ１０２２に渡して、セキュアブート処理を実行させる。セキュアブート処理において、ＳＨＥ１０２２の測定部５３は、記憶部１０２３に格納している署名鍵Ｋｂ１により、初期ＥＣＵコードＥ１ｉの測定値を計算する。本実施形態では、測定値の一例として、ＣＭＡＣを使用する。よって、測定部５３は、記憶部１０２３に格納している署名鍵Ｋｂ１により、初期ＥＣＵコードＥ１ｉのＣＭＡＣを計算する。この計算結果のＣＭＡＣを測定値Ｅ１ｎ＿ｘと称する。
【０１８４】
測定部５３は、測定値Ｅ１ｎ＿ｘと期待値Ｅ１ｎとを比較し、両者が一致するか否かを判断する。この判断の結果、両者が一致する場合には測定値Ｅ１ｎ＿ｘの検証が合格である。測定値Ｅ１ｎ＿ｘの検証が合格した場合、暗号鍵Ｋｅ１が使用可能になる。一方、両者が一致しない場合には測定値Ｅ１ｎ＿ｘの検証が不合格である。測定値Ｅ１ｎ＿ｘの検証が不合格になった場合、暗号鍵Ｋｅ１は使用することができない。ＳＨＥ１０２２は、測定値Ｅ１ｎ＿ｘの検証結果「合格又は不合格」を制御部４１に渡す。
【０１８５】
（ステップＳ８９）制御部４１は、ＳＨＥ１０２２から受け取った測定値Ｅ１ｎ＿ｘの検証結果が「合格」である場合、記憶部４２に格納している乱数Ｎｏｎｃｅ１をＳＨＥ１０２２に渡して、暗号鍵Ｋｅ１により暗号化を実行させる。ＳＨＥ１０２２の暗号処理部５２は、記憶部１０２３に格納している暗号鍵Ｋｅ１により乱数Ｎｏｎｃｅ１を暗号化して、第６の暗号化データＫｅ１（Ｎｏｎｃｅ１）を生成する。ＳＨＥ１０２２は、第６の暗号化データＫｅ１（Ｎｏｎｃｅ１）を制御部４１に渡す。一方、制御部４１は、ＳＨＥ１０２２から受け取った測定値Ｅ１ｎ＿ｘの検証結果が「不合格」である場合には、乱数Ｎｏｎｃｅ１の暗号化を実施しない。
【０１８６】
制御部４１は、インタフェース部４０により、セキュアブート結果として測定値Ｅ１ｎ＿ｘの検証結果「合格又は不合格」を、ＣＡＮ１０３０を介して第１のＥＣＵ１０１０経由で鍵生成装置１３００に送信する。このとき、制御部４１は、測定値Ｅ１ｎ＿ｘの検証結果が「合格」である場合には、セキュアブート結果「合格（ＯＫ）」に第６の暗号化データＫｅ１（Ｎｏｎｃｅ１）を含める。第１のＥＣＵ１０１０は、インタフェース部２０により、第２のＥＣＵ（１）１０２０からＣＡＮ１０３０を介して、セキュアブート結果「合格又は不合格」を受信すると、該セキュアブート結果「合格又は不合格」を、インタフェース部２０により、診断ポート１０６０を介して鍵生成装置１３００に転送する。鍵生成装置１３００は、車両インタフェース１１により、自動車１００１の第１のＥＣＵ１０１０から診断ポート１０６０を介して、第２のＥＣＵ（１）１０２０のセキュアブート結果「合格又は不合格」を受信する。
なお、セキュアブート結果「合格（ＯＫ）」に、乱数Ｎｏｎｃｅ１を暗号化しないでそのまま含めてもよい。また、セキュアブート結果「合格（ＯＫ）」に、乱数Ｎｏｎｃｅ１と乱数Ｎｏｎｃｅ１のＣＭＡＣとを含めてもよい。乱数Ｎｏｎｃｅ１のＣＭＡＣは、暗号鍵Ｋｅ１により、計算されてもよい。セキュアブート結果「合格（ＯＫ）」に、乱数Ｎｏｎｃｅ１と乱数Ｎｏｎｃｅ１のＣＭＡＣとを含める場合、乱数Ｎｏｎｃｅ１若しくは乱数Ｎｏｎｃｅ１のＣＭＡＣのいずれか一方、又は、乱数Ｎｏｎｃｅ１と乱数Ｎｏｎｃｅ１のＣＭＡＣの両方を暗号化してもよい。
【０１８７】
（ステップＳ９０）鍵生成装置１３００の暗号処理部１６は、第２のＥＣＵ（１）１０２０のセキュアブート結果「合格（ＯＫ）」に含まれる第６の暗号化データＫｅ１（Ｎｏｎｃｅ１）を、第２のＥＣＵ（１）１０２０の暗号鍵Ｋｅ１により復号して復号データＮｏｎｃｅ１を取得する。検証部１４は、復号データＮｏｎｃｅ１と記憶部１２に格納されている乱数Ｎｏｎｃｅ１とを比較し、両者が一致するか否かを判断する。この判断の結果、両者が一致する場合には、第２のＥＣＵ（１）１０２０のセキュアブート結果「合格」が正しいと判断する。セキュアブート結果「合格」が正しいと判断された場合にはステップＳ９１に進む。一方、両者が一致しない場合には、第２のＥＣＵ（１）１０２０のセキュアブート結果「合格」が正しくないと判断する。第２のＥＣＵ（１）１０２０のセキュアブート結果「合格」が正しくないと判断された場合には、第２のＥＣＵ（１）１０２０について図９の処理を終了する。よって、第２のＥＣＵ（１）１０２０のセキュアブート結果「合格」が正しくないと判断された場合には、第２のＥＣＵ（１）１０２０についてステップＳ９１は実行されない。また、セキュアブート結果「合格」が正しくないと判断された場合には、鍵生成装置１３００は所定のエラー処理を実行してもよい。
【０１８８】
また、鍵生成装置１３００が自動車１００１の第２のＥＣＵ（１）１０２０のセキュアブート結果「不合格」を受信した場合には、第２のＥＣＵ（１）１０２０について図９の処理を終了する。よって、第２のＥＣＵ（１）１０２０のセキュアブート結果「不合格」を受信した場合には、第２のＥＣＵ（１）１０２０についてステップＳ９１は実行されない。また、セキュアブート結果「不合格」を受信した場合には、鍵生成装置１３００は所定のエラー処理を実行してもよい。
【０１８９】
次いでステップＳ９１からステップＳ９３までが実行される。ステップＳ９１は、図５に係る管理方法の例１のステップＳ１７と同じである。ステップＳ９２は、図５に係る管理方法の例１のステップＳ１８と同じである。ステップＳ９３は、図５に係る管理方法の例１のステップＳ１９と同じである。
【０１９０】
上記ステップＳ８２からステップＳ９３までは、自動車１００１に搭載されている全ての第２のＥＣＵ（ｎ）１０２０に対して同様に実行される。
【０１９１】
上述した管理方法の例５によれば、自動車１００１に搭載されているＥＣＵのＥＣＵコードの期待値を鍵生成装置１３００が生成してＥＣＵに供給する。そして、ＥＣＵが、自己のＥＣＵコードの測定値を、鍵生成装置１３００から供給された期待値に基づいて検証し、この検証結果を鍵生成装置１３００に通知することにより、自動車１００１に搭載されているＥＣＵの真贋判定を行う。これにより、自動車１００１に搭載されているＥＣＵの信頼性が向上する効果を奏する。
【０１９２】
さらに、上述した管理方法の例５によれば、ＥＣＵが自己のＥＣＵコードの測定値の検証結果を鍵生成装置１３００に通知する際に、鍵生成装置１３００から供給された検証値（上述の例では乱数Ｎｏｎｃｅ，Ｎｏｎｃｅ１）を、測定値の検証が合格した場合に使用することができる暗号鍵により暗号化して第６の暗号化データを生成し、該第６の暗号化データを鍵生成装置１３００に送信する。該暗号鍵は、鍵生成装置１３００と共有されている。鍵生成装置１３００は、該第６の暗号化データを復号し、この復号データとＥＣＵに供給した元の検証値との一致を判断することにより、ＥＣＵのＥＣＵコードの測定値の検証結果の正当性を確認することができる。
【０１９３】
＜管理方法の例６＞
管理方法の例６は、上述した管理方法の例５の変形例である。図１０は、本実施形態に係る管理方法の例６のシーケンス図である。図１０において、図９の各部に対応する部分には同一の符号を付け、その説明を省略する。以下、図１０を参照して、上述した管理方法の例５と異なる点を主に説明する。
【０１９４】
鍵生成装置１３００の車両インタフェース１１と自動車１００１の診断ポート１０６０とは接続されている。ステップＳ７１からステップＳ８１までが実行される。ステップＳ７１からステップＳ８１までは、上述した図９に係る管理方法の例５と同じである。鍵生成装置１３００が受信した自動車１００１の第１のＥＣＵ１０１０のセキュアブート結果「合格」が正しいと判断された場合には、ステップＳ８１に次いでステップＳ１０１が実行される。この場合、第１のＥＣＵ１０１０のセキュアブート結果は「合格」であるので、第１のＥＣＵ１０１０のＨＳＭ１０１２において暗号鍵Ｋｅｃは使用可能になる。
【０１９５】
一方、該セキュアブート結果「合格」が正しくないと判断された場合及び鍵生成装置１３００が自動車１００１の第１のＥＣＵ１０１０のセキュアブート結果「不合格」を受信した場合には、図１０の処理を終了する。また、該セキュアブート結果「合格」が正しくないと判断された場合及び鍵生成装置１３００が自動車１００１の第１のＥＣＵ１０１０のセキュアブート結果「不合格」を受信した場合には、鍵生成装置１３００は所定のエラー処理を実行してもよい。
【０１９６】
（ステップＳ１０１）鍵生成装置１３００の暗号処理部１６は、第１のＥＣＵ１０１０の暗号鍵Ｋｅｃにより、Ｎ個の第２のＥＣＵ（ｎ）１０２０の各々のＲｏｏｔ鍵Ｋｒｎ、署名鍵Ｋｂｎ、期待値Ｅｎｎ及び暗号鍵Ｋｅｎを各々に暗号化する。この暗号化によって、Ｎ個の第１の暗号化データＫｅｃ（Ｋｒ１）、Ｋｅｃ（Ｋｒ２）、・・・、Ｋｅｃ（ＫｒＮ）と、Ｎ個の第２の暗号化データＫｅｃ（Ｋｂ１）、Ｋｅｃ（Ｋｂ２）、・・・、Ｋｅｃ（ＫｂＮ）と、Ｎ個の第４の暗号化データＫｅｃ（Ｅ１ｎ）、Ｋｅｃ（Ｅ２ｎ）、・・・、Ｋｅｃ（ＥＮｎ）と、Ｎ個の第７の暗号化データＫｅｃ（Ｋｅ１）、Ｋｅｃ（Ｋｅ２）、・・・、Ｋｅｃ（ＫｅＮ）と、が生成される。
【０１９７】
鍵生成装置１３００は、車両インタフェース１１により、Ｎ個の第１の暗号化データＫｅｃ（Ｋｒ１）、Ｋｅｃ（Ｋｒ２）、・・・、Ｋｅｃ（ＫｒＮ）と、Ｎ個の第２の暗号化データＫｅｃ（Ｋｂ１）、Ｋｅｃ（Ｋｂ２）、・・・、Ｋｅｃ（ＫｂＮ）と、Ｎ個の第４の暗号化データＫｅｃ（Ｅ１ｎ）、Ｋｅｃ（Ｅ２ｎ）、・・・、Ｋｅｃ（ＥＮｎ）と、Ｎ個の第７の暗号化データＫｅｃ（Ｋｅ１）、Ｋｅｃ（Ｋｅ２）、・・・、Ｋｅｃ（ＫｅＮ）と、を自動車１００１の第１のＥＣＵ１０１０に送信する。自動車１００１の第１のＥＣＵ１０１０は、インタフェース部２０により、鍵生成装置１３００から診断ポート１０６０を介して、Ｎ個の第１の暗号化データＫｅｃ（Ｋｒ１）、Ｋｅｃ（Ｋｒ２）、・・・、Ｋｅｃ（ＫｒＮ）と、Ｎ個の第２の暗号化データＫｅｃ（Ｋｂ１）、Ｋｅｃ（Ｋｂ２）、・・・、Ｋｅｃ（ＫｂＮ）と、Ｎ個の第４の暗号化データＫｅｃ（Ｅ１ｎ）、Ｋｅｃ（Ｅ２ｎ）、・・・、Ｋｅｃ（ＥＮｎ）と、Ｎ個の第７の暗号化データＫｅｃ（Ｋｅ１）、Ｋｅｃ（Ｋｅ２）、・・・、Ｋｅｃ（ＫｅＮ）と、を受信する。
【０１９８】
（ステップＳ１０２）第１のＥＣＵ１０１０の制御部２１は、Ｎ個の第１の暗号化データＫｅｃ（Ｋｒ１）、Ｋｅｃ（Ｋｒ２）、・・・、Ｋｅｃ（ＫｒＮ）と、Ｎ個の第２の暗号化データＫｅｃ（Ｋｂ１）、Ｋｅｃ（Ｋｂ２）、・・・、Ｋｅｃ（ＫｂＮ）と、Ｎ個の第４の暗号化データＫｅｃ（Ｅ１ｎ）、Ｋｅｃ（Ｅ２ｎ）、・・・、Ｋｅｃ（ＥＮｎ）と、Ｎ個の第７の暗号化データＫｅｃ（Ｋｅ１）、Ｋｅｃ（Ｋｅ２）、・・・、Ｋｅｃ（ＫｅＮ）と、をＨＳＭ１０１２に渡して、暗号鍵Ｋｅｃにより復号を実行させる。ＨＳＭ１０１２は、記憶部１０１３に格納している暗号鍵Ｋｅｃにより、Ｎ個の第１の暗号化データＫｅｃ（Ｋｒ１）、Ｋｅｃ（Ｋｒ２）、・・・、Ｋｅｃ（ＫｒＮ）と、Ｎ個の第２の暗号化データＫｅｃ（Ｋｂ１）、Ｋｅｃ（Ｋｂ２）、・・・、Ｋｅｃ（ＫｂＮ）と、Ｎ個の第４の暗号化データＫｅｃ（Ｅ１ｎ）、Ｋｅｃ（Ｅ２ｎ）、・・・、Ｋｅｃ（ＥＮｎ）と、Ｎ個の第７の暗号化データＫｅｃ（Ｋｅ１）、Ｋｅｃ（Ｋｅ２）、・・・、Ｋｅｃ（ＫｅＮ）と、を各々に復号する。この復号によって、Ｎ個のＲｏｏｔ鍵Ｋｒ１、Ｋｒ２、・・・、ＫｒＮと、Ｎ個の署名鍵Ｋｂ１、Ｋｂ２、・・・、ＫｂＮと、Ｎ個の期待値Ｅ１ｎ、Ｅ２ｎ、・・・、ＥＮｎと、Ｎ個の暗号鍵Ｋｅ１、Ｋｅ２、・・・、ＫｅＮと、が取得される。ＨＳＭ１０１２は、該取得したＮ個のＲｏｏｔ鍵Ｋｒ１、Ｋｒ２、・・・、ＫｒＮと、Ｎ個の署名鍵Ｋｂ１、Ｋｂ２、・・・、ＫｂＮと、Ｎ個の期待値Ｅ１ｎ、Ｅ２ｎ、・・・、ＥＮｎと、Ｎ個の暗号鍵Ｋｅ１、Ｋｅ２、・・・、ＫｅＮと、を記憶部１０１３に格納する。
【０１９９】
次いでステップＳ１０３及びステップＳ１０４が実行される。ステップＳ１０３は、図６に係る管理方法の例２のステップＳ２４と同じである。ステップＳ１０４は、図６に係る管理方法の例２のステップＳ２５と同じである。次いでステップＳ１０５が実行される。
【０２００】
（ステップＳ１０５）第１のＥＣＵ１０１０のＨＳＭ１０１２の暗号処理部３２は、第２のＥＣＵ（１）１０２０のＲｏｏｔ鍵Ｋｒ１により第２のＥＣＵ（１）１０２０の暗号鍵Ｋｅ１を暗号化して、第５の暗号化データＫｒ１（Ｋｅ１）を生成する。ＨＳＭ１０１２は、第５の暗号化データＫｒ１（Ｋｅ１）を制御部２１に渡す。制御部２１は、乱数Ｎｏｎｃｅ１を発生させる。記憶部２２は、該乱数Ｎｏｎｃｅ１を格納する。制御部２１は、インタフェース部２０により、第５の暗号化データＫｒ１（Ｋｅ１）及び乱数Ｎｏｎｃｅ１を、ＣＡＮ１０３０を介して第２のＥＣＵ（１）１０２０に送信する。第２のＥＣＵ（１）１０２０は、インタフェース部４０により、第１のＥＣＵ１０１０からＣＡＮ１０３０を介して、第５の暗号化データＫｒ１（Ｋｅ１）及び乱数Ｎｏｎｃｅ１を受信する。
【０２０１】
（ステップＳ１０６）第２のＥＣＵ（１）１０２０の制御部４１は、第５の暗号化データＫｒ１（Ｋｅ１）をＳＨＥ１０２２に渡す。ＳＨＥ１０２２の暗号処理部５２は、記憶部１０２３に格納しているＲｏｏｔ鍵Ｋｒ１により第５の暗号化データＫｒ１（Ｋｅ１）を復号して、暗号鍵Ｋｅ１を取得する。ＳＨＥ１０２２は、該取得した暗号鍵Ｋｅ１を記憶部１０２３に格納する。ＳＨＥ１０２２は、記憶部１０２３において、該取得した暗号鍵Ｋｅ１を初期暗号鍵Ｋｅｅｉに代えて格納してもよい。本実施形態では、暗号鍵Ｋｅ１は、ＳＨＥ１０２２が実行するセキュアブート処理において測定値の検証が合格した場合に使用することができる暗号鍵として設定される。したがって、暗号鍵Ｋｅ１は、ＳＨＥ１０２２が実行するセキュアブート処理において測定値の検証が不合格になった場合には使用することができない。
【０２０２】
記憶部４２は、乱数Ｎｏｎｃｅ１を格納する。乱数Ｎｏｎｃｅ１の格納場所は、記憶部４２の記憶領域のうち、セキュアブートの測定対象外の不揮発性記憶領域である。
【０２０３】
（ステップＳ１０７）第１のＥＣＵ１０１０のＨＳＭ１０１２の暗号処理部３２は、第２のＥＣＵ（１）１０２０のＲｏｏｔ鍵Ｋｒ１により第２のＥＣＵ（１）１０２０の署名鍵Ｋｂ１及び期待値Ｅ１ｎを各々に暗号化して、第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）を生成する。ＨＳＭ１０１２は、第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）を制御部２１に渡す。制御部２１は、インタフェース部２０により、第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）を、ＣＡＮ１０３０を介して第２のＥＣＵ（１）１０２０に送信する。第２のＥＣＵ（１）１０２０は、インタフェース部４０により、第１のＥＣＵ１０１０からＣＡＮ１０３０を介して、第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）を受信する。
【０２０４】
（ステップＳ１０８）第２のＥＣＵ（１）１０２０の制御部４１は、第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）をＳＨＥ１０２２に渡す。ＳＨＥ１０２２の暗号処理部５２は、記憶部１０２３に格納しているＲｏｏｔ鍵Ｋｒ１により第２の暗号化データＫｒ１（Ｋｂ１）及び第４の暗号化データＫｒ１（Ｅ１ｎ）を各々に復号して、署名鍵Ｋｂ１及び期待値Ｅ１ｎを取得する。ＳＨＥ１０２２は、該取得した署名鍵Ｋｂ１を記憶部１０２３に格納する。ＳＨＥ１０２２は、記憶部１０２３において、該取得した署名鍵Ｋｂ１を初期署名鍵Ｋｂｉに代えて格納してもよい。また、ＳＨＥ１０２２は、該取得した期待値Ｅ１ｎをセキュアブート処理で使用する期待値に設定する。
【０２０５】
次いでステップＳ１０９が実行される。ステップＳ１０９は、図９に係る管理方法の例５のステップＳ８８と同じである。次いでステップＳ１１０が実行される。
【０２０６】
（ステップＳ１１０）制御部４１は、ＳＨＥ１０２２から受け取った測定値Ｅ１ｎ＿ｘの検証結果が「合格」である場合、記憶部４２に格納している乱数Ｎｏｎｃｅ１をＳＨＥ１０２２に渡して、暗号鍵Ｋｅ１により暗号化を実行させる。ＳＨＥ１０２２の暗号処理部５２は、記憶部１０２３に格納している暗号鍵Ｋｅ１により乱数Ｎｏｎｃｅ１を暗号化して、第６の暗号化データＫｅ１（Ｎｏｎｃｅ１）を生成する。ＳＨＥ１０２２は、第６の暗号化データＫｅ１（Ｎｏｎｃｅ１）を制御部４１に渡す。一方、制御部４１は、ＳＨＥ１０２２から受け取った測定値Ｅ１ｎ＿ｘの検証結果が「不合格」である場合には、乱数Ｎｏｎｃｅ１の暗号化を実施しない。
【０２０７】
制御部４１は、インタフェース部４０により、セキュアブート結果として測定値Ｅ１ｎ＿ｘの検証結果「合格又は不合格」を、ＣＡＮ１０３０を介して第１のＥＣＵ１０１０に送信する。このとき、制御部４１は、測定値Ｅ１ｎ＿ｘの検証結果が「合格」である場合には、セキュアブート結果「合格（ＯＫ）」に第６の暗号化データＫｅ１（Ｎｏｎｃｅ１）を含める。第１のＥＣＵ１０１０は、インタフェース部２０により、第２のＥＣＵ（１）１０２０からＣＡＮ１０３０を介して、第２のＥＣＵ（１）１０２０のセキュアブート結果「合格又は不合格」を受信する。
なお、セキュアブート結果「合格（ＯＫ）」に、乱数Ｎｏｎｃｅ１を暗号化しないでそのまま含めてもよい。また、セキュアブート結果「合格（ＯＫ）」に、乱数Ｎｏｎｃｅ１と乱数Ｎｏｎｃｅ１のＣＭＡＣとを含めてもよい。乱数Ｎｏｎｃｅ１のＣＭＡＣは、暗号鍵Ｋｅ１により、計算されてもよい。セキュアブート結果「合格（ＯＫ）」に、乱数Ｎｏｎｃｅ１と乱数Ｎｏｎｃｅ１のＣＭＡＣとを含める場合、乱数Ｎｏｎｃｅ１若しくは乱数Ｎｏｎｃｅ１のＣＭＡＣのいずれか一方、又は、乱数Ｎｏｎｃｅ１と乱数Ｎｏｎｃｅ１のＣＭＡＣの両方を暗号化してもよい。
【０２０８】
（ステップＳ１１１）第１のＥＣＵ１０１０の制御部２１は、第２のＥＣＵ（１）１０２０のセキュアブート結果「合格（ＯＫ）」に含まれる第６の暗号化データＫｅ１（Ｎｏｎｃｅ１）を、ＨＳＭ１０１２に渡して、第２のＥＣＵ（１）１０２０の暗号鍵Ｋｅ１により復号を実行させる。ＨＳＭ１０１２の暗号処理部３２は、記憶部１０１３に格納している第２のＥＣＵ（１）１０２０の暗号鍵Ｋｅ１により第６の暗号化データＫｅ１（Ｎｏｎｃｅ１）を復号して、復号データＮｏｎｃｅ１を取得する。ＨＳＭ１０１２は、復号データＮｏｎｃｅ１を制御部２１に渡す。
【０２０９】
制御部２１は、復号データＮｏｎｃｅ１と記憶部２２に格納されている乱数Ｎｏｎｃｅ１とを比較し、両者が一致するか否かを判断する。この判断の結果、両者が一致する場合には、第２のＥＣＵ（１）１０２０のセキュアブート結果「合格」が正しいと判断する。セキュアブート結果「合格」が正しいと判断された場合にはステップＳ１１２に進む。一方、両者が一致しない場合には、第２のＥＣＵ（１）１０２０のセキュアブート結果「合格」が正しくないと判断する。第２のＥＣＵ（１）１０２０のセキュアブート結果「合格」が正しくないと判断された場合には、第２のＥＣＵ（１）１０２０について図１０の処理を終了する。よって、第２のＥＣＵ（１）１０２０のセキュアブート結果「合格」が正しくないと判断された場合には、第２のＥＣＵ（１）１０２０についてステップＳ１１２は実行されない。また、セキュアブート結果「合格」が正しくないと判断された場合には、鍵生成装置１３００は所定のエラー処理を実行してもよい。
【０２１０】
また、第１のＥＣＵ１０１０が第２のＥＣＵ（１）１０２０のセキュアブート結果「不合格」を受信した場合には、第２のＥＣＵ（１）１０２０について図１０の処理を終了する。よって、第２のＥＣＵ（１）１０２０のセキュアブート結果「不合格」を受信した場合には、第２のＥＣＵ（１）１０２０についてステップＳ１１２は実行されない。また、セキュアブート結果「不合格」を受信した場合には、第１のＥＣＵ１０１０は所定のエラー処理を実行してもよい。
【０２１１】
次いでステップＳ１１２及びステップＳ１１３が実行される。ステップＳ１１２は、図８に係る管理方法の例４のステップＳ５９と同じである。ステップＳ１１３は、図８に係る管理方法の例４のステップＳ６０と同じである。
【０２１２】
上記ステップＳ１０３からステップＳ１１３までは、自動車１００１に搭載されている全ての第２のＥＣＵ（ｎ）１０２０に対して同様に実行される。
【０２１３】
なお、上記ステップＳ１０３からステップＳ１１３までは、自動車１００１内に閉じた処理である。このため、ステップＳ１０３からステップＳ１１３までは、鍵生成装置１３００の車両インタフェース１１と自動車１００１の診断ポート１０６０とは接続されていなくてもよい。
【０２１４】
上述した管理方法の例６によれば、管理方法の例５と同様に、自動車１００１に搭載されているＥＣＵのＥＣＵコードの期待値を鍵生成装置１３００が生成してＥＣＵに供給する。そして、ＥＣＵが、自己のＥＣＵコードの測定値を、鍵生成装置１３００から供給された期待値に基づいて検証する。そして、本管理方法の例６によれば、第１のＥＣＵ１０１０による検証結果を鍵生成装置１３００に通知することにより、自動車１００１に搭載されている第１のＥＣＵ１０１０の真贋判定を行う。また、第２のＥＣＵ（ｎ）１０２０による検証結果を第１のＥＣＵ１０１０に通知することにより、自動車１００１に搭載されている第２のＥＣＵ（ｎ）１０２０の真贋判定を行う。これにより、自動車１００１に搭載されているＥＣＵの信頼性が向上する効果を奏する。また、第１のＥＣＵ１０１０がＮ個の第２のＥＣＵ（ｎ）１０２０の真贋判定を行うことにより、鍵生成装置１３００と自動車１００１とが接続される時間を、管理方法の例５よりも短縮できる。
【０２１５】
さらに、上述した管理方法の例６によれば、管理方法の例５と同様に、第１のＥＣＵ１０１０が自己のＥＣＵコードの測定値の検証結果を鍵生成装置１３００に通知する際に、鍵生成装置１３００から供給された検証値（上述の例では乱数Ｎｏｎｃｅ）を、測定値の検証が合格した場合に使用することができる暗号鍵により暗号化して第６の暗号化データを生成し、該第６の暗号化データを鍵生成装置１３００に送信する。該暗号鍵は、鍵生成装置１３００と共有されている。鍵生成装置１３００は、該第６の暗号化データを復号し、この復号データと第１のＥＣＵ１０１０に供給した元の検証値との一致を判断することにより、第１のＥＣＵ１０１０のＥＣＵコードの測定値の検証結果の正当性を確認することができる。
【０２１６】
また、上述した管理方法の例６によれば、第２のＥＣＵ１０２０が自己のＥＣＵコードの測定値の検証結果を第１のＥＣＵ１０１０に通知する際に、第１のＥＣＵ１０１０から供給された検証値（上述の例では乱数Ｎｏｎｃｅ１）を、測定値の検証が合格した場合に使用することができる暗号鍵により暗号化して第６の暗号化データを生成し、該第６の暗号化データを第１のＥＣＵ１０１０に送信する。該暗号鍵は、第１のＥＣＵ１０１０と共有されている。第１のＥＣＵ１０１０は、該第６の暗号化データを復号し、この復号データと第２のＥＣＵ１０２０に供給した元の検証値との一致を判断することにより、第２のＥＣＵ１０２０のＥＣＵコードの測定値の検証結果の正当性を確認することができる。
なお、検証値（上述の例では乱数Ｎｏｎｃｅや乱数Ｎｏｎｃｅ１）は、暗号化されずに、鍵生成装置１３００や第１のＥＣＵ１０１０に送信されてもよい。また、検証値と検証値のＣＭＡＣとが鍵生成装置１３００や第１のＥＣＵ１０１０に送信されてもよい。検証値のＣＭＡＣは、測定値の検証が合格した場合に使用することができる暗号鍵により、計算されてもよい。検証値と検証値のＣＭＡＣとが鍵生成装置１３００や第１のＥＣＵ１０１０に送信される場合、検証値若しくは検証値のＣＭＡＣのいずれか一方、又は、検証値と検証値のＣＭＡＣの両方を暗号化してもよい。
【０２１７】
［自動車の他の構成例］
図１１は、本実施形態に係る管理システム及び自動車１００１の他の構成例を示す図である。図１１において、図１の各部に対応する部分には同一の符号を付け、その説明を省略する。以下、図１１を参照して、図１に示す自動車１００１と異なる点を主に説明する。
【０２１８】
図１１において、図１に示す構成と異なる点として、第１のＥＣＵ１０１０がゲートウェイ機能を有さない点と、第１のＥＣＵ１０１０とは別個の装置としてゲートウェイ１０７０を設けた点とがある。ゲートウェイ１０７０はＣＡＮ１０３０に接続される。ゲートウェイ１０７０は、インフォテイメント機器１０４０、ＴＣＵ１０５０及び診断ポート１０６０と接続される。図１１に示す自動車１００１に備わる車載コンピュータシステム１００２ａは、第１のＥＣＵ１０１０と複数の第２のＥＣＵ１０２０とがＣＡＮ１０３０に接続されて構成される。第１のＥＣＵ１０１０及び第２のＥＣＵ１０２０は、ゲートウェイ１０７０を介して、車載コンピュータシステム１００２ａの外部の装置と通信を行う。ゲートウェイ１０７０は、車載コンピュータシステム１００２ａの内部と外部の間の通信を監視する。本実施形態において、車載コンピュータシステム１００２ａは、自動車１００１の車載制御システムとして機能する。
【０２１９】
なお、ＣＡＮ１０３０の構成として、ＣＡＮ１０３０が複数のバス（通信線）を備え、該複数のバスをゲートウェイ１０７０に接続してもよい。この場合、一つのバスに、一つのＥＣＵ又は複数のＥＣＵが接続される。また、同じバスに第１のＥＣＵ１０１０と第２のＥＣＵ１０２０とが接続されてもよく、又は、第１のＥＣＵ１０１０が接続されるバスと第２のＥＣＵ１０２０が接続されるバスとを別個にしてもよい。
【０２２０】
［管理方法の他の例］
図１２、図１３及び図１４を参照して管理方法の他の例を説明する。本管理方法の他の例は、ＥＣＵコードの管理方法の一例である。図１２は、本実施形態に係る管理システムの他の構成例を示す図である。図１２において、自動車１００１は、図１１の構成を適用している。なお、図１に示す自動車１００１の構成を適用してもよい。図１２に示す管理システムは、サーバ装置２０００を備える。
【０２２１】
サーバ装置２０００は、通信回線を介して、自動車１００１のＴＣＵ１０５０の通信モジュール１０５１とデータを送受する。サーバ装置２０００は、自動車１００１のＴＣＵ１０５０の通信モジュール１０５１が利用する無線通信ネットワークを介して、該通信モジュール１０５１とデータを送受する。又は、サーバ装置２０００は、インターネット等の通信ネットワークと該無線通信ネットワークとを介して、該通信モジュール１０５１とデータを送受してもよい。また、例えば、サーバ装置２０００と通信モジュール１０５１との間をＶＰＮ（Virtual Private Network）回線等の専用回線で接続し、該専用回線でデータを送受してもよい。例えば、ＳＩＭ１０５２に対応する無線通信ネットワークによって、ＶＰＮ回線等の専用回線が提供されてもよい。
【０２２２】
サーバ装置２０００は、ＥＣＵに適用されるＥＣＵコードを自動車１００１へ提供する。ＥＣＵコードは、ＥＣＵに適用されるデータの例である。ＥＣＵコードは、ＥＣＵにインストールされる更新プログラム等のコンピュータプログラムであってもよく、又は、ＥＣＵに設定されるパラメータ設定値などの設定データであってもよい。
【０２２３】
自動車１００１の診断ポート１０６０にはメンテナンスツール（maintenance tool）２１００を接続可能である。自動車１００１の診断ポート１０６０に接続されたメンテナンスツール２１００は、ゲートウェイ１０７０を介して、ＣＡＮ１０３０に接続されるＥＣＵと通信を行うことができる。メンテナンスツール２１００は、ＯＢＤポートに接続される従来の診断端末の機能を有していてもよい。
【０２２４】
図１３は、サーバ装置２０００の構成例を示す図である。図１３において、サーバ装置２０００は、通信部２０１１と記憶部２０１２と期待値計算部２０１３と検証部２０１４と鍵生成部２０１５と暗号処理部２０１６とを備える。通信部２０１１は、通信回線を介して、他の装置と通信を行う。記憶部２０１２は、鍵等のデータを記憶する。期待値計算部２０１３は、ＥＣＵコードについての期待値を計算する。検証部２０１４は、ＥＣＵコードについての検証を行う。鍵生成部２０１５は、ＥＣＵの鍵を生成する。暗号処理部２０１６は、データの暗号化及び暗号化データの復号を行う。
【０２２５】
サーバ装置２０００の機能は、該サーバ装置２０００が備えるＣＰＵがコンピュータプログラムを実行することにより実現される。なお、サーバ装置２０００として、汎用のコンピュータ装置を使用して構成してもよく、又は、専用のハードウェア装置として構成してもよい。
【０２２６】
次に図１４を参照して、管理方法の他の例の手順を説明する。図１４は、ＥＣＵコードの提供手順の例を示すシーケンスチャートである。なお、図１４において、ＥＣＵは、自動車１００１に搭載されるＥＣＵであって、第１のＥＣＵ１０１０であってもよく、又は、第２のＥＣＵ１０２０であってもよい。
【０２２７】
サーバ装置２０００は、マスタ鍵Ｍａｓｔｅｒ＿ＳｅｃｒｅｔとＥＣＵのＥＣＵコードとを予め記憶部２０１２に格納している。ＥＣＵのＥＣＵコードは、ＥＣＵに適用する予定のＥＣＵコードを含む。ＥＣＵは、Ｒｏｏｔ鍵Ｋｒ、署名鍵Ｋｂ、暗号鍵Ｋｅ及びＥＣＵコードＥｃを予め格納している。第１のＥＣＵ１０１０においては、ＨＳＭ１０１２の記憶部１０１３が各鍵を格納し、メイン演算器１０１１の記憶部２２がＥＣＵコードを格納する。第２のＥＣＵ１０２０においては、ＳＨＥ１０２２の記憶部１０２３が各鍵を格納し、メイン演算器１０２１の記憶部４２がＥＣＵコードを格納する。
【０２２８】
以下、サーバ装置２０００は、通信部２０１１により、自動車１００１のＴＣＵ１０５０と通信を行い、ＴＣＵ１０５０及びゲートウェイ１０７０を介して、自動車１００１のＣＡＮ１０３０に接続される各ＥＣＵとの間でデータを送受する。また、以下の説明では、第１のＥＣＵ１０１０と第２のＥＣＵ１０２０とを特に区別せず、ＥＣＵとして説明する。このため、説明の便宜上、セキュアエレメントとは、ＥＣＵが第１のＥＣＵ１０１０の場合にはＨＳＭ１０１２を指し、ＥＣＵが第２のＥＣＵ１０２０の場合にはＳＨＥ１０２２を指す。また、セキュアエレメントの記憶部とは、ＥＣＵが第１のＥＣＵ１０１０の場合にはＨＳＭ１０１２の記憶部１０１３を指し、ＥＣＵが第２のＥＣＵ１０２０の場合にはＳＨＥ１０２２の記憶部１０２３を指す。また、ＥＣＵの制御部とは、ＥＣＵが第１のＥＣＵ１０１０の場合には制御部２１を指し、ＥＣＵが第２のＥＣＵ１０２０の場合には制御部４１を指す。
【０２２９】
（ステップＳ２０１）サーバ装置２０００の鍵生成部２０１５は、自動車１００１に搭載されているＥＣＵのＲｏｏｔ鍵Ｋｒ、署名鍵Ｋｂ及び暗号鍵Ｋｅを生成する。これらの鍵の生成方法は、図９に係る管理方法の例５のステップＳ７１に係るＲｏｏｔ鍵、署名鍵及び暗号鍵の生成方法と同様である。例えば、Ｒｏｏｔ鍵用の変数Ｎｋの値をＮｋ＿１とし、署名鍵用の変数Ｎｋの値をＮｋ＿２とし、暗号鍵用の変数Ｎｋの値をＮｋ＿３とする。鍵生成部２０１５は、マスタ鍵Ｍａｓｔｅｒ＿ＳｅｃｒｅｔとＥＣＵのＥＣＵ識別子ＥＣＵ＿ＩＤとを使用して、
Ｒｏｏｔ鍵＝ダイジェスト（Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔ、ＥＣＵ＿ＩＤ、Ｎｋ＿１）、
署名鍵＝ダイジェスト（Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔ、ＥＣＵ＿ＩＤ、Ｎｋ＿２）、
暗号鍵＝ダイジェスト（Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔ、ＥＣＵ＿ＩＤ、Ｎｋ＿３）、
により、Ｒｏｏｔ鍵Ｋｒと署名鍵Ｋｂと暗号鍵Ｋｅを異なる鍵として生成する。記憶部２０１２は、Ｒｏｏｔ鍵Ｋｒ、署名鍵Ｋｂ及び暗号鍵Ｋｅを格納する。
【０２３０】
また、サーバ装置２０００の期待値計算部２０１３は、自動車１００１に搭載されているＥＣＵに適用する予定のＥＣＵコード（以下、Ｅｃｎｅｗコードと称する）のＣＭＡＣを、署名鍵Ｋｂにより計算する。この計算結果のＣＭＡＣを期待値Ｅｃｎと称する。記憶部２０１２は、期待値Ｅｃｎを格納する。
【０２３１】
（ステップＳ２０２）サーバ装置２０００は、通信部２０１１により、期待値ＥｃｎをＥＣＵに送信する。ＥＣＵは、サーバ装置２０００から送信された期待値Ｅｃｎを受信する。
【０２３２】
（ステップＳ２０３）ＥＣＵのセキュアエレメントは、サーバ装置２０００から受信した期待値Ｅｃｎを、セキュアブート処理で使用する期待値に設定する。
【０２３３】
（ステップＳ２０４）サーバ装置２０００は、通信部２０１１により、ＥｃｎｅｗコードをＥＣＵに送信する。ＥＣＵは、サーバ装置２０００から送信されたＥｃｎｅｗコードを受信する。
【０２３４】
（ステップＳ２０５）ＥＣＵの制御部は、サーバ装置２０００から受信したＥｃｎｅｗコードを自己に適用する。
【０２３５】
（ステップＳ２０６）ＥＣＵの制御部は、Ｅｃｎｅｗコードの適用後に、セキュアブートを実行する。このセキュアブートでは、ＥＣＵのセキュアエレメントは、セキュアエレメントの記憶部に格納している署名鍵ＫｂによりＥｃｎｅｗコードのＣＭＡＣを計算し、該計算結果のＣＭＡＣと期待値Ｅｃｎとの比較を行う。この比較の結果、両者が一致する場合にはセキュアブート結果が合格であり、両者が一致しない場合にはセキュアブート結果が不合格である。ＥＣＵのセキュアエレメントは、セキュアブート結果をＥＣＵの制御部に渡す。ＥＣＵの制御部は、セキュアブート結果が合格である場合にＥｃｎｅｗコードの実行を進める。一方、ＥＣＵは、セキュアブート結果が不合格である場合にはＥｃｎｅｗコードの実行を停止する。
【０２３６】
（ステップＳ２０７）ＥＣＵは、セキュアブート結果「合格又は不合格」をサーバ装置２０００に送信する。サーバ装置２０００は、通信部２０１１により、ＥＣＵから送信されたセキュアブート結果「合格又は不合格」を受信する。サーバ装置２０００は、ＥＣＵから受信したセキュアブート結果「合格又は不合格」に応じて、所定の処理を実行する。例えば、セキュアブート結果が合格である場合には、その旨を記録する。一方、セキュアブート結果が不合格である場合には、例えば、サーバ装置２０００が期待値Ｅｃｎを再生成し、サーバ装置２０００とＥＣＵとは上記のステップＳ２０２からステップＳ２０７までを再実行する。この期待値Ｅｃｎの再生成及びステップＳ２０２からステップＳ２０７までの再実行は、セキュアブート結果が合格になるまで繰り返す、又は、所定回数だけ繰り返す。
【０２３７】
次に、上述した図１４のＥＣＵコードの提供手順の変形例を説明する。
【０２３８】
＜ＥＣＵコードの提供手順の変形例１＞
ステップＳ２０２において、サーバ装置２０００は、暗号処理部２０１６により期待値Ｅｃｎを暗号化して、ＥＣＵに送信する。この暗号化に用いる鍵は、Ｒｏｏｔ鍵Ｋｒ、署名鍵Ｋｂ又は暗号鍵Ｋｅのいずれであってもよい。ＥＣＵのセキュアエレメントは、サーバ装置２０００から受信した暗号化データを、自己の暗号処理部により、セキュアエレメントの記憶部に格納されている該当の鍵で復号して、期待値Ｅｃｎを取得する。
【０２３９】
＜ＥＣＵコードの提供手順の変形例２＞
ステップＳ２０４において、サーバ装置２０００は、暗号処理部２０１６によりＥｃｎｅｗコードを暗号化して、ＥＣＵに送信する。この暗号化に用いる鍵は、Ｒｏｏｔ鍵Ｋｒ、署名鍵Ｋｂ、又は暗号鍵Ｋｅのいずれであってもよい。ＥＣＵのセキュアエレメントは、サーバ装置２０００から受信した暗号化データを、自己の暗号処理部により、セキュアエレメントの記憶部に格納されている該当の鍵で復号して、Ｅｃｎｅｗコードを取得する。
【０２４０】
＜ＥＣＵコードの提供手順の変形例３＞
上記のＥＣＵコードの提供手順の変形例１とＥＣＵコードの提供手順の変形例２の両方を適用する。つまり、期待値ＥｃｎとＥｃｎｅｗコードの両方を暗号化して、サーバ装置２０００からＥＣＵに送信する。
【０２４１】
＜ＥＣＵコードの提供手順の変形例４＞
ステップＳ２０７において、ＥＣＵからサーバ装置２０００に送信するセキュアブート結果「合格又は不合格」は所定値とする。例えば、合格は「１」であり、不合格は「０」である。
＜ＥＣＵコードの提供手順の変形例５＞
ステップＳ２０７において、ＥＣＵからサーバ装置２０００に送信するセキュアブート結果「合格又は不合格」は、ステップＳ２０６のセキュアブートで計算された結果のＥｃｎｅｗコードのＣＭＡＣとする。サーバ装置２０００の検証部２０１４は、ＥＣＵから受信したセキュアブート結果のＣＭＡＣと、ステップＳ２０２でＥＣＵに送信した期待値Ｅｃｎとを比較する。サーバ装置２０００の検証部２０１４は、該比較の結果、両者が一致する場合にはＥＣＵのセキュアブート結果が合格であると判断し、両者が一致しない場合にはＥＣＵのセキュアブート結果が不合格であると判断する。
＜ＥＣＵコードの提供手順の変形例６＞
サーバ装置２０００は、検証値（例えば、乱数Ｎｏｎｃｅ）を予めＥＣＵに供給する。ステップＳ２０７において、ＥＣＵは、セキュアブート結果が合格である場合にはセキュアブート結果「合格」に検証値を含め、一方、セキュアブート結果が不合格である場合にはセキュアブート結果「不合格」に検証値を含めない。サーバ装置２０００の検証部２０１４は、ＥＣＵから受信したセキュアブート結果「合格」に含まれる検証値と、予めＥＣＵに供給した元の検証値とを比較する。サーバ装置２０００の検証部２０１４は、該比較の結果、両者が一致する場合にはＥＣＵのセキュアブート結果が合格であると判断し、両者が一致しない場合にはＥＣＵのセキュアブート結果が不合格であると判断する。
【０２４２】
＜ＥＣＵコードの提供手順の変形例７＞
上記のＥＣＵコードの提供手順の変形例４，５，６のいずれか複数を組合せて適用する。
【０２４３】
＜ＥＣＵコードの提供手順の変形例８＞
上記のＥＣＵコードの提供手順の変形例４，５，６，７において、ＥＣＵは、セキュアエレメントの暗号処理部によりセキュアブート結果を暗号化して、サーバ装置２０００に送信する。この暗号化に用いる鍵は、Ｒｏｏｔ鍵Ｋｒ又は署名鍵Ｋｂのいずれであってもよい。サーバ装置２０００は、ＥＣＵから受信した暗号化データを、暗号処理部２０１６により、記憶部２０１２に格納されている該当の鍵で復号して、セキュアブート結果を取得する。なお、セキュアブート結果が合格である場合には、暗号鍵Ｋｅが使用可能になるので、セキュアブート結果「合格」を暗号鍵Ｋｅにより暗号化してもよい。
【０２４４】
上述した管理方法の他の例によれば、サーバ装置２０００は、ＥＣＵに適用するＥＣＵコードの期待値をＥＣＵに提供する。ＥＣＵは、サーバ装置２０００から提供されたＥＣＵコードの期待値に基づいて、サーバ装置２０００から提供されたＥＣＵコードを検証する。ＥＣＵは、ＥＣＵコードの検証結果をサーバ装置２０００に送信する。これにより、ＥＣＵに適用されるＥＣＵコードの信頼性を向上させることができる。
【０２４５】
上述した管理方法の他の例において、サーバ装置２０００はデータ提供装置に対応し、通信部２０１１は車両インタフェースに対応する。
【０２４６】
なお、メンテナンスツール２１００が、サーバ装置２０００と同様の機能を備え、サーバ装置２０００と同様のＥＣＵコードの提供手順により、診断ポート１０６０を介してＥＣＵにＥＣＵコードを提供するように構成してもよい。
【０２４７】
また、自動車１００１のＴＣＵ１０５０が、サーバ装置２０００からＥＣＵコードを受信し、受信したＥＣＵコードについて期待値を生成し、生成したＥＣＵコードの期待値をＥＣＵに提供してもよい。例えば、ＴＣＵ１０５０の通信モジュール１０５１のＳＩＭ１０５２が、マスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔを予め格納し、マスタ鍵Ｍａｓｔｅｒ＿ＳｅｃｒｅｔとＥＣＵのＥＣＵ識別子ＥＣＵ＿ＩＤとを使用してＣＭＡＣの生成に使用する鍵を生成し、生成した鍵によりＥＣＵコードのＣＭＡＣ（期待値）を計算する。
【０２４８】
また、自動車１００１の第１のＥＣＵ１０１０が、サーバ装置２０００から第２のＥＣＵ１０２０のＥＣＵコードを受信し、受信した第２のＥＣＵ１０２０のＥＣＵコードについて期待値を生成し、生成した第２のＥＣＵ１０２０のＥＣＵコードの期待値を第２のＥＣＵ１０２０に提供してもよい。例えば、第１のＥＣＵ１０１０のＨＳＭ１０１２が、マスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔを予め格納し、マスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔと第２のＥＣＵ１０２０のＥＣＵ識別子ＥＣＵ＿ＩＤとを使用してＣＭＡＣの生成に使用する鍵を生成し、生成した鍵により第２のＥＣＵ１０２０のＥＣＵコードのＣＭＡＣ（期待値）を計算する。
【０２４９】
以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【０２５０】
上述した実施形態では、ＥＣＵにＨＳＭ又はＳＨＥを備えたが、ＨＳＭ及びＳＨＥ以外の暗号処理チップを使用してもよい。第１のＥＣＵ１０１０に対して、例えば「ＴＰＭ（Trusted Platform Module）ｆ」と呼ばれる暗号処理チップを使用してもよい。ＴＰＭｆは耐タンパー性を有する。ＴＰＭｆはセキュアエレメントの例である。第２のＥＣＵ１０２０に対して、例えば「ＴＰＭｔ」と呼ばれる暗号処理チップを使用してもよい。ＴＰＭｔは耐タンパー性を有する。ＴＰＭｔはセキュアエレメントの例である。
【０２５１】
上述した実施形態は、自動車の製造工場において、自動車の製造工程で自動車に搭載された新品のＥＣＵに適用してもよい。また、上述した実施形態は、自動車の整備工場や販売店等において、自動車のＥＣＵを新品に交換した際に、自動車に搭載された新品のＥＣＵに適用してもよい。
【０２５２】
上述した実施形態では、車両として自動車を例に挙げたが、原動機付自転車や鉄道車両等の自動車以外の他の車両にも適用可能である。
【０２５３】
また、上述した鍵生成装置又はＥＣＵの機能を実現するためのコンピュータプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行するようにしてもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものであってもよい。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、フラッシュメモリ等の書き込み可能な不揮発性メモリ、ＤＶＤ（Digital Versatile Disc）等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【０２５４】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（例えばＤＲＡＭ（Dynamic Random Access Memory））のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【符号の説明】
【０２５５】
１１…車両インタフェース、１２，２２，４２，２０１２…記憶部、１３，２０１３…期待値計算部、１４，２０１４…検証部、１５，３４，２０１５…鍵生成部、１６，３２，５２，２０１６…暗号処理部、２０，４０…インタフェース部、２１，４１…制御部、３１，５１…測定値計算部、３３，５３…測定部、１００１…自動車、１００２，１００２ａ…車載コンピュータシステム、１０１０…第１のＥＣＵ、１０１１，１０２１…メイン演算器、１０１２…ＨＳＭ、１０１３，１０２３…記憶部、１０２０…第２のＥＣＵ、１０２２…ＳＨＥ、１０３０…ＣＡＮ、１０４０…インフォテイメント機器、１０５０…ＴＣＵ、１０５１…通信モジュール、１０５２…ＳＩＭ、１０６０…診断ポート、１０７０…ゲートウェイ、１３００…鍵生成装置、２０００…サーバ装置、２０１１…通信部、２１００…メンテナンスツール
【図１】
2018026669.tif 000003
【図２】
2018026669.tif 000004
【図３】
2018026669.tif 000005
【図４】
2018026669.tif 000006
【図５】
2018026669.tif 000007
【図６】
2018026669.tif 000008
【図７】
2018026669.tif 000009
【図８】
2018026669.tif 000010
【図９】
2018026669.tif 000011
【図１０】
2018026669.tif 000012
【図１１】
2018026669.tif 000013
【図１２】
2018026669.tif 000014
【図１３】
2018026669.tif 000015
【図１４】
2018026669.tif 000016
【手続補正書】
【提出日】平成29年10月10日(2017.10.10)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
鍵生成装置と、車両に搭載される車載コンピュータとを備え、
前記鍵生成装置は、
前記車両とデータを送受する車両インタフェースと、
前記車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成部と、
前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算部と、
前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成し、前記第１の鍵により前記期待値を暗号化して第４の暗号化データを生成する暗号処理部と、を備え、前記車両インタフェースにより、前記第１の暗号化データ、前記第２の暗号化データ及び前記第４の暗号化データを前記車両に送信し、
前記車載コンピュータは、
自車載コンピュータの外部の装置とデータを送受するインタフェース部と、
前記インタフェース部により前記鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第４の暗号化データを該取得した第１の鍵により復号して期待値を取得する暗号処理部と、
該取得された第２の鍵を使用して自車載コンピュータが予め格納しているデータの測定値を計算し、該取得された期待値に基づいて該測定値を検証する測定部と、
を備え、該測定値の検証結果を前記インタフェース部により送信する、
管理システム。
【請求項２】
前記車載コンピュータのうちの第１の車載コンピュータは、前記車載コンピュータのうちの第２の車載コンピュータに、前記鍵生成装置から送信される第１の暗号化データ、第２の暗号化データ及び第４の暗号化データを中継する、
請求項１に記載の管理システム。
【請求項３】
鍵生成装置と、車両に搭載される車載コンピュータとを備え、
前記鍵生成装置は、
前記車両とデータを送受する車両インタフェースと、
前記車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成部と、
前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算部と、
前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成し、前記第１の鍵により前記期待値を暗号化して第４の暗号化データを生成する暗号処理部と、を備え、前記車両インタフェースにより、検証値、前記第１の暗号化データ、前記第２の暗号化データ及び前記第４の暗号化データを前記車両に送信し、
前記車載コンピュータは、
自車載コンピュータの外部の装置とデータを送受するインタフェース部と、
前記インタフェース部により前記鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第４の暗号化データを該取得した第１の鍵により復号して期待値を取得する暗号処理部と、
該取得された第２の鍵を使用して自車載コンピュータが予め格納しているデータの測定値を計算し、該取得された期待値に基づいて該測定値を検証する測定部と、
を備え、該測定値の検証結果を前記インタフェース部により送信し、
前記車載コンピュータは、該測定値の検証が合格した場合には、前記インタフェース部により送信する測定値の検証結果に、前記インタフェース部により前記鍵生成装置から受信した検証値を含め、一方、該測定値の検証が不合格になった場合には、前記インタフェース部により送信する測定値の検証結果に、前記インタフェース部により前記鍵生成装置から受信した検証値を含めず、
前記鍵生成装置は、前記車両インタフェースにより前記車両から受信した検証値を、前記車両に供給した検証値に基づいて検証する検証部をさらに備える、
管理システム。
【請求項４】
前記車載コンピュータのうちの第１の車載コンピュータは、
前記車載コンピュータのうちの第２の車載コンピュータに、前記鍵生成装置から送信される第１の暗号化データ、第２の暗号化データ及び第４の暗号化データを中継する、
請求項３に記載の管理システム。
【請求項５】
車両とデータを送受する車両インタフェースと、
前記車両に搭載される車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成部と、
前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算部と、
前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成し、前記第１の鍵により前記期待値を暗号化して第４の暗号化データを生成する暗号処理部と、を備え、
前記車両インタフェースにより、前記第１の暗号化データ、前記第２の暗号化データ及び前記第４の暗号化データを前記車両に送信する、
鍵生成装置。
【請求項６】
車両に搭載される車載コンピュータにおいて、
自車載コンピュータの外部の装置とデータを送受するインタフェース部と、
前記インタフェース部により鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第４の暗号化データを該取得した第１の鍵により復号して期待値を取得する暗号処理部と、
該取得された第２の鍵を使用して自車載コンピュータが予め格納しているデータの測定値を計算し、該取得された期待値に基づいて該測定値を検証する測定部と、
を備え、
該測定値の検証結果を前記インタフェース部により送信する、
車載コンピュータ。
【請求項７】
車両とデータを送受する車両インタフェースと、
前記車両に搭載される車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成部と、
前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算部と、
前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成し、前記第１の鍵により前記期待値を暗号化して第４の暗号化データを生成する暗号処理部と、を備え、
前記車両インタフェースにより、検証値、前記第１の暗号化データ、前記第２の暗号化データ及び前記第４の暗号化データを前記車両に送信する鍵生成装置であり、
前記鍵生成装置は、前記車両インタフェースにより前記車両から受信した検証値を、前記車両に供給した検証値に基づいて検証する検証部をさらに備える、
鍵生成装置。
【請求項８】
車両に搭載される車載コンピュータにおいて、
自車載コンピュータの外部の装置とデータを送受するインタフェース部と、
前記インタフェース部により鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第４の暗号化データを該取得した第１の鍵により復号して期待値を取得する暗号処理部と、
該取得された第２の鍵を使用して自車載コンピュータが予め格納しているデータの測定値を計算し、該取得された期待値に基づいて該測定値を検証する測定部と、
を備え、
該測定値の検証結果を前記インタフェース部により送信し、
前記車載コンピュータは、該測定値の検証が合格した場合には、前記インタフェース部により送信する測定値の検証結果に、前記インタフェース部により前記鍵生成装置から受信した検証値を含め、一方、該測定値の検証が不合格になった場合には、前記インタフェース部により送信する測定値の検証結果に、前記インタフェース部により前記鍵生成装置から受信した検証値を含めない、
車載コンピュータ。
【請求項９】
鍵生成装置と、車両に搭載される車載コンピュータとを備える管理システムの管理方法であって、
前記鍵生成装置が、前記車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成ステップと、
前記鍵生成装置が、前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算ステップと、
前記鍵生成装置が、前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成し、前記第１の鍵により前記期待値を暗号化して第４の暗号化データを生成する暗号処理ステップと、
前記車載コンピュータが、自車載コンピュータの外部の装置とデータを送受するインタフェース部により前記鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第４の暗号化データを該取得した第１の鍵により復号して期待値を取得する暗号処理ステップと、
前記車載コンピュータが、該取得された第２の鍵を使用して自車載コンピュータが予め格納しているデータの測定値を計算し、該取得された期待値に基づいて該測定値を検証する測定ステップと、
前記車載コンピュータが、該測定値の検証結果を前記インタフェース部により送信する送信ステップと、
を含む管理方法。
【請求項１０】
鍵生成装置と、車両に搭載される車載コンピュータとを備える管理システムの管理方法であって、
前記鍵生成装置が、前記車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成ステップと、
前記鍵生成装置が、前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算ステップと、
前記鍵生成装置が、前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成し、前記第１の鍵により前記期待値を暗号化して第４の暗号化データを生成する暗号処理ステップと、
前記車載コンピュータが、自車載コンピュータの外部の装置とデータを送受するインタフェース部により前記鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第４の暗号化データを該取得した第１の鍵により復号して期待値を取得する暗号処理ステップと、
前記車載コンピュータが、該取得された第２の鍵を使用して自車載コンピュータが予め格納しているデータの測定値を計算し、該取得された期待値に基づいて該測定値を検証する測定ステップと、
前記車載コンピュータが、該測定値の検証が合格した場合には、前記インタフェース部により送信する測定値の検証結果に、前記インタフェース部により前記鍵生成装置から受信した検証値を含め、一方、該測定値の検証が不合格になった場合には、前記インタフェース部により送信する測定値の検証結果に、前記インタフェース部により前記鍵生成装置から受信した検証値を含めない送信準備ステップと、
前記車載コンピュータが、前記インタフェース部により測定値の検証結果を送信する送信ステップと、
前記鍵生成装置が、前記車両インタフェースにより前記車両から受信した検証値を、前記車両に供給した検証値に基づいて検証する検証ステップと、
を含む管理方法。
【請求項１１】
車両とデータを送受する車両インタフェースを備える鍵生成装置のコンピュータに、
前記車両に搭載される車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成機能と、
前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算機能と、
前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成し、前記第１の鍵により前記期待値を暗号化して第４の暗号化データを生成する暗号処理機能と、
前記車両インタフェースにより、前記第１の暗号化データ、前記第２の暗号化データ及び前記第４の暗号化データを前記車両に送信する送信機能と、
を実現させるためのコンピュータプログラム。
【請求項１２】
車両に搭載される車載コンピュータに、
自車載コンピュータの外部の装置とデータを送受するインタフェース部により鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第４の暗号化データを該取得した第１の鍵により復号して期待値を取得する暗号処理機能と、
該取得された第２の鍵を使用して自車載コンピュータが予め格納しているデータの測定値を計算し、該取得された期待値に基づいて該測定値を検証する測定機能と、
該測定値の検証結果を前記インタフェース部により送信する送信機能と、
を実現させるためのコンピュータプログラム。
【請求項１３】
車両とデータを送受する車両インタフェースを備える鍵生成装置のコンピュータに、
前記車両に搭載される車載コンピュータに格納される第１の鍵及び第２の鍵を生成する鍵生成機能と、
前記第２の鍵を使用して、前記車載コンピュータが予め格納しているデータの期待値を計算する期待値計算機能と、
前記車載コンピュータが予め格納している初期鍵により前記第１の鍵を暗号化して第１の暗号化データを生成し、前記第１の鍵により前記第２の鍵を暗号化して第２の暗号化データを生成し、前記第１の鍵により前記期待値を暗号化して第４の暗号化データを生成する暗号処理機能と、
前記車両インタフェースにより、検証値、前記第１の暗号化データ、前記第２の暗号化データ及び前記第４の暗号化データを前記車両に送信する送信機能と、を実現させ、
前記車両インタフェースにより前記車両から受信した検証値を、前記車両に供給した検証値に基づいて検証する検証機能をさらに実現させるためのコンピュータプログラム。
【請求項１４】
車両に搭載される車載コンピュータに、
自車載コンピュータの外部の装置とデータを送受するインタフェース部により鍵生成装置から受信した第１の暗号化データを自車載コンピュータが予め格納している初期鍵により復号して第１の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第２の暗号化データを該取得した第１の鍵により復号して第２の鍵を取得し、前記インタフェース部により前記鍵生成装置から受信した第４の暗号化データを該取得した第１の鍵により復号して期待値を取得する暗号処理機能と、
該取得された第２の鍵を使用して自車載コンピュータが予め格納しているデータの測定値を計算し、該取得された期待値に基づいて該測定値を検証する測定機能と、
該測定値の検証結果を前記インタフェース部により送信する送信機能と、を実現させ、
前記送信機能は、該測定値の検証が合格した場合には、前記インタフェース部により送信する測定値の検証結果に、前記インタフェース部により前記鍵生成装置から受信した検証値を含め、一方、該測定値の検証が不合格になった場合には、前記インタフェース部により送信する測定値の検証結果に、前記インタフェース部により前記鍵生成装置から受信した検証値を含めない、
コンピュータプログラム。