WO2017115751A1 - 車載コンピュータシステム、車両、管理方法、及びコンピュータプログラム - Google Patents

車載コンピュータシステム、車両、管理方法、及びコンピュータプログラム Download PDF

Info

Publication number
WO2017115751A1
WO2017115751A1 PCT/JP2016/088701 JP2016088701W WO2017115751A1 WO 2017115751 A1 WO2017115751 A1 WO 2017115751A1 JP 2016088701 W JP2016088701 W JP 2016088701W WO 2017115751 A1 WO2017115751 A1 WO 2017115751A1
Authority
WO
WIPO (PCT)
Prior art keywords
vehicle computer
public key
key certificate
vehicle
electronic signature
Prior art date
Application number
PCT/JP2016/088701
Other languages
English (en)
French (fr)
Inventor
竹森 敬祐
秀明 川端
Original Assignee
Kddi株式会社
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 Kddi株式会社 filed Critical Kddi株式会社
Priority to CN201680076510.4A priority Critical patent/CN108476137A/zh
Priority to EP16881726.0A priority patent/EP3399691B1/en
Priority to US16/064,232 priority patent/US10931459B2/en
Publication of WO2017115751A1 publication Critical patent/WO2017115751A1/ja

Links

Images

Classifications

    • 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/3247Cryptographic 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 involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity
    • H04W12/106Packet or message integrity
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • 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/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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
    • 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/0825Key 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 asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0877Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
    • 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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/041Key generation or derivation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/40Security arrangements using identity modules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • H04W4/48Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for in-vehicle communication

Definitions

  • the present invention relates to an in-vehicle computer system, a vehicle, a management method, and a computer program.
  • Non-Patent Document 1 discloses a security technique for an in-vehicle control system configured by connecting a plurality of ECUs to a CAN (Controller Area Network).
  • the automobile is provided with a diagnostic port called an OBD (On-board Diagnostics) port connected to the ECU.
  • a diagnostic terminal dedicated for maintenance can be connected to the OBD port, and an update program can be installed and data settings can be changed from the diagnostic terminal to the ECU.
  • an ECU computer program for an already used car it is usually updated by an authorized dealer (dealer) or an engineer at a general car maintenance shop during a vehicle inspection or a regular car inspection. Is made.
  • Keisuke Takemori “Protection of in-vehicle control systems based on secure elements-Organizing and considering elemental technologies”, IEICE, IEICE Technical Report, vol.vol114, no. 508, pp. 73-78, 2015 March
  • Distribution of data such as update programs applied to the ECU of an in-vehicle control system for automobiles to the automobile via a communication line is under consideration.
  • an electronic signature is attached to the distributed data, and the electronic signature of the distributed data is verified by a public key certificate in a car. It is done.
  • an unauthorized public key certificate may be used for verification of an electronic signature.
  • the present invention has been made in consideration of such circumstances, and can be improved in reliability of verification of data validity applied to an in-vehicle computer such as an ECU, a vehicle, and a management method
  • An object is to provide a computer program.
  • An in-vehicle computer system includes a first in-vehicle computer that stores a first public key certificate that is a public key certificate of a data distribution device in an in-vehicle computer system provided in a vehicle; And a first secure element for storing a second public key certificate corresponding to a second secret key used for generating the first public key certificate,
  • a first in-vehicle computer and the second in-vehicle computer are connected to a communication network provided in the vehicle, and the first secure element uses the second public key certificate to The first in-vehicle computer verifies the first electronic signature attached to the first data received from the data distribution device, and the first secure element.
  • a cryptographic processing unit that verifies using the first public key certificate that has been verified by the verification by the cryptographic processing unit with respect to the first in-vehicle computer or the second in-vehicle computer.
  • the first data to which the first electronic signature is attached is applied.
  • the first secure element in the in-vehicle computer system according to (1), the first secure element further stores a third secret key, and uses the third secret key. Then, a third electronic signature for application result information indicating a result of application of the first data is generated, and the in-vehicle computer system generates the application result information to which the third electronic signature is attached, Transmit to the data distribution device.
  • the first secure element in the in-vehicle computer system according to (2), further stores the second secret key, and stores the second secret key.
  • the third public key certificate corresponding to the third secret key is generated and the in-vehicle computer system transmits the third public key certificate to the data distribution device.
  • the in-vehicle computer system in the in-vehicle computer system according to (1), further includes a second secure element that stores a third secret key, and the second secure element includes the second secure element, A third electronic signature for application result information indicating a result of application of the first data is generated using a third secret key, and the in-vehicle computer system is attached with the third electronic signature.
  • the application result information is transmitted to the data distribution apparatus.
  • the second secure element further stores the second secret key, and stores the second secret key.
  • the third public key certificate corresponding to the third secret key is generated and the in-vehicle computer system transmits the third public key certificate to the data distribution device.
  • the in-vehicle computer system according to one aspect of the present invention is the in-vehicle computer system according to any one of (1) to (5), wherein the first secure element is included in a communication module included in the vehicle.
  • the in-vehicle computer system according to one aspect of the present invention is the in-vehicle computer system according to any one of (1) to (5), wherein the first secure element is included in the first in-vehicle computer.
  • the in-vehicle computer system according to one aspect of the present invention is the in-vehicle computer system according to any one of the above (4) and (5), wherein the second secure element is included in the first in-vehicle computer.
  • the in-vehicle computer system according to one aspect of the present invention is the in-vehicle computer system according to any one of the above (4) and (5), wherein the second secure element is provided in a communication module provided in the vehicle.
  • the first in-vehicle computer has the verification that has been verified by the encryption processing unit
  • the first data having the electronic signature of 1 is transmitted to the second in-vehicle computer, and the second in-vehicle computer receives the first data received from the first in-vehicle computer.
  • Applying, the first in-vehicle computer and the second in-vehicle computer store the same common key, and use the common key to verify the validity of the application of the first data.
  • An in-vehicle computer system includes a first in-vehicle computer that stores a first public key certificate that is a public key certificate of a data distribution device in an in-vehicle computer system provided in a vehicle;
  • the first in-vehicle computer, the first in-vehicle computer and the second in-vehicle computer are connected to a communication network provided in the vehicle, and the first public key certificate is the first in-vehicle computer.
  • a second public key corresponding to the second private key used for generating the first public key certificate stored in the secure element by a secure element provided in an apparatus outside the vehicle that transmits and receives data is the first in-vehicle computer.
  • the verification is successful using the “key certificate”, and the first in-vehicle computer receives the first certificate received from the data distribution device.
  • An encryption processing unit that verifies the first electronic signature attached to the data using the first public key certificate, and the first in-vehicle computer or the second in-vehicle computer. The first data to which the first electronic signature that has been verified by the cryptographic processing unit is attached is applied.
  • a vehicle according to an aspect of the present invention includes the in-vehicle computer system according to any one of (1) to (11).
  • the in-vehicle computer system provided in the vehicle stores the first in-vehicle computer that stores the first public key certificate that is the public key certificate of the data distribution device; And a secure element for storing a second public key certificate corresponding to a second private key used for generating the first public key certificate, and the first in-vehicle computer And the second in-vehicle computer are connected to a communication network provided in the vehicle, and the secure element verifies the first public key certificate using the second public key certificate.
  • a first electronic signature attached to the first data received from the data distribution device by the secure element The electronic signature verification step using the first public key certificate for which the certificate has passed, and the verification by the electronic signature verification step for the first in-vehicle computer or the second in-vehicle computer. Applying the first data to which the first electronic signature has been applied.
  • the in-vehicle computer system provided in the vehicle stores the first in-vehicle computer that stores the first public key certificate that is the public key certificate of the data distribution device;
  • An in-vehicle computer wherein the first in-vehicle computer and the second in-vehicle computer are connected to a communication network provided in the vehicle, and the first public key certificate is connected to the first in-vehicle computer.
  • the first certificate is attached to the first data received from the data distribution device, the verification using the “certificate”.
  • the electronic signature is verified using the first public key certificate, and the electronic signature verification step is performed on the first in-vehicle computer or the second in-vehicle computer. Applying the first data to which the first electronic signature that has passed is applied.
  • a computer program includes a first in-vehicle computer in which an in-vehicle computer system provided in a vehicle stores a first public key certificate that is a public key certificate of a data distribution device; And a secure element that stores a second public key certificate corresponding to the second private key used to generate the first public key certificate, and the first in-vehicle computer And the second in-vehicle computer are connected to a communication network provided in the vehicle, and the secure element computer uses the second public key certificate to verify the first public key certificate.
  • a data application step of applying the first data to which the first electronic signature that has been verified by the verification step is attached is executed.
  • a computer program includes a first in-vehicle computer in which an in-vehicle computer system provided in a vehicle stores a first public key certificate that is a public key certificate of a data distribution device; An in-vehicle computer, wherein the first in-vehicle computer and the second in-vehicle computer are connected to a communication network provided in the vehicle, and the first public key certificate is connected to the first in-vehicle computer.
  • the electronic signature is verified by using the first public key certificate, and the electronic signature is made to be executed by the first in-vehicle computer or the second in-vehicle computer.
  • a data application step of applying the first data to which the first electronic signature that has been verified by the verification step is attached is executed.
  • FIG. 1 is a block diagram showing an automobile according to a first embodiment of the present invention. It is a management method (example 1) sequence chart concerning a 1st embodiment.
  • 6 is a sequence chart showing an ECU code distribution procedure (Example 1-a) according to the first embodiment. 6 is a sequence chart showing an ECU code distribution procedure (Example 1-b) according to the first embodiment. 7 is a sequence chart showing an ECU code distribution procedure (Example 1-c) according to the first embodiment. 6 is a sequence chart showing an ECU code distribution procedure (Example 1-d) according to the first embodiment.
  • Example 7 is a sequence chart showing an ECU code distribution procedure (Example 2-a) according to the first embodiment.
  • 6 is a sequence chart showing an ECU code distribution procedure (Example 2-b) according to the first embodiment.
  • 4 is a sequence chart showing an ECU code distribution procedure (Example 2-c) according to the first embodiment.
  • 6 is a sequence chart showing an ECU code distribution procedure (Example 2-d) according to the first embodiment.
  • It is a block diagram which shows the motor vehicle which concerns on 2nd Embodiment of this invention. It is a sequence chart of the management method (example 3) which concerns on 2nd Embodiment. It is a sequence chart which shows the delivery procedure (example 3) of the ECU code which concerns on 2nd Embodiment.
  • FIG. 1 is a block diagram illustrating a configuration example of an automobile 1001 according to the present embodiment.
  • data such as an update program is applied to an ECU (electronic control unit) mounted on the automobile 1001 will be described as an example.
  • ECU electronic control unit
  • an automobile 1001 includes a first ECU 1010 and a plurality of second ECUs 1020.
  • the first ECU 1010 and the second ECU 1020 are in-vehicle computers provided in the automobile 1001.
  • First ECU 1010 is an ECU having a gateway function among ECUs mounted on automobile 1001.
  • the second ECU 1020 is an ECU having functions such as engine control among ECUs mounted on the automobile 1001. Examples of the second ECU 1020 include an ECU having an engine control function, an ECU having a handle control function, and an ECU having a brake control function.
  • the first ECU 1010 and the plurality of second ECUs 1020 are connected to a CAN (Controller Area Network) 1030 provided in the automobile 1001.
  • CAN 1030 is a communication network.
  • CAN is known as one of communication networks mounted on vehicles.
  • 1st ECU1010 exchanges data between each 2nd ECU1020 via CAN1030.
  • Second ECU 1020 exchanges data with other second ECU 1020 via CAN 1030.
  • a communication network other than CAN is provided in the automobile 1001, and exchange of data between the first ECU 1010 and the second ECU 1020 via the communication network other than CAN, and Data exchange between the second ECUs 1020 may be performed.
  • the automobile 1001 may include a LIN (Local Interconnect Network).
  • the automobile 1001 may include CAN and LIN.
  • the automobile 1001 may include a second ECU 1020 connected to the LIN.
  • the first ECU 1010 may be connected to CAN and LIN.
  • first ECU 1010 exchanges data with the second ECU 1020 connected to the CAN via the CAN, and also exchanges data with the second ECU 1020 connected to the LIN via the LIN. You may exchange data with. Further, the second ECUs 1020 may exchange data via the LIN.
  • the automobile 1001 has a diagnostic port 1060.
  • diagnosis port 1060 for example, an OBD port may be used.
  • a diagnostic terminal 1065 can be connected to the diagnostic port 1060.
  • Diagnostic port 1060 is connected to first ECU 1010. The first ECU 1010 and the diagnostic terminal 1065 connected to the diagnostic port 1060 exchange data via the diagnostic port 1060.
  • the automobile 1001 includes an infotainment device 1040.
  • the infotainment device 1040 include a navigation function, a location information service function, a multimedia playback function such as music and video, a voice communication function, a data communication function, and an Internet connection function.
  • the infotainment device 1040 is connected to the first ECU 1010.
  • the first ECU 1010 transmits information input from the infotainment device 1040 to the second ECU 1020.
  • the automobile 1001 includes a TCU (Tele Communication Unit) 1050.
  • the TCU 1050 is a communication device.
  • the TCU 1050 includes a communication module 1051.
  • the communication module 1051 performs wireless communication using a wireless communication network.
  • the communication module 1051 includes a SIM (Subscriber Identity Module) 1052.
  • the SIM 1052 is a SIM in which information for using the wireless communication network is written.
  • the communication module 1051 can use the SIM 1052 to connect to the wireless communication network and perform wireless communication.
  • the SIM 1052 includes a key storage unit 1053 that stores a key.
  • eSIM Embedded Subscriber Identity Module
  • SIM and eSIM have tamper resistance.
  • SIM and eSIM are examples of secure elements (Secure Element: SE).
  • SE Secure Element
  • the secure element has tamper resistance.
  • SIM and eSIM are a kind of computer, and a desired function is realized by a computer program.
  • the TCU 1050 is connected to the first ECU 1010.
  • the first ECU 1010 exchanges data with the communication module 1051 of the TCU 1050.
  • the present invention is not limited to this.
  • the TCU 1050 may be connected to the infotainment device 1040, and the first ECU 1010 may exchange data with the communication module 1051 of the TCU 1050 via the infotainment device 1040.
  • the first ECU 1010 may include a communication module 1051 including a SIM 1052.
  • the automobile 1001 may not include the TCU 1050.
  • the first ECU 1010 includes a main computing unit 1011 and an HSM (Hardware Security Module) 1012.
  • the main arithmetic unit 1011 executes a computer program for realizing the function of the first ECU 1010.
  • the HSM 1012 has a cryptographic processing function.
  • HSM1012 has tamper resistance.
  • HSM 1012 is an example of a secure element.
  • the HSM 1012 includes a key storage unit 1013 that stores a key.
  • the main arithmetic unit 1011 uses an HSM 1012.
  • the encryption processing unit included in the first ECU 1010 is not limited to the HSM 1012.
  • a cryptographic processing unit included in the first ECU 1010 for example, a cryptographic processing chip called “TPM (Trusted ⁇ Platform Module) f” may be used.
  • TPMf has tamper resistance.
  • TPMf is an example of a secure element.
  • the second ECU 1020 includes a main computing unit 1021 and a SHE (Secure Hardware Extension) 1022.
  • the main computing unit 1021 executes a computer program for realizing the function of the second ECU 1020.
  • the SHE 1022 has a cryptographic processing function.
  • SHE1022 has tamper resistance.
  • SHE1022 is an example of a secure element.
  • the SHE 1022 includes a key storage unit 1023 that stores a key.
  • the main computing unit 1021 uses SHE1022.
  • the encryption processing unit included in the second ECU 1020 is not limited to the SHE1022.
  • a cryptographic processing chip called “TPMt” may be used as the cryptographic processing unit included in the second ECU 1020.
  • TPMt has tamper resistance.
  • TPMt is an example of a secure element.
  • the in-vehicle computer system 1002 provided in the automobile 1001 is configured by connecting a first ECU 1010 and a plurality of second ECUs 1020 to a CAN 1030.
  • the first ECU 1010 has a gateway function and monitors communication between the inside and the outside of the in-vehicle computer system 1002.
  • the in-vehicle computer system 1002 may further include a SIM 1052 of the communication module 1051.
  • first ECU 1010 and the second ECU 1020 are not particularly distinguished, they are simply referred to as an ECU.
  • the server apparatus 1300 transmits / receives data to / from the communication module 1051 of the TCU 1050 of the automobile 1001 via the communication line.
  • the server apparatus 1300 and the communication module 1051 may be connected by a dedicated line such as a VPN (Virtual Private Network) line, and data may be transmitted and received through the dedicated line.
  • a dedicated line such as a VPN line may be provided by a wireless communication network corresponding to the SIM 1052.
  • the server apparatus 1300 distributes an ECU code (ECU code) applied to the ECU to the automobile 1001.
  • ECU code is an example of data applied to the ECU.
  • the ECU code may be a computer program such as an update program installed in the ECU, or may be setting data such as a parameter setting value set in the ECU.
  • Server device 1300 transmits the electronically signed ECU code to automobile 1001.
  • Server apparatus 1300 corresponds to a data distribution apparatus.
  • FIG. 2 is a sequence chart according to the first example of the management method of the present embodiment.
  • the SIM 1052 includes a certification authority (CA) public key certificate Cert_ca (hereinafter referred to as a certification authority public key certificate Cert_ca).
  • the key storage unit 1053 of the SIM 1052 stores the certificate authority public key certificate Cert_ca.
  • the certificate authority public key certificate Cert_ca is securely stored in the SIM 1052 when the SIM 1052 is manufactured.
  • the certificate authority public key certificate Cert_ca may be sent to the automobile 1001 via a secure communication path, for example, a dedicated line such as a VPN line, and stored in the SIM 1052.
  • a dedicated line such as a VPN line may be provided by a wireless communication network corresponding to the SIM 1052.
  • the server device 1300 includes its own secret key Key_sv_s (hereinafter referred to as server secret key Key_sv_s).
  • Server apparatus 1300 transmits server public key certificate Cert_sv corresponding to server private key Key_sv_s to communication module 1051 of automobile 1001.
  • the server public key certificate Cert_sv is issued by a certificate authority.
  • the certificate authority public key certificate Cert_ca is a public key certificate of the certificate authority that issued the server public key certificate Cert_sv. That is, the server public key certificate Cert_sv is generated using the private key of the certificate authority corresponding to the certificate authority public key certificate Cert_ca.
  • Step S ⁇ b> 2 In the automobile 1001, the communication module 1051 supplies the server public key certificate Cert_sv received from the server device 1300 to the SIM 1052.
  • the SIM 1052 verifies the validity of the server public key certificate Cert_sv using the certificate authority public key certificate Cert_ca.
  • Step S ⁇ b> 3 The communication module 1051 transmits the server public key certificate Cert_sv verified by the SIM 1052 to the first ECU 1010.
  • the first ECU 1010 supplies the server public key certificate Cert_sv received from the communication module 1051 to the HSM 1012.
  • the key storage unit 1013 of the HSM 1012 stores the server public key certificate Cert_sv received from the communication module 1051.
  • the communication module 1051 discards the server public key certificate Cert_sv that has failed verification by the SIM 1052. Therefore, the server public key certificate Cert_sv that has failed verification by the SIM 1052 is not transmitted to the first ECU 1010. Further, the communication module 1051 may perform a predetermined error process when the verification of the server public key certificate Cert_sv fails.
  • the SIM 1052 provided in the automobile 1001 includes the certificate authority public key certificate Cert_ca, and the SIM 1052 verifies the validity of the server public key certificate Cert_sv using the certificate authority public key certificate Cert_ca. . Since the SIM 1052 has tamper resistance, the certificate authority public key certificate Cert_ca provided in the SIM 1052 is highly secure. Therefore, the result of verification of the validity of the server public key certificate Cert_sv performed by the SIM 1052 has high reliability.
  • the ECU code applied to the second ECU 1020 is taken as an example, but the ECU code applied to the first ECU 1010 is also the same as that of the ECU code.
  • the same procedure can be applied only when the application destination is the first ECU 1010.
  • FIG. 3 is a sequence chart showing an example 1-a of the ECU code distribution procedure.
  • the server device 1300 includes a server secret key Key_sv_s and a public key certificate Cert_ve of the automobile 1001 (hereinafter referred to as an automobile public key certificate Cert_ve).
  • the SIM 1052 of the communication module 1051 includes a certificate authority public key certificate Cert_ca and a private key Key_ve_s of the automobile 1001 (hereinafter referred to as an automobile private key Key_ve_s).
  • the key storage unit 1053 of the SIM 1052 stores the certificate authority public key certificate Cert_ca and the automobile secret key Key_ve_s.
  • the car public key certificate Cert_ve is a public key certificate corresponding to the car private key Key_ve_s.
  • the car private key Key_ve_s and the car public key certificate Cert_ve are generated by a device outside the car 1001, the car secret key Key_ve_s is stored in the SIM 1052, and the car public key certificate Cert_ve is stored in the server device 1300.
  • the attribute information included in the automobile public key certificate Cert_ve may include a vehicle identification number (VehicleehIdentification Number: VIN).
  • the HSM 1012 of the first ECU 1010 includes a server public key certificate Cert_sv and a common key Key_ve_c of the automobile 1001 (hereinafter referred to as an automobile common key Key_ve_c).
  • the key storage unit 1013 of the HSM 1012 stores the server public key certificate Cert_sv and the automobile common key Key_ve_c.
  • the server public key certificate Cert_sv stored in the key storage unit 1013 of the HSM 1012 has been verified by the above-described procedure of FIG.
  • the SHE 1022 of the second ECU 1020 includes an automobile common key Key_ve_c.
  • the key storage unit 1023 of the SHE 1022 stores the automobile common key Key_ve_c.
  • the HSM 1012 of the first ECU 1010 and the SHE 1022 of the second ECU 1020 have the same vehicle common key Key_ve_c.
  • Step S ⁇ b> 101 The server device 1300 transmits an ECU code with an electronic signature to the automobile 1001.
  • the electronic signature of the ECU code with the electronic signature is generated using the server secret key Key_sv_s.
  • communication module 1051 transmits the electronic signature-added ECU code received from server apparatus 1300 to first ECU 1010.
  • Step S102 The first ECU 1010 supplies the ECU code with the electronic signature received from the communication module 1051 to the HSM 1012.
  • the HSM 1012 verifies the electronic signature of the ECU code with the electronic signature using the server public key certificate Cert_sv.
  • Step S103 The first ECU 1010 transmits to the second ECU 1020 the ECU code to which the electronic signature that has been verified by the HSM 1012 has been attached. On the other hand, the first ECU 1010 discards the ECU code to which the electronic signature that was not verified by the HSM 1012 has been attached. Therefore, the ECU code to which the electronic signature that has failed verification by the HSM 1012 is not transmitted to the second ECU 1020. Further, the first ECU 1010 may perform predetermined error processing when the verification of the electronic signature of the ECU code with the electronic signature received from the server device 1300 fails.
  • Step S104 The second ECU 1020 applies the ECU code received from the first ECU 1010 to itself.
  • Step S105 The second ECU 1020 transmits to the first ECU 1010 an application state measurement value indicating a state in which the ECU code received from the first ECU 1010 is applied to itself.
  • CMAC Chip-based Message Authentication Code
  • HMAC Hash-based Message Authentication Code
  • Step S106 The first ECU 1010 verifies the application state measurement value received from the second ECU 1020.
  • the first ECU 1010 calculates the CMAC of the ECU code transmitted to the second ECU 1020 in step S103 described above using the HSM 1012 using the vehicle common key Key_ve_c. To do.
  • the CMAC calculated by the HSM 1012 and the CMAC of the application state measurement value received from the second ECU 1020 are compared to determine whether they match.
  • the verification of the application state measurement value passes if they match, and the verification of the application state measurement value fails if they do not match.
  • the first ECU 1010 may perform a predetermined error process when the verification of the application state measurement value fails.
  • the first ECU 1010 transmits application result information indicating the result of application of the ECU code transmitted to the second ECU 1020 in step S103 described above to the communication module 1051.
  • the application result information may be the ECU code transmitted to the second ECU 1020 in step S103 described above.
  • the application state measurement value received from the second ECU 1020 may be used as the application result information.
  • Step S108 The communication module 1051 supplies the application result information received from the first ECU 1010 to the SIM 1052.
  • the SIM 1052 generates an electronic signature of the application result information using the automobile private key Key_ve_s.
  • Step S109 The communication module 1051 transmits to the server apparatus 1300 application result information with an electronic signature obtained by attaching the electronic signature generated by the SIM 1052 to the application result information.
  • Step S110 The server apparatus 1300 verifies the electronic signature of the application result information with the electronic signature received from the communication module 1051 of the automobile 1001 using the automobile public key certificate Cert_ve.
  • the server apparatus 1300 determines that the application result information with the digital signature that has passed the verification can be used.
  • the server apparatus 1300 discards the application result information to which the electronic signature that has failed the verification is attached.
  • the server apparatus 1300 may perform predetermined error processing when the verification of the electronic signature of the application result information with the electronic signature received from the communication module 1051 of the automobile 1001 fails. Note that the application result information determined to be usable by the server device 1300 may be used for analyzing the application status of the ECU code.
  • the HSM 1012 of the first ECU 1010 verifies the electronic signature of the ECU code with the electronic signature received from the server device 1300 using the server public key certificate Cert_sv. .
  • the validity of this server public key certificate Cert_sv has been verified by the SIM 1052 of the communication module 1051 using the certificate authority public key certificate Cert_ca. Therefore, the verification result of the electronic signature of the ECU code with the electronic signature by the HSM 1012 of the first ECU 1010 is highly reliable. Thereby, the reliability of the verification of the validity of the ECU code applied to the ECU can be improved.
  • FIG. 4 is a sequence chart showing an example 1-b of the ECU code distribution procedure.
  • an example 1-b of the ECU code distribution procedure will be described. 4, parts corresponding to those in FIG. 3 are given the same reference numerals, and descriptions thereof are omitted. 4 is different from FIG. 3 in that an automobile secret key Key_ve_s is provided in the HSM 1012 of the first ECU 1010.
  • the key storage unit 1013 of the HSM 1012 stores a server public key certificate Cert_sv, an automobile secret key Key_ve_s, and an automobile common key Key_ve_c.
  • the server public key certificate Cert_sv stored in the key storage unit 1013 of the HSM 1012 has been verified by the above-described procedure of FIG. In the following, differences from Example 1-a of the ECU code distribution procedure in FIG. 3 described above will be mainly described.
  • steps S101 to S106 are executed. Steps S101 to S106 are the same as Example 1-a of the ECU code distribution procedure in FIG. 3 described above. Following step S106, step S201 is executed.
  • Step S201 The first ECU 1010 supplies application result information indicating the result of application of the ECU code transmitted to the second ECU 1020 in step S103 to the HSM 1012.
  • the HSM 1012 generates an electronic signature of the application result information using the automobile private key Key_ve_s.
  • the application result information may be the ECU code transmitted to the second ECU 1020 in step S103.
  • the application state measurement value received from the second ECU 1020 may be used as the application result information.
  • Step S202 The first ECU 1010 transmits to the communication module 1051 application result information with an electronic signature obtained by attaching the electronic signature generated by the HSM 1012 to the application result information.
  • the communication module 1051 transmits the application result information with the electronic signature received from the first ECU 1010 to the server device 1300.
  • Step S110 is the same as Example 1-a of the ECU code distribution procedure in FIG. 3 described above.
  • the HSM 1012 of the first ECU 1010 includes the automobile secret key Key_ve_s, and the HSM 1012 generates an electronic signature of the application result information using the automobile secret key Key_ve_s. Since the HSM 1012 has higher cryptographic processing capability than the SIM 1052, according to the example 1-b of the ECU code distribution procedure, the efficiency of the cryptographic processing can be improved.
  • FIG. 5 is a sequence chart showing an example 1-c of the ECU code distribution procedure.
  • An example 1-c of the ECU code distribution procedure will be described with reference to FIG. In FIG. 5, parts corresponding to those in FIG. 3 are assigned the same reference numerals, and explanations thereof are omitted.
  • 5 differs from FIG. 3 in that the certification authority private key Key_ca_s (hereinafter referred to as the certification authority private key Key_ca_s) is provided in the SIM 1052 of the communication module 1051, and the SIM 1052 includes the automobile private key Key_ve_s and the automobile public key certificate Cert_ve. This is a point that generates a pair.
  • the certification authority private key Key_ca_s hereinafter referred to as the certification authority private key Key_ca_s
  • the certificate authority private key Key_ca_s corresponds to the certificate authority public key certificate Cert_ca.
  • the certificate authority public key certificate Cert_ca may be the public key certificate of the certificate authority that issued the server public key certificate Cert_sv.
  • the server public key certificate Cert_sv may be a public key certificate issued by a public third party authority certificate authority, or a certificate authority private key Key_ca_s by a private certificate authority such as the SIM 1052 of the automobile 1001. It may be a public key certificate generated using.
  • the SIM 1052 has a function of generating a pair of the automobile private key Key_ve_s and the automobile public key certificate Cert_ve.
  • the key storage unit 1053 of the SIM 1052 stores the certificate authority public key certificate Cert_ca, the certificate authority secret key Key_ca_s, and the car secret key Key_ve_s.
  • Step S301 In the automobile 1001, the SIM 1052 of the communication module 1051 generates a pair of the public key of the automobile 1001 and the automobile secret key Key_ve_s.
  • the SIM 1052 generates a public key certificate (automobile public key certificate Cert_ve) for the generated automobile public key using the certificate authority private key Key_ca_s.
  • Step S302 The communication module 1051 transmits the automobile public key certificate Cert_ve generated by the SIM 1052 to the server apparatus 1300.
  • the server apparatus 1300 stores the automobile public key certificate Cert_ve received from the communication module 1051 of the automobile 1001.
  • Steps S101 to S110 are the same as Example 1-a of the ECU code distribution procedure of FIG. 3 described above.
  • Example 1-c of the ECU code distribution procedure it is possible to improve the reliability of verification of the validity of the ECU code applied to the ECU, similarly to the example 1-a of the ECU code distribution procedure described above.
  • the SIM 1052 provided in the automobile 1001 functions as a private certificate authority by having the certificate authority secret key Key_ca_s. Accordingly, the automobile 1001 can generate a pair of its own automobile private key Key_ve_s and the automobile public key certificate Cert_ve.
  • the pair of the certification authority private key Key_ca_s and the certification authority public key certificate Cert_ca provided in the automobile 1001 may be different for each automobile manufacturer, every vehicle type, every year of automobile production, and the like.
  • FIG. 6 is a sequence chart showing an example 1-d of the ECU code distribution procedure.
  • an example 1-d of the ECU code distribution procedure will be described.
  • parts corresponding to those in FIG. 4 are assigned the same reference numerals, and explanations thereof are omitted.
  • 6 is different from FIG. 4 in that the certificate authority private key Key_ca_s is provided in the HSM 1012 of the first ECU 1010, and the HSM 1012 generates a pair of the automobile private key Key_ve_s and the automobile public key certificate Cert_ve.
  • the certificate authority private key Key_ca_s corresponds to the certificate authority public key certificate Cert_ca.
  • the certificate authority public key certificate Cert_ca may be the public key certificate of the certificate authority that issued the server public key certificate Cert_sv.
  • the server public key certificate Cert_sv may be a public key certificate issued by a public third party authority certificate authority, or a certificate authority private key Key_ca_s by a private certificate authority such as the SIM 1052 of the automobile 1001. It may be a public key certificate generated using.
  • the HSM 1012 has a function of generating a pair of the automobile private key Key_ve_s and the automobile public key certificate Cert_ve.
  • the key storage unit 1013 of the HSM 1012 stores the certificate authority private key Key_ca_s, the server public key certificate Cert_sv, the automobile private key Key_ve_s, and the automobile common key Key_ve_c.
  • the server public key certificate Cert_sv stored in the key storage unit 1013 of the HSM 1012 has been verified by the above-described procedure of FIG. In the following, differences from Example 1-b of the ECU code distribution procedure in FIG. 4 will be mainly described.
  • Step S401 In the automobile 1001, the HSM 1012 of the first ECU 1010 generates a pair of the public key of the own automobile 1001 and the automobile secret key Key_ve_s.
  • the HSM 1012 generates a public key certificate (automobile public key certificate Cert_ve) for the generated automobile public key using the certificate authority private key Key_ca_s.
  • Step S402 The first ECU 1010 transmits the automobile public key certificate Cert_ve generated by the HSM 1012 to the communication module 1051.
  • the communication module 1051 transmits the automobile public key certificate Cert_ve received from the first ECU 1010 to the server device 1300.
  • the server apparatus 1300 stores the automobile public key certificate Cert_ve received from the communication module 1051 of the automobile 1001.
  • steps S101 to S106, S201, S202, and S110 are executed.
  • Steps S101 to S106, S201, S202, and S110 are the same as Example 1-b of the ECU code distribution procedure in FIG. 4 described above.
  • example 1-d of the ECU code distribution procedure it is possible to improve the reliability of verification of the validity of the ECU code applied to the ECU, similarly to the example 1-a of the ECU code distribution procedure described above. Further, as in the above-described ECU code distribution procedure example 1-b, it is possible to improve the efficiency of the cryptographic processing.
  • Example 1-d of the ECU code distribution procedure the HSM 1012 provided in the automobile 1001 functions as a private certificate authority by having the certificate authority private key Key_ca_s. Accordingly, the automobile 1001 can generate a pair of its own automobile private key Key_ve_s and the automobile public key certificate Cert_ve. Note that the pair of the certification authority private key Key_ca_s and the certification authority public key certificate Cert_ca provided in the automobile 1001 may be different for each automobile manufacturer, every vehicle type, every year of automobile production, and the like.
  • FIG. 7 is a sequence chart according to the second example of the management method of the present embodiment.
  • the HSM 1012 includes a certificate authority public key certificate Cert_ca and a server public key certificate Cert_sv.
  • the key storage unit 1013 of the HSM 1012 stores the certificate authority public key certificate Cert_ca and the server public key certificate Cert_sv.
  • the certificate authority public key certificate Cert_ca is securely stored in the HSM 1012 when the HSM 1012 is manufactured.
  • the certificate authority public key certificate Cert_ca may be sent to the automobile 1001 via a secure communication path, for example, a dedicated line such as a VPN line, and stored in the HSM 1012.
  • a dedicated line such as a VPN line may be provided by a wireless communication network corresponding to the SIM 1052.
  • the server device 1300 includes a server secret key Key_sv_s.
  • Server apparatus 1300 transmits server public key certificate Cert_sv corresponding to server private key Key_sv_s to communication module 1051 of automobile 1001.
  • the server public key certificate Cert_sv is issued by a certificate authority.
  • the certificate authority public key certificate Cert_ca is a public key certificate of the certificate authority that issued the server public key certificate Cert_sv. That is, the server public key certificate Cert_sv is generated using the private key of the certificate authority corresponding to the certificate authority public key certificate Cert_ca.
  • the communication module 1051 transmits the server public key certificate Cert_sv received from the server device 1300 to the first ECU 1010.
  • Step S12 In the automobile 1001, the first ECU 1010 supplies the server public key certificate Cert_sv received from the communication module 1051 to the HSM 1012.
  • the HSM 1012 verifies the validity of the server public key certificate Cert_sv using the certificate authority public key certificate Cert_ca.
  • the HSM 1012 stores the server public key certificate Cert_sv that has passed the verification in the key storage unit 1013.
  • the HSM 1012 discards the server public key certificate Cert_sv that has failed verification. Therefore, the server public key certificate Cert_sv that has failed verification is not stored in the HSM 1012. Further, the first ECU 1010 may perform a predetermined error process when the verification of the server public key certificate Cert_sv fails.
  • the HSM 1012 provided in the automobile 1001 includes the certificate authority public key certificate Cert_ca, and the HSM 1012 verifies the validity of the server public key certificate Cert_sv using the certificate authority public key certificate Cert_ca. . Since the HSM 1012 has tamper resistance, the certificate authority public key certificate Cert_ca provided in the HSM 1012 is highly secure. Therefore, the result of verification of the validity of the server public key certificate Cert_sv performed by the HSM 1012 is highly reliable. Further, since the HSM 1012 has higher cryptographic processing capability than the SIM 1052, according to the management method example 2, it is possible to improve the efficiency of the cryptographic processing.
  • FIG. 8 is a sequence chart showing an example 2-a of the ECU code distribution procedure.
  • the certificate authority public key certificate Cert_ca is provided in the HSM 1012 of the first ECU 1010.
  • the key storage unit 1013 of the HSM 1012 stores a certificate authority public key certificate Cert_ca, a server public key certificate Cert_sv, and a vehicle common key Key_ve_c.
  • the server public key certificate Cert_sv stored in the key storage unit 1013 of the HSM 1012 has been verified by the above-described procedure of FIG.
  • steps S101 to S110 are executed. Steps S101 to S110 are the same as Example 1-a of the ECU code distribution procedure of FIG. 3 described above.
  • the HSM 1012 of the first ECU 1010 verifies the electronic signature of the ECU code with the electronic signature received from the server device 1300 using the server public key certificate Cert_sv. .
  • the server public key certificate Cert_sv has been verified by the HSM 1012 of the first ECU 1010 using the certificate authority public key certificate Cert_ca. Therefore, the verification result of the electronic signature of the ECU code with the electronic signature by the HSM 1012 of the first ECU 1010 is highly reliable. Thereby, the reliability of the verification of the validity of the ECU code applied to the ECU can be improved.
  • FIG. 9 is a sequence chart showing an example 2-b of the ECU code distribution procedure.
  • the certificate authority public key certificate Cert_ca is provided in the HSM 1012 of the first ECU 1010.
  • the key storage unit 1013 of the HSM 1012 stores a certificate authority public key certificate Cert_ca, a server public key certificate Cert_sv, a vehicle secret key Key_ve_s, and a vehicle common key Key_ve_c.
  • the server public key certificate Cert_sv stored in the key storage unit 1013 of the HSM 1012 has been verified by the above-described procedure of FIG.
  • steps S101 to S106, S201, S202, and S110 are executed.
  • Steps S101 to S106, S201, S202, and S110 are the same as Example 1-b of the ECU code distribution procedure in FIG. 4 described above.
  • the HSM 1012 of the first ECU 1010 includes the automobile secret key Key_ve_s, and the HSM 1012 generates an electronic signature of the application result information using the automobile secret key Key_ve_s. Since the HSM 1012 has higher cryptographic processing capability than the SIM 1052, according to the example 2-b of the ECU code distribution procedure, the efficiency of the cryptographic processing can be improved.
  • FIG. 10 is a sequence chart showing an example 2-c of the ECU code distribution procedure.
  • An example 2-c of the ECU code distribution procedure will be described with reference to FIG. 10, parts corresponding to those in FIG. 5 are given the same reference numerals, and descriptions thereof are omitted.
  • 10 is different from FIG. 5 in that the certificate authority public key certificate Cert_ca is provided in the HSM 1012 of the first ECU 1010.
  • the key storage unit 1013 of the HSM 1012 stores a certificate authority public key certificate Cert_ca, a server public key certificate Cert_sv, and an automobile common key Key_ve_c.
  • the server public key certificate Cert_sv stored in the key storage unit 1013 of the HSM 1012 has been verified by the above-described procedure of FIG.
  • steps S301 and S302 and steps S101 to S110 are executed.
  • Steps S301 and S302 and steps S101 to S110 are the same as Example 1-c of the ECU code distribution procedure in FIG. 5 described above.
  • the SIM 1052 provided in the automobile 1001 functions as a private certificate authority by having the certificate authority secret key Key_ca_s. Accordingly, the automobile 1001 can generate a pair of its own automobile private key Key_ve_s and the automobile public key certificate Cert_ve. Note that the pair of the certification authority private key Key_ca_s and the certification authority public key certificate Cert_ca provided in the automobile 1001 may be different for each automobile manufacturer, every vehicle type, every year of automobile production, and the like.
  • FIG. 11 is a sequence chart showing an example 2-d of the ECU code distribution procedure.
  • Example 2-d of the ECU code distribution procedure will be described.
  • parts corresponding to those in FIG. 6 are given the same reference numerals, and explanation thereof is omitted.
  • 11 is different from FIG. 6 in that the CA public key certificate Cert_ca is provided in the HSM 1012 of the first ECU 1010.
  • the CA public key certificate Cert_ca is provided in the HSM 1012 of the first ECU 1010.
  • the key storage unit 1013 of the HSM 1012 stores a certificate authority public key certificate Cert_ca, a certificate authority secret key Key_ca_s, a server public key certificate Cert_sv, a car secret key Key_ve_s, and a car common key Key_ve_c.
  • the server public key certificate Cert_sv stored in the key storage unit 1013 of the HSM 1012 has been verified by the above-described procedure of FIG.
  • steps S401, S402, and S101 to S106, S201, S202, and S110 are executed.
  • Steps S401, S402, and S101 to S106, S201, S202, and S110 are the same as Example 1-d of the ECU code distribution procedure in FIG. 6 described above.
  • Example 2-d of the ECU code distribution procedure the HSM 1012 provided in the automobile 1001 functions as a private certificate authority by having the certificate authority private key Key_ca_s. Accordingly, the automobile 1001 can generate a pair of its own automobile private key Key_ve_s and the automobile public key certificate Cert_ve. Note that the pair of the certification authority private key Key_ca_s and the certification authority public key certificate Cert_ca provided in the automobile 1001 may be different for each automobile manufacturer, every vehicle type, every year of automobile production, and the like.
  • FIG. 12 is a block diagram illustrating a configuration example of an automobile 1001 according to the second embodiment of the present invention.
  • data such as an update program is applied to an ECU (electronic control unit) mounted on the automobile 1001 will be described as an example.
  • ECU electronic control unit
  • a maintenance tool 1200 can be connected to the diagnosis port 1060.
  • the first ECU 1010 and the maintenance tool 1200 connected to the diagnostic port 1060 exchange data via the diagnostic port 1060.
  • the maintenance tool 1200 may have a function of a conventional diagnostic terminal connected to the OBD port.
  • the maintenance tool 1200 includes a control module 1201.
  • the control module 1201 includes an IC (IntegratedICCircuit) chip 1202.
  • the IC chip 1202 includes a key storage unit 1203 that stores a key.
  • the IC chip 1202 has tamper resistance.
  • the IC chip 1202 is an example of a secure element.
  • the IC chip 1202 is a kind of computer and realizes a desired function by a computer program.
  • the server device 1300 transmits and receives data to and from the maintenance tool 1200 via a communication line.
  • the server apparatus 1300 and the maintenance tool 1200 may be connected by a dedicated line such as a VPN line, and data may be transmitted / received through the dedicated line.
  • the server apparatus 1300 distributes an ECU code applied to the ECU to the automobile 1001 via the maintenance tool 1200.
  • the ECU code is an example of data applied to the ECU.
  • the ECU code may be a computer program such as an update program installed in the ECU, or may be setting data such as a parameter setting value set in the ECU.
  • Server device 1300 transmits the electronically signed ECU code to automobile 1001 via maintenance tool 1200.
  • Server apparatus 1300 corresponds to a data distribution apparatus.
  • FIG. 13 is a sequence chart according to Example 3 of the management method of the present embodiment.
  • the IC chip 1202 includes the certificate authority public key certificate Cert_ca and the certificate authority private key Key_ca_s.
  • the key storage unit 1203 of the IC chip 1202 stores the certificate authority public key certificate Cert_ca and the certificate authority private key Key_ca_s.
  • the certificate authority public key certificate Cert_ca and the certificate authority private key Key_ca_s are securely stored in the IC chip 1202 when the IC chip 1202 is manufactured.
  • the server device 1300 includes a server secret key Key_sv_s.
  • the server apparatus 1300 transmits the server public key certificate Cert_sv corresponding to the server private key Key_sv_s to the maintenance tool 1200.
  • the server public key certificate Cert_sv is issued by a certificate authority.
  • the certificate authority public key certificate Cert_ca is a public key certificate of the certificate authority that issued the server public key certificate Cert_sv. That is, the server public key certificate Cert_sv is generated using the private key of the certificate authority corresponding to the certificate authority public key certificate Cert_ca.
  • Step S22 In the maintenance tool 1200, the control module 1201 supplies the server public key certificate Cert_sv received from the server device 1300 to the IC chip 1202.
  • the IC chip 1202 verifies the validity of the server public key certificate Cert_sv using the certificate authority public key certificate Cert_ca.
  • Step S23 The control module 1201 transmits the server public key certificate Cert_sv, which has been verified by the IC chip 1202, to the first ECU 1010 via the diagnostic port 1060 of the automobile 1001.
  • the first ECU 1010 supplies the server public key certificate Cert_sv received from the control module 1201 to the HSM 1012.
  • the key storage unit 1013 of the HSM 1012 stores the server public key certificate Cert_sv received from the control module 1201.
  • control module 1201 discards the server public key certificate Cert_sv that has failed verification by the IC chip 1202. Therefore, the server public key certificate Cert_sv that has failed verification by the IC chip 1202 is not supplied to the automobile 1001. Further, the control module 1201 may perform predetermined error processing when the verification of the server public key certificate Cert_sv fails.
  • the IC chip 1202 included in the control module 1201 of the maintenance tool 1200 includes the certificate authority public key certificate Cert_ca, and the IC chip 1202 uses the certificate authority public key certificate Cert_ca to generate the server public key.
  • the validity of the certificate Cert_sv is verified. Since the IC chip 1202 has tamper resistance, the certificate authority public key certificate Cert_ca provided in the IC chip 1202 is highly secure. Therefore, the result of verification of the validity of the server public key certificate Cert_sv performed by the IC chip 1202 is highly reliable.
  • the ECU code applied to the second ECU 1020 is taken as an example, but the ECU code applied to the first ECU 1010 is also applied to the ECU code. The same procedure can be applied only by becoming the first ECU 1010.
  • FIG. 14 is a sequence chart showing an example 3 of the ECU code distribution procedure.
  • the server device 1300 includes a server secret key Key_sv_s and a car public key certificate Cert_ve.
  • the IC chip 1202 of the control module 1201 includes a certificate authority public key certificate Cert_ca and a certificate authority private key Key_ca_s.
  • the key storage unit 1203 of the IC chip 1202 stores the certificate authority public key certificate Cert_ca and the certificate authority private key Key_ca_s.
  • the HSM 1012 of the first ECU 1010 includes a server public key certificate Cert_sv, an automobile secret key Key_ve_s, and an automobile common key Key_ve_c.
  • the key storage unit 1013 of the HSM 1012 stores a server public key certificate Cert_sv, an automobile secret key Key_ve_s, and an automobile common key Key_ve_c.
  • the server public key certificate Cert_sv stored in the key storage unit 1013 of the HSM 1012 has been validated by the above-described procedure of FIG.
  • the SHE 1022 of the second ECU 1020 includes an automobile common key Key_ve_c.
  • the key storage unit 1023 of the SHE 1022 stores the automobile common key Key_ve_c.
  • the HSM 1012 of the first ECU 1010 and the SHE 1022 of the second ECU 1020 have the same vehicle common key Key_ve_c.
  • Step S1001 In the maintenance tool 1200, the IC chip 1202 of the control module 1201 obtains a public key certificate (automobile public key certificate Cert_ve) for the public key corresponding to the automobile private key Key_ve_s of the automobile 1001 to which the control module 1201 is connected. , Using the certificate authority private key Key_ca_s. The public key corresponding to the automobile private key Key_ve_s of the automobile 1001 is supplied from the first ECU 1010 to the control module 1201 of the maintenance tool 1200 via the diagnostic port 1060.
  • a public key certificate automobile public key certificate Cert_ve
  • Step S1002 The control module 1201 transmits the automobile public key certificate Cert_ve generated by the IC chip 1202 to the server apparatus 1300.
  • the server apparatus 1300 stores the automobile public key certificate Cert_ve received from the control module 1201 of the maintenance tool 1200.
  • Step S1101 The server device 1300 transmits an electronically signed ECU code to the maintenance tool 1200.
  • the electronic signature of the ECU code with the electronic signature is generated using the server secret key Key_sv_s.
  • the control module 1201 of the maintenance tool 1200 transmits the electronic signature-added ECU code received from the server device 1300 to the first ECU 1010 via the diagnosis port 1060 of the automobile 1001.
  • Step S102 The first ECU 1010 supplies the ECU code with electronic signature received from the control module 1201 via the diagnostic port 1060 to the HSM 1012.
  • the HSM 1012 verifies the electronic signature of the ECU code with the electronic signature using the server public key certificate Cert_sv.
  • Steps S103 to S106 are executed. Steps S103 to S106 are the same as Example 1-a of the ECU code distribution procedure in FIG. 3 described above. Following step S106, step S201 is executed. Step S201 is the same as Example 1-b of the ECU code distribution procedure of FIG. 4 described above. Following step S201, step S1202 is executed.
  • Step S1202 The first ECU 1010 transmits application result information with an electronic signature obtained by attaching the electronic signature generated by the HSM 1012 to the application result information to the control module 1201 of the maintenance tool 1200 via the diagnostic port 1060.
  • the control module 1201 transmits the application result information with the electronic signature received from the first ECU 1010 to the server device 1300 via the diagnostic port 1060.
  • Step S110 is the same as Example 1-a of the ECU code distribution procedure in FIG. 3 described above.
  • the HSM 1012 of the first ECU 1010 verifies the electronic signature of the ECU code with the electronic signature received from the server device 1300 using the server public key certificate Cert_sv.
  • the validity of the server public key certificate Cert_sv has been verified by the IC chip 1202 of the control module 1201 of the maintenance tool 1200 using the certificate authority public key certificate Cert_ca. Therefore, the verification result of the electronic signature of the ECU code with the electronic signature by the HSM 1012 of the first ECU 1010 is highly reliable. Thereby, the reliability of the verification of the validity of the ECU code applied to the ECU can be improved.
  • the IC chip 1202 provided in the maintenance tool 1200 functions as a private certificate authority by having the certificate authority private key Key_ca_s. Thereby, the maintenance tool 1200 can generate the automobile public key certificate Cert_ve of the automobile 1001.
  • the secure element includes the certificate authority public key certificate Cert_ca.
  • the SIM 1052 that is an example of the secure element includes the certificate authority public key certificate Cert_ca.
  • the HSM 1012 that is an example of the secure element is the certificate authority public key certificate.
  • the IC chip 1202 as an example of the secure element includes the certificate authority public key certificate Cert_ca.
  • the secure element verifies the validity of the server public key certificate Cert_sv using the certificate authority public key certificate Cert_ca.
  • the server public key certificate Cert_sv that has been verified by the secure element is used to verify the electronic signature of the ECU code with the electronic signature distributed from the server device 1300.
  • an electronic signature is attached to data such as an update program applied to the ECU of the in-vehicle control system of the automobile and the data is distributed to the automobile, and the validity of the data with the electronic signature is verified by the public key certificate in the automobile. In this case, the reliability of the verification can be improved.
  • the public key certificate (server public key certificate Cert_sv) of the server apparatus 1300 is exchanged periodically, for example, every several years.
  • the validity of the new server public key certificate Cert_sv is verified by the secure element using the certificate authority public key certificate Cert_ca. Therefore, the trust of the server public key certificate Cert_sv after the exchange is obtained. Can be improved.
  • the tamper resistance of the secure element can prevent an attack on the CA public key certificate Cert_ca stored in the secure element.
  • the secure element by verifying the validity of the server public key certificate Cert_sv by the secure element, it is possible to improve the reliability of the verification of the validity of the server public key certificate Cert_sv.
  • the secure element includes the certificate authority private key Key_ca_s, and the secure element functions as a private certificate authority.
  • the tamper resistance of the secure element can prevent an attack on the CA private key Key_ca_s stored in the secure element.
  • the secure element generates a car public key certificate Cert_ve of the car 1001 provided with the secure element or the car 1001 to which the secure element is connected via the diagnostic port 1060. Thereby, the efficiency and reliability of generation of the automobile public key certificate Cert_ve can be improved.
  • the secure element includes the automobile secret key Key_ve_s.
  • the tamper resistance of the secure element can prevent an attack on the automobile private key Key_ve_s stored in the secure element.
  • the secure element generates an electronic signature of the application result information using the automobile private key Key_ve_s. Thereby, the reliability of the application result information with the electronic signature can be improved.
  • the above-described embodiment can be applied to an in-vehicle computer such as an ECU mounted on an automobile. According to the above-described embodiment, there is an effect that the reliability of verification of the validity of data applied to an in-vehicle computer such as an ECU can be improved.
  • SIM or eSIM may be used as the secure element.
  • eSIM is a kind of SIM and has tamper resistance.
  • an IC chip having tamper resistance may be used as the secure element.
  • a tamper-resistant cryptographic processing chip may be used as the secure element.
  • cryptographic processing chips for example, cryptographic processing chips called HSM, TPM (Trusted Platform Module), TPMf, TPMt, or SHE are known.
  • an automobile is taken as an example of a vehicle, but the present invention can also be applied to other vehicles such as a motorbike and a railway vehicle.
  • a computer program for realizing the functions of each device included in the above-described automobile or maintenance tool is recorded on a computer-readable recording medium, and the program recorded on the recording medium is read into a computer system and executed. You may do it.
  • the “computer system” may include an OS and hardware such as peripheral devices.
  • “Computer-readable recording medium” refers to a flexible disk, a magneto-optical disk, a ROM, a writable nonvolatile memory such as a flash memory, a portable medium such as a DVD (Digital Versatile Disc), and a built-in computer system.
  • a storage device such as a hard disk.
  • the “computer-readable recording medium” means a volatile memory (for example, DRAM (Dynamic DRAM) in a computer system that becomes a server or a client when a program is transmitted through a network such as the Internet or a communication line such as a telephone line. Random Access Memory)), etc., which hold programs for a certain period of time.
  • the program may be transmitted from a computer system storing the program in a storage device or the like to another computer system via a transmission medium or by a transmission wave in the transmission medium.
  • the “transmission medium” for transmitting the program refers to a medium having a function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line.
  • the program may be for realizing a part of the functions described above. Furthermore, what can implement

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mechanical Engineering (AREA)
  • Small-Scale Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

データ配信装置の第1の公開鍵証明書を記憶する第1の車載コンピュータと、第2の車載コンピュータと、第1の公開鍵証明書の生成に使用される第2の秘密鍵に対応する第2の公開鍵証明書を記憶するセキュアエレメントと、を備え、セキュアエレメントは、第2の公開鍵証明書を使用して第1の公開鍵証明書を検証し、第1の車載コンピュータは、データ配信装置から受信された第1のデータに付されている第1の電子署名を、セキュアエレメントによって検証が合格した第1の公開鍵証明書を使用して検証する暗号処理部を備え、第1の車載コンピュータ又は第2の車載コンピュータに対して、暗号処理部によって検証が合格した第1の電子署名が付されていた前記第1のデータを適用する。

Description

車載コンピュータシステム、車両、管理方法、及びコンピュータプログラム
 本発明は、車載コンピュータシステム、車両、管理方法、及びコンピュータプログラムに関する。
 本願は、2015年12月28日に日本に出願された特願2015-256649号に基づき優先権を主張し、その内容をここに援用する。
 従来、自動車は、ECU(Electronic Control Unit:電子制御装置)を有し、ECUによってエンジン制御等の機能を実現する。ECUは、コンピュータの一種であり、コンピュータプログラムによって所望の機能を実現する。複数のECUをCAN(Controller Area Network)に接続して構成される車載制御システムについてのセキュリティ技術が例えば非特許文献1に記載されている。
 また、自動車には、ECUに繋がるOBD(On-board Diagnostics)ポートと呼ばれる診断ポートが設けられている。このOBDポートに、メンテナンス専用の診断端末を接続して、該診断端末からECUに対して更新プログラムのインストール及びデータの設定変更などを行うことができる。すでに使用されている自動車について、ECUのコンピュータプログラムの更新等をする場合には、通常、車検時や自動車の定期点検時などに、正規販売店(ディーラー)や一般の自動車整備工場の工員によって更新がなされる。
竹森敬祐、"セキュアエレメントを基点とした車載制御システムの保護 -要素技術の整理と考察-"、電子情報通信学会、信学技報、vol. 114、no. 508、pp. 73-78、2015年3月
 自動車の車載制御システムのECUに適用される更新プログラム等のデータを、通信回線を介して自動車へ配信することが検討されている。この場合、配信されるデータの正当性を保証するために、配信されるデータに電子署名を付しておき、自動車において、配信されたデータの電子署名を公開鍵証明書によって検証することが考えられる。しかしながら、不当な公開鍵証明書が電子署名の検証に使用される可能性があった。
 本発明は、このような事情を考慮してなされたものであり、ECU等の車載コンピュータに適用されるデータの正当性の検証の信頼性を向上させることができる車載コンピュータシステム、車両、管理方法、及びコンピュータプログラムを提供することを課題とする。
(1)本発明の一態様の車載コンピュータシステムは、車両に備わる車載コンピュータシステムにおいて、データ配信装置の公開鍵証明書である第1の公開鍵証明書を記憶する第1の車載コンピュータと、第2の車載コンピュータと、前記第1の公開鍵証明書の生成に使用される第2の秘密鍵に対応する第2の公開鍵証明書を記憶する第1のセキュアエレメントと、を備え、前記第1の車載コンピュータと前記第2の車載コンピュータとが前記車両に備わる通信ネットワークに接続され、前記第1のセキュアエレメントは、前記第2の公開鍵証明書を使用して前記第1の公開鍵証明書を検証し、前記第1の車載コンピュータは、前記データ配信装置から受信された第1のデータに付されている第1の電子署名を、前記第1のセキュアエレメントによって検証が合格した前記第1の公開鍵証明書を使用して検証する暗号処理部を備え、前記第1の車載コンピュータ又は前記第2の車載コンピュータに対して、前記暗号処理部によって検証が合格した前記第1の電子署名が付されていた前記第1のデータを適用する。
(2)本発明の一態様の車載コンピュータシステムは、上記(1)の車載コンピュータシステムにおいて、前記第1のセキュアエレメントは、第3の秘密鍵をさらに記憶し、前記第3の秘密鍵を使用して、前記第1のデータの適用の結果を示す適用結果情報に対する第3の電子署名を生成し、前記車載コンピュータシステムは、前記第3の電子署名が付されている前記適用結果情報を、前記データ配信装置へ送信する。
(3)本発明の一態様の車載コンピュータシステムは、上記(2)の車載コンピュータシステムにおいて、前記第1のセキュアエレメントは、前記第2の秘密鍵をさらに記憶し、前記第2の秘密鍵を使用して前記第3の秘密鍵に対応する第3の公開鍵証明書を生成し、前記車載コンピュータシステムは、前記第3の公開鍵証明書を前記データ配信装置へ送信する。
(4)本発明の一態様の車載コンピュータシステムは、上記(1)の車載コンピュータシステムにおいて、第3の秘密鍵を記憶する第2のセキュアエレメントをさらに備え、前記第2のセキュアエレメントは、前記第3の秘密鍵を使用して、前記第1のデータの適用の結果を示す適用結果情報に対する第3の電子署名を生成し、前記車載コンピュータシステムは、前記第3の電子署名が付されている前記適用結果情報を、前記データ配信装置へ送信する。
(5)本発明の一態様の車載コンピュータシステムは、上記(4)の車載コンピュータシステムにおいて、前記第2のセキュアエレメントは、前記第2の秘密鍵をさらに記憶し、前記第2の秘密鍵を使用して前記第3の秘密鍵に対応する第3の公開鍵証明書を生成し、前記車載コンピュータシステムは、前記第3の公開鍵証明書を前記データ配信装置へ送信する。
(6)本発明の一態様の車載コンピュータシステムは、上記(1)から(5)のいずれかの車載コンピュータシステムにおいて、前記第1のセキュアエレメントは、前記車両に備わる通信モジュールに備わる。
(7)本発明の一態様の車載コンピュータシステムは、上記(1)から(5)のいずれかの車載コンピュータシステムにおいて、前記第1のセキュアエレメントは、前記第1の車載コンピュータに備わる。
(8)本発明の一態様の車載コンピュータシステムは、上記(4)又は(5)のいずれかの車載コンピュータシステムにおいて、前記第2のセキュアエレメントは、前記第1の車載コンピュータに備わる。
(9)本発明の一態様の車載コンピュータシステムは、上記(4)又は(5)のいずれかの車載コンピュータシステムにおいて、前記第2のセキュアエレメントは、前記車両に備わる通信モジュールに備わる。
(10)本発明の一態様の車載コンピュータシステムは、上記(1)から(9)のいずれかの車載コンピュータシステムにおいて、前記第1の車載コンピュータは、前記暗号処理部によって検証が合格した前記第1の電子署名が付されていた前記第1のデータを前記第2の車載コンピュータへ送信し、前記第2の車載コンピュータは、前記第1の車載コンピュータから受信した前記第1のデータを自己に適用し、前記第1の車載コンピュータと前記第2の車載コンピュータとは、同じ共通鍵を記憶し、前記共通鍵を使用して前記第1のデータの適用の正当性の検証を行う。
(11)本発明の一態様の車載コンピュータシステムは、車両に備わる車載コンピュータシステムにおいて、データ配信装置の公開鍵証明書である第1の公開鍵証明書を記憶する第1の車載コンピュータと、第2の車載コンピュータと、を備え、前記第1の車載コンピュータと前記第2の車載コンピュータとが前記車両に備わる通信ネットワークに接続され、前記第1の公開鍵証明書は、前記第1の車載コンピュータとデータを送受する車外の装置に備えられるセキュアエレメントによって、前記セキュアエレメントが記憶している「前記第1の公開鍵証明書の生成に使用される第2の秘密鍵に対応する第2の公開鍵証明書」を使用して検証が合格したものであり、前記第1の車載コンピュータは、前記データ配信装置から受信された第1のデータに付されている第1の電子署名を、前記第1の公開鍵証明書を使用して検証する暗号処理部を備え、前記第1の車載コンピュータ又は前記第2の車載コンピュータに対して、前記暗号処理部によって検証が合格した前記第1の電子署名が付されていた前記第1のデータを適用する。
(12)本発明の一態様の車両は、上記(1)から(11)のいずれかの車載コンピュータシステムを備える。
(13)本発明の一態様の管理方法は、車両に備わる車載コンピュータシステムが、データ配信装置の公開鍵証明書である第1の公開鍵証明書を記憶する第1の車載コンピュータと、第2の車載コンピュータと、前記第1の公開鍵証明書の生成に使用される第2の秘密鍵に対応する第2の公開鍵証明書を記憶するセキュアエレメントと、を備え、前記第1の車載コンピュータと前記第2の車載コンピュータとが前記車両に備わる通信ネットワークに接続され、前記セキュアエレメントが、前記第2の公開鍵証明書を使用して前記第1の公開鍵証明書を検証する公開鍵証明書検証ステップと、前記第1の車載コンピュータが、前記データ配信装置から受信された第1のデータに付されている第1の電子署名を、前記セキュアエレメントによって検証が合格した前記第1の公開鍵証明書を使用して検証する電子署名検証ステップと、前記第1の車載コンピュータ又は前記第2の車載コンピュータに対して、前記電子署名検証ステップによって検証が合格した前記第1の電子署名が付されていた前記第1のデータを適用するデータ適用ステップと、を含む。
(14)本発明の一態様の管理方法は、車両に備わる車載コンピュータシステムが、データ配信装置の公開鍵証明書である第1の公開鍵証明書を記憶する第1の車載コンピュータと、第2の車載コンピュータと、を備え、前記第1の車載コンピュータと前記第2の車載コンピュータとが前記車両に備わる通信ネットワークに接続され、前記第1の公開鍵証明書は、前記第1の車載コンピュータとデータを送受する車外の装置に備えられるセキュアエレメントによって、前記セキュアエレメントが記憶している「前記第1の公開鍵証明書の生成に使用される第2の秘密鍵に対応する第2の公開鍵証明書」を使用して検証が合格したものであり、前記第1の車載コンピュータが、前記データ配信装置から受信された第1のデータに付されている第1の電子署名を、前記第1の公開鍵証明書を使用して検証する電子署名検証ステップと、前記第1の車載コンピュータ又は前記第2の車載コンピュータに対して、前記電子署名検証ステップによって検証が合格した前記第1の電子署名が付されていた前記第1のデータを適用するデータ適用ステップと、を含む。
(15)本発明の一態様のコンピュータプログラムは、車両に備わる車載コンピュータシステムが、データ配信装置の公開鍵証明書である第1の公開鍵証明書を記憶する第1の車載コンピュータと、第2の車載コンピュータと、前記第1の公開鍵証明書の生成に使用された第2の秘密鍵に対応する第2の公開鍵証明書を記憶するセキュアエレメントと、を備え、前記第1の車載コンピュータと前記第2の車載コンピュータとが前記車両に備わる通信ネットワークに接続され、前記セキュアエレメントのコンピュータに、前記第2の公開鍵証明書を使用して前記第1の公開鍵証明書を検証する公開鍵証明書検証ステップを実行させ、前記第1の車載コンピュータに、前記データ配信装置から受信された第1のデータに付されている第1の電子署名を、前記セキュアエレメントによって検証が合格した前記第1の公開鍵証明書を使用して検証する電子署名検証ステップを実行させ、前記第1の車載コンピュータ又は前記第2の車載コンピュータに、前記電子署名検証ステップによって検証が合格した前記第1の電子署名が付されていた前記第1のデータを適用するデータ適用ステップを実行させる。
(16)本発明の一態様のコンピュータプログラムは、車両に備わる車載コンピュータシステムが、データ配信装置の公開鍵証明書である第1の公開鍵証明書を記憶する第1の車載コンピュータと、第2の車載コンピュータと、を備え、前記第1の車載コンピュータと前記第2の車載コンピュータとが前記車両に備わる通信ネットワークに接続され、前記第1の公開鍵証明書は、前記第1の車載コンピュータとデータを送受する車外の装置に備えられるセキュアエレメントによって、前記セキュアエレメントが記憶している「前記第1の公開鍵証明書の生成に使用される第2の秘密鍵に対応する第2の公開鍵証明書」を使用して検証が合格したものであり、前記第1の車載コンピュータに、前記データ配信装置から受信された第1のデータに付されている第1の電子署名を、前記第1の公開鍵証明書を使用して検証する電子署名検証ステップを実行させ、前記第1の車載コンピュータ又は前記第2の車載コンピュータに、前記電子署名検証ステップによって検証が合格した前記第1の電子署名が付されていた前記第1のデータを適用するデータ適用ステップを実行させる。
 本発明によれば、ECU等の車載コンピュータに適用されるデータの正当性の検証の信頼性を向上させることができるという効果が得られる。
本発明の第1実施形態に係る自動車を示すブロック図である。 第1実施形態に係る管理方法(例1)シーケンスチャートである。 第1実施形態に係るECUコードの配信手順(例1-a)を示すシーケンスチャートである。 第1実施形態に係るECUコードの配信手順(例1-b)を示すシーケンスチャートである。 第1実施形態に係るECUコードの配信手順(例1-c)を示すシーケンスチャートである。 第1実施形態に係るECUコードの配信手順(例1-d)を示すシーケンスチャートである。 第1実施形態に係る管理方法(例2)のシーケンスチャートである。 第1実施形態に係るECUコードの配信手順(例2-a)を示すシーケンスチャートである。 第1実施形態に係るECUコードの配信手順(例2-b)を示すシーケンスチャートである。 第1実施形態に係るECUコードの配信手順(例2-c)を示すシーケンスチャートである。 第1実施形態に係るECUコードの配信手順(例2-d)を示すシーケンスチャートである。 本発明の第2実施形態に係る自動車を示すブロック図である。 第2実施形態に係る管理方法(例3)のシーケンスチャートである。 第2実施形態に係るECUコードの配信手順(例3)を示すシーケンスチャートである。
 以下、図面を参照し、本発明の実施形態について説明する。なお、以下に示す実施形態では、車両として自動車を例に挙げて説明する。
[第1実施形態]
 図1は、本実施形態に係る自動車1001の構成例を示すブロック図である。本実施形態では、自動車1001に搭載されるECU(電子制御装置)に対して、更新プログラム等のデータを適用する場合を例に挙げて説明する。
[自動車の構成例1]
 図1において、自動車1001は、第1のECU1010と複数の第2のECU1020とを備える。第1のECU1010及び第2のECU1020は、自動車1001に備わる車載コンピュータである。第1のECU1010は、自動車1001に搭載されたECUのうち、ゲートウェイ機能を有するECUである。第2のECU1020は、自動車1001に搭載されたECUのうち、エンジン制御等の機能を有するECUである。第2のECU1020として、例えば、エンジン制御機能を有するECU、ハンドル制御機能を有するECU、ブレーキ制御機能を有するECUなどがある。
 第1のECU1010と複数の第2のECU1020は、自動車1001に備わるCAN(Controller Area Network)1030に接続される。CAN1030は通信ネットワークである。CANは車両に搭載される通信ネットワークの一つとして知られている。
 第1のECU1010は、CAN1030を介して、各第2のECU1020との間でデータを交換する。第2のECU1020は、CAN1030を介して、他の第2のECU1020との間でデータを交換する。
 なお、車両に搭載される通信ネットワークとして、CAN以外の通信ネットワークを自動車1001に備え、CAN以外の通信ネットワークを介して、第1のECU1010と第2のECU1020との間のデータの交換、及び、第2のECU1020同士の間のデータの交換が行われてもよい。例えば、LIN(Local Interconnect Network)を自動車1001に備えてもよい。また、CANとLINとを自動車1001に備えてもよい。また、自動車1001において、LINに接続する第2のECU1020を備えてもよい。
また、第1のECU1010は、CANとLINとに接続されてもよい。また、第1のECU1010は、CANを介して該CANに接続される第2のECU1020との間でデータを交換し、また、LINを介して該LINに接続される第2のECU1020との間でデータを交換してもよい。また、第2のECU1020同士が、LINを介してデータを交換してもよい。
 自動車1001は診断ポート1060を備える。診断ポート1060として、例えばOBDポートを使用してもよい。診断ポート1060には診断端末1065を接続可能である。診断ポート1060は第1のECU1010に接続される。第1のECU1010と診断ポート1060に接続された診断端末1065とは、診断ポート1060を介して、データを交換する。
 自動車1001はインフォテイメント(Infotainment)機器1040を備える。インフォテイメント機器1040として、例えば、ナビゲーション機能、位置情報サービス機能、音楽や動画などのマルチメディア再生機能、音声通信機能、データ通信機能、インターネット接続機能などを有するものが挙げられる。インフォテイメント機器1040は第1のECU1010に接続される。第1のECU1010は、インフォテイメント機器1040から入力された情報を第2のECU1020へ送信する。
 自動車1001は、TCU(Tele Communication Unit)1050を備える。TCU1050は通信装置である。TCU1050は通信モジュール1051を備える。通信モジュール1051は、無線通信ネットワークを利用して無線通信を行う。通信モジュール1051は、SIM(Subscriber Identity Module)1052を備える。SIM1052は、無線通信ネットワークを利用するための情報が書き込まれたSIMである。通信モジュール1051は、SIM1052を使用することにより該無線通信ネットワークに接続して無線通信を行うことができる。
 SIM1052は、鍵を記憶する鍵記憶部1053を備える。なお、SIM1052として、eSIM(Embedded Subscriber Identity Module)を使用してもよい。SIM及びeSIMは耐タンパー性(Tamper Resistant)を有する。SIM及びeSIMはセキュアエレメント(Secure Element:SE)の例である。セキュアエレメントは耐タンパー性を有する。SIM及びeSIMは、コンピュータの一種であり、コンピュータプログラムによって所望の機能を実現する。
 TCU1050は第1のECU1010に接続される。第1のECU1010は、TCU1050の通信モジュール1051とデータを交換する。
 なお、図1の構成では第1のECU1010とTCU1050を直接接続することにより第1のECU1010と通信モジュール1051の間でデータを交換するが、これに限定されない。例えば、TCU1050をインフォテイメント機器1040に接続し、第1のECU1010が、インフォテイメント機器1040を介して、TCU1050の通信モジュール1051とデータを交換してもよい。又は、診断端末1065の代わりにTCU1050を診断ポート1060に接続し、第1のECU1010が、診断ポート1060を介して、該診断ポート1060に接続されたTCU1050の通信モジュール1051とデータを交換してもよい。又は、第1のECU1010が、SIM1052を含む通信モジュール1051を備えてもよい。第1のECU1010がSIM1052を含む通信モジュール1051を備える場合には、自動車1001はTCU1050を備えなくてもよい。
 第1のECU1010は、メイン演算器1011とHSM(Hardware Security Module)1012を備える。メイン演算器1011は、第1のECU1010の機能を実現させるためのコンピュータプログラムを実行する。HSM1012は暗号処理機能を有する。
 HSM1012は耐タンパー性を有する。HSM1012はセキュアエレメントの例である。HSM1012は、鍵を記憶する鍵記憶部1013を備える。メイン演算器1011はHSM1012を使用する。
 なお、第1のECU1010が備える暗号処理部は、HSM1012に限定されない。第1のECU1010が備える暗号処理部として、例えば「TPM(Trusted Platform Module)f」と呼ばれる暗号処理チップを使用してもよい。TPMfは耐タンパー性を有する。TPMfはセキュアエレメントの例である。
 第2のECU1020は、メイン演算器1021とSHE(Secure Hardware Extension)1022を備える。メイン演算器1021は、第2のECU1020の機能を実現させるためのコンピュータプログラムを実行する。SHE1022は暗号処理機能を有する。SHE1022は耐タンパー性を有する。SHE1022はセキュアエレメントの例である。SHE1022は、鍵を記憶する鍵記憶部1023を備える。メイン演算器1021はSHE1022を使用する。
 なお、第2のECU1020が備える暗号処理部は、SHE1022に限定されない。第2のECU1020が備える暗号処理部として、例えば「TPMt」と呼ばれる暗号処理チップを使用してもよい。TPMtは耐タンパー性を有する。TPMtはセキュアエレメントの例である。
 自動車1001に備わる車載コンピュータシステム1002は、第1のECU1010と複数の第2のECU1020とがCAN1030に接続されて構成される。第1のECU1010は、ゲートウェイ機能を有し、車載コンピュータシステム1002の内部と外部の間の通信を監視する。なお、車載コンピュータシステム1002は、通信モジュール1051のSIM1052をさらに含んで構成されてもよい。
 以下の説明において、第1のECU1010と第2のECU1020とを特に区別しないときは単にECUと称する。
 サーバ装置1300は、通信回線を介して、自動車1001のTCU1050の通信モジュール1051とデータを送受する。例えば、サーバ装置1300と通信モジュール1051との間をVPN(Virtual Private Network)回線等の専用回線で接続し、該専用回線でデータを送受してもよい。例えば、SIM1052に対応する無線通信ネットワークによって、VPN回線等の専用回線が提供されてもよい。
 サーバ装置1300は、ECUに適用されるECUコード(ECU code)を自動車1001へ配信する。ECUコードは、ECUに適用されるデータの例である。ECUコードは、ECUにインストールされる更新プログラム等のコンピュータプログラムであってもよく、又は、ECUに設定されるパラメータ設定値などの設定データであってもよい。サーバ装置1300は、電子署名付きECUコードを自動車1001へ送信する。サーバ装置1300はデータ配信装置に対応する。
 次に、図2から図11を参照して本実施形態に係る管理方法の例を説明する。
[管理方法(例1)]
 図2から図6を参照して、本実施形態に係る管理方法の例1を説明する。図2は、本実施形態の管理方法の例1に係るシーケンスチャートである。管理方法の例1では、SIM1052は、認証局(Certification Authority:CA)の公開鍵証明書Cert_ca(以下、認証局公開鍵証明書Cert_caと称する)を備える。SIM1052の鍵記憶部1053は、認証局公開鍵証明書Cert_caを記憶する。認証局公開鍵証明書Cert_caは、SIM1052の製造時などに、安全に、SIM1052に格納される。
また、認証局公開鍵証明書Cert_caは、安全な通信経路、例えばVPN回線等の専用回線を介して自動車1001に送付されてSIM1052に格納されてもよい。例えば、SIM1052に対応する無線通信ネットワークによって、VPN回線等の専用回線が提供されてもよい。
 まず、図2を参照して、管理方法の例1に係る、サーバ装置1300の公開鍵証明書Cert_sv(以下、サーバ公開鍵証明書Cert_svと称する)の配信の手順を説明する。
(ステップS1)サーバ装置1300は、自己の秘密鍵Key_sv_s(以下、サーバ秘密鍵Key_sv_sと称する)を備える。サーバ装置1300は、サーバ秘密鍵Key_sv_sに対応するサーバ公開鍵証明書Cert_svを自動車1001の通信モジュール1051へ送信する。サーバ公開鍵証明書Cert_svは、認証局によって発行されたものである。認証局公開鍵証明書Cert_caは、サーバ公開鍵証明書Cert_svを発行した認証局の公開鍵証明書である。つまり、サーバ公開鍵証明書Cert_svは、認証局公開鍵証明書Cert_caに対応する認証局の秘密鍵を使用して生成されたものである。
(ステップS2)自動車1001において、通信モジュール1051は、サーバ装置1300から受信したサーバ公開鍵証明書Cert_svをSIM1052へ供給する。SIM1052は、該サーバ公開鍵証明書Cert_svの正当性を、認証局公開鍵証明書Cert_caを使用して検証する。
(ステップS3)通信モジュール1051は、SIM1052によって検証が合格したサーバ公開鍵証明書Cert_svを第1のECU1010へ送信する。第1のECU1010は、通信モジュール1051から受信したサーバ公開鍵証明書Cert_svをHSM1012に供給する。HSM1012の鍵記憶部1013は、通信モジュール1051から受信されたサーバ公開鍵証明書Cert_svを記憶する。
 一方、通信モジュール1051は、SIM1052によって検証が不合格となったサーバ公開鍵証明書Cert_svを破棄する。したがって、SIM1052によって検証が不合格となったサーバ公開鍵証明書Cert_svは、第1のECU1010へ送信されない。また、通信モジュール1051は、サーバ公開鍵証明書Cert_svの検証が不合格である場合には所定のエラー処理を行ってもよい。
 管理方法の例1によれば、自動車1001に備わるSIM1052が認証局公開鍵証明書Cert_caを備え、SIM1052が認証局公開鍵証明書Cert_caを使用してサーバ公開鍵証明書Cert_svの正当性を検証する。SIM1052は耐タンパー性を有するので、SIM1052に備わる認証局公開鍵証明書Cert_caの安全性は高い。このことから、SIM1052によって行われるサーバ公開鍵証明書Cert_svの正当性の検証の結果は信頼性が高い。
 次に図3から図6を参照して、管理方法の例1に係るECUコードの配信の手順の例を説明する。なお、図3から図6に示されるECUコード配信手順の例では、第2のECU1020に適用されるECUコードを例に挙げるが、第1のECU1010に適用されるECUコードについても、ECUコードの適用先が第1のECU1010になるのみで同様の手順を適用可能である。
[ECUコード配信手順(例1-a)]
 図3は、ECUコードの配信手順の例1-aを示すシーケンスチャートである。図3を参照して、ECUコードの配信手順の例1-aを説明する。図3において、サーバ装置1300は、サーバ秘密鍵Key_sv_sと、自動車1001の公開鍵証明書Cert_ve(以下、自動車公開鍵証明書Cert_veと称する)とを備える。自動車1001において、通信モジュール1051のSIM1052は、認証局公開鍵証明書Cert_caと、自動車1001の秘密鍵Key_ve_s(以下、自動車秘密鍵Key_ve_sと称する)とを備える。SIM1052の鍵記憶部1053は、認証局公開鍵証明書Cert_caと自動車秘密鍵Key_ve_sとを記憶する。
 自動車公開鍵証明書Cert_veは、自動車秘密鍵Key_ve_sに対応する公開鍵証明書である。自動車秘密鍵Key_ve_sと自動車公開鍵証明書Cert_veとは自動車1001の車外の装置で生成されて、自動車秘密鍵Key_ve_sはSIM1052に格納され、自動車公開鍵証明書Cert_veはサーバ装置1300に格納される。なお、自動車公開鍵証明書Cert_veに含める属性情報には、車両識別番号(Vehicle Identification Number:VIN)を含めてもよい。
 自動車1001において、第1のECU1010のHSM1012は、サーバ公開鍵証明書Cert_svと、自動車1001の共通鍵Key_ve_c(以下、自動車共通鍵Key_ve_cと称する)とを備える。HSM1012の鍵記憶部1013は、サーバ公開鍵証明書Cert_svと自動車共通鍵Key_ve_cとを記憶する。HSM1012の鍵記憶部1013に記憶されているサーバ公開鍵証明書Cert_svは、上述の図2の手順によって正当性の検証が合格したものである。
 第2のECU1020のSHE1022は、自動車共通鍵Key_ve_cを備える。SHE1022の鍵記憶部1023は、自動車共通鍵Key_ve_cを記憶する。第1のECU1010のHSM1012と第2のECU1020のSHE1022とは同じ自動車共通鍵Key_ve_cを備える。
(ステップS101)サーバ装置1300は、電子署名付きECUコードを自動車1001へ送信する。電子署名付きECUコードの電子署名は、サーバ秘密鍵Key_sv_sを使用して生成されたものである。自動車1001において、通信モジュール1051は、サーバ装置1300から受信した電子署名付きECUコードを第1のECU1010へ送信する。
(ステップS102)第1のECU1010は、通信モジュール1051から受信した電子署名付きECUコードをHSM1012へ供給する。HSM1012は、該電子署名付きECUコードの電子署名を、サーバ公開鍵証明書Cert_svを使用して検証する。
(ステップS103)第1のECU1010は、HSM1012によって検証が合格した電子署名が付されていたECUコードを第2のECU1020へ送信する。一方、第1のECU1010は、HSM1012によって検証が不合格となった電子署名が付されていたECUコードを破棄する。したがって、HSM1012によって検証が不合格となった電子署名が付されていたECUコードは、第2のECU1020へ送信されない。また、第1のECU1010は、サーバ装置1300から受信された電子署名付きECUコードの電子署名の検証が不合格である場合には所定のエラー処理を行ってもよい。
(ステップS104)第2のECU1020は、第1のECU1010から受信したECUコードを自己に適用する。
(ステップS105)第2のECU1020は、第1のECU1010から受信したECUコードを自己に適用した状態を示す適用状態測定値を、第1のECU1010へ送信する。本実施形態では、適用状態測定値として、第2のECU1020に適用後のECUコードのCMAC(Cipher-based Message Authentication Code)を、SHE1022によって、自動車共通鍵Key_ve_cを使用して算出する。なお、適用状態測定値として、第2のECU1020に適用後のECUコードのHMAC(Hash-based Message Authentication Code)を算出してもよい。
(ステップS106)第1のECU1010は、第2のECU1020から受信した適用状態測定値を検証する。この適用状態測定値の検証において、本実施形態では、第1のECU1010において、上述のステップS103で第2のECU1020へ送信したECUコードのCMACを、HSM1012によって、自動車共通鍵Key_ve_cを使用して算出する。そして、HSM1012によって算出したCMACと、第2のECU1020から受信した適用状態測定値のCMACとを比較し、両者が一致するかを判定する。
この判定の結果、一致する場合には適用状態測定値の検証が合格であり、不一致の場合には適用状態測定値の検証が不合格である。なお、第1のECU1010は、適用状態測定値の検証が不合格である場合には所定のエラー処理を行ってもよい。
(ステップS107)第1のECU1010は、上述のステップS103で第2のECU1020へ送信したECUコードの適用の結果を示す適用結果情報を通信モジュール1051へ送信する。適用結果情報として、上述のステップS103で第2のECU1020へ送信したECUコードであってもよい。又は、適用結果情報として、第2のECU1020から受信した適用状態測定値であってもよい。
(ステップS108)通信モジュール1051は、第1のECU1010から受信した適用結果情報をSIM1052へ供給する。SIM1052は、該適用結果情報の電子署名を、自動車秘密鍵Key_ve_sを使用して生成する。
(ステップS109)通信モジュール1051は、SIM1052によって生成した電子署名を適用結果情報に付した電子署名付き適用結果情報をサーバ装置1300へ送信する。
(ステップS110)サーバ装置1300は、自動車1001の通信モジュール1051から受信した電子署名付き適用結果情報の電子署名を、自動車公開鍵証明書Cert_veを使用して検証する。サーバ装置1300は、該検証が合格した電子署名が付されていた適用結果情報について、利用できると判断する。一方、サーバ装置1300は、該検証が不合格となった電子署名が付されていた適用結果情報を破棄する。また、サーバ装置1300は、自動車1001の通信モジュール1051から受信した電子署名付き適用結果情報の電子署名の検証が不合格である場合には所定のエラー処理を行ってもよい。なお、サーバ装置1300によって利用できると判断された適用結果情報は、ECUコードの適用状況の分析等に利用してもよい。
 ECUコード配信手順の例1-aによれば、第1のECU1010のHSM1012が、サーバ装置1300から受信された電子署名付きECUコードの電子署名を、サーバ公開鍵証明書Cert_svを使用して検証する。このサーバ公開鍵証明書Cert_svは、通信モジュール1051のSIM1052によって、認証局公開鍵証明書Cert_caを使用して正当性が検証済みである。よって、第1のECU1010のHSM1012による電子署名付きECUコードの電子署名の検証の結果は信頼性が高い。これにより、ECUに適用されるECUコードの正当性の検証の信頼性を向上させることができる。
[ECUコード配信手順(例1-b)]
 図4は、ECUコードの配信手順の例1-bを示すシーケンスチャートである。図4を参照して、ECUコードの配信手順の例1-bを説明する。図4において、図3の各部に対応する部分には同一の符号を付け、その説明を省略する。図4において、図3と異なる部分は、自動車秘密鍵Key_ve_sを第1のECU1010のHSM1012に備える点である。図4において、HSM1012の鍵記憶部1013は、サーバ公開鍵証明書Cert_svと自動車秘密鍵Key_ve_sと自動車共通鍵Key_ve_cとを記憶する。HSM1012の鍵記憶部1013に記憶されているサーバ公開鍵証明書Cert_svは、上述の図2の手順によって正当性の検証が合格したものである。以下、上述の図3のECUコード配信手順の例1-aと異なる点を主に説明する。
 図4において、ステップS101からS106までが実行される。ステップS101からS106までは、上述の図3のECUコード配信手順の例1-aと同じである。ステップS106に次いでステップS201が実行される。
(ステップS201)第1のECU1010は、ステップS103で第2のECU1020へ送信したECUコードの適用の結果を示す適用結果情報をHSM1012へ供給する。HSM1012は、該適用結果情報の電子署名を、自動車秘密鍵Key_ve_sを使用して生成する。適用結果情報として、ステップS103で第2のECU1020へ送信したECUコードであってもよい。又は、適用結果情報として、第2のECU1020から受信した適用状態測定値であってもよい。
(ステップS202)第1のECU1010は、HSM1012によって生成した電子署名を適用結果情報に付した電子署名付き適用結果情報を通信モジュール1051へ送信する。通信モジュール1051は、第1のECU1010から受信した電子署名付き適用結果情報をサーバ装置1300へ送信する。
 次いでステップS110が実行される。ステップS110は、上述の図3のECUコード配信手順の例1-aと同じである。
 ECUコード配信手順の例1-bによれば、上述のECUコード配信手順の例1-aと同様に、ECUに適用されるECUコードの正当性の検証の信頼性を向上させることができる。また、ECUコード配信手順の例1-bでは、第1のECU1010のHSM1012が自動車秘密鍵Key_ve_sを備え、HSM1012によって、適用結果情報の電子署名を、自動車秘密鍵Key_ve_sを使用して生成する。HSM1012はSIM1052よりも暗号処理能力が高いので、ECUコード配信手順の例1-bによれば、暗号処理の効率化を図ることができる。
[ECUコード配信手順(例1-c)]
 図5は、ECUコードの配信手順の例1-cを示すシーケンスチャートである。図5を参照して、ECUコードの配信手順の例1-cを説明する。図5において、図3の各部に対応する部分には同一の符号を付け、その説明を省略する。図5において、図3と異なる部分は、認証局の秘密鍵Key_ca_s(以下、認証局秘密鍵Key_ca_sと称する)を通信モジュール1051のSIM1052に備え、SIM1052が自動車秘密鍵Key_ve_sと自動車公開鍵証明書Cert_veのペアを生成する点である。
 認証局秘密鍵Key_ca_sは、認証局公開鍵証明書Cert_caに対応するものである。なお、認証局公開鍵証明書Cert_caは、サーバ公開鍵証明書Cert_svを発行した認証局の公開鍵証明書であってもよい。サーバ公開鍵証明書Cert_svは、公的な第三者機関の認証局によって発行された公開鍵証明書であってもよく、又は、例えば自動車1001のSIM1052等のプライベート認証局によって認証局秘密鍵Key_ca_sを使用して生成された公開鍵証明書であってもよい。
 SIM1052は、自動車秘密鍵Key_ve_sと自動車公開鍵証明書Cert_veのペアを生成する機能を有する。SIM1052の鍵記憶部1053は、認証局公開鍵証明書Cert_caと認証局秘密鍵Key_ca_sと自動車秘密鍵Key_ve_sとを記憶する。以下、上述の図3のECUコード配信手順の例1-aと異なる点を主に説明する。
(ステップS301)自動車1001において、通信モジュール1051のSIM1052は、自己の自動車1001の公開鍵と自動車秘密鍵Key_ve_sのペアを生成する。SIM1052は、該生成した自動車の公開鍵について公開鍵証明書(自動車公開鍵証明書Cert_ve)を、認証局秘密鍵Key_ca_sを使用して生成する。
(ステップS302)通信モジュール1051は、SIM1052によって生成した自動車公開鍵証明書Cert_veをサーバ装置1300へ送信する。サーバ装置1300は、自動車1001の通信モジュール1051から受信した自動車公開鍵証明書Cert_veを保管する。
 次いでステップS101からS110までが実行される。ステップS101からS110までは、上述の図3のECUコード配信手順の例1-aと同じである。
 ECUコード配信手順の例1-cによれば、上述のECUコード配信手順の例1-aと同様に、ECUに適用されるECUコードの正当性の検証の信頼性を向上させることができる。また、ECUコード配信手順の例1-cでは、自動車1001に備わるSIM1052が認証局秘密鍵Key_ca_sを有することによってプライベート認証局として機能する。これにより、自動車1001が自己の自動車秘密鍵Key_ve_sと自動車公開鍵証明書Cert_veのペアを生成することができる。なお、自動車1001に備わる認証局秘密鍵Key_ca_sと認証局公開鍵証明書Cert_caのペアは、例えば、自動車メーカ毎、車種毎、自動車の製造年毎などで異なるようにしてもよい。
[ECUコード配信手順(例1-d)]
 図6は、ECUコードの配信手順の例1-dを示すシーケンスチャートである。図6を参照して、ECUコードの配信手順の例1-dを説明する。図6において、図4の各部に対応する部分には同一の符号を付け、その説明を省略する。図6において、図4と異なる部分は、認証局秘密鍵Key_ca_sを第1のECU1010のHSM1012に備え、HSM1012が自動車秘密鍵Key_ve_sと自動車公開鍵証明書Cert_veのペアを生成する点である。
 認証局秘密鍵Key_ca_sは、認証局公開鍵証明書Cert_caに対応するものである。なお、認証局公開鍵証明書Cert_caは、サーバ公開鍵証明書Cert_svを発行した認証局の公開鍵証明書であってもよい。サーバ公開鍵証明書Cert_svは、公的な第三者機関の認証局によって発行された公開鍵証明書であってもよく、又は、例えば自動車1001のSIM1052等のプライベート認証局によって認証局秘密鍵Key_ca_sを使用して生成された公開鍵証明書であってもよい。
 HSM1012は、自動車秘密鍵Key_ve_sと自動車公開鍵証明書Cert_veのペアを生成する機能を有する。HSM1012の鍵記憶部1013は、認証局秘密鍵Key_ca_sとサーバ公開鍵証明書Cert_svと自動車秘密鍵Key_ve_sと自動車共通鍵Key_ve_cとを記憶する。HSM1012の鍵記憶部1013に記憶されているサーバ公開鍵証明書Cert_svは、上述の図2の手順によって正当性の検証が合格したものである。以下、上述の図4のECUコード配信手順の例1-bと異なる点を主に説明する。
(ステップS401)自動車1001において、第1のECU1010のHSM1012は、自己の自動車1001の公開鍵と自動車秘密鍵Key_ve_sのペアを生成する。HSM1012は、該生成した自動車の公開鍵について公開鍵証明書(自動車公開鍵証明書Cert_ve)を、認証局秘密鍵Key_ca_sを使用して生成する。
(ステップS402)第1のECU1010は、HSM1012によって生成した自動車公開鍵証明書Cert_veを通信モジュール1051へ送信する。通信モジュール1051は、第1のECU1010から受信した自動車公開鍵証明書Cert_veをサーバ装置1300へ送信する。サーバ装置1300は、自動車1001の通信モジュール1051から受信した自動車公開鍵証明書Cert_veを保管する。
 次いでステップS101からS106、S201、S202、S110までが実行される。ステップS101からS106、S201、S202、S110までは、上述の図4のECUコード配信手順の例1-bと同じである。
 ECUコード配信手順の例1-dによれば、上述のECUコード配信手順の例1-aと同様に、ECUに適用されるECUコードの正当性の検証の信頼性を向上させることができる。また、上述のECUコード配信手順の例1-bと同様に、暗号処理の効率化を図ることができる。
 また、ECUコード配信手順の例1-dでは、自動車1001に備わるHSM1012が認証局秘密鍵Key_ca_sを有することによってプライベート認証局として機能する。これにより、自動車1001が自己の自動車秘密鍵Key_ve_sと自動車公開鍵証明書Cert_veのペアを生成することができる。なお、自動車1001に備わる認証局秘密鍵Key_ca_sと認証局公開鍵証明書Cert_caのペアは、例えば、自動車メーカ毎、車種毎、自動車の製造年毎などで異なるようにしてもよい。
[管理方法(例2)]
 図7から図11を参照して、本実施形態に係る管理方法の例2を説明する。図7は、本実施形態の管理方法の例2に係るシーケンスチャートである。管理方法の例2では、HSM1012は、認証局公開鍵証明書Cert_caとサーバ公開鍵証明書Cert_svとを備える。HSM1012の鍵記憶部1013は、認証局公開鍵証明書Cert_caとサーバ公開鍵証明書Cert_svとを記憶する。認証局公開鍵証明書Cert_caは、HSM1012の製造時などに、安全に、HSM1012に格納される。また、認証局公開鍵証明書Cert_caは、安全な通信経路、例えばVPN回線等の専用回線を介して自動車1001に送付されてHSM1012に格納されてもよい。例えば、SIM1052に対応する無線通信ネットワークによって、VPN回線等の専用回線が提供されてもよい。
 まず、図7を参照して、管理方法の例2に係るサーバ公開鍵証明書Cert_svの配信の手順を説明する。
(ステップS11)サーバ装置1300は、サーバ秘密鍵Key_sv_sを備える。サーバ装置1300は、サーバ秘密鍵Key_sv_sに対応するサーバ公開鍵証明書Cert_svを自動車1001の通信モジュール1051へ送信する。サーバ公開鍵証明書Cert_svは、認証局によって発行されたものである。認証局公開鍵証明書Cert_caは、サーバ公開鍵証明書Cert_svを発行した認証局の公開鍵証明書である。
つまり、サーバ公開鍵証明書Cert_svは、認証局公開鍵証明書Cert_caに対応する認証局の秘密鍵を使用して生成されたものである。
 自動車1001において、通信モジュール1051は、サーバ装置1300から受信したサーバ公開鍵証明書Cert_svを第1のECU1010へ送信する。
(ステップS12)自動車1001において、第1のECU1010は、通信モジュール1051から受信したサーバ公開鍵証明書Cert_svをHSM1012へ供給する。
HSM1012は、該サーバ公開鍵証明書Cert_svの正当性を、認証局公開鍵証明書Cert_caを使用して検証する。HSM1012は、検証が合格したサーバ公開鍵証明書Cert_svを鍵記憶部1013に格納する。
 一方、HSM1012は、検証が不合格となったサーバ公開鍵証明書Cert_svを破棄する。したがって、検証が不合格となったサーバ公開鍵証明書Cert_svは、HSM1012で保管されない。また、第1のECU1010は、サーバ公開鍵証明書Cert_svの検証が不合格である場合には所定のエラー処理を行ってもよい。
 管理方法の例2によれば、自動車1001に備わるHSM1012が認証局公開鍵証明書Cert_caを備え、HSM1012が認証局公開鍵証明書Cert_caを使用してサーバ公開鍵証明書Cert_svの正当性を検証する。HSM1012は耐タンパー性を有するので、HSM1012に備わる認証局公開鍵証明書Cert_caの安全性は高い。このことから、HSM1012によって行われるサーバ公開鍵証明書Cert_svの正当性の検証の結果は信頼性が高い。また、HSM1012はSIM1052よりも暗号処理能力が高いので、管理方法の例2によれば、暗号処理の効率化を図ることができる。
 次に図8から図11を参照して、管理方法の例2に係るECUコードの配信の手順の例を説明する。なお、図8から図11に示されるECUコード配信手順の例では、第2のECU1020に適用されるECUコードを例に挙げるが、第1のECU1010に適用されるECUコードについても、ECUコードの適用先が第1のECU1010になるのみで同様の手順を適用可能である。
[ECUコード配信手順(例2-a)]
 図8は、ECUコードの配信手順の例2-aを示すシーケンスチャートである。図8を参照して、ECUコードの配信手順の例2-aを説明する。図8において、図3の各部に対応する部分には同一の符号を付け、その説明を省略する。図8において、図3と異なる部分は、認証局公開鍵証明書Cert_caを第1のECU1010のHSM1012に備える点である。図8において、HSM1012の鍵記憶部1013は、認証局公開鍵証明書Cert_caとサーバ公開鍵証明書Cert_svと自動車共通鍵Key_ve_cとを記憶する。HSM1012の鍵記憶部1013に記憶されているサーバ公開鍵証明書Cert_svは、上述の図7の手順によって正当性の検証が合格したものである。
 図8において、ステップS101からS110までが実行される。ステップS101からS110までは、上述の図3のECUコード配信手順の例1-aと同じである。
 ECUコード配信手順の例2-aによれば、第1のECU1010のHSM1012が、サーバ装置1300から受信された電子署名付きECUコードの電子署名を、サーバ公開鍵証明書Cert_svを使用して検証する。このサーバ公開鍵証明書Cert_svは、第1のECU1010のHSM1012によって、認証局公開鍵証明書Cert_caを使用して正当性が検証済みである。よって、第1のECU1010のHSM1012による電子署名付きECUコードの電子署名の検証の結果は信頼性が高い。これにより、ECUに適用されるECUコードの正当性の検証の信頼性を向上させることができる。
[ECUコード配信手順(例2-b)]
 図9は、ECUコードの配信手順の例2-bを示すシーケンスチャートである。図9を参照して、ECUコードの配信手順の例2-bを説明する。図9において、図4の各部に対応する部分には同一の符号を付け、その説明を省略する。図9において、図4と異なる部分は、認証局公開鍵証明書Cert_caを第1のECU1010のHSM1012に備える点である。図9において、HSM1012の鍵記憶部1013は、認証局公開鍵証明書Cert_caとサーバ公開鍵証明書Cert_svと自動車秘密鍵Key_ve_sと自動車共通鍵Key_ve_cとを記憶する。HSM1012の鍵記憶部1013に記憶されているサーバ公開鍵証明書Cert_svは、上述の図7の手順によって正当性の検証が合格したものである。
 図9において、ステップS101からS106、S201、S202、S110までが実行される。ステップS101からS106、S201、S202、S110までは、上述の図4のECUコード配信手順の例1-bと同じである。
 ECUコード配信手順の例2-bによれば、上述のECUコード配信手順の例2-aと同様に、ECUに適用されるECUコードの正当性の検証の信頼性を向上させることができる。また、ECUコード配信手順の例2-bでは、第1のECU1010のHSM1012が自動車秘密鍵Key_ve_sを備え、HSM1012によって、適用結果情報の電子署名を、自動車秘密鍵Key_ve_sを使用して生成する。HSM1012はSIM1052よりも暗号処理能力が高いので、ECUコード配信手順の例2-bによれば、暗号処理の効率化を図ることができる。
[ECUコード配信手順(例2-c)]
 図10は、ECUコードの配信手順の例2-cを示すシーケンスチャートである。図10を参照して、ECUコードの配信手順の例2-cを説明する。図10において、図5の各部に対応する部分には同一の符号を付け、その説明を省略する。図10において、図5と異なる部分は、認証局公開鍵証明書Cert_caを第1のECU1010のHSM1012に備える点である。図10において、HSM1012の鍵記憶部1013は、認証局公開鍵証明書Cert_caとサーバ公開鍵証明書Cert_svと自動車共通鍵Key_ve_cとを記憶する。HSM1012の鍵記憶部1013に記憶されているサーバ公開鍵証明書Cert_svは、上述の図7の手順によって正当性の検証が合格したものである。
 図10において、ステップS301、S302、ステップS101からS110までが実行される。ステップS301、S302、ステップS101からS110までは、上述の図5のECUコード配信手順の例1-cと同じである。
 ECUコード配信手順の例2-cによれば、上述のECUコード配信手順の例2-aと同様に、ECUに適用されるECUコードの正当性の検証の信頼性を向上させることができる。また、ECUコード配信手順の例2-cでは、自動車1001に備わるSIM1052が認証局秘密鍵Key_ca_sを有することによってプライベート認証局として機能する。これにより、自動車1001が自己の自動車秘密鍵Key_ve_sと自動車公開鍵証明書Cert_veのペアを生成することができる。なお、自動車1001に備わる認証局秘密鍵Key_ca_sと認証局公開鍵証明書Cert_caのペアは、例えば、自動車メーカ毎、車種毎、自動車の製造年毎などで異なるようにしてもよい。
[ECUコード配信手順(例2-d)]
 図11は、ECUコードの配信手順の例2-dを示すシーケンスチャートである。図11を参照して、ECUコードの配信手順の例2-dを説明する。図11において、図6の各部に対応する部分には同一の符号を付け、その説明を省略する。図11において、図6と異なる部分は、認証局公開鍵証明書Cert_caを第1のECU1010のHSM1012に備える点である。図11において、HSM1012の鍵記憶部1013は、認証局公開鍵証明書Cert_caと認証局秘密鍵Key_ca_sとサーバ公開鍵証明書Cert_svと自動車秘密鍵Key_ve_sと自動車共通鍵Key_ve_cとを記憶する。HSM1012の鍵記憶部1013に記憶されているサーバ公開鍵証明書Cert_svは、上述の図7の手順によって正当性の検証が合格したものである。
 図11において、ステップS401、S402、S101からS106、S201、S202、S110までが実行される。ステップS401、S402、S101からS106、S201、S202、S110までは、上述の図6のECUコード配信手順の例1-dと同じである。
 ECUコード配信手順の例2-dによれば、上述のECUコード配信手順の例2-aと同様に、ECUに適用されるECUコードの正当性の検証の信頼性を向上させることができる。また、上述のECUコード配信手順の例1-dと同様に、暗号処理の効率化を図ることができる。
 また、ECUコード配信手順の例2-dでは、自動車1001に備わるHSM1012が認証局秘密鍵Key_ca_sを有することによってプライベート認証局として機能する。これにより、自動車1001が自己の自動車秘密鍵Key_ve_sと自動車公開鍵証明書Cert_veのペアを生成することができる。なお、自動車1001に備わる認証局秘密鍵Key_ca_sと認証局公開鍵証明書Cert_caのペアは、例えば、自動車メーカ毎、車種毎、自動車の製造年毎などで異なるようにしてもよい。
[第2実施形態]
 図12は、本発明の第2実施形態に係る自動車1001の構成例を示すブロック図である。本実施形態では、自動車1001に搭載されるECU(電子制御装置)に対して、更新プログラム等のデータを適用する場合を例に挙げて説明する。
[自動車の構成例2]
 図12において、図1の各部に対応する部分には同一の符号を付け、その説明を省略する。図12に示す自動車の構成例2において、診断ポート1060にはメンテナンスツール(maintenance tool)1200を接続可能である。第1のECU1010と診断ポート1060に接続されたメンテナンスツール1200とは、診断ポート1060を介して、データを交換する。メンテナンスツール1200は、OBDポートに接続される従来の診断端末の機能を有していてもよい。
 メンテナンスツール1200は、制御モジュール1201を備える。制御モジュール1201は、IC(Integrated Circuit)チップ1202を備える。ICチップ1202は、鍵を記憶する鍵記憶部1203を備える。ICチップ1202は耐タンパー性を有する。ICチップ1202はセキュアエレメントの例である。ICチップ1202は、コンピュータの一種であり、コンピュータプログラムによって所望の機能を実現する。
 サーバ装置1300は、通信回線を介して、メンテナンスツール1200とデータを送受する。例えば、サーバ装置1300とメンテナンスツール1200との間をVPN回線等の専用回線で接続し、該専用回線でデータを送受してもよい。
 サーバ装置1300は、ECUに適用されるECUコードを、メンテナンスツール1200を介して自動車1001へ配信する。ECUコードは、ECUに適用されるデータの例である。ECUコードは、ECUにインストールされる更新プログラム等のコンピュータプログラムであってもよく、又は、ECUに設定されるパラメータ設定値などの設定データであってもよい。サーバ装置1300は、電子署名付きECUコードを、メンテナンスツール1200を介して自動車1001へ送信する。サーバ装置1300はデータ配信装置に対応する。
[管理方法(例3)]
 次に、図13及び図14を参照して本実施形態に係る管理方法の例3を説明する。図13は、本実施形態の管理方法の例3に係るシーケンスチャートである。管理方法の例3では、ICチップ1202が、認証局公開鍵証明書Cert_caと認証局秘密鍵Key_ca_sとを備える。ICチップ1202の鍵記憶部1203は、認証局公開鍵証明書Cert_caと認証局秘密鍵Key_ca_sとを記憶する。認証局公開鍵証明書Cert_caと認証局秘密鍵Key_ca_sとは、ICチップ1202の製造時などに、安全に、ICチップ1202に格納される。
 まず、図13を参照して、管理方法の例3に係るサーバ公開鍵証明書Cert_svの配信の手順を説明する。
(ステップS21)サーバ装置1300は、サーバ秘密鍵Key_sv_sを備える。サーバ装置1300は、サーバ秘密鍵Key_sv_sに対応するサーバ公開鍵証明書Cert_svをメンテナンスツール1200へ送信する。サーバ公開鍵証明書Cert_svは、認証局によって発行されたものである。認証局公開鍵証明書Cert_caは、サーバ公開鍵証明書Cert_svを発行した認証局の公開鍵証明書である。つまり、サーバ公開鍵証明書Cert_svは、認証局公開鍵証明書Cert_caに対応する認証局の秘密鍵を使用して生成されたものである。
(ステップS22)メンテナンスツール1200において、制御モジュール1201は、サーバ装置1300から受信されたサーバ公開鍵証明書Cert_svをICチップ1202へ供給する。ICチップ1202は、該サーバ公開鍵証明書Cert_svの正当性を、認証局公開鍵証明書Cert_caを使用して検証する。
(ステップS23)制御モジュール1201は、ICチップ1202によって検証が合格したサーバ公開鍵証明書Cert_svを、自動車1001の診断ポート1060を介して第1のECU1010へ送信する。第1のECU1010は、制御モジュール1201から受信したサーバ公開鍵証明書Cert_svをHSM1012に供給する。HSM1012の鍵記憶部1013は、制御モジュール1201から受信されたサーバ公開鍵証明書Cert_svを記憶する。
 一方、制御モジュール1201は、ICチップ1202によって検証が不合格となったサーバ公開鍵証明書Cert_svを破棄する。したがって、ICチップ1202によって検証が不合格となったサーバ公開鍵証明書Cert_svは、自動車1001に供給されない。また、制御モジュール1201は、サーバ公開鍵証明書Cert_svの検証が不合格である場合には所定のエラー処理を行ってもよい。
 管理方法の例3によれば、メンテナンスツール1200の制御モジュール1201に備わるICチップ1202が認証局公開鍵証明書Cert_caを備え、ICチップ1202が認証局公開鍵証明書Cert_caを使用してサーバ公開鍵証明書Cert_svの正当性を検証する。ICチップ1202は耐タンパー性を有するので、ICチップ1202に備わる認証局公開鍵証明書Cert_caの安全性は高い。このことから、ICチップ1202によって行われるサーバ公開鍵証明書Cert_svの正当性の検証の結果は信頼性が高い。
 次に図14を参照して、管理方法の例3に係るECUコードの配信の手順の例を説明する。なお、図14に示されるECUコード配信手順の例では、第2のECU1020に適用されるECUコードを例に挙げるが、第1のECU1010に適用されるECUコードについても、ECUコードの適用先が第1のECU1010になるのみで同様の手順を適用可能である。
[ECUコード配信手順(例3)]
 図14は、ECUコードの配信手順の例3を示すシーケンスチャートである。図14を参照して、ECUコードの配信手順の例3を説明する。図14において、サーバ装置1300は、サーバ秘密鍵Key_sv_sと自動車公開鍵証明書Cert_veとを備える。メンテナンスツール1200において、制御モジュール1201のICチップ1202は、認証局公開鍵証明書Cert_caと認証局秘密鍵Key_ca_sとを備える。ICチップ1202の鍵記憶部1203は、認証局公開鍵証明書Cert_caと認証局秘密鍵Key_ca_sとを記憶する。
 自動車1001において、第1のECU1010のHSM1012は、サーバ公開鍵証明書Cert_svと自動車秘密鍵Key_ve_sと自動車共通鍵Key_ve_cとを備える。HSM1012の鍵記憶部1013は、サーバ公開鍵証明書Cert_svと自動車秘密鍵Key_ve_sと自動車共通鍵Key_ve_cとを記憶する。HSM1012の鍵記憶部1013に記憶されているサーバ公開鍵証明書Cert_svは、上述の図13の手順によって正当性の検証が合格したものである。
 第2のECU1020のSHE1022は、自動車共通鍵Key_ve_cを備える。
SHE1022の鍵記憶部1023は、自動車共通鍵Key_ve_cを記憶する。第1のECU1010のHSM1012と第2のECU1020のSHE1022とは同じ自動車共通鍵Key_ve_cを備える。
(ステップS1001)メンテナンスツール1200において、制御モジュール1201のICチップ1202は、自己が接続されている自動車1001の自動車秘密鍵Key_ve_sに対応する公開鍵について公開鍵証明書(自動車公開鍵証明書Cert_ve)を、認証局秘密鍵Key_ca_sを使用して生成する。自動車1001の自動車秘密鍵Key_ve_sに対応する公開鍵は、第1のECU1010から診断ポート1060を介してメンテナンスツール1200の制御モジュール1201へ供給される。
(ステップS1002)制御モジュール1201は、ICチップ1202によって生成した自動車公開鍵証明書Cert_veをサーバ装置1300へ送信する。サーバ装置1300は、メンテナンスツール1200の制御モジュール1201から受信した自動車公開鍵証明書Cert_veを保管する。
(ステップS1101)サーバ装置1300は、電子署名付きECUコードをメンテナンスツール1200へ送信する。電子署名付きECUコードの電子署名は、サーバ秘密鍵Key_sv_sを使用して生成されたものである。メンテナンスツール1200の制御モジュール1201は、サーバ装置1300から受信した電子署名付きECUコードを、自動車1001の診断ポート1060を介して第1のECU1010へ送信する。
(ステップS102)第1のECU1010は、制御モジュール1201から診断ポート1060を介して受信した電子署名付きECUコードをHSM1012へ供給する。HSM1012は、該電子署名付きECUコードの電子署名を、サーバ公開鍵証明書Cert_svを使用して検証する。
 次いでステップS103からS106までが実行される。ステップS103からS106までは、上述の図3のECUコード配信手順の例1-aと同じである。ステップS106に次いでステップS201が実行される。ステップS201は、上述の図4のECUコードの配信手順の例1-bと同じである。ステップS201に次いでステップS1202が実行される。
(ステップS1202)第1のECU1010は、HSM1012によって生成した電子署名を適用結果情報に付した電子署名付き適用結果情報を、診断ポート1060を介してメンテナンスツール1200の制御モジュール1201へ送信する。制御モジュール1201は、診断ポート1060を介して第1のECU1010から受信した電子署名付き適用結果情報をサーバ装置1300へ送信する。
 次いでステップS110が実行される。ステップS110は、上述の図3のECUコード配信手順の例1-aと同じである。
 ECUコード配信手順の例3によれば、第1のECU1010のHSM1012が、サーバ装置1300から受信された電子署名付きECUコードの電子署名を、サーバ公開鍵証明書Cert_svを使用して検証する。このサーバ公開鍵証明書Cert_svは、メンテナンスツール1200の制御モジュール1201のICチップ1202によって、認証局公開鍵証明書Cert_caを使用して正当性が検証済みである。よって、第1のECU1010のHSM1012による電子署名付きECUコードの電子署名の検証の結果は信頼性が高い。これにより、ECUに適用されるECUコードの正当性の検証の信頼性を向上させることができる。
 また、メンテナンスツール1200に備わるICチップ1202が認証局秘密鍵Key_ca_sを有することによってプライベート認証局として機能する。これにより、メンテナンスツール1200が自動車1001の自動車公開鍵証明書Cert_veを生成することができる。
 上述した実施形態によれば、セキュアエレメントが認証局公開鍵証明書Cert_caを備える。上述した実施形態に係る管理方法の例1ではセキュアエレメントの一例であるSIM1052が認証局公開鍵証明書Cert_caを備え、管理方法の例2ではセキュアエレメントの一例であるHSM1012が認証局公開鍵証明書Cert_caを備え、管理方法の例3ではセキュアエレメントの一例であるICチップ1202が認証局公開鍵証明書Cert_caを備える。該セキュアエレメントは、認証局公開鍵証明書Cert_caを使用してサーバ公開鍵証明書Cert_svの正当性を検証する。該セキュアエレメントによって検証が合格したサーバ公開鍵証明書Cert_svは、サーバ装置1300から配信された電子署名付きECUコードの電子署名の検証に使用される。これにより、自動車の車載制御システムのECUに適用される更新プログラム等のデータに電子署名を付して該自動車へ配信し、該自動車において電子署名付きデータの正当性を公開鍵証明書によって検証する際に、該検証の信頼性を向上させることができる。
 また、一般に、サーバ装置1300の公開鍵証明書(サーバ公開鍵証明書Cert_sv)は、定期的に、例えば数年周期で交換される。上述した実施形態によれば、セキュアエレメントによって新しいサーバ公開鍵証明書Cert_svの正当性の検証が認証局公開鍵証明書Cert_caを使用して行われるので、交換後のサーバ公開鍵証明書Cert_svの信頼性を向上させることができる。
 また、認証局公開鍵証明書Cert_caはセキュアエレメントに格納されるので、該セキュアエレメントの耐タンパー性によって、該セキュアエレメントに格納されている認証局公開鍵証明書Cert_caに対する攻撃を防止できる。これにより、該セキュアエレメントによってサーバ公開鍵証明書Cert_svの正当性の検証を行うことにより、サーバ公開鍵証明書Cert_svの正当性の検証の信頼性を向上させることができる。
 また、上述した実施形態によれば、セキュアエレメントが認証局秘密鍵Key_ca_sを備え、該セキュアエレメントがプライベート認証局として機能する。該セキュアエレメントの耐タンパー性によって、該セキュアエレメントに格納されている認証局秘密鍵Key_ca_sに対する攻撃を防止できる。該セキュアエレメントは、該セキュアエレメントが備わる自動車1001、又は、該セキュアエレメントが診断ポート1060を介して接続される自動車1001、の自動車公開鍵証明書Cert_veを生成する。これにより、自動車公開鍵証明書Cert_veの生成の効率と信頼性を向上させることができる。
 また、上述した実施形態によれば、セキュアエレメントが自動車秘密鍵Key_ve_sを備える。該セキュアエレメントの耐タンパー性によって、該セキュアエレメントに格納されている自動車秘密鍵Key_ve_sに対する攻撃を防止できる。該セキュアエレメントは、自動車秘密鍵Key_ve_sを使用して適用結果情報の電子署名を生成する。これにより、電子署名付き適用結果情報の信頼性を向上させることができる。
 上述の実施形態は、自動車に搭載されるECU等の車載コンピュータに適用できる。上述した実施形態によれば、ECU等の車載コンピュータに適用されるデータの正当性の検証の信頼性を向上させることができるという効果が得られる。
 以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
 上述した実施形態において、セキュアエレメントとして、例えば、SIM又はeSIMを使用してもよい。eSIMは、SIMの一種であり、耐タンパー性を有する。また、セキュアエレメントとして、耐タンパー性を有するICチップを使用してもよい。また、セキュアエレメントとして、耐タンパー性のある暗号処理チップを使用してもよい。耐タンパー性のある暗号処理チップとして、例えば、HSM、TPM(Trusted Platform Module)、TPMf、TPMt、又はSHEなどと呼ばれる暗号処理チップが知られている。
 上述した実施形態では、車両として自動車を例に挙げたが、原動機付自転車や鉄道車両等の自動車以外の他の車両にも適用可能である。
 また、上述した自動車又はメンテナンスツールに備わる各装置の機能を実現するためのコンピュータプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行するようにしてもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものであってもよい。
 また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、フラッシュメモリ等の書き込み可能な不揮発性メモリ、DVD(Digital Versatile Disc)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
 さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えばDRAM(Dynamic Random Access Memory))のように、一定時間プログラムを保持しているものも含むものとする。
 また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
 また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。
さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
1001 自動車、
1002 車載コンピュータシステム
1010 第1のECU
1011,1021 メイン演算器
1012 HSM
1013,1023,1053,1203 鍵記憶部
1020 第2のECU
1022 SHE
1030 CAN
1040 インフォテイメント機器
1050 TCU
1051 通信モジュール
1052 SIM
1060 診断ポート
1065 診断端末
1200 メンテナンスツール
1201 制御モジュール
1202 ICチップ
1300 サーバ装置

Claims (16)

  1.  車両に備わる車載コンピュータシステムにおいて、
     データ配信装置の公開鍵証明書である第1の公開鍵証明書を記憶する第1の車載コンピュータと、
     第2の車載コンピュータと、
     前記第1の公開鍵証明書の生成に使用される第2の秘密鍵に対応する第2の公開鍵証明書を記憶する第1のセキュアエレメントと、を備え、
     前記第1の車載コンピュータと前記第2の車載コンピュータとが前記車両に備わる通信ネットワークに接続され、
     前記第1のセキュアエレメントは、前記第2の公開鍵証明書を使用して前記第1の公開鍵証明書を検証し、
     前記第1の車載コンピュータは、前記データ配信装置から受信された第1のデータに付されている第1の電子署名を、前記第1のセキュアエレメントによって検証が合格した前記第1の公開鍵証明書を使用して検証する暗号処理部を備え、
     前記第1の車載コンピュータ又は前記第2の車載コンピュータに対して、前記暗号処理部によって検証が合格した前記第1の電子署名が付されていた前記第1のデータを適用する、
     車載コンピュータシステム。
  2.  前記第1のセキュアエレメントは、
     第3の秘密鍵をさらに記憶し、
     前記第3の秘密鍵を使用して、前記第1のデータの適用の結果を示す適用結果情報に対する第3の電子署名を生成し、
     前記車載コンピュータシステムは、
     前記第3の電子署名が付されている前記適用結果情報を、前記データ配信装置へ送信する、
     請求項1に記載の車載コンピュータシステム。
  3.  前記第1のセキュアエレメントは、
     前記第2の秘密鍵をさらに記憶し、
     前記第2の秘密鍵を使用して前記第3の秘密鍵に対応する第3の公開鍵証明書を生成し、
     前記車載コンピュータシステムは、前記第3の公開鍵証明書を前記データ配信装置へ送信する、
     請求項2に記載の車載コンピュータシステム。
  4.  第3の秘密鍵を記憶する第2のセキュアエレメントをさらに備え、
     前記第2のセキュアエレメントは、前記第3の秘密鍵を使用して、前記第1のデータの適用の結果を示す適用結果情報に対する第3の電子署名を生成し、
     前記車載コンピュータシステムは、
     前記第3の電子署名が付されている前記適用結果情報を、前記データ配信装置へ送信する、
     請求項1に記載の車載コンピュータシステム。
  5.  前記第2のセキュアエレメントは、
     前記第2の秘密鍵をさらに記憶し、
     前記第2の秘密鍵を使用して前記第3の秘密鍵に対応する第3の公開鍵証明書を生成し、
     前記車載コンピュータシステムは、前記第3の公開鍵証明書を前記データ配信装置へ送信する、
     請求項4に記載の車載コンピュータシステム。
  6.  前記第1のセキュアエレメントは、前記車両に備わる通信モジュールに備わる請求項1から5のいずれか1項に記載の車載コンピュータシステム。
  7.  前記第1のセキュアエレメントは、前記第1の車載コンピュータに備わる請求項1から5のいずれか1項に記載の車載コンピュータシステム。
  8.  前記第2のセキュアエレメントは、前記第1の車載コンピュータに備わる請求項4又は5のいずれか1項に記載の車載コンピュータシステム。
  9.  前記第2のセキュアエレメントは、前記車両に備わる通信モジュールに備わる請求項4又は5のいずれか1項に記載の車載コンピュータシステム。
  10.  前記第1の車載コンピュータは、前記暗号処理部によって検証が合格した前記第1の電子署名が付されていた前記第1のデータを前記第2の車載コンピュータへ送信し、
     前記第2の車載コンピュータは、前記第1の車載コンピュータから受信した前記第1のデータを自己に適用し、
     前記第1の車載コンピュータと前記第2の車載コンピュータとは、同じ共通鍵を記憶し、前記共通鍵を使用して前記第1のデータの適用の正当性の検証を行う、
     請求項1から9のいずれか1項に記載の車載コンピュータシステム。
  11.  車両に備わる車載コンピュータシステムにおいて、
     データ配信装置の公開鍵証明書である第1の公開鍵証明書を記憶する第1の車載コンピュータと、
     第2の車載コンピュータと、を備え、
     前記第1の車載コンピュータと前記第2の車載コンピュータとが前記車両に備わる通信ネットワークに接続され、
     前記第1の公開鍵証明書は、前記第1の車載コンピュータとデータを送受する車外の装置に備えられるセキュアエレメントによって、前記セキュアエレメントが記憶している「前記第1の公開鍵証明書の生成に使用される第2の秘密鍵に対応する第2の公開鍵証明書」を使用して検証が合格したものであり、
     前記第1の車載コンピュータは、前記データ配信装置から受信された第1のデータに付されている第1の電子署名を、前記第1の公開鍵証明書を使用して検証する暗号処理部を備え、
     前記第1の車載コンピュータ又は前記第2の車載コンピュータに対して、前記暗号処理部によって検証が合格した前記第1の電子署名が付されていた前記第1のデータを適用する、
     車載コンピュータシステム。
  12.  請求項1から11のいずれか1項に記載の車載コンピュータシステムを備える車両。
  13.  車両に備わる車載コンピュータシステムが、データ配信装置の公開鍵証明書である第1の公開鍵証明書を記憶する第1の車載コンピュータと、第2の車載コンピュータと、前記第1の公開鍵証明書の生成に使用される第2の秘密鍵に対応する第2の公開鍵証明書を記憶するセキュアエレメントと、を備え、
     前記第1の車載コンピュータと前記第2の車載コンピュータとが前記車両に備わる通信ネットワークに接続され、
     前記セキュアエレメントが、前記第2の公開鍵証明書を使用して前記第1の公開鍵証明書を検証する公開鍵証明書検証ステップと、
     前記第1の車載コンピュータが、前記データ配信装置から受信された第1のデータに付されている第1の電子署名を、前記セキュアエレメントによって検証が合格した前記第1の公開鍵証明書を使用して検証する電子署名検証ステップと、
     前記第1の車載コンピュータ又は前記第2の車載コンピュータに対して、前記電子署名検証ステップによって検証が合格した前記第1の電子署名が付されていた前記第1のデータを適用するデータ適用ステップと、
     を含む管理方法。
  14.  車両に備わる車載コンピュータシステムが、データ配信装置の公開鍵証明書である第1の公開鍵証明書を記憶する第1の車載コンピュータと、第2の車載コンピュータと、を備え、
     前記第1の車載コンピュータと前記第2の車載コンピュータとが前記車両に備わる通信ネットワークに接続され、
     前記第1の公開鍵証明書は、前記第1の車載コンピュータとデータを送受する車外の装置に備えられるセキュアエレメントによって、前記セキュアエレメントが記憶している「前記第1の公開鍵証明書の生成に使用される第2の秘密鍵に対応する第2の公開鍵証明書」を使用して検証が合格したものであり、
     前記第1の車載コンピュータが、前記データ配信装置から受信された第1のデータに付されている第1の電子署名を、前記第1の公開鍵証明書を使用して検証する電子署名検証ステップと、
     前記第1の車載コンピュータ又は前記第2の車載コンピュータに対して、前記電子署名検証ステップによって検証が合格した前記第1の電子署名が付されていた前記第1のデータを適用するデータ適用ステップと、
     を含む管理方法。
  15.  車両に備わる車載コンピュータシステムが、データ配信装置の公開鍵証明書である第1の公開鍵証明書を記憶する第1の車載コンピュータと、第2の車載コンピュータと、前記第1の公開鍵証明書の生成に使用された第2の秘密鍵に対応する第2の公開鍵証明書を記憶するセキュアエレメントと、を備え、
     前記第1の車載コンピュータと前記第2の車載コンピュータとが前記車両に備わる通信ネットワークに接続され、
     前記セキュアエレメントのコンピュータに、前記第2の公開鍵証明書を使用して前記第1の公開鍵証明書を検証する公開鍵証明書検証ステップを実行させ、
     前記第1の車載コンピュータに、前記データ配信装置から受信された第1のデータに付されている第1の電子署名を、前記セキュアエレメントによって検証が合格した前記第1の公開鍵証明書を使用して検証する電子署名検証ステップを実行させ、
     前記第1の車載コンピュータ又は前記第2の車載コンピュータに、前記電子署名検証ステップによって検証が合格した前記第1の電子署名が付されていた前記第1のデータを適用するデータ適用ステップを実行させる、
     ためのコンピュータプログラム。
  16.  車両に備わる車載コンピュータシステムが、データ配信装置の公開鍵証明書である第1の公開鍵証明書を記憶する第1の車載コンピュータと、第2の車載コンピュータと、を備え、
     前記第1の車載コンピュータと前記第2の車載コンピュータとが前記車両に備わる通信ネットワークに接続され、
     前記第1の公開鍵証明書は、前記第1の車載コンピュータとデータを送受する車外の装置に備えられるセキュアエレメントによって、前記セキュアエレメントが記憶している「前記第1の公開鍵証明書の生成に使用される第2の秘密鍵に対応する第2の公開鍵証明書」を使用して検証が合格したものであり、
     前記第1の車載コンピュータに、前記データ配信装置から受信された第1のデータに付されている第1の電子署名を、前記第1の公開鍵証明書を使用して検証する電子署名検証ステップを実行させ、
     前記第1の車載コンピュータ又は前記第2の車載コンピュータに、前記電子署名検証ステップによって検証が合格した前記第1の電子署名が付されていた前記第1のデータを適用するデータ適用ステップを実行させる、
     ためのコンピュータプログラム。
PCT/JP2016/088701 2015-12-28 2016-12-26 車載コンピュータシステム、車両、管理方法、及びコンピュータプログラム WO2017115751A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201680076510.4A CN108476137A (zh) 2015-12-28 2016-12-26 车载计算机系统、车辆、管理方法以及计算机程序
EP16881726.0A EP3399691B1 (en) 2015-12-28 2016-12-26 Onboard computer system, vehicle, management method, and computer program
US16/064,232 US10931459B2 (en) 2015-12-28 2016-12-26 Onboard computer system, vehicle, management method, and computer program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015-256649 2015-12-28
JP2015256649A JP6190443B2 (ja) 2015-12-28 2015-12-28 車載コンピュータシステム、車両、管理方法、及びコンピュータプログラム

Publications (1)

Publication Number Publication Date
WO2017115751A1 true WO2017115751A1 (ja) 2017-07-06

Family

ID=59224748

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/088701 WO2017115751A1 (ja) 2015-12-28 2016-12-26 車載コンピュータシステム、車両、管理方法、及びコンピュータプログラム

Country Status (5)

Country Link
US (1) US10931459B2 (ja)
EP (1) EP3399691B1 (ja)
JP (1) JP6190443B2 (ja)
CN (1) CN108476137A (ja)
WO (1) WO2017115751A1 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019044924A1 (ja) 2017-08-30 2019-03-07 株式会社ヨコオ アンテナ装置
JP7106845B2 (ja) * 2017-11-22 2022-07-27 凸版印刷株式会社 端末装置、及び検証方法
KR102025808B1 (ko) * 2017-11-24 2019-09-26 엘지전자 주식회사 차량용 제어 유닛의 업데이트 방법 및 차량
US10594666B2 (en) * 2017-12-19 2020-03-17 Micron Technology, Inc. Secure message including a vehicle private key
WO2020032121A1 (ja) 2018-08-10 2020-02-13 株式会社デンソー 車両用マスタ装置、更新データの検証方法及び更新データの検証プログラム
JP6952661B2 (ja) * 2018-08-30 2021-10-20 株式会社東芝 情報処理装置、通信機器、情報処理システム、情報処理方法、および情報処理プログラム
CN109495454A (zh) * 2018-10-26 2019-03-19 北京车和家信息技术有限公司 认证方法、装置、云端服务器及车辆
CN111385099A (zh) * 2018-12-29 2020-07-07 北京奇虎科技有限公司 车载智能硬件的安全认证方法及装置
JP7226047B2 (ja) * 2019-04-09 2023-02-21 株式会社オートネットワーク技術研究所 車載コンピュータ、コンピュータ実行方法及びコンピュータプログラム
DE102020212772A1 (de) * 2020-10-09 2022-04-14 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren und Vorrichtung zum Verwalten von kryptografischen Schlüsseln

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015076018A (ja) * 2013-10-10 2015-04-20 株式会社オートネットワーク技術研究所 通信システム及び照合方法
JP2016072675A (ja) * 2014-09-26 2016-05-09 Kddi株式会社 管理装置、車両、管理方法およびコンピュータプログラム

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7068147B2 (en) * 1999-12-07 2006-06-27 Denso Corporation Control information rewriting system
FI20020733A0 (fi) 2002-04-16 2002-04-16 Nokia Corp Menetelmä ja järjestelmä tiedonsiirtolaitteen käyttäjän autentikointiin
US7127611B2 (en) * 2002-06-28 2006-10-24 Motorola, Inc. Method and system for vehicle authentication of a component class
JP2005203882A (ja) 2004-01-13 2005-07-28 Denso Corp 通信システム及び鍵送信方法
CN100497050C (zh) 2004-01-26 2009-06-10 东芝解决方案株式会社 安全设备、车辆验证设备、方法和程序
JP4576997B2 (ja) * 2004-04-28 2010-11-10 株式会社デンソー 通信システム、鍵配信装置、暗号処理装置
US9356925B2 (en) * 2008-10-31 2016-05-31 GM Global Technology Operations LLC Apparatus and method for providing location based security for communication with a remote device
WO2011148744A1 (ja) * 2010-05-24 2011-12-01 ルネサスエレクトロニクス株式会社 通信システム、車載端末、路側装置
US9464905B2 (en) * 2010-06-25 2016-10-11 Toyota Motor Engineering & Manufacturing North America, Inc. Over-the-air vehicle systems updating and associate security protocols
WO2012101721A1 (ja) * 2011-01-25 2012-08-02 三洋電機株式会社 通信装置
JP5435022B2 (ja) * 2011-12-28 2014-03-05 株式会社デンソー 車載システム及び通信方法
JP2013138304A (ja) 2011-12-28 2013-07-11 Toyota Motor Corp セキュリティシステム及び鍵データの運用方法
JP5651615B2 (ja) 2012-02-16 2015-01-14 日立オートモティブシステムズ株式会社 車載ネットワークシステム
JP6093514B2 (ja) 2012-05-10 2017-03-08 株式会社東海理化電機製作所 電子キー登録方法
JP2014053675A (ja) 2012-09-05 2014-03-20 Sony Corp セキュリティチップ、プログラム、情報処理装置及び情報処理システム
JP2015065495A (ja) * 2013-09-24 2015-04-09 ルネサスエレクトロニクス株式会社 暗号鍵供給方法、半導体集積回路および暗号鍵管理装置
JP5949732B2 (ja) * 2013-11-27 2016-07-13 株式会社オートネットワーク技術研究所 プログラム更新システム及びプログラム更新方法
US9231936B1 (en) * 2014-02-12 2016-01-05 Symantec Corporation Control area network authentication
US9801044B2 (en) * 2014-05-13 2017-10-24 Samsung Electronics Co., Ltd. Apparatus and method for accessing wireless network
US9380044B2 (en) * 2014-09-10 2016-06-28 Cisco Technology, Inc. Supporting differentiated secure communications among heterogeneous electronic devices
JP6173411B2 (ja) * 2014-12-12 2017-08-02 Kddi株式会社 管理装置、車両、管理システム、管理方法、及びコンピュータプログラム
JP6595885B2 (ja) * 2015-01-20 2019-10-23 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 不正対処方法及び電子制御ユニット

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015076018A (ja) * 2013-10-10 2015-04-20 株式会社オートネットワーク技術研究所 通信システム及び照合方法
JP2016072675A (ja) * 2014-09-26 2016-05-09 Kddi株式会社 管理装置、車両、管理方法およびコンピュータプログラム

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
KEISUKE TAKEMORI ET AL.: "Key Managements for ECU and Code Authentications Using Tamper- resistant Secure Element", IEICE TECHNICAL REPORT, vol. 115, no. 365, 10 December 2015 (2015-12-10), pages 227 - 232, XP009511378 *
KEISUKE TAKEUCHI: "Protection of In-vehicle Control System Based on Secure Elements -Organization and Study of Elemental Technology", THE INSTITUTE OF ELECTRONICS, INFORMATION AND COMMUNICATION ENGINEERS, vol. 114, no. 508, March 2015 (2015-03-01), pages 73 - 78
See also references of EP3399691A4 *
TAKEMORI, KEISUKE: "Automotive Security -Using Secure Element", AUTOMOTIVE SECURITY -USING SECURE ELEMENT, 16 December 2015 (2015-12-16), JP, pages 1 - 27, XP009512603, Retrieved from the Internet <URL:https://www.ieee-jp.org/section/tokyo/chapter/ITS-38/pdf/20151107icves2015keynote3.pdf> [retrieved on 20170323] *

Also Published As

Publication number Publication date
US20190007217A1 (en) 2019-01-03
JP6190443B2 (ja) 2017-08-30
US10931459B2 (en) 2021-02-23
CN108476137A (zh) 2018-08-31
EP3399691B1 (en) 2021-06-23
EP3399691A4 (en) 2019-08-07
EP3399691A1 (en) 2018-11-07
JP2017120984A (ja) 2017-07-06

Similar Documents

Publication Publication Date Title
JP6190443B2 (ja) 車載コンピュータシステム、車両、管理方法、及びコンピュータプログラム
EP3319266B1 (en) Software distribution processing device, vehicle, software distribution processing method, and computer program
CN109314639B (zh) 管理系统、密钥生成装置、车载计算机、管理方法以及记录介质
US20200177398A1 (en) System, certification authority, vehicle-mounted computer, vehicle, public key certificate issuance method, and program
JP6178390B2 (ja) 管理装置、管理システム、車両、管理方法、及びコンピュータプログラム
JP6731887B2 (ja) 保守システム及び保守方法
WO2017022821A1 (ja) 管理装置、管理システム、鍵生成装置、鍵生成システム、鍵管理システム、車両、管理方法、鍵生成方法、及びコンピュータプログラム
EP3276876B1 (en) Management device, vehicle, management method, and computer program
JP6238939B2 (ja) 車載コンピュータシステム、車両、管理方法、及びコンピュータプログラム
CN109314644B (zh) 数据提供系统、数据保护装置、数据提供方法以及存储介质
CN109314645B (zh) 数据提供系统、数据保护装置、数据提供方法以及存储介质
JP6192673B2 (ja) 鍵管理システム、鍵管理方法およびコンピュータプログラム
JP6260068B1 (ja) 保守装置、保守方法、及びコンピュータプログラム
JP6440334B2 (ja) システム、車両及びソフトウェア配布処理方法
JP2018019415A (ja) システム、認証局、車載コンピュータ、公開鍵証明書発行方法、及びプログラム
JP2018006782A (ja) データ提供システム、データ提供装置、車載コンピュータ、データ提供方法、及びコンピュータプログラム
JP6476462B2 (ja) 車載コンピュータシステム、車両、管理方法、及びコンピュータプログラム
JP6554704B2 (ja) データ提供システム及びデータ提供方法
JP6672243B2 (ja) データ提供システム、データ提供装置、データ提供方法、及びデータ提供プログラム
JP6464466B2 (ja) 保守装置、保守方法、及びコンピュータプログラム
JP6132955B1 (ja) 検証システム、検証装置、検証方法、及びコンピュータプログラム
JP2017208731A (ja) 管理システム、管理装置、車載コンピュータ、管理方法、及びコンピュータプログラム
JP6354099B2 (ja) データ提供システム及びデータ提供方法
JP6519060B2 (ja) 管理装置、車両、管理方法、及びコンピュータプログラム
JP2018026866A (ja) 管理システム、データ提供装置、車載コンピュータ、管理方法、及びコンピュータプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16881726

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2016881726

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2016881726

Country of ref document: EP

Effective date: 20180730