JP2023543476A - Method and related devices for verifying software security of electronic devices in a vehicle - Google Patents

Method and related devices for verifying software security of electronic devices in a vehicle Download PDF

Info

Publication number
JP2023543476A
JP2023543476A JP2023519759A JP2023519759A JP2023543476A JP 2023543476 A JP2023543476 A JP 2023543476A JP 2023519759 A JP2023519759 A JP 2023519759A JP 2023519759 A JP2023519759 A JP 2023519759A JP 2023543476 A JP2023543476 A JP 2023543476A
Authority
JP
Japan
Prior art keywords
node
electronic devices
parameter
verification
tree
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2023519759A
Other languages
Japanese (ja)
Inventor
ギリシュ・シヴァリンガッパ・レヴァディガル
ジュオ・ウェイ
ジェン・リ
ミンミン・ジャン
ガンヤン・オウ
Original Assignee
ホアウェイ・テクノロジーズ・カンパニー・リミテッド
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 ホアウェイ・テクノロジーズ・カンパニー・リミテッド filed Critical ホアウェイ・テクノロジーズ・カンパニー・リミテッド
Publication of JP2023543476A publication Critical patent/JP2023543476A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • G06F21/565Static detection by checking file integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Abstract

本出願の実施形態は、車両内の電子デバイスのソフトウェアセキュリティを検証するための方法および関連するデバイスを提供する。方法は、N個の第1の検証パラメータを取得するステップと、N個の第1の検証パラメータに従って、第1のノードに対応する第1の検証パラメータを決定するステップであって、第1のノードがN個の電子デバイスの親ノードである、ステップと、トラステッドデバイスから、第1のノードに対応する第1のリファレンスパラメータを取得するステップと、第1のノードに対応する第1の検証パラメータおよび第1のノードに対応する第1のリファレンスパラメータに従って、N個の電子デバイスのソフトウェアセキュリティを検証するステップとを含む。技術的解決策は、車両の電子デバイス上で動作しているソフトウェアの完全性および信頼性を確保し得る。Embodiments of the present application provide methods and associated devices for verifying software security of electronic devices within a vehicle. The method includes the steps of: obtaining N first validation parameters; determining a first validation parameter corresponding to a first node according to the N first validation parameters; the node is a parent node of N electronic devices; obtaining a first reference parameter corresponding to the first node from the trusted device; and a first verification parameter corresponding to the first node. and verifying software security of the N electronic devices according to first reference parameters corresponding to the first node. Technical solutions may ensure the integrity and reliability of the software running on the vehicle's electronic devices.

Description

本発明の実施形態は、情報技術の分野に関し、より具体的には、車両内の電子デバイスのソフトウェアセキュリティを検証するための方法および関連するデバイスに関する。 Embodiments of the present invention relate to the field of information technology, and more particularly to a method and related device for verifying software security of electronic devices in a vehicle.

現代の自動車/車両は、数多くの電子デバイスを装備している。各電子デバイスは、他とは異なり、固有の動作を実行する。電子デバイス内のソフトウェアが動作を制御する。 Modern automobiles/vehicles are equipped with numerous electronic devices. Each electronic device is different from the others and performs unique operations. Software within the electronic device controls the operation.

数多くの電子デバイスを装備しているので、現代の車両はより脆弱である。例えば、攻撃者が、車両のアクセスを得るために、修正されたソフトウェアを電子デバイスにインストールし、機密情報を盗む可能性があり、悪意のあるソフトウェア(マルウェア)/ウイルスが車両の内部ネットワークに侵入し、車両内の電子デバイスを再プログラムする可能性がある。したがって、どのようにして車両内の電子デバイスのソフトウェアセキュリティを確保するのかは、対処される必要のある問題である。 Modern vehicles are more vulnerable because they are equipped with numerous electronic devices. For example, to gain access to a vehicle, an attacker may install modified software on an electronic device and steal sensitive information, allowing malicious software (malware)/viruses to enter the vehicle's internal network. and potentially reprogram electronic devices in the vehicle. Therefore, how to ensure software security of electronic devices in a vehicle is a problem that needs to be addressed.

本出願の実施形態は、車両内の電子デバイスのソフトウェアセキュリティを検証するための方法および関連するデバイスを提供する。技術的解決策は、車両の電子デバイス上で動作しているソフトウェアの完全性および信頼性を確保し得る。 Embodiments of the present application provide methods and associated devices for verifying software security of electronic devices within a vehicle. Technical solutions may ensure the integrity and reliability of the software running on the vehicle's electronic devices.

第1の態様によれば、本出願の一実施形態は、車両内の電子デバイスのソフトウェアバージョンを検証するための方法を提供し、方法は、N個の第1の検証パラメータを取得するステップであって、N個の第1の検証パラメータが車両内のN個の電子デバイスと一対一に対応し、N個の第1の検証パラメータのi番目の第1の検証パラメータが、N個の電子デバイスのi番目の電子デバイスのソフトウェアイメージに従って決定され、Nが1よりも大きい正の整数である、ステップと、N個の第1の検証パラメータに従って、第1のノードに対応する第1の検証パラメータを決定するステップであって、第1のノードがN個の電子デバイスの親ノードである、ステップと、トラステッドデバイスから、第1のノードに対応する第1のリファレンスパラメータを取得するステップと、第1のノードに対応する第1の検証パラメータおよび第1のノードに対応する第1のリファレンスパラメータに従って、N個の電子デバイスのソフトウェアセキュリティを検証するステップとを含む。 According to a first aspect, an embodiment of the present application provides a method for verifying a software version of an electronic device in a vehicle, the method comprising the step of obtaining N first verification parameters. The N first verification parameters have a one-to-one correspondence with the N electronic devices in the vehicle, and the i-th first verification parameter of the N first verification parameters corresponds to the N electronic devices in the vehicle. a first verification corresponding to the first node according to a step and N first verification parameters determined according to the software image of the i-th electronic device of the device, where N is a positive integer greater than 1; determining a parameter, the first node being a parent node of the N electronic devices; and obtaining a first reference parameter corresponding to the first node from the trusted device; verifying software security of the N electronic devices according to a first verification parameter corresponding to the first node and a first reference parameter corresponding to the first node.

方法は新規であり、サーバ上および車両上の両方で複数の電子デバイスソフトウェアのバージョンを保持する効率的なやり方を導入する。方法は、車両の各電子デバイス上で動作しているソフトウェアの完全性および信頼性を確保する。攻撃者による電子デバイスソフトウェアのいかなる攻撃および悪意のある変更も正確に識別されることができる。方法は、市販品に対して容易に実施されることができる。 The method is novel and introduces an efficient way to maintain multiple electronic device software versions both on the server and on the vehicle. The method ensures the integrity and reliability of software running on each electronic device of the vehicle. Any attacks and malicious modifications of electronic device software by an attacker can be accurately identified. The method can be easily implemented on commercially available products.

1つの可能な設計では、方法は、
N個の第2の検証パラメータを取得するステップであって、N個の第2の検証パラメータがN個の電子デバイスと一対一に対応し、N個の第2の検証パラメータのi番目の第2の検証パラメータが、N個の電子デバイスのi番目の電子デバイスのソフトウェアイメージに従って決定される、ステップをさらに含み、N個の第1の検証パラメータを取得するステップは、N個の第2の検証パラメータのi番目の第2の検証パラメータおよびN個の電子デバイスのi番目の電子デバイスの識別情報に従って、N個の第1の検証パラメータのi番目の第1の検証パラメータを決定するステップであって、i=1,…,Nである、ステップを含む。
In one possible design, the method is
obtaining N second verification parameters, the N second verification parameters having a one-to-one correspondence with the N electronic devices; 2 verification parameters are determined according to the software image of the i-th electronic device of the N electronic devices, and the step of obtaining the N first verification parameters is determined according to the software image of the i-th electronic device of the N electronic devices; determining the i-th first verification parameter of the N first verification parameters according to the i-th second verification parameter of the verification parameters and the identification information of the i-th electronic device of the N electronic devices; and i=1,...,N.

1つの可能な設計では、方法は、トラステッドデバイスからN個の第2のリファレンスパラメータを取得するステップであって、N個の第2のリファレンスパラメータがN個の電子デバイスと一対一に対応する、ステップと、N個の第2の検証パラメータのi番目の第2の検証パラメータおよびN個の第2のリファレンスパラメータのi番目の第2のリファレンスパラメータに従って、N個の電子デバイスのi番目の電子デバイスのソフトウェアセキュリティを検証するステップとをさらに含む。 In one possible design, the method includes obtaining N second reference parameters from the trusted device, the N second reference parameters having a one-to-one correspondence with the N electronic devices. and the i-th electron of the N electronic device according to the i-th second verification parameter of the N second verification parameters and the i-th second reference parameter of the N second reference parameters. and verifying software security of the device.

1つの可能な設計では、方法は、M個の電子デバイスに対応するツリーを決定するステップであって、ツリーがM個のノードを含み、M個のノードが車両内のM個の電子デバイスと一対一に対応し、M個の電子デバイスがN個の電子デバイスを含み、MがNよりも大きい正の整数である、ステップと、ツリー内のM個のノードの接続関係に基づいて、第1のノードがN個の電子デバイスの親ノードであると決定するステップとをさらに含む。 In one possible design, the method includes the step of determining a tree corresponding to M electronic devices, where the tree includes M nodes, and the M nodes correspond to M electronic devices in the vehicle. Based on the connection relationship between the step and the M nodes in the tree, there is a one-to-one correspondence, M electronic devices include N electronic devices, and M is a positive integer greater than N. and determining that the node is a parent node of the N electronic devices.

1つの可能な設計では、ツリーのM個のノードの接続関係と、車両内のM個の電子デバイスの接続関係とが同じである。 In one possible design, the connectivity of the M nodes of the tree is the same as the connectivity of the M electronic devices in the vehicle.

1つの可能な設計では、ツリーが、車両に対応する高さ平衡バイナリツリーである。 In one possible design, the tree is a height-balanced binary tree corresponding to a vehicle.

1つの可能な設計では、ツリーが完全平衡バイナリツリーであり、M個のノードがツリーの葉ノードであり、ツリーがK個の非葉ノードをさらに含み、Kが1よりも大きい正の整数である。 One possible design is that the tree is a fully balanced binary tree, where M nodes are leaf nodes of the tree, and where the tree further contains K non-leaf nodes, where K is a positive integer greater than 1. be.

1つの可能な設計では、方法は、第1のブロックを決定し、記憶するステップであって、第1のブロックがツリーに対応しており、第1のブロックが第1の構造情報を含み、第1の構造情報がツリーのノードの接続関係を示すために使用される、ステップと、第2のブロックを決定し、記憶するステップであって、第2のブロックが第2の構造情報を含み、第2の構造情報が、未修正の指示情報および修正された指示情報を含み、未修正の指示情報が、未更新のノードを示すために使用され、修正された指示情報が、更新されたノードの接続関係を示すために使用され、未更新のノードのそれぞれに対応する第1の検証パラメータおよび第2の検証パラメータは更新されておらず、更新されたノードのそれぞれに対応する第1の検証パラメータまたは第2の検証パラメータは更新されている、ステップとをさらに含む。 In one possible design, the method includes determining and storing a first block, the first block corresponding to a tree, the first block including first structural information, the first structural information is used to indicate a connectivity relationship of the nodes of the tree; and the step of determining and storing a second block, the second block including the second structural information. , the second structure information includes unmodified instruction information and modified instruction information, the unmodified instruction information is used to indicate an unupdated node, and the modified instruction information is used to indicate an updated node. The first validation parameter and the second validation parameter are used to indicate the connection relationship of the nodes, corresponding to each of the nodes that have not been updated, and the first validation parameter corresponding to each of the updated nodes. and the verification parameter or the second verification parameter is updated.

1つの可能な設計では、第1のブロックが、第1のブロックを記憶した時刻を示すタイムスタンプと、M個の電子デバイスに対応するソフトウェア情報とをさらに含み、第2のブロックが、第2のブロックを記憶した時刻を示すタイムスタンプと、更新された電子デバイスに対応するソフトウェア情報とをさらに含む。 In one possible design, the first block further includes a timestamp indicating the time the first block was stored and software information corresponding to the M electronic devices, and the second block further includes a timestamp indicating the time the first block was stored, and software information corresponding to the M electronic devices. and software information corresponding to the updated electronic device.

第2の態様によれば、本出願の一実施形態はコンピューティングデバイスを提供し、コンピューティングデバイスは、第1の態様の方法を実施する機能を有する。機能は、ハードウェアによって実施され得るか、または対応するソフトウェアを実行するハードウェアによって実施され得る。ソフトウェアのハードウェアは、機能に対応する1つまたは複数のモジュールを含む。 According to a second aspect, an embodiment of the present application provides a computing device, the computing device being capable of implementing the method of the first aspect. The functions may be implemented by hardware or by hardware running corresponding software. The software hardware includes one or more modules that correspond to the functionality.

第3の態様によれば、本出願の一実施形態は、命令を含むコンピュータ可読記憶媒体を提供する。コンピュータ上で命令が動作したとき、コンピュータは、第1の態様、または第1の態様のいずれかの可能な実施態様における方法を実行可能となる。 According to a third aspect, an embodiment of the present application provides a computer readable storage medium containing instructions. When the instructions are operated on the computer, the computer is enabled to carry out the method of the first aspect or any possible embodiment of the first aspect.

第4の態様によれば、プロセッサと、メモリと、通信インターフェースとを含むコンピューティングデバイスが提供される。プロセッサはメモリおよび通信インターフェースに接続される。メモリは命令を記憶するように構成され、プロセッサは命令を実行するように構成され、通信インターフェースはプロセッサの制御下で別のネットワーク要素と通信するように構成される。プロセッサがメモリに記憶された命令を実行したとき、プロセッサは、第1の態様または第1の態様の任意の可能な実装態様における方法を実行可能となる。 According to a fourth aspect, a computing device is provided that includes a processor, a memory, and a communication interface. The processor is connected to memory and a communication interface. The memory is configured to store instructions, the processor is configured to execute the instructions, and the communication interface is configured to communicate with another network element under control of the processor. When the processor executes the instructions stored in the memory, the processor is capable of performing the method of the first aspect or any possible implementation of the first aspect.

第5の態様によれば、チップシステムが提供され、チップシステムは、メモリとプロセッサとを含み、メモリはコンピュータプログラムを記憶するように構成され、プロセッサは、メモリからコンピュータプログラムを呼び出してコンピュータプログラムを動作させるように構成され、その結果、チップが配置されたサーバは、第1の態様または第1の態様の任意の可能な実装態様における方法を実行する。 According to a fifth aspect, a chip system is provided, the chip system including a memory and a processor, the memory configured to store a computer program, and the processor recalling a computer program from the memory to execute the computer program. The server configured to operate so that the chip is arranged performs the method of the first aspect or any possible implementation of the first aspect.

第6の態様によれば、コンピュータプログラム製品が提供され、コンピュータプログラム製品がサーバ上で動作したとき、サーバは、第1の態様または第1の態様の任意の可能な実装態様における方法を実行可能となる。 According to a sixth aspect, a computer program product is provided, and when the computer program product is operated on a server, the server is capable of executing the method of the first aspect or any possible implementation of the first aspect. becomes.

本出願の一実施形態に係る車両内の電子デバイスの概略ブロック図である。1 is a schematic block diagram of an electronic device in a vehicle according to an embodiment of the present application; FIG. 車両内の電子デバイスの概略構造図である。1 is a schematic structural diagram of an electronic device in a vehicle. 本出願の一実施形態に係るシステムを示す。1 shows a system according to an embodiment of the present application. VVTの一例を示す。An example of VVT is shown. GVTの一例を示す。An example of GVT is shown. 車両内の電子デバイスのソフトウェアセキュリティを検証するための方法の実施形態のフローチャートである。1 is a flowchart of an embodiment of a method for verifying software security of electronic devices in a vehicle. 車両200に対応するツリーを示す。A tree corresponding to vehicle 200 is shown. 車両200に対応する別のツリーを示す。Another tree corresponding to vehicle 200 is shown. 車両200に対応する別のツリーを示す。Another tree corresponding to vehicle 200 is shown. 車両200に対応するツリーを示す。A tree corresponding to vehicle 200 is shown. 車両内の電子デバイスのソフトウェアセキュリティを検証するための方法の別の実施形態のフローチャートである。5 is a flowchart of another embodiment of a method for verifying software security of electronic devices in a vehicle. 車両200に対応するマークルツリーを示す。A Merkle tree corresponding to vehicle 200 is shown. ソフトウェア更新後の車両200に対応するツリーを示す。A tree corresponding to vehicle 200 after software update is shown. VVTのブロックチェーンの一部を示す。VVTのブロックチェーン内の3つのブロックを示す。Part of the VVT blockchain is shown. Showing three blocks in the VVT blockchain. 車両内の電子デバイスのソフトウェアバージョンを検証するための方法の実施形態のフローチャートである。3 is a flowchart of an embodiment of a method for verifying software versions of electronic devices in a vehicle. 本出願の一実施形態に係るコンピューティングデバイス1600の概略ブロック図である。16 is a schematic block diagram of a computing device 1600 according to one embodiment of the present application. FIG. 本出願の一実施形態に係るコンピューティングデバイス1700の概略ブロック図である。17 is a schematic block diagram of a computing device 1700 according to an embodiment of the present application. FIG. ECUがHSM/TPMを有する場合にECUの第2の検証パラメータを取り出すための手順を示す。The procedure for retrieving the second verification parameter of the ECU when the ECU has HSM/TPM is shown. ECUがHSM/TPMを有しない場合にECUの第2の検証パラメータを取り出すための手順を示す。The procedure for retrieving the second verification parameter of the ECU when the ECU does not have an HSM/TPM is shown.

以下は、添付の図面を参照しつつ、本出願の技術的解決策を説明する。 The following describes the technical solution of the present application with reference to the accompanying drawings.

本出願に係る車両内の電子デバイスは、テレマティクスボックス(TBox)、セントラルコントローラ(CC)、ドメインコントローラ(DC)およびエレクトロニック・コントロール・ユニット(ECU)などを含み得る。 Electronic devices in a vehicle according to the present application may include a telematics box (TBox), a central controller (CC), a domain controller (DC), an electronic control unit (ECU), etc.

図1は、本出願の一実施形態に係る車両内の電子デバイスの概略ブロック図である。 FIG. 1 is a schematic block diagram of an electronic device in a vehicle according to an embodiment of the present application.

図1に示されるように、電子デバイス100は、トランシーバ101と、プロセッサ102と、メモリ103とを含み得る。 As shown in FIG. 1, electronic device 100 may include transceiver 101, processor 102, and memory 103.

トランシーバ1001は他の電子デバイスと通信するように構成され得る。トランシーバ1001は制御情報および/またはデータを他の電子デバイスに送信し得、トランシーバ1001は他の電子デバイスから制御情報および/またはデータを受信し得る。例えば、トランシーバ1001は、サーバから更新バンドルを受信し得、受信された更新バンドルに含まれる1つまたは複数のパッチを車両内の対応する電子デバイスに送信し得、対応する電子デバイスから更新フィードバック情報を受信し得る。 Transceiver 1001 may be configured to communicate with other electronic devices. Transceiver 1001 may transmit control information and/or data to other electronic devices, and transceiver 1001 may receive control information and/or data from other electronic devices. For example, transceiver 1001 may receive an update bundle from a server, transmit one or more patches included in the received update bundle to a corresponding electronic device in a vehicle, and receive update feedback information from the corresponding electronic device. can be received.

メモリ103は、プロセッサ102によって実行されるコード、命令などを記憶するように構成され得る。言い換えれば、電子デバイス100のソフトウェアに関連する命令およびデータがメモリ103に記憶される。 Memory 103 may be configured to store code, instructions, etc. that are executed by processor 102. In other words, instructions and data related to the software of electronic device 100 are stored in memory 103.

本出願は、ソフトウェアとファームウェアとを区別しない。本出願で言及されるソフトウェアは、ファームウェアを示すためにも使用され得る。 This application does not distinguish between software and firmware. Software referred to in this application may also be used to refer to firmware.

図2は、車両内の電子デバイスの概略構造図である。 FIG. 2 is a schematic structural diagram of an electronic device in a vehicle.

図2を参照して、車両200は、14個の電子デバイス、すなわち、TBox201と、CC210と、DC220と、DC230と、DC240と、ECU221と、ECU222と、ECU223と、ECU231と、ECU232と、ECU241と、ECU242と、ECU243と、ECU244とを含む。 Referring to FIG. 2, vehicle 200 includes 14 electronic devices, namely TBox 201, CC 210, DC 220, DC 230, DC 240, ECU 221, ECU 222, ECU 223, ECU 231, ECU 232, and ECU 241. , ECU242, ECU243, and ECU244.

TBox201は、CC210に繋がっている。DC220、DC230およびDC240は、CC210に繋がっている。ECU221、ECU222およびECU213は、DC220に繋がっており、ECU231およびECU232はDC230に繋がっており、ECU241、ECU242、ECU243およびECU244は、DC240に繋がっている。 TBox201 is connected to CC210. DC220, DC230 and DC240 are connected to CC210. ECU221, ECU222 and ECU213 are connected to DC220, ECU231 and ECU232 are connected to DC230, and ECU241, ECU242, ECU243 and ECU244 are connected to DC240.

TBox201は、無線通信モジュールを内蔵している。TBox201は、ワイヤレスフィデリティ(Wi-Fi)、ロング・ターム・エボリューション(LTE)、第5世代(5G)モバイルネットワークなどのような無線通信方法のいずれかを介して、Over-Top-Air(OTA)サーバと通信し得る。 TBox201 has a built-in wireless communication module. The TBox201 supports Over-Top-Air (OTA) via any of the wireless communication methods like Wireless Fidelity (Wi-Fi), Long Term Evolution (LTE), 5th Generation (5G) mobile networks, etc. May communicate with the server.

図3は、本出願の一実施形態に係るシステムを示している。 FIG. 3 shows a system according to one embodiment of the present application.

図3を参照すると、システムは、サーバ300と車両200とを含む。サーバ300は、車両200内の電子デバイスのソフトウェアセキュリティを検証するために使用されることができるサーバ、例えば、OTAサーバまたは他のタイプのサーバであり得る。 Referring to FIG. 3, the system includes a server 300 and a vehicle 200. Server 300 may be a server, such as an OTA server or other type of server, that may be used to verify the software security of electronic devices within vehicle 200.

車両200は複数の車両のうちの1つであることに留意されたい。これらの車両はすべてサーバ300に対応する。サーバ300は、これらの車両のうちの任意の1つの中の電子デバイスのソフトウェアセキュリティを検証するために使用され得る。記載を簡単にするために、図3は、1つの車両(すなわち、車両200)のみを示している。 Note that vehicle 200 is one of multiple vehicles. All of these vehicles correspond to the server 300. Server 300 may be used to verify the software security of electronic devices in any one of these vehicles. For simplicity of description, FIG. 3 shows only one vehicle (ie, vehicle 200).

本出願の実施形態は、図2および図3に関連して以下に説明され得る。 Embodiments of the present application may be described below in connection with FIGS. 2 and 3.

車両200およびサーバ300は、車両内の電子デバイスのソフトウェアを管理するためにグローバル・バージョン・ツリー(GVT)および車両バージョン・ツリー(VVT)を使用し得る。 Vehicle 200 and server 300 may use a global version tree (GVT) and a vehicle version tree (VVT) to manage software on electronic devices within the vehicle.

各車両は対応するVVTを有する。異なる車両に対応するVVTは異なり得る。車両200に対応するVVTは、車両200内の電子デバイスそれぞれのソフトウェア情報を含む。車両200およびサーバ300に記憶されたVVTは、車両200内の電子デバイスのそれぞれの現在のソフトウェア情報を含み得る。記載を簡単にするために、車両に対応するVVTはVVTVEHと称され、車両200に記憶されたVVTはVVTVEH_Vと称され、サーバに記憶されたVVTはVVTVEH_Sと称される。 Each vehicle has a corresponding VVT. The VVT corresponding to different vehicles may be different. The VVT corresponding to vehicle 200 includes software information for each electronic device within vehicle 200. The VVT stored on vehicle 200 and server 300 may include current software information for each of the electronic devices within vehicle 200. For ease of description, the VVT corresponding to the vehicle is referred to as VVT VEH , the VVT stored in vehicle 200 is referred to as VVT VEH_V , and the VVT stored in the server is referred to as VVT VEH_S .

車両200内の電子デバイスのソフトウェアが更新された後、VVTVEHと、VVTVEH_Vと、VVTVEH_Sとは同じである。 After the software of the electronic devices in vehicle 200 is updated, VVT VEH , VVT VEH_V , and VVT VEH_S are the same.

図4は、VVTの一例を示している。 Figure 4 shows an example of VVT.

図4に示されるVVTでは、車両200内の電子デバイスの1つのソフトウェア情報のフォーマットは、[MFR_ID,DEV_ID:Version]であり得、MFR_IDは、電子デバイスのタイプおよび製造業者を識別するためのIDであり、DEV_IDは、電子デバイスの一意のIDであり、Versionは、電子デバイスの現在のソフトウェアバージョンである。例えば、TBox201のソフトウェア情報は[MFR_AA,0x01:V4]であり、これは、TBox201のタイプおよびTBox201の製造業者を識別するためのIDがMFR_AAであり、TBox201のIDが0x01であり、TBox201の現在のソフトウェアバージョンがV4であることを意味する。 In the VVT shown in FIG. 4, the format of software information for one of the electronic devices in the vehicle 200 may be [MFR_ID, DEV_ID:Version], where MFR_ID is an ID for identifying the type and manufacturer of the electronic device. , DEV_ID is the unique ID of the electronic device, and Version is the current software version of the electronic device. For example, the software information of TBox201 is [MFR_AA, 0x01:V4], which means that the ID for identifying the type of TBox201 and the manufacturer of TBox201 is MFR_AA, the ID of TBox201 is 0x01, and the current means that the software version is V4.

各車種は対応するGVTを有する。例えば、BMW-series-2-2019Q1はGVT1に対応し、BMW-series-2-2016Q2はGVT2に対応する。異なる車種は、異なる電子デバイスを装備し得る。したがって、異なる車種に対応するGVTは異なる情報を含み得る。 Each vehicle type has a corresponding GVT. For example, BMW-series-2-2019Q1 corresponds to GVT1, and BMW-series-2-2016Q2 corresponds to GVT2. Different vehicle models may be equipped with different electronic devices. Therefore, GVTs corresponding to different vehicle types may include different information.

車両200に記憶されているGVTおよびサーバ300に記憶されているGTVは、車両200の車種に対応するGVTである。記載を簡単にするために、車両200の車種はターゲットモデルと称され、ターゲットモデルに対応するGVTはGVTTGTと称され、車両200に記憶されているGVTはGVTTGT_Vと称され、サーバに記憶されているGVTはGVTTGT_Sと称される。 The GVT stored in vehicle 200 and the GTV stored in server 300 are GVTs corresponding to the model of vehicle 200. For ease of description, the vehicle type of vehicle 200 is referred to as the target model, the GVT corresponding to the target model is referred to as GVT TGT , and the GVT stored in vehicle 200 is referred to as GVT TGT_V , and the GVT stored in the server is referred to as GVT TGT_V. The GVT that is used is called GVT TGT_S .

車両200内の電子デバイスのソフトウェアが更新された後、GVTTGTと、GVTTGT_Vと、GVTTGT_Sとは同じである。 After the software of the electronic devices in vehicle 200 is updated, GVT TGT , GVT TGT_V , and GVT TGT_S are the same.

図5は、GVTの一例を示している。 Figure 5 shows an example of GVT.

図5に示されるGVTでは、ターゲットモデル内の電子デバイスの1つのソフトウェア情報のフォーマットは、[MFR_ID,:Version]であり得、MFR_IDは、電子デバイスのタイプおよび製造業者を識別するためのIDであり、Versionは、電子デバイスの現在のソフトウェアバージョンである。例えば、TBox201のソフトウェア情報は[MFR_AA,:V4]であり、これは、TBox201のタイプおよびTBox201の製造業者を識別するためのIDがMFR_AAであり、TBox201の現在のソフトウェアバージョンがV4であることを意味する。 In the GVT shown in Figure 5, the format of software information for one of the electronic devices in the target model can be [MFR_ID,:Version], where MFR_ID is an ID to identify the type and manufacturer of the electronic device. Yes, Version is the current software version of the electronic device. For example, the software information of TBox201 is [MFR_AA,:V4], which means that the ID for identifying the type of TBox201 and the manufacturer of TBox201 is MFR_AA, and the current software version of TBox201 is V4. means.

理想的には、VVTVEH、VVTVEH_V、VVTVEH_S、GVTTGT、GVTTGT_VおよびGVTTGT_S内の電子デバイスの現在のソフトウェアバージョンは同じである。 Ideally, the current software versions of the electronic devices in VVT VEH , VVT VEH_V , VVT VEH_S , GVT TGT , GVT TGT_V and GVT TGT_S are the same.

図6は、車両内の電子デバイスのソフトウェアセキュリティを検証するための方法の実施形態のフローチャートである。 FIG. 6 is a flowchart of an embodiment of a method for verifying software security of electronic devices in a vehicle.

いくつかの実施形態では、図6に示される方法は、車両または車両のコンポーネント(例えば、チップまたは回路)によって実行され得る。 In some embodiments, the method shown in FIG. 6 may be performed by a vehicle or a component of a vehicle (eg, a chip or circuit).

いくつかの実施形態では、図6に示される方法は、車両に対応するサーバまたはサーバのコンポーネント(例えば、チップまたは回路)によって実行され得る。 In some embodiments, the method illustrated in FIG. 6 may be performed by a server or a component of a server (eg, a chip or circuit) corresponding to a vehicle.

図3が一例にとられる。いくつかの実施形態では、車両200または車両200のコンポーネントは、図6に示される方法を実施し得る。いくつかの実施形態では、サーバ300またはサーバ300のコンポーネントは、図6に示される方法を実施し得る。 Figure 3 is taken as an example. In some embodiments, vehicle 200 or a component of vehicle 200 may implement the method shown in FIG. 6. In some embodiments, server 300 or a component of server 300 may implement the method illustrated in FIG. 6.

いくつかの実施形態では、図6に示される異なるステップは、車両および/または車両に対応するサーバの、異なるコンポーネントによって実施され得る。 In some embodiments, the different steps shown in FIG. 6 may be performed by different components of the vehicle and/or the server corresponding to the vehicle.

例えば、車両200の電子デバイスのそれぞれは、それ自体の第2の検証パラメータを決定し得、第2の検証パラメータを車両200のチップに送信し得、チップは、第1の検証パラメータを決定するため、および比較ステップを実行するために使用される。 For example, each of the electronic devices of vehicle 200 may determine its own second verification parameter and transmit the second verification parameter to a chip of vehicle 200, which determines the first verification parameter. and to perform the comparison step.

別の例として、車両200の電子デバイスのそれぞれは、それ自体の第2の検証パラメータを決定し得、第2の検証パラメータをTBox201に送信し得る。TBox201は、第2の検証パラメータをサーバ300に送信する。サーバ300は、第1の検証パラメータを決定し、比較ステップを実行する。 As another example, each of the electronic devices of vehicle 200 may determine its own second verification parameter and send the second verification parameter to TBox 201. TBox 201 sends the second verification parameter to server 300. Server 300 determines the first verification parameter and performs the comparison step.

別の例として、車両200の電子デバイスのそれぞれは、それ自体の第2の検証パラメータを決定し得、第2の検証パラメータを車両200のチップに送信し得、チップは、第1の検証パラメータを決定するために使用される。チップは、第1の検証パラメータおよび第2の検証パラメータを車両200のトランスミッタに送信し得る。トランスミッタは、第1の検証パラメータおよび第2の検証パラメータをサーバ300に送信し得る。サーバ300は、受信された検証パラメータに従って比較ステップを実行する。 As another example, each of the electronic devices of vehicle 200 may determine its own second verification parameter and transmit the second verification parameter to a chip of vehicle 200, and the chip may determine the first verification parameter. used to determine. The chip may transmit the first verification parameter and the second verification parameter to a transmitter of vehicle 200. The transmitter may send the first verification parameter and the second verification parameter to the server 300. Server 300 performs the comparison step according to the received validation parameters.

図6に示される方法は、図2および図3に関連して以下に説明され得る。加えて、図6に関する以下の説明では、方法は車両200によって実行されると仮定する。 The method shown in FIG. 6 may be described below in connection with FIGS. 2 and 3. Additionally, the following description with respect to FIG. 6 assumes that the method is performed by vehicle 200.

601:車両200が14個の第1のソフトウェアパラメータを取得する。 601: Vehicle 200 obtains 14 first software parameters.

14個の第1のソフトウェアパラメータは、車両200の14個の電子デバイス(すなわち、図2に示される電子デバイス)と一対一に対応する。記載を簡単にするために、TBox201に対応する第1のソフトウェアパラメータはFst201と称され、CC210に対応する第1のソフトウェアパラメータはFst210と称され、DC220に対応する第1のソフトウェアパラメータはFst220と称される、などである。 The 14 first software parameters have a one-to-one correspondence with the 14 electronic devices of vehicle 200 (ie, the electronic devices shown in FIG. 2). For ease of description, the first software parameter corresponding to TBox201 is referred to as F st201 , the first software parameter corresponding to CC210 is referred to as F st210 , and the first software parameter corresponding to DC220 is referred to as F st201. It is called F st220 , etc.

いくつかの実施形態では、電子デバイスに対応する第1のソフトウェアパラメータは、電子デバイスのソフトウェアイメージであり得る。電子デバイスのソフトウェアイメージは、電子デバイスのソフトウェア情報を反映し得る。異なるソフトウェアのソフトウェアイメージは異なり、同じソフトウェアの異なるバージョンのソフトウェアイメージも異なる。例えば、TBox201のソフトウェアイメージは、CC210のソフトウェアイメージと異なる。電子デバイスのソフトウェアが更新されている場合、電子のソフトウェアイメージはそれに応じて変更されることになる。電子デバイスのソフトウェアにマルウェアが埋め込まれている場合、電子デバイスのソフトウェアイメージは、マルウェアが含まれていない電子デバイスのソフトウェアイメージと異なることになる。 In some embodiments, the first software parameter corresponding to the electronic device may be a software image of the electronic device. A software image of an electronic device may reflect software information of the electronic device. The software images of different software are different, and the software images of different versions of the same software are also different. For example, the software image for TBox201 is different from the software image for CC210. If the electronic device's software is updated, the electronic software image will change accordingly. If malware is embedded in the software of an electronic device, the software image of the electronic device will be different from the software image of an electronic device that does not contain malware.

いくつかの実施形態では、電子デバイスに対応する第1のソフトウェアパラメータは、電子デバイスのソフトウェアを更新するためのパッチであり得る。 In some embodiments, the first software parameter corresponding to the electronic device may be a patch for updating software of the electronic device.

いくつかの実施形態では、電子デバイスに対応する第1のソフトウェアパラメータは、電子デバイスのソフトウェアのキーコードであり得る。 In some embodiments, the first software parameter corresponding to the electronic device may be a software key code for the electronic device.

いくつかの実施形態では、電子デバイスに対応する第1のソフトウェアパラメータは、電子デバイスのソフトウェアイメージ、電子デバイスのMFR_IDおよびDEV_IDを含み得る。 In some embodiments, the first software parameter corresponding to the electronic device may include a software image of the electronic device, a MFR_ID and a DEV_ID of the electronic device.

いくつかの実施形態では、電子デバイスに対応する第1のソフトウェアパラメータは、電子デバイスに対応する第2の検証パラメータであり得る。例えば、電子デバイスは、ハードウェア・セキュリティ・モジュール(HSM)またはトラステッド・プラットフォーム・モジュール(TPM)を含み得る。HSM/TPMが利用可能である場合、HSM/TPMは、電子デバイスの、ソフトウェアイメージ/ソフトウェアを更新するためのパッチ/ソフトウェアのキーコード、に従って、電子デバイスの第2の検証パラメータを決定し得る。HSM/TPMが利用可能でないか、または電子デバイスがHSM/TPMを含まない場合、電子デバイスは、ソフトウェアイメージ/ソフトウェアを更新するためのパッチ/ソフトウェアのキーコードを、トラスト電子デバイスに送信し得る。トラスト電子デバイスは、受信されたソフトウェアイメージ/パッチ/キーコードに従って電子デバイスの第2の検証パラメータを決定し得る。トラスト電子デバイスは、第2の検証パラメータを決定することができない電子デバイスの親/先祖電子デバイスであり得る。例えば、ECU221のHSM/TPMが利用可能でない場合、ECU221のトラストノードはDC220またはCC210であり得る。第2の検証パラメータを決定するステップの詳細は後述される。 In some embodiments, the first software parameter corresponding to the electronic device may be a second verification parameter corresponding to the electronic device. For example, an electronic device may include a hardware security module (HSM) or a trusted platform module (TPM). If the HSM/TPM is available, the HSM/TPM may determine a second verification parameter of the electronic device according to the electronic device's software image/patch for updating the software/software key code. If an HSM/TPM is not available or the electronic device does not include an HSM/TPM, the electronic device may send a patch/software key code to update the software image/software to the trusted electronic device. The trust electronic device may determine a second verification parameter of the electronic device according to the received software image/patch/key code. The trusted electronic device may be a parent/ancestor electronic device of the electronic device that is unable to determine the second verification parameter. For example, if ECU 221's HSM/TPM is not available, ECU 221's trust node may be DC 220 or CC 210. Details of the step of determining the second verification parameter will be described later.

図18は、ECUがHSM/TPMを有する場合にECUの第2の検証パラメータを取り出すための手順を示している。 FIG. 18 shows a procedure for retrieving the second verification parameter of an ECU when the ECU has an HSM/TPM.

図19は、ECUがHSM/TPMを有しない場合にECUの第2の検証パラメータを取り出すための手順を示している。 FIG. 19 shows a procedure for retrieving the second verification parameter of an ECU when the ECU does not have an HSM/TPM.

いくつかの実施形態では、14個の第1のソフトウェアパラメータのすべてが、ソフトウェアイメージまたはパッチまたはキーコードであり得る。 In some embodiments, all fourteen first software parameters may be software images or patches or key codes.

いくつかの実施形態では、14個の第1のソフトウェアパラメータのすべてが第2の検証パラメータであり得る。 In some embodiments, all 14 first software parameters may be second validation parameters.

いくつかの他の実施形態では、14個の電子デバイスの一部が第2の検証パラメータを決定することができず、14個の電子デバイスの残りが第2の検証パラメータを決定することができるので、14個の第1のソフトウェアパラメータの一部はソフトウェアイメージまたはパッチまたはキーコードであり得、14個のソフトウェアパラメータの残りは第2の検証パラメータであり得る。 In some other embodiments, some of the 14 electronic devices may not be able to determine the second verification parameter and the remainder of the 14 electronic devices may be able to determine the second verification parameter. So, some of the 14 first software parameters can be software images or patches or key codes, and the rest of the 14 software parameters can be second verification parameters.

説明を簡単にするために、以下の実施形態では、14個の第1のソフトウェアパラメータのすべてがソフトウェアイメージであると仮定する。 For ease of explanation, the following embodiment assumes that all 14 first software parameters are software images.

602:車両200が14個の電子デバイスに対応するツリーを決定する。 602: Vehicle 200 determines a tree corresponding to 14 electronic devices.

いくつかの実施形態では、ツリーは14個のノードを含み得る。14個のノードは、車両200内の14個の電子デバイスと一対一に対応する。 In some embodiments, the tree may include 14 nodes. The 14 nodes correspond one-to-one with the 14 electronic devices within vehicle 200.

いくつかの実施形態では、ツリー内の14個のノード間の接続関係は、車両内の14個の電子デバイス間の接続関係と同じであり得る。記載を簡単にするために、TBox201に対応するノードはノード201と称され、CC210に対応するノードはノード210と称され、DC220に対応するノードはノード220と称される、などである。 In some embodiments, the connectivity between the 14 nodes in the tree may be the same as the connectivity between the 14 electronic devices within the vehicle. For ease of description, the node corresponding to TBox 201 is referred to as node 201, the node corresponding to CC 210 is referred to as node 210, the node corresponding to DC 220 is referred to as node 220, and so on.

図7は、車両200に対応するツリーを示している。 FIG. 7 shows a tree corresponding to vehicle 200.

図7を参照すると、ツリー700は14個のノードを含む。図7に示されるノードの接続関係は、図2に示される電子デバイスの接続関係と同じである。例えば、ツリー700のレベル0は、1つのノード、すなわちノード201を含む。ノード201は、ノード210に繋がっている。図2を参照すると、ノード201に対応するTBox201は、ノード210に対応するCC210に繋がっている。 Referring to FIG. 7, tree 700 includes 14 nodes. The connection relationship of the nodes shown in FIG. 7 is the same as the connection relationship of the electronic device shown in FIG. 2. For example, level 0 of tree 700 includes one node, node 201. Node 201 is connected to node 210. Referring to FIG. 2, TBox 201 corresponding to node 201 is connected to CC 210 corresponding to node 210.

いくつかの実施形態では、ツリー内の14個のノード間の接続関係は、車両200内の14個の電子デバイス間の接続関係と異なり得る。例えば、車両200に対応するツリーは、高さ平衡バイナリツリー(Height Balanced Binary Tree、HBBT)、完全平衡バイナリツリー(マークルツリー)などであり得る。 In some embodiments, the connectivity relationships between the 14 nodes in the tree may differ from the connectivity relationships between the 14 electronic devices within vehicle 200. For example, the tree corresponding to vehicle 200 may be a height balanced binary tree (HBBT), a fully balanced binary tree (merkle tree), etc.

図8は、車両200に対応する別のツリーを示している。 FIG. 8 shows another tree corresponding to vehicle 200.

図8は、HBBTを示している。図8に示されるように、ツリー800の各内部ノードは、高々2つの子ノードを有する。例えば、ノード210は2つの子ノード、すなわち、ノード230およびノード240を有し、ノード221は1つの子ノード、すなわち、ノード223を有する。 Figure 8 shows the HBBT. As shown in FIG. 8, each internal node of tree 800 has at most two child nodes. For example, node 210 has two child nodes, node 230 and node 240, and node 221 has one child node, node 223.

図9は、車両200に対応する別のツリーを示している。 FIG. 9 shows another tree corresponding to vehicle 200.

図9は、マークルツリーを示している。図9に示されるように、ツリー900の各内部ノードは2つの子ノードを有する。例えば、ノード210は2つの子ノード、すなわち、ノード230およびノード240を有する。14個の電子デバイスに対応する14個のノード以外に、ツリー900はダミーノード、すなわちNodeDをさらに含む。ダミーノードのソフトウェアパラメータは、予め設定された値、または予め設定されたノード、例えばノード244の、ソフトウェアパラメータと同じである。 Figure 9 shows a Merkle tree. As shown in FIG. 9, each internal node of tree 900 has two child nodes. For example, node 210 has two child nodes: node 230 and node 240. Besides the 14 nodes corresponding to the 14 electronic devices, the tree 900 further includes a dummy node, Node D. The software parameters of the dummy node are preset values or the same as the software parameters of a preset node, such as node 244.

603:車両200が、14個の第1のソフトウェアパラメータに従って14個の第2の検証パラメータをそれぞれ決定する。 603: The vehicle 200 determines each of the 14 second verification parameters according to the 14 first software parameters.

電子デバイスに対応する第2の検証パラメータは、電子デバイスの第1のソフトウェアパラメータに従って決定される。記載を簡単にするために、TBox201に対応する第2の検証パラメータはHi_201と称され、CC210に対応する第2の検証パラメータはHi_210と称され、DC220に対応する第2の検証パラメータはHi_220と称される、などである。 A second verification parameter corresponding to the electronic device is determined according to a first software parameter of the electronic device. For ease of description, the second validation parameter corresponding to TBox201 is referred to as H i_201 , the second validation parameter corresponding to CC210 is referred to as H i_210 , and the second validation parameter corresponding to DC220 is It is called H i_220 , and so on.

Hi_201は、Fst201に従って決定される。言い換えれば、TBox201に対応する第2の検証パラメータは、TBox201の第1のソフトウェアパラメータに従って決定される。同様に、Hi_210はFst210に従って決定され、Hi_220はFst220等に従って決定される、などである。 H i_201 is determined according to F st201 . In other words, the second verification parameter corresponding to TBox201 is determined according to the first software parameter of TBox201. Similarly, H i_210 is determined according to F st210 , H i_220 is determined according to F st220 , and so on.

いくつかの実施形態では、第2の検証パラメータは、以下の式に従って決定され得る。
Hi_X=H(FstX) (式1.1)
In some embodiments, the second validation parameter may be determined according to the following formula:
H i_X = H(F stX ) (Formula 1.1)

Hi_Xは電子デバイスXの第2の検証パラメータであり、FstXは電子デバイスXの第1のソフトウェアパラメータである。H(FstX)はFstXに対するハッシュ計算である。例えば、車両200は、ハッシュ値を取得するために、TBox201の第1のソフトウェアパラメータに対してハッシュ計算を実行し得る。ハッシュ値は、TBox201に対応する第2の検証パラメータ、すなわちHi_201である。 H i_X is the second verification parameter of electronic device X, and F stX is the first software parameter of electronic device X. H(F stX ) is a hash calculation for F stX . For example, vehicle 200 may perform a hash calculation on the first software parameter of TBox 201 to obtain a hash value. The hash value is the second verification parameter corresponding to TBox201, namely H i_201 .

いくつかの実施形態では、第2の検証パラメータは、以下の式に従って決定され得る。
Hi_X=H(FstX,REFparX) (式1.2)
In some embodiments, the second validation parameter may be determined according to the following formula:
H i_X = H (F stX , REF parX ) (Equation 1.2)

Hi_Xは電子デバイスXの第2の検証パラメータであり、FstXは電子デバイスXの第1のソフトウェアパラメータである。REFparXは電子デバイスXに関するリファレンスパラメータである。REFparXは電子デバイスXに対応する1つまたは複数のパラメータを含み得る。例えば、REFparXは、以下、すなわち、現在時刻を示すタイムスタンプ、電子デバイスXのソフトウェアインストール時刻を示すタイムスタンプ、車両200のGVTもしくはVVTの更新または電子デバイスに対応するツリーの構築、を完了した時刻を示すタイムスタンプ、電子デバイスXのソフトウェアバージョン、電子デバイスXのMFR_IDまたはDEV_IDなど、のうちのいずれか1つまたは複数を含み得る。H(FstX,REFparX)は、FstXおよびREFparXに対するハッシュ計算である。例えば、車両200は、ハッシュ値を取得するために、TBox201の第1のソフトウェアパラメータ、およびTBox201に対応する1つまたは複数のパラメータに対してハッシュ計算を実行し得る。ハッシュ値は、TBox201に対応する第2の検証パラメータ、すなわちHi_201である。 H i_X is the second verification parameter of electronic device X, and F stX is the first software parameter of electronic device X. REF parX is a reference parameter regarding electronic device X. REF parX may include one or more parameters corresponding to electronic device X. For example, REF parX has completed the following: a timestamp indicating the current time, a timestamp indicating the software installation time of electronic device X, updating the GVT or VVT of vehicle 200 or building a tree corresponding to the electronic device. It may include any one or more of a timestamp indicating time, a software version of electronic device X, MFR_ID or DEV_ID of electronic device X, and the like. H(F stX , REF parX ) is a hash calculation for F stX and REF parX . For example, vehicle 200 may perform a hash calculation on the first software parameter of TBox 201 and one or more parameters corresponding to TBox 201 to obtain a hash value. The hash value is the second verification parameter corresponding to TBox201, namely H i_201 .

本出願の実施形態に係るハッシュ計算のアルゴリズムは、セキュア・ハッシュ・アルゴリズム(SHA)、SHA2アルゴリズム、メッセージダイジェスト5(MD5)アルゴリズムなどであり得、それは本発明の実施形態では特に限定されない。 The hash calculation algorithm according to the embodiment of the present application may be a secure hash algorithm (SHA), SHA2 algorithm, message digest 5 (MD5) algorithm, etc., and is not particularly limited in the embodiment of the present invention.

604:ツリー内のノードの接続関係に基づいて、車両200が、14個の第2の検証パラメータに従って少なくとも1つの第1の検証パラメータを決定し得る。 604: Based on the connectivity of the nodes in the tree, the vehicle 200 may determine at least one first verification parameter according to the fourteen second verification parameters.

第1の検証パラメータの数は、ツリー内のノードの数と同じであり得る。 The number of first validation parameters may be the same as the number of nodes in the tree.

例えば、図7または図8に示されるツリーについては、車両は14個の第1の検証パラメータを決定し得る。図9に示されるツリーについては、車両は15個の第1の検証パラメータを決定し得る。 For example, for the tree shown in FIG. 7 or FIG. 8, the vehicle may determine 14 first verification parameters. For the tree shown in FIG. 9, the vehicle may determine 15 first verification parameters.

どのようにして第1の検証パラメータを決定するのかに関する詳細は、図7に関連して以下に説明され得る。記載を簡単にするために、対応する電子デバイスを表すためにノードが使用される。例えば、ノード210の第1/第2の検証パラメータは、CC210に対応する第1/第2の検証パラメータを表す。 Details regarding how to determine the first verification parameter may be described below in connection with FIG. 7. For ease of description, nodes are used to represent corresponding electronic devices. For example, the first/second verification parameters of node 210 represent the first/second verification parameters corresponding to CC 210.

本発明の実施形態の理解を容易にするために、本発明の実施形態で使用されるツリーに関する基本概念が以下に説明される。 To facilitate understanding of embodiments of the present invention, basic concepts regarding trees used in embodiments of the present invention are explained below.

1:ルートノード
ルートノードは、ツリーの区別された最初のまたは基本のアイテムであり、親を持たない唯一のアイテムである。例えば、ノード201は、ツリー700のルートノードである。
1: Root Node The root node is the first distinct or basic item in the tree, and the only item without a parent. For example, node 201 is the root node of tree 700.

2:葉ノード
葉ノードは、外部ノードまたは終端ノードとも称され得る。葉ノードは、いかなる子も有しない、ツリー内のノードである。例えば、ノード221~223、231~232、および241~244は、ツリー700の葉ノードである。
2: Leaf Nodes Leaf nodes may also be referred to as external nodes or terminal nodes. A leaf node is a node in the tree that does not have any children. For example, nodes 221-223, 231-232, and 241-244 are leaf nodes of tree 700.

3:内部ノード
内部ノードは、非終端ノードまたは非葉ノードとも称され得る。内部ノードは、1つまたは複数の子ノードを有する、ツリーのノード、言い換えれば、葉ではない、ツリーのノードである。例えば、ノード210、220、230および240は、ツリー700の内部ノードである。
3: Internal Nodes Internal nodes may also be referred to as non-terminal nodes or non-leaf nodes. An internal node is a node of a tree that has one or more child nodes, in other words, a node of a tree that is not a leaf. For example, nodes 210, 220, 230, and 240 are internal nodes of tree 700.

4:親ノード
ノードへ上向きに1つのエッジを有する、ルートノード以外の任意のノードは、親ノードである。例えば、ツリー700において、ノード220はノード221、222および223の親ノードであり、ノード210はノード220、230および240の親ノードである。
4: Parent Node Any node other than the root node that has one edge upward to the node is a parent node. For example, in tree 700, node 220 is the parent node of nodes 221, 222, and 223, and node 210 is the parent node of nodes 220, 230, and 240.

5:子ノード
それのエッジによって下向きに接続された、所与のノードの下のノードは、それの子ノードと呼ばれる。例えば、ツリー700において、ノード221、222および223はノード220の子ノードであり、ノード220、230および240はノード210の子ノードである。
5: Child Nodes Nodes below a given node, connected downward by its edges, are called its child nodes. For example, in tree 700, nodes 221, 222, and 223 are child nodes of node 220, and nodes 220, 230, and 240 are child nodes of node 210.

6:子孫ノード
子孫ノードは、何レベル下であっても、階層ツリーの下に接続されている任意の要素を指す。子孫は、子供、孫、ひ孫などである。例えば、ツリー700において、ノード222は、ノード220、210および201の子孫ノードであり、ノード230は、ノード210および201の子孫ノードである。
6: Descendant Node A descendant node refers to any element connected down the hierarchical tree, no matter how many levels down. Descendants include children, grandchildren, great-grandchildren, etc. For example, in tree 700, node 222 is a descendant node of nodes 220, 210, and 201, and node 230 is a descendant node of nodes 210 and 201.

7:先祖ノード
先祖は、何レベル上であっても、階層ツリーにおいてさらに上に接続されている任意の要素である。先祖は、親、祖父母、曾祖父母などである。例えば、ツリー700において、ノード220は、ノード221、222および223の先祖ノードである。ノード210は、ノード221、222および223の先祖ノードである。
7: Ancestor Node An ancestor is any element that is connected further up in the hierarchical tree, no matter how many levels up. Ancestors include parents, grandparents, great-grandparents, etc. For example, in tree 700, node 220 is an ancestor node of nodes 221, 222, and 223. Node 210 is an ancestor node of nodes 221, 222 and 223.

8:レベル
ノードのレベルは、1+そのノードとルートノードとの間の接続の数によって定義される。例えば、ルートノードのレベルは0であり、ノード210のレベルは1であり、ノード220のレベルは2である。
8: Level The level of a node is defined by 1 + the number of connections between that node and the root node. For example, the root node has level 0, node 210 has level 1, and node 220 has level 2.

ツリー700の葉ノードの第1の検証パラメータは、葉ノードの第2の検証パラメータおよび葉ノードの識別情報に従って決定される。 A first validation parameter of a leaf node of tree 700 is determined according to a second validation parameter of the leaf node and an identity of the leaf node.

葉ノードの第1の検証パラメータは、以下の式に従って決定され得る。
Hn_X=H(Hi_X,IDinfoX) (式1.3)
The first validation parameter of a leaf node may be determined according to the following formula:
H n_X = H (H i_X , ID infoX ) (Formula 1.3)

Hn_Xは、電子デバイスX(葉ノードX)の第1の検証パラメータである。Hi_Xは、電子デバイスX(葉ノードX)の第2の検証パラメータであり、IDinfoXは、電子デバイスX(葉ノードX)の識別情報である。H(Hi_X,IDinfoX)は、Hi_X、IDinfoXに対するハッシュ計算である。例えば、車両200は、ハッシュ値を取得するために、ノード221の第2のパラメータおよびノード221の識別情報に対してハッシュ計算を実行し得る。ハッシュ値は、ノード221(すなわち、ECU221)に対応する第1の検証パラメータ、すなわちHn_221である。 H n_X is the first verification parameter of electronic device X (leaf node X). H i_X is the second verification parameter of electronic device X (leaf node X), and ID infoX is identification information of electronic device X (leaf node X). H (H i_X , ID infoX ) is a hash calculation for H i_X , ID infoX . For example, vehicle 200 may perform a hash calculation on the second parameter of node 221 and the identification information of node 221 to obtain a hash value. The hash value is the first verification parameter, ie, H n_221 , corresponding to node 221 (ie, ECU 221).

内部ノードについては、第1の検証パラメータは、内部ノードの子ノードの第1の検証パラメータ、内部ノードの第2の検証パラメータ、および内部ノードの識別情報に従って決定され得る。 For an internal node, a first validation parameter may be determined according to a first validation parameter of a child node of the internal node, a second validation parameter of the internal node, and an identity of the internal node.

例えば、ノード210の第1の検証パラメータは、ノード210の第2の検証パラメータ、ノード220、ノード230、およびノード240の第1の検証パラメータ、ならびにノード210の識別情報に従って決定され得る。言い換えれば、Hn_210は、Hi_210、Hn_220、Hn_230、Hn_240、およびIDinfo210に従って決定され得、IDinfor210は、ノード210の識別情報である。 For example, the first verification parameter of node 210 may be determined according to the second verification parameter of node 210, the first verification parameters of node 220, node 230, and node 240, and the identification information of node 210. In other words, H n_210 may be determined according to H i_210 , H n_220 , H n_230 , H n_240 , and ID info210 , where ID infor210 is the identification information of node 210.

別の例として、ノード201の第1の検証パラメータは、ノード201の第2の検証パラメータ、ノード210の第1の検証パラメータ、およびノード201の識別情報に従って決定され得る。 As another example, the first verification parameter of node 201 may be determined according to the second verification parameter of node 201, the first verification parameter of node 210, and the identification information of node 201.

内部ノードの第1の検証パラメータは、以下の式に従って決定され得る。
Hn_Y=H(Hi_Y,Hn_chY,IDinfoY) (式1.4)
The first validation parameter of an internal node may be determined according to the following formula:
H n_Y = H (H i_Y , H n_chY , ID infoY ) (Formula 1.4)

Hn_Yは、電子デバイスY(内部ノードY)の第1の検証パラメータである。Hi_Yは、電子デバイスY(内部ノードY)の第2の検証パラメータである。Hn_chYは、すべての、内部ノードYの子ノードの、第1の検証パラメータである。というのは、内部ノードYがノード220である場合、Hn_chYは、Hn_221、Hn_222、およびHn_223を含み得、内部ノードYがノード210である場合、Hn_chYは、Hn_220、Hn_230、およびHn_240を含み得、内部ノードYがノード201である場合、Hn_chYは単にHn_210を含み得ることになるからである。IDinfoYは、電子デバイスY(内部ノードY)の識別情報である。H(Hi_Y,Hn_chY,IDinfoY)は、Hi_X、Hn_chY、IDinfoXに対するハッシュ計算である。例えば、車両200は、ハッシュ値を取得するために、Hi_210、Hn_220、Hn_230、Hn_240、IDinfo210に対してハッシュ計算を実行し得る。ハッシュ値は、ノード210(CC210)に対応する第1の検証パラメータ、すなわちHn_210である。 H n_Y is the first verification parameter of electronic device Y (internal node Y). H i_Y is the second verification parameter of electronic device Y (internal node Y). H n_chY is the first validation parameter of all child nodes of internal node Y. For if internal node Y is node 220, H n_chY may include H n_221 , H n_222 , and H n_223 , and if internal node Y is node 210, H n_chY may include H n_220 , H n_230 , and H n_240 , and if the internal node Y is the node 201, then H n_chY can simply contain H n_210 . ID infoY is identification information of electronic device Y (internal node Y). H (H i_Y , H n_chY , ID infoY ) is a hash calculation for H i_X , H n_chY , ID infoX . For example, vehicle 200 may perform a hash calculation on H i_210 , H n_220 , H n_230 , H n_240 , and ID info 210 to obtain hash values. The hash value is the first verification parameter corresponding to node 210 (CC210), namely H n_210 .

いくつかの実施形態では、ノードの識別情報は、レベルIDおよびノードIDを含み得る。レベルIDは、ノードのレベルを示す。ノードIDは、異なるノードを区別するために使用される。言い換えれば、異なるノードのノードIDは異なる。 In some embodiments, a node's identification information may include a level ID and a node ID. The level ID indicates the level of the node. Node IDs are used to distinguish between different nodes. In other words, different nodes have different node IDs.

図10は、車両200に対応するツリーを示している。 FIG. 10 shows a tree corresponding to vehicle 200.

図10は、ツリー700内の各ノードの識別情報を示している。例えば、ノード201の識別情報は0:0であり、左の0はノード201のレベルIDであり、右の0はノード201のノードIDである。同様に、ノード230の識別情報は2:6であり、2はレベルIDであり、6はノードIDである。 FIG. 10 shows identification information for each node in tree 700. For example, the identification information of the node 201 is 0:0, the 0 on the left is the level ID of the node 201, and the 0 on the right is the node ID of the node 201. Similarly, the identification information of node 230 is 2:6, where 2 is the level ID and 6 is the node ID.

上述の実施形態によれば、ノードの識別情報がレベルIDおよびノードIDを含むので、ノードの識別情報の識別情報に従って、ノードのレベルおよびノードの識別が決定され得る。 According to the embodiments described above, since the identification information of the node includes the level ID and the node ID, the level of the node and the identification of the node can be determined according to the identification information of the identification information of the node.

いくつかの実施形態では、ノードの識別情報は、ノードIDを単に含み得る。 In some embodiments, a node's identification information may simply include a node ID.

いくつかの実施形態では、ノードの識別情報は、ノードに対応する電子デバイスのDEV_IDまたはMFR_IDであり得る。 In some embodiments, the identification information of the node may be the DEV_ID or MFR_ID of the electronic device corresponding to the node.

内部ノードの第1の検証パラメータは、それの子ノードの第1の検証パラメータに従って決定される。したがって、それの子ノードのうちの1つについての第1の検証パラメータが変更された場合、内部ノードの第1の検証パラメータが再計算されることになる。内部ノード(以下、内部ノード1)の子ノードも内部ノード(以下、内部ノード2)である場合、内部ノード1の第1の検証パラメータは、それの孫ノード(すなわち、内部ノード2の子ノード)によって影響されることになる。 The first validation parameter of an internal node is determined according to the first validation parameter of its child nodes. Therefore, if the first validation parameter for one of its child nodes changes, the first validation parameter of the internal node will be recalculated. If the child node of an internal node (hereinafter referred to as internal node 1) is also an internal node (hereinafter referred to as internal node 2), then the first validation parameter of internal node 1 is the child node of its grandchild node (i.e., the child node of internal node 2). ) will be influenced by

ツリー700を一例にとると、ノード244のソフトウェアが更新された場合、ノード244のソフトウェアパラメータはそれに対応して更新されることになる。この条件によると、ノード244の第2の検証パラメータが、更新されたソフトウェアパラメータに従って再計算されることになり、ノード244の第1の検証パラメータは、ノード244の再計算された第2の検証パラメータに従って再計算されることになる。ノード240の第1の検証パラメータは、ノード244の第1の検証に従って決定されるので、ノード240の第1の検証パラメータは、ノード244の再計算された第1の検証パラメータに従って再計算されることになる。それに対応して、ノード210およびノード201の第1の検証パラメータが再計算されることになる。 Taking tree 700 as an example, if the software of node 244 is updated, the software parameters of node 244 will be correspondingly updated. According to this condition, the second validation parameter of node 244 will be recalculated according to the updated software parameters, and the first validation parameter of node 244 will be recalculated according to the recalculated second validation parameter of node 244. It will be recalculated according to the parameters. Since the first validation parameter of node 240 is determined according to the first validation of node 244, the first validation parameter of node 240 is recalculated according to the recalculated first validation parameter of node 244. It turns out. Correspondingly, the first verification parameters of node 210 and node 201 will be recalculated.

一般に、内部ノードの第1の検証パラメータは、それの子孫ノードのソフトウェアによって影響され得る。言い換えれば、ノード(ルートノード以外)のソフトウェアは、その先祖ノードの第1の検証パラメータに影響し得る。 Generally, the first validation parameter of an internal node can be influenced by the software of its descendant nodes. In other words, the software of a node (other than the root node) can affect the first validation parameter of its ancestor nodes.

605:車両200がサーバ300から第1のリファレンス情報を取得する。 605: Vehicle 200 acquires first reference information from server 300.

本出願の実施形態は、どのようにしてサーバ300から第1のリファレンス情報を取得するのかを限定しない。いくつかの実施形態では、車両200は、第1のリファレンス情報を能動的に取得し得る。例えば、車両は要求をサーバ300に送信し得る。要求を受信した後、サーバ300は、第1のリファレンス情報を車両200に送信し得る。いくつかの実施形態では、サーバ300は、第1のリファレンス情報を車両200にプッシュ配信し得る。例えば、サーバ300は、リファレンス情報を車両200に定期的に送信し得る。別の例として、サーバ300は、リファレンス情報が更新されたときに、更新されたリファレンス情報を車両200に送信し得る。 Embodiments of the present application do not limit how the first reference information is obtained from the server 300. In some embodiments, vehicle 200 may actively obtain first reference information. For example, a vehicle may send a request to server 300. After receiving the request, server 300 may send first reference information to vehicle 200. In some embodiments, server 300 may push first reference information to vehicle 200. For example, server 300 may periodically send reference information to vehicle 200. As another example, server 300 may send updated reference information to vehicle 200 when the reference information is updated.

606:車両200が、第1の検証情報および第1のリファレンス情報に従って14個の電子デバイスのソフトウェアセキュリティを検証する。 606: The vehicle 200 verifies software security of the 14 electronic devices according to the first verification information and the first reference information.

いくつかの実施形態では、第1のリファレンス情報は14個の第1のリファレンスパラメータを含み得る。第1のリファレンスパラメータは、14個の第1の検証パラメータと一対一に対応する。 In some embodiments, the first reference information may include 14 first reference parameters. The first reference parameter has a one-to-one correspondence with the 14 first verification parameters.

サーバ300は、車両200内の14個の電子デバイスのソフトウェアパラメータを記憶し得る。したがって、サーバ300は、ソフトウェアパラメータに従って14個の第1のリファレンスパラメータを決定し得る。第1のリファレンスパラメータを決定するための方法は、第1の検証パラメータを決定するための方法と同様である。簡潔にするために、どのようにして第1のリファレンスパラメータを決定するのかに関する詳細は、ここでは再び説明されない。 Server 300 may store software parameters for 14 electronic devices within vehicle 200. Accordingly, server 300 may determine the 14 first reference parameters according to the software parameters. The method for determining the first reference parameter is similar to the method for determining the first verification parameter. For the sake of brevity, details regarding how to determine the first reference parameter will not be described again here.

サーバ300は、トラステッドデバイスと見なされる。この仮定の下、リファレンスパラメータを決定するために使用されるソフトウェア情報は改ざんされることができない。 Server 300 is considered a trusted device. Under this assumption, the software information used to determine the reference parameters cannot be tampered with.

記載を簡単にするために、TBox201に対応する第1のリファレンスはH'n_201と称され、CC210に対応する第1のリファレンスはH'n_210と称される、などである。Hn_201はH'n_201に対応し、Hn_210はH'n_210に対応し、Hn_220はH'n_220に対応し、Hn_230はH'n_230に対応する、などである。 For ease of description, the first reference corresponding to TBox 201 is referred to as H'n_201 , the first reference corresponding to CC210 is referred to as H'n_210 , and so on. H n_201 corresponds to H' n_201 , H n_210 corresponds to H' n_210 , H n_220 corresponds to H' n_220 , H n_230 corresponds to H' n_230 , and so on.

電子デバイスの第1のリファレンスパラメータおよび電子デバイスの第1の検証パラメータは、電子デバイスに対応する電子デバイスのソフトウェアセキュリティを検証するために使用され得る。 The electronic device first reference parameter and the electronic device first verification parameter may be used to verify software security of an electronic device corresponding to the electronic device.

電子デバイスに対応する電子デバイスは、電子デバイス自体と、電子デバイスのすべての子孫ノードとを含む。 The electronic device corresponding to the electronic device includes the electronic device itself and all descendant nodes of the electronic device.

例えば、TBox201に対応する電子デバイスのソフトウェアセキュリティを検証するために、Hn_201およびH'n_201が使用され得る。TBox201に対応する電子デバイスは、図2に示される14個の電子デバイスすべてを含む。 For example, H n_201 and H' n_201 may be used to verify the software security of an electronic device that corresponds to TBox201. The electronic devices corresponding to TBox 201 include all 14 electronic devices shown in FIG.

別の例として、CC210に対応する電子デバイスのソフトウェアセキュリティを検証するために、Hn_210およびH'n_210が使用され得る。CC210に対応する電子デバイスは、CC210、DC220、DC230、DC240、および図2に示されるすべてのECUを含む。 As another example, H n_210 and H' n_210 may be used to verify the software security of an electronic device that supports CC210. Electronic devices corresponding to CC210 include CC210, DC220, DC230, DC240, and all ECUs shown in Figure 2.

電子デバイスの第1の検証パラメータと電子デバイスの第1のリファレンスパラメータとが同じである場合、車両は、電子デバイスに対応する電子デバイスのソフトウェアセキュリティが良好であると決定し得る。言い換えれば、電子デバイスの第1の検証パラメータと電子デバイスの第1のリファレンスパラメータとが同じである場合、車両は、電子デバイスに対応する電子デバイスそれぞれについてのソフトウェアが安全であると決定し得る。 If the first verification parameter of the electronic device and the first reference parameter of the electronic device are the same, the vehicle may determine that the software security of the electronic device corresponding to the electronic device is good. In other words, if the first verification parameter of the electronic device and the first reference parameter of the electronic device are the same, the vehicle may determine that the software for each of the electronic devices corresponding to the electronic device is secure.

対照的に、電子デバイスの第1の検証パラメータと電子デバイスの第1のリファレンスパラメータとが同じではない場合、車両は、電子デバイスに対応する電子デバイスのソフトウェアセキュリティが良くないと決定し得る。言い換えれば、電子デバイスの第1の検証パラメータと電子デバイスの第1のリファレンスパラメータとが同じではない場合、車両は、電子デバイスに対応する少なくとも1つの電子デバイスのソフトウェアが安全ではないと決定し得る。この条件によると、車両200は、子ノードおよび子ノードに対応する電子デバイスのソフトウェアセキュリティを決定するために、電子デバイスの子ノードの第1の検証情報および第1のリファレンス情報を使用し得る。 In contrast, if the first verification parameter of the electronic device and the first reference parameter of the electronic device are not the same, the vehicle may determine that the software security of the electronic device corresponding to the electronic device is poor. In other words, if the first verification parameter of the electronic device and the first reference parameter of the electronic device are not the same, the vehicle may determine that the software of at least one electronic device corresponding to the electronic device is unsafe. . According to this condition, the vehicle 200 may use the first verification information and the first reference information of the child node of the electronic device to determine the software security of the child node and the electronic device corresponding to the child node.

どのようにして電子デバイスのソフトウェアセキュリティを検証するのかに関する詳細は、図7、図8、および図9に関連して以下で説明され得る。 Details regarding how to verify the software security of an electronic device may be described below in connection with FIGS. 7, 8, and 9.

どのようにしてソフトウェアセキュリティを検証するのかに関する以下の実施形態では、マルウェアがノード222(ECU222)のソフトウェアに挿入されたと仮定する。この条件によると、ノード222のソフトウェアイメージが変更される。したがって、ノード222およびそれの先祖ノードの第1の検証パラメータは、正しい第1の検証パラメータ(すなわち、ノード222のソフトウェアにマルウェアが挿入されていないときの第1の検証パラメータ)とは異なり得る。ノード222およびそれの先祖ノードの第1のリファレンスパラメータと、正しい第1の検証パラメータとは同じである。したがって、ノード222およびそれの先祖ノードの第1のリファレンスパラメータは、ノード222およびそれの先祖ノードの第1の検証パラメータと異なる。 The following embodiment of how to verify software security assumes that malware has been inserted into the software of node 222 (ECU 222). According to this condition, the software image of node 222 is changed. Accordingly, the first verification parameters of node 222 and its ancestor nodes may differ from the correct first verification parameters (i.e., the first verification parameters when no malware was injected into the software of node 222). The first reference parameter and the correct first verification parameter for node 222 and its ancestor nodes are the same. Therefore, the first reference parameter of node 222 and its ancestor nodes is different from the first validation parameter of node 222 and its ancestor nodes.

車両200は、ルートノードから始めて、第1の検証と第1のリファレンスとを比較し得る。 Vehicle 200 may compare the first verification and the first reference starting from the root node.

図7に示されるツリー700を一例にとると、車両200は、ノード222のソフトウェアが異常であることを見つけるために、以下のステップを実行し得る(以下のステップは、内部ノードのソフトウェアセキュリティを検証するためのステップは無視している)。
ステップ1:ノード201の第1の検証パラメータとノード201の第1のリファレンスパラメータとを比較するステップ、およびノード201の第1の検証パラメータがノード201の第1のリファレンスパラメータと異なると決定するステップ。
ステップ2:ノード210の第1の検証パラメータとノード210の第1のリファレンスパラメータとを比較するステップ、およびノード210の第1の検証パラメータがノード210の第1のリファレンスパラメータと異なると決定するステップ。
ステップ3:ノード220の第1の検証パラメータとノード220の第1のリファレンスパラメータとを比較するステップ、ノード220の第1の検証パラメータがノード220の第1のリファレンスパラメータと異なると決定するステップ。
ステップ4:ノード221の第1の検証パラメータとノード221の第1のリファレンスパラメータとを比較するステップ、ノード221の第1の検証パラメータがノード221の第1のリファレンスパラメータと同じであると決定するステップ。
ステップ5:ノード222の第1の検証パラメータとノード222の第1のリファレンスパラメータとを比較するステップ、ノード222の第1の検証パラメータがノード222の第1のリファレンスパラメータと異なると決定するステップ。
ステップ6:ノード223の第1の検証パラメータとノード223の第1のリファレンスパラメータとを比較するステップ、ノード223の第1の検証パラメータがノード223の第1のリファレンスパラメータと同じであると決定するステップ。
ステップ7:ノード230の第1の検証パラメータとノード230の第1のリファレンスパラメータとを比較するステップ、ノード230の第1の検証パラメータがノード230の第1のリファレンスパラメータと同じであると決定するステップ、およびノード230およびそれの子孫ノードのソフトウェアセキュリティが良好であると決定するステップ。
ステップ8:ノード240の第1の検証パラメータとノード240の第1のリファレンスパラメータとを比較するステップ、ノード240の第1の検証パラメータがノード240の第1のリファレンスパラメータと同じであると決定するステップ、およびノード240およびそれの子孫ノードのソフトウェアセキュリティが良好であると決定するステップ。
Taking as an example the tree 700 shown in FIG. (Ignoring the steps for verification).
Step 1: Comparing the first validation parameter of node 201 and the first reference parameter of node 201, and determining that the first validation parameter of node 201 is different from the first reference parameter of node 201. .
Step 2: Comparing the first validation parameter of node 210 and the first reference parameter of node 210 and determining that the first validation parameter of node 210 is different from the first reference parameter of node 210 .
Step 3: Comparing a first validation parameter of node 220 and a first reference parameter of node 220, determining that the first validation parameter of node 220 is different from the first reference parameter of node 220.
Step 4: Comparing the first validation parameter of node 221 and the first reference parameter of node 221, determining that the first validation parameter of node 221 is the same as the first reference parameter of node 221 step.
Step 5: Comparing a first validation parameter of node 222 and a first reference parameter of node 222, determining that the first validation parameter of node 222 is different from the first reference parameter of node 222.
Step 6: Comparing the first validation parameter of node 223 and the first reference parameter of node 223, determining that the first validation parameter of node 223 is the same as the first reference parameter of node 223 step.
Step 7: Comparing the first validation parameter of node 230 and the first reference parameter of node 230, determining that the first validation parameter of node 230 is the same as the first reference parameter of node 230 and determining that the software security of node 230 and its descendant nodes is good.
Step 8: Comparing the first validation parameter of node 240 and the first reference parameter of node 240, determining that the first validation parameter of node 240 is the same as the first reference parameter of node 240 and determining that the software security of node 240 and its descendant nodes is good.

図7に示されるツリー700については、車両200は、ノード222のソフトウェアが異常であることを見つけるために、8つのステップを実行する。 For the tree 700 shown in FIG. 7, vehicle 200 performs eight steps to find that the software at node 222 is abnormal.

図8に示されるツリー800を一例にとると、車両200は、ノード222のソフトウェアが異常であることを見つけるために、以下のステップを実行し得る(以下のステップは、内部ノードのソフトウェアセキュリティを検証するためのステップは無視している)。
ステップ1:ノード201の第1の検証パラメータとノード201の第1のリファレンスパラメータとを比較するステップ、およびノード201の第1の検証パラメータがノード201の第1のリファレンスパラメータと異なると決定するステップ。
ステップ2:ノード210の第1の検証パラメータとノード210の第1のリファレンスパラメータとを比較するステップ、ノード210の第1の検証パラメータがノード210の第1のリファレンスパラメータと同じであると決定するステップ、およびノード210、ノード230およびそれの子孫ノード、ならびにノード240およびそれの子孫ノードの、ソフトウェアセキュリティが良好であると決定するステップ。
ステップ3:ノード220の第1の検証パラメータとノード220の第1のリファレンスパラメータとを比較するステップ、ノード220の第1の検証パラメータがノード220の第1のリファレンスパラメータと異なると決定するステップ。
ステップ4:ノード221の第1の検証パラメータとノード221の第1のリファレンスパラメータとを比較するステップ、ノード221の第1の検証パラメータがノード221の第1のリファレンスパラメータと同じであると決定するステップ、およびノード221およびノード223のソフトウェアセキュリティが良好であると決定するステップ。
ステップ5:ノード222の第1の検証パラメータとノード222の第1のリファレンスパラメータとを比較するステップ、ノード222の第1の検証パラメータがノード222の第1のリファレンスパラメータと異なると決定するステップ、およびノード222のソフトウェアが異常であると決定するステップ。
Taking the tree 800 shown in FIG. 8 as an example, the vehicle 200 may perform the following steps to find out that the software of the node 222 is abnormal (the following steps include (Ignoring the steps for verification).
Step 1: Comparing the first validation parameter of node 201 and the first reference parameter of node 201, and determining that the first validation parameter of node 201 is different from the first reference parameter of node 201. .
Step 2: Comparing the first validation parameter of node 210 and the first reference parameter of node 210, determining that the first validation parameter of node 210 is the same as the first reference parameter of node 210 and determining that the software security of node 210, node 230 and its descendants, and node 240 and its descendants is good.
Step 3: Comparing a first validation parameter of node 220 and a first reference parameter of node 220, determining that the first validation parameter of node 220 is different from the first reference parameter of node 220.
Step 4: Comparing the first validation parameter of node 221 and the first reference parameter of node 221, determining that the first validation parameter of node 221 is the same as the first reference parameter of node 221 and determining that the software security of nodes 221 and 223 is good.
Step 5: Comparing a first validation parameter of node 222 and a first reference parameter of node 222; determining that the first validation parameter of node 222 is different from the first reference parameter of node 222; and determining that the software on node 222 is abnormal.

図8に示されるツリー800については、車両200は、ノード222のソフトウェアが異常であることを見つけるために、5つのステップを実行するのみである。 For the tree 800 shown in FIG. 8, the vehicle 200 only performs five steps to find that the software in the node 222 is abnormal.

図9に示されるツリー900を一例にとると、車両200は、ノード222のソフトウェアが異常であることを見つけるために、以下のステップを実行し得る(以下のステップは、内部ノードのソフトウェアセキュリティを検証するためのステップは無視している)。
ステップ1:ノード201の第1の検証パラメータとノード201の第1のリファレンスパラメータとを比較するステップ、およびノード201の第1の検証パラメータがノード201の第1のリファレンスパラメータと異なると決定するステップ。
ステップ2:ノード210の第1の検証パラメータとノード210の第1のリファレンスパラメータとを比較するステップ、ノード210の第1の検証パラメータがノード210の第1のリファレンスパラメータと同じであると決定するステップ、およびノード210、ノード230およびそれの子孫ノード、ノード240、ノード241ならびにノード242の、ソフトウェアセキュリティが良好であると決定するステップ。
ステップ3:ノード220の第1の検証パラメータとノード220の第1のリファレンスパラメータとを比較するステップ、ノード220の第1の検証パラメータがノード220の第1のリファレンスパラメータと異なると決定するステップ。
ステップ4:ノード221の第1の検証パラメータとノード221の第1のリファレンスパラメータとを比較するステップ、ノード221の第1の検証パラメータがノード221の第1のリファレンスパラメータと同じであると決定するステップ、およびノード221、ノード223およびノード243のソフトウェアセキュリティが良好であると決定するステップ。
ステップ5:ノード222の第1の検証パラメータとノード222の第1のリファレンスパラメータとを比較するステップ、ノード222の第1の検証パラメータがノード222の第1のリファレンスパラメータと異なると決定するステップ。
ステップ6:ノード244の第1の検証パラメータとノード244の第1のリファレンスパラメータとを比較するステップ、ノード244の第1の検証パラメータがノード244の第1のリファレンスパラメータと同じであると決定するステップ、およびノード244のソフトウェアセキュリティが良好であり、ノード222のソフトウェアが異常であると決定するステップ。
Taking as an example the tree 900 shown in FIG. (Ignoring the steps for verification).
Step 1: Comparing the first validation parameter of node 201 and the first reference parameter of node 201, and determining that the first validation parameter of node 201 is different from the first reference parameter of node 201. .
Step 2: Comparing the first validation parameter of node 210 and the first reference parameter of node 210, determining that the first validation parameter of node 210 is the same as the first reference parameter of node 210 and determining that the software security of node 210, node 230 and its descendants, node 240, node 241 and node 242 is good.
Step 3: Comparing a first validation parameter of node 220 and a first reference parameter of node 220, determining that the first validation parameter of node 220 is different from the first reference parameter of node 220.
Step 4: Comparing the first validation parameter of node 221 and the first reference parameter of node 221, determining that the first validation parameter of node 221 is the same as the first reference parameter of node 221 and determining that the software security of nodes 221, 223, and 243 is good.
Step 5: Comparing a first validation parameter of node 222 and a first reference parameter of node 222, determining that the first validation parameter of node 222 is different from the first reference parameter of node 222.
Step 6: Comparing the first validation parameter of node 244 and the first reference parameter of node 244, determining that the first validation parameter of node 244 is the same as the first reference parameter of node 244 and determining that the software security of node 244 is good and the software of node 222 is unhealthy.

図9に示されるツリー900については、車両900は、ノード222のソフトウェアが異常であることを見つけるために、6つのステップを実行するのみである。 For the tree 900 shown in FIG. 9, the vehicle 900 only performs six steps to find that the software at node 222 is abnormal.

したがって、車両200の電子デバイスに対応するツリーがTBBTまたはマークルツリーである場合、車両200はより少ない比較を実行し得る。この条件によると、車両200は、異常な電子デバイスをより迅速に決定し得る。 Therefore, if the tree corresponding to the electronic device of vehicle 200 is a TBBT or Merkle tree, vehicle 200 may perform fewer comparisons. According to this condition, vehicle 200 may more quickly determine abnormal electronic devices.

上記実施形態によれば、車両200は、第1の検証情報および第1のリファレンス情報に従ってソフトウェアセキュリティを決定するのみである。この条件によると、内部ノードのソフトウェアが異常である場合、車両200は、すべてのそれの子孫ノードのソフトウェアセキュリティをテストしなければならない。例えば、ツリー900について、車両200は、ノード244のソフトウェアが良好であると決定した後にノード222のソフトウェアが異常であると決定する。加えて、ノード244のソフトウェアも異常である場合、車両200は、ノード222のソフトウェアセキュリティが良好であるかどうかを決定することができない。この条件によると、車両200は、実際の状態が良好であっても、ノード222のソフトウェアセキュリティが良くないと決定しなければならない。 According to the above embodiment, the vehicle 200 only determines software security according to the first verification information and the first reference information. According to this condition, if the software of an internal node is abnormal, the vehicle 200 must test the software security of all its descendant nodes. For example, for tree 900, vehicle 200 determines that the software of node 222 is bad after determining that the software of node 244 is good. Additionally, if the software on node 244 is also abnormal, vehicle 200 cannot determine whether the software security on node 222 is good. According to this condition, vehicle 200 must determine that the software security of node 222 is bad even if the actual state is good.

いくつかの実施形態では、第1の検証情報は、14個の電子デバイスの第2の検証パラメータをさらに含み得、第1のリファレンス情報は、14個の電子デバイスの第2のリファレンスパラメータをさらに含み得る。 In some embodiments, the first verification information may further include a second verification parameter of the 14 electronic devices, and the first reference information may further include a second reference parameter of the 14 electronic devices. may be included.

第2のリファレンスパラメータを決定するための方法は、第2の検証パラメータを決定するための方法と同様である。簡潔にするために、どのようにして第2のリファレンスパラメータを決定するのかに関する詳細は、ここでは再び説明されない。この条件によると、車両200は、内部ノードのソフトウェアセキュリティを決定するために、第2の検証パラメータおよび第2のリファレンスパラメータを使用し得る。内部ノードの第2の検証パラメータが内部ノードの第2のリファレンスパラメータと同じである場合、内部ノードのソフトウェアセキュリティは良好である。内部ノードの第2の検証パラメータが内部ノードの第2のリファレンスパラメータと異なる場合、車両200は、内部ノードのソフトウェアセキュリティが良くないと決定し得る。 The method for determining the second reference parameter is similar to the method for determining the second verification parameter. For the sake of brevity, details regarding how to determine the second reference parameter will not be described again here. According to this condition, vehicle 200 may use the second verification parameter and the second reference parameter to determine the software security of the internal node. If the second verification parameter of the internal node is the same as the second reference parameter of the internal node, the software security of the internal node is good. If the internal node's second verification parameter differs from the internal node's second reference parameter, vehicle 200 may determine that the internal node's software security is poor.

例えば、ツリー900について、車両200は、ノード222の第2の検証パラメータおよびノード222の第2のリファレンスパラメータに従って、ノード222のソフトウェアセキュリティを決定し得る。ノード222の第2の検証パラメータがノード222の第2のリファレンスパラメータと同じである場合、車両200は、ノード222のソフトウェアセキュリティが良好であると決定し得る。ノード222の第2の検証パラメータがノード222の第2のリファレンスパラメータと異なる場合、車両200は、ノード222のソフトウェアセキュリティが良くないと決定し得る。 For example, for tree 900, vehicle 200 may determine the software security of node 222 according to a second verification parameter of node 222 and a second reference parameter of node 222. If the second verification parameter of node 222 is the same as the second reference parameter of node 222, vehicle 200 may determine that the software security of node 222 is good. If the second verification parameter of node 222 is different from the second reference parameter of node 222, vehicle 200 may determine that the software security of node 222 is poor.

図11は、車両内の電子デバイスのソフトウェアセキュリティを検証するための方法の別の実施形態のフローチャートである。 FIG. 11 is a flowchart of another embodiment of a method for verifying software security of electronic devices in a vehicle.

いくつかの実施形態では、図11に示される方法は、車両または車両のコンポーネント(例えば、チップまたは回路)によって実行され得る。 In some embodiments, the method shown in FIG. 11 may be performed by a vehicle or a component of a vehicle (eg, a chip or circuit).

いくつかの実施形態では、図11に示される方法は、車両に対応するサーバまたはサーバのコンポーネント(例えば、チップまたは回路)によって実行され得る。 In some embodiments, the method illustrated in FIG. 11 may be performed by a server or a component of a server (eg, a chip or circuit) corresponding to a vehicle.

いくつかの実施形態では、図11に示される異なるステップは、車両の異なるコンポーネントまたは車両に対応するサーバによって実施され得る。例えば、車両200の電子デバイスのそれぞれは、それ自体の第2の検証パラメータを決定し得、第2の検証パラメータを車両200のチップに送信し得、チップは、第1の検証パラメータを決定して比較ステップを実行するために使用される。 In some embodiments, the different steps shown in FIG. 11 may be performed by different components of the vehicle or servers corresponding to the vehicle. For example, each of the electronic devices of vehicle 200 may determine its own second verification parameter and transmit the second verification parameter to a chip of vehicle 200, and the chip determines the first verification parameter. used to perform the comparison step.

図11に示される方法は、図2および図3に関連して以下に説明され得る。加えて、図11に関する以下の説明では、方法は車両200によって実行されると仮定する。 The method shown in FIG. 11 may be described below in connection with FIGS. 2 and 3. Additionally, the following description with respect to FIG. 11 assumes that the method is performed by vehicle 200.

1101:車両200が14個の第1のソフトウェアパラメータを取得する。 1101: Vehicle 200 obtains 14 first software parameters.

ステップ1101の詳細は、図6に示されるステップ601を参照し得る。 For details of step 1101, refer to step 601 shown in FIG. 6.

1102:車両200が14個の電子デバイスに対応するツリーを決定する。 1102: Vehicle 200 determines a tree corresponding to 14 electronic devices.

ツリーはマークルツリーである。14個の電子デバイスは、マークルツリーの14個の葉ノードに対応する。 The tree is a Merkle tree. The 14 electronic devices correspond to the 14 leaf nodes of the Merkle tree.

図12は、車両200に対応するマークルツリーを示している。 FIG. 12 shows a Merkle tree corresponding to vehicle 200.

図12に示されるように、ツリー1200の各内部ノードは2つの子ノードを有する。図12を参照すると、00はノード00を指し、11はノード11を指し、201はノード201を指し、210はノード210を指す、などである。加えて、図12に示されるDはダミーノードを指す。ノード201は、TBox201に対応するノードであり、ノード210は、CC210に対応するノードである、などである。 As shown in FIG. 12, each internal node of tree 1200 has two child nodes. Referring to FIG. 12, 00 refers to node 00, 11 refers to node 11, 201 refers to node 201, 210 refers to node 210, and so on. Additionally, D shown in FIG. 12 refers to a dummy node. Node 201 is a node corresponding to TBox 201, node 210 is a node corresponding to CC 210, and so on.

1103:車両200が、14個の第1のソフトウェアパラメータに従って14個の第2の検証パラメータをそれぞれ決定する。 1103: The vehicle 200 determines each of the 14 second verification parameters according to the 14 first software parameters.

ステップ1103の詳細は、ステップ603と同様である。簡潔にするために、どのようにして第2のリファレンスパラメータを決定するのかに関する詳細は、ここでは再び説明されない。 Details of step 1103 are the same as step 603. For the sake of brevity, details regarding how to determine the second reference parameter will not be described again here.

1104:車両200が内部ノードの第1の検証パラメータを決定する。 1104: Vehicle 200 determines a first verification parameter of the internal node.

いくつかの実施形態では、内部ノードの第1の検証パラメータは、それの子ノードの検証パラメータに従って決定され得る。 In some embodiments, the first validation parameter of an internal node may be determined according to the validation parameters of its child nodes.

いくつかの実施形態では、内部ノードの子ノードが葉ノードである場合、内部ノードの第1の検証パラメータは、それの子ノードの第2の検証パラメータに従って決定され得る。内部ノードの第1の検証パラメータは、以下の式に従って決定され得る。
Hn_Y=H(Hi_L,Hi_R) (式2.1)
In some embodiments, if the child node of the internal node is a leaf node, the first validation parameter of the internal node may be determined according to the second validation parameter of its child node. The first validation parameter of an internal node may be determined according to the following formula:
H n_Y = H (H i_L , H i_R ) (Formula 2.1)

Hn_Yは、電子デバイスY(内部ノードY)の第1の検証パラメータである。Hi_Lは、電子デバイスY(内部ノードY)の左の子ノードの第2の検証パラメータである。Hi_Rは、電子デバイスY(内部ノードY)の右の子ノードの第2の検証パラメータである。H(Hi_L,Hi_R)は、Hi_L、Hi_Rに対するハッシュ計算である。例えば、車両200は、ハッシュ値を取得するために、Hi_201およびHi_210に対してハッシュ計算を実行し得る。ハッシュ値は、ノード31の第1の検証パラメータ、すなわちHn_31である。 H n_Y is the first verification parameter of electronic device Y (internal node Y). H i_L is the second verification parameter of the left child node of electronic device Y (internal node Y). H i_R is the second verification parameter of the right child node of electronic device Y (internal node Y). H (H i_L , H i_R ) is a hash calculation for H i_L and H i_R . For example, vehicle 200 may perform a hash calculation on H i_201 and H i_210 to obtain a hash value. The hash value is the first verification parameter of node 31, ie H n_31 .

いくつかの実施形態では、内部ノードの子ノードが葉ノードである場合、内部ノードの第1の検証パラメータは、それの子ノードの第1の検証パラメータに従って決定され得る。内部ノードの第1の検証パラメータは、以下の式に従って決定され得る。
Hn_Y=H(Hn_L,Hn_R) (式2.2)
In some embodiments, if the child node of the internal node is a leaf node, the first validation parameter of the internal node may be determined according to the first validation parameter of its child nodes. The first validation parameter of an internal node may be determined according to the following formula:
H n_Y = H (H n_L , H n_R ) (Equation 2.2)

Hn_Yは、電子デバイスY(内部ノードY)の第1の検証パラメータである。Hn_Lは、電子デバイスY(内部ノードY)の左の子ノードの第1の検証パラメータである。Hn_Rは、電子デバイスY(内部ノードY)の右の子ノードの第1の検証パラメータである。H(Hn_L,Hn_R)は、Hn_L、Hn_Rに対するハッシュ計算である。例えば、車両200は、ハッシュ値を取得するために、Hn_201およびHn_210に対してハッシュ計算を実行し得る。ハッシュ値は、ノード31の第1の検証パラメータ、すなわちHn_31である。 H n_Y is the first verification parameter of electronic device Y (internal node Y). H n_L is the first verification parameter of the left child node of electronic device Y (internal node Y). H n_R is the first verification parameter of the right child node of electronic device Y (internal node Y). H(H n_L , H n_R ) is a hash calculation for H n_L and H n_R . For example, vehicle 200 may perform a hash calculation on H n_201 and H n_210 to obtain hash values. The hash value is the first verification parameter of node 31, ie H n_31 .

葉ノードの第1の検証パラメータを決定するための方法は、図6に示される実施形態を参照し得る。 A method for determining the first validation parameter of a leaf node may refer to the embodiment shown in FIG. 6.

内部ノードの子ノードが非葉ノードである場合、内部ノードの第1の検証パラメータは、それの子ノードの第1の検証パラメータに従って決定され得る。言い換えれば、式2.2は、任意の内部ノードの第1の検証パラメータを計算するために使用され得る。 If the child node of the internal node is a non-leaf node, the first validation parameter of the internal node may be determined according to the first validation parameter of its child nodes. In other words, equation 2.2 can be used to calculate the first validation parameter of any internal node.

いくつかの実施形態では、内部ノードの識別情報は、内部ノードの第1の検証を決定するために使用され得る。内部ノードの第1の検証パラメータは、以下の式に従って決定され得る。
Hn_Y=H(Hn_L,Hn_R,IDinfoY) (式2.3)
In some embodiments, the identity of the internal node may be used to determine the first verification of the internal node. The first validation parameter of an internal node may be determined according to the following formula:
H n_Y = H (H n_L , H n_R , ID infoY ) (Equation 2.3)

Hn_Yは、電子デバイスY(内部ノードY)の第1の検証パラメータである。Hn_Lは、電子デバイスY(内部ノードY)の左の子ノードの第1の検証パラメータである。Hn_Rは、電子デバイスY(内部ノードY)の右の子ノードの第1の検証パラメータである。IDinfoYは、ノードYの識別情報である。H(Hn_L,Hn_R,IDinfoY)は、Hn_L、Hn_R、およびノードYの識別情報に対するハッシュ計算である。例えば、車両200は、ハッシュ値を取得するために、Hn_201、Hn_210、およびノード31の識別情報に対してハッシュ計算を実行し得る。ハッシュ値は、ノード31の第1の検証パラメータ、すなわちHn_31である。 H n_Y is the first verification parameter of electronic device Y (internal node Y). H n_L is the first verification parameter of the left child node of electronic device Y (internal node Y). H n_R is the first verification parameter of the right child node of electronic device Y (internal node Y). ID infoY is identification information of node Y. H(H n_L , H n_R , ID infoY ) is a hash calculation for H n_L , H n_R , and the identification information of node Y. For example, vehicle 200 may perform a hash calculation on H n_201 , H n_210 , and the identification information of node 31 to obtain a hash value. The hash value is the first verification parameter of node 31, ie H n_31 .

いくつかの実施形態では、式2.3のHn_LはHi_Rによって置き換えられ得、式2.3のHn_RはHi_Rによって置き換えられ得る。 In some embodiments, H n_L in equation 2.3 may be replaced by H i_R , and H n_R in equation 2.3 may be replaced by H i_R .

ノードの識別情報の定義は、図6に示される実施形態で開示されるものと同じであり、ここでは再び説明されない。 The definition of the identity of a node is the same as that disclosed in the embodiment shown in FIG. 6 and will not be described again here.

1105:車両200がサーバ300から第1のリファレンス情報を取得する。 1105: Vehicle 200 acquires first reference information from server 300.

1106:車両200が、第1の検証情報および第1のリファレンス情報に従って14個の電子デバイスのソフトウェアセキュリティを検証する。 1106: The vehicle 200 verifies software security of the 14 electronic devices according to the first verification information and the first reference information.

ステップ1105および1106の詳細は、上述の実施形態におけるステップ605および606を参照し得、ここでは再び説明されない。 Details of steps 1105 and 1106 may refer to steps 605 and 606 in the embodiments described above and will not be described again here.

車両内の電子デバイスのソフトウェアは更新され得る。電子デバイスのうちの1つまたは複数についてのソフトウェアが更新された場合、これらの電子デバイスおよびこれらの電子デバイスに対応する電子デバイスの検証パラメータが再計算され得る。車両200を一例にとると、14個の電子デバイスのうちの2個についてのソフトウェアが更新されたと仮定する。この条件によると、2つの電子デバイスの第1の検証パラメータおよび第2の検証パラメータが再計算されるべきである。これに対応して、2つの電子デバイスの第1のリファレンスパラメータおよび第2のリファレンスパラメータも再計算され得る。第1/第2の検証パラメータ(第1/第2のリファレンスパラメータ)を再計算するための方法は、上述の実施形態で開示される第1/第2の検証パラメータ(第1/第2のリファレンスパラメータ)を計算するための方法と同じであり、ここでは再び説明されない。 Software on electronic devices within a vehicle may be updated. If the software for one or more of the electronic devices is updated, the validation parameters for these electronic devices and their corresponding electronic devices may be recalculated. Taking vehicle 200 as an example, assume that the software for 2 of the 14 electronic devices has been updated. According to this condition, the first verification parameter and the second verification parameter of the two electronic devices should be recalculated. Correspondingly, the first reference parameter and the second reference parameter of the two electronic devices may also be recalculated. The method for recalculating the first/second verification parameters (first/second reference parameters) is based on the method for recalculating the first/second verification parameters (first/second reference parameters) disclosed in the above embodiments. reference parameters) and will not be described again here.

加えて、親ノードの第1の検証パラメータがそれの子ノードの第1の検証パラメータに従って決定されるので、2つの電子デバイスの先祖ノードの第1の検証パラメータが再計算されるべきである。これに対応して、2つの電子デバイスの先祖ノードの第1のリファレンスパラメータが再計算されるべきである。 In addition, since the first validation parameter of the parent node is determined according to the first validation parameter of its child nodes, the first validation parameters of the ancestor nodes of the two electronic devices should be recalculated. Correspondingly, the first reference parameters of the ancestor nodes of the two electronic devices should be recalculated.

ツリー800を一例にとると、ノード222およびノード242(すなわち、ECU222およびECU242)に対応する電子デバイスが2つの電子デバイスであると仮定する。記載を簡単にするために、更新ソフトウェアに対応するソフトウェアパラメータは第2のソフトウェアパラメータと称される。第1のソフトウェアパラメータと同様に、電子デバイスの第2のソフトウェアパラメータは、電子デバイスの更新されたソフトウェアイメージ、電子デバイスのソフトウェアを更新するためのパッチ、または電子デバイスの更新されたソフトウェアのキーコードであり得る。 Taking tree 800 as an example, assume that the electronic devices corresponding to node 222 and node 242 (ie, ECU 222 and ECU 242) are two electronic devices. For ease of description, the software parameter corresponding to the updated software is referred to as the second software parameter. Similar to the first software parameter, the second software parameter of the electronic device may be an updated software image of the electronic device, a patch for updating the software of the electronic device, or a key code of the updated software of the electronic device. It can be.

記載を簡単にするために、第2のソフトウェアパラメータに従って決定された第2の検証パラメータは、更新された第2の検証パラメータと称される。これに対応して、更新された第2の検証パラメータに従って決定された第1の検証パラメータは、更新された第1の検証パラメータと称され、更新された第1の検証パラメータに従って決定された第1の検証パラメータも、更新された第1の検証パラメータと称される。 For ease of description, the second verification parameters determined according to the second software parameters are referred to as updated second verification parameters. Correspondingly, the first validation parameter determined according to the updated second validation parameter is referred to as the updated first validation parameter; The first verification parameter is also referred to as the updated first verification parameter.

車両200は、ノード222に対応する電子デバイスの第2のソフトウェアパラメータに従って、ノード222の更新された第2の検証パラメータを決定し得る。次いで、車両200は、ノード222の更新された第2の検証パラメータおよびノード222の識別情報に従って、ノード222の更新された第1の検証パラメータを決定する。さらに、車両200は、ノード222の更新された第1の検証パラメータ、ノード221の第1の検証パラメータ、ノード220の第2の検証パラメータ、およびノード220の識別情報に従って、ノード220の更新された第1の検証パラメータを決定する。 Vehicle 200 may determine updated second verification parameters for node 222 according to second software parameters of an electronic device corresponding to node 222. Vehicle 200 then determines the updated first verification parameter of node 222 according to the updated second verification parameter of node 222 and the identification information of node 222. Additionally, vehicle 200 detects the updated first verification parameter of node 220 according to the updated first verification parameter of node 222, the first verification parameter of node 221, the second verification parameter of node 220, and the identity information of node 220. Determine first validation parameters.

同様に、車両200は、ノード242に対応する電子デバイスの第2のソフトウェアパラメータに従って、ノード242の更新された第2の検証パラメータを決定し得る。次いで、車両200は、ノード242の更新された第2の検証パラメータおよびノード242の識別情報に従って、ノード242の更新された第1の検証パラメータを決定する。車両200は、ノード242の更新された第1の検証パラメータ、ノード241の第1の検証パラメータ、ノード240の第2の検証パラメータ、およびノード240の識別情報に従って、ノード240の更新された第1の検証パラメータを決定する。車両200は、ノード240の更新された第1の検証パラメータ、ノード230の第1の検証パラメータ、ノード210の第2の検証パラメータ、およびノード210の識別情報に従って、ノード210の更新された第1の検証パラメータを決定する。 Similarly, vehicle 200 may determine updated second verification parameters for node 242 according to second software parameters of the electronic device corresponding to node 242. Vehicle 200 then determines the updated first verification parameter of node 242 according to the updated second verification parameter of node 242 and the identification information of node 242. Vehicle 200 receives node 240's updated first verification parameter according to node 242's updated first verification parameter, node 241's first verification parameter, node 240's second verification parameter, and node 240's identification information. Determine the validation parameters for. Vehicle 200 receives node 210's updated first verification parameter according to node 240's updated first verification parameter, node 230's first verification parameter, node 210's second verification parameter, and node 210's identity. Determine the validation parameters for.

最後に、車両200は、ノード210の更新された第1の検証パラメータ、ノード220の更新された第1の検証パラメータ、ノード201の第2の検証パラメータ、およびノード201の識別情報に従って、ノード201の更新された第1の検証パラメータを決定する。 Finally, vehicle 200 detects node 201 according to the updated first verification parameters of node 210, the updated first verification parameters of node 220, the second verification parameters of node 201, and the identity of node 201. Determine updated first validation parameters for .

記載を簡単にするために、ソフトウェアが更新された電子デバイスは第1の電子デバイスと称され得、ソフトウェアが更新されていない電子デバイスは第2の電子デバイスと称され得る。これに対応して、第1の電子デバイスに対応するノードは第1のノードと称され得、第2の電子デバイスに対応するノードは第2のノードと称され得る。したがって、上述の仮定によれば、車両200は、2つの第1の電子デバイス(ECU222およびECU242)と、12個の第2の電子デバイスとを含む。これに対応して、ツリー800は、2つの第1のノードと12個の第2のノードとを含む。2つの第1のノードの先祖ノードの第1の検証パラメータが再計算される。第1/第2の検証パラメータが再計算されたノードは更新されたノードと称され得、第1の検証パラメータおよび第2の検証パラメータが再計算されなかったノードは元のノードと称され得る。 For ease of description, an electronic device with updated software may be referred to as a first electronic device, and an electronic device without updated software may be referred to as a second electronic device. Correspondingly, a node corresponding to a first electronic device may be referred to as a first node, and a node corresponding to a second electronic device may be referred to as a second node. Therefore, according to the above assumption, vehicle 200 includes two first electronic devices (ECU 222 and ECU 242) and twelve second electronic devices. Correspondingly, tree 800 includes two first nodes and twelve second nodes. The first validation parameters of the two ancestor nodes of the first node are recalculated. Nodes for which the first/second validation parameters have been recalculated may be referred to as updated nodes, and nodes for which the first and second validation parameters have not been recalculated may be referred to as original nodes. .

図13は、ソフトウェア更新後の車両200に対応するツリーを示している。 FIG. 13 shows a tree corresponding to vehicle 200 after software update.

図13に示されるツリー800'を参照すると、ツリー800'は6つの更新されたノードを含む。 Referring to the tree 800' shown in FIG. 13, the tree 800' includes six updated nodes.

車両200は、第2の検証情報を決定し得る。 Vehicle 200 may determine second verification information.

いくつかの実施形態では、第2の検証情報は、更新指示、更新された第2の検証パラメータ、および更新された第1の検証パラメータを含み得る。更新指示は、第2の電子デバイス(または元のノード)を示すために使用される。 In some embodiments, the second verification information may include update instructions, updated second verification parameters, and updated first verification parameters. The update instructions are used to indicate the second electronic device (or original node).

上述の仮定によれば、更新指示は、ノード230およびそれの子ノード、ノード241およびそれの子ノード、ノード221およびそれの子ノードを示すために使用される。第2の検証情報は、2つの第2の検証パラメータ(ノード242およびノード222の更新された第2の検証パラメータ)と、6つの第1の検証パラメータ(ノード242、ノード240、ノード210、ノード222、ノード220、およびノード201の更新された第1の検証パラメータ)とを含む。 According to the above assumptions, update instructions are used to indicate node 230 and its child nodes, node 241 and its child nodes, node 221 and its child nodes. The second validation information includes two second validation parameters (updated second validation parameters for node 242 and node 222) and six first validation parameters (node 242, node 240, node 210, node 222, node 220, and updated first validation parameters of node 201).

いくつかの実施形態では、ノードおよびそれの子孫ノードのすべてが元のノードである場合、更新指示は、ノードの識別情報またはノードに対応する電子デバイスの識別情報を含み得る。例えば、更新指示は、ノード221、ノード241、およびノード230の識別情報を含み得る。いくつかの実施形態では、更新指示は、元のノードのそれぞれについての識別情報または第2の電子デバイスのそれぞれについての識別情報を含み得る。 In some embodiments, if the node and all of its descendant nodes are the original node, the update instructions may include the identity of the node or the identity of the electronic device corresponding to the node. For example, the update instructions may include identification information for node 221, node 241, and node 230. In some embodiments, the update instructions may include identification information for each of the original nodes or identification information for each of the second electronic devices.

いくつかの実施形態では、第2の検証情報は、車両200に対応するツリーの各ノードの第1の検証パラメータおよび第2の検証パラメータを含み得る。ツリー800を一例にとると、第2の検証情報は、14個の第1の検証パラメータおよび14個の第2の検証パラメータを含む。14個の第1の検証パラメータは、更新されたノードの第1の検証パラメータおよび元のノードの第1の検証パラメータを含む。同様に、14個の第2の検証パラメータは、更新されたノードの第2の検証パラメータおよび元のノードの第2の検証パラメータを含む。 In some embodiments, the second verification information may include a first verification parameter and a second verification parameter for each node of the tree corresponding to vehicle 200. Taking tree 800 as an example, the second verification information includes 14 first verification parameters and 14 second verification parameters. The 14 first validation parameters include the first validation parameter of the updated node and the first validation parameter of the original node. Similarly, the 14 second validation parameters include the second validation parameters of the updated node and the second validation parameters of the original node.

いくつかの実施形態では、第1の検証情報はタイムスタンプをさらに含み得る。タイムスタンプは、第1の検証情報の完成時刻を示すために使用される。車両200は、第1の検証パラメータおよび第2の検証パラメータを決定した後に時刻を控え得る。この時刻が第1の検証情報の完成時刻である。 In some embodiments, the first verification information may further include a timestamp. The timestamp is used to indicate the time of completion of the first verification information. Vehicle 200 may note the time after determining the first verification parameter and the second verification parameter. This time is the completion time of the first verification information.

同様に、第2の検証情報は、第2の検証情報の完成時刻を示すために使用されるタイムスタンプをさらに含み得る。 Similarly, the second verification information may further include a timestamp used to indicate the time of completion of the second verification information.

上述の実施形態は、本出願の方法が車両200または車両200のコンポーネントによって実行されるという仮定に基づいている。上述されるように、本出願の方法は、サーバまたはサーバのコンポーネントによっても実行され得る。本出願の方法がサーバまたはサーバのコンポーネントによって実行される場合、車両は、電子デバイスのソフトウェアパラメータまたは電子デバイスの第2の検証パラメータをサーバに送信し得る。簡潔にするために、ソフトウェアパラメータまたは第2の検証パラメータを搬送するメッセージは、検証メッセージと称され得る。 The embodiments described above are based on the assumption that the method of the present application is performed by the vehicle 200 or a component of the vehicle 200. As mentioned above, the methods of the present application may also be performed by a server or a component of a server. If the method of the present application is performed by a server or a component of a server, the vehicle may send software parameters of the electronic device or second verification parameters of the electronic device to the server. For brevity, messages carrying software parameters or second verification parameters may be referred to as verification messages.

いくつかの実施形態では、検証メッセージは、秘密鍵/公開鍵のペアを使用して保護され得る。例えば、車両200は、検証メッセージを暗号化するために公開鍵を使用し得、暗号化された検証メッセージをサーバ300に送信する。サーバ300は、第2の検証パラメータのソフトウェアパラメータを取得するために、公開鍵に対応する秘密鍵を使用して、受信された検証メッセージを復号し得る。 In some embodiments, the verification message may be protected using a private/public key pair. For example, vehicle 200 may use the public key to encrypt the verification message and send the encrypted verification message to server 300. Server 300 may decrypt the received verification message using the private key corresponding to the public key to obtain the software parameters of the second verification parameter.

上述の実施形態で示されるVVTおよびGVTは、車両の、電子デバイスの実際の内部ネットワークを示す。例えば、図4に示されるVVTおよび図5に示されるGVTは、電子デバイスの実際の接続関係(すなわち、図2に示される接続関係)を示す。いくつかの実施形態では、VVTおよびGVTは、HBBTまたはマークルツリーに変換され得る。 The VVT and GVT shown in the above embodiments represent the actual internal network of electronic devices of the vehicle. For example, the VVT shown in FIG. 4 and the GVT shown in FIG. 5 represent the actual connection relationships of electronic devices (ie, the connection relationships shown in FIG. 2). In some embodiments, VVT and GVT may be converted to HBBT or Merkle trees.

任意選択で、いくつかの実施形態では、サーバ300は、車両200のVVTおよび車両200に対応する車種のGVTを管理するためにブロックチェーンを使用し得る。上述のように、車両200内の1つまたは複数の電子デバイスのソフトウェアが更新された場合、VVTおよびGVTはそれに対応して更新され得る。記載を簡単にするために、VVT/GVTおよび更新されたVVT/GVTを記載するためにバージョン番号が使用される。例えば、VVTv2は更新されたVVTv1であり、VVTv3は更新されたVVTv2である、などである。同様に、GVTv2は更新されたGVTv1であり、GVTv3は更新されたGVTv2である、などである。VVTを管理するための方法は、GVTを管理するための方法と同じである。 Optionally, in some embodiments, server 300 may use a blockchain to manage the VVT of vehicle 200 and the GVT of the vehicle type corresponding to vehicle 200. As mentioned above, if the software of one or more electronic devices within vehicle 200 is updated, the VVT and GVT may be updated accordingly. For ease of description, version numbers are used to describe VVT/GVT and updated VVT/GVT. For example, VVTv2 is an updated VVTv1, VVTv3 is an updated VVTv2, and so on. Similarly, GVTv2 is an updated GVTv1, GVTv3 is an updated GVTv2, and so on. The method for managing VVT is the same as the method for managing GVT.

サーバ300は、VVTバージョンごとにブロックを記憶し得る。例えば、車両200は、VVTv1に対応するブロック1、VVTv2に対応するブロック2、VVTv3に対応するブロック3などを記憶し得る。 Server 300 may store blocks for each VVT version. For example, vehicle 200 may store block 1 corresponding to VVTv1, block 2 corresponding to VVTv2, block 3 corresponding to VVTv3, etc.

VVTに対応するブロックは、以下の情報、すなわち、対応するVVTのVVT情報のハッシュ値、タイムスタンプ、および前のブロックのハッシュ値を含み得る。タイムスタンプは、ブロックを記憶した時刻を示すために使用される。最初のブロックについては、前のブロックのハッシュ値は予め設定された値とし得る。加えて、ブロックは、対応するVVTの構造情報をさらに含み得、構造情報は、VVTのノードの接続関係を示すために使用される。 A block corresponding to a VVT may include the following information: a hash value of the VVT information of the corresponding VVT, a timestamp, and a hash value of the previous block. The timestamp is used to indicate the time the block was stored. For the first block, the hash value of the previous block may be a preset value. In addition, the block may further include structural information of the corresponding VVT, and the structural information is used to indicate the connection relationship of the nodes of the VVT.

例えば、VVTv1は最初のVVTである。図8に示されるツリー800はVVTv1である。ブロック1は、ツリー800の構造、VVTv1のVVT情報のハッシュ値、ブロック1を記憶した時刻を示すタイムスタンプ、および前のブロックのハッシュ値(予め設定された値)を含み得る。 For example, VVTv1 is the first VVT. The tree 800 shown in FIG. 8 is VVTv1. Block 1 may include the structure of tree 800, a hash value of the VVT information of VVTv1, a timestamp indicating the time when block 1 was stored, and a hash value (preset value) of the previous block.

いくつかの実施形態では、VVTv1のVVT情報は、VVTv1に従って決定され得る。サーバ300は、VVTv1に対応するソフトウェア統計値情報(以下、M1)を決定し得る。M={連結ノードファイル||Tv}。VVTv1に対応する電子デバイスのソフトウェア情報が、図4に示されるソフトウェア情報であると仮定する。したがって、M1={[MFR_AA,0x01:V4]||[MFR_BB,0x02:V3]||[MFR_CC,0x03:V6]||[MFR_DD,0x001:V2]||[MFR_EE,0x002:V2]||[MFR_FF,0x003:V4]||[MFR_GG,0x04:V3]||[MFR_HH,0x004:V3]||[MFR_II,0x005:V3]||[MFR_JJ,0x05:V5]||[MFR_KK,0x005:V5]||[MFR_LL,0x007:V2]||[MFR_MM,0x008:V6]||[MFR_N,0x009:V4]||Tv}であり、図5に示されるツリーV2に従って決定されるVVT情報Mは{[MFR_BB,0x02:V3]||[MFR_CC,0x03:V6]||[MFR_EE,0x002:V2]||[MFR_JJ,0x05:V5]||[MFR_MM,0x008:V6]||Tv}であり、Tvはタイムスタンプであり、タイムスタンプはVVTv1を記憶した時刻を示すために使用される。言い換えれば、タイムスタンプは、ソフトウェア統計値情報の一部である。いくつかの他の実施形態では、ソフトウェア統計値情報はタイムスタンプを含まないものとし得る。 In some embodiments, VVTv1's VVT information may be determined according to VVTv1. Server 300 may determine software statistics information (hereinafter referred to as M 1 ) corresponding to VVTv1. M = {connected node file | | Tv}. It is assumed that the software information of the electronic device that supports VVTv1 is the software information shown in FIG. Therefore, M 1 = {[MFR_AA, 0x01:V4] | | [MFR_BB, 0x02: V3] | | [MFR_CC, 0x03: V6] | | [MFR_DD, 0x001: V2] | | [MFR_EE, 0x002: V2] | | [MFR_FF, 0x003: V4] | | [MFR_GG, 0x04: V3] | | [MFR_HH, 0x004: V3] | | [MFR_II, 0x005: V3] | | [MFR_JJ, 0x05: V5] | | [MFR_KK, 0x005 :V5] | | [MFR_LL, 0x007:V2] | | [MFR_MM, 0x008: V6] | | [MFR_N, 0x009: V4] | | | Tv}, and the VVT information is determined according to the tree V2 shown in Figure 5. M is {[MFR_BB, 0x02:V3] | | [MFR_CC, 0x03: V6] | | [MFR_EE, 0x002: V2] | | [MFR_JJ, 0x05: V5] | | [MFR_MM, 0x008: V6] | | Tv} , Tv is a timestamp, and the timestamp is used to indicate the time when VVTv1 was stored. In other words, the timestamp is part of the software statistics information. In some other embodiments, the software statistics information may not include a timestamp.

いくつかの実施形態では、ソフトウェア統計値情報はVVT情報として使用され得る。いくつかの他の実施形態では、VVT情報は、ソフトウェア統計値情報およびサーバ300の秘密鍵に従って決定され得る。詳細には、VVT情報は、以下の式に従って決定され得る。
S=E(M,Kpriv) (式3.1)
In some embodiments, software statistics information may be used as VVT information. In some other embodiments, VVT information may be determined according to software statistics information and the server's 300 private key. In detail, VVT information may be determined according to the following formula.
S=E(M,K priv ) (Formula 3.1)

SはVVT情報であり、Mはソフトウェア統計値情報であり、Kprivはサーバの秘密鍵である。 S is VVT information, M is software statistics information, and K priv is the server's private key.

いくつかの実施形態では、最初のVVTに対応するブロックの構造情報は、最初のVVTのノードの完全な接続関係を含み得る。他のVVTに対応するブロックの構造情報は、修正されたツリー構造および未修正の指示情報を含み得、未修正の指示情報は、ツリーの未修正の部分を示すために使用される。例えば、VVTv1は最初のVVTである。したがって、ブロック1の構造情報は図8に示されるツリーを含み得、ブロック2の構造情報は図13に示されるツリーおよび対応する未修正の指示情報を含み得る。 In some embodiments, the structural information of the block corresponding to the first VVT may include the complete connectivity relationships of the nodes of the first VVT. The structure information of blocks corresponding to other VVTs may include a modified tree structure and unmodified instruction information, where the unmodified instruction information is used to indicate an unmodified portion of the tree. For example, VVTv1 is the first VVT. Accordingly, the structural information for block 1 may include the tree shown in FIG. 8, and the structural information for block 2 may include the tree shown in FIG. 13 and corresponding unmodified instruction information.

図14は、VVTのブロックチェーンの一部を示している。図14は、VVTのブロックチェーン内の3つのブロックを示している。 Figure 14 shows part of the VVT blockchain. Figure 14 shows three blocks in the VVT blockchain.

図14を参照すると、ブロック1は、VVT、H(M1)、H(Block0)、およびTv0の全体を含む。H(M1)は、M1のハッシュ値である。H(Block0)は予め設定された値であり、Tv1は、ブロック1を記憶した時刻を示すタイムスタンプである。ブロック2は、一部分のVVTおよび未修正の指示情報(ブロック2内で示される矢印によって示される)、H(M2)、H(Block1)およびTv2を含む。H(M2)は、M2のハッシュ値である。H(Block1)はブロック1のハッシュ値、Tv2はブロック2を記憶した時刻を示すタイムスタンプである。ブロック3は、一部分のVVTおよび未修正の指示情報(ブロック3内で示される矢印によって示される)、H(M3)、H(Block2)およびTv3を含む。H(M3)は、M3のハッシュ値である。H(Block2)はブロック2のハッシュ値、Tv3はブロック3を記憶した時刻を示すタイムスタンプである。 Referring to FIG. 14, Block 1 includes the entirety of VVT, H(M 1 ), H(Block 0 ), and Tv 0 . H(M 1 ) is the hash value of M 1 . H (Block 0 ) is a preset value, and Tv 1 is a timestamp indicating the time when block 1 was stored. Block 2 includes a portion of VVT and unmodified instruction information (indicated by the arrow shown within block 2), H( M2 ), H(Block 1 ) and Tv2 . H(M 2 ) is the hash value of M 2 . H (Block 1 ) is the hash value of block 1, and Tv 2 is a timestamp indicating the time when block 2 was stored. Block 3 includes a portion of VVT and unmodified instruction information (indicated by the arrow shown within block 3), H (M 3 ), H (Block 2 ) and Tv 3 . H(M 3 ) is the hash value of M 3 . H (Block 2 ) is the hash value of block 2, and Tv 3 is a timestamp indicating the time when block 3 was stored.

図15は、車両内の電子デバイスのソフトウェアバージョンを検証するための方法の実施形態のフローチャートである。 FIG. 15 is a flowchart of an embodiment of a method for verifying a software version of an electronic device in a vehicle.

1501:コンピューティングデバイスがN個の第1の検証パラメータを取得し得、N個の第1の検証パラメータは、車両内のN個の電子デバイスと一対一に対応し、N個の第1の検証パラメータのi番目の第1の検証パラメータは、N個の電子デバイスのi番目の電子デバイスのソフトウェアイメージに従って決定され、Nは1よりも大きい正の整数である。 1501: The computing device may obtain N first verification parameters, the N first verification parameters having a one-to-one correspondence with the N electronic devices in the vehicle, and the N first verification parameters having a one-to-one correspondence with the N first verification parameters. The i-th first verification parameter of the verification parameters is determined according to the software image of the i-th electronic device of the N electronic devices, where N is a positive integer greater than 1.

コンピューティングデバイスは、車両、車両のコンポーネント、サーバ、またはサーバのコンポーネントであり得る。 The computing device may be a vehicle, a component of a vehicle, a server, or a component of a server.

1502:コンピューティングデバイスが、N個の第1の検証パラメータに従って、第1のノードに対応する第1の検証パラメータを決定し得、第1のノードはN個の電子デバイスの親ノードである。 1502: The computing device may determine a first verification parameter corresponding to a first node according to N first verification parameters, the first node being a parent node of the N electronic devices.

1503:コンピューティングデバイスが、トラステッドデバイスから第1のノードに対応する第1のリファレンスパラメータを取得し得る。 1503: The computing device may obtain a first reference parameter corresponding to the first node from the trusted device.

1504:コンピューティングデバイスが、第1のノードに対応する第1の検証パラメータおよび第1のノードに対応する第1のリファレンスパラメータに従って、N個の電子デバイスのソフトウェアセキュリティを検証し得る。
任意選択で、いくつかの実施形態では、方法は、コンピューティングデバイスが、N個の第2の検証パラメータを取得し得、N個の第2の検証パラメータがN個の電子デバイスと一対一に対応し、N個の第2の検証パラメータのi番目の第2の検証パラメータが、N個の電子デバイスのi番目の電子デバイスのソフトウェアイメージに従って決定される、ことをさらに含み得、コンピューティングデバイスがN個の第1の検証パラメータを取得することは、コンピューティングデバイスがN個の第2の検証パラメータのi番目の第2の検証パラメータおよびN個の電子デバイスのi番目の電子デバイスの識別情報に従って、N個の第1の検証パラメータのi番目の第1の検証パラメータを決定し得、i=1,…,Nである、ことを含む。
1504: The computing device may verify software security of the N electronic devices according to a first verification parameter corresponding to the first node and a first reference parameter corresponding to the first node.
Optionally, in some embodiments, the method may include the computing device obtaining N second verification parameters, the N second verification parameters one-on-one with the N electronic devices. Correspondingly, the i-th second verification parameter of the N second verification parameters may be determined according to a software image of the i-th electronic device of the N electronic devices, the computing device Obtaining N first verification parameters means that the computing device obtains the i-th second verification parameter of N second verification parameters and the identification of the i-th electronic device of N electronic devices. An i-th first verification parameter of the N first verification parameters may be determined according to the information, including: i=1,...,N.

任意選択で、いくつかの実施形態では、方法は、コンピューティングデバイスがトラステッドデバイスからN個の第2のリファレンスパラメータを取得し得、N個の第2のリファレンスパラメータがN個の電子デバイスと一対一に対応する、ことをさらに含み得る。コンピューティングデバイスは、N個の第2の検証パラメータのi番目の第2の検証パラメータおよびN個の第2のリファレンスパラメータのi番目の第2のリファレンスパラメータに従って、N個の電子デバイスのi番目の電子デバイスのソフトウェアセキュリティを検証し得る。 Optionally, in some embodiments, the method may include the computing device obtaining N second reference parameters from the trusted device, and pairing the N second reference parameters with the N electronic devices. may further include corresponding to one. The computing device determines the i-th of the N electronic devices according to the i-th second verification parameter of the N second verification parameters and the i-th second reference parameter of the N second reference parameters. can verify the software security of electronic devices.

任意選択で、いくつかの実施形態では、方法は、コンピューティングデバイスがM個の電子デバイスに対応するツリーを決定し得、ツリーがM個のノードを含み、M個のノードが車両内のM個の電子デバイスと一対一に対応し、M個の電子デバイスがN個の電子デバイスを含み、MがNよりも大きい正の整数である、こと、ツリー内のM個のノードの接続関係に基づいて、第1のノードがN個の電子デバイスの親ノードであると決定し得る、ことをさらに含み得る。 Optionally, in some embodiments, the method may determine a tree in which the computing device corresponds to M electronic devices, the tree includes M nodes, and the M nodes correspond to M electronic devices in the vehicle. M electronic devices have a one-to-one correspondence with N electronic devices, M is a positive integer greater than N, and the connection relationship of M nodes in the tree is The first node may be determined to be a parent node of the N electronic devices based on the N electronic devices.

任意選択で、いくつかの実施形態では、ツリーのM個のノードの接続関係と、車両内のM個の電子デバイスの接続関係とが同じである。 Optionally, in some embodiments, the connectivity of the M nodes of the tree and the connectivity of the M electronic devices in the vehicle are the same.

任意選択で、いくつかの実施形態では、ツリーが、車両に対応する高さ平衡バイナリツリーである。 Optionally, in some embodiments, the tree is a height balanced binary tree corresponding to a vehicle.

任意選択で、いくつかの実施形態では、ツリーが完全平衡バイナリツリーであり、M個のノードがツリーの葉ノードであり、ツリーがK個の非葉ノードをさらに含み、Kが1よりも大きい正の整数である。 Optionally, in some embodiments, the tree is a fully balanced binary tree, the M nodes are leaf nodes of the tree, and the tree further includes K non-leaf nodes, where K is greater than 1. It is a positive integer.

任意選択で、いくつかの実施形態では、コンピューティングデバイスは、第1のブロックを決定および記憶し得、第1のブロックはツリーに対応し、第1のブロックは第1の構造情報を含み、第1の構造情報はツリーのノードの接続関係を示すために使用される。コンピューティングデバイスは第2のブロックを決定および記憶し得、第2のブロックが第2の構造情報を含み、第2の構造情報が、未修正の指示情報および修正された指示情報を含み、未修正の指示情報が、未更新のノードを示すために使用され、修正された指示情報が、更新されたノードの接続関係を示すために使用され、未更新のノードのそれぞれに対応する第1の検証パラメータおよび第2の検証パラメータは更新されておらず、更新されたノードのそれぞれに対応する第1の検証パラメータまたは第2の検証パラメータは更新されている。 Optionally, in some embodiments, the computing device may determine and store a first block, the first block corresponding to a tree, the first block including first structural information, The first structure information is used to indicate the connectivity of the nodes of the tree. The computing device may determine and store a second block, the second block including second structural information, the second structural information including unmodified instructional information and modified instructional information, and wherein the second block includes unmodified instructional information and modified instructional information. The modification instruction information is used to indicate an unupdated node, the modified instruction information is used to indicate a connection relationship of the updated nodes, and the first The validation parameter and the second validation parameter have not been updated, and the first validation parameter or the second validation parameter corresponding to each of the updated nodes has been updated.

任意選択で、いくつかの実施形態では、第1のブロックは、第1のブロックを記憶した時刻を示すタイムスタンプと、M個の電子デバイスに対応するソフトウェア情報とをさらに含む。第2のブロックは、第2のブロックを記憶した時刻を示すタイムスタンプと、更新された電子デバイスに対応するソフトウェア情報とをさらに含む。 Optionally, in some embodiments, the first block further includes a timestamp indicating the time the first block was stored and software information corresponding to the M electronic devices. The second block further includes a timestamp indicating the time the second block was stored and software information corresponding to the updated electronic device.

図16は、本出願の一実施形態に係るコンピューティングデバイス1600の概略ブロック図である。図16に示されるように、コンピューティングデバイス1600は、取得モジュール1601と、決定モジュール1602とを含む。 FIG. 16 is a schematic block diagram of a computing device 1600 according to one embodiment of the present application. As shown in FIG. 16, computing device 1600 includes an acquisition module 1601 and a determination module 1602.

取得モジュール1601は、N個の第1の検証パラメータを取得し、N個の第1の検証パラメータは、車両内のN個の電子デバイスと一対一に対応し、N個の第1の検証パラメータのi番目の第1の検証パラメータは、N個の電子デバイスのi番目の電子デバイスのソフトウェアイメージに従って決定され、Nは1よりも大きい正の整数である、ように構成される。 The acquisition module 1601 acquires N first verification parameters, the N first verification parameters have a one-to-one correspondence with the N electronic devices in the vehicle, and the N first verification parameters have a one-to-one correspondence with the N electronic devices in the vehicle. The i-th first verification parameter of is determined according to the software image of the i-th electronic device of N electronic devices, where N is a positive integer greater than one.

決定モジュール1602は、N個の第1の検証パラメータに従って、第1のノードに対応する第1の検証パラメータを決定し、第1のノードはN個の電子デバイスの親ノードである、ように構成される。 The determination module 1602 is configured to determine a first verification parameter corresponding to the first node according to the N first verification parameters, the first node being a parent node of the N electronic devices. be done.

取得モジュール1601は、トラステッドデバイスから第1のノードに対応する第1のリファレンスパラメータを取得するようにさらに構成される。 The acquisition module 1601 is further configured to acquire a first reference parameter corresponding to the first node from the trusted device.

決定モジュール1602は、第1のノードに対応する第1の検証パラメータおよび第1のノードに対応する第1のリファレンスパラメータに従って、N個の電子デバイスのソフトウェアセキュリティを検証するようにさらに構成される。 The determination module 1602 is further configured to verify software security of the N electronic devices according to a first verification parameter corresponding to the first node and a first reference parameter corresponding to the first node.

任意選択で、コンピューティングデバイス1600は、車両、車両のコンポーネント、サーバ、またはサーバのコンポーネントであり得る。 Optionally, computing device 1600 may be a vehicle, a component of a vehicle, a server, or a component of a server.

任意選択で、いくつかの実施形態では、取得モジュール1601は、N個の第2の検証パラメータを取得し、N個の第2の検証パラメータがN個の電子デバイスと一対一に対応し、N個の第2の検証パラメータのi番目の第2の検証パラメータが、N個の電子デバイスのi番目の電子デバイスのソフトウェアイメージに従って決定される、ようにさらに構成され、取得モジュール1601は、N個の第2の検証パラメータのi番目の第2の検証パラメータおよびN個の電子デバイスのi番目の電子デバイスの識別情報に従って、N個の第1の検証パラメータのi番目の第1の検証パラメータを決定し、i=1,…,Nである、ように特に構成される。 Optionally, in some embodiments, the acquisition module 1601 acquires N second verification parameters, where the N second verification parameters have a one-to-one correspondence with the N electronic devices; The acquisition module 1601 is further configured such that the i-th second verification parameters of the N electronic devices are determined according to the software image of the i-th electronic device of the N electronic devices. the i-th second verification parameter of the N electronic devices according to the i-th second verification parameter of the N electronic devices and the i-th first verification parameter of the N electronic devices; is specifically configured such that i=1,...,N.

任意選択で、いくつかの実施形態では、取得モジュール1601は、トラステッドデバイスからN個の第2のリファレンスパラメータを取得し、前記N個の第2のリファレンスパラメータがN個の電子デバイスと一対一に対応する、ようにさらに構成され、決定モジュール1602は、N個の第2の検証パラメータのi番目の第2の検証パラメータおよびN個の第2のリファレンスパラメータのi番目の第2のリファレンスパラメータに従って、N個の電子デバイスのi番目の電子デバイスのソフトウェアセキュリティを検証するようにさらに構成される。 Optionally, in some embodiments, the acquisition module 1601 acquires N second reference parameters from the trusted device, and the N second reference parameters are one-to-one with the N electronic devices. Correspondingly, the determination module 1602 is further configured to determine the i-th second verification parameter of the N second verification parameters and the i-th second reference parameter of the N second reference parameters. , further configured to verify software security of the i-th electronic device of the N electronic devices.

任意選択で、いくつかの実施形態では、決定モジュール1602は、M個の電子デバイスに対応するツリーを決定し、ツリーがM個のノードを含み、M個のノードが車両内のM個の電子デバイスと一対一に対応し、M個の電子デバイスがN個の電子デバイスを含み、MがNよりも大きい正の整数である、ようにさらに構成され、ツリー内のM個のノードの接続関係に基づいて、第1のノードがN個の電子デバイスの親ノードであると決定するようにさらに構成される。 Optionally, in some embodiments, the determination module 1602 determines a tree corresponding to the M electronic devices, the tree includes M nodes, and the M nodes correspond to the M electronic devices in the vehicle. The connection relationship of the M nodes in the tree is further configured such that there is a one-to-one correspondence with the devices, the M electronic devices include N electronic devices, and M is a positive integer greater than N. The first node is further configured to determine that the first node is a parent node of the N electronic devices based on the N electronic devices.

任意選択で、いくつかの実施形態では、ツリーのM個のノードの接続関係と、車両内のM個の電子デバイスの接続関係とが同じである。 Optionally, in some embodiments, the connectivity of the M nodes of the tree and the connectivity of the M electronic devices in the vehicle are the same.

任意選択で、いくつかの実施形態では、ツリーが、車両に対応する高さ平衡バイナリツリーである。 Optionally, in some embodiments, the tree is a height balanced binary tree corresponding to a vehicle.

任意選択で、いくつかの実施形態では、ツリーが完全平衡バイナリツリーであり、M個のノードがツリーの葉ノードであり、ツリーがK個の非葉ノードをさらに含み、Kが1よりも大きい正の整数である。 Optionally, in some embodiments, the tree is a fully balanced binary tree, the M nodes are leaf nodes of the tree, and the tree further includes K non-leaf nodes, where K is greater than 1. It is a positive integer.

任意選択で、いくつかの実施形態では、決定モジュール1602は、第1のブロックを決定し、第1のブロックがツリーに対応し、第1のブロックが第1の構造情報を含み、第1の構造情報がツリーのノードの接続関係を示すために使用される、ようにさらに構成され、第2のブロックを決定し、第2のブロックが第2の構造情報を含み、第2の構造情報が、未修正の指示情報および修正された指示情報を含み、未修正の指示情報が、未更新のノードを示すために使用され、修正された指示情報が、更新されたノードの接続関係を示すために使用され、未更新のノードのそれぞれに対応する第1の検証パラメータおよび第2の検証パラメータは更新されておらず、更新されたノードのそれぞれに対応する第1の検証パラメータまたは第2の検証パラメータは更新されている、ようにさらに構成される。 Optionally, in some embodiments, the determination module 1602 determines a first block, the first block corresponds to a tree, the first block includes first structural information, and the first block determining a second block further configured such that the structural information is used to indicate the connection relationship of the nodes of the tree, the second block includes the second structural information, and the second structural information is , including unmodified instruction information and modified instruction information, where the unmodified instruction information is used to indicate an unupdated node, and the modified instruction information is used to indicate an updated connection relationship of the nodes. , the first validation parameter and the second validation parameter corresponding to each of the nodes that have not been updated are used, and the first validation parameter or the second validation parameter corresponding to each of the updated nodes The parameters have been updated and further configured as such.

任意選択で、いくつかの実施形態では、第1のブロックが、第1のブロックを記憶した時刻を示すタイムスタンプと、M個の電子デバイスに対応するソフトウェア情報とをさらに含み、第2のブロックが、第2のブロックを記憶した時刻を示すタイムスタンプと、更新された電子デバイスに対応するソフトウェア情報とをさらに含む。 Optionally, in some embodiments, the first block further includes a timestamp indicating the time the first block was stored and software information corresponding to the M electronic devices; further includes a timestamp indicating the time the second block was stored, and software information corresponding to the updated electronic device.

本出願のこの実施形態におけるコンピューティングデバイス1600は、前述の実施形態におけるサーバまたは車両に対応し得、サーバまたは車両内のモジュールの上記および他の管理動作および/または機能は、前述の方法の、対応するステップを実施するために別々に使用されることを理解されたい。簡潔にするため、詳細はここでは再び説明されない。 The computing device 1600 in this embodiment of the present application may correspond to the server or vehicle in the embodiments described above, and the above and other management operations and/or functions of modules within the server or vehicle may be performed in the manner described above. It should be understood that they are used separately to implement the corresponding steps. For the sake of brevity, the details will not be described again here.

図17に示されるように、コンピューティングデバイス1700は、トランシーバ1701と、プロセッサ1702と、メモリ1703とを含み得る。メモリ1703は、プロセッサ1702によって実行されるコード、命令などを記憶するように構成され得る。 As shown in FIG. 17, computing device 1700 may include a transceiver 1701, a processor 1702, and memory 1703. Memory 1703 may be configured to store code, instructions, etc. that are executed by processor 1702.

プロセッサ1702は集積回路チップであり得、信号処理能力を有することを理解されたい。実施プロセスでは、前述の方法の実施形態のステップは、プロセッサ内のハードウェア集積論理回路を使用して、またはソフトウェアの形態での命令を使用して完了され得る。プロセッサは、汎用プロセッサ、デジタル信号プロセッサ(Digital Signal Processor、DSP)、特定用途向け集積回路(Application Specific Integrated Circuit、ASIC)、フィールド・プログラマブル・ゲート・アレイ(Field Programmable Gate Array、FPGA)もしくは別のプログラマブル論理デバイス、ディスクリートのゲートもしくはトランジスタ論理デバイス、またはディスクリートのハードウェアコンポーネントであり得る。プロセッサは、本発明の実施形態に開示される方法、ステップ、および論理ブロック図を実施または実行し得る。汎用プロセッサはマイクロプロセッサであり得るか、またはプロセッサは任意の従来のプロセッサなどであり得る。本発明の実施形態を参照しつつ開示される方法のステップは、ハードウェア復号プロセッサによって直接実行および完了され得るか、または復号プロセッサ内のハードウェアとソフトウェアモジュールとの組合せを使用して実行および完了され得る。ソフトウェアモジュールは、ランダム・アクセス・メモリ、フラッシュメモリ、読み出し専用メモリ、プログラマブル読み出し専用メモリ、電気的消去可能プログラマブルメモリ、またはレジスタなど、当技術の成熟した記憶媒体に配置され得る。記憶媒体はメモリ内に配置され、プロセッサはメモリ内の情報を読み出し、プロセッサ内のハードウェアと組み合わせて前述の方法のステップを完了する。 It is understood that processor 1702 can be an integrated circuit chip and has signal processing capabilities. In an implementation process, the steps of the method embodiments described above may be completed using hardware integrated logic within a processor or using instructions in the form of software. A processor may be a general purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), or another programmable It can be a logic device, a discrete gate or transistor logic device, or a discrete hardware component. A processor may implement or execute the methods, steps, and logical block diagrams disclosed in embodiments of the invention. A general purpose processor may be a microprocessor, the processor may be any conventional processor, and the like. The steps of the methods disclosed with reference to embodiments of the present invention may be performed and completed directly by a hardware decoding processor or using a combination of hardware and software modules within the decoding processor. can be done. Software modules may be located in state-of-the-art storage media, such as random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, or registers. The storage medium is disposed within the memory and the processor reads the information within the memory and in conjunction with hardware within the processor completes the steps of the method described above.

本発明の実施形態におけるメモリ1703は、揮発性メモリまたは不揮発性メモリであり得るか、または揮発性メモリおよび不揮発性メモリの両方を含み得ることが理解されよう。不揮発性メモリは、読み出し専用メモリ(Read-Only Memory、ROM)、プログラマブル読み出し専用メモリ(Programmable ROM、PROM)、消去可能プログラマブル読み出し専用メモリ(Erasable PROM、EPROM)、電気的消去可能プログラマブル読み出し専用メモリ(Electrically EPROM、EEPROM)、またはフラッシュメモリであり得る。揮発性メモリはランダム・アクセス・メモリ(Random Access Memory、RAM)であり得、外部キャッシュとして使用される。限定よりもむしろ例示として、多くの形態のRAMが使用され得、例えば、スタティック・ランダム・アクセス・メモリ(Static RAM、SRAM)、ダイナミック・ランダム・アクセス・メモリ(Dynamic RAM、DRAM)、シンクロナス・ダイナミック・ランダム・アクセス・メモリ(Synchronous DRAM、SDRAM)、ダブル・データ・レート・シンクロナス・ダイナミック・ランダム・アクセス・メモリ(Double Data Rate SDRAM、DDR SDRAM)、拡張シンクロナス・ダイナミック・ランダム・アクセス・メモリ(Enhanced SDRAM、ESDRAM)、シンクロナス・リンク・ダイナミック・ランダム・アクセス・メモリ(Synchronous link DRAM、SLDRAM)、および、ダイレクト・ラムバス・ランダム・アクセス・メモリ(Direct Rambus RAM、DR RAM)である。 It will be appreciated that memory 1703 in embodiments of the invention may be volatile or non-volatile memory, or may include both volatile and non-volatile memory. Non-volatile memory includes read-only memory (ROM), programmable read-only memory (Programmable ROM, PROM), erasable programmable read-only memory (Erasable PROM, EPROM), and electrically erasable programmable read-only memory (EPROM). Electrically EPROM, EEPROM) or flash memory. Volatile memory may be Random Access Memory (RAM) and is used as an external cache. By way of example rather than limitation, many forms of RAM may be used, such as static random access memory (Static RAM, SRAM), dynamic random access memory (Dynamic RAM, DRAM), synchronous RAM, etc. Dynamic Random Access Memory (Synchronous DRAM, SDRAM), Double Data Rate Synchronous Dynamic Random Access Memory (DDR SDRAM), Enhanced Synchronous Dynamic Random Access Memory (DDR SDRAM) Memory (Enhanced SDRAM, ESDRAM), Synchronous Link Dynamic Random Access Memory (Synchronous Link DRAM, SLDRAM), and Direct Rambus Random Access Memory (Direct Rambus RAM, DR RAM).

本明細書に記載のシステムおよび方法におけるメモリは、これらのメモリ、および任意の他の適切なタイプのメモリを含むがこれらに限定されないことに留意されたい。 Note that memory in the systems and methods described herein includes, but is not limited to, these memories, and any other suitable types of memory.

本出願の一実施形態はシステムチップをさらに提供し、システムチップは、入力/出力インターフェースと、少なくとも1つのプロセッサと、少なくとも1つのメモリと、バスとを含む。少なくとも1つのメモリは、命令を記憶するように構成され、少なくとも1つのプロセッサは、前述の実施形態の方法における動作を実行するために、少なくとも1つのメモリの命令を呼び出すように構成される。 One embodiment of the present application further provides a system chip that includes an input/output interface, at least one processor, at least one memory, and a bus. At least one memory is configured to store instructions, and at least one processor is configured to invoke the instructions of the at least one memory to perform operations in the methods of the previously described embodiments.

本出願の一実施形態は、コンピュータ記憶媒体をさらに提供し、コンピュータ記憶媒体は、前述の方法のいずれかを実行するためのプログラム命令を記憶し得る。 One embodiment of the present application further provides a computer storage medium that may store program instructions for performing any of the aforementioned methods.

任意選択で、記憶媒体は、具体的にはメモリ1703であり得る。 Optionally, the storage medium may specifically be memory 1703.

当業者は、本明細書に開示の実施形態に説明される例と組み合わせて、ユニットおよびアルゴリズムステップが、電子ハードウェアまたはコンピュータソフトウェアと電子ハードウェアとの組合せによって実施されることができることを認識し得る。機能がハードウェアによって実行されるのかソフトウェアによって実行されるのかは、技術的解決策の特定の用途および設計上の制約に依存する。当業者は、説明された機能を特定の用途ごとに実施するために異なる方法を使用し得るが、実施態様が本出願の範囲を超えると見なされてはならない。 Those skilled in the art will appreciate that, in combination with the examples described in the embodiments disclosed herein, the units and algorithm steps can be implemented by electronic hardware or a combination of computer software and electronic hardware. obtain. Whether a function is performed by hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art may use different methods to implement the described functions for each particular application, but the implementations should not be considered to go beyond the scope of this application.

簡便かつ簡潔な記載のために、前述のシステム、装置、およびユニットの詳細な動作プロセスについては、前述の方法の実施形態における対応するプロセスを参照することが、当業者によって明確に理解され得る。ここでは詳細は再び説明されない。 For convenience and concise description, it can be clearly understood by those skilled in the art that for detailed operating processes of the aforementioned systems, devices, and units, refer to the corresponding processes in the aforementioned method embodiments. Details are not explained here again.

本出願において提供されるいくつかの実施形態では、開示されるシステム、装置、および方法は、他のやり方で実施されてもよいことを理解されたい。例えば、記載された装置の実施形態は一例にすぎない。例えば、ユニット分割は、論理的な機能分割にすぎず、実際の実装態様では他の分割であってもよい。例えば、複数のユニットまたはコンポーネントが組み合わされるか、または別のシステムに統合されてもよく、またはいくつかの特徴は無視されるか、または実行されなくてもよい。加えて、表示または考察された相互結合または直接結合または通信接続は、いくつかのインターフェースを介して実施されてもよい。装置またはユニット間の間接結合または通信接続は、電子的な形態、機械的な形態、または他の形態で実装されてもよい。 It should be understood that in some embodiments provided in this application, the disclosed systems, apparatus, and methods may be implemented in other ways. For example, the described device embodiment is one example only. For example, the unit division is only a logical division of functions, and may be other divisions in actual implementation. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not implemented. Additionally, the displayed or discussed mutual or direct couplings or communication connections may be implemented via a number of interfaces. Indirect coupling or communication connections between devices or units may be implemented in electronic, mechanical, or other forms.

別々の部分として説明されているユニットは、物理的に別々であってもなくてもよく、ユニットとして表示されている部分は、物理的なユニットであってもなくてもよく、1箇所に配置されてもよく、または複数のネットワークユニット上に分散されてもよい。実施形態の解決策の目的を達成するために、実際の要件に基づいてユニットの一部または全部が選択されてもよい。 Units described as separate parts may or may not be physically separate, and parts described as a unit may or may not be physically separate, located in one location. or distributed over multiple network units. Some or all of the units may be selected based on the actual requirements to achieve the objective of the solution of the embodiments.

加えて、本出願の実施形態における機能ユニットは、1つの処理ユニットに統合されてもよく、またはユニットのそれぞれは、物理的に単独で存在してもよく、または2つ以上のユニットが1つのユニットに統合される。 In addition, the functional units in embodiments of the present application may be integrated into one processing unit, or each of the units may be physically present alone, or two or more units may be integrated into one processing unit. integrated into the unit.

機能が、ソフトウェア機能ユニットの形態で実施され、独立した製品として販売または使用されるとき、機能は、コンピュータ可読記憶媒体に記憶されてもよい。そうした理解に基づき、本出願の技術的解決策は本質的に、または従来技術に寄与する部分は、または技術的解決策の一部は、ソフトウェア製品の形態で実施されてもよい。コンピュータソフトウェア製品は、記憶媒体に記憶され、本出願の実施形態に説明される方法のステップの全部または一部を実行するように、(パーソナルコンピュータ、サーバ、ネットワークデバイスなどであり得る)コンピュータデバイスに命令するためのいくつかの命令を含む。前述の記憶媒体は、USBフラッシュドライブ、リムーバブル・ハード・ディスク、読み出し専用メモリ(Read-Only Memory、ROM)、ランダム・アクセス・メモリ(Random Access Memory、RAM)、磁気ディスク、または光ディスクなどの、プログラムコードを記憶することができる任意の媒体を含む。 When the functionality is implemented in the form of a software functional unit and sold or used as a separate product, the functionality may be stored on a computer-readable storage medium. Based on such an understanding, the technical solution of the present application may essentially, or a part contributing to the prior art, or a part of the technical solution, be implemented in the form of a software product. A computer software product is stored on a storage medium and configured to run on a computer device (which may be a personal computer, a server, a network device, etc.) to perform all or some of the method steps described in the embodiments of this application. Contains some instructions for commanding. The aforementioned storage medium may be a programmable storage medium such as a USB flash drive, removable hard disk, Read-Only Memory (ROM), Random Access Memory (RAM), magnetic disk, or optical disk. Includes any medium that can store code.

前述の説明は本出願の特定の実施態様にすぎず、本出願の保護範囲を限定することは意図されていない。本出願で開示される技術的範囲内で当業者によって容易に考え出されるいかなる変形または置換も、本出願の保護範囲内に入るものとする。したがって、本出願の保護範囲は、特許請求の範囲の保護範囲に従うものとする。 The foregoing descriptions are only specific embodiments of the present application and are not intended to limit the protection scope of the present application. Any modification or replacement easily figured out by a person skilled in the art within the technical scope disclosed in this application shall fall within the protection scope of this application. Therefore, the protection scope of this application shall be subject to the protection scope of the claims.

100 電子デバイス
101 トランシーバ
102 プロセッサ
103 メモリ
200 車両
201 テレマティクスボックス(TBox)
210 セントラルコントローラ(CC)
220 ドメインコントローラ(DC)
221,222,223 エレクトロニック・コントロール・ユニット(ECU)
230 DC
231,232 ECU
240 DC
241,242,243,244 ECU
300 サーバ
1600 コンピューティングデバイス
1601 取得モジュール
1602 決定モジュール
1700 コンピューティングデバイス
1701 トランシーバ
1702 プロセッサ
1703 メモリ
100 electronic devices
101 Transceiver
102 processor
103 Memory
200 vehicles
201 Telematics Box (TBox)
210 Central Controller (CC)
220 Domain Controller (DC)
221, 222, 223 Electronic Control Unit (ECU)
230DC
231, 232 ECU
240DC
241, 242, 243, 244 ECU
300 servers
1600 computing devices
1601 Acquisition module
1602 Decision module
1700 computing devices
1701 transceiver
1702 processor
1703 Memory

第1の態様によれば、本出願の一実施形態は、車両内のデバイスのソフトウェアセキュリティを検証するための方法を提供し、方法は、N個の第1の検証パラメータを取得するステップであって、N個の第1の検証パラメータが車両内のN個の電子デバイスと一対一に対応し、N個の第1の検証パラメータのi番目の第1の検証パラメータが、N個の電子デバイスのi番目の電子デバイスのソフトウェアイメージに従って決定され、Nが1よりも大きい正の整数である、ステップと、N個の第1の検証パラメータに従って、第1のノードに対応する第1の検証パラメータを決定するステップであって、第1のノードがN個の電子デバイスの親ノードである、ステップと、トラステッドデバイスから、第1のノードに対応する第1のリファレンスパラメータを取得するステップと、第1のノードに対応する第1の検証パラメータおよび第1のノードに対応する第1のリファレンスパラメータに従って、N個の電子デバイスのソフトウェアセキュリティを検証するステップとを含む。 According to a first aspect, an embodiment of the present application provides a method for verifying software security of a device in a vehicle, the method comprising the step of obtaining N first verification parameters. The N first verification parameters have a one-to-one correspondence with the N electronic devices in the vehicle, and the i-th first verification parameter of the N first verification parameters corresponds to the N electronic devices in the vehicle. a first verification corresponding to the first node according to a step and N first verification parameters determined according to the software image of the i-th electronic device of the device, where N is a positive integer greater than 1; determining a parameter, the first node being a parent node of the N electronic devices; and obtaining a first reference parameter corresponding to the first node from the trusted device; verifying software security of the N electronic devices according to a first verification parameter corresponding to the first node and a first reference parameter corresponding to the first node.

本出願の一実施形態に係る車両内の電子デバイスの概略ブロック図である。1 is a schematic block diagram of an electronic device in a vehicle according to an embodiment of the present application; FIG. 車両内の電子デバイスの概略構造図である。1 is a schematic structural diagram of an electronic device in a vehicle. 本出願の一実施形態に係るシステムを示す。1 shows a system according to an embodiment of the present application. VVTの一例を示す。An example of VVT is shown. GVTの一例を示す。An example of GVT is shown. 車両内の電子デバイスのソフトウェアセキュリティを検証するための方法の実施形態のフローチャートである。1 is a flowchart of an embodiment of a method for verifying software security of electronic devices in a vehicle. 車両200に対応するツリーを示す。A tree corresponding to vehicle 200 is shown. 車両200に対応する別のツリーを示す。Another tree corresponding to vehicle 200 is shown. 車両200に対応する別のツリーを示す。Another tree corresponding to vehicle 200 is shown. 車両200に対応するツリーを示す。A tree corresponding to vehicle 200 is shown. 車両内の電子デバイスのソフトウェアセキュリティを検証するための方法の別の実施形態のフローチャートである。5 is a flowchart of another embodiment of a method for verifying software security of electronic devices in a vehicle. 車両200に対応するマークルツリーを示す。A Merkle tree corresponding to vehicle 200 is shown. ソフトウェア更新後の車両200に対応するツリーを示す。A tree corresponding to vehicle 200 after software update is shown. VVTのブロックチェーンの一部を示す。VVTのブロックチェーン内の3つのブロックを示す。Part of the VVT blockchain is shown. Showing three blocks in the VVT blockchain. 車両内のデバイスのソフトウェアセキュリティを検証するための方法の実施形態のフローチャートである。1 is a flowchart of an embodiment of a method for verifying software security of devices in a vehicle. 本出願の一実施形態に係るコンピューティングデバイス1600の概略ブロック図である。16 is a schematic block diagram of a computing device 1600 according to one embodiment of the present application. FIG. 本出願の一実施形態に係るコンピューティングデバイス1700の概略ブロック図である。17 is a schematic block diagram of a computing device 1700 according to an embodiment of the present application. FIG. ECUがHSM/TPMを有する場合にECUの第2の検証パラメータを取り出すための手順を示す。The procedure for retrieving the second verification parameter of the ECU when the ECU has HSM/TPM is shown. ECUがHSM/TPMを有しない場合にECUの第2の検証パラメータを取り出すための手順を示す。The procedure for retrieving the second verification parameter of the ECU when the ECU does not have an HSM/TPM is shown.

トランシーバ101は他の電子デバイスと通信するように構成され得る。トランシーバ101は制御情報および/またはデータを他の電子デバイスに送信し得、トランシーバ101は他の電子デバイスから制御情報および/またはデータを受信し得る。例えば、トランシーバ101は、サーバから更新バンドルを受信し得、受信された更新バンドルに含まれる1つまたは複数のパッチを車両内の対応する電子デバイスに送信し得、対応する電子デバイスから更新フィードバック情報を受信し得る。 Transceiver 101 may be configured to communicate with other electronic devices. Transceiver 101 may transmit control information and/or data to other electronic devices, and transceiver 101 may receive control information and/or data from other electronic devices. For example, transceiver 101 may receive an update bundle from a server, transmit one or more patches included in the received update bundle to a corresponding electronic device in the vehicle, and transmit update feedback information from the corresponding electronic device. can be received.

TBox201は、CC210に繋がっている。DC220、DC230およびDC240は、CC210に繋がっている。ECU221、ECU222およびECU223は、DC220に繋がっており、ECU231およびECU232はDC230に繋がっており、ECU241、ECU242、ECU243およびECU244は、DC240に繋がっている。 TBox201 is connected to CC210. DC220, DC230 and DC240 are connected to CC210. ECU221, ECU222 and ECU2 2 3 are connected to DC220, ECU231 and ECU232 are connected to DC230, and ECU241, ECU242, ECU243 and ECU244 are connected to DC240.

図15は、車両内のデバイスのソフトウェアセキュリティを検証するための方法の実施形態のフローチャートである。 FIG. 15 is a flowchart of an embodiment of a method for verifying software security of devices in a vehicle.

Claims (21)

車両内の電子デバイスのソフトウェアバージョンを検証するための方法であって、前記方法が、
N個の第1の検証パラメータを取得するステップであって、前記N個の第1の検証パラメータが前記車両内のN個の電子デバイスと一対一に対応し、前記N個の第1の検証パラメータのi番目の第1の検証パラメータが、前記N個の電子デバイスのi番目の電子デバイスのソフトウェアイメージに従って決定され、Nが1よりも大きい正の整数である、ステップと、
前記N個の第1の検証パラメータに従って、第1のノードに対応する第1の検証パラメータを決定するステップであって、前記第1のノードが前記N個の電子デバイスの親ノードである、ステップと、
トラステッドデバイスから、前記第1のノードに対応する第1のリファレンスパラメータを取得するステップと、
前記第1のノードに対応する前記第1の検証パラメータおよび前記第1のノードに対応する前記第1のリファレンスパラメータに従って、前記N個の電子デバイスのソフトウェアセキュリティを検証するステップと
を含む、方法。
A method for verifying a software version of an electronic device in a vehicle, the method comprising:
obtaining N first verification parameters, the N first verification parameters having a one-to-one correspondence with N electronic devices in the vehicle; a first verification parameter of the i-th of the parameters is determined according to a software image of the i-th electronic device of the N electronic devices, where N is a positive integer greater than 1;
determining a first verification parameter corresponding to a first node according to the N first verification parameters, the first node being a parent node of the N electronic devices; and,
obtaining a first reference parameter corresponding to the first node from a trusted device;
verifying software security of the N electronic devices according to the first verification parameter corresponding to the first node and the first reference parameter corresponding to the first node.
前記方法が、
N個の第2の検証パラメータを取得するステップであって、前記N個の第2の検証パラメータが前記N個の電子デバイスと一対一に対応し、前記N個の第2の検証パラメータのi番目の第2の検証パラメータが、前記N個の電子デバイスの前記i番目の電子デバイスの前記ソフトウェアイメージに従って決定される、ステップをさらに含み、
N個の第1の検証パラメータを取得する前記ステップは、
前記N個の第2の検証パラメータの前記i番目の第2の検証パラメータおよび前記N個の電子デバイスの前記i番目の電子デバイスの識別情報に従って、前記N個の第1の検証パラメータの前記i番目の第1の検証パラメータを決定するステップであって、i=1,…,Nである、ステップを含む、請求項1に記載の方法。
The method includes:
obtaining N second verification parameters, the N second verification parameters having a one-to-one correspondence with the N electronic devices; th second verification parameter is determined according to the software image of the i th electronic device of the N electronic devices;
Said step of obtaining N first validation parameters comprises:
The i of the N first verification parameters according to the i-th second verification parameter of the N second verification parameters and the identification information of the i-th electronic device of the N electronic devices. 2. The method of claim 1, comprising the step of determining the first verification parameter of the number i=1,...,N.
前記方法が、
トラステッドデバイスからN個の第2のリファレンスパラメータを取得するステップであって、前記N個の第2のリファレンスパラメータが前記N個の電子デバイスと一対一に対応する、ステップと、
前記N個の第2の検証パラメータの前記i番目の第2の検証パラメータおよび前記N個の第2のリファレンスパラメータのi番目の第2のリファレンスパラメータに従って、前記N個の電子デバイスの前記i番目の電子デバイスのソフトウェアセキュリティを検証するステップと
をさらに含む、請求項2に記載の方法。
The method includes:
obtaining N second reference parameters from a trusted device, the N second reference parameters having a one-to-one correspondence with the N electronic devices;
the i-th of the N electronic devices according to the i-th second verification parameter of the N second verification parameters and the i-th second reference parameter of the N second reference parameters; 3. The method of claim 2, further comprising: verifying the software security of the electronic device.
前記方法が、
M個の電子デバイスに対応するツリーを決定するステップであって、前記ツリーがM個のノードを含み、前記M個のノードが前記車両内のM個の電子デバイスと一対一に対応し、前記M個の電子デバイスが前記N個の電子デバイスを含み、MがNよりも大きい正の整数である、ステップと、
前記ツリー内の前記M個のノードの接続関係に基づいて、前記第1のノードが前記N個の電子デバイスの親ノードであると決定するステップと
をさらに含む、請求項1から3のいずれか一項に記載の方法。
The method includes:
determining a tree corresponding to M electronic devices, said tree including M nodes, said M nodes having a one-to-one correspondence with M electronic devices in said vehicle; M electronic devices include the N electronic devices, M is a positive integer greater than N;
4. Any one of claims 1 to 3, further comprising: determining that the first node is a parent node of the N electronic devices based on a connection relationship of the M nodes in the tree. The method described in paragraph 1.
前記ツリーの前記M個のノードの前記接続関係と、前記車両内の前記M個の電子デバイスの接続関係とが同じである、請求項4に記載の方法。 5. The method of claim 4, wherein the connectivity of the M nodes of the tree and the connectivity of the M electronic devices in the vehicle are the same. 前記ツリーが、前記車両に対応する高さ平衡バイナリツリーである、請求項4に記載の方法。 5. The method of claim 4, wherein the tree is a height balanced binary tree corresponding to the vehicle. 前記ツリーが完全平衡バイナリツリーであり、前記M個のノードが前記ツリーの葉ノードであり、前記ツリーがK個の非葉ノードをさらに含み、Kが1よりも大きい正の整数である、請求項4に記載の方法。 wherein said tree is a fully balanced binary tree, said M nodes are leaf nodes of said tree, said tree further comprises K non-leaf nodes, and K is a positive integer greater than 1. The method described in Section 4. 前記方法が、
第1のブロックを決定し、記憶するステップであって、前記第1のブロックが前記ツリーに対応し、前記第1のブロックが第1の構造情報を含み、前記第1の構造情報が前記ツリーのノードの接続関係を示すために使用される、ステップと、
第2のブロックを決定し、記憶するステップであって、前記第2のブロックが第2の構造情報を含み、前記第2の構造情報が、未修正の指示情報および修正された指示情報を含み、前記未修正の指示情報が、未更新のノードを示すために使用され、前記修正された指示情報が、更新されたノードの接続関係を示すために使用され、前記未更新のノードのそれぞれに対応する第1の検証パラメータおよび第2の検証パラメータは更新されておらず、前記更新されたノードのそれぞれに対応する第1の検証パラメータまたは第2の検証パラメータは更新されている、ステップと
をさらに含む、請求項4から7のいずれか一項に記載の方法。
The method includes:
determining and storing a first block, the first block corresponding to the tree, the first block including first structural information, and the first structural information being the tree; steps, which are used to indicate the connection relationships of nodes in
determining and storing a second block, the second block including second structural information, the second structural information including unmodified instruction information and modified instruction information; , the unmodified instruction information is used to indicate an unupdated node, the amended instruction information is used to indicate an updated connection relationship of the nodes, and each of the unupdated nodes has a the corresponding first validation parameter and the second validation parameter are not updated, and the first validation parameter or the second validation parameter corresponding to each of said updated nodes is updated, and 8. A method according to any one of claims 4 to 7, further comprising.
前記第1のブロックが、前記第1のブロックを記憶した時刻を示すタイムスタンプと、前記M個の電子デバイスに対応するソフトウェア情報とをさらに含み、
前記第2のブロックが、前記第2のブロックを記憶した時刻を示すタイムスタンプと、更新された電子デバイスに対応するソフトウェア情報とをさらに含む、請求項8に記載の方法。
The first block further includes a timestamp indicating a time when the first block was stored, and software information corresponding to the M electronic devices,
9. The method of claim 8, wherein the second block further includes a timestamp indicating a time when the second block was stored and software information corresponding to an updated electronic device.
コンピューティングデバイスであって、
N個の第1の検証パラメータを取得するように構成された取得モジュールであって、前記N個の第1の検証パラメータが車両内のN個の電子デバイスと一対一に対応し、前記N個の第1の検証パラメータのi番目の第1の検証パラメータが、前記N個の電子デバイスのi番目の電子デバイスのソフトウェアイメージに従って決定され、Nが1よりも大きい正の整数である、取得モジュールと、
前記N個の第1の検証パラメータに従って、第1のノードに対応する第1の検証パラメータを決定するように構成された決定モジュールであって、前記第1のノードが前記N個の電子デバイスの親ノードである、決定モジュールと
を備え、
前記取得モジュールが、トラステッドデバイスから、前記第1のノードに対応する第1のリファレンスパラメータを取得するようにさらに構成され、
前記決定モジュールが、前記第1のノードに対応する前記第1の検証パラメータおよび前記第1のノードに対応する前記第1のリファレンスパラメータに従って、前記N個の電子デバイスのソフトウェアセキュリティを検証するようにさらに構成される、デバイス。
A computing device,
an acquisition module configured to acquire N first verification parameters, the N first verification parameters having a one-to-one correspondence with N electronic devices in a vehicle; an acquisition module, wherein an i-th first verification parameter of the i-th first verification parameter of the N electronic devices is determined according to a software image of the i-th electronic device of the N electronic devices, where N is a positive integer greater than 1; and,
a determination module configured to determine a first verification parameter corresponding to a first node according to the N first verification parameters, wherein the first node is one of the N electronic devices; It has a parent node, a decision module, and
the acquisition module is further configured to acquire a first reference parameter corresponding to the first node from a trusted device;
the determination module is configured to verify software security of the N electronic devices according to the first verification parameter corresponding to the first node and the first reference parameter corresponding to the first node; The device is further configured.
前記取得モジュールが、N個の第2の検証パラメータを取得することであって、前記N個の第2の検証パラメータが前記N個の電子デバイスと一対一に対応し、前記N個の第2の検証パラメータのi番目の第2の検証パラメータが、前記N個の電子デバイスの前記i番目の電子デバイスの前記ソフトウェアイメージに従って決定される、ことを行うようにさらに構成され、
前記取得モジュールが、前記N個の第2の検証パラメータの前記i番目の第2の検証パラメータおよび前記N個の電子デバイスの前記i番目の電子デバイスの識別情報に従って、前記N個の第1の検証パラメータの前記i番目の第1の検証パラメータを決定することであって、i=1,…,Nである、ことを行うようにさらに構成される、請求項10に記載のデバイス。
the acquisition module acquires N second verification parameters, the N second verification parameters having a one-to-one correspondence with the N electronic devices; further configured to: a second verification parameter of the i-th verification parameter of is determined according to the software image of the i-th electronic device of the N electronic devices;
The acquisition module is configured to obtain the N first verification parameters according to the i-th second verification parameters of the N second verification parameters and the identification information of the i-th electronic device of the N electronic devices. 11. The device of claim 10, further configured to determine the i-th first verification parameter of verification parameters, where i=1,...,N.
前記取得モジュールが、トラステッドデバイスからN個の第2のリファレンスパラメータを取得することであって、前記N個の第2のリファレンスパラメータが前記N個の電子デバイスと一対一に対応する、ことを行うようにさらに構成され、
前記決定モジュールが、前記N個の第2の検証パラメータの前記i番目の第2の検証パラメータおよび前記N個の第2のリファレンスパラメータのi番目の第2のリファレンスパラメータに従って、前記N個の電子デバイスの前記i番目の電子デバイスのソフトウェアセキュリティを検証するようにさらに構成される、請求項11に記載のデバイス。
The acquisition module acquires N second reference parameters from a trusted device, the N second reference parameters having a one-to-one correspondence with the N electronic devices. further configured as,
The determination module determines the N electrons according to the i-th second verification parameters of the N second verification parameters and the i-th second reference parameter of the N second reference parameters. 12. The device of claim 11, further configured to verify software security of the i-th electronic device of devices.
前記決定モジュールが、
M個の電子デバイスに対応するツリーを決定することであって、前記ツリーがM個のノードを含み、前記M個のノードが前記車両内のM個の電子デバイスと一対一に対応し、前記M個の電子デバイスが前記N個の電子デバイスを含み、MがNよりも大きい正の整数である、ことと、
前記ツリー内の前記M個のノードの接続関係に基づいて、前記第1のノードが前記N個の電子デバイスの親ノードであると決定することと
を行うようにさらに構成される、請求項10から12のいずれか一項に記載のデバイス。
The determination module includes:
determining a tree corresponding to M electronic devices, said tree including M nodes, said M nodes having a one-to-one correspondence with M electronic devices in said vehicle; M electronic devices include the N electronic devices, and M is a positive integer greater than N;
10. Determining that the first node is a parent node of the N electronic devices based on a connectivity relationship of the M nodes in the tree. A device according to any one of paragraphs 12 to 12.
前記ツリーの前記M個のノードの前記接続関係と、前記車両内の前記M個の電子デバイスの接続関係とが同じである、請求項13に記載のデバイス。 14. The device of claim 13, wherein the connection relationships of the M nodes of the tree and the connection relationships of the M electronic devices in the vehicle are the same. 前記ツリーが、前記車両に対応する高さ平衡バイナリツリーである、請求項13に記載のデバイス。 14. The device of claim 13, wherein the tree is a height balanced binary tree corresponding to the vehicle. 前記ツリーが完全平衡バイナリツリーであり、前記M個のノードが前記ツリーの葉ノードであり、前記ツリーがK個の非葉ノードをさらに含み、Kが1よりも大きい正の整数である、請求項13に記載のデバイス。 wherein said tree is a fully balanced binary tree, said M nodes are leaf nodes of said tree, said tree further comprises K non-leaf nodes, and K is a positive integer greater than 1. Devices described in Section 13. 前記決定モジュールが、
第1のブロックを決定することであって、前記第1のブロックが前記ツリーに対応し、前記第1のブロックが第1の構造情報を含み、前記第1の構造情報が前記ツリーのノードの接続関係を示すために使用される、ことと、
第2のブロックを決定することであって、前記第2のブロックが第2の構造情報を含み、前記第2の構造情報が、未修正の指示情報および修正された指示情報を含み、前記未修正の指示情報が、未更新のノードを示すために使用され、前記修正された指示情報が、更新されたノードの接続関係を示すために使用され、前記未更新のノードのそれぞれに対応する第1の検証パラメータおよび第2の検証パラメータは更新されておらず、前記更新されたノードのそれぞれに対応する第1の検証パラメータまたは第2の検証パラメータは更新されている、ことと
を行うようにさらに構成される、請求項13から16のいずれか一項に記載のデバイス。
The determination module includes:
determining a first block, the first block corresponding to the tree, the first block including first structural information, and the first structural information of a node of the tree; used to indicate a connection relationship, and
determining a second block, the second block including second structural information, the second structural information including unmodified instruction information and modified instruction information; Modification instruction information is used to indicate an unupdated node, the modified instruction information is used to indicate an updated connection relationship of the nodes, and the 1 and the second validation parameter have not been updated, and the first validation parameter or the second validation parameter corresponding to each of the updated nodes has been updated. 17. A device according to any one of claims 13 to 16, further comprising:
前記第1のブロックが、前記第1のブロックを記憶した時刻を示すタイムスタンプと、前記M個の電子デバイスに対応するソフトウェア情報とをさらに含み、
前記第2のブロックが、前記第2のブロックを記憶した時刻を示すタイムスタンプと、更新された電子デバイスに対応するソフトウェア情報とをさらに含む、請求項17に記載のデバイス。
The first block further includes a timestamp indicating a time when the first block was stored, and software information corresponding to the M electronic devices,
18. The device of claim 17, wherein the second block further includes a timestamp indicating a time when the second block was stored and software information corresponding to an updated electronic device.
コンピュータ可読記憶媒体であって、前記コンピュータ可読記憶媒体が命令を記憶し、前記命令がサーバ上で動作したとき、前記サーバが、請求項1から9のいずれか一項に記載の方法を実行可能となる、コンピュータ可読記憶媒体。 10. A computer readable storage medium storing instructions, the server being capable of executing the method of any one of claims 1 to 9 when the instructions are operated on a server. A computer-readable storage medium. メモリとプロセッサとを備えたデバイスであって、前記メモリがコンピュータプログラムを記憶するように構成され、前記プロセッサが前記メモリから前記コンピュータプログラムを呼び出して前記コンピュータプログラムを動作させるように構成され、その結果、チップが配置されたサーバが、請求項1から9のいずれか一項に記載の方法を実行する、デバイス。 A device comprising a memory and a processor, the memory configured to store a computer program, the processor configured to recall the computer program from the memory and operate the computer program, and as a result 10. A device, wherein a server on which a chip is arranged performs the method according to any one of claims 1 to 9. コンピュータプログラム製品であって、前記コンピュータプログラム製品がサーバ上で動作したとき、前記サーバが、請求項1から9のいずれか一項に記載の方法を実行可能となる、コンピュータプログラム製品。 10. A computer program product, wherein when the computer program product is run on a server, the server is capable of executing the method according to any one of claims 1 to 9.
JP2023519759A 2020-09-30 2020-09-30 Method and related devices for verifying software security of electronic devices in a vehicle Pending JP2023543476A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2020/119574 WO2022067731A1 (en) 2020-09-30 2020-09-30 Method for verifying software security of electronic device(s) in vehicle and related device

Publications (1)

Publication Number Publication Date
JP2023543476A true JP2023543476A (en) 2023-10-16

Family

ID=75609528

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023519759A Pending JP2023543476A (en) 2020-09-30 2020-09-30 Method and related devices for verifying software security of electronic devices in a vehicle

Country Status (4)

Country Link
EP (1) EP4211588A4 (en)
JP (1) JP2023543476A (en)
CN (1) CN112740210B (en)
WO (1) WO2022067731A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024088912A1 (en) * 2022-10-25 2024-05-02 Robert Bosch Gmbh Digital shadows for remote attestation of vehicle software

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5749257B2 (en) * 2009-06-26 2015-07-15 トラステッド ロジック Data validation method
CN105515776A (en) * 2010-03-05 2016-04-20 交互数字专利控股公司 Method and apparatus for providing security to devices
US9766874B2 (en) * 2014-01-09 2017-09-19 Ford Global Technologies, Llc Autonomous global software update
CN106845279A (en) * 2017-02-17 2017-06-13 宇龙计算机通信科技(深圳)有限公司 The method of calibration and device of security service management entity SSME modules
CN111279310B (en) * 2017-10-24 2023-09-12 华为国际有限公司 Vehicle-mounted equipment upgrading method and related equipment
US10812257B2 (en) * 2017-11-13 2020-10-20 Volkswagen Ag Systems and methods for a cryptographically guaranteed vehicle identity
CN108304737A (en) * 2018-01-26 2018-07-20 鑫银科技集团股份有限公司 A kind of data verification method, electronic equipment and data verification system
JP7379892B2 (en) * 2018-07-25 2023-11-15 株式会社デンソー Vehicle electronic control systems, vehicle-side systems, and mobile terminals
CN108881303A (en) * 2018-08-06 2018-11-23 罗伯特·博世有限公司 Node, safety verification network and safe verification method with computing function
US11204751B2 (en) * 2018-09-07 2021-12-21 International Business Machines Corporation Mitigating incompatibilities due to code updates in a system containing multiple networked electronic control units
CN109492352B (en) * 2018-10-09 2021-01-29 华为技术有限公司 Method and device for realizing equipment identification combination engine
CN110262826A (en) * 2019-03-05 2019-09-20 上海博泰悦臻网络技术服务有限公司 Vehicle-mounted software configuration updating management method, server-side, client and processing end
CN110047168A (en) * 2019-04-15 2019-07-23 优信拍(北京)信息科技有限公司 Management method, device, equipment and the system of information of vehicles
US10726000B1 (en) * 2019-07-23 2020-07-28 Science Applications International Corporation Blockchain based integrity checks
CN110460447B (en) * 2019-08-16 2022-07-08 东北大学秦皇岛分校 Hash binary tree-based edge calculation data auditing system and auditing method

Also Published As

Publication number Publication date
CN112740210A (en) 2021-04-30
WO2022067731A1 (en) 2022-04-07
CN112740210B (en) 2022-02-11
EP4211588A1 (en) 2023-07-19
EP4211588A4 (en) 2023-10-25

Similar Documents

Publication Publication Date Title
CN108140093B (en) Migrating secrets using a hardware root of trust for a device
US20160378457A1 (en) Program update system and program update method
US9614834B2 (en) Permission management method, apparatus, and terminal
CN111263352B (en) OTA upgrading method and system of vehicle-mounted equipment, storage medium and vehicle-mounted equipment
CN103677891B (en) method for selective software rollback
US8966248B2 (en) Secure software file transfer systems and methods for vehicle control modules
KR101115066B1 (en) Updating data in a mobile terminal
AU2020260153B2 (en) Version history management using a blockchain
US20110099362A1 (en) Information processing device, encryption key management method, computer program and integrated circuit
US11388012B2 (en) Application certificate
US20220405392A1 (en) Secure and flexible boot firmware update for devices with a primary platform
US20130024696A1 (en) Method and apparatus for flash updates with secure flash
CN112579125B (en) Firmware upgrading method and device, electronic equipment and storage medium
US20220334824A1 (en) Method for managing software versions of electronic device(s) in a vehicle and related device
JP6887108B2 (en) Fraud detection electronic control unit, electronic control unit, in-vehicle network system, fraud detection method and computer program
US11232190B2 (en) Device attestation techniques
JP2023543476A (en) Method and related devices for verifying software security of electronic devices in a vehicle
WO2021231686A1 (en) Controlled scope of authentication key for software update
KR20200123487A (en) Change the authentication of the storage device
KR20230123859A (en) Method for installing normal firmware
WO2024088912A1 (en) Digital shadows for remote attestation of vehicle software
CN114879980A (en) Vehicle-mounted application installation method and device, computer equipment and storage medium
CN112988189A (en) BMC (baseboard management controller) firmware upgrading method, system, equipment and computer storage medium
CN114816486A (en) Robot upgrading method and device based on block chain
CN114741100A (en) Method, device, server and storage medium for issuing upgrading task of vehicle firmware

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230509

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230509