Abstract:
A method includes receiving (610, 712), from a device (302), (i) a certificate request for a certification authority (304) and (ii) a first digital certificate (404). The certificate request is digitally signed by the first device, and the first digital certificate is stored in the device. The method also includes verifying (612, 714), at the certification authority, the first digital certificate using a second digital certificate of another certification authority (320). The method further includes verifying (614, 718) a digital signature of the certificate request using the first digital certificate. In addition, the method includes, after verifying the first digital certificate and the digital signature, transmitting (618, 722) a second digital certificate (406) to the device.
Abstract:
A method includes generating (412, 610) a first encryption key based on a first cryptographic operation (408, 606) performed by cryptographic circuitry (214) and involving a cryptographic key (302) securely stored in a memory (218) of the cryptographic circuitry. The method also includes encrypting (416, 614) data to be protected using the first encryption key and storing (420, 618) the encrypted data on a persistent storage device (212) external to the cryptographic circuitry. The method could also include retrieving (502, 702) the encrypted data from the persistent storage device. The method could further include generating (508, 708) a second encryption key based on a second cryptographic operation (504, 704) performed by the cryptographic circuitry and involving the cryptographic key, where the second encryption key matches the first encryption key. In addition, the method could include decrypting (510, 710) the encrypted data using the second encryption key.
Abstract:
An apparatus includes a first distributed control system (DCS) node (202). The first DCS includes at least one interface configured to communicate, over a network (128), with a second DCS node (204). The first DCS node also includes at least one processing device. The processing device is configured to exchange a security association policy (411) with the second DCS node. The processing device is also configured to exchange public keys (412) with the second DCS node using the security association policy. The processing device is also configured to send a public key (542) of the second DCS node to a field programmable gate array (402) of the first DCS node. The processing device is also configured to receive a shared secret (544) from the field programmable gate array. The processing device is also configured to generate a hash (546) of a message using the shared secret.
Abstract:
A method includes securely booting a device (106, 114, 116, 122, 124, 130, 132, 138, 140, 142, 200) using a bootloader (FSBL, SSBL), where the bootloader is digitally signed (FSBL.sig, SSBL.sig) using a first cryptographic key (SSK) associated with the bootloader. The method also includes executing one or more kernel or user applications using the device, where the one or more kernel or user applications are digitally signed (Partition1.sig, Partition2.sig, Partition3.sig) using one or more second cryptographic keys (TSK) associated with the one or more kernel or user applications. In addition, the method includes using (800) an in-band channel to update or replace the first cryptographic key.