JP6852009B2 - 情報処理装置及び情報処理方法 - Google Patents

情報処理装置及び情報処理方法 Download PDF

Info

Publication number
JP6852009B2
JP6852009B2 JP2018052999A JP2018052999A JP6852009B2 JP 6852009 B2 JP6852009 B2 JP 6852009B2 JP 2018052999 A JP2018052999 A JP 2018052999A JP 2018052999 A JP2018052999 A JP 2018052999A JP 6852009 B2 JP6852009 B2 JP 6852009B2
Authority
JP
Japan
Prior art keywords
information
key information
key
storage unit
encryption
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018052999A
Other languages
English (en)
Other versions
JP2019165397A (ja
Inventor
武 小原
武 小原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Toshiba Electronic Devices and Storage Corp
Original Assignee
Toshiba Corp
Toshiba Electronic Devices and Storage Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp, Toshiba Electronic Devices and Storage Corp filed Critical Toshiba Corp
Priority to JP2018052999A priority Critical patent/JP6852009B2/ja
Priority to CN201810907211.1A priority patent/CN110311780A/zh
Priority to US16/127,532 priority patent/US20190294826A1/en
Publication of JP2019165397A publication Critical patent/JP2019165397A/ja
Application granted granted Critical
Publication of JP6852009B2 publication Critical patent/JP6852009B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/72Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3242Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/30Means for acting in the event of power-supply failure or interruption, e.g. power-supply fluctuations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/84Vehicles

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Power Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Storage Device Security (AREA)

Description

本発明の実施形態は、鍵情報を用いて暗号化処理及び復号化処理を行う情報処理装置及び情報処理方法に関する。
車載向けの情報処理装置は、複数のECU(Electronic Control Unit)を備えており、各ECUはCAN(Controller Area Network)を通して各種データを相互に送受信する。複数のECU間で送受信されるデータの中には、改ざんされては困るデータもある。このため、ECUで送受信されるデータには、改ざんの検知を行うためのタグ情報であるMAC(Message Authentication Code)が付加される。MACは、共通鍵情報Keyと任意のデータとを用いて生成される。
共通鍵情報Keyが漏洩すると、改ざんした任意のデータを他のECUに送信できてしまう。このため、共通鍵情報Keyは、ECU内のセキュリティシステムの内部でしか扱えないように、セキュリティシステム内のフラッシュメモリ等の不揮発メモリに記憶するのが一般的である。
しかしながら、情報処理装置には、メインプロセッサが実行するプログラムを格納するためのフラッシュメモリが別に必要であり、複数のフラッシュメモリを設けるとコストが高くなる。
また、情報処理装置の大半は、ワンチップ化が可能であるが、半導体プロセスの微細化によってチップが小型化され、チップ内にフラッシュメモリを内蔵することが困難になりつつある。
特開2017−130908号公報
本発明が解決しようとする課題は、鍵情報の漏洩を防止しつつ、かつコストのかかるフラッシュメモリを用いることなく、複数の鍵情報を安全に管理することが可能な情報処理装置及び情報処理方法を提供することである。
本実施形態によれば、暗号化されていない平文の複数の鍵情報を管理するセキュリティ情報管理部と、
前記セキュリティ情報管理部に対して、前記複数の鍵情報の少なくとも一つを用いたデータの暗号化処理及び復号化処理を指示するとともに、暗号化されたデータを送受信する制御を行う第1制御部と、を備え、
前記セキュリティ情報管理部は、
送受信されるデータを暗号化するための第1鍵情報と、前記第1鍵情報を暗号化するための第2鍵情報とを記憶する揮発性の第1記憶部と、
前記第1鍵情報及び前記第2鍵情報を暗号化するための第3鍵情報を記憶する不揮発性の第2記憶部と、を有し、
前記第1制御部は、前記セキュリティ情報管理部への電源電圧を遮断する前に、前記第3鍵情報に基づいて暗号化された前記第1鍵情報の暗号化情報と、前記第3鍵情報に基づいて暗号化された前記第2鍵情報の暗号化情報とを、前記セキュリティ情報管理部及び前記第1制御部とは別個に設けられる不揮発性の第3記憶部に記憶する制御を行う、情報処理装置が提供される。
本実施形態による情報処理装置を備えた情報処理システムの概略構成を示すブロック図。 図1の各ECUの内部構成を示すブロック図。 Keyの更新手順の一例を示すフローチャート。 Keyの更新手順に関連する各部とバスを実線で示し、関連性の薄い各部とバスを破線で示したECUのブロック図。 KEKの更新手順の一例を示すフローチャート。 KEKの更新手順に関連する各部とバスを実線で示し、関連性の薄い各部とバスを破線で示したECUのブロック図。 エクスポート処理の処理手順の一例を示すフローチャート。 エクスポート処理に関連する各部とバスを実線で示し、関連性の薄い各部とバスを破線で示したECUのブロック図。 インポート処理の処理手順の一例を示すフローチャート。 図7のエクスポート処理の一変形例のフロートチャート。 図9のインポート処理の一変形例のフローチャート。 データを暗号化して他のECUに送信する送信処理の処理手順の一例を示すフローチャート。 送信処理に関連する各部とバスを実線で示し、関連性の薄い各部とバスを破線で示したECUのブロック図。
以下、図面を参照して実施の形態について説明する。なお、本件明細書と添付図面においては、理解のしやすさと図示の便宜上、一部の構成部分を省略、変更または簡易化して説明および図示しているが、同様の機能を期待し得る程度の技術内容も、本実施の形態に含めて解釈することとする。また、本件明細書に添付する図面においては、図示と理解のしやすさの便宜上、適宜縮尺および縦横の寸法比等を、実物から変更し誇張してある。
図1は本実施形態による情報処理装置1を備えた情報処理システム2の概略構成を示すブロック図である。図1の情報処理システム2は、例えば車両に搭載されるものである。図1では、情報処理装置1がECU3である例を示している。図1の情報処理システム2には、複数のECU3と、これらECU3が共通に接続されるCAN4とを備えている。各ECU3は、車両の各部に設けられており、暗号化されたデータを相互に送受信することができる。なお、図1の情報処理装置1及び情報処理システム2は、必ずしも車載用に限られるわけではないが、以下では、一例として車載用のECU3及び情報処理システム2について説明する。
図2は図1の各ECU3の内部構成を示すブロック図である。図1のECU3は、メインCPU(第1制御部)11と、I/O部12と、セキュリティ情報管理部13とを備えている。また、ECU3には、フラッシュメモリ14からなる不揮発メモリが外付けされている。このフラッシュメモリ14は、本来的には、メインCPU11が実行するプログラム等を記憶するためものである。本実施形態では、メインCPU11用に設けられるフラッシュメモリ14を流用して、後述する鍵情報を記憶する。したがって、本実施形態によれば、鍵情報を記憶するための専用のフラッシュメモリが不要になり、装置コストを削減できる。なお、図1の各ECU3は、フラッシュメモリ14を除いて一つの半導体チップで構成可能である。
メインCPU11は、ECU3内の各部を制御する。例えば、メインCPU11は、セキュリティ情報管理部13に対して複数の鍵情報の少なくとも一つを用いたデータの暗号化処理及び復号化処理を指示するとともに、暗号化されたデータをI/O部12とCAN4を介して他のECU3との間で送受信する制御を行う。メインCPU11には、キャッシュメモリ等のワークメモリが内蔵されている。なお、メインCPU11とは別個に、メインメモリやキャッシュメモリ等のメインCPU11によりアクセスされるメモリを設けてもよい。ECU3に電源電圧が供給されると、メインCPU11は、不図示のROMに記憶された基本プログラムを読み出して実行し、その後に、フラッシュメモリ14に記憶されている種々のプログラムを読み出して実行する。
セキュリティ情報管理部13は、セキュリティシステムとも呼ばれ、暗号化されていない平文の複数の鍵情報を管理するとともに、メインCPU11からの指示に従って複数の鍵情報の少なくとも一つを用いてデータの暗号化処理及び復号化処理を行う。
図2の例では、メインCPU11、I/O部12、フラッシュメモリ14及びセキュリティ情報管理部13が共通のバスに接続されている例を示しているが、バスの構成は任意である。
セキュリティ情報管理部13は、サブCPU(第2制御部)21と、AES処理部22と、CMAC処理部23と、揮発性の第1記憶部24と、不揮発性の第2記憶部25とを有する。
サブCPU21は、メインCPU11と通信を行い、メインCPU11からの指示によりセキュリティ情報管理部13内の各部を制御する。AES処理部22は、AES(Advanced Encryption Standard)に従ってデータの暗号化処理を行う。CMAC処理部23は、CMAC(Cipher-based Message Authentication Code)アルゴリズムに従ってデータの暗号化処理を行う。なお、暗号化の方式は、必ずしもAESやCMACには限らない。
第1記憶部24は、複数の鍵情報を記憶する。複数の鍵情報は、例えば、共通鍵情報(第1鍵情報)Keyと、Keyを暗号化するための鍵情報(第2鍵情報)KEKを含んでいる。第1記憶部24は、揮発性であればよく、大容量のメモリ容量を必要としないことから、例えばレジスタ等で構成可能である。レジスタは、例えば複数のフリップフロップを用いて構成される揮発メモリである。
第2記憶部25は、KeyとKEKを暗号化するためのスクランブル鍵情報(第3鍵情報)を記憶する不揮発メモリである。第2記憶部25は、スクランブル鍵情報を記憶可能な小容量のメモリ容量で足りることから、例えばeFuseが用いられる。eFuseでは、予め定めた電圧レベルの配線パターンを電気的に切断するか否かにより、任意の論理のデータを記憶可能である。あるいは、第2記憶部25は、論理ゲート等の論理回路で構成可能である。この場合、論理回路の入力端子の論理を固定化することにより、論理回路から任意の論理レベルの鍵情報を出力することができる。ただし、第2記憶部25に用いる論理回路には、ECU3への電源電圧が遮断されても、電源電圧が供給されている必要があり、例えば専用の電池から電圧供給を受けてもよい。第2記憶部25をeFuseだけで構成すると、セキュリティ性能が弱いため、eFuseによる値と、論理回路による値とを組み合わせて、スクランブル鍵情報を生成してもよい。
本実施形態によるセキュリティ情報管理部13は、第1記憶部24に記憶されたKey及びKEKと、第2記憶部25に記憶されたスクランブル鍵情報とを、セキュリティ情報管理部13の外部に読み出せないように管理する。
ECU3に電源電圧を供給した直後の初期状態では、第1記憶部24には、初期状態のKeyiniとKEKiniが記憶される。第1記憶部24に記憶されるKeyとKEKは、定期または不定期に更新されることがある。Keyを更新するタイミングとKEKを更新するタイミングは、必ずしも一致しない。図3はKeyの更新手順の一例を示すフローチャートである。また、図4は、Keyの更新手順に関連する各部とバスを実線で示し、関連性の薄い各部とバスを破線で示したECU3のブロック図である。
図3は、他のECU3から、暗号化されたKeyを受信する例を示している。まず、メインCPU11は、CAN4とI/O部12を介して、暗号化されたKeynew(Encrypted Keynew)とMACを受信すると(ステップS1)、サブCPU21に対して、復号化処理を指示する(ステップS2)。暗号化されたKeynewとMACは、それぞれ以下の(1)式と(2)式で表される。
Encrypted Keynew=AES(Keynew, KEK) …(1)
MAC=CMAC(Encrypted Keynew, KEK) …(2)
この指示を受けて、サブCPU21は、第1記憶部24に記憶されているKEKを用いて、AES処理部22とCMAC処理部23に対して、新たなKeynewの復号を指示する(ステップS3)。この指示を受けて、CMAC処理部23は、上述した(2)式に基づいて、MACを生成する(ステップS4)。次に、生成されたMACとステップS1で受信されたMACとが一致するか否かをチェックし、一致する場合には、AES処理部22は、上述した(1)式に基づいて、新たなKeynewを取得する(ステップS5)。
サブCPU21は、新たなKeynewが取得されると、第1記憶部24に記憶されていた旧Keyを、新たなKeynewに上書きして更新する(ステップS6)。
図5はKEKの更新手順の一例を示すフローチャートである。また、図6は、KEKの更新手順に関連する各部とバスを実線で示し、関連性の薄い各部とバスを破線で示したECU3のブロック図である。まず、メインCPU11は、CAN4とI/O部12を介して、暗号化されたKEKnew(Encrypted keynew9とMACを受信すると(ステップS11)、サブCPU21に対して、復号化処理を指示する(ステップS12)。暗号化されたKEKとMACは、それぞれ以下の(3)式と(4)式で表される。
Encrypted KEKnew=AES(KEKnew, KEKini) …(3)
MAC=CMAC(Encrypted KEKnew, KEKini) …(4)
この指示を受けて、サブCPU21は、第1記憶部24に記憶されているKEKiniを用いて、AES処理部22とCMAC処理部23に対して、新たなKEKnewの復号を指示する(ステップS13)。この指示を受けて、CMAC処理部23は、上述した(4)式に基づいて、MACを生成する(ステップS14)。次に、生成されたMACとステップS11で受信されたMACとが一致するか否かをチェックし、一致する場合には、AES処理部22は、上述した(3)式に基づいて、新たなKEKnewを取得する(ステップS15)。
サブCPU21は、新たなKEKnewが取得されると、第1記憶部24に記憶されていたKEKiniを、新たなKEKnewに上書きして更新する(ステップS16)。
第1記憶部24は揮発メモリであるため、セキュリティ情報管理部13への電源供給が遮断されると、第1記憶部24内のKeyとKEKは消去されてしまう。そこで、本実施形態では、セキュリティ情報管理部13への電源供給が遮断される前に、第1記憶部24内のKeyとKEKを暗号化した上で、セキュリティ情報管理部13の外部のフラッシュメモリ14に待避させる。この待避処理を本実施形態ではエクスポート処理と呼ぶ。
図7はエクスポート処理の処理手順の一例を示すフローチャートである。また、図8は、エクスポート処理に関連する各部とバスを実線で示し、関連性の薄い各部とバスを破線で示したECU3のブロック図である。
まず、メインCPU11は、セキュリティ情報管理部13への電源遮断要求があったか否かを判定する(ステップS21)。電源遮断要求がなければ、図7の処理を終了する。電源遮断要求があった場合には、メインCPU11は、サブCPU21に対して、第1記憶部24内のKeyとKEKの読み出しと、第2記憶部25内のスクランブル鍵情報の読出とを指示する(ステップS22)。
この指示を受けて、サブCPU21は、第1記憶部24内からKeyとKEKを読み出すとともに、第2記憶部25内からスクランブル鍵情報を読み出す(ステップS23)。次に、サブCPU21は、スクランブル鍵情報を用いてKeyを暗号化したScrambled Keyと、同じくスクランブル鍵情報を用いてKEKを暗号化したScrambled KEKを生成する(ステップS24)。このとき、AES処理部22により暗号化が必須である。また、CMAC処理部23でMACを生成してもよい。
次に、メインCPU11は、サブCPU21が生成したScrambled KeyとScrambled KEKをフラッシュメモリ14に記憶する(ステップS25)。
図7と図8に示すように、セキュリティ情報管理部13の外部には、KeyとKEKをそれぞれ暗号化したScrambled KeyとScrambled KEKが出力され、Key、KEK及びスクランブル鍵情報は出力されない。よって、セキュリティ情報管理部13の外部で、Scrambled KeyとScrambled KEKを復号化することは困難であり、セキュリティ性能を向上できる。
セキュリティ情報管理部13への電源供給が再開される場合は、セキュリティ情報管理部13内の第1記憶部24にKeyとKEKを再度記憶するインポート処理が行われる。インポート処理は、上述したエクスポート処理とは逆の処理である。
図9はインポート処理の処理手順の一例を示すフローチャートである。インポート処理に関連する各部とバスの種類は、図8と同様である。図9の処理は、セキュリティ情報管理部13への電源供給が再開されたときに開始される。まず、メインCPU11は、フラッシュメモリ14内のScrambled KeyとScrambled KEKを読み出して、サブCPU21に転送するとともに、サブCPU21に対してkeyとKEKの復号処理を指示する(ステップS31)。
この指示を受けて、サブCPU21は、第2記憶部25からスクランブル鍵情報を読み出す(ステップS32)。そして、サブCPU21は、スクランブル鍵情報を用いて、メインCPU11から送られてきたScrambled KeyとScramble KEKを復号して、KeyとKEKを取得する(ステップS33)。その後、サブCPU21は、取得したKeyとKEKを第1記憶部24に記憶する(ステップS34)。
図9のインポート処理の際に、Scrambled KeyとScrambled KEKが改ざんされていないことをチェックするようにしてもよい。この場合、例えばMACを利用してチェックを行う。
図10は図7のエクスポート処理の一変形例のフロートチャート、図11は図9のインポート処理の一変形例のフローチャートである。
図10のステップS21〜S23は図7のステップS21〜S23と同様の処理である。ステップS24Aでは、Scrambled KeyとScrambled KEKを生成するだけでなく、Scrambled KeyとScrambled KEKに対するMAC(識別情報)をスクランブル鍵情報を用いて生成する。次に、Scrambled KeyとScrambled KEKとともに、生成したMACをフラッシュメモリ14に記憶する(ステップS25A)。
図11のインポート処理では、メインCPU11はサブCPU21に、フラッシュメモリ14内のScrambled Key、Scrambled KEK及びMACを送信する(ステップS31A)。次に、サブCPU21は、第2記憶部25からスクランブル鍵情報を読み出す(ステップS32)。次に、サブCPU21は、スクランブル鍵情報を用いて、ステップS31Aで受信されたScrambled KeyとScrambled KEKに対するMACを生成し、生成されたMACとステップS31Aで受信されたMACとが一致するか否かをチェックし、一致した場合には、受信されたScrambled KeyとScrambled KEKをスクランブル鍵情報を用いて復号して、KeyとKEKを取得する(ステップS33A)。次に、KeyとKEKを第1記憶部24に記憶する(ステップS34)。
図12はデータを暗号化して他のECU3に送信する送信処理の処理手順の一例を示すフローチャートである。また、図13は、送信処理に関連する各部とバスを実線で示し、関連性の薄い各部とバスを破線で示したECU3のブロック図である。まず、メインCPU11は、送信するべきユーザデータをサブCPU21に送信し、暗号化を指示する(ステップS41)。この指示を受けてサブCPU21は、第1記憶部24からKeyを読み出す(ステップS42)。次に、サブCPU21は、AES処理部22に対して、Keyを用いてユーザデータを暗号化するよう指示するとともに、CMAC処理部23に対して、Keyを用いてユーザデータのMACを生成するよう指示する(ステップS43)。
AES処理部22は、以下の(5)式に基づいて、Encrypted User-dataを生成する。また、CMAC処理部23は、以下の(6)式に基づいて、MACを生成する。
Encrypted User-data=AES(User-data, Key) …(5)
MAC=CMAC(User-data, Key) …(6)
サブCPU21は、AES処理部22が生成したEncrypted User-dataと、CMAC処理部23が生成したMACとをメインCPU11に送信する(ステップS44)。これらを受信したメインCPU11は、Encrypted User-dataとMACとをI/O部12とCAN4を介して、他のECU3に送信する(ステップS45)。
このように、本実施形態では、セキュリティ情報管理部13内に、揮発性の第1記憶部24と不揮発性の第2記憶部25を設け、第1記憶部24にはKeyとKEKを記憶し、第2記憶部25にはスクランブル鍵情報を記憶する。そして、セキュリティ情報管理部13への電源供給を遮断する際には、スクランブル鍵情報を用いて、KeyとKEKをそれぞれ暗号化して、暗号化されたKeyとKEKを、セキュリティ情報管理部13の外部にあってメインCPU11により実行されるプログラム等を記憶するフラッシュメモリ14に記憶する。その後、セキュリティ情報管理部13への電源供給が再開されると、メインCPU11はフラッシュメモリ14内の暗号化されたKeyとKEKを読み出してセキュリティ情報管理部13に送る。セキュリティ情報管理部13内のサブCPU21は、第2記憶部25内のスクランブル鍵情報を用いて、暗号化されたKeyとKEKを復号して、第1記憶部24に記憶する。
以上の処理を行うことで、セキュリティ情報管理部13への電源供給が遮断されても、KeyとKEKが失われることはない。また、本実施形態によれば、セキュリティ情報管理部13に、鍵情報を記憶するためのフラッシュメモリ14を設けなくて済み、装置コストを削減できる。さらに、セキュリティ情報管理部13の電源遮断時には、プロセッサが実行するプログラム等が記憶される既存のフラッシュメモリ14を流用して、暗号化されたKeyとKEKを記憶するため、これらの暗号化された鍵情報を記憶するための専用の不揮発メモリが不要となり、さらなる装置コストの削減が図れる。
本実施形態では、セキュリティ情報管理部13への電源供給の遮断時にKeyとKEKを暗号化するのに用いるスクランブル鍵情報は、セキュリティ情報管理部13の外部へは出力されない。これにより、このスクランブル鍵情報を用いて暗号化されたKeyとKEKをセキュリティ情報管理部13の外部のフラッシュメモリ14に記憶したとしても、セキュリティ性能が低下するおそれはない。同様に、第1記憶部24に記憶されている平文のKeyとKEKもセキュリティ情報管理部13の外部には出力されないように管理されるため、データや鍵情報の改ざん等を防止できる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1 情報処理装置、2 情報処理システム、3 ECU、4 CAN、11 メインCPU、12 I/O部、13 セキュリティ情報管理部、14 フラッシュメモリ、21 サブCPU、22 AES処理部、23 CMAC処理部、24 第1記憶部、25 第2記憶部

Claims (7)

  1. 暗号化されていない平文の複数の鍵情報を管理するセキュリティ情報管理部と、
    前記セキュリティ情報管理部に対して、前記複数の鍵情報の少なくとも一つを用いたデータの暗号化処理及び復号化処理を指示するとともに、暗号化されたデータを送受信する制御を行う第1制御部と、を備え、
    前記セキュリティ情報管理部は、
    送受信されるデータを暗号化するための第1鍵情報と、前記第1鍵情報を暗号化するための第2鍵情報とを記憶する揮発性の第1記憶部と、
    前記第1鍵情報及び前記第2鍵情報を暗号化するための第3鍵情報を記憶する不揮発性の第2記憶部と、を有し、
    前記第1制御部は、前記セキュリティ情報管理部への電源電圧を遮断する前に、前記第3鍵情報に基づいて暗号化された前記第1鍵情報の暗号化情報と、前記第3鍵情報に基づいて暗号化された前記第2鍵情報の暗号化情報とを、前記セキュリティ情報管理部及び前記第1制御部とは別個に設けられる不揮発性の第3記憶部に記憶する制御を行う、情報処理装置。
  2. 前記セキュリティ情報管理部は、前記セキュリティ情報管理部への電源電圧の供給が再開された後に、前記第1制御部からの指示に従って、前記第3記憶部に記憶されている前記第1鍵情報の暗号化情報及び前記第2鍵情報の暗号化情報を、前記第3鍵情報に基づいて復号して得られた前記第1鍵情報及び前記第2鍵情報を前記第1記憶部に記憶する制御を行う第2制御部を有する、請求項1に記載の情報処理装置。
  3. 前記第2制御部は、前記セキュリティ情報管理部への電源電圧を遮断する前に、前記第1鍵情報の暗号化情報及び前記第2鍵情報の暗号化情報を識別する識別情報を前記第3鍵情報に基づいて生成し、
    前記第1制御部は、前記生成された識別情報を、前記第1鍵情報の暗号化情報と、前記第2鍵情報の暗号化情報とともに前記第3記憶部に記憶する制御を行い、
    前記第2制御部は、前記セキュリティ情報管理部への電源電圧の供給が再開された後に、前記第3記憶部に記憶された前記第1鍵情報の暗号化情報及び前記第2鍵情報の暗号化情報を識別する識別情報を前記第3鍵情報に基づいて生成し、前記生成された識別情報が前記第3記憶部に記憶された識別情報に一致するか否かをチェックし、一致する場合には、前記第3記憶部に記憶されている前記第1鍵情報の暗号化情報及び前記第2鍵情報の暗号化情報を、前記第3鍵情報に基づいて復号して得られた前記第1鍵情報及び前記第2鍵情報を前記第1記憶部に記憶する制御を行う、請求項2に記載の情報処理装置。
  4. 前記セキュリティ情報管理部は、前記第1記憶部に記憶された前記第1鍵情報及び前記第2鍵情報と、前記第2記憶部に記憶された前記第3鍵情報とが前記セキュリティ情報管理部の外部に出力されないように、前記第1乃至第3鍵情報を管理する、請求項1乃至3のいずれか一項に記載の情報処理装置。
  5. 前記第3記憶部は、前記セキュリティ情報管理部及び前記第1制御部が実装される半導体装置とは別個の不揮発メモリ装置内に実装され、
    前記不揮発メモリ装置は、前記第1鍵情報の暗号化情報及び前記第2鍵情報の暗号化情報を記憶する他に、前記第1制御部が実行するプログラムを記憶する、請求項1乃至4のいずれか一項に記載の情報処理装置。
  6. 前記第2記憶部は、電気的なヒューズと、論理回路の入力端子の論理固定化との少なくとも一方に基づいて、前記第3鍵情報を記憶する、請求項1乃至5のいずれか一項に記載の情報処理装置。
  7. 複数の鍵情報の少なくとも一つを用いて、送受信されるデータの暗号化処理及び復号化処理を行う情報処理方法であって、
    送受信されるデータを暗号化するための第1鍵情報と、前記第1鍵情報を暗号化するための第2鍵情報とをセキュリティ情報管理部内の揮発性の第1記憶部に記憶し、
    前記第1鍵情報及び前記第2鍵情報を暗号化するための第3鍵情報を前記セキュリティ情報管理部内の不揮発性の第2記憶部に記憶し、
    前記第1記憶部への電源電圧を遮断する際には、前記第3鍵情報に基づいて暗号化された前記第1鍵情報の暗号化情報と、前記第3鍵情報に基づいて暗号化された前記第2鍵情報の暗号化情報とを、前記セキュリティ情報管理部とは別個に設けられる不揮発性の第3記憶部に記憶し、
    前記第1記憶部への電源電圧の供給が再開された後に、前記第3記憶部に記憶されている前記第1鍵情報の暗号化情報及び前記第2鍵情報の暗号化情報を、前記第3鍵情報に基づいて復号して得られた前記第1鍵情報及び前記第2鍵情報を前記第1記憶部に記憶する、情報処理方法。
JP2018052999A 2018-03-20 2018-03-20 情報処理装置及び情報処理方法 Active JP6852009B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2018052999A JP6852009B2 (ja) 2018-03-20 2018-03-20 情報処理装置及び情報処理方法
CN201810907211.1A CN110311780A (zh) 2018-03-20 2018-08-10 信息处理装置以及信息处理方法
US16/127,532 US20190294826A1 (en) 2018-03-20 2018-09-11 Information processing apparatus, information processing system, and information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018052999A JP6852009B2 (ja) 2018-03-20 2018-03-20 情報処理装置及び情報処理方法

Publications (2)

Publication Number Publication Date
JP2019165397A JP2019165397A (ja) 2019-09-26
JP6852009B2 true JP6852009B2 (ja) 2021-03-31

Family

ID=67984230

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018052999A Active JP6852009B2 (ja) 2018-03-20 2018-03-20 情報処理装置及び情報処理方法

Country Status (3)

Country Link
US (1) US20190294826A1 (ja)
JP (1) JP6852009B2 (ja)
CN (1) CN110311780A (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7278753B2 (ja) * 2018-11-19 2023-05-22 キヤノン株式会社 ソフトウェアの改ざんを検知することが可能な情報処理装置
CN110011956B (zh) * 2018-12-12 2020-07-31 阿里巴巴集团控股有限公司 一种数据处理方法和装置
US11943293B1 (en) * 2019-12-06 2024-03-26 Pure Storage, Inc. Restoring a storage system from a replication target
JP2021149417A (ja) * 2020-03-18 2021-09-27 キオクシア株式会社 記憶装置および制御方法
EP3929784A1 (de) * 2020-06-23 2021-12-29 Siemens Aktiengesellschaft Booteinrichtung für ein computerelement und verfahren zum booten eines computerelements
US11687468B2 (en) * 2020-07-02 2023-06-27 International Business Machines Corporation Method and apparatus for securing memory modules

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61103334A (ja) * 1984-10-27 1986-05-21 Oki Electric Ind Co Ltd デ−タ暗号装置における鍵保存方法
JPH01117443A (ja) * 1987-10-29 1989-05-10 Hitachi Ltd データ暗号装置
US5249227A (en) * 1992-11-30 1993-09-28 Motorola, Inc. Method and apparatus of controlling processing devices during power transition
US9064135B1 (en) * 2006-12-12 2015-06-23 Marvell International Ltd. Hardware implemented key management system and method
JP4476302B2 (ja) * 2007-01-15 2010-06-09 株式会社日立国際電気 映像処理装置
JP5026102B2 (ja) * 2007-02-07 2012-09-12 株式会社日立製作所 ストレージ制御装置及びデータ管理方法
US20090144563A1 (en) * 2007-11-30 2009-06-04 Jorge Campello De Souza Method of detecting data tampering on a storage system
US10133883B2 (en) * 2009-02-09 2018-11-20 International Business Machines Corporation Rapid safeguarding of NVS data during power loss event
JP2012065123A (ja) * 2010-09-15 2012-03-29 Fuji Electric Retail Systems Co Ltd Icカードシステム、その通信端末、携帯端末
JP2013031151A (ja) * 2011-06-20 2013-02-07 Renesas Electronics Corp 暗号通信システムおよび暗号通信方法
US9367697B1 (en) * 2013-02-12 2016-06-14 Amazon Technologies, Inc. Data security with a security module
JP6293648B2 (ja) * 2014-12-02 2018-03-14 東芝メモリ株式会社 メモリデバイス
JP6173411B2 (ja) * 2014-12-12 2017-08-02 Kddi株式会社 管理装置、車両、管理システム、管理方法、及びコンピュータプログラム
EP3353985A1 (en) * 2015-09-22 2018-08-01 BAE Systems PLC Cryptographic key distribution

Also Published As

Publication number Publication date
JP2019165397A (ja) 2019-09-26
CN110311780A (zh) 2019-10-08
US20190294826A1 (en) 2019-09-26

Similar Documents

Publication Publication Date Title
JP6852009B2 (ja) 情報処理装置及び情報処理方法
CN1808966B (zh) 安全数据处理方法及其系统
US8826039B2 (en) Apparatus and method for providing hardware security
US20170126414A1 (en) Database-less authentication with physically unclonable functions
US11308241B2 (en) Security data generation based upon software unreadable registers
US20170300720A1 (en) System for and method of cryptographic provisioning
US20100037069A1 (en) Integrated Cryptographic Security Module for a Network Node
CN101268650A (zh) 在微控制器中用于数据安全性处理的方法和装置
US9830479B2 (en) Key storage and revocation in a secure memory system
CN103229451A (zh) 用于硬件设备的密钥供应的方法和装置
US8687813B2 (en) Methods circuits devices and systems for provisioning of cryptographic data to one or more electronic devices
CN109768862B (zh) 一种密钥管理方法、密钥调用方法及密码机
JP2014053675A (ja) セキュリティチップ、プログラム、情報処理装置及び情報処理システム
CN113239363A (zh) 固件更新方法、装置、设备、可读存储介质及存储器系统
JP6888122B2 (ja) 半導体装置、更新データ提供方法、更新データ受取方法およびプログラム
CN111294795A (zh) 用于实现车内通信的系统
EP3214567B1 (en) Secure external update of memory content for a certain system on chip
JP2016152438A (ja) ソフトウェア更新装置、携帯端末及びソフトウェア更新システム
CN110287708B (zh) 一次性可编程加密装置与其加密方法
CN115994366A (zh) 网络设备和数据解密方法
KR20220000537A (ko) 차량 네트워크 기반의 데이터 송수신 시스템 및 그 방법
US11244066B2 (en) System on chip
US20240356732A1 (en) Information processing system
JP7268529B2 (ja) 電子機器
US20230418603A1 (en) System and Method for Securing Nonvolatile Memory for Execute-in-Place

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200106

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201216

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210209

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210310

R150 Certificate of patent or registration of utility model

Ref document number: 6852009

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150