Method for authentication of electronic components on circuit boards
Patent Information
- Application Number
- CN202211346441.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2022-06-03
- Filing Date
- 2022-10-31
- Publication Date
- 2026-10-27
- Estimated Expiration
- 2042-10-31
Smart Images

Figure CN117220896B_ABST
Abstract
Description
Technical Field
[0001] This disclosure generally relates to a method for certifying electronic components for circuit boards. Background Technology
[0002] Vehicles utilize computerized hardware and software to control the operation of various systems within the vehicle. Computerized hardware may include circuit boards. Some physical components or devices are permanently attached to or soldered to circuit boards. Other equipment is replaceable or can be upgraded by removing the old equipment and replacing it with new equipment. Summary of the Invention
[0003] A method for authenticating multiple electronic components includes operating a system comprising multiple electronic components. The components are configured to communicate electronically with each other. A first electronic component of the multiple electronic components provides the system with one of pluggable hardware, configurable hardware, updatable software, configurable software, updatable firmware, configurable firmware, or updatable ownership information. The method further includes using a second electronic component of the multiple electronic components to perform authentication on the first electronic component using asymmetric key encryption to verify the authenticity of the first electronic component. When the authenticity of the first electronic component is successfully verified using asymmetric key encryption, the method further includes selectively implementing one of a power connection or a data connection to the first electronic component and communicating between the first electronic component and the remainder of the multiple electronic components to realize tangible functions that can be provided by the multiple electronic components. When the authenticity of the first electronic component is not successfully verified using asymmetric key encryption, the method further includes selectively reserving one of a power connection or a data connection to the first electronic component.
[0004] In some embodiments, the method further includes authenticating the second electronic component using the first electronic component when the authenticity of the first electronic component is successfully verified using asymmetric key encryption.
[0005] In some embodiments, the method further includes, when the authenticity of the first electronic component is successfully verified using asymmetric key encryption, using the first electronic component to perform authentication on a third electronic component of a plurality of electronic components.
[0006] In some embodiments, operating the system further includes connecting multiple electronic components to a central computing unit (CCU) including a circuit board.
[0007] In some embodiments, the second electronic component is soldered to a circuit board. The method may further include defining the second electronic component as a trusted device acting as a verifier, and defining the electronic component as an authenticator being verified.
[0008] In some embodiments, the second electronic component is one of a board management controller, a peripheral component interconnect fast switch, an Ethernet switch, or a dedicated hardware security module.
[0009] In some embodiments, the method further includes communicating with a remote server device to establish the second electronic component as a trusted device.
[0010] In some embodiments, encryption using asymmetric keys includes using one of the Edwards curve digital signature algorithm, elliptic curve digital signature algorithm, or digital signature algorithm.
[0011] In some embodiments, communication between the first electronic component and the remainder of the plurality of electronic components includes encryption using a symmetric key.
[0012] In some embodiments, operating the system further includes receiving a first electronic component as a plug-in device.
[0013] In some embodiments, receiving the first electronic component includes connecting the first electronic component to the system using one of a peripheral component interconnection fast link, a wireless link, an Ethernet link, and a serial link.
[0014] In some embodiments, performing authentication of the first electronic component using a second electronic component with a plurality of electronic components includes performing authentication during a system boot and after a device reset.
[0015] According to an alternative embodiment, a method for authenticating an electronic component on a circuit board is provided. The method includes operating an electronic device including a circuit board, a microcontroller attached to the circuit board, and an electronic component attached to the circuit board. The electronic component provides the electronic device with one of plug-in hardware, configurable hardware, updatable software, updatable firmware, configurable firmware, or updatable ownership information. The method further includes defining the microcontroller as a trusted device acting as a verifier, defining the electronic component as an authenticator to be verified, and using asymmetric key encryption to verify the authenticity of the authenticator. When the authenticity of the authenticator is successfully verified using asymmetric key encryption, one of a power connection and a data connection to the electronic component is selectively established, and communication occurs between the electronic component and the microcontroller to realize tangible functions that can be provided by the electronic component and the microcontroller. When the authenticity of the authenticator is not successfully verified using asymmetric key encryption, the method further includes selectively retaining one of the power connection and the data connection to the electronic component.
[0016] In some embodiments, the microcontroller is soldered to a circuit board.
[0017] In some embodiments, the electronic device is a first electronic device. Defining the microcontroller as a trusted device includes: using a second electronic device external to the first electronic device to verify that the microcontroller is a trusted device.
[0018] In some embodiments, defining a microcontroller as a trusted device includes: verifying the microcontroller as a trusted device using a remote server device that communicates with the electronic device via a wireless communication network.
[0019] In some embodiments, the electronic device includes a central computing unit mounted to the vehicle. The microcontroller includes one of a board management controller of the central computing unit, an Ethernet switching unit of the electronic device, or a peripheral component interconnection fast switching unit of the electronic device.
[0020] In some embodiments, verifying the authenticity of the authenticator being verified includes: generating a challenge from the verifier to the authenticator being verified; and responding to the challenge within the authenticator being verified using a response signed with a private key. Responding to the challenge includes: collecting metrics within the authenticator being verified; combining the metrics with the challenge using a hash function to create a summary; signing the summary with a private key to create a signed summary; and responding to the challenge by sending the signed summary to the verifier. Verifying the authenticity of the authenticator being verified further includes: within the verifier, checking the response using a public key, the challenge, and reference list data to confirm the accuracy of the response; and verifying the authenticity of the authenticator based on the accuracy of the response.
[0021] In some embodiments, the collection metrics include collection invariance and collection variability.
[0022] In some embodiments, invariable degrees include one of the chip manufacturer identifier, the name of the verified authenticator, or a custom identifier. Variable degrees include one of the following: bootloader image, software image, configuration, ownership representation, and hash value of the result of a secure boot operation.
[0023] In addition, the present invention also relates to the following technical solutions.
[0024] Option 1. A method for certifying multiple electronic components, including: To operate the system, the system includes: The plurality of electronic components are configured to communicate electronically with each other, wherein a first electronic component of the plurality of electronic components provides the system with one of plug-in hardware, configurable hardware, updatable software, configurable software, updatable firmware, configurable firmware, or updatable ownership information. The second electronic component, utilizing the plurality of electronic components, performs the authentication on the first electronic component using asymmetric key encryption to verify the authenticity of the first electronic component; When the authenticity of the first electronic component is successfully verified using the asymmetric key encryption: Selectively implement either a power connection or a data connection to the first electronic component; and Communication is made between the first electronic component and the remainder of the plurality of electronic components to realize tangible functions that can be provided by the plurality of electronic components; and When the asymmetric key encryption fails to successfully verify the authenticity of the first electronic component, selective retention is made to either the power connection or the data connection of the first electronic component.
[0025] Solution 2. The method according to Solution 1 further includes, when the authenticity of the first electronic component is successfully verified by encryption using the asymmetric key, authenticating the second electronic component using the first electronic component.
[0026] Solution 3. The method according to Solution 1 further includes, when the authenticity of the first electronic component is successfully verified by encryption using the asymmetric key, performing authentication on the third electronic component of the plurality of electronic components using the first electronic component.
[0027] Option 4. The method according to Option 1, wherein operating the system further includes connecting the plurality of electronic components to a central computing unit including a circuit board.
[0028] Option 5. The method according to Option 4, wherein the second electronic component is soldered to the circuit board; Further includes: The second electronic component is defined as a trusted device acting as a verifier; and The electronic component is defined as a verified authenticator.
[0029] Option 6. The method according to Option 5, wherein the second electronic component is one of a board management controller, a peripheral component interconnect fast switch, an Ethernet switch, and a dedicated hardware security module.
[0030] Option 7. The method according to Option 1, the method further comprising communicating with a remote server device to establish the second electronic component as a trusted device.
[0031] Option 8. The method according to Option 1, wherein encryption using asymmetric keys includes using one of Edwards curve digital signature algorithm, elliptic curve digital signature algorithm, or digital signature algorithm.
[0032] Option 9. The method according to Option 1, wherein communication between the first electronic component and the remainder of the plurality of electronic components includes encryption using a symmetric key.
[0033] Option 10. The method according to Option 1, wherein operating the system further includes receiving the first electronic component as a plug-in device.
[0034] Option 11. The method according to Option 1, wherein receiving the first electronic component includes connecting the first electronic component to the system using a peripheral component interconnection fast link, wireless link, Ethernet link or serial link.
[0035] Option 12. The method according to Option 1, wherein performing the authentication on the first electronic component using a second electronic component of the plurality of electronic components includes performing the authentication during a system boot and after a device reset.
[0036] Option 13. A method for certifying electronic components on a circuit board, comprising: To operate an electronic device, the electronic device comprising: The circuit board; The microcontroller attached to the circuit board; and The electronic component attached to the circuit board provides the electronic device with one of plug-in hardware, configurable hardware, updatable software, configurable software, updatable firmware, configurable firmware, or updatable ownership information. The microcontroller is defined as a trusted device that acts as a verifier; The electronic component is defined as a verified authenticator; The verifier is used to verify the authenticity of the authenticator being verified by using an asymmetric key for encryption. When the authenticity of the verified authenticator is successfully verified using the asymmetric key encryption, selective connection to either the power supply or data connection to the electronic component is implemented, and communication occurs between the electronic component and the microcontroller to realize tangible functions that can be provided by the electronic component and the microcontroller; and When the authenticity of the authenticator being verified fails to be successfully verified using the asymmetric key encryption, it is selectively retained in either the power connection or the data connection of the electronic component.
[0037] Option 14. The method according to Option 13, wherein the microcontroller is soldered to the circuit board.
[0038] Option 15. The method according to Option 13, wherein the electronic device is a first electronic device; and Defining the microcontroller as the trusted device includes: verifying the microcontroller as the trusted device using a second electronic device external to the first electronic device.
[0039] Option 16. The method according to Option 13, wherein defining the microcontroller as the trusted device includes: verifying the microcontroller as the trusted device using a remote server device that communicates with the electronic device via a wireless communication network.
[0040] Option 17. The method according to Option 13, wherein the electronic device includes a central computing unit installed in the vehicle; and The microcontroller includes one of the board management controller of the central computing unit, the Ethernet switching unit of the electronic device, or the peripheral component interconnection fast switching unit of the electronic device.
[0041] Option 18. The method according to Option 13, wherein verifying the authenticity of the verified authenticator includes: A challenge is generated from the verifier to the authenticator being verified; Within the verified authenticator, the query is responded to using a reply signed with the private key, including: Measurements are collected within the verified authenticator; The metrics are combined with the queries using a hash function to create a summary; The summary is signed with the private key to create a signed summary; and The query is responded to by sending the signed summary to the verifier; Within the verifier, the accuracy of the response is confirmed by examining the response using the public key, the challenge, and the reference list data; and The authenticity of the authenticator is verified based on the accuracy of the response.
[0042] Option 19. The method according to Option 18, wherein collecting the metric includes collecting invariant metrics and variable metrics.
[0043] Option 20. The method according to Option 19, wherein the invariant degree includes a chip manufacturer identifier, the name of the verified authenticator, or a custom identifier; and The variable degree includes one of the following: bootloader image, software image, configuration, ownership representation, and hash value of the result from a secure boot operation. Attached Figure Description
[0044] The above-described features and advantages, as well as other features and advantages of the present invention, will become apparent from the following detailed description of the optimal mode for carrying out this disclosure, taken in conjunction with the accompanying drawings. Wherein: Figure 1 A central computing unit (CCU) according to this disclosure is schematically shown, including a board management controller configured to verify the authenticity of electronic components attached to the CCU; Figure 2A and Figure 2B The data flow associated with an authenticator device providing authentication to an authenticator device is illustrated schematically according to this disclosure; Figure 2A The verifier device 100 is shown; and Figure 2B The authenticator device is shown; Figure 3 An exemplary device including a vehicle according to the present disclosure is shown, the vehicle including a CCU and a plurality of other vehicle systems controllable by the CCU; Figure 4 An exemplary system for PCIe component authentication according to this disclosure is schematically illustrated; and Figure 5 An exemplary system-on-chip (SoC) unit inserted into slot B (compute unit plug-in number one of CCU) according to this disclosure is schematically shown. Detailed Implementation
[0045] A system and method are provided, comprising hardware configured for authenticating electronic components within an electrical assembly having field-replaceable, upgradeable, repairable, or otherwise configurable components. In one embodiment, the system and method can authenticate field-replaceable electronic modules on a vehicle's central computing unit (CCU). The CCU may include a circuit board and multiple electronic devices or electronic components connected to the circuit board. Some of the electronic components may be permanently attached or soldered to the circuit board. Some of the electronic components may be removably attached to the circuit board and may be considered plug-in devices that can be replaced with the CCU. In another embodiment, the disclosed system and method may include multiple electronic components in electronic communication with each other, although some or all of the components are not attached to the CCU.
[0046] Authentication measures and characterizes immutable and mutable components, and cryptographically compares the results to a reference list. This is done at boot time, after a device reset (hot-add / hot-plug), or after a defined system event. For PCIe (Peripheral Component Interconnect Fast) modules, Secure Boot provides no protection against malicious content being introduced onto the bus because external components have no way of knowing that Secure Boot has been executed or succeeded. With authentication, counterfeit, malicious, or rogue modules can be identified and blocked. Authentication can detect changes to hardware, software, configuration, and ownership.
[0047] The disclosed systems and methods can work with plug-in components attached to a circuit board, including various electronic devices that can be selectively connected to the board and replaced by alternative electronics. PCIe is a configuration for attaching plug-in components to a circuit board. PCIe presents two challenges. First, modular components may be replaced with compromised devices or entirely new peripherals (e.g., NVMe -> 5G radio). Second, legitimate components may be compromised during operation, and any PCIe device can communicate with any other PCIe device. Authentication can be used to verify ownership of hardware, firmware, software, and plug-in modules. Furthermore, mutual authentication between the SoC and the verifier can be used to establish trust in the device configuration. This can be used to ensure that valid configuration data is used to form the established expected path in the system. Authentication itself does not protect against active man-in-the-middle (MitM) attacks, where a malicious device is installed between two legitimate devices and mimics the behavior from one device to another; however, when combined with encrypted channels, attacks can prevent MitM attacks.
[0048] The CCU configuration can be manipulated to enable the use of a System-on-a-Chip (SoC), including a root union that may be replaced. An SoC is an integrated circuit that comprises all or most of the components that make up a computer. The CCU board management controller or power management microcontroller (MCU) can be used as a verifier to authenticate authenticators such as SoCs, PCIe switches, and non-volatile memory standards (NVMe) via sideband interfaces (Universal Asynchronous Receiver / Transmitter (UART) / Serial Peripheral Interface (SPI) / Inter-Integrated Circuit Communication (I2C)). Furthermore, authentication requires cryptographic hashing of device metrics, such as software images, which is useful for detecting changes but time-consuming. To minimize authentication at boot time, the results of a secure bootloader can be used to characterize valid software without having to re-verify the software for authentication. This also allows for firmware and software updates, and by characterizing the secure boot results, authenticators and verifiers do not have to keep track of future firmware or software inventories.
[0049] SoCs can be used for a wide variety of purposes. In automotive applications, SoCs can control vehicle systems, such as motor or brake operation. SoCs can control entertainment systems, such as radio equipment or telematics systems. SoCs can include scalable options, such as mounting a game console, such as an Xbox®, in the vehicle.
[0050] Slight changes to the certification process can be leveraged, including booting the system with the PCIe bus blocked and allowing the verifier to verify the SoC. Once verified, the bus can be enabled, and the trusted SoC can now verify secondary peripherals, such as NVMe memory cells.
[0051] When the SoC is a standalone device, for example, when components are sold on the second-hand market, to protect them, the SoC can use certification to verify the board controller and power management MCU. This will prevent malicious configuration or initialization via side channels.
[0052] The disclosed systems and methods may include the authentication of removable and replaceable modules on a vehicle's CCU. The authenticator may be a board controller and power manager MCU or a PCIe switch. The authenticator may be a SoC, a PCIe switch, or an NVMe storage device. Different digital signature schemes may be utilized, including the Edwards Curve Digital Signature Algorithm (EdDSA) or Hash-based Message Authentication Code (HMAC). The methods of this invention may be executed during hot-addition or hot-plugging of modules. Mutual authentication may be used.
[0053] In one embodiment, multiple independent modules can be connected to various different configurations, which may or may not include a CCU. For example, the module can be purchased and installed in a debugger, and modified via any open communication port, including unconnected I2C, SPI, or PCIe links. By allowing the module to verify the unit it is inserted into, the module can shut down all communication until it is installed into a trusted CCU. This process prevents the module from being modified before installation.
[0054] Depending on the type of CAPTCHA used, symmetric or asymmetric key encryption can be used. Asymmetric key encryption can be much more secure than symmetric key encryption. Asymmetric key encryption is also much slower than symmetric key encryption. In one embodiment, a method of using authentication to verify components connected to the CCU may include initially performing authentication using asymmetric key encryption. In disclosed methods, asymmetric key encryption can be used, starting with a trusted root device or a set of trusted root devices, and establishing trust with other components by challenging them with authentication. Once the other components are trusted and their authenticity has been verified, symmetric public / private key pairs can be distributed among the trusted components, and then the various components can communicate with each other using symmetric encryption at excellent communication speeds. In this way, trust can be established between electronic components using asymmetric key encryption, and then the components can be continuously operated using symmetric key encryption to take advantage of the reduced computation time associated with symmetric key encryption.
[0055] In one embodiment, soldered components on the CCU motherboard are considered trusted and do not require verification. These trusted components can be used as verifiers or to verify untrusted or not yet trusted components. Such devices may include board management controllers, PCIe switches, Ethernet switches, or dedicated hardware security modules (HSMs).
[0056] In one embodiment, during the authentication process, the verifier disables the PCIe bus by holding the PCIe bus in a reset state to retain access to / isolate the components for data transmission. In another embodiment, the verifier may additionally or alternatively remove power from unverified or not yet verified devices.
[0057] In one embodiment, the verifier may send challenges to an untrusted component or a verified authenticator (AUV). The AUV collects immutable and variable metrics. Immutable metrics may include chip manufacturer identifiers, ECU names, or custom identifiers. Variable metrics may include hashes of bootloader images, software images, or configurations. Variable metrics include results from secure boot operations.
[0058] Referring now to the accompanying drawings, similar reference numerals refer to similar features throughout several views. Figure 1An electronic device is shown having a microcontroller implemented as a CCU 10, the microcontroller including a board management controller 20 configured to verify the authenticity of electronic components attached to the CCU 10. The board management controller 20 may be implemented as a power management unit (MCU) and may additionally be capable of configuring a SoC, a switch, and NVMe drivers. The CCU 10 is shown including a PCIe switch 30, slot a (computer main unit 32), slot B (compute unit plug-in #1 34), slot C (compute unit plug-in #2 36), and slot D (compute unit plug-in #3 38). The CCU 10 is further shown including NVMe units #1 40, #2 42, #3 44, and #4 46. The CCU 10 is further shown including a connector 15, an Ethernet switching unit 22, a power tree 24, a PCIe retimer 54, a video input unit #1 60, and a video input unit #2 62.
[0059] CCU 10 is provided as an exemplary electronic device with a microcontroller. The disclosed systems and methods can be used in other embodiments of electronic devices with microcontrollers, such as Ethernet switches, gateways, traditional engine control units, battery packs, etc. In one embodiment, the electronic device may include the ability to receive or accept electronic components as removable / upgradeable attachments, while the disclosed systems and methods are used to verify these attached electronic components and prevent counterfeit and / or malicious components. In another embodiment, an electronic device with a microcontroller operating the disclosed systems and methods may not accept electronic components as attachments, but the systems and methods can verify the software installed on the electronic components of the device. For example, an electronic device including a microcontroller implemented as a telematics controller installed in a vehicle may include all factory-installed physical components. However, the controller may accept downloadable software applications, and these downloaded applications may be corrupted, causing the components of the telematics controller to malfunction. In another embodiment, the disclosed systems and methods can be used to identify and potentially isolate software that may have been downloaded to electronic components without the user's knowledge. The disclosed systems and methods may require authentication from rogue components, and the compromised software may have lost the ability to properly authenticate and challenge, and therefore may be isolated according to this disclosure.
[0060] CCU 10 operates as a computerized unit. Slot A (computer main unit 32) includes a processor, random access memory (RAM), and memory storage devices, and provides computerized functionality, enabling programming that may include an operating system. PCIe switch 30, combined with slots B (computing unit plug-in #1 34), C (computing unit plug-in #2 36), and D (computing unit plug-in #3 38), provides scalability options, allowing the SoC to be installed in any of these slots. The flexibility provided by slots 34, 36, and 38 can facilitate the operation of vehicles including CCU 10 and offer versatility to vehicle owners. However, the ability to add SoCs and other computerized devices to CCU 10 may lead to the possibility of counterfeit hardware or software connecting to CCU 10 and operating with the vehicle. The disclosed systems and methods provide a capability that allows vehicle owners to take advantage of the versatility of slots 34, 36, and 38 while protecting the vehicle from the adverse effects of counterfeit hardware or software. The CCU 10 shown is exemplary. While architectural practices for hardware such as the CCU 10 have evolved over time, and despite foreseeable differences in system architecture, the disclosed systems and methods can be used to verify electronic components and selectively isolate them from systems such as the CCU 10.
[0061] Board management controller 20 includes an Ethernet data connection to Ethernet switching unit 22. The remaining connections shown from board management controller 20 are power connections or connections enabling board management controller 20 to supply or retain power from connected components. Ethernet switching unit 22 receives power via its connection to board management controller 20. Ethernet switching unit 22 further includes Ethernet data connections to each of slots 32, 34, 36, and 38 and board management controller 20. PCIe switch 30 includes PCIe data connections to each of slots 32, 34, 36, and 38, NVMe units 40, 42, 44, and 46, and PCIe retimer 54.
[0062] Authentication can be performed in-band (PCIe), out-of-band (SPI, I2C, etc.), or a combination of both. The NVMe drive can be placed in an external rack and connected to CCU 10 via a PCIe cable. Additionally, the PCIe retimer 54 acts as a connector between the PCIe switch and external components via a cable. In one embodiment, the PCIe retimer 54 can connect CCU 10 to a secondary CCU.
[0063] Authentication can be used for two purposes: 1) identifying unverified components; and 2) isolating unverified components. The green line indicates an Ethernet connection, and the verifier can be some other device somewhere on the Ethernet network. Furthermore, authentication does not need to be performed by a single verifier; multiple verifiers (external Ethernet verifiers and board management controllers, etc.) can be used to perform authentication. Two scenarios need to be considered—the CCU with something plugged in, and the compartments or modules with something plugged in.
[0064] The disclosed systems and methods can establish trust between components connected to CCU 10. In one embodiment, components permanently attached or soldered to CCU 10 can be considered trusted. Board management controller 20, PCIe switch 30, and Ethernet switching unit 22 can be soldered to CCU 10. It is certain that these initially installed components soldered to CCU 10 are trustworthy and can be used as verifier or challenge authenticator components or components of the AUV. In another embodiment, two or more components can challenge each other, and groups can establish trust between each other through successful authentication.
[0065] Slot A (Compute Main Unit) 32, the SoC attached to slots 34, 36, and 38, PCIe switch 30, and any of NVMe units 40, 42, 44, and 46 can be challenged AUVs. PCIe switch 30 can be a fan-out switch or a fiber optic switch. When an AUV is challenged, CCU 10, and particularly the verifier, can retain the right to power, freely transmit, and receive data, or both. Board Management Controller 20 controls data transmission and power distribution to the various components attached to CCU 10 and can be used as the primary verifier in the disclosed systems and methods. In other embodiments, PCIe switch 30 or Ethernet switching unit 22 can be used to isolate the AUV when it is challenged, for example, by blocking any data transmission or reception from the AUV unless the challenge is responded to, for example, by disabling the PCIe bus by keeping the PCIe bus in a reset state. In some embodiments, the authenticator can switch roles once trusted and verified, and become the verifier for other components still within the AUV. For example, the board management controller 20 can verify the SoC inserted into one of the slots 34, 36 and 38, and can verify the Ethernet switching unit 22. Once verified, the verified SoC or the verified Ethernet switching unit 22 can act as a verifier for one or more NVMe units among NVMe units 40, 42, 44 and 46.
[0066] A challenge from verifier to authenticator can involve the verifier sending a challenge to the AUV. The AUV collects immutable and mutable metrics. A hash function is used to combine the metrics with the challenge. A summary of the metrics and challenge can be signed with a private key using EdDSA. The AUV sends the signature or signed summary and public key to the verifier. The verifier uses a hash function to combine a reference list and the challenge. The verifier can then verify the signature using the public key, signature, reference list, and challenge summary using EdDSA. If the signature check fails, the verifier can disable power to the AUV. If the signature check fails, the verifier can further or alternatively issue an alert. This process can continue, iterating for each AUV in the AUV.
[0067] In one embodiment, an authenticator, such as a SoC, can be configured to verify a verifier. For example, a malicious module might impersonate a verifier, sending a challenge to the AUV in hopes of receiving a signature / data that might be forged to conceal the malicious module from the verifier. The SoC can respond to the challenge from the verifier with a counter-challenge. The component initially acting as the verifier switches roles and generates a signed summary to return to the SoC. Once the SoC receives a compliant response from the verifier, it can initiate a public process to authenticate its identity to the verifier.
[0068] The verifier can compute the reference profile using metrics and challenges. The verifier can verify the reference profile using signatures and public keys. The verifier can enable the use of the PCIe bus after successful verification by all authenticator devices across all authenticator devices or after successful isolation of any non-compliant device.
[0069] Public authentication methods can be executed at boot time, after reset, and after predefined events.
[0070] Figure 2A and Figure 2B The diagram illustrates the data flow associated with the authenticator device 200 that provides authentication to the authenticator device 100. Figure 2A Verifier device 100 is shown. A challenge command 102 is generated as part of a boot or reset event. The challenge command 102 is provided as a pass-through signal 120. Figure 2B The authenticator device 200, and additionally, provides challenge command 102 to hash function operator 106. Hash function operator 106 includes a secure hash algorithm.
[0071] In one embodiment, SHA-2 includes a family of secure hashing algorithms, including SHA-224, SHA-256, SHA-384, and SHA-512. SHA-256 is a SHA-2 algorithm that produces a 256-bit summary (output). A secure hash function is a one-way function, where any input (“message”) maps to a fixed-length output (“summary”). Changing a single bit of the input will produce a significantly different output. A one-way function means that reversing the result is impractical. In other words, given a summary, there is no practical way to determine the input except through trial and error.
[0072] Figure 2B Authenticator device 200 is shown. A challenge command 102 is received as a pass-through signal 120 and provided to a hash function operator 202 of authenticator device 200. The hash function operator 202 combines the challenge command 102 with a metric 204 using a hash function. The combined challenge command and metric summary are provided to an EdDSA signature operation 208, which signs the summary using a private key 206. The signed summary, along with the public key / authentication chain, is returned to... Figure 2A The authenticator device 100 acts as a pass-through signal 130. The public key is stored by the authenticator device 200 and can be sent to other devices in response to a "get cert." command from another device. The authentication chain can be used to verify whether the public key has been recognized.
[0073] exist Figure 2A In this process, the signature summary and public key / authentication chain are received as pass signal 130. Challenge command 102 is combined with reference list 104 by hash function operator 106 using a hash function. The combined challenge command and reference list data are provided to EdDSA verification operation 110, which additionally receives pass signal 130, including signature summary and public key 108 from authenticator device 200. EdDSA verification operation 110 generates pass / fail signal 112, indicating whether authenticator device 200 has verified (passed) or failed to verify (failed).
[0074] Figure 3 An exemplary authenticator device 200 including a vehicle is shown, the vehicle including a CCU 10 and several other vehicle systems controllable by the CCU 10. The device 200 includes: a CCU 10, a motor 210 configured to provide output torque via an output component 212, a braking system 220, a wireless communication receiver and antenna 230, and a rear-seat entertainment system 240. The disclosed systems and methods enable the CCU 10 to provide computerized control of the illustrated vehicle systems, while ensuring that the modules and software in the CCU 10 are validated and will provide operation of the device 200 according to parameters intended by the manufacturer.
[0075] Figure 4 An exemplary system 300 for authenticating PCIe components is illustrated schematically. Figure 2A Verification device 100 and Figure 2B The authenticator device 200. Verifier device 100 and authenticator device 200 can be directly connected via a direct serial connection. A power supply 310 and a data bus connection 320 are shown. Additionally, a power switch 304 and a data access switch 302 are shown. Verifier device 100 is shown to include a control signal 330 configured to control the power switch 304 and the data access switch 302. Depending on the control signal provided by verifier device 100, authenticator device 200 either grants access to power and data via switches 304 and 302 respectively, or denies access. Verifier device 100 provides a challenge action 341 to authenticator device 200. Authenticator device 200 is programmed to resist MiTM attacks and is therefore programmed to provide a counter-challenge action 342 to verifier device 100. Verifier device 100 operates the disclosed method to create a signed summary proving the authenticity of verifier device 100 and challenge action 341 by providing a challenge response action 343. As a result of receiving a valid challenge response from the verifier device 100, the authenticator device 200 includes: programming to perform a forward response challenge action 341 by providing a challenge response action 344, and operating the disclosed methods to create a signed summary proving the authenticity of the authenticator device 200.
[0076] Figure 5 An exemplary SoC unit 90 is shown inserted into slot B (Compute Unit Plug-in #1 34) of CCU 10. The SoC unit 90 includes a PCIe connector configured to insert into a mating connection on slot B (Compute Unit Plug-in #1 34 connected to board 11).
[0077] The disclosed electronic components and combinations thereof can be configured to implement a variety of tangible functions. In several non-limiting examples, the electronic components can control access to and content of entertainment systems, operation of wireless communications, provision of navigation instructions to units or devices, monitoring of sensors and processing of sensor information, operation and speed of electric motors, and various functions in a vehicle (such as navigation, propulsion, braking, environmental systems, wipers, headlights, and in-vehicle infotainment). The disclosed systems and methods provide increased security to these systems to prevent unintentional, malicious, unauthorized, rogue, or other inappropriate operations on these systems and their tangible outputs.
[0078] While the optimal mode for carrying out this disclosure has been described in detail, those skilled in the art associated with this disclosure will recognize various alternative designs and embodiments that implement the disclosure within the scope of the appended claims.
Claims
1. A method for certifying multiple electronic components, including: To operate the system, the system includes: The plurality of electronic components are configured to communicate electronically with each other, wherein a first electronic component of the plurality of electronic components provides the system with one of plug-in hardware, configurable hardware, updatable software, configurable software, updatable firmware, configurable firmware, or updatable ownership information. The second electronic component, utilizing the plurality of electronic components, performs the authentication on the first electronic component using asymmetric key encryption to verify the authenticity of the first electronic component; When the authenticity of the first electronic component is successfully verified using the asymmetric key encryption: Selectively implement either a power connection or a data connection to the first electronic component; and Communication is made between the first electronic component and the remainder of the plurality of electronic components to realize tangible functions that can be provided by the plurality of electronic components; and When the asymmetric key encryption fails to successfully verify the authenticity of the first electronic component, selective retention is made to either the power connection or the data connection of the first electronic component. Operating the system further includes connecting the plurality of electronic components to a central computing unit including a circuit board; The second electronic component is soldered to the circuit board; Further includes: The second electronic component is defined as a trusted device acting as a verifier; and The electronic component is defined as a verified authenticator.
2. The method according to claim 1, further comprising, when the authenticity of the first electronic component is successfully verified using the asymmetric key encryption, performing authentication on the second electronic component using the first electronic component.
3. The method according to claim 1, further comprising, when the authenticity of the first electronic component is successfully verified by encryption using the asymmetric key, performing authentication on a third electronic component of the plurality of electronic components using the first electronic component.
4. The method according to claim 1, wherein, The second electronic component is one of the following: board management controller, peripheral component interconnection fast switch, Ethernet switch, and dedicated hardware security module.
5. The method of claim 1, further comprising communicating with a remote server device to establish the second electronic component as a trusted device.
6. The method according to claim 1, wherein, Encryption using asymmetric keys includes using one of the Edwards curve digital signature algorithm, elliptic curve digital signature algorithm, or digital signature algorithm.
7. The method according to claim 1, wherein, Communication between the first electronic component and the remainder of the plurality of electronic components includes encryption using a symmetric key.
8. The method according to claim 1, wherein, Operating the system further includes receiving the first electronic component as a plug-in device.
9. The method according to claim 1, wherein, Receiving the first electronic component includes connecting the first electronic component to the system using a peripheral component interconnection fast link, wireless link, Ethernet link, or serial link.
10. The method according to claim 1, wherein, Performing the authentication on the first electronic component using the second electronic component of the plurality of electronic components includes performing the authentication during a system boot and after a device reset.
11. A method for certifying electronic components on a circuit board, comprising: To operate an electronic device, the electronic device comprising: The circuit board; The microcontroller attached to the circuit board; and The electronic component attached to the circuit board provides the electronic device with one of plug-in hardware, configurable hardware, updatable software, configurable software, updatable firmware, configurable firmware, or updatable ownership information. The microcontroller is defined as a trusted device that acts as a verifier; The electronic component is defined as a verified authenticator; The verifier is used to verify the authenticity of the authenticator being verified by using an asymmetric key for encryption. When the authenticity of the verified authenticator is successfully verified using the asymmetric key encryption, selective connection to either the power supply or data connection of the electronic component is established, and communication occurs between the electronic component and the microcontroller to realize tangible functions that can be provided by the electronic component and the microcontroller; and When the authenticity of the authenticator being verified fails to be successfully verified using the asymmetric key encryption, it is selectively retained in either the power connection or the data connection of the electronic component.
12. The method according to claim 11, wherein, The microcontroller is soldered to the circuit board.
13. The method according to claim 11, wherein, The electronic device is the first electronic device; and Defining the microcontroller as the trusted device includes: verifying the microcontroller as the trusted device using a second electronic device external to the first electronic device.
14. The method according to claim 11, wherein, Defining the microcontroller as the trusted device includes: verifying the microcontroller as the trusted device using a remote server device that communicates with the electronic device via a wireless communication network.
15. The method according to claim 11, wherein, The electronic device includes a central computing unit installed in the vehicle; and The microcontroller includes one of the board management controller of the central computing unit, the Ethernet switching unit of the electronic device, or the peripheral component interconnection fast switching unit of the electronic device.
16. The method according to claim 11, wherein, Verifying the authenticity of the authenticator being verified includes: A challenge is generated from the verifier to the authenticator being verified; Within the verified authenticator, the query is responded to using a reply signed with the private key, including: Measurements are collected within the verified authenticator; The metrics are combined with the queries using a hash function to create a summary; The summary is signed with the private key to create a signed summary; and The query is responded to by sending the signed summary to the verifier; Within the verifier, the accuracy of the response is confirmed by examining the response using the public key, the challenge, and the reference list data; and The authenticity of the authenticator is verified based on the accuracy of the response.
17. The method according to claim 16, wherein, The collection of the metrics includes collecting both invariant and variable metrics.
18. The method according to claim 17, wherein, The invariable degree includes the chip manufacturer identifier, the name of the verified authenticator, or a custom identifier; and The variable degree includes one of the following: bootloader image, software image, configuration, ownership representation, and hash value of the result from a secure boot operation.
Citation Information
Patent Citations
Method and system for managing an electrical device over a power delivery network
CN101411116A
Technologies for collective authorization with hierarchical group keys
US20170346640A1
Secure accelerator device pairing for trusted accelerator-to-accelerator communication
US20200145419A1