[go: up one dir, main page]

CN116340954B - Data security channel establishment method, system control processor and starting firmware - Google Patents

Data security channel establishment method, system control processor and starting firmware Download PDF

Info

Publication number
CN116340954B
CN116340954B CN202310305032.1A CN202310305032A CN116340954B CN 116340954 B CN116340954 B CN 116340954B CN 202310305032 A CN202310305032 A CN 202310305032A CN 116340954 B CN116340954 B CN 116340954B
Authority
CN
China
Prior art keywords
key
system control
control processor
firmware
startup firmware
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202310305032.1A
Other languages
Chinese (zh)
Other versions
CN116340954A (en
Inventor
汤彩芸
张明波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hexin Technology Co ltd
Original Assignee
Hexin Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hexin Technology Co ltd filed Critical Hexin Technology Co ltd
Priority to CN202310305032.1A priority Critical patent/CN116340954B/en
Publication of CN116340954A publication Critical patent/CN116340954A/en
Application granted granted Critical
Publication of CN116340954B publication Critical patent/CN116340954B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/572Secure firmware programming, e.g. of basic input output system [BIOS]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

本申请属于通信安全技术领域,公开了一种数据安全通道建立方法、系统控制处理器和启动固件,该方法包括:根据预存储的启动固件密钥生成启动固件密钥哈希,并向启动固件发送请求报文;接收启动固件发送的响应报文,判断真实启动固件密钥哈希和启动固件密钥哈希是否一致;若一致,则根据系统控制处理器密钥哈希和预存储的启动固件密钥生成共享密钥;将共享密钥发送至启动固件;接收启动固件的采用共享密钥加密的加密响应报文;根据系统控制处理器中的共享密钥对加密响应报文进行解密,在解密成功后根据共享密钥对后续发送给启动固件的报文进行加密。本申请可以达到提高系统控制处理器和启动固件之间数据传输的安全性和保密性的效果。

This application belongs to the field of communication security technology and discloses a data security channel establishment method, a system control processor and startup firmware. The method includes: generating a startup firmware key hash based on a pre-stored startup firmware key, and sending the startup firmware key hash to the startup firmware. Send a request message; receive the response message sent by the startup firmware, and determine whether the real startup firmware key hash and the startup firmware key hash are consistent; if they are consistent, the system controls the processor key hash and the pre-stored startup The firmware key generates a shared key; sends the shared key to the startup firmware; receives an encrypted response message encrypted by the shared key from the startup firmware; decrypts the encrypted response message according to the shared key in the system control processor, After successful decryption, subsequent messages sent to the startup firmware are encrypted based on the shared key. This application can achieve the effect of improving the security and confidentiality of data transmission between the system control processor and the startup firmware.

Description

一种数据安全通道建立方法、系统控制处理器和启动固件A data security channel establishment method, system control processor and startup firmware

技术领域Technical field

本申请涉及通信安全技术领域,尤其涉及一种数据安全通道建立方法、系统控制处理器和启动固件。The present application relates to the field of communication security technology, and in particular to a method for establishing a data security channel, a system control processor and startup firmware.

背景技术Background technique

在目前的Power处理器架构中,启动固件HostBoot是用于初始化处理器以及BUS总线以及初始化内存的模块,系统控制处理器SCP是用于加载HostBoot以及配置CPU状态的模块,但系统控制处理器和启动固件之间是以明文方式进行数据通信的,也就是说攻击者可以通过物理手段获取到系统控制处理器和启动固件之间的数据,或者注入非法攻击导致系统控制处理器或启动固件识别错误信息,造成严重的安全漏洞。In the current Power processor architecture, the startup firmware HostBoot is a module used to initialize the processor and BUS bus and initialize the memory. The system control processor SCP is a module used to load HostBoot and configure the CPU status. However, the system control processor and Data communication between startup firmware is in clear text, which means that an attacker can obtain the data between the system control processor and startup firmware through physical means, or inject illegal attacks to cause misidentification of the system control processor or startup firmware. information, causing serious security vulnerabilities.

因此,现有技术中存在系统控制处理器和启动固件之间以明文方式进行数据通信、易遭受非法攻击导致数据传输安全性低、保密性差的问题。Therefore, there is a problem in the existing technology that data communication between the system control processor and the startup firmware is performed in plain text and is vulnerable to illegal attacks, resulting in low data transmission security and poor confidentiality.

发明内容Contents of the invention

本申请提供了一种数据安全通道建立方法、系统控制处理器和启动固件,能够提高系统控制处理器和启动固件之间数据传输的安全性和保密性,避免了发生信息泄露的情况。This application provides a data security channel establishment method, a system control processor and startup firmware, which can improve the security and confidentiality of data transmission between the system control processor and the startup firmware and avoid information leakage.

第一方面,本申请实施例提供了一种数据安全通道建立方法,该方法包括:In the first aspect, embodiments of the present application provide a method for establishing a data security channel, which method includes:

根据系统控制处理器中预存储的启动固件密钥生成启动固件密钥哈希,并向启动固件发送用于请求建立安全通道的请求报文;Generate a startup firmware key hash based on the startup firmware key pre-stored in the system control processor, and send a request message for requesting the establishment of a secure channel to the startup firmware;

接收启动固件发送的响应报文,响应报文包括启动固件的真实启动固件密钥哈希,判断真实启动固件密钥哈希和启动固件密钥哈希是否一致;Receive the response message sent by the startup firmware, the response message includes the real startup firmware key hash of the startup firmware, and determine whether the real startup firmware key hash and the startup firmware key hash are consistent;

若一致,则根据系统控制处理器中的系统控制处理器密钥哈希和预存储的启动固件密钥生成共享密钥;若不一致,则安全通道建立失败;If they are consistent, the shared key is generated based on the system control processor key hash in the system control processor and the pre-stored startup firmware key; if they are inconsistent, the secure channel establishment fails;

在生成共享密钥后,将共享密钥发送至启动固件;After generating the shared key, send the shared key to the boot firmware;

接收启动固件的采用共享密钥加密的加密响应报文;Receive an encrypted response message encrypted with a shared key to start the firmware;

根据系统控制处理器中的共享密钥对加密响应报文进行解密,在解密成功后根据共享密钥对后续发送给启动固件的报文进行加密。The encrypted response message is decrypted according to the shared key in the system control processor, and after the decryption is successful, subsequent messages sent to the startup firmware are encrypted according to the shared key.

进一步的,上述根据系统控制处理器中预存储的启动固件密钥生成启动固件密钥哈希,包括:通过调用系统控制处理器上的可信平台模组硬件算法接口来调用哈希算法,通过哈希算法将系统控制处理器中预存储的启动固件密钥生成启动固件密钥哈希。Further, the above method of generating a startup firmware key hash based on the startup firmware key pre-stored in the system control processor includes: calling the hash algorithm by calling the trusted platform module hardware algorithm interface on the system control processor. The hash algorithm generates a boot firmware key hash from the boot firmware key prestored in the system control processor.

进一步的,上述哈希算法为sha256哈希算法。Further, the above hash algorithm is the sha256 hash algorithm.

进一步的,上述根据系统控制处理器中的系统控制处理器密钥哈希和预存储的启动固件密钥生成共享密钥,包括:根据系统控制处理器中的系统控制处理器密钥哈希和预存储的启动固件密钥通过对称加密算法生成共享密钥。Further, the above method of generating a shared key based on the system control processor key hash in the system control processor and the pre-stored startup firmware key includes: based on the system control processor key hash and the pre-stored startup firmware key in the system control processor. The pre-stored boot firmware key generates a shared secret key using a symmetric encryption algorithm.

进一步的,上述在生成共享密钥后,将共享密钥发送至启动固件,包括:Further, after generating the shared key above, the shared key is sent to the startup firmware, including:

在生成共享密钥后,根据系统控制处理器中预存储的启动固件密钥对共享密钥进行加密,得到密文,将密文发送至启动固件。After the shared key is generated, the shared key is encrypted according to the startup firmware key pre-stored in the system control processor to obtain the ciphertext, and the ciphertext is sent to the startup firmware.

进一步的,上述对称加密算法为AES256对称加密算法或者商密1号算法。Further, the above-mentioned symmetric encryption algorithm is AES256 symmetric encryption algorithm or Shangmi No. 1 algorithm.

第二方面,本申请实施例提供了一种系统控制处理器,该系统控制处理器包括:In a second aspect, embodiments of the present application provide a system control processor, which includes:

哈希模块,用于根据系统控制处理器中预存储的启动固件密钥生成启动固件密钥哈希,并向启动固件发送用于请求建立安全通道的请求报文;A hash module, configured to generate a hash of the startup firmware key based on the startup firmware key pre-stored in the system control processor, and send a request message for requesting the establishment of a secure channel to the startup firmware;

判断模块,用于接收启动固件发送的响应报文,响应报文包括启动固件的真实启动固件密钥哈希,判断真实启动固件密钥哈希和启动固件密钥哈希是否一致;The judgment module is used to receive the response message sent by the startup firmware. The response message includes the real startup firmware key hash of the startup firmware, and determines whether the real startup firmware key hash and the startup firmware key hash are consistent;

共享密钥生成模块,用于根据系统控制处理器中的系统控制处理器密钥哈希和预存储的启动固件密钥生成共享密钥;a shared key generation module for generating a shared key based on the system control processor key hash in the system control processor and the pre-stored startup firmware key;

发送模块,用于在生成共享密钥后,将共享密钥发送至启动固件;The sending module is used to send the shared key to the startup firmware after generating the shared key;

报文接收模块,用于接收启动固件的采用共享密钥加密的加密响应报文;The message receiving module is used to receive the encrypted response message encrypted by the shared key for starting the firmware;

解密模块,用于根据系统控制处理器中的共享密钥对加密响应报文进行解密,在解密成功后根据共享密钥对后续发送给启动固件的报文进行加密。The decryption module is used to decrypt the encrypted response message based on the shared key in the system control processor, and after successful decryption, encrypt subsequent messages sent to the startup firmware based on the shared key.

第三方面,本申请实施例提供了一种数据安全通道建立方法,该方法包括:In the third aspect, embodiments of the present application provide a method for establishing a data security channel, which method includes:

在接收到系统控制处理器发送的用于请求建立安全通道的请求报文后,发送响应报文至系统控制处理器,响应报文包括启动固件的真实启动固件密钥哈希;After receiving a request message sent by the system control processor to request the establishment of a secure channel, send a response message to the system control processor, where the response message includes the hash of the real startup firmware key that starts the firmware;

响应报文用于指示系统控制处理器判断真实启动固件密钥哈希和系统控制存储器中的启动固件密钥哈希是否一致,在判断为一致时,根据系统控制处理器中的系统控制处理器密钥哈希和预存储的启动固件密钥生成共享密钥;The response message is used to instruct the system control processor to determine whether the real startup firmware key hash is consistent with the startup firmware key hash in the system control memory. When it is determined that they are consistent, the system control processor in the system control processor Key hash and pre-stored boot firmware key to generate shared secret;

获取系统控制处理器发送的共享密钥;采用共享密钥对响应报文进行加密,得到加密响应报文,并将加密响应报文发送至系统控制处理器。Obtain the shared key sent by the system control processor; use the shared key to encrypt the response message, obtain the encrypted response message, and send the encrypted response message to the system control processor.

进一步的,响应报文还用于指示系统控制处理器在生成共享密钥后,根据系统控制处理器中预存储的启动固件密钥对共享密钥进行加密,得到密文,将密文发送至启动固件;Further, the response message is also used to instruct the system control processor to encrypt the shared key according to the startup firmware key pre-stored in the system control processor after generating the shared key, obtain the ciphertext, and send the ciphertext to Start firmware;

上述获取系统控制处理器发送的共享密钥,包括:The above-mentioned method of obtaining the shared key sent by the system control processor includes:

接收系统控制处理器发送的密文;Receive the ciphertext sent by the system control processor;

根据启动固件中的启动固件密钥对密文进行解密,得到共享密钥。Decrypt the ciphertext according to the startup firmware key in the startup firmware to obtain the shared key.

第四方面,本申请实施例提供了一种启动固件,该启动固件包括:In a fourth aspect, embodiments of the present application provide startup firmware, which includes:

响应模块,用于在接收到系统控制处理器发送的用于请求建立安全通道的请求报文后,发送响应报文至系统控制处理器,响应报文包括启动固件的真实启动固件密钥哈希;A response module, configured to send a response message to the system control processor after receiving a request message sent by the system control processor for requesting the establishment of a secure channel. The response message includes a hash of the real startup firmware key that starts the firmware. ;

响应报文用于指示系统控制处理器判断真实启动固件密钥哈希和系统控制存储器中的启动固件密钥哈希是否一致,在判断为一致时,根据系统控制处理器中的系统控制处理器密钥哈希和预存储的启动固件密钥生成共享密钥;The response message is used to instruct the system control processor to determine whether the real startup firmware key hash is consistent with the startup firmware key hash in the system control memory. When it is determined that they are consistent, the system control processor in the system control processor Key hash and pre-stored boot firmware key to generate shared secret;

接收模块,用于获取系统控制处理器发送共享密钥;The receiving module is used to obtain the shared key sent by the system control processor;

报文加密模块,用于采用共享密钥对响应报文进行加密,得到加密响应报文,并将加密响应报文发送至系统控制处理器。The message encryption module is used to encrypt the response message using the shared key, obtain the encrypted response message, and send the encrypted response message to the system control processor.

综上,与现有技术相比,本申请实施例提供的技术方案带来的有益效果至少包括:To sum up, compared with the existing technology, the beneficial effects brought by the technical solutions provided by the embodiments of the present application at least include:

本申请实施例提供的一种数据安全通道建立方法,该方法令系统控制处理器和启动固件中产生相同的共享密钥,从而建立了两者之间的数据安全通道,使得系统控制处理器和启动固件均可采用该共享密钥对数据报文进行加密后再传输,避免了传输的数据以明文的方式暴露给攻击者,提高了传输数据的安全性和保密性,避免了发生信息泄露的情况。The embodiment of the present application provides a method for establishing a data security channel. This method generates the same shared key in the system control processor and the startup firmware, thereby establishing a data security channel between the two, so that the system control processor and the startup firmware The shared key can be used to encrypt data packets before transmission when starting the firmware. This prevents the transmitted data from being exposed to attackers in plain text, improves the security and confidentiality of the transmitted data, and avoids the possibility of information leakage. Condition.

其次,本申请令共享密钥包括了系统控制处理器密钥哈希和启动固件密钥两端的信息,使得共享密钥在传输途中被攻击或被篡改时,无论是系统控制处理器还是启动固件都能在解密时发现共享密钥的错误,从而及时丢弃被攻击的数据,避免了解密出可能被篡改出错的数据,进一步提高了系统控制处理器和启动固件之间数据传输的安全性。Secondly, this application makes the shared key include information on both ends of the system control processor key hash and the boot firmware key, so that when the shared key is attacked or tampered with during transmission, whether it is the system control processor or the boot firmware Errors in the shared key can be discovered during decryption, thereby discarding the attacked data in a timely manner, avoiding decryption of data that may have been tampered with errors, and further improving the security of data transmission between the system control processor and startup firmware.

附图说明Description of the drawings

图1为本申请一个示例性实施例提供的一种数据安全通道建立方法的流程图。Figure 1 is a flow chart of a method for establishing a data security channel provided by an exemplary embodiment of the present application.

图2为本申请一个示例性实施例提供的一种系统控制处理器的结构示意图。Figure 2 is a schematic structural diagram of a system control processor provided by an exemplary embodiment of the present application.

图3为本申请又一个示例性实施例提供的一种数据安全通道建立方法的流程图。Figure 3 is a flow chart of a method for establishing a data security channel provided by another exemplary embodiment of the present application.

图4为本申请一个示例性实施例提供的解密步骤的流程图。Figure 4 is a flow chart of decryption steps provided by an exemplary embodiment of the present application.

图5为本申请一个示例性实施例提供的一种启动固件的结构示意图。Figure 5 is a schematic structural diagram of startup firmware provided by an exemplary embodiment of the present application.

具体实施方式Detailed ways

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only some of the embodiments of the present application, rather than all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by those of ordinary skill in the art without creative efforts fall within the scope of protection of this application.

请参见图1,本申请实施例提供了一种数据安全通道建立方法,该方法为系统控制处理器所执行的数据安全通道建立方法,以主体视角为系统控制处理器进行描述,该方法可以包括:Referring to Figure 1, an embodiment of the present application provides a data security channel establishment method. This method is a data security channel establishment method executed by a system control processor. It is described from a subject perspective for the system control processor. The method may include :

步骤S11,根据系统控制处理器中预存储的启动固件密钥生成启动固件密钥哈希,并向启动固件发送用于请求建立安全通道的请求报文。请求报文用于指示启动固件生成响应报文。Step S11: Generate a startup firmware key hash based on the startup firmware key pre-stored in the system control processor, and send a request message for requesting the establishment of a secure channel to the startup firmware. The request message is used to instruct the startup firmware to generate a response message.

其中,预存储的启动固件密钥为预先存储进系统控制处理器中的、启动固件中的密钥。系统控制处理器和启动固件中各自含有各自的密钥和密钥哈希,但是没有对方的,所以在建立数据安全通道时,需要将启动固件的密钥预先存储到系统控制处理器中。The pre-stored startup firmware key is a key in the startup firmware that is pre-stored in the system control processor. The system control processor and the startup firmware each contain their own keys and key hashes, but they do not have each other's. Therefore, when establishing a data security channel, the key to the startup firmware needs to be stored in the system control processor in advance.

步骤S12,接收启动固件发送的响应报文,响应报文包括启动固件的真实启动固件密钥哈希,判断真实启动固件密钥哈希和启动固件密钥哈希是否一致。Step S12: Receive the response message sent by the startup firmware. The response message includes the real startup firmware key hash of the startup firmware, and determine whether the real startup firmware key hash and the startup firmware key hash are consistent.

步骤S13,若一致,则根据系统控制处理器中的系统控制处理器密钥哈希和预存储的启动固件密钥生成共享密钥;若不一致,则安全通道建立失败。Step S13, if they are consistent, generate a shared key based on the system control processor key hash in the system control processor and the pre-stored startup firmware key; if they are inconsistent, the secure channel establishment fails.

上述判断步骤是为了判断系统控制处理器中预存储的启动固件密钥是否可信,因为要用该启动固件密钥生成共享密钥,所以一定要保证预存储的启动固件密钥和启动固件中的是一样的,这样生成的共享密钥若是被攻击或篡改,启动固件才能察觉到问题。The above determination step is to determine whether the startup firmware key pre-stored in the system control processor is trustworthy. Because the startup firmware key is used to generate a shared key, it must be ensured that the pre-stored startup firmware key is the same as the startup firmware key in the startup firmware. are the same. If the shared key generated in this way is attacked or tampered with, the problem will not be noticed until the firmware is started.

步骤S14,在生成共享密钥后,将共享密钥发送至启动固件。具体地,步骤S14是为了令启动固件采用该共享密钥对响应报文进行加密,生成加密响应报文并发送回系统控制处理器。Step S14: After generating the shared key, send the shared key to the startup firmware. Specifically, step S14 is to enable the startup firmware to encrypt the response message using the shared key, generate an encrypted response message and send it back to the system control processor.

步骤S15,接收启动固件的采用共享密钥加密的加密响应报文。Step S15: Receive an encrypted response message encrypted by the shared key for starting the firmware.

步骤S16,根据系统控制处理器中的共享密钥对加密响应报文进行解密,在解密成功后根据共享密钥对后续发送给启动固件的报文进行加密。Step S16: Decrypt the encrypted response message according to the shared key in the system control processor. After the decryption is successful, encrypt subsequent messages sent to the startup firmware according to the shared key.

具体地,启动固件采用共享密钥对接收到系统控制处理器发送的加密报文进行解密,从而完成了系统控制处理器和启动固件之间的安全通信。Specifically, the startup firmware uses the shared key to decrypt the encrypted message sent by the system control processor, thereby completing secure communication between the system control processor and the startup firmware.

上述实施例提供的一种数据安全通道建立方法,该方法令系统控制处理器和启动固件中产生相同的共享密钥,从而建立了两者之间的数据安全通道,使得系统控制处理器和启动固件均可采用该共享密钥对数据报文进行加密后再传输,避免了传输的数据以明文的方式暴露给攻击者,提高了传输数据的安全性和保密性,避免了发生信息泄露的情况。The above embodiment provides a method for establishing a data security channel. This method generates the same shared key in the system control processor and the startup firmware, thereby establishing a data security channel between the two, so that the system control processor and the startup firmware The firmware can use this shared key to encrypt data messages before transmitting them, which prevents the transmitted data from being exposed to attackers in plain text, improves the security and confidentiality of the transmitted data, and avoids information leakage. .

其次,本申请令共享密钥包括了系统控制处理器密钥哈希和启动固件密钥两端的信息,使得共享密钥在传输途中被攻击或被篡改时,无论是系统控制处理器还是启动固件都能在解密时发现共享密钥的错误,从而及时丢弃被攻击的数据,避免了解密出可能被篡改出错的数据,进一步提高了系统控制处理器和启动固件之间数据传输的安全性。Secondly, this application makes the shared key include information on both ends of the system control processor key hash and the boot firmware key, so that when the shared key is attacked or tampered with during transmission, whether it is the system control processor or the boot firmware Errors in the shared key can be discovered during decryption, thereby discarding the attacked data in a timely manner, avoiding decryption of data that may have been tampered with errors, and further improving the security of data transmission between the system control processor and startup firmware.

在一些实施例中,上述根据系统控制处理器中预存储的启动固件密钥生成启动固件密钥哈希,具体可以包括以下步骤:In some embodiments, generating a boot firmware key hash based on a boot firmware key pre-stored in the system control processor may include the following steps:

通过调用系统控制处理器上的可信平台模组硬件算法接口来调用哈希算法,通过哈希算法将系统控制处理器中预存储的启动固件密钥生成启动固件密钥哈希。The hash algorithm is called by calling the trusted platform module hardware algorithm interface on the system control processor, and the startup firmware key pre-stored in the system control processor is used to generate a startup firmware key hash through the hash algorithm.

其中,可信平台模组硬件算法接口为TPM(Trusted Platform Module,可信平台模组)硬件算法接口,是一项安全密码处理器的国际标准,旨在使用设备中集成的专用微控制器处理设备中的加密密钥;哈希算法为能计算出一个数字消息所对应到的,长度固定的字符串的算法。Among them, the Trusted Platform Module hardware algorithm interface is the TPM (Trusted Platform Module) hardware algorithm interface, which is an international standard for secure cryptographic processors and is designed to be processed using a dedicated microcontroller integrated in the device. The encryption key in the device; the hash algorithm is an algorithm that can calculate the fixed-length string corresponding to a digital message.

上述实施例通过采用哈希算法计算密钥的哈希,从而实现了预存储的启动固件密钥的哈希和真实启动固件密钥哈希的比对,从而能够判断预存储的启动固件密钥的可信性,只有预存储的密钥哈希和真实的密钥哈希一致时,说明预存储的启动固件密钥和启动固件中的一致,可以用来进行共享密钥的生成。The above embodiment uses a hash algorithm to calculate the hash of the key, thereby achieving comparison of the hash of the pre-stored startup firmware key and the hash of the real startup firmware key, thereby being able to determine the pre-stored startup firmware key Only when the pre-stored key hash is consistent with the real key hash, it means that the pre-stored startup firmware key is consistent with the startup firmware key and can be used to generate a shared key.

在一些实施例中,上述哈希算法可以为sha256哈希算法。In some embodiments, the above hashing algorithm may be a sha256 hashing algorithm.

具体地,哈希家族的五个算法分别是sha1、sha224、sha256、sha384和sha512,其中,sha256哈希算法是安全性最高的。Specifically, the five algorithms of the hash family are sha1, sha224, sha256, sha384 and sha512. Among them, the sha256 hash algorithm is the most secure.

上述实施例令本申请中密钥哈希的生成采用了安全性最高的哈希算法,保证了启动固件密钥哈希和真实启动固件密钥哈希比对的准确性。The above embodiment uses the most secure hash algorithm to generate the key hash in this application, ensuring the accuracy of the comparison between the startup firmware key hash and the real startup firmware key hash.

在一些实施例中,上述根据系统控制处理器中的系统控制处理器密钥哈希和预存储的启动固件密钥生成共享密钥,具体可以包括:In some embodiments, the above-mentioned generation of the shared key based on the system control processor key hash and the pre-stored startup firmware key in the system control processor may specifically include:

根据系统控制处理器中的系统控制处理器密钥哈希和预存储的启动固件密钥通过对称加密算法生成共享密钥。A shared key is generated through a symmetric encryption algorithm based on a system control processor key hash and a pre-stored boot firmware key in the system control processor.

具体地,还可以采用非对称加密算法来生成共享密钥。Specifically, an asymmetric encryption algorithm can also be used to generate the shared key.

上述实施例通过对称加密算法或非对称加密算法来生成共享密钥,相当于令系统控制处理器和启动固件之间的数据传输都采用了对称加密算法或非对称加密算法进行加密,从而提高了数据传输的安全性和保密性,即便传输的数据被攻击者窃取,因为采用了加密算法的共享密钥的保护,攻击者也无法从窃取的信息中获得真正的数据,避免了发生信息泄露的情况。The above embodiment uses a symmetric encryption algorithm or an asymmetric encryption algorithm to generate a shared key, which is equivalent to encrypting the data transmission between the system control processor and the startup firmware using a symmetric encryption algorithm or an asymmetric encryption algorithm, thereby improving the The security and confidentiality of data transmission. Even if the transmitted data is stolen by an attacker, because of the protection of the shared key of the encryption algorithm, the attacker cannot obtain the real data from the stolen information, avoiding the possibility of information leakage. Condition.

在一些实施例中,上述在生成共享密钥后,将共享密钥发送至启动固件,包括:In some embodiments, after generating the shared key, sending the shared key to the boot firmware includes:

在生成共享密钥后,根据系统控制处理器中预存储的启动固件密钥对共享密钥进行加密,得到密文,将密文发送至启动固件。After the shared key is generated, the shared key is encrypted according to the startup firmware key pre-stored in the system control processor to obtain the ciphertext, and the ciphertext is sent to the startup firmware.

因为共享密钥首先是在系统控制处理器中生成的,必须要保证在传输给启动固件的过程中不会被截取或被篡改,若共享密钥被篡改,会导致系统控制处理器和启动固件中的共享密钥不相同,双方无法通过自己的共享密钥解密对方加密的信息,影响两者之间的数据传输,若共享密钥被截取,则会导致安全通道建成后传输的数据无法受到共享密钥的保护。Because the shared key is first generated in the system control processor, it must be ensured that it will not be intercepted or tampered with during transmission to the startup firmware. If the shared key is tampered with, it will cause the system control processor and startup firmware to The shared keys in are different. Both parties cannot decrypt the other party's encrypted information through their own shared keys, which affects the data transmission between the two. If the shared key is intercepted, the data transmitted after the secure channel is established cannot be protected. Protection of shared keys.

因此,上述实施例将生成的共享密钥通过启动固件密钥加密后再发送给启动固件,保证了启动固件可以直接解密得到共享密钥的同时也保证了共享密钥的安全,进一步保证了安全通道建成后系统控制处理器和启动固件之间数据传输的安全性。Therefore, in the above embodiment, the generated shared key is encrypted by the startup firmware key and then sent to the startup firmware, which ensures that the startup firmware can directly decrypt to obtain the shared key and at the same time ensures the security of the shared key, further ensuring security. After the channel is built, the security of data transmission between the system control processor and the boot firmware is ensured.

在一些实施方式中,上述对称加密算法可以为AES256对称加密算法或者商密1号算法。In some implementations, the above-mentioned symmetric encryption algorithm may be the AES256 symmetric encryption algorithm or the Shangmi No. 1 algorithm.

其中,AES256对称加密算法是安全性最高的加密算法;商密1号算法,即SM1算法是由国家密码管理局编制的一种商用密码分组标准对称算法,分组长度和密钥长度都为128比特,算法安全保密强度及相关软硬件实现性能与AES相当。Among them, the AES256 symmetric encryption algorithm is the most secure encryption algorithm; the Shangmi No. 1 algorithm, or SM1 algorithm, is a commercial cryptographic block standard symmetric algorithm compiled by the State Cryptozoology Administration. The block length and key length are both 128 bits. , the security and confidentiality strength of the algorithm and the implementation performance of related software and hardware are equivalent to AES.

上述实施方式提供了安全性最高的两种对称加密算法,使用以上对称加密算法生成的共享密钥对于数据报文的保密性会更高。The above implementation manner provides two symmetric encryption algorithms with the highest security. The shared key generated using the above symmetric encryption algorithms will have higher confidentiality for data messages.

请参见图2,本申请另一实施例提供了一种系统控制处理器,该系统控制处理器可以包括:Referring to Figure 2, another embodiment of the present application provides a system control processor. The system control processor may include:

哈希模块101,用于根据系统控制处理器中预存储的启动固件密钥生成启动固件密钥哈希,并向启动固件发送用于请求建立安全通道的请求报文。The hash module 101 is configured to generate a startup firmware key hash based on the startup firmware key pre-stored in the system control processor, and send a request message for requesting the establishment of a secure channel to the startup firmware.

判断模块102,用于接收启动固件发送的响应报文,响应报文包括启动固件的真实启动固件密钥哈希,判断真实启动固件密钥哈希和启动固件密钥哈希是否一致。The judgment module 102 is configured to receive a response message sent by the startup firmware, where the response message includes a real startup firmware key hash of the startup firmware, and determine whether the real startup firmware key hash and the startup firmware key hash are consistent.

共享密钥生成模块103,用于根据系统控制处理器中的系统控制处理器密钥哈希和预存储的启动固件密钥生成共享密钥。The shared key generation module 103 is configured to generate a shared key based on the system control processor key hash and the pre-stored startup firmware key in the system control processor.

发送模块104,用于在生成共享密钥后,将共享密钥发送至启动固件。The sending module 104 is configured to send the shared key to the startup firmware after generating the shared key.

报文接收模块105,用于接收启动固件的采用共享密钥加密的加密响应报文。The message receiving module 105 is configured to receive an encrypted response message encrypted by a shared key for starting the firmware.

解密模块106,用于根据系统控制处理器中的共享密钥对加密响应报文进行解密,在解密成功后根据共享密钥对后续发送给启动固件的报文进行加密。The decryption module 106 is used to decrypt the encrypted response message according to the shared key in the system control processor, and after the decryption is successful, encrypt subsequent messages sent to the startup firmware according to the shared key.

上述实施例提供的系统控制处理器令自己和启动固件中都产生了相同的共享密钥,从而建立了两者之间的数据安全通道,使得系统控制处理器和启动固件均可采用该共享密钥对数据报文进行加密后再传输,避免了传输的数据以明文的方式暴露给攻击者,提高了传输数据的安全性和保密性,避免了发生信息泄露的情况。The system control processor provided in the above embodiment generates the same shared key in itself and the startup firmware, thereby establishing a data security channel between the two, so that both the system control processor and the startup firmware can use the shared secret key. The key encrypts the data message before transmission, which prevents the transmitted data from being exposed to attackers in plain text, improves the security and confidentiality of the transmitted data, and avoids information leakage.

其次,上述实施例的系统控制处理器生成的共享密钥包括了系统控制处理器密钥哈希和启动固件密钥两端的信息,使得共享密钥在传输途中被攻击或被篡改时,无论是系统控制处理器还是启动固件都能在解密时发现共享密钥的错误,从而及时丢弃被攻击的数据,避免了解密出可能被篡改出错的数据,进一步提高了系统控制处理器和启动固件之间数据传输的安全性。Secondly, the shared key generated by the system control processor in the above embodiment includes information on both ends of the system control processor key hash and the startup firmware key, so that when the shared key is attacked or tampered with during transmission, whether Both the system control processor and the startup firmware can detect errors in the shared key during decryption, thereby promptly discarding the attacked data and avoiding decryption of data that may have been tampered with errors, further improving the communication between the system control processor and the startup firmware. Security of data transmission.

请参见图3,本申请另一实施例提供了一种数据安全通道建立方法,该方法为启动固件所执行的数据安全通道建立方法,以主体视角为启动固件进行描述,具体可以包括:Please refer to Figure 3. Another embodiment of the present application provides a data security channel establishment method. This method is a data security channel establishment method executed by startup firmware. The startup firmware is described from a subject perspective. Specifically, it may include:

步骤S21,在接收到系统控制处理器发送的用于请求建立安全通道的请求报文后,发送响应报文至系统控制处理器,响应报文包括启动固件的真实启动固件密钥哈希。Step S21: After receiving a request message sent by the system control processor for requesting the establishment of a secure channel, a response message is sent to the system control processor. The response message includes a hash of the real startup firmware key for starting the firmware.

响应报文用于指示系统控制处理器判断真实启动固件密钥哈希和系统控制存储器中的启动固件密钥哈希是否一致,在判断为一致时,根据系统控制处理器中的系统控制处理器密钥哈希和预存储的启动固件密钥生成共享密钥。The response message is used to instruct the system control processor to determine whether the real startup firmware key hash is consistent with the startup firmware key hash in the system control memory. When it is determined that they are consistent, the system control processor in the system control processor The key hash and the prestored boot firmware key generate a shared secret.

步骤S22,获取系统控制处理器发送的共享密钥。Step S22: Obtain the shared key sent by the system control processor.

步骤S23,采用共享密钥对响应报文进行加密,得到加密响应报文,并将加密响应报文发送至系统控制处理器。Step S23: Use the shared key to encrypt the response message to obtain an encrypted response message, and send the encrypted response message to the system control processor.

在具体实施过程中,在发送完加密响应报文后,启动固件后续发送给系统控制处理器的报文均采用共享密钥加密,接收到的系统控制处理器的报文和数据也是采用共享密钥进行解密的,若用共享密钥无法解密出接收到的数据,说明数据很有可能在传输途中受到了攻击,便直接将无法解密的数据丢弃,以免识别出被攻击甚至被篡改后的错误信息;对于系统控制处理器,也是采用共享密钥对接收到的启动固件的报文和数据进行解密,若无法解密,则直接丢弃。In the specific implementation process, after sending the encrypted response message, the subsequent messages sent by the startup firmware to the system control processor are encrypted using the shared key, and the messages and data received by the system control processor are also encrypted using the shared key. If the received data cannot be decrypted using the shared key, it means that the data is likely to have been attacked during transmission. The data that cannot be decrypted will be discarded directly to avoid identifying errors after being attacked or even tampered with. Information; for the system control processor, the shared key is also used to decrypt the received messages and data for starting the firmware. If it cannot be decrypted, it is discarded directly.

上述实施例提供的一种数据安全通道建立方法,该方法令系统控制处理器和启动固件中产生了相同的共享密钥,从而建立了两者之间的数据安全通道,使得系统控制处理器和启动固件均可采用该共享密钥对数据报文进行加密后再传输,避免了传输的数据以明文的方式暴露给攻击者,提高了传输数据的安全性和保密性,避免了发生信息泄露的情况。The above embodiment provides a method for establishing a data security channel. This method generates the same shared key in the system control processor and the startup firmware, thereby establishing a data security channel between the two, so that the system control processor and the startup firmware The shared key can be used to encrypt data messages before transmission when starting the firmware. This prevents the transmitted data from being exposed to attackers in plain text, improves the security and confidentiality of the transmitted data, and avoids the possibility of information leakage. Condition.

请参见图4,在一些实施例中,响应报文还用于指示系统控制处理器在生成共享密钥后,根据系统控制处理器中预存储的启动固件密钥对共享密钥进行加密,得到密文,将密文发送至启动固件;上述步骤S22,获取系统控制处理器发送的共享密钥,具体可以包括如下步骤:Referring to Figure 4, in some embodiments, the response message is also used to instruct the system control processor to encrypt the shared key according to the startup firmware key pre-stored in the system control processor after generating the shared key, to obtain The ciphertext is sent to the startup firmware; the above step S22 is to obtain the shared key sent by the system control processor, which may include the following steps:

步骤S221,接收系统控制处理器发送的密文。Step S221: Receive the ciphertext sent by the system control processor.

步骤S222,根据启动固件中的启动固件密钥对密文进行解密,得到共享密钥。Step S222: Decrypt the ciphertext according to the startup firmware key in the startup firmware to obtain the shared key.

针对系统控制处理器对生成的共享密钥进行加密后再发送的情况,上述实施例保证了启动固件可以直接解密得到共享密钥的同时也保证了共享密钥的安全,进一步保证了安全通道建成后系统控制处理器和启动固件之间数据传输的安全性。For the situation where the system control processor encrypts the generated shared key before sending it, the above embodiment ensures that the startup firmware can directly decrypt to obtain the shared key, while also ensuring the security of the shared key, further ensuring the establishment of a secure channel. Security of data transfers between the rear system control processor and boot firmware.

请参见图5,本申请另一实施例提供了一种启动固件,该启动固件具体可以包括:Referring to Figure 5, another embodiment of the present application provides a startup firmware. The startup firmware may specifically include:

响应模块201,用于在接收到系统控制处理器发送的用于请求建立安全通道的请求报文后,发送响应报文至系统控制处理器,响应报文包括启动固件的真实启动固件密钥哈希。The response module 201 is configured to send a response message to the system control processor after receiving a request message sent by the system control processor for requesting the establishment of a secure channel. The response message includes the real startup firmware key for starting the firmware. hope.

响应报文用于指示系统控制处理器判断真实启动固件密钥哈希和系统控制存储器中的启动固件密钥哈希是否一致,在判断为一致时,根据系统控制处理器中的系统控制处理器密钥哈希和预存储的启动固件密钥生成共享密钥。The response message is used to instruct the system control processor to determine whether the real startup firmware key hash is consistent with the startup firmware key hash in the system control memory. If it is determined to be consistent, the system control processor will The key hash and the prestored boot firmware key generate a shared secret.

接收模块202,用于获取系统控制处理器发送共享密钥。The receiving module 202 is used to obtain the shared key sent by the system control processor.

报文加密模块203,用于采用共享密钥对响应报文进行加密,得到加密响应报文,并将加密响应报文发送至系统控制处理器。The message encryption module 203 is used to encrypt the response message using the shared key to obtain the encrypted response message, and send the encrypted response message to the system control processor.

上述实施例提供的一种启动固件获得了和系统控制处理器中相同的共享密钥,从而建立了两者之间的数据安全通道,使得系统控制处理器和启动固件均可采用该共享密钥对数据报文进行加密后再传输,避免了传输的数据以明文的方式暴露给攻击者,提高了传输数据的安全性和保密性,避免了发生信息泄露的情况。The startup firmware provided in the above embodiment obtains the same shared key as the system control processor, thereby establishing a data security channel between the two, so that both the system control processor and the startup firmware can use the shared key Encrypting data packets before transmitting them prevents the transmitted data from being exposed to attackers in plain text, improves the security and confidentiality of the transmitted data, and avoids information leakage.

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。The technical features of the above embodiments can be combined in any way. To simplify the description, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, all possible combinations should be used. It is considered to be within the scope of this manual.

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。The above-described embodiments only express several implementation modes of the present application, and their descriptions are relatively specific and detailed, but they should not be construed as limiting the scope of the invention patent. It should be noted that, for those of ordinary skill in the art, several modifications and improvements can be made without departing from the concept of the present application, and these all fall within the protection scope of the present application. Therefore, the protection scope of this patent application should be determined by the appended claims.

Claims (8)

1.一种数据安全通道建立方法,其特征在于,所述方法包括:1. A method for establishing a data security channel, characterized in that the method includes: 根据系统控制处理器中预存储的启动固件密钥生成启动固件密钥哈希,并向启动固件发送用于请求建立安全通道的请求报文;Generate a startup firmware key hash based on the startup firmware key pre-stored in the system control processor, and send a request message for requesting the establishment of a secure channel to the startup firmware; 接收所述启动固件发送的响应报文,所述响应报文包括所述启动固件的真实启动固件密钥哈希;判断所述真实启动固件密钥哈希和所述启动固件密钥哈希是否一致;Receive a response message sent by the startup firmware, where the response message includes a real startup firmware key hash of the startup firmware; determine whether the real startup firmware key hash and the startup firmware key hash are consistent; consistent; 若一致,则根据所述系统控制处理器中的系统控制处理器密钥哈希和预存储的所述启动固件密钥生成共享密钥;若不一致,则安全通道建立失败;If they are consistent, generate a shared key based on the system control processor key hash in the system control processor and the pre-stored startup firmware key; if they are inconsistent, the secure channel establishment fails; 在生成所述共享密钥后,将所述共享密钥发送至所述启动固件;具体地,在生成所述共享密钥后,根据所述系统控制处理器中预存储的所述启动固件密钥对所述共享密钥进行加密,得到密文,将所述密文发送至所述启动固件;After the shared key is generated, the shared key is sent to the startup firmware; specifically, after the shared key is generated, the startup firmware password is pre-stored in the system control processor. Encrypt the shared key with the key to obtain ciphertext, and send the ciphertext to the startup firmware; 接收所述启动固件的采用所述共享密钥加密的加密响应报文;Receive an encrypted response message encrypted by the shared key using the shared key to start the firmware; 根据所述系统控制处理器中的所述共享密钥对所述加密响应报文进行解密,在解密成功后根据所述共享密钥对后续发送给所述启动固件的报文进行加密。The encrypted response message is decrypted according to the shared key in the system control processor, and after the decryption is successful, subsequent messages sent to the startup firmware are encrypted according to the shared key. 2.根据权利要求1所述的方法,其特征在于,所述根据系统控制处理器中预存储的启动固件密钥生成启动固件密钥哈希,包括:2. The method of claim 1, wherein generating a startup firmware key hash based on a startup firmware key pre-stored in the system control processor includes: 通过调用所述系统控制处理器上的可信平台模组硬件算法接口来调用哈希算法,通过所述哈希算法将所述系统控制处理器中预存储的所述启动固件密钥生成所述启动固件密钥哈希。The hash algorithm is called by calling the trusted platform module hardware algorithm interface on the system control processor, and the startup firmware key pre-stored in the system control processor is generated by the hash algorithm. Start firmware key hashing. 3.根据权利要求2所述的方法,其特征在于,所述哈希算法为sha256哈希算法。3. The method according to claim 2, characterized in that the hash algorithm is a sha256 hash algorithm. 4.根据权利要求1所述的方法,其特征在于,所述根据所述系统控制处理器中的系统控制处理器密钥哈希和预存储的所述启动固件密钥生成共享密钥,包括:4. The method of claim 1, wherein generating a shared key based on a system control processor key hash in the system control processor and the pre-stored startup firmware key includes: : 根据所述系统控制处理器中的所述系统控制处理器密钥哈希和预存储的所述启动固件密钥通过对称加密算法生成共享密钥。A shared key is generated through a symmetric encryption algorithm based on the system control processor key hash and the pre-stored boot firmware key in the system control processor. 5.根据权利要求4所述的方法,其特征在于,所述对称加密算法为AES256对称加密算法或者商密1号算法。5. The method according to claim 4, characterized in that the symmetric encryption algorithm is AES256 symmetric encryption algorithm or Shangmi No. 1 algorithm. 6.一种系统控制处理器,其特征在于,所述系统控制处理器包括:6. A system control processor, characterized in that the system control processor includes: 哈希模块,用于根据系统控制处理器中预存储的启动固件密钥生成启动固件密钥哈希,并向启动固件发送用于请求建立安全通道的请求报文;A hash module, configured to generate a hash of the startup firmware key based on the startup firmware key pre-stored in the system control processor, and send a request message for requesting the establishment of a secure channel to the startup firmware; 判断模块,用于接收所述启动固件发送的响应报文,所述响应报文包括所述启动固件的真实启动固件密钥哈希,判断所述真实启动固件密钥哈希和所述启动固件密钥哈希是否一致;A judgment module, configured to receive a response message sent by the startup firmware, the response message including a real startup firmware key hash of the startup firmware, and judge the real startup firmware key hash and the startup firmware Whether the key hash is consistent; 共享密钥生成模块,用于根据所述系统控制处理器中的系统控制处理器密钥哈希和预存储的所述启动固件密钥生成共享密钥;A shared key generation module configured to generate a shared key based on the system control processor key hash in the system control processor and the pre-stored startup firmware key; 发送模块,用于在生成所述共享密钥后,将所述共享密钥发送至所述启动固件;具体地,所述发送模块用于在生成所述共享密钥后,根据所述系统控制处理器中预存储的所述启动固件密钥对所述共享密钥进行加密,得到密文,将所述密文发送至所述启动固件;A sending module, configured to send the shared key to the startup firmware after generating the shared key; specifically, the sending module is configured to send the shared key to the startup firmware according to the system control after generating the shared key. The startup firmware key pre-stored in the processor encrypts the shared key to obtain ciphertext, and sends the ciphertext to the startup firmware; 报文接收模块,用于接收所述启动固件的采用所述共享密钥加密的加密响应报文;A message receiving module, configured to receive an encrypted response message encrypted by the shared key of the startup firmware; 解密模块,用于根据所述系统控制处理器中的所述共享密钥对所述加密响应报文进行解密,在解密成功后根据所述共享密钥对后续发送给所述启动固件的报文进行加密。A decryption module, configured to decrypt the encrypted response message according to the shared key in the system control processor, and after successful decryption, pair subsequent messages sent to the startup firmware according to the shared key. Encrypt. 7.一种数据安全通道建立方法,其特征在于,所述方法包括:7. A method for establishing a data security channel, characterized in that the method includes: 在接收到系统控制处理器发送的用于请求建立安全通道的请求报文后,发送响应报文至所述系统控制处理器;所述响应报文包括启动固件的真实启动固件密钥哈希;After receiving a request message sent by the system control processor for requesting the establishment of a secure channel, sending a response message to the system control processor; the response message includes a hash of the real startup firmware key for starting the firmware; 所述响应报文用于指示所述系统控制处理器判断所述真实启动固件密钥哈希和所述系统控制存储器中的启动固件密钥哈希是否一致,在判断为一致时,根据所述系统控制处理器中的系统控制处理器密钥哈希和预存储的启动固件密钥生成共享密钥;所述响应报文还用于指示所述系统控制处理器在生成所述共享密钥后,根据所述系统控制处理器中预存储的所述启动固件密钥对所述共享密钥进行加密,得到密文,将所述密文发送至所述启动固件;The response message is used to instruct the system control processor to determine whether the real startup firmware key hash and the startup firmware key hash in the system control memory are consistent. When it is determined that they are consistent, according to the The system control processor key hash and the pre-stored startup firmware key in the system control processor generate a shared key; the response message is also used to instruct the system control processor to generate the shared key after generating the shared key. , encrypt the shared key according to the startup firmware key pre-stored in the system control processor, obtain ciphertext, and send the ciphertext to the startup firmware; 获取所述系统控制处理器发送的所述共享密钥;具体地,接收所述系统控制处理器发送的密文;根据所述启动固件中的启动固件密钥对所述密文进行解密,得到所述共享密钥;Obtain the shared key sent by the system control processor; specifically, receive the ciphertext sent by the system control processor; decrypt the ciphertext according to the startup firmware key in the startup firmware to obtain the shared key; 采用所述共享密钥对所述响应报文进行加密,得到加密响应报文,并将所述加密响应报文发送至所述系统控制处理器。The shared key is used to encrypt the response message to obtain an encrypted response message, and the encrypted response message is sent to the system control processor. 8.一种启动固件,其特征在于,所述启动固件包括:8. A kind of startup firmware, characterized in that the startup firmware includes: 响应模块,用于在接收到系统控制处理器发送的用于请求建立安全通道的请求报文后,发送响应报文至所述系统控制处理器,所述响应报文包括所述启动固件的真实启动固件密钥哈希;A response module, configured to send a response message to the system control processor after receiving a request message sent by the system control processor for requesting the establishment of a secure channel, where the response message includes the true value of the startup firmware. Start firmware key hashing; 所述响应报文用于指示所述系统控制处理器判断所述真实启动固件密钥哈希和所述系统控制存储器中的启动固件密钥哈希是否一致,在判断为一致时,根据所述系统控制处理器中的系统控制处理器密钥哈希和预存储的启动固件密钥生成共享密钥;所述响应报文还用于指示所述系统控制处理器在生成所述共享密钥后,根据所述系统控制处理器中预存储的所述启动固件密钥对所述共享密钥进行加密,得到密文,将所述密文发送至所述启动固件;The response message is used to instruct the system control processor to determine whether the real startup firmware key hash and the startup firmware key hash in the system control memory are consistent. When it is determined that they are consistent, according to the The system control processor key hash and the pre-stored startup firmware key in the system control processor generate a shared key; the response message is also used to instruct the system control processor to generate the shared key after generating the shared key. , encrypt the shared key according to the startup firmware key pre-stored in the system control processor, obtain ciphertext, and send the ciphertext to the startup firmware; 接收模块,用于获取所述系统控制处理器发送所述共享密钥;具体地,所述接收模块用于接收所述系统控制处理器发送的密文;根据所述启动固件中的启动固件密钥对所述密文进行解密,得到所述共享密钥;A receiving module, configured to obtain the shared key sent by the system control processor; specifically, the receiving module is configured to receive the ciphertext sent by the system control processor; according to the startup firmware secret key in the startup firmware Use the key to decrypt the ciphertext to obtain the shared key; 报文加密模块,用于采用所述共享密钥对所述响应报文进行加密,得到加密响应报文,并将所述加密响应报文发送至所述系统控制处理器。A message encryption module is configured to use the shared key to encrypt the response message, obtain an encrypted response message, and send the encrypted response message to the system control processor.
CN202310305032.1A 2023-03-24 2023-03-24 Data security channel establishment method, system control processor and starting firmware Active CN116340954B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310305032.1A CN116340954B (en) 2023-03-24 2023-03-24 Data security channel establishment method, system control processor and starting firmware

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310305032.1A CN116340954B (en) 2023-03-24 2023-03-24 Data security channel establishment method, system control processor and starting firmware

Publications (2)

Publication Number Publication Date
CN116340954A CN116340954A (en) 2023-06-27
CN116340954B true CN116340954B (en) 2024-01-23

Family

ID=86887356

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310305032.1A Active CN116340954B (en) 2023-03-24 2023-03-24 Data security channel establishment method, system control processor and starting firmware

Country Status (1)

Country Link
CN (1) CN116340954B (en)

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5937063A (en) * 1996-09-30 1999-08-10 Intel Corporation Secure boot
CN101908959A (en) * 2010-07-28 2010-12-08 北京握奇数据系统有限公司 Method, equipment and system thereof for establishing shared key
CN105141568A (en) * 2014-05-28 2015-12-09 腾讯科技(深圳)有限公司 Safe communication channel establishment method and system, client and server
CN108075890A (en) * 2016-11-16 2018-05-25 中兴通讯股份有限公司 Data sending terminal, data receiver, data transmission method and system
KR20180092596A (en) * 2017-02-10 2018-08-20 경희대학교 산학협력단 METHOD AND SYSTEM FOR SECURE BOOTING OF IoT DEVICE PLATFORM USING EMBEDDED SECURE MODULE
CN109040132A (en) * 2018-09-26 2018-12-18 南京南瑞继保电气有限公司 One kind being based on the randomly selected encryption communication method of shared key
KR20190005044A (en) * 2017-07-05 2019-01-15 주식회사 케이티 Method and system for two-way authentication
CN109257170A (en) * 2018-11-02 2019-01-22 美的集团股份有限公司 Cryptographic key negotiation method, equipment, terminal, storage medium and system
US10599848B1 (en) * 2017-05-09 2020-03-24 American Megatrends International, Llc Use of security key to enable firmware features
CN111065097A (en) * 2019-10-11 2020-04-24 上海交通大学 Method and system for channel protection based on shared key in mobile internet
CN113032788A (en) * 2021-03-24 2021-06-25 山东英信计算机技术有限公司 Firmware image switching method, device and medium in computer system
CN113656086A (en) * 2020-04-28 2021-11-16 瑞昱半导体股份有限公司 Method and electronic device for securely storing and loading firmware
KR20220065223A (en) * 2020-11-13 2022-05-20 경희대학교 산학협력단 Update method to automotive ECU device by using external hardware module
CN114528555A (en) * 2022-01-26 2022-05-24 苏州浪潮智能科技有限公司 ARM server firmware safety check starting management method, device and medium
CN115168866A (en) * 2022-06-29 2022-10-11 海光信息技术股份有限公司 Processor safety starting method and processor
WO2022251987A1 (en) * 2021-05-29 2022-12-08 华为技术有限公司 Data encryption and decryption method and apparatus

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10382210B2 (en) * 2016-01-10 2019-08-13 Apple Inc. Secure device pairing
KR102604046B1 (en) * 2016-11-28 2023-11-23 삼성전자주식회사 Method for Managing Program and Electronic Device supporting the same
US10984107B2 (en) * 2018-04-24 2021-04-20 Mellanox Technologies, Ltd. Secure boot
US20200162247A1 (en) * 2018-11-15 2020-05-21 Iot And M2M Technologies, Llc Secure firmware transfer from a server to a primary platform
US11232210B2 (en) * 2019-03-26 2022-01-25 Western Digital Technologies, Inc. Secure firmware booting
US11321465B2 (en) * 2019-04-04 2022-05-03 Cisco Technology, Inc. Network security by integrating mutual attestation
US11907386B2 (en) * 2020-09-22 2024-02-20 Dell Products L.P. Platform root-of-trust system

Patent Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5937063A (en) * 1996-09-30 1999-08-10 Intel Corporation Secure boot
CN101908959A (en) * 2010-07-28 2010-12-08 北京握奇数据系统有限公司 Method, equipment and system thereof for establishing shared key
CN105141568A (en) * 2014-05-28 2015-12-09 腾讯科技(深圳)有限公司 Safe communication channel establishment method and system, client and server
CN108075890A (en) * 2016-11-16 2018-05-25 中兴通讯股份有限公司 Data sending terminal, data receiver, data transmission method and system
KR20180092596A (en) * 2017-02-10 2018-08-20 경희대학교 산학협력단 METHOD AND SYSTEM FOR SECURE BOOTING OF IoT DEVICE PLATFORM USING EMBEDDED SECURE MODULE
US10599848B1 (en) * 2017-05-09 2020-03-24 American Megatrends International, Llc Use of security key to enable firmware features
KR20190005044A (en) * 2017-07-05 2019-01-15 주식회사 케이티 Method and system for two-way authentication
CN109040132A (en) * 2018-09-26 2018-12-18 南京南瑞继保电气有限公司 One kind being based on the randomly selected encryption communication method of shared key
CN109257170A (en) * 2018-11-02 2019-01-22 美的集团股份有限公司 Cryptographic key negotiation method, equipment, terminal, storage medium and system
CN111065097A (en) * 2019-10-11 2020-04-24 上海交通大学 Method and system for channel protection based on shared key in mobile internet
CN113656086A (en) * 2020-04-28 2021-11-16 瑞昱半导体股份有限公司 Method and electronic device for securely storing and loading firmware
KR20220065223A (en) * 2020-11-13 2022-05-20 경희대학교 산학협력단 Update method to automotive ECU device by using external hardware module
CN113032788A (en) * 2021-03-24 2021-06-25 山东英信计算机技术有限公司 Firmware image switching method, device and medium in computer system
WO2022251987A1 (en) * 2021-05-29 2022-12-08 华为技术有限公司 Data encryption and decryption method and apparatus
CN114528555A (en) * 2022-01-26 2022-05-24 苏州浪潮智能科技有限公司 ARM server firmware safety check starting management method, device and medium
CN115168866A (en) * 2022-06-29 2022-10-11 海光信息技术股份有限公司 Processor safety starting method and processor

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Survey of Secure Processors;Sau, Suman等;INTERNATIONAL CONFERENCE ON EMBEDDED COMPUTER SYSTEMS: ARCHITECTURES, MODELING, AND SIMULATION (SAMOS 2017);全文 *
哈希加密方案;黄智颖, 冯新喜, 张焕国;通信技术(第07期);全文 *
智能IoT固件敏感信息检测技术的研究;随唐;中国优秀硕士学位论文全文数据库 (信息科技辑);全文 *

Also Published As

Publication number Publication date
CN116340954A (en) 2023-06-27

Similar Documents

Publication Publication Date Title
US11533297B2 (en) Secure communication channel with token renewal mechanism
CN109510708B (en) A public key cryptography calculation method and system based on Intel SGX mechanism
US9071426B2 (en) Generating a symmetric key to secure a communication link
US8516268B2 (en) Secure field-programmable gate array (FPGA) architecture
Langley et al. Transport layer security (TLS) false start
CN112565205B (en) Credible authentication and measurement method, server, terminal and readable storage medium
CN115314214B (en) TLS protocol implementation method based on supporting hardware acceleration state-secret algorithm
WO2021234580A1 (en) Methods and systems for secure network communication
WO2008085579A2 (en) Method and system for deploying advanced cryptographic algorithms
JP7451738B2 (en) Key update method and related devices
US10630466B1 (en) Apparatus and method for exchanging cryptographic information with reduced overhead and latency
EP1692811A1 (en) Methods, systems and computer program products for automatic rekeying in an authentication environment
CN113779619B (en) Ceph distributed object storage system encryption and decryption method based on cryptographic algorithm
CN112910627B (en) Key update method, data decryption method, digital signature verification method
CN111914291A (en) Message processing method, device, equipment and storage medium
CN115766066A (en) Data transmission method, device, secure communication system and storage medium
Bäumer et al. Terrapin Attack: Breaking {SSH} Channel Integrity By Sequence Number Manipulation
US20240154949A1 (en) Devices and Methods for Performing Cryptographic Handshaking
CN114978542B (en) IoT device identity authentication method, system and storage medium for full life cycle
WO2020042023A1 (en) Instant messaging data encryption method and apparatus
CN114567452A (en) Data transmission method, device and system and computer storage medium
CN119051878A (en) Method and system for data encryption transmission
CN116340954B (en) Data security channel establishment method, system control processor and starting firmware
TW200803392A (en) Method, device, server arrangement, system and computer program products for securely storing data in a portable device
CN117714185A (en) Bank counter data processing method and system based on cryptographic algorithm

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: A method for establishing a data security channel, system control processor, and boot firmware

Granted publication date: 20240123

Pledgee: Bank of China Limited Guangzhou Development Zone Branch

Pledgor: Hexin Technology Co.,Ltd.

Registration number: Y2024980055099

PE01 Entry into force of the registration of the contract for pledge of patent right
PP01 Preservation of patent right

Effective date of registration: 20250725

Granted publication date: 20240123

PP01 Preservation of patent right