(57)【要約】 【課題】コストのかかるフラッシュメモリを用いることなく、複数の鍵情報を安全に管理する。【解決手段】情報処理装置は複数の鍵情報を管理するセキュリティ情報管理部と、複数の鍵情報の少なくとも一つを用いたデータの暗号化処理及び復号化処理を指示するとともに、暗号化されたデータを送受信する制御を行う第１制御部と、を備える。セキュリティ情報管理部は、送受信されるデータを暗号化するための第１鍵情報と、第１鍵情報を暗号化するための第２鍵情報とを記憶する揮発性の第１記憶部と、第１鍵情報及び第２鍵情報を暗号化するための第３鍵情報を記憶する不揮発性の第２記憶部と、を有し、第１制御部は、セキュリティ情報管理部への電源電圧を遮断する前に、第３鍵情報に基づいて暗号化された第１鍵情報の暗号化情報と、第３鍵情報に基づいて暗号化された第２鍵情報の暗号化情報とを、セキュリティ情報管理部及び第１制御部とは別個に設けられる不揮発性の第３記憶部に記憶する制御を行う。【選択図】図１
2019165397.tif 000002
【特許請求の範囲】
【請求項１】
暗号化されていない平文の複数の鍵情報を管理するセキュリティ情報管理部と、
前記セキュリティ情報管理部に対して、前記複数の鍵情報の少なくとも一つを用いたデータの暗号化処理及び復号化処理を指示するとともに、暗号化されたデータを送受信する制御を行う第１制御部と、を備え、
前記セキュリティ情報管理部は、
送受信されるデータを暗号化するための第１鍵情報と、前記第１鍵情報を暗号化するための第２鍵情報とを記憶する揮発性の第１記憶部と、
前記第１鍵情報及び前記第２鍵情報を暗号化するための第３鍵情報を記憶する不揮発性の第２記憶部と、を有し、
前記第１制御部は、前記セキュリティ情報管理部への電源電圧を遮断する前に、前記第３鍵情報に基づいて暗号化された前記第１鍵情報の暗号化情報と、前記第３鍵情報に基づいて暗号化された前記第２鍵情報の暗号化情報とを、前記セキュリティ情報管理部及び前記第１制御部とは別個に設けられる不揮発性の第３記憶部に記憶する制御を行う、情報処理装置。
【請求項２】
前記セキュリティ情報管理部は、前記セキュリティ情報管理部への電源電圧の供給が再開された後に、前記第１制御部からの指示に従って、前記第３記憶部に記憶されている前記第１鍵情報の暗号化情報及び前記第２鍵情報の暗号化情報を、前記第３鍵情報に基づいて復号して得られた前記第１鍵情報及び前記第２鍵情報を前記第１記憶部に記憶する制御を行う第２制御部を有する、請求項１に記載の情報処理装置。
【請求項３】
前記第２制御部は、前記セキュリティ情報管理部への電源電圧を遮断する前に、前記第１鍵情報の暗号化情報及び前記第２鍵情報の暗号化情報を識別する識別情報を前記第３鍵情報に基づいて生成し、
前記第１制御部は、前記生成された識別情報を、前記第１鍵情報の暗号化情報と、前記第２鍵情報の暗号化情報とともに前記第３記憶部に記憶する制御を行い、
前記第２制御部は、前記セキュリティ情報管理部への電源電圧の供給が再開された後に、前記第３記憶部に記憶された前記第１鍵情報の暗号化情報及び前記第２鍵情報の暗号化情報を識別する識別情報を前記第３鍵情報に基づいて生成し、前記生成された識別情報が前記第３記憶部に記憶された識別情報に一致するか否かをチェックし、一致する場合には、前記第３記憶部に記憶されている前記第１鍵情報の暗号化情報及び前記第２鍵情報の暗号化情報を、前記第３鍵情報に基づいて復号して得られた前記第１鍵情報及び前記第２鍵情報を前記第１記憶部に記憶する制御を行う、請求項２に記載の情報処理装置。
【請求項４】
前記セキュリティ情報管理部は、前記第１記憶部に記憶された前記第１鍵情報及び前記第２鍵情報と、前記第２記憶部に記憶された前記第３鍵情報とが前記セキュリティ情報管理部の外部に出力されないように、前記第１乃至第３鍵情報を管理する、請求項１乃至３のいずれか一項に記載の情報処理装置。
【請求項５】
前記第３記憶部は、前記セキュリティ情報管理部及び前記第１制御部が実装される半導体装置とは別個の不揮発メモリ装置内に実装され、
前記不揮発メモリ装置は、前記第１鍵情報の暗号化情報及び前記第２鍵情報の暗号化情報を記憶する他に、前記第１制御部が実行するプログラムを記憶する、請求項１乃至４のいずれか一項に記載の情報処理装置。
【請求項６】
前記第２記憶部は、電気的なヒューズと、論理回路の入力端子の論理固定化との少なくとも一方に基づいて、前記第３鍵情報を記憶する、請求項１乃至５のいずれか一項に記載の情報処理装置。
【請求項７】
複数の鍵情報の少なくとも一つを用いて、送受信されるデータの暗号化処理及び復号化処理を行う情報処理方法であって、
送受信されるデータを暗号化するための第１鍵情報と、前記第１鍵情報を暗号化するための第２鍵情報とをセキュリティ情報管理部内の揮発性の第１記憶部に記憶し、
前記第１鍵情報及び前記第２鍵情報を暗号化するための第３鍵情報を前記セキュリティ情報管理部内の不揮発性の第２記憶部に記憶し、
前記第１記憶部への電源電圧を遮断する際には、前記第３鍵情報に基づいて暗号化された前記第１鍵情報の暗号化情報と、前記第３鍵情報に基づいて暗号化された前記第２鍵情報の暗号化情報とを、前記セキュリティ情報管理部とは別個に設けられる不揮発性の第３記憶部に記憶し、
前記第１記憶部への電源電圧の供給が再開された後に、前記第３記憶部に記憶されている前記第１鍵情報の暗号化情報及び前記第２鍵情報の暗号化情報を、前記第３鍵情報に基づいて復号して得られた前記第１鍵情報及び前記第２鍵情報を前記第１記憶部に記憶する、情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、鍵情報を用いて暗号化処理及び復号化処理を行う情報処理装置及び情報処理方法に関する。
【背景技術】
【０００２】
車載向けの情報処理装置は、複数のＥＣＵ（Electronic Control Unit）を備えており、各ＥＣＵはＣＡＮ（Controller Area Network）を通して各種データを相互に送受信する。複数のＥＣＵ間で送受信されるデータの中には、改ざんされては困るデータもある。このため、ＥＣＵで送受信されるデータには、改ざんの検知を行うためのタグ情報であるＭＡＣ（Message Authentication Code）が付加される。ＭＡＣは、共通鍵情報Ｋｅｙと任意のデータとを用いて生成される。
【０００３】
共通鍵情報Ｋｅｙが漏洩すると、改ざんした任意のデータを他のＥＣＵに送信できてしまう。このため、共通鍵情報Ｋｅｙは、ＥＣＵ内のセキュリティシステムの内部でしか扱えないように、セキュリティシステム内のフラッシュメモリ等の不揮発メモリに記憶するのが一般的である。
【０００４】
しかしながら、情報処理装置には、メインプロセッサが実行するプログラムを格納するためのフラッシュメモリが別に必要であり、複数のフラッシュメモリを設けるとコストが高くなる。
【０００５】
また、情報処理装置の大半は、ワンチップ化が可能であるが、半導体プロセスの微細化によってチップが小型化され、チップ内にフラッシュメモリを内蔵することが困難になりつつある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１７−１３０９０８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明が解決しようとする課題は、鍵情報の漏洩を防止しつつ、かつコストのかかるフラッシュメモリを用いることなく、複数の鍵情報を安全に管理することが可能な情報処理装置及び情報処理方法を提供することである。
【課題を解決するための手段】
【０００８】
本実施形態によれば、暗号化されていない平文の複数の鍵情報を管理するセキュリティ情報管理部と、
前記セキュリティ情報管理部に対して、前記複数の鍵情報の少なくとも一つを用いたデータの暗号化処理及び復号化処理を指示するとともに、暗号化されたデータを送受信する制御を行う第１制御部と、を備え、
前記セキュリティ情報管理部は、
送受信されるデータを暗号化するための第１鍵情報と、前記第１鍵情報を暗号化するための第２鍵情報とを記憶する揮発性の第１記憶部と、
前記第１鍵情報及び前記第２鍵情報を暗号化するための第３鍵情報を記憶する不揮発性の第２記憶部と、を有し、
前記第１制御部は、前記セキュリティ情報管理部への電源電圧を遮断する前に、前記第３鍵情報に基づいて暗号化された前記第１鍵情報の暗号化情報と、前記第３鍵情報に基づいて暗号化された前記第２鍵情報の暗号化情報とを、前記セキュリティ情報管理部及び前記第１制御部とは別個に設けられる不揮発性の第３記憶部に記憶する制御を行う、情報処理装置が提供される。
【図面の簡単な説明】
【０００９】
【図１】本実施形態による情報処理装置を備えた情報処理システムの概略構成を示すブロック図。
【図２】図１の各ＥＣＵの内部構成を示すブロック図。
【図３】Ｋｅｙの更新手順の一例を示すフローチャート。
【図４】Ｋｅｙの更新手順に関連する各部とバスを実線で示し、関連性の薄い各部とバスを破線で示したＥＣＵのブロック図。
【図５】ＫＥＫの更新手順の一例を示すフローチャート。
【図６】ＫＥＫの更新手順に関連する各部とバスを実線で示し、関連性の薄い各部とバスを破線で示したＥＣＵのブロック図。
【図７】エクスポート処理の処理手順の一例を示すフローチャート。
【図８】エクスポート処理に関連する各部とバスを実線で示し、関連性の薄い各部とバスを破線で示したＥＣＵのブロック図。
【図９】インポート処理の処理手順の一例を示すフローチャート。
【図１０】図７のエクスポート処理の一変形例のフロートチャート。
【図１１】図９のインポート処理の一変形例のフローチャート。
【図１２】データを暗号化して他のＥＣＵに送信する送信処理の処理手順の一例を示すフローチャート。
【図１３】送信処理に関連する各部とバスを実線で示し、関連性の薄い各部とバスを破線で示したＥＣＵのブロック図。
【発明を実施するための形態】
【００１０】
以下、図面を参照して実施の形態について説明する。なお、本件明細書と添付図面においては、理解のしやすさと図示の便宜上、一部の構成部分を省略、変更または簡易化して説明および図示しているが、同様の機能を期待し得る程度の技術内容も、本実施の形態に含めて解釈することとする。また、本件明細書に添付する図面においては、図示と理解のしやすさの便宜上、適宜縮尺および縦横の寸法比等を、実物から変更し誇張してある。
【００１１】
図１は本実施形態による情報処理装置１を備えた情報処理システム２の概略構成を示すブロック図である。図１の情報処理システム２は、例えば車両に搭載されるものである。図１では、情報処理装置１がＥＣＵ３である例を示している。図１の情報処理システム２には、複数のＥＣＵ３と、これらＥＣＵ３が共通に接続されるＣＡＮ４とを備えている。各ＥＣＵ３は、車両の各部に設けられており、暗号化されたデータを相互に送受信することができる。なお、図１の情報処理装置１及び情報処理システム２は、必ずしも車載用に限られるわけではないが、以下では、一例として車載用のＥＣＵ３及び情報処理システム２について説明する。
【００１２】
図２は図１の各ＥＣＵ３の内部構成を示すブロック図である。図１のＥＣＵ３は、メインＣＰＵ（第１制御部）１１と、Ｉ／Ｏ部１２と、セキュリティ情報管理部１３とを備えている。また、ＥＣＵ３には、フラッシュメモリ１４からなる不揮発メモリが外付けされている。このフラッシュメモリ１４は、本来的には、メインＣＰＵ１１が実行するプログラム等を記憶するためものである。本実施形態では、メインＣＰＵ１１用に設けられるフラッシュメモリ１４を流用して、後述する鍵情報を記憶する。したがって、本実施形態によれば、鍵情報を記憶するための専用のフラッシュメモリが不要になり、装置コストを削減できる。なお、図１の各ＥＣＵ３は、フラッシュメモリ１４を除いて一つの半導体チップで構成可能である。
【００１３】
メインＣＰＵ１１は、ＥＣＵ３内の各部を制御する。例えば、メインＣＰＵ１１は、セキュリティ情報管理部１３に対して複数の鍵情報の少なくとも一つを用いたデータの暗号化処理及び復号化処理を指示するとともに、暗号化されたデータをＩ／Ｏ部１２とＣＡＮ４を介して他のＥＣＵ３との間で送受信する制御を行う。メインＣＰＵ１１には、キャッシュメモリ等のワークメモリが内蔵されている。なお、メインＣＰＵ１１とは別個に、メインメモリやキャッシュメモリ等のメインＣＰＵ１１によりアクセスされるメモリを設けてもよい。ＥＣＵ３に電源電圧が供給されると、メインＣＰＵ１１は、不図示のＲＯＭに記憶された基本プログラムを読み出して実行し、その後に、フラッシュメモリ１４に記憶されている種々のプログラムを読み出して実行する。
【００１４】
セキュリティ情報管理部１３は、セキュリティシステムとも呼ばれ、暗号化されていない平文の複数の鍵情報を管理するとともに、メインＣＰＵ１１からの指示に従って複数の鍵情報の少なくとも一つを用いてデータの暗号化処理及び復号化処理を行う。
【００１５】
図２の例では、メインＣＰＵ１１、Ｉ／Ｏ部１２、フラッシュメモリ１４及びセキュリティ情報管理部１３が共通のバスに接続されている例を示しているが、バスの構成は任意である。
【００１６】
セキュリティ情報管理部１３は、サブＣＰＵ（第２制御部）２１と、ＡＥＳ処理部２２と、ＣＭＡＣ処理部２３と、揮発性の第１記憶部２４と、不揮発性の第２記憶部２５とを有する。
【００１７】
サブＣＰＵ２１は、メインＣＰＵ１１と通信を行い、メインＣＰＵ１１からの指示によりセキュリティ情報管理部１３内の各部を制御する。ＡＥＳ処理部２２は、ＡＥＳ（Advanced Encryption Standard）に従ってデータの暗号化処理を行う。ＣＭＡＣ処理部２３は、ＣＭＡＣ（Cipher-based Message Authentication Code）アルゴリズムに従ってデータの暗号化処理を行う。なお、暗号化の方式は、必ずしもＡＥＳやＣＭＡＣには限らない。
【００１８】
第１記憶部２４は、複数の鍵情報を記憶する。複数の鍵情報は、例えば、共通鍵情報（第１鍵情報）Ｋｅｙと、Ｋｅｙを暗号化するための鍵情報（第２鍵情報）ＫＥＫを含んでいる。第１記憶部２４は、揮発性であればよく、大容量のメモリ容量を必要としないことから、例えばレジスタ等で構成可能である。レジスタは、例えば複数のフリップフロップを用いて構成される揮発メモリである。
【００１９】
第２記憶部２５は、ＫｅｙとＫＥＫを暗号化するためのスクランブル鍵情報（第３鍵情報）を記憶する不揮発メモリである。第２記憶部２５は、スクランブル鍵情報を記憶可能な小容量のメモリ容量で足りることから、例えばｅＦｕｓｅが用いられる。ｅＦｕｓｅでは、予め定めた電圧レベルの配線パターンを電気的に切断するか否かにより、任意の論理のデータを記憶可能である。あるいは、第２記憶部２５は、論理ゲート等の論理回路で構成可能である。この場合、論理回路の入力端子の論理を固定化することにより、論理回路から任意の論理レベルの鍵情報を出力することができる。ただし、第２記憶部２５に用いる論理回路には、ＥＣＵ３への電源電圧が遮断されても、電源電圧が供給されている必要があり、例えば専用の電池から電圧供給を受けてもよい。第２記憶部２５をｅＦｕｓｅだけで構成すると、セキュリティ性能が弱いため、ｅＦｕｓｅによる値と、論理回路による値とを組み合わせて、スクランブル鍵情報を生成してもよい。
【００２０】
本実施形態によるセキュリティ情報管理部１３は、第１記憶部２４に記憶されたＫｅｙ及びＫＥＫと、第２記憶部２５に記憶されたスクランブル鍵情報とを、セキュリティ情報管理部１３の外部に読み出せないように管理する。
【００２１】
ＥＣＵ３に電源電圧を供給した直後の初期状態では、第１記憶部２４には、初期状態のＫｅｙiniとＫＥＫiniが記憶される。第１記憶部２４に記憶されるＫｅｙとＫＥＫは、定期または不定期に更新されることがある。Ｋｅｙを更新するタイミングとＫＥＫを更新するタイミングは、必ずしも一致しない。図３はＫｅｙの更新手順の一例を示すフローチャートである。また、図４は、Ｋｅｙの更新手順に関連する各部とバスを実線で示し、関連性の薄い各部とバスを破線で示したＥＣＵ３のブロック図である。
【００２２】
図３は、他のＥＣＵ３から、暗号化されたＫｅｙを受信する例を示している。まず、メインＣＰＵ１１は、ＣＡＮ４とＩ／Ｏ部１２を介して、暗号化されたＫｅｙnew（Encrypted Keynew）とＭＡＣを受信すると（ステップＳ１）、サブＣＰＵ２１に対して、復号化処理を指示する（ステップＳ２）。暗号化されたＫｅｙnewとＭＡＣは、それぞれ以下の（１）式と（２）式で表される。
Encrypted Keynew＝AES（Keynew, KEK）    …（１）
MAC＝CMAC（Encrypted Keynew, KEK）    …（２）
【００２３】
この指示を受けて、サブＣＰＵ２１は、第１記憶部２４に記憶されているＫＥＫを用いて、ＡＥＳ処理部２２とＣＭＡＣ処理部２３に対して、新たなＫｅｙnewの復号を指示する（ステップＳ３）。この指示を受けて、ＣＭＡＣ処理部２３は、上述した（２）式に基づいて、ＭＡＣを生成する（ステップＳ４）。次に、生成されたＭＡＣとステップＳ１で受信されたＭＡＣとが一致するか否かをチェックし、一致する場合には、ＡＥＳ処理部２２は、上述した（１）式に基づいて、新たなＫｅｙnewを取得する（ステップＳ５）。
【００２４】
サブＣＰＵ２１は、新たなＫｅｙnewが取得されると、第１記憶部２４に記憶されていた旧Ｋｅｙを、新たなＫｅｙnewに上書きして更新する（ステップＳ６）。
【００２５】
図５はＫＥＫの更新手順の一例を示すフローチャートである。また、図６は、ＫＥＫの更新手順に関連する各部とバスを実線で示し、関連性の薄い各部とバスを破線で示したＥＣＵ３のブロック図である。まず、メインＣＰＵ１１は、ＣＡＮ４とＩ／Ｏ部１２を介して、暗号化されたＫＥＫnew（Encrypted keynew９とＭＡＣを受信すると（ステップＳ１１）、サブＣＰＵ２１に対して、復号化処理を指示する（ステップＳ１２）。暗号化されたＫＥＫとＭＡＣは、それぞれ以下の（３）式と（４）式で表される。
Encrypted KEKnew＝AES（KEKnew, KEKini）    …（３）
MAC＝CMAC（Encrypted KEKnew, KEKini）    …（４）
【００２６】
この指示を受けて、サブＣＰＵ２１は、第１記憶部２４に記憶されているＫＥＫiniを用いて、ＡＥＳ処理部２２とＣＭＡＣ処理部２３に対して、新たなＫＥＫnewの復号を指示する（ステップＳ１３）。この指示を受けて、ＣＭＡＣ処理部２３は、上述した（４）式に基づいて、ＭＡＣを生成する（ステップＳ１４）。次に、生成されたＭＡＣとステップＳ１１で受信されたＭＡＣとが一致するか否かをチェックし、一致する場合には、ＡＥＳ処理部２２は、上述した（３）式に基づいて、新たなＫＥＫnewを取得する（ステップＳ１５）。
【００２７】
サブＣＰＵ２１は、新たなＫＥＫnewが取得されると、第１記憶部２４に記憶されていたＫＥＫiniを、新たなＫＥＫnewに上書きして更新する（ステップＳ１６）。
【００２８】
第１記憶部２４は揮発メモリであるため、セキュリティ情報管理部１３への電源供給が遮断されると、第１記憶部２４内のＫｅｙとＫＥＫは消去されてしまう。そこで、本実施形態では、セキュリティ情報管理部１３への電源供給が遮断される前に、第１記憶部２４内のＫｅｙとＫＥＫを暗号化した上で、セキュリティ情報管理部１３の外部のフラッシュメモリ１４に待避させる。この待避処理を本実施形態ではエクスポート処理と呼ぶ。
【００２９】
図７はエクスポート処理の処理手順の一例を示すフローチャートである。また、図８は、エクスポート処理に関連する各部とバスを実線で示し、関連性の薄い各部とバスを破線で示したＥＣＵ３のブロック図である。
【００３０】
まず、メインＣＰＵ１１は、セキュリティ情報管理部１３への電源遮断要求があったか否かを判定する（ステップＳ２１）。電源遮断要求がなければ、図７の処理を終了する。電源遮断要求があった場合には、メインＣＰＵ１１は、サブＣＰＵ２１に対して、第１記憶部２４内のＫｅｙとＫＥＫの読み出しと、第２記憶部２５内のスクランブル鍵情報の読出とを指示する（ステップＳ２２）。
【００３１】
この指示を受けて、サブＣＰＵ２１は、第１記憶部２４内からＫｅｙとＫＥＫを読み出すとともに、第２記憶部２５内からスクランブル鍵情報を読み出す（ステップＳ２３）。次に、サブＣＰＵ２１は、スクランブル鍵情報を用いてＫｅｙを暗号化したScrambled Keyと、同じくスクランブル鍵情報を用いてＫＥＫを暗号化したScrambled KEKを生成する（ステップＳ２４）。このとき、ＡＥＳ処理部２２により暗号化が必須である。また、ＣＭＡＣ処理部２３でＭＡＣを生成してもよい。
【００３２】
次に、メインＣＰＵ１１は、サブＣＰＵ２１が生成したScrambled KeyとScrambled KEKをフラッシュメモリ１４に記憶する（ステップＳ２５）。
【００３３】
図７と図８に示すように、セキュリティ情報管理部１３の外部には、ＫｅｙとＫＥＫをそれぞれ暗号化したScrambled KeyとScrambled KEKが出力され、Ｋｅｙ、ＫＥＫ及びスクランブル鍵情報は出力されない。よって、セキュリティ情報管理部１３の外部で、Scrambled KeyとScrambled KEKを復号化することは困難であり、セキュリティ性能を向上できる。
【００３４】
セキュリティ情報管理部１３への電源供給が再開される場合は、セキュリティ情報管理部１３内の第１記憶部２４にＫｅｙとＫＥＫを再度記憶するインポート処理が行われる。インポート処理は、上述したエクスポート処理とは逆の処理である。
【００３５】
図９はインポート処理の処理手順の一例を示すフローチャートである。インポート処理に関連する各部とバスの種類は、図８と同様である。図９の処理は、セキュリティ情報管理部１３への電源供給が再開されたときに開始される。まず、メインＣＰＵ１１は、フラッシュメモリ１４内のScrambled KeyとScrambled KEKを読み出して、サブＣＰＵ２１に転送するとともに、サブＣＰＵ２１に対してｋｅｙとＫＥＫの復号処理を指示する（ステップＳ３１）。
【００３６】
この指示を受けて、サブＣＰＵ２１は、第２記憶部２５からスクランブル鍵情報を読み出す（ステップＳ３２）。そして、サブＣＰＵ２１は、スクランブル鍵情報を用いて、メインＣＰＵ１１から送られてきたScrambled KeyとScramble KEKを復号して、ＫｅｙとＫＥＫを取得する（ステップＳ３３）。その後、サブＣＰＵ２１は、取得したＫｅｙとＫＥＫを第１記憶部２４に記憶する（ステップＳ３４）。
【００３７】
図９のインポート処理の際に、Scrambled KeyとScrambled KEKが改ざんされていないことをチェックするようにしてもよい。この場合、例えばＭＡＣを利用してチェックを行う。
図１０は図７のエクスポート処理の一変形例のフロートチャート、図１１は図９のインポート処理の一変形例のフローチャートである。
図１０のステップＳ２１〜Ｓ２３は図７のステップＳ２１〜Ｓ２３と同様の処理である。ステップＳ２４Ａでは、Scrambled KeyとScrambled KEKを生成するだけでなく、Scrambled KeyとScrambled KEKに対するＭＡＣ（識別情報）をスクランブル鍵情報を用いて生成する。次に、Scrambled KeyとScrambled KEKとともに、生成したＭＡＣをフラッシュメモリ１４に記憶する（ステップＳ２５Ａ）。
図１１のインポート処理では、メインＣＰＵ１１はサブＣＰＵ２１に、フラッシュメモリ１４内のScrambled Key、Scrambled KEK及びＭＡＣを送信する（ステップＳ３１Ａ）。次に、サブＣＰＵ２１は、第２記憶部２５からスクランブル鍵情報を読み出す（ステップＳ３２）。次に、サブＣＰＵ２１は、スクランブル鍵情報を用いて、ステップＳ３１Ａで受信されたScrambled KeyとScrambled KEKに対するＭＡＣを生成し、生成されたＭＡＣとステップＳ３１Ａで受信されたＭＡＣとが一致するか否かをチェックし、一致した場合には、受信されたScrambled KeyとScrambled KEKをスクランブル鍵情報を用いて復号して、ＫｅｙとＫＥＫを取得する（ステップＳ３３Ａ）。次に、ＫｅｙとＫＥＫを第１記憶部２４に記憶する（ステップＳ３４）。
【００３８】
図１２はデータを暗号化して他のＥＣＵ３に送信する送信処理の処理手順の一例を示すフローチャートである。また、図１３は、送信処理に関連する各部とバスを実線で示し、関連性の薄い各部とバスを破線で示したＥＣＵ３のブロック図である。まず、メインＣＰＵ１１は、送信するべきユーザデータをサブＣＰＵ２１に送信し、暗号化を指示する（ステップＳ４１）。この指示を受けてサブＣＰＵ２１は、第１記憶部２４からＫｅｙを読み出す（ステップＳ４２）。次に、サブＣＰＵ２１は、ＡＥＳ処理部２２に対して、Ｋｅｙを用いてユーザデータを暗号化するよう指示するとともに、ＣＭＡＣ処理部２３に対して、Ｋｅｙを用いてユーザデータのＭＡＣを生成するよう指示する（ステップＳ４３）。
【００３９】
ＡＥＳ処理部２２は、以下の（５）式に基づいて、Encrypted User-dataを生成する。また、ＣＭＡＣ処理部２３は、以下の（６）式に基づいて、ＭＡＣを生成する。
Encrypted User-data＝AES（User-data, Key）    …（５）
MAC＝CMAC（User-data, Key）    …（６）
【００４０】
サブＣＰＵ２１は、ＡＥＳ処理部２２が生成したEncrypted User-dataと、ＣＭＡＣ処理部２３が生成したＭＡＣとをメインＣＰＵ１１に送信する（ステップＳ４４）。これらを受信したメインＣＰＵ１１は、Encrypted User-dataとＭＡＣとをＩ／Ｏ部１２とＣＡＮ４を介して、他のＥＣＵ３に送信する（ステップＳ４５）。
【００４１】
このように、本実施形態では、セキュリティ情報管理部１３内に、揮発性の第１記憶部２４と不揮発性の第２記憶部２５を設け、第１記憶部２４にはＫｅｙとＫＥＫを記憶し、第２記憶部２５にはスクランブル鍵情報を記憶する。そして、セキュリティ情報管理部１３への電源供給を遮断する際には、スクランブル鍵情報を用いて、ＫｅｙとＫＥＫをそれぞれ暗号化して、暗号化されたＫｅｙとＫＥＫを、セキュリティ情報管理部１３の外部にあってメインＣＰＵ１１により実行されるプログラム等を記憶するフラッシュメモリ１４に記憶する。その後、セキュリティ情報管理部１３への電源供給が再開されると、メインＣＰＵ１１はフラッシュメモリ１４内の暗号化されたＫｅｙとＫＥＫを読み出してセキュリティ情報管理部１３に送る。セキュリティ情報管理部１３内のサブＣＰＵ２１は、第２記憶部２５内のスクランブル鍵情報を用いて、暗号化されたＫｅｙとＫＥＫを復号して、第１記憶部２４に記憶する。
【００４２】
以上の処理を行うことで、セキュリティ情報管理部１３への電源供給が遮断されても、ＫｅｙとＫＥＫが失われることはない。また、本実施形態によれば、セキュリティ情報管理部１３に、鍵情報を記憶するためのフラッシュメモリ１４を設けなくて済み、装置コストを削減できる。さらに、セキュリティ情報管理部１３の電源遮断時には、プロセッサが実行するプログラム等が記憶される既存のフラッシュメモリ１４を流用して、暗号化されたＫｅｙとＫＥＫを記憶するため、これらの暗号化された鍵情報を記憶するための専用の不揮発メモリが不要となり、さらなる装置コストの削減が図れる。
【００４３】
本実施形態では、セキュリティ情報管理部１３への電源供給の遮断時にＫｅｙとＫＥＫを暗号化するのに用いるスクランブル鍵情報は、セキュリティ情報管理部１３の外部へは出力されない。これにより、このスクランブル鍵情報を用いて暗号化されたＫｅｙとＫＥＫをセキュリティ情報管理部１３の外部のフラッシュメモリ１４に記憶したとしても、セキュリティ性能が低下するおそれはない。同様に、第１記憶部２４に記憶されている平文のＫｅｙとＫＥＫもセキュリティ情報管理部１３の外部には出力されないように管理されるため、データや鍵情報の改ざん等を防止できる。
【００４４】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００４５】
１  情報処理装置、２  情報処理システム、３  ＥＣＵ、４  ＣＡＮ、１１  メインＣＰＵ、１２  Ｉ／Ｏ部、１３  セキュリティ情報管理部、１４  フラッシュメモリ、２１  サブＣＰＵ、２２  ＡＥＳ処理部、２３  ＣＭＡＣ処理部、２４  第１記憶部、２５  第２記憶部
【図１】
2019165397.tif 000003
【図２】
2019165397.tif 000004
【図３】
2019165397.tif 000005
【図４】
2019165397.tif 000006
【図５】
2019165397.tif 000007
【図６】
2019165397.tif 000008
【図７】
2019165397.tif 000009
【図８】
2019165397.tif 000010
【図９】
2019165397.tif 000011
【図１０】
2019165397.tif 000012
【図１１】
2019165397.tif 000013
【図１２】
2019165397.tif 000014
【図１３】
2019165397.tif 000015