Security device, electronic device, and secure boot management system

By combining a key generator and a secure initiator, derived keys are generated and verified, thus mitigating the risk of unauthorized access during the startup process of electronic devices and enabling secure and reliable startup operations.

CN113204769BActive Publication Date: 2026-06-02SAMSUNG ELECTRONICS CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
SAMSUNG ELECTRONICS CO LTD
Filing Date
2021-01-22
Publication Date
2026-06-02

AI Technical Summary

Technical Problem

In the prior art, electronic devices are at risk of unauthorized boot image execution during the boot process, which could lead to data copying or illegal applications. Traditional secure boot chains cannot effectively prevent tampering and verification.

Method used

A key deriver is used to generate a derived key, a key protection method is used to verify the boot key, and a secure booter is used to verify the boot image, ensuring the confidentiality and legitimacy of the boot image. This includes the combined use of a key deriver, a key processor, a secure booter, and a processor.

Benefits of technology

It improves the security and reliability of the electronic device boot process, prevents unauthorized boot operations, ensures the confidentiality and legitimacy of the boot image, and protects the secure boot operation of the device.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113204769B_ABST
    Figure CN113204769B_ABST
Patent Text Reader

Abstract

A security device, an electronic device, a secure boot management system, a method for generating a boot image, and a method for executing a boot chain are provided. The security device includes a key deriver configured to receive a root key and a protected boot key included in a boot image, and generate a derived key using the root key and the protected boot key according to a key protection method; a key handler configured to perform verification using the generated derived key according to the key protection method to extract a boot key from the protected boot key included in the boot image; a secure booter configured to perform verification on a protected execution image included in the boot image using the extracted boot key; and a processor configured to execute a verified execution image on which the secure booter has completed verification.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Cross-references to related applications

[0002] This application claims priority to Korean Patent Application No. 10-2020-0011001, filed with the Korean Intellectual Property Office on January 30, 2020, the entire contents of which are incorporated herein by reference. Technical Field

[0003] The apparatus and methods consistent with the embodiments relate to security devices, electronic devices, secure boot management systems, methods for generating boot images, and methods for executing boot chains. Background Technology

[0004] Typically, electronic devices execute a boot image to perform initialization and boot operations that load the boot image (or kernel, operating system (OS), etc.). If the boot operation is performed by an unauthorized boot image, there are risks such as data copying or execution of unauthorized applications. Most manufacturers have adopted secure boot chains, which provide confidentiality by encrypting the boot image or checking for tampering by verifying the boot image's signature. Summary of the Invention

[0005] The exemplary embodiments provide security devices, electronic devices, and secure boot management systems with improved security and reliability.

[0006] The exemplary embodiments also provide a boot image generation method and a boot chain execution method with improved security and reliability.

[0007] However, it should be understood that the aspects of this disclosure are not limited to those set forth herein. The foregoing and other aspects of this disclosure will become more apparent to those skilled in the art upon reference to the detailed description provided below.

[0008] According to one aspect of an exemplary embodiment, a security device is provided, comprising: a key deriver configured to receive a root key and a protected boot key included in a boot image, and to generate a derived key using the root key and the protected boot key according to a key protection method; a key processor configured to perform verification using the generated derived key according to the key protection method to extract a boot key from the protected boot key included in the boot image; a secure booter configured to perform verification on a protected execution image included in the boot image using the extracted boot key; and a processor configured to execute a verified execution image that has been verified by the secure booter.

[0009] According to another aspect of an exemplary embodiment, an electronic device is provided, comprising: a storage device configured to store a boot image including a protected boot key and a protected execution image; and a security device configured to store a root key and use the root key to perform a boot operation to execute the boot image, wherein the security device is configured to generate a derived key using the root key and the protected boot key according to a predetermined key protection method, perform verification using the generated derived key according to the predetermined key protection method to extract a boot key from the protected boot key, and perform a boot operation using the extracted boot key.

[0010] According to another exemplary embodiment, a secure boot management system is provided, comprising: a key deriver configured to receive a root key and a key protection method, and generate a derived key using the received root key according to the received key protection method; a key protector configured to perform a protection operation on a boot key using the generated derived key according to the key protection method to generate a protected boot key; and a boot image generation system configured to perform a protection operation on an execution image using the boot key, and generate a boot image including the protected boot key and the protected execution image.

[0011] According to another exemplary embodiment, a method for generating a boot image is provided, the method comprising: receiving a root key and a key protection method; using the root key to generate a derived key according to the received key protection method; performing a protection operation on the boot key using the generated derived key according to the key protection method to generate a protected boot key; performing a protection operation on an execution image using the boot key; and generating a boot image including the protected boot key and the protected execution image.

[0012] According to another exemplary embodiment, a method for executing a boot chain is provided, the method comprising: receiving a root key and a protected boot key included in a boot image; generating a derived key using the root key and the protected boot key according to a key protection method; performing verification using the generated derived key according to the key protection method; extracting a boot key from the protected boot key included in the boot image; performing verification on a protected execution image included in the boot image using the extracted boot key; and executing the verified execution image to execute the boot image. Attached Figure Description

[0013] The above and other aspects and features will become clearer from a detailed description of exemplary embodiments of the present disclosure with reference to the accompanying drawings, in which:

[0014] Figure 1 This is a block diagram illustrating a security system according to an embodiment;

[0015] Figure 2 This describes the embodiments. Figure 1 A block diagram of the startup key protection system;

[0016] Figure 3 This describes the embodiments. Figure 1 A block diagram of the boot image generation system;

[0017] Figure 4 This describes the embodiments. Figure 1 A diagram of a storage device;

[0018] Figure 5 This describes the embodiments. Figure 1 A block diagram of the safety equipment;

[0019] Figure 6 This describes the embodiments. Figure 5 A block diagram of a key deriver;

[0020] Figure 7 This describes the embodiments. Figure 5 A block diagram of the key processor;

[0021] Figure 8 This is a flowchart illustrating a boot image generation method according to an embodiment;

[0022] Figure 9 and Figure 10 It is a diagram illustrating a method for generating a boot image according to one or more embodiments;

[0023] Figure 11 This is a flowchart illustrating a startup chain execution method according to an embodiment;

[0024] Figures 12 to 15 It is a diagram illustrating a startup chain execution method according to one or more embodiments;

[0025] Figure 16 and Figure 17 It is a diagram illustrating the effects of a security system according to one or more embodiments; and

[0026] Figures 18 to 21 It is shown that according to one or more embodiments Figure 1 A block diagram of an example electronic device is shown. Detailed Implementation

[0027] In the following description, exemplary embodiments of the present disclosure will be illustrated with reference to the accompanying drawings. Throughout the disclosure, expressions such as “at least one of a, b, or c” (or “at least one of a, b, and c”) indicate only a, only b, only c, both a and b, both a and c, both b and c, or all of a, b, and c.

[0028] Figure 1 This is a block diagram illustrating a security system 1 according to an embodiment.

[0029] Reference Figure 1 The security system 1 may include a secure boot management system 100 and an electronic device 200.

[0030] The secure boot management system 100 can create a boot image 212 that includes a protected boot key 212a and a protected execution image 212b. In this embodiment, the boot image is used as a general term for images, kernels, operating systems (OS), etc., used in the boot operation of the electronic device 200.

[0031] The secure boot management system 100 may include a boot key protection system 110 and a boot image generation system 120.

[0032] The boot key protection system 110 can generate a protected boot key 212a required or used by the boot image generation system 120 to create a boot image 212.

[0033] The boot image generation system 120 can generate a protected execution image 212b using a boot key and receive a protected boot key 212a generated from the boot key protection system 110. Furthermore, the boot image generation system 120 can generate a boot image 212 that includes the protected boot key 212a and the protected execution image 212b.

[0034] In some embodiments, the secure boot management system 100 may be implemented as a server. In this case, the boot key protection system 110 and the boot image generation system 120 included in the secure boot management system 100 may be implemented as software modules, respectively. However, it should be understood that the embodiments are not limited thereto, and the boot key protection system 110 and the boot image generation system 120 may be implemented as hardware, respectively.

[0035] Electronic device 200 can store boot image 212 created by secure boot management system 100 and execute the stored boot image 212 to perform boot operation.

[0036] Electronic device 200 may include storage device 210 and security device 220.

[0037] Storage device 210 may store boot image 212 created by secure boot management system 100. Specifically, according to an embodiment, storage device 210 may store boot image 212 created to include a protected boot key 212a and a protected execution image 212b.

[0038] The boot image 212 created by the Secure Boot Management System 100 can be provided to the electronic device 200 through various methods. In some embodiments, the boot image 212 can be provided from the Secure Boot Management System 100 for storage in the storage device 210 during the production of the electronic device 200. However, it should be understood that one or more other embodiments are not limited thereto. For example, in one or more other embodiments, the boot image 212 can be provided from the Secure Boot Management System 100 for storage in the storage device 210 via wireless and / or wired communication while the electronic device 200 is running.

[0039] Storage device 210 may include a non-volatile memory device. Specifically, storage device 210 may be configured to include at least one of, for example, phase-change RAM (PRAM), magnetoresistive RAM (MRAM), resistive RAM (ReRAM), ferroelectric RAM (FRAM), NAND flash memory, NOR flash memory, etc.

[0040] Security device 220 can execute boot image 212 stored in storage device 210 to perform boot operation of electronic device 200.

[0041] The security device 220 may be manufactured in the form of an integrated circuit (IC) and installed on the electronic device 200. The detailed operation of the security device 220 is described below.

[0042] In the following text, see below for reference. Figures 2 to 7 The configuration of the boot key protection system 110, boot image generation system 120, storage device 210 and security device 220 according to one or more embodiments is described in more detail.

[0043] Figure 2 This describes the embodiments. Figure 1 Block diagram of the startup key protection system 110.

[0044] Reference Figure 2 The key protection system 110 may include a key deriver 112 and a key protector 114.

[0045] The key deriver 112 is configured with a root key 302, additional information 304 (e.g., user additional information) and a key protection method 306, and can generate a derived key 312 from the root key 302.

[0046] In detail, the key deriver 112 can use the root key 302 to generate the derived key 312 required or used for the protection startup key 308, based on the provided key protection method 306. In this case, if the additional information 304 is determined by the user to be necessary or for security purposes, the key deriver 112 can take the additional information 304 into account when generating the derived key 312.

[0047] In this embodiment, the derived key 312 may be a key protection key used by the key protection method 306 to protect the startup key 308.

[0048] Key protection method 306 can be implemented in various ways as needed, by design, or as desired. By way of example, as key protection method 306 for secure boot, a boot image encryption method and a boot image verification method can be used.

[0049] First, to ensure the confidentiality of the boot image, it can be encrypted using a secret key. This secret key encryption can utilize any or most secret key encryption algorithms based on international standards. Typically, the encrypted boot image can be decrypted if the secret key is exposed externally. Therefore, the secret key can only be used in a manufacturer-managed secure environment and can be managed to prevent external exposure.

[0050] Next, the boot image verification method is a method that can verify whether a boot image has been created from a legitimate manufacturer. Boot image verification methods can include, for example, Message Authentication Code (MAC) based verification methods or public key based signature methods.

[0051] In MAC-based authentication methods, a MAC value for the boot image is generated using a MAC key that is only recognized by the manufacturer, and the generated MAC value is stored in the electronic device along with the boot image. Subsequently, the stored MAC value is verified during the secure boot process of the electronic device to check whether the stored boot image was created by a legitimate user or whether the boot image has been tampered with.

[0052] Here, the MAC key can be used to check for tampering with the boot image. The MAC key is a key set by the manufacturer and can be a value generated when creating a secure boot image. This generated MAC key, along with the MAC value stored with the boot image, can be used in the MAC authentication process. The MAC key can be used to verify tampering with the boot image and the legitimacy of the boot image generator.

[0053] In the public-key-based signature method, a signature value is generated using a private key and stored in the electronic device along with a boot image. Subsequently, the stored signature value is verified using the public key during the secure boot process of the electronic device, thereby checking whether the boot image was generated by a legitimate user or whether it has been tampered with.

[0054] Here, the private key can be used as the boot image signature generation key. The private key may be needed to generate an additional signature value for checking for tampering with the boot image. The boot image signature generation key needs to be, or can be, securely managed at the same level as the secret key used in secret key encryption.

[0055] On the other hand, the public key can be used as a verification key for the boot image signature. The public key may be needed or used to verify the signature of the boot image.

[0056] Unlike secret-key encryption or MAC-based verification methods, public-key signature methods can use schemes that separate the key used to generate the signature value from the key used to verify the signature value. Since the signature generation key cannot be regenerated using only the signature verification key (public key), additional key protection may not be required for the signature verification key, and the signature verification key (public key) itself can be visible.

[0057] The key deriver 112 may include a plurality of subkey derivers 112a to 112n to generate a derived key 312 used in such various key protection methods 306.

[0058] Although only four subkey derivers 112a, 112b, 112c, and 112n are illustrated in detail in the accompanying drawings by way of example, it should be understood that this is merely an example, and one or more other embodiments are not limited thereto. Key deriver 112 may also include additional subkey derivers in another embodiment, or even fewer subkey derivers in another embodiment.

[0059] When secret key encryption is used as key protection method 306, subkey deriver 112a can generate a derived key 312 for secret key encryption.

[0060] When (or based on) MAC operations are used as key protection method 306, subkey deriver 112b can generate a derived key 312 for MAC operations.

[0061] When (or based on) a public key-based signature is used as key protection method 306, subkey deriver 112c can generate a derived key 312 for generating an electronic signature.

[0062] When (or based on) a network standard certificate is used as key protection method 306, the subkey deriver 112n can generate a derived key 312 for generating the certificate.

[0063] The key protector 114 can perform a protection operation on the startup key 308 using the derived key 312 according to the key protection method 306, thereby generating a protected startup key 212a.

[0064] Specifically, the key protector 114 can generate a protected startup key 212a from the startup key 308 using the derived key 312 according to the provided key protection method 306.

[0065] The key protector 114 may have a configuration corresponding to the key deriver 112. Specifically, if the key deriver 112 includes a plurality of sub-key derivers 112a to 112n to generate a derived key 312 used in various key protection methods 306, then the key protector 114 may also include sub-key protectors 114a to 114n corresponding to the plurality of sub-key derivers 112a to 112n included in the key deriver 112.

[0066] Although only four subkey protectors 114a, 114b, 114c, and 114n are shown in detail in the accompanying drawings by way of example, it should be understood that this is merely an example, and one or more other embodiments are not limited thereto. In another embodiment, key protector 114 may also include additional subkey protectors, or in another embodiment, fewer subkey derivers.

[0067] When secret key encryption is used as key protection method 306, subkey protector 114a can generate protected start key 212a by encrypting start key 308 with derived key 312.

[0068] When (or based on) a MAC operation is used as key protection method 306, the subkey protector 114b can generate a protected startup key 212a by performing a MAC operation on the startup key 308 using the derived key 312.

[0069] When (or based on) a public key-based signature is used as key protection method 306, the subkey protector 114c can generate a protected start key 212a by generating an electronic signature for the start key 308 using the derived key 312.

[0070] When (or based on) a network standard certificate is used as key protection method 306, the subkey protector 114n can generate a protected startup key 212a by generating a certificate for startup key 308 using derived key 312.

[0071] exist Figure 2 In this diagram, the root key 302, user attachment information 304, key protection method 306, and startup key 308 used in the operation of the startup key protection system 110 are shown separately from the startup key protection system 110. However, it should be understood that this is for the sake of simplicity, and one or more other embodiments are not limited thereto.

[0072] In some embodiments, the boot key protection system 110 may be modified to store all of the root key 302, additional information 304, key protection method 306, and boot key 308. Furthermore, in some other embodiments, some of the root key 302, user additional information 304, key protection method 306, and boot key 308 may be stored in the boot key protection system 110, and the remainder may be stored in [other locations]. Figure 1 The security boot management system 100 shown.

[0073] In some embodiments, multiple key protection methods 306 can be used to generate the protected startup key 212a. For example, when a first key protection method 306 and a second key protection method 306 that are different from each other are used to generate the protected startup key 212a, the key deriver 112 can generate a first derived key 312 required or used by the first key protection method 306 from the root key 302, and generate a second derived key 312 required or used by the second key protection method 306 from the root key 302.

[0074] That is, the key deriver 112 can generate a first derived key and a second derived key 312 that are different from each other from the same root key 302.

[0075] In this case, the key protector 114 can perform a first protection operation on the startup key 308 using the first derived key 312 according to the first key protection method 306, and can perform a second protection operation on the startup key 308 using the second derived key 312 according to the second key protection method 306, thereby generating a protected startup key 212a.

[0076] In other words, a variety of key protection methods 306 can be used to generate a protected startup key 212a, depending on the user's needs.

[0077] Figure 3 This describes the embodiments. Figure 1 A block diagram of the boot image generation system 120.

[0078] Reference Figure 3The boot image generation system 120 can receive a protected boot key 212a from the boot key protection system 110. Furthermore, the boot image generation system 120 can generate a protected execution image 212b by performing protection operations on the execution image 332 using multiple updatable boot keys 308. Additionally, the boot image generation system 120 can generate a boot image 212 that includes the protected boot key 212a and the protected execution image 212b.

[0079] In some embodiments, the execution image 332 may have been stored in Figure 1 The secure boot management system 100 is stored in a storage device, but it should be understood that one or more other embodiments are not limited thereto.

[0080] Figure 4 This describes the embodiments. Figure 1 The diagram of storage device 210.

[0081] Reference Figure 4 According to one or more embodiments, ( Figure 1 The storage device 210 of the electronic device 200 can store (…) Figure 1 The secure boot management system 100 generates a boot image 212, which includes a protected boot key 212a and a protected execution image 212b.

[0082] In some embodiments, the storage device 210 may store a plurality of boot images 212 to 219 as needed or as instructed. The plurality of boot images 212 to 219 may each include different protected boot keys 212a to 219a and protected execution images 212b to 219b.

[0083] In other words, multiple boot images 212 to 219 can each include ( Figure 3 The different key protection methods 306 generate protected startup keys 212a to 219a and protected execution images 212b to 219b.

[0084] Figure 5 This explains Figure 1 Block diagram of safety device 220.

[0085] Reference Figure 5 Security device 220 may include storage device 222, key deriver 224, key processor 226, security initiator 227, internal memory 228, and processor 229.

[0086] Storage device 222 can store root key 302. The root key 302 stored in storage device 222 can be the same as described above (…). Figure 2The root key 302 of the startup key protection system 110 is the same key.

[0087] In some embodiments, storage device 222 may include non-volatile memory. For example, storage device 222 may be implemented as various types of memory, such as one-time programmable (OTP), several-time programmable (FTP), multiple-time programmable (MTP), etc. However, it should be understood that one or more other embodiments are not limited thereto and can be freely modified and implemented as needed, as long as storage device 222 can store the root key 302 fixed during the mass production of security device 220.

[0088] Key deriver 224 can generate verification ( Figure 1 The protected boot key 212a included in the boot image 212 stored in the storage device 210 is required by the storage device 210. Figure 12 (of) Derived key 352.

[0089] Specifically, the key deriver 224 can be based on ( Figure 2 Key protection method 306 uses root key 302 to generate the required or used key 212a for verifying the protected startup key. Figure 12 The derived key 352. Similarly, in this case, if ( Figure 2 If the additional information 304 is determined by the user to be necessary or for security purposes, then the key deriver 224 may consider ( Figure 2 Additional information (e.g., user additional information) to generate ( Figure 12 (of) Derived key 352.

[0090] In some embodiments, ( Figure 12 The key deriver 224 generates the derived key 352 as required or used by the key deriver 224. Figure 2 Key protection method 306 or ( Figure 2 Additional information 304 can be obtained from boot image 212. Alternatively, in some other embodiments, ( Figure 12 The key deriver 224 generates the derived key 352 as required or used by the key deriver 224. Figure 2 Key protection method 306 or ( Figure 2 Additional information 304 can be found from ( Figure 1 The Safe Start Management System 100 provides this.

[0091] Key deriver 224 can have the same characteristics as described above. Figure 2 The configuration corresponding to the key deriver 112 of the startup key protection system 110 is described below. Figure 6 To describe it in more detail.

[0092] Figure 6 This describes the embodiments. Figure 5 Block diagram of key deriver 224.

[0093] Reference Figure 6 Similar to the above Figure 2 The key deriver 112 and key deriver 224 may include multiple sub-key derivers 224a to 224n to generate ( Figure 2 The derived key 352 used in various key protection methods 306.

[0094] Although only four subkey derivers 224a, 224b, 224c, and 224n are illustrated in detail in the accompanying drawings by way of example, it should be understood that one or more other embodiments are not limited to the examples shown. For example, key deriver 224 may include additional and / or different subkey derivers, or may include fewer subkey derivers.

[0095] If (or based on) secret key encryption is used as ( Figure 5 The protected startup key 212a Figure 2 If the key protection method 306 is used, then the subkey deriver 224a can generate a key for decrypting the secret key. Figure 12 (of) Derived key 352.

[0096] If (or based on) MAC operations are used as ( Figure 5 The protected startup key 212a Figure 2 If the key protection method 306 is used, then the subkey deriver 224b can generate a key for MAC verification. Figure 12 (of) Derived key 352.

[0097] If (or based on) a public key-based signature is used as ( Figure 5 The protected startup key 212a Figure 2 If the key protection method 306 is used, then the subkey deriver 224c can generate a key for electronic signature verification. Figure 12 (of) Derived key 352.

[0098] If (or based on) network standard certificates are used as ( Figure 5 The protected startup key 212a Figure 2 If the key protection method 306 is used, then the subkey deriver 224n can generate a key for certificate verification. Figure 12 (of) Derived key 352.

[0099] Return to reference Figure 5 The key processor 226 uses the key generated from the key deriver 224 according to the key protection method. Figure 12The derived key 352 verifies the protected boot key 212a. Upon successful verification, the key processor 226 can extract from the protected boot key 212a the key used to verify the protected execution image 212b. Figure 13 (The) Startup key 362.

[0100] Key processor 226 may have the same characteristics as described above. Figure 2 The configuration corresponding to the key protector 114 of the startup key protection system 110 is described below. Figure 7 To describe it in more detail.

[0101] Figure 7 This describes the embodiments. Figure 5 Block diagram of key processor 226.

[0102] When (or based on) Figure 2 The key protector 114 of the startup key protection system 110 includes ( Figure 2 (of) subkey protectors 114a to 114n to use ( Figure 2 Various key protection methods 306 protection ( Figure 2 When the start key 308 is activated, the key processor 226 may also include a function for verification. Figure 2 The subkey processors 226a to 226n of each key protection method 306.

[0103] Although only four subkey processors 226a, 226b, 226c, and 226n are illustrated in detail in the accompanying drawings by way of example, it should be understood that one or more other embodiments are not limited thereto. For example, key processor 226 may include additional and / or different subkey processors, or fewer subkey processors.

[0104] If (or based on) secret key encryption is used as ( Figure 5 The protected startup key 212a Figure 2 The key protection method 306, then the subkey processor 226a can use ( Figure 12 )Derived key 352 pairs ( Figure 5 The protected startup key 212a is decrypted and extracted from ( Figure 5 Extraction of the protected startup key 212a Figure 13 (The) Startup key 362.

[0105] If (or based on) MAC operations are used as ( Figure 5 The protected startup key 212a Figure 2 The key protection method 306, then the subkey processor 226b can use ( Figure 12)Derived key 352 pairs ( Figure 5 The protected boot key 212a performs MAC verification and from ( Figure 5 Extraction of the protected startup key 212a Figure 13 (The) Startup key 362.

[0106] If (or based on) a public key-based signature is used as ( Figure 5 The protected startup key 212a Figure 2 The key protection method 306, then the subkey processor 226c can use ( Figure 12 )Derived key 352 pairs ( Figure 5 The protected startup key 212a is verified by its electronic signature, and from ( Figure 5 Extraction of the protected startup key 212a Figure 13 (The) Startup key 362.

[0107] If (or based on) network standard certificates are used as ( Figure 5 The protected startup key 212a Figure 2 The key protection method 306, then the subkey deriver 224n can use ( Figure 12 )Derived key 352 pairs ( Figure 5 Verify the certificate of the protected startup key 212a, and from ( Figure 5 Extraction of the protected startup key 212a Figure 13 (The) Startup key 362.

[0108] Return to reference Figure 5 The safety starter 227 can use the extracted ( Figure 13 The startup key 362 is used to verify the protected execution image 212b.

[0109] After verifying the protected execution image 212b, the secure bootloader 227 can ( Figure 14 The verified execution image 372 is stored in internal memory 228 or external memory located outside of security device 220, thereby allowing processor 229 to continue the boot process.

[0110] In some embodiments, various key protection methods can be used to extract (from the protected startup key 212a) Figure 13(The) Startup key 362. For example, if a protected startup key 212a is generated using a first key protection method and a second key protection method that are different from each other, the key deriver 224 can generate a first derivation key required or used to verify the first key protection method from the root key 302, and generate a second derivation key required or used to verify the second key protection method from the root key 302.

[0111] That is, the key deriver 224 can generate first and second derivation keys that are different from each other from the same root key 302.

[0112] In this scenario, key processor 226 can perform a first verification on the protected startup key 212a using a first derived key according to a first key protection method, and perform a second verification using a second derived key according to a second key protection method. Therefore, key processor 226 can extract (…) from the protected startup key 212a. Figure 13 (The) Startup key 362.

[0113] In other words, depending on the user's needs or settings, a variety of key protection methods can be used to extract (from the protected startup key 212a). Figure 13 (The) Startup key 362.

[0114] In some embodiments, such as Figure 4 As shown, when multiple boot images 212 to 219 have been stored in storage device 210, security device 220 can perform different boot operations for each of boot images 212 to 219.

[0115] For example, when (or based on) a first boot image 212 including a first protected boot key 212a and a first protected execution image 212b, and a second boot image 213 including a second protected boot key 213a different from the first protected boot key 212a and a second protected execution image 213b different from the first protected execution image 212b, which has been stored in storage device 210, key deriver 224 can use root key 302 and first protected boot key 212a to generate a first derived key, and use root key 302 and second protected boot key 213a to generate a second derived key.

[0116] Then, the key processor 226 can use the first derived key and the first protected startup key 212a to extract the first startup key from the first protected startup key 212a, and use the second derived key and the second protected startup key 213a to extract the second startup key from the second protected startup key 213a.

[0117] Subsequently, the secure bootloader 227 can perform a first boot operation using the first boot key and a second boot operation using the second boot key.

[0118] In the following text, refer to Figures 8 to 10 Describes a method for generating a boot image according to one or more embodiments.

[0119] Figure 8 This is a flowchart illustrating a startup image generation method according to an embodiment. Figure 9 and Figure 10 This is a diagram illustrating a method for generating a boot image according to some embodiments.

[0120] First, refer to Figure 8 Generate a derived key (operation S100).

[0121] For example, refer to Figure 9 The key deriver 112 of the startup key protection system 110 is configured with a root key 302, user additional information 304, and a key protection method 306. The key deriver 112 can use the root key 302 to generate a derived key 312 required or used to protect the startup key 308 according to the provided key protection method 306.

[0122] In this case, if multiple key protection methods 306 have been provided, the key deriver 112 can generate multiple derived keys 312 required by the key protection method 306 respectively.

[0123] Return to reference Figure 8 Use the derived key to generate a protected startup key (operation S110).

[0124] For example, refer to Figure 10 The key protector 114 of the startup key protection system 110 can generate a protected startup key 212a from the startup key 308 by using a derived key 312 according to the provided key protection method 306.

[0125] In this scenario, if multiple key protection methods 306 and multiple derived keys 312 have been provided, the key protector 114 can generate a protected startup key 212a from the startup key 308 by using the multiple derived keys 312 required or used by each key protection method 306. Therefore, in this embodiment, the startup key 308 can be a multiple-updateable startup key.

[0126] Return to reference Figure 8 A boot image is created using a protected boot key (operation S120).

[0127] For example, refer to Figure 3The boot image generation system 120 of the boot key protection system 110 is configured with a protected boot key 212a, a boot key 308, and an execution image 332. The boot image generation system 120 can perform a protection operation on the execution image 332 using the boot key 308.

[0128] As a result, a boot image 212 can be created, and it can include a protected boot key 212a and a protected execution image 212b.

[0129] For simplicity, only one protected execution image 212b is shown in the accompanying drawings; however, it should be understood that one or more other embodiments are not limited thereto. The boot image generation system 120 can be used by (… Figure 2 The different key protection methods 306 generate multiple different protected boot keys 212a to generate multiple boot images 212 including multiple protected execution images 212b.

[0130] Next, we will refer to Figures 11 to 15 Describes a startup chain execution method according to one or more embodiments.

[0131] Figure 11 This is a flowchart illustrating a startup chain execution method according to an embodiment. Figures 12 to 15 It is a diagram illustrating a startup chain execution method according to some embodiments.

[0132] First, refer to Figure 11 Generate a derived key (operation S200).

[0133] For example, refer to Figure 12 The key deriver 224 can be based on ( Figure 2 The key protection method 306 uses the root key 302 to generate the derived key 352 required or used to verify the protected startup key 212a. At this time, if ( Figure 2 If the additional information 304 is determined by the user to be necessary or for security purposes, then the key deriver 224 may consider ( Figure 2 Additional information 304 (e.g., user additional information) is used to generate a derived key 352.

[0134] In some embodiments, the key deriver 224 generates the derived key 352 as required or used by (…). Figure 2 Key protection method 306 or ( Figure 2 Additional information 304 can be obtained from boot image 212. Alternatively, in some other embodiments, key deriver 224 generates the derived key 352 as required or used by the key deriver. Figure 2 Key protection method 306 or ( Figure 2304 error message can be found from (the user's additional information) Figure 1 The Safe Start Management System 100 provides this.

[0135] In some embodiments, multiple key protection methods can be used to extract the startup key 362 from the protected startup key 212a. For example, when the protected startup key 212a is generated using (or based on) different first and second key protection methods, the key deriver 224 can generate a first derived key from the root key 302 required or used to verify the first key protection method, and a second derived key from the root key 302 required or used to verify the second key protection method. That is, the key deriver 224 can generate multiple derived keys 352.

[0136] Next, refer to Figure 11 The boot key is extracted from the boot image using a derived key (operation S210).

[0137] For example, refer to Figure 13 The key processor 226 can perform verification on the protected startup key 212a using the derived key 352 generated from the key deriver 224 according to the key protection method. When the verification is complete, the key processor 226 can extract the startup key 362 for verifying the protected execution image 212b from the protected startup key 212a.

[0138] In some embodiments, if multiple key protection methods are used to extract the startup key 362 from the protected startup key 212a, the key processor 226 can perform a first verification on the protected startup key 212a using a first derived key 352 according to the first key protection method, and perform a second verification on the protected startup key 212a using a second derived key 352 according to the second key protection method, thereby extracting the startup key 362 from the protected startup key 212a.

[0139] In other words, depending on the user's needs or settings, a variety of key protection methods can be used to extract the boot key 362 from the protected boot key 212a.

[0140] Next, refer to Figure 11 The extracted boot key is used to verify the protected execution image (operation S220). If (or based on) successful verification ("Yes" in step S230), the execution image is executed to execute the boot chain (step S240). If (or based on) verification failure ("No" in step S230), the boot process is terminated (step S250).

[0141] For example, refer to Figure 14The secure initiator 227 can perform verification on the protected execution image 212b using the initiation key 362 extracted by the key processor 226.

[0142] If (or based on) successful verification, then as follows Figure 15 As shown, the secure bootloader 227 can store the verified execution image 372 in the internal memory 228 of the secure device 220 or in the external memory 230 located outside the secure device 220 so that the processor 229 can continue the boot process.

[0143] On the other hand, if (or based on) verification fails, the boot process may be terminated because the reliability of the boot image cannot be guaranteed.

[0144] In some embodiments, the boot process execution of the secure bootloader 227 may be modified and performed differently from those described above. For example, unlike the embodiments described above, the secure bootloader 227 may first transfer the protected execution image 212b to the internal memory 228 or the external memory 230 located outside the security device 220 before verifying the protected execution image 212b. Thereafter, the secure bootloader 227 may execute a secure boot process including the verification described above. That is, the boot process execution of the secure bootloader 227 is not limited to the embodiments shown.

[0145] Figure 16 and Figure 17 It is a diagram illustrating the effects of a security system according to one or more embodiments.

[0146] Reference Figure 16 and Figure 17 In the aforementioned security system 1, even if a root key is determined during chip manufacturing, the startup key can be freely selected and updated throughout the product lifecycle, and can be discarded if unnecessary.

[0147] First, in the process of deriving the key protection key (derived key) used to protect the boot key, the derived key product can vary depending on the key protection method or user-added information. That is, even if the module or product manufacturer chooses the same boot key and the same method for protecting the boot key, the derived keys can be generated differently by inputting various information such as module provider information, product manufacturer information, and product manufacturing date as additional information. Then, the protected boot keys can also be generated differently from each other. Therefore, even under the same conditions, each manufacturer can configure a secure boot chain separately by differing additional information (e.g., user-added information or user-specific additional information).

[0148] Therefore, even in cases where a seller or provider outsources manufacturing to multiple manufacturers, or where multiple providers utilize equipment provided by a single chip manufacturer, there is no connection between them regarding the boot key and the methods used to protect it, so that the system can operate using an independent and secure boot chain.

[0149] For the root key set by the initial chip (e.g., security device) manufacturer, the module provider or product manufacturer can selectively apply the boot key and its protection methods during product manufacturing. Furthermore, even under the same conditions, different outputs can be generated based on user-added information. Therefore, multiple providers can operate separate and independent boot chains.

[0150] therefore,( Figure 1 The storage device 210 is capable of storing a first boot image including a first protected boot key at a first time point, and storing a second boot image including a second protected boot key different from the first protected boot key at a second time point after the first time point.

[0151] in this case,( Figure 1 The security device 220 stores the same root key at the first time point and the second time point, but the execution process of the security start chain can be different at those time points.

[0152] In detail, at the first time point, ( Figure 1 The security device 220 can use the stored root key and the first protected boot key to generate a first derived key, use the generated first derived key to extract the first boot key, and use the extracted first boot key to perform a boot operation. Furthermore, at the second time point, ( Figure 1 The security device 220 can use the stored root key and the second protected boot key to generate a second derived key that is different from the first derived key, use the generated second derived key to extract the second boot key, and use the extracted second boot key to perform a boot operation.

[0153] In summary, the following effects can be achieved in the aforementioned security system 1.

[0154] First, throughout the product lifecycle, by updating and setting the boot keys required or used in the secure boot process, boot keys can be managed at minimal cost without the need for additional storage space and management devices.

[0155] Next, throughout the product lifecycle, the encryption required or used in the secure boot process and the methods for protecting the generated boot keys can be changed without restriction.

[0156] Finally, since there is no specific connection between the root key determined during chip manufacturing and the startup key updated after mass production, the leakage of the startup key can be prevented even if the root key is exposed.

[0157] In the following text, see below for reference. Figures 18 to 21 The above describes ( Figure 1 Various examples of electronic devices 200.

[0158] Figures 18 to 21 This illustrates various embodiments. Figure 1 Block diagrams of examples of electronic devices 1000, 2000, 3000, and 4000.

[0159] Reference Figure 18 The electronic device 1000 may include at least one processor 1100, a network interface 1200, a memory 1300, a display device 1400, an input / output device 1500, and a security chip 1600.

[0160] Processor 1100 can execute a secure boot chain using security chip 1600. Processor 1100 can execute programs and control electronic device 1000. Electronic device 1000 can be connected to external devices (e.g., personal computers or networks) to exchange data via input / output device 1500.

[0161] The network interface 1200 can be implemented to communicate with an external network via various wired or wireless methods. The memory 1300 may include computer-readable instructions. When the instructions stored in the memory 1300 are executed in the processor 1100, the processor 1100 can perform the aforementioned operations. The memory 1300 can be volatile memory or non-volatile memory.

[0162] The memory 1300 may include a storage device for storing user data. The storage device may be an embedded multimedia card (eMMC), a solid-state drive (SSD), a universal flash storage device (UFS), etc. The storage device may include at least one non-volatile memory device. The non-volatile memory device may be NAND flash memory, vertical NAND (VNAND) flash memory, NOR flash memory, resistive random access memory (RRAM), phase-change RAM (PRAM), magnetic RAM (MRAM), ferroelectric RAM (FRAM), spin-torque RAM (STT-RAM), etc.

[0163] The display device 1400 can be implemented or configured to output data.

[0164] Input / output device 1500 may include input devices such as touchpads, keypads and input buttons, and output devices such as displays and speakers.

[0165] The security chip 1600 can be implemented or configured to execute a startup chain. The security chip 1600 can execute a secure startup chain as described above. The security chip 1600 may include a hardware security module (HSM) to securely store the hash value of the executable code used to verify the integrity of the executable code.

[0166] It should be understood that the embodiments described above (and below) can be implemented as hardware components, software components, and / or combinations of hardware and software components. For example, the devices, methods, and components described in the embodiments can be implemented using one or more general-purpose or special-purpose computers (e.g., processors, controllers, arithmetic logic units (ALUs), digital signal processors, microcomputers, field-programmable gate arrays (FPGAs), programmable logic units (PLUs), microprocessors, or any other device capable of executing and responding to instructions). The processing device may execute an operating system (OS) and one or more software applications executing on the operating system.

[0167] Meanwhile, the startup chain execution method according to the embodiments can be applied to Internet of Things (IoT) devices, mobile devices, and automotive devices.

[0168] Reference Figure 19 The IoT device 2000 may include a communication front-end block, a wireless communication block, a power control block, a read-only memory (ROM), a random access memory (RAM), a memory controller, a security chip 2010, a peripheral controller, and a central processing unit.

[0169] The security chip 2010 can be implemented to execute the boot chain of the IoT device 2000. The security chip 2010 can execute the secure boot chain in the manner described above.

[0170] Reference Figure 20 The mobile device 3000 may include a central processing unit (CPU) 3100, memory, peripheral controller, communication block 3200, graphics processing unit (GPU), multimedia module, digital signal processor (DSP), camera and display.

[0171] CPU 3100 and communication block 3200 may each include a corresponding security chip 3110 and security chip 3210. In this case, each of security chip 3110 and security chip 3210 can execute a secure boot chain in the manner described above.

[0172] Reference Figure 21 The vehicle electronic equipment 4000 may include a CPU 4100, memory, communication block, vision processing unit 4200, peripheral controller, video DSP, image DSP, camera and display.

[0173] The CPU 4100 and the vision processing unit 4200 may each include a corresponding security chip 4110 and a security chip 4210. In this case, each of the security chip 4110 and the security chip 4210 can execute a secure boot chain in the manner described above.

[0174] For example, the boot key of the vehicle's electronic device 4000 might be exposed by a hacker. Once the exposure of the boot key is confirmed, the vehicle manufacturer or the manufacturer of the vehicle's electronic device can simply remove the association with the exposed boot key by discarding it and updating the protected boot image with a newly generated boot key, as described above. Therefore, the reliability of the secure boot process used for the vehicle's electronic device 4000 can be maintained.

[0175] Although exemplary embodiments have been specifically shown and described above, it will be understood that various changes in form and detail may be made therein without departing from the spirit and scope of the claims.

Claims

1. A safety device, comprising: A non-volatile memory device is configured to store the root key; A key deriver is configured to obtain the root key and a protected boot key included in the boot image, and to generate a derived key using the root key and the protected boot key according to a key protection method. A key processor is configured to perform verification using the generated derived key according to the key protection method to extract a startup key from the protected startup key included in the startup image; A secure launcher is configured to perform verification on the protected execution image included in the launch image using the extracted launch key; as well as The processor is configured to execute a verified execution image that has been validated by the secure initiator. The non-volatile memory device is further configured to store the same root key at a first time point and at a second time point after the first time point, and The safety device is configured as follows: At the first time point, the first boot key is retrieved using the same root key stored in the non-volatile memory device and the first protected boot key stored in the memory device, and the retrieved first boot key is used to perform the boot operation. At the second time point, the second boot key is extracted using the same root key stored in the non-volatile memory device and a second protected boot key stored in the memory device that is different from the first protected boot key, and the extracted second boot key is used to perform the boot operation.

2. The safety device according to claim 1, wherein: The key protection methods include a first key protection method and a second key protection method that are different from each other; and The key processor is configured to perform a first verification according to the first key protection method and a second verification according to the second key protection method to extract the startup key from the protected startup key.

3. The safety device according to claim 2, wherein: The derived key includes a first derived key generated according to the first key protection method and a second derived key generated according to the second key protection method; The key processor is configured to perform the first verification using the first derived key according to the first key protection method; and The key processor is configured to perform the second verification using the second derived key according to the second key protection method.

4. The safety device according to claim 1, further comprising: A volatile internal memory, arranged within the security device, stores the verified execution image. The processor is configured to execute a secure boot chain using the verified execution image stored in the volatile internal memory.

5. The safety device according to claim 1, wherein, The key processor includes: A first subkey processor is configured to decrypt the protected startup key to extract the startup key; The second subkey processor is configured to perform Message Authentication Code (MAC) verification on the protected startup key to extract the startup key; A third subkey processor is configured to verify the electronic signature of the protected startup key in order to extract the startup key; and A fourth subkey processor is configured to verify the certificate of the protected startup key in order to extract the startup key.

6. The safety device according to claim 5, wherein: The key deriver includes: A first subkey deriver is configured to generate a first derived key for the decryption. The second subkey deriver is configured to generate a second derived key for the MAC verification. The third subkey deriver is configured to generate a third derived key for signature verification, and The fourth subkey deriver is configured to generate a fourth derived key for certificate verification. The first subkey processor is configured to use the first derived key to extract the startup key; The second subkey processor is configured to use the second derived key to extract the startup key; The third subkey processor is configured to use the third derived key to extract the startup key; and The fourth subkey processor is configured to use the fourth derived key to extract the startup key.

7. An electronic device, comprising: The storage device is configured to store a boot image including a protected boot key and a protected execution image; as well as A security device is configured to store a root key and perform a boot operation to execute the boot image using the root key. The safety device is configured as follows: A derived key is generated using the root key and the protected startup key according to a predetermined key protection method. Verification is performed using the generated derived key according to the predetermined key protection method to extract the startup key from the protected startup key; and The boot operation is performed using the extracted boot key. The storage device is further configured as follows: At the first point in time, a first boot image including a first protected boot key is stored; and At a second time point after the first time point, a second boot image is stored, including a second protected boot key that is different from the first protected boot key. The safety device is configured as follows: The same root key is stored at the first time point and the second time point. At the first time point, the same stored root key and the first protected boot key are used to extract the first boot key, and the extracted first boot key is used to perform the boot operation. At the second time point, the same root key and the second protected boot key are used to extract the second boot key, and the extracted second boot key is used to perform the boot operation.

8. The electronic device according to claim 7, wherein, The safety device is configured as follows: The extracted boot key is used to perform verification on the protected execution image, and The startup operation is performed by executing the verified execution image that has already undergone the aforementioned verification.

9. The electronic device according to claim 7, wherein, The safety device is configured as follows: At the first time point, a first derived key is generated using the same stored root key and the first protected startup key, and the generated first derived key is used to extract the first startup key. At the second time point, the stored root key and the second protected boot key are used to generate a second derived key, and the generated second derived key is used to extract the second boot key.

10. The electronic device according to claim 9, wherein, The first derived key and the second derived key generated are different from each other.

11. The electronic device according to claim 7, wherein: The storage device is configured for storage: The first boot image includes a first protected boot key and a first protected execution image, and The second boot image includes a second protected boot key different from the first protected boot key and a second protected execution image different from the first protected execution image; and The safety device is configured as follows: The stored root key and the first protected boot key are used to extract the first boot key, and the extracted first boot key is used to perform the first boot operation. The stored root key and the second protected boot key are used to extract the second boot key, and the extracted second boot key is used to perform the second boot operation.

12. The electronic device according to claim 11, wherein, The safety device is configured as follows: A first derived key is generated using the stored root key and the first protected boot key, and the generated first derived key is used to extract the first boot key. The stored root key and the second protected boot key are used to generate a second derived key, which is then used to extract the second boot key.

13. The electronic device according to claim 7, wherein: The predetermined key protection methods include a first key protection method and a second key protection method that are different from each other; and The security device is configured to extract the startup key from the protected startup key by performing a first verification according to the first key protection method and a second verification according to the second key protection method.

14. The electronic device according to claim 13, wherein: The derived key includes a first derived key generated according to the first key protection method and a second derived key generated according to the second key protection method; The security device is configured to perform the first verification using the first derived key according to the first key protection method; and The security device is configured to perform the second verification using the second derived key according to the second key protection method.

15. A secure boot management system, comprising: A key deriver is configured to receive a root key and a key protection method, and generate a derived key using the received root key according to the received key protection method. A key protector is configured to perform a protection operation on the startup key using the generated derived key according to the key protection method, so as to generate a protected startup key; as well as A boot image generation system is configured to perform a protection operation on the execution image using the boot key, and generate a boot image including the protected boot key and the protected execution image. The storage device is configured to: at a first time point, store a first boot image generated by the boot image generation system, including a first protected boot key; and at a second time point after the first time point, store a second boot image generated by the boot image generation system, including a second protected boot key different from the first protected boot key. The safety equipment is configured as follows: The same root key is stored at the first time point and the second time point. At the first time point, the same stored root key and the first protected boot key are used to extract the first boot key, and the extracted first boot key is used to perform the boot operation. At the second time point, the same root key and the second protected boot key are used to extract the second boot key, and the extracted second boot key is used to perform the boot operation.

16. The secure boot management system according to claim 15, wherein: The key protection methods include a first key protection method and a second key protection method that are different from each other. The derived key includes a first derived key generated from the root key according to the first key protection method and a second derived key generated from the root key according to the second key protection method, and The key protector is configured to perform a first protection operation on the startup key using the first derived key according to the first key protection method, and to perform a second protection operation on the startup key using the second derived key according to the second key protection method, so as to generate the protected startup key.

17. The secure boot management system according to claim 15, wherein: The key deriver is configured with user-added information to generate the derived key; and The key deriver is configured to generate the derived key using the root key, the key protection method, and the user-added information.

18. The secure boot management system according to claim 15, wherein, The key protector includes: The first subkey protector is configured to perform an encryption operation to generate the protected startup key; The second subkey protector is configured to generate a message authentication code (MAC) to generate the protected startup key; A third subkey protector is configured to generate a digital signature to generate the protected startup key; and The fourth subkey protector is configured to generate a certificate to generate the protected startup key.