US-12621149-B2 - Secure component verification in information processing system environment
Abstract
Secure component verification for use in an information processing system environment is disclosed. For example, a method comprises storing a public key associated with a first component of a system on a second component of the system, and storing a public key associated with the second component on the first component. The public key associated with the first component and the public key associated with the second component are usable to respectively verify a trustworthiness of a replacement for the first component and a replacement for the second component.
Inventors
- Mahesh Babu Ramaiah
- Sudhansu Sekhar Sahu
- Joseph Brent Caisse
Assignees
- DELL PRODUCTS L.P.
Dates
- Publication Date
- 20260505
- Application Date
- 20230508
Claims (20)
- 1 . A method comprising: storing a public key associated with a first component of a system on a second component of the system; and storing a public key associated with the second component on the first component; wherein the public key associated with the first component and the public key associated with the second component are usable to respectively verify a trustworthiness of a replacement for the first component and a replacement for the second component, and wherein the verifying of the trustworthiness of the replacement for the first component is enabled to use a private key that is associated with the public key of the first component and is storable by a device manufacturer of the first component to enable signing a certificate signing request by the device manufacturer of the first component, and the verifying of the trustworthiness of the replacement for the second component is enabled to use a private key that is associated with the public key of the second component and is storable by a device manufacturer of the second component to enable signing a certificate signing request by the device manufacturer of the second component; wherein using the public key associated with the first component and the public key associated with the second component to respectively verify a trustworthiness of a replacement for the first component and a replacement for the second component further comprises: upon failure of the first component and receipt of the replacement for the first component, obtaining the public key associated with the first component from the second component and using the public key associated with the first component to verify the trustworthiness of the replacement for the first component against the private key associated with the first component used to digitally sign a first component certificate received with the replacement for the first component; and upon failure of the second component and receipt of the replacement for the second component, obtaining the public key associated with the second component from the first component and using the public key associated with the second component to verify the trustworthiness of the replacement for the second component against the private key associated with the second component used to digitally sign a second component certificate received with the replacement for the second component.
- 2 . The method of claim 1 , wherein the public key and the private key associated with the first component form a first component key pair, and the public key and the private key associated with the second component form a second component key pair, wherein the first component key pair and the second component key pair are each generated using public key cryptography.
- 3 . The method of claim 2 , wherein the first component key pair and the second component key pair are caused to be generated by a manufacturer of the system prior to delivery of the system to a client destination.
- 4 . The method of claim 1 , wherein: the public key associated with the first component stored on the second component is stored in a second component certificate generated for the second component which also comprises a second component certificate signing request, and wherein the second component certificate is digitally signed using the private key associated with the second component; and the public key associated with the second component stored on the first component is stored in a first component certificate generated for the first component which also comprises a first component certificate signing request, and wherein the first component certificate is digitally signed using the private key associated with the first component.
- 5 . The method of claim 4 , further comprising: during a boot process for the system with the replacement for the first component installed, pulling the public key associated with the first component stored in the second component certificate and using the public key associated with the first component to verify a digital signature of the first component certificate received with the replacement of the first component; and during a boot process for the system with the replacement for the second component installed, pulling the public key associated with the second component stored in the first component certificate and using the public key associated with the second component to verify a digital signature of the second component certificate received with the replacement of the second component.
- 6 . The method of claim 1 , further comprising: permitting the system to boot when the verification is successful; and preventing the system from booting when the verification is unsuccessful.
- 7 . The method of claim 1 , wherein the first component comprises a motherboard and the second component comprises a storage device.
- 8 . The method of claim 1 , wherein the system comprises an edge device configured to perform, upon booting up, a secure device onboarding process in accordance with a target computing platform.
- 9 . An apparatus comprising: at least one processing platform comprising at least one processor coupled to at least one memory, the at least one processing platform, when executing program code, is configured to: cause storage of a public key associated with a first component of a system on a second component of the system; and cause storage of a public key associated with the second component on the first component; wherein the public key associated with the first component and the public key associated with the second component are usable to respectively verify a trustworthiness of a replacement for the first component and a replacement for the second component, and wherein the verifying of the trustworthiness of the replacement for the first component is enabled to use a private key that is associated with the public key of the first component and is storable by a device manufacturer of the first component to enable signing a certificate signing request by the device manufacturer of the first component, and the verifying of the trustworthiness of the replacement for the second component is enabled to use a private key that is associated with the public key of the second component and is storable by a device manufacturer of the second component to enable signing a certificate signing request by the device manufacturer of the second component; wherein using the public key associated with the first component and the public key associated with the second component to respectively verify a trustworthiness of a replacement for the first component and a replacement for the second component further comprises: upon failure of the first component and receipt of the replacement for the first component, obtaining the public key associated with the first component from the second component and using the public key associated with the first component to verify the trustworthiness of the replacement for the first component against the private key associated with the first component used to digitally sign a first component certificate received with the replacement for the first component; and upon failure of the second component and receipt of the replacement for the second component, obtaining the public key associated with the second component from the first component and using the public key associated with the second component to verify the trustworthiness of the replacement for the second component against the private key associated with the second component used to digitally sign a second component certificate received with the replacement for the second component.
- 10 . The apparatus of claim 9 , wherein the public key and the private key associated with the first component form a first component key pair, and the public key and the private key associated with the second component form a second component key pair, wherein the first component key pair and the second component key pair are each generated using public key cryptography.
- 11 . The apparatus of claim 10 , wherein the first component key pair and the second component key pair are caused to be generated by a manufacturer of the system prior to delivery of the system to a client destination.
- 12 . The apparatus of claim 9 , wherein: the public key associated with the first component stored on the second component is stored in a second component certificate generated for the second component which also comprises a second component certificate signing request, and wherein the second component certificate is digitally signed using the private key associated with the second component; and the public key associated with the second component stored on the first component is stored in a first component certificate generated for the first component which also comprises a first component certificate signing request, and wherein the first component certificate is digitally signed using the private key associated with the first component.
- 13 . A computer program product comprising a non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by at least one processing device causes the at least one processing device to: cause storage of a public key associated with a first component of a system on a second component of the system; and cause storage of a public key associated with the second component on the first component; wherein the public key associated with the first component and the public key associated with the second component are usable to respectively verify a trustworthiness of a replacement for the first component and a replacement for the second component, and wherein the verifying of the trustworthiness of the replacement for the first component is enabled to use a private key that is associated with the public key of the first component and is storable by a device manufacturer of the first component to enable signing a certificate signing request by the device manufacturer of the first component, and the verifying of the trustworthiness of the replacement for the second component is enabled to use a private key that is associated with the public key of the second component and is storable by a device manufacturer of the second component to enable signing a certificate signing request by the device manufacturer of the second component; wherein using the public key associated with the first component and the public key associated with the second component to respectively verify a trustworthiness of a replacement for the first component and a replacement for the second component further comprises: upon failure of the first component and receipt of the replacement for the first component, obtaining the public key associated with the first component from the second component and using the public key associated with the first component to verify the trustworthiness of the replacement for the first component against the private key associated with the first component used to digitally sign a first component certificate received with the replacement for the first component; and upon failure of the second component and receipt of the replacement for the second component, obtaining the public key associated with the second component from the first component and using the public key associated with the second component to verify the trustworthiness of the replacement for the second component against the private key associated with the second component used to digitally sign a second component certificate received with the replacement for the second component.
- 14 . The computer program product of claim 13 , wherein the public key and the private key associated with the first component form a first component key pair, and the public key and the private key associated with the second component form a second component key pair, wherein the first component key pair and the second component key pair are each generated using public key cryptography.
- 15 . The computer program product of claim 14 , wherein the first component key pair and the second component key pair are caused to be generated by a manufacturer of the system prior to delivery of the system to a client destination.
- 16 . The computer program product of claim 13 , wherein: the public key associated with the first component stored on the second component is stored in a second component certificate generated for the second component which also comprises a second component certificate signing request, and wherein the second component certificate is digitally signed using the private key associated with the second component; and the public key associated with the second component stored on the first component is stored in a first component certificate generated for the first component which also comprises a first component certificate signing request, and wherein the first component certificate is digitally signed using the private key associated with the first component.
- 17 . The computer program product of claim 16 , further comprising: during a boot process for the system with the replacement for the first component installed, pulling the public key associated with the first component stored in the second component certificate and using the public key associated with the first component to verify a digital signature of the first component certificate received with the replacement of the first component; and during a boot process for the system with the replacement for the second component installed, pulling the public key associated with the second component stored in the first component certificate and using the public key associated with the second component to verify a digital signature of the second component certificate received with the replacement of the second component.
- 18 . The computer program product of claim 13 , further comprising: permitting the system to boot when the verification is successful; and preventing the system from booting when the verification is unsuccessful.
- 19 . The computer program product of claim 13 , wherein the first component comprises a motherboard and the second component comprises a storage device.
- 20 . The computer program product of claim 13 , wherein the system comprises an edge device configured to perform, upon booting up, a secure device onboarding process in accordance with a target computing platform.
Description
FIELD The field relates generally to information processing, and more particularly to techniques for managing information processing systems. BACKGROUND It is realized that deployed information processing systems often encounter faults and errors that require replacement of one or more components of the information processing systems. One non-limiting example is motherboard replacement in a computing system, e.g., a laptop, a desktop, a server, or any other processing device. By way of further example, such computing systems may be deployed in centralized computing networks (e.g., cloud computing networks) and/or distributed computing networks (e.g., edge computing networks). A motherboard installed in an edge device (i.e., a computing system in an edge computing network) typically contains a trusted platform module (TPM) to store cryptographic keys that serve to provide encryption functionalities for the edge device. Such encryption functionalities are important in terms of device initialization and ownership voucher creation, which later comes into play for secure device onboarding (SDO). SDO is a software solution that automates the process of onboarding devices, such as edge devices. Onboarding is a process by which a device establishes its first trusted connection with a network or service with which the device will function. When an existing motherboard goes bad due to, for example, damage or fault, a replacement motherboard would come with a different set of TPM generated keys. This can pose significant challenges such as, but not limited to, performing the SDO process. SUMMARY Illustrative embodiments provide secure component verification for use in an information processing system environment. In one illustrative embodiment, a method comprises storing a public key associated with a first component of a system on a second component of the system, and storing a public key associated with the second component on the first component. The public key associated with the first component and the public key associated with the second component are usable to respectively verify a trustworthiness of a replacement for the first component and a replacement for the second component. For example, using the public key associated with the first component and the public key associated with the second component to respectively verify a trustworthiness of a replacement for the first component and a replacement for the second component may comprise one of the two following scenarios. Upon failure of the first component and receipt of the replacement for the first component, the method may obtain the public key associated with the first component from the second component and use the public key associated with the first component to verify the trustworthiness of the replacement for the first component against a private key associated with the first component used to digitally sign a first component certificate received with the replacement for the first component. Alternatively, upon failure of the second component and receipt of the replacement for the second component, the method may obtain the public key associated with the second component from the first component and use the public key associated with the second component to verify the trustworthiness of the replacement for the second component against a private key associated with the second component used to digitally sign a second component certificate received with the replacement for the second component. Advantageously, illustrative embodiments overcome drawbacks that would arise by simply swapping components (e.g., motherboards and/or storage devices). For example, illustrative embodiments overcome device vulnerabilities caused by skipping or otherwise compromising secure device onboarding. These and other illustrative embodiments include, without limitation, methods, apparatus, networks, systems and processor-readable storage media. BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 illustrates an information processing system environment for secure device onboarding within which secure component verification functionalities according to one or more illustrative embodiments can be implemented. FIG. 2 illustrates a message flow with secure component verification functionalities according to an illustrative embodiment. FIG. 3 illustrates a factory deployment environment for an edge device according to an illustrative embodiment. FIG. 4 illustrates a process flow for secure component verification with respect to a first type of component according to an illustrative embodiment. FIG. 5 illustrates a process flow for secure component verification with respect to a second type of component according to an illustrative embodiment. FIG. 6 shows a methodology for secure component verification according to an illustrative embodiment. FIGS. 7 and 8 illustrate examples of processing platforms that may be utilized to implement at least a portion of an information processing syste