Assessment method and device of computing environment, equipment and storage medium

Through rigorous verification processes and continuous monitoring, security risks in computing node management have been resolved, ensuring the security and reliability of computing nodes, achieving data integrity and confidentiality, and promoting the healthy and efficient development of computing networks.

CN120974496APending Publication Date: 2025-11-18CHINA TELECOM CORP LTD TECHNOLOGY INNOVATION CENTER +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511005903.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-07-21
Publication Date
2025-11-18

AI Technical Summary

Technical Problem

In existing technologies, there are security risks in the management of computing power nodes, especially in the inadequacy of identifying and defending the authenticity of computing node identities and data integrity, which leads to the uploading of false computing power information, affecting the reliability of the computing network and the security of user data.

Method used

Through a rigorous verification process and continuous monitoring, including multiple evaluation indicators such as security verification during startup, environment isolation, memory encryption, and communication channel encryption, the security and reliability of each computing node are ensured. Methods such as random number verification, decryption of encrypted environment operation information, and channel encryption detection are used to generate a final evaluation score to characterize the level of security.

Benefits of technology

It enhances the credibility and security of computing networks, ensures the integrity and confidentiality of data throughout its entire lifecycle, and promotes the healthy and efficient development of computing networks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120974496A_ABST
    Figure CN120974496A_ABST
Patent Text Reader

Abstract

The invention provides a computing environment assessment method and device, equipment and a storage medium. The computing environment assessment method comprises the steps that a credible verification request sent by a client side is received, and a first random number is sent to the client side; starting process summary information and a random number returned by the client are received, and a first evaluation score of the client starting process is determined by comparing preset summary information with the first random number; receiving and decrypting encrypted environment operation information sent by the client, and determining a second evaluation score based on a decryption result; or receiving memory encryption information to determine a third evaluation score; sending a channel detection request to the client, and determining a fourth evaluation score according to a channel encryption detection result fed back by the client; finally, calculating a final evaluation score according to the first evaluation score, the second evaluation score or the third evaluation score and the fourth evaluation score and the corresponding weights; the method is used for solving the problem that a user does not trust a multi-source heterogeneous computing node, ensuring trusted access and real-time detection and evaluation of the computing node, and promoting healthy and efficient development of a computing power network.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of confidential computing, and in particular to a computing environment evaluation method and device, equipment and a storage medium. BACKGROUND

[0002] With the continuous expansion of computing power in China, the deep integration of the Internet, big data, artificial intelligence and the real economy has become an irreversible trend. However, there are significant security risks in the existing technology, especially the problems in the management of computing power nodes are increasingly prominent. Since computing power involves multiple sources and widely distributed computing nodes, including but not limited to data centers, edge computing devices and various intelligent terminals, once some nodes are attacked or imitated, false computing power information will be uploaded to the network, seriously affecting the reliability of the entire computing network. The current technical framework has deficiencies in identifying and defending against such attacks, especially in ensuring the authenticity of node identity and data integrity.

[0003] When malicious actors successfully break into a node or forge a seemingly legitimate node, they can upload incorrect or misleading computing power data, which not only disrupts the effective allocation of resources, but also can cause system performance to decline or even collapse. More seriously, this vulnerability threatens the security of user data. Once the data is tampered with during transmission, it may not only lead to the leakage of user privacy data, such as personal identity information, financial information and other sensitive content, but also disrupt the normal operation of operational services, affecting user experience and service quality. SUMMARY

[0004] The present application provides a computing environment evaluation method, device, equipment and storage medium, which is used to solve the problem of user distrust of multi-source heterogeneous computing nodes, ensures the security and reliability of each computing node through strict verification process and continuous monitoring, covers multiple evaluation indicators such as security verification, environment isolation, memory encryption and communication channel encryption during startup, promotes the healthy and efficient development of computing power network, enhances the credibility and security of the overall system, and guarantees the integrity and confidentiality of data throughout its life cycle.

[0005] In a first aspect, the present application provides a computing environment evaluation method applied to a server side, comprising:

[0006] receiving a trusted verification request sent by a client, and sending a first random number to the client according to the trusted verification request;

[0007] receive the summary information and the random number of the starting process sent by the client, compare the summary information and the random number with preset summary information and the first random number respectively, and determine the first evaluation score of the starting process of the client according to the comparison result; wherein the summary information comprises state information of each stage in the starting process;

[0008] receive the encrypted environment running information sent by the client, decrypt the encrypted environment running information, and determine the second evaluation score according to the decryption result; or receive the memory encryption information sent by the client, and determine the third evaluation score according to the memory encryption information;

[0009] send a channel detection request to the client, so that the client determines whether the data transmission channel between the client and the server is an encrypted channel according to the channel detection request;

[0010] receive the channel encryption detection result sent by the client, and determine the fourth evaluation score according to the channel encryption detection result;

[0011] determine the final evaluation score according to the first evaluation score, the second evaluation score or the third evaluation score, the fourth evaluation score, and the preset weight corresponding to each evaluation score; the final evaluation score is used to represent the security level of the client.

[0012] In one or more possible embodiments, the receiving the summary information and the random number of the starting process sent by the client, comparing the summary information and the random number with preset summary information and the first random number respectively, and determining the first evaluation score of the starting process of the client according to the comparison result comprises:

[0013] receiving the summary information of the starting process signed by the private key, the trusted certificate carrying the public key corresponding to the private key and the random number sent by the client;

[0014] decrypting the summary information of the starting process signed by the private key according to the public key in the certificate to obtain the decrypted summary information;

[0015] comparing the decrypted summary information with preset summary information, and comparing the random number sent by the client with the first random number to obtain two comparison results;

[0016] determining the first evaluation score of the starting process of the client according to the two comparison results.

[0017] In one or more possible embodiments, before the second evaluation score is determined according to the decryption result, the method further comprises:

[0018] if the decryption result is successful, determining a second evaluation score according to the decryption result;

[0019] if the decryption result is unsuccessful, sending a failure information to the client to make the client re-install a compliance version of a program and send a new encrypted environment running information to the server again;

[0020] decrypting the new encrypted environment running information, determining a new decryption result, and determining a second evaluation score according to the new decryption result.

[0021] In one or more possible embodiments, the receiving of the channel encryption detection result sent by the client and the determining of a fourth evaluation score according to the channel encryption detection result comprises:

[0022] indicating the client to acquire a network communication message, so that the client determines a communication channel encryption state through a protocol type, a port number and a source address information in the network communication message;

[0023] receiving the channel encryption detection result sent by the client and determining a fourth evaluation score according to the channel encryption detection result, wherein the channel encryption detection result is determined according to the communication channel encryption state.

[0024] In a second aspect, the present application provides an evaluation method of a computing environment, applied to a client, comprising:

[0025] sending a trusted verification request to a server and receiving a first random number sent by the server according to the trusted verification request;

[0026] obtaining a digest information of a startup process according to a trusted hardware code, wherein the digest information comprises state information of each stage in the startup process;

[0027] sending the random number and the digest information to the server, so that the server compares the digest information and the random number with preset digest information and the first random number respectively;

[0028] determining whether a CPU and / or a GPU model corresponding to the client is contained in a preset chip list; if yes, obtaining encrypted environment running information and sending to the server, and if no, sending memory encryption information to the server;

[0029] sending a channel encryption detection result to the server, so that the server determines a fourth evaluation score according to the channel encryption detection result.

[0030] In one or more possible embodiments, the startup process comprises a trusted hardware code initialization stage, a boot loading stage, a kernel loading stage and a file system mounting stage.

[0031] The summary information of the boot process is obtained according to the trusted hardware code, and the summary information includes:

[0032] A first measurement value of an initialization phase of the trusted hardware code is determined according to the trusted hardware code;

[0033] The first measurement value is used to verify the boot loading phase, and a second measurement value is obtained;

[0034] The second measurement value is used to verify the kernel loading phase, and a third measurement value is obtained;

[0035] The third measurement value is used to verify the file system mounting phase, and a fourth measurement value is obtained;

[0036] The four measurement values are used to generate the summary information.

[0037] In a third aspect, the application provides an evaluation device of a computing environment, which is applied to a server side and includes:

[0038] A trusted verification request receiving module is configured to receive a trusted verification request sent by a client and send a first random number to the client according to the trusted verification request;

[0039] A first information obtaining module is configured to receive summary information of a boot process and a random number sent by the client, compare the summary information and the random number with preset summary information and the first random number respectively, and determine a first evaluation score of the boot process of the client according to a comparison result; wherein the summary information includes state information of each phase in the boot process;

[0040] A second information obtaining module is configured to receive encrypted environment running information sent by the client, decrypt the encrypted environment running information, and determine a second evaluation score according to a decryption result; or receive memory encryption information sent by the client and determine a third evaluation score according to the memory encryption information;

[0041] A channel detection request sending module is configured to send a channel detection request to the client, so that the client determines whether a data transmission channel between the client and the server side is an encrypted channel according to the channel detection request;

[0042] A third information obtaining module is configured to receive a channel encryption detection result sent by the client and determine a fourth evaluation score according to the channel encryption detection result;

[0043] The final evaluation score determination module is configured to determine a final evaluation score according to the first evaluation score, the second evaluation score or the third evaluation score, the fourth evaluation score, and preset weights corresponding to each evaluation score respectively, wherein the final evaluation score is used to represent the security level of the client.

[0044] In a fourth aspect, the present application provides an evaluation device of a computing environment, which is applied to a client and includes:

[0045] The trusted verification request sending module is configured to send a trusted verification request to a server and receive a first random number sent by the server according to the trusted verification request;

[0046] The abstract information determination module is configured to obtain abstract information of a startup process according to a trusted hardware code, wherein the abstract information includes state information of each stage in the startup process;

[0047] The first information sending module is configured to send the random number and the abstract information to the server, so that the server compares the abstract information and the random number with preset abstract information and the first random number respectively;

[0048] The second information sending module is configured to determine whether the CPU and / or GPU model corresponding to the client is included in a preset chip list; if yes, the encrypted environment running information is obtained and sent to the server, and if no, the memory encryption information is sent to the server;

[0049] The third information sending module is configured to send a channel encryption detection result to the server, so that the server determines a fourth evaluation score according to the channel encryption detection result.

[0050] In a fifth aspect, the present application provides an electronic device, which includes:

[0051] at least one processor; and a memory connected with the at least one processor in communication; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform any one of the methods in the first aspect or the second aspect.

[0052] In a sixth aspect, the present application provides a computer storage medium, which stores a computer program, and the computer program is used to enable a computer to execute any one of the methods in the first aspect or the second aspect.

[0053] According to the evaluation method, device, equipment and storage medium of a computing environment provided by the application, the problem of user distrust of multi-source heterogeneous computing nodes is solved, the security and reliability of each computing node are ensured through strict verification process and continuous monitoring, a plurality of evaluation indexes such as security verification in the starting process, environment isolation, memory encryption and communication channel encryption are covered, the healthy and efficient development of the computing power network is promoted, the credibility and security of the overall system are enhanced, and the integrity and confidentiality of data in the whole life cycle are ensured. BRIEF DESCRIPTION OF DRAWINGS

[0054] The drawings incorporated into the specification and forming part of the specification, show embodiments consistent with the application, and together with the specification, serve to explain the principles of the application, and do not constitute undue limitation on the application.

[0055] Figure 1 A flowchart of an evaluation method of a computing environment applied to a server end according to the embodiment is provided;

[0056] Figure 2 A flowchart of an evaluation method of a computing environment applied to a client end according to the embodiment is provided;

[0057] Figure 3 A module interaction diagram according to the embodiment is provided;

[0058] Figure 4 A schematic diagram of an evaluation device of a computing environment applied to a server end according to the embodiment is provided;

[0059] Figure 5 A schematic diagram of an evaluation device of a computing environment applied to a client end according to the embodiment is provided;

[0060] Figure 6 A schematic diagram of an electronic device according to the embodiment is provided;

[0061] Figure 7 A schematic diagram of a computer readable storage medium according to the embodiment is provided. DETAILED DESCRIPTION

[0062] In order to make the purpose, technical scheme and advantages of the application clearer, the application will be further described in detail below with reference to the drawings. Obviously, the described embodiments are only part of the embodiments of the application, not all the embodiments. Based on the embodiments in the application, all other embodiments obtained by those skilled in the art without creative labor fall within the scope of protection of the application.

[0063] It should be noted that the terms "first", "second", etc. in the specification and claims of the present disclosure and the above-described drawings are used to distinguish similar objects, and do not necessarily describe a specific order or sequence. It should be understood that the data thus used can be interchanged under appropriate circumstances, so that the embodiments of the present disclosure described herein can be implemented in an order other than those illustrated or described herein. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present disclosure. Rather, they are merely examples of devices and methods consistent with some aspects of the present disclosure as detailed in the appended claims.

[0064] Also, in the description of the embodiments of the present application, unless otherwise specified, " / " represents the meaning of or, for example, A / B can represent A or B; "and / or" in the text only describes the relationship between the associated objects, which means that there can be three relationships, for example, A and / or B, which can represent: A exists alone, A and B exist together, and B exists alone, in addition, in the description of the embodiments of the present application, "multiple" means two or more than two.

[0065] Embodiment 1

[0066] The present application provides an evaluation method of a computing environment, as shown in Figure 1 applied to the server side, comprising:

[0067] Step 101, receiving a trusted verification request sent by a client, and sending a first random number to the client according to the trusted verification request;

[0068] In one or more possible embodiments, the client in the present application refers to a computing node, the computing node is an abstract node providing computing functions, including a trusted plug-in, and generally refers to a terminal of a single computer or multiple computers or other computing functions and related devices, and finally multiple computing nodes can form a system for computing and processing information according to certain rules and programs; the trusted verification request can be triggered manually by a user, for example, the user can trigger it on the web front end, to ensure that the security check is performed immediately when needed, and at the same time, the trusted verification request can also be initiated automatically based on a preset period, which helps to save the consumption of computing power of the computing node, ensures the execution of normal tasks of the computing node, and meets the needs of the user for regular trusted verification, thereby maintaining the high security and reliability of the system, flexibly adapting to the needs of the user and optimizing the use of computing node resources; the trusted verification request is transmitted to the server end through an API interface provided by the trusted plug-in using an https protocol; the trusted verification request usually contains various information to ensure effective identity verification and environment verification, for example, the trusted verification request in the present application includes node identification information, a timestamp, geographic location information, or other application-specific security parameters, and the like, and the node identification information is a unique identifier of the computing node (such as a MAC address, an IP address, or a device serial number, etc.), which is used to identify the specific device (client) initiating the request.

[0069] In one or more possible embodiments, after the server end receives the trusted verification request sent by the client, a process of verifying whether the client is trusted is started, first, whether the security start-up process of the client is safe and compliant is verified, the server end generates a first random number (one-time random number, random nonce) according to a pre-set challenge / response protocol to initiate a challenge request to the computing node, and then sends the first random number to the client.

[0070] In step 102, the summary information and the random number of the start-up process sent by the client are received, the summary information and the random number are compared with the preset summary information and the first random number respectively, and the first evaluation score of the start-up process of the client is determined according to the comparison result; wherein the summary information includes the state information of each stage in the start-up process;

[0071] In one or more possible embodiments, the above-mentioned summary information is determined by the above-mentioned client, including the status information of each stage in the startup process; in order to further enhance security, the above-mentioned client also digitally signs the above-mentioned summary information using a private key to form signature data, and the trusted server can use the corresponding public key to verify the validity of the signature; the trusted plug-in is responsible for collecting the above-mentioned measurement values at each startup stage, and storing these measurement values in the platform configuration register (PCR, Platform Configuration Register) as summary information, and the trusted plug-in will send these summary information to the server for verification together with the signature; the specific method is as follows:

[0072] Receiving the summary information of the startup process signed by the private key sent by the client, the trusted certificate carrying the public key corresponding to the private key, and the random number; decrypting the summary information of the startup process signed by the private key according to the public key in the above-mentioned certificate to obtain the decrypted summary information; comparing the decrypted summary information with the preset summary information, and comparing the random number sent by the client with the first random number to obtain two comparison results; determining the first evaluation score of the client startup process according to the two comparison results; if it is determined that the two comparison results are exactly the same, it is determined that the first evaluation score of the client startup process is 100 points (the above-mentioned evaluation score is only for ease of description, and other numbers such as 10 or 1 can also be used, which will not be described here); if it is determined that the summary information is not exactly the same as the preset summary information or the two random numbers are not the same, it is determined that the first evaluation score of the client startup process is 0; when it is determined that the first evaluation score is 0, the server can limit the access of the computing node or display the security risk of the computing node in the form of an alarm according to the pre-set trusted evaluation strategy.

[0073] Step 103, receiving the encrypted environment running information sent by the client, decrypting the encrypted environment running information, and determining a second evaluation score according to the decryption result; or, receiving the memory encryption information sent by the client, and determining a third evaluation score according to the memory encryption information;

[0074] In one or more possible embodiments, the server receives the encrypted environment running information or the memory encryption information sent by the client, and the determination of the client (trusted plug-in) is made; after the client determines to send the summary information and the random number corresponding to the starting process to the server, the environment isolation verification process of the computing environment is performed, and the above environment isolation uses remote attestation technology to verify the computing node; the trusted plug-in obtains the CPU and / or GPU model of the hardware server or the computing node on which the virtual machine relies, and then compares the CPU and / or GPU model with the preset chip list of the TEE (Trusted Execution Environment, trusted execution environment) stored in the trusted plug-in database; if the CPU and / or GPU model of the current node can be found in the above preset chip list, it is determined that the computing node supports the TEE function, and then the trusted plug-in can start the remote attestation process of the TEE; if the CPU and / or GPU model of the current node is not found in the above preset chip list, the client will directly perform the verification process of the memory encryption, and then send the memory encryption information to the server.

[0075] In one or more possible embodiments, the trusted plug-in calls the remote attestation API provided by the chip to obtain the measurement value of the current TEE running environment, and uses the key stored in the key system of the chip manufacturer to sign the measurement value of the running environment to obtain the encrypted environment running information, and sends the encrypted environment running information to the server; the server verifies the signature of the measurement value information according to the endorsement service provided by the device manufacturer, and if the signature verification is passed, it proves that the measurement information obtained by the trusted plug-in is generated by the real hardware TEE, and if the signature verification is not passed, it proves that the computing environment is false computing power or the program is tampered; that is, the server decrypts the encrypted environment running information to obtain a decryption result, and the decryption result includes two kinds, one is success, and the other is failure; if the decryption result is success, the second evaluation score is determined according to the decryption result, and the second evaluation score is 100 points, if the decryption result is failure, the server sends the decryption failure information to the client, indicating that the program in the TEE environment is tampered or the third-party deployed application program has security vulnerabilities, and the recovery process of the application program needs to be started; then the client downloads the compliant version of the application program from the application program warehouse and re-installs, and after the installation is completed, the measurement value of the TEE running environment is obtained again and is encrypted according to the signature and then sent to the server, and the server decrypts again to obtain a decryption result, and records the number of decryption times, if the decryption result is still failure, the decryption failure information can be sent to the client again until success or the limit number of times is reached to limit the access of the computing node; if the decryption is successful, it is determined that the second evaluation score is 100, otherwise, the second evaluation score is 0 in other cases;

[0076] In one or more possible embodiments, when the client determines that the computing node does not support the TEE function, a memory encryption detection process is started; the server end configures detection data on the computing node management platform and sends a storage address of the data to a trusted plug-in (the client) of the target computing node, the client reads data in the memory of the computing node according to the storage address sent by the server end, analyzes whether the read data is stored in a cipher state, and sends memory encryption information of whether the data is stored in a cipher state to the server end, and the server end determines a third evaluation score according to the memory encryption information, specifically, if the data is stored in a cipher state, the server end determines that the third evaluation score is 100, and if the data is not stored in a cipher state, the server end determines that the third evaluation score is 0.

[0077] Step 104, a channel detection request is sent to the client, so that the client determines whether the data transmission channel between the client and the server end is an encrypted channel according to the channel detection request;

[0078] Step 105, receiving the channel encryption detection result sent by the client, and determining a fourth evaluation score according to the channel encryption detection result;

[0079] In one or more possible embodiments, the server end sends a channel detection request to the client, and the trusted plug-in in the client copies the data packet (message) received by the interface of the client, but does not affect the normal data transmission, and then the client determines whether the data transmission channel is an encrypted channel according to the protocol type (such as HTTPS, SSH, etc. Encryption protocol, or HTTP, etc. Unencrypted protocol), port number (such as 443 port usually used for HTTPS encrypted communication) and source address, etc.; Specifically: if an encrypted protocol (such as HTTPS, SSH) is detected, or the data presents an encryption feature, it is determined as an encrypted channel, if no encryption feature is found, it is determined as a non-encrypted channel, other ways can also be used, which are not described in detail here; then the client sends the channel encryption detection result to the server end, and the server end determines a fourth evaluation score according to the channel encryption detection result, if the channel is encrypted, the fourth evaluation score is 100, if it is not encrypted, the fourth evaluation score is 0.

[0080] Step 106, determining a final evaluation score according to the first evaluation score, the second evaluation score or the third evaluation score, the fourth evaluation score, and the preset weight corresponding to each evaluation score respectively; the final evaluation score is used to represent the security level of the client.

[0081] In one or more possible embodiments, the server side displays each evaluation item of the above-mentioned computing node (client) and the evaluation score corresponding to each evaluation item in a report form through a RESTful API interface on the computing node management platform; then calculates the evaluation score of each single evaluation process according to the evaluation score and weight of each single evaluation index, and generates a trusted evaluation report, which contains the evaluation item name and weight, and the final evaluation score. The final evaluation score is used to represent the security level (credibility) of the above-mentioned client; according to the weight of each evaluation item set by the administrator, the final evaluation score according to the evaluation weight is obtained, the higher the final evaluation score, the higher the credibility of the trusted environment, which indicates that the data security is better. The weight of each evaluation item can be set by the administrator or can use the default weight; at the same time, the credibility of the trusted computing environment is also classified, for example, 90-100 points for the first level, 70-90 points for the second level, and 60-70 points for the third level, and then it is determined which level the final evaluation score belongs to, which can make the credibility of the trusted computing environment more intuitive.

[0082] Embodiment 2

[0083] Based on the same inventive concept, the application also provides a computing environment evaluation method applied to a client, as shown in Figure 2 The method comprises the following steps:

[0084] Step 201, sending a trusted verification request to a server and receiving a first random number sent by the server according to the trusted verification request;

[0085] Step 202, obtaining the summary information of the startup process according to the trusted hardware code, wherein the summary information includes the state information of each stage in the startup process;

[0086] In one or more possible embodiments, the above-mentioned booting process comprises: a trusted hardware code initialization phase, a boot loading phase, a kernel loading phase, and a file system mounting phase; the above-mentioned digest information comprises state information of the four phases; the above-mentioned obtaining of the digest information of the booting process according to the trusted hardware code comprises: determining a first measurement value of the trusted hardware code initialization phase according to the trusted hardware code; verifying the boot loading phase according to the first measurement value to obtain a second measurement value; verifying the kernel loading phase according to the second measurement value to obtain a third measurement value; verifying the file system mounting phase according to the third measurement value to obtain a fourth measurement value; and generating the digest information according to the four measurement values; the trusted hardware code is a read-only memory (ROM) code, the ROM code refers to a program code solidified in a hardware chip, and is usually the first part to be run when a device is started, used to initialize hardware and guide the subsequent booting process, the ROM code is the first program in the booting process, and has the characteristics of being unchangeable or difficult to change, and is therefore commonly used to guarantee the trustworthiness of system booting, especially as the starting point of a trust chain in a trusted computing environment, therefore, the application determines the first measurement value of the trusted hardware code initialization phase according to the trusted hardware code, and then verifies the trustworthiness of the next link according to the trusted hardware code, that is, verifies the boot loading phase according to the first measurement value to obtain the second measurement value; similarly, the third measurement value and the fourth measurement value are obtained; the specific content is as follows:

[0087] In the trusted booting process, the digest information is an important basis for the security verification of the state of each booting phase component, and usually contains the following content and component state information:

[0088] The trusted hardware code initialization phase (ROM phase): the integrity of the solidified code in the ROM is measured to generate a unique hash value (first measurement value), which reflects whether the ROM code has been tampered with;

[0089] The boot loading phase (U-Boot & GRUB phase): the binary file and configuration file of U-Boot or GRUB are calculated according to the first measurement value to generate a second measurement value, which is used to ensure that the boot loader is not tampered with and is executed as expected;

[0090] The kernel loading phase (Kernel loading phase): the kernel file and its modules are calculated according to the second measurement value to generate a third measurement value, which is used to ensure the integrity and authenticity of the kernel file and its modules, and prevent malicious software from replacing or modifying the kernel;

[0091] File system mounting stage (file system loading stage): the fourth metric value is generated by performing hash calculation on the root file system according to the third metric value, and is used to ensure the integrity of the file system and prevent unauthorized modification or malicious file injection; the root file system (Root Filesystem) includes but is not limited to system library, configuration file, user data, etc.

[0092] Step 203, sending the random number and the above-mentioned digest information to the server, so that the server compares the digest information and the random number with the preset digest information and the first random number respectively;

[0093] Step 204, determining whether the CPU and / or GPU model corresponding to the client is included in the preset chip list; if yes, obtaining the encrypted environment running information and sending it to the server end, if not, sending the memory encryption information to the server end;

[0094] Step 205, sending the channel encryption detection result to the server end, so that the server end determines the fourth evaluation score according to the channel encryption detection result.

[0095] In one or more possible embodiments, as shown in Figure 3 The interaction module diagram of the client and the server in the present application is shown, and full-process automatic detection is realized through the collaborative interaction of the client and the server. The specific process is as follows: first, the client (computing node) initiates a trusted verification request to the server end, and the server end generates a random number challenge value in response; the client then collects the integrity metric values from the four startup stages of ROM initialization, boot loading, kernel loading and file system mounting, generates a digital digest and signs it, and returns it to the server end together with the certificate, the server end completes the security startup evaluation by verifying the signature and comparing the preset value, then the client detects whether the CPU and / or GPU supports TEE trusted execution environment, if it supports, the encrypted TEE running metric value is obtained and sent to the server end for verification, otherwise, the memory encryption detection is performed, and the server end gives an environment isolation or memory encryption score according to the verification result; then the server end initiates a communication channel detection instruction, the client judges the channel encryption state by analyzing the protocol type, port number and encryption characteristics of the network message and feeds back the result. Finally, the server end generates a trusted evaluation report containing specific scores and risk levels by comprehensively evaluating the security startup, environment isolation / memory encryption, communication encryption and other evaluation results, and dynamically implements node access control or automatic repair measures according to the scores.

[0096] The computing environment evaluation method, apparatus, device, and storage medium provided in this application are used to address the problem of user distrust of multi-source heterogeneous computing nodes. Through a rigorous verification process and continuous monitoring, the security and reliability of each computing node are ensured. The evaluation covers multiple indicators such as security verification during startup, environment isolation, memory encryption, and communication channel encryption. This promotes the healthy and efficient development of computing networks, enhances the credibility and security of the overall system, and ensures the integrity and confidentiality of data throughout its entire lifecycle.

[0097] Example 3

[0098] Corresponding to the above-described evaluation method for computing environments, this invention also proposes an evaluation apparatus for computing environments. Since the apparatus embodiments of this invention correspond to the above-described method embodiments, details not disclosed in the apparatus embodiments can be referred to the above-described method embodiments, and will not be repeated here.

[0099] This application provides a computing environment evaluation device, applied to the server side, such as... Figure 4 As shown, it includes:

[0100] The trusted verification request receiving module 401 is used to receive a trusted verification request sent by the client, and send a first random number to the client according to the trusted verification request.

[0101] The first information acquisition module 402 is used to receive the summary information and random number of the startup process sent by the client, compare the summary information and random number with the preset summary information and the first random number respectively, and determine the first evaluation score of the client startup process based on the comparison result; wherein, the summary information includes the status information of each stage in the startup process;

[0102] The second information acquisition module 403 is used to receive the encrypted environment operation information sent by the client, decrypt the encrypted environment operation information, and determine the second evaluation score based on the decryption result; or, receive the memory encryption information sent by the client and determine the third evaluation score based on the memory encryption information.

[0103] The channel detection request sending module 404 is used to send a channel detection request to the client, so that the client can determine whether the data transmission channel between the client and the server is an encrypted channel based on the channel detection request.

[0104] The third information acquisition module 405 is used to receive the channel encryption detection result sent by the client and determine the fourth evaluation score based on the channel encryption detection result.

[0105] The final evaluation score determination module 406 is used to determine the final evaluation score based on the first evaluation score, the second or third evaluation score, the fourth evaluation score, and the preset weight corresponding to each evaluation score; the final evaluation score is used to characterize the security level of the client.

[0106] Example 4

[0107] Based on the same inventive concept, this application provides a computing environment evaluation device for use on a client side, such as... Figure 5 As shown, it includes:

[0108] The trusted verification request sending module 501 is used to send a trusted verification request to the server and receive a first random number sent by the server according to the trusted verification request.

[0109] The summary information determination module 502 is used to obtain summary information of the boot process based on trusted hardware code. The summary information includes the status information of each stage in the boot process.

[0110] The first information sending module 503 is used to send a random number and the above-mentioned summary information to the above-mentioned server, so that the above-mentioned server compares the above-mentioned summary information and the random number with the preset summary information and the above-mentioned first random number respectively;

[0111] The second information sending module 504 is used to determine whether the CPU and / or GPU model corresponding to the above client is included in the preset chip list; if yes, it obtains the encryption environment operation information and sends it to the above server; if no, it sends memory encryption information to the above server.

[0112] The third information sending module 505 is used to send the channel encryption detection result to the aforementioned server so that the aforementioned server can determine the fourth evaluation score based on the aforementioned channel encryption detection result.

[0113] Example 5

[0114] This application also provides an electronic device, including at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to perform the above-described evaluation method for the computing environment.

[0115] like Figure 6 As shown, the device includes a processor 601, a memory 602, a communication interface 603, and a bus 604. The processor 601, memory 602, and communication interface 603 are interconnected via the bus 604.

[0116] The processor 601 is configured to read and execute instructions in the memory 602, so as to enable the at least one processor to perform the evaluation method of the computing environment provided in the above embodiments.

[0117] The memory 602 is configured to store various instructions and programs of the evaluation method of the computing environment provided in the above embodiments.

[0118] The bus 604 can be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, etc. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 6 Only one thick line is used in the figure to represent the bus, but it does not mean that there is only one bus or only one type of bus.

[0119] The processor 601 can be a central processing unit (CPU), a network processor (NP), a graphic processing unit (GPU), or any combination of the CPU, the NP, and the GPU. It can also be a hardware chip. The hardware chip can be an application-specific integrated circuit (ASIC), a programmable logic device (PLD), or a combination thereof. The PLD can be a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof.

[0120] Embodiment 6

[0121] In addition, the present application also provides a computer readable storage medium, such as a compact disc (CD) 703, a digital versatile disc (DVD) 704, a Blu-ray disc (BD) 705, a memory stick 706, a universal serial bus (USB) flash disk 707, a memory card 708, or a hard disk 709. Figure 7 As shown in the figure, the computer storage medium stores a computer program, and the computer program is used to enable the computer to execute any one of the methods in the above embodiments.

[0122] The memory can include a readable medium in the form of a volatile memory, such as a random access memory (RAM) 701 and / or a cache memory 702, and can further include a read-only memory (ROM) 703.

[0123] The memory can further include the programs / utilities 705 having a set (at least one) of program modules 704, including but not limited to: an operating system, one or more applications, other program modules, and program data, and each of these examples, or some combination thereof, can include implementation of a network environment.

[0124] Those skilled in the art will appreciate that embodiments of the present application can be devised for a method, a system, or a computer program product. Accordingly, the present application can take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application can take the form of a computer program product on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROMs, optical storage devices, etc.) embodying computer readable program code.

[0125] The present application is described in reference to the flowchart illustrations and / or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the application. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general purpose computer, special purpose computer, embedded processing system or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart illustrations and / or block diagrams block or blocks. Figure 1 one or more functions specified in the flowchart illustrations and / or block diagrams block or blocks. Figure 1 means for performing each of the functions specified in the flowchart illustrations and / or block diagrams block or blocks.

[0126] These computer program instructions can also be stored in a computer- readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instructions which implement the flowchart illustrations and / or block diagrams block or blocks. Figure 1 one or more functions specified in the flowchart illustrations and / or block diagrams block or blocks. Figure 1 means for performing each of the functions specified in the flowchart illustrations and / or block diagrams block or blocks.

[0127] These computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the flowchart illustrations and / or block diagrams block or blocks. Figure 1 one or more functions specified in the flowchart illustrations and / or block diagrams block or blocks. Figure 1 means for performing each of the functions specified in the flowchart illustrations and / or block diagrams block or blocks.

[0128] Obviously, many modifications and variations of the present application are possible in light of the above teachings. It is, therefore, to be understood that within the scope of the appended claims and their equivalents, the application can be practiced otherwise than as specifically described.

Claims

1. A method of assessing a computing environment, the method comprising: Applied to a server side, comprising: receiving a trusted authentication request sent by a client, and sending a first random number to the client according to the trusted authentication request; receiving summary information and a random number of a starting process sent by the client, comparing the summary information and the random number with preset summary information and the first random number respectively, and determining a first evaluation score of the starting process of the client according to a comparison result; wherein the summary information comprises state information of each stage in the starting process; receiving encrypted environment running information sent by the client, decrypting the encrypted environment running information, and determining a second evaluation score according to a decryption result; or receiving memory encryption information sent by the client, and determining a third evaluation score according to the memory encryption information; sending a channel detection request to the client, so that the client determines whether a data transmission channel between the client and the server side is an encrypted channel according to the channel detection request; receiving a channel encryption detection result sent by the client, and determining a fourth evaluation score according to the channel encryption detection result; determining a final evaluation score according to the first evaluation score, the second evaluation score or the third evaluation score, the fourth evaluation score, and a preset weight corresponding to each evaluation score; the final evaluation score is used to represent a security level of the client.

2. The method of claim 1, wherein, The receiving the summary information and the random number of the starting process sent by the client, comparing the summary information and the random number with preset summary information and the first random number respectively, and determining the first evaluation score of the starting process of the client according to a comparison result, comprises: receiving the summary information of the starting process signed by a private key, a trusted certificate carrying a public key corresponding to the private key, and a random number sent by the client; decrypting the summary information of the starting process signed by the private key according to the public key in the certificate, and obtaining decrypted summary information; comparing the decrypted summary information with preset summary information, and comparing the random number sent by the client with the first random number, to obtain two comparison results; determining the first evaluation score of the starting process of the client according to the two comparison results.

3. The method of claim 1, wherein, Before the determining the second evaluation score according to the decryption result, further comprising: if the decryption result is successful, determining the second evaluation score according to the decryption result; if the decryption result is unsuccessful, sending a failure information to the client, so that the client re-installs a compliant version of a program, and sends new encrypted environment running information to the server again; decrypting the new encrypted environment running information, determining a new decryption result, and determining the second evaluation score according to the new decryption result.

4. The method of claim 1, wherein, The receiving the channel encryption detection result sent by the client, and determining the fourth evaluation score according to the channel encryption detection result, comprises: indicating the client to obtain network communication messages, so that the client judges a communication channel encryption state through a protocol type, a port number and source address information in the network communication messages; receive the channel encryption detection result sent by the client, and determine a fourth evaluation score according to the channel encryption detection result, wherein the channel encryption detection result is determined according to the communication channel encryption state.

5. A method of evaluating a computing environment, the method comprising: Applied to a client, comprising: sending a trusted verification request to a server, and receiving a first random number sent by the server according to the trusted verification request; obtaining summary information of a startup process according to a trusted hardware code, wherein the summary information comprises state information of each stage in the startup process; sending the random number and the summary information to the server, so that the server compares the summary information and the random number with preset summary information and the first random number, respectively; determining whether the CPU and / or GPU model corresponding to the client is included in a preset chip list; if yes, obtaining encryption environment running information and sending it to the server, and if no, sending memory encryption information to the server; sending a channel encryption detection result to the server, so that the server determines a fourth evaluation score according to the channel encryption detection result.

6. The method of claim 5, wherein, The startup process comprises a trusted hardware code initialization stage, a boot loading stage, a kernel loading stage, and a file system mounting stage. The summary information of the startup process is obtained according to the trusted hardware code, comprising: determining a first measurement value of the trusted hardware code initialization stage according to the trusted hardware code; verifying the boot loading stage according to the first measurement value, and obtaining a second measurement value; verifying the kernel loading stage according to the second measurement value, and obtaining a third measurement value; verifying the file system mounting stage according to the third measurement value, and obtaining a fourth measurement value; generating summary information according to the four measurement values.

7. An evaluation apparatus of a computing environment, characterized by Applied to a server, comprising: a trusted verification request receiving module for receiving a trusted verification request sent by a client, and sending a first random number to the client according to the trusted verification request; a first information obtaining module for receiving summary information of a startup process and a random number sent by the client, comparing the summary information and the random number with preset summary information and the first random number, respectively, and determining a first evaluation score of the startup process of the client according to the comparison result; wherein the summary information comprises state information of each stage in the startup process; a second information obtaining module for receiving encryption environment running information sent by the client, decrypting the encryption environment running information, and determining a second evaluation score according to the decryption result; or receiving memory encryption information sent by the client, and determining a third evaluation score according to the memory encryption information; a channel detection request sending module for sending a channel detection request to the client, so that the client determines whether the data transmission channel between the client and the server is an encrypted channel according to the channel detection request; a third information obtaining module for receiving a channel encryption detection result sent by the client, and determining a fourth evaluation score according to the channel encryption detection result. A final evaluation score determination module is configured to determine a final evaluation score according to the first evaluation score, the second evaluation score or the third evaluation score, the fourth evaluation score, and a preset weight corresponding to each evaluation score, wherein the final evaluation score is used to represent the security level of the client.

8. An evaluation apparatus of a computing environment, characterized by The application is applied to a client, and comprises: A trusted verification request sending module is configured to send a trusted verification request to a server and receive a first random number sent by the server according to the trusted verification request; An abstract information determination module is configured to obtain abstract information of a startup process according to a trusted hardware code, wherein the abstract information comprises state information of each stage in the startup process; A first information sending module is configured to send the random number and the abstract information to the server, so that the server compares the abstract information and the random number with preset abstract information and the first random number, respectively; A second information sending module is configured to determine whether a CPU and / or GPU model corresponding to the client is included in a preset chip list; if yes, obtain encrypted environment running information and send the encrypted environment running information to the server; if no, send memory encryption information to the server; A third information sending module is configured to send a channel encryption detection result to the server, so that the server determines a fourth evaluation score according to the channel encryption detection result.

9. An electronic device, comprising: The electronic device comprises: at least one processor; and a memory connected with the at least one processor in communication; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform any one of the methods of claims 1-4 or 5-6.

10. A computer storage medium, characterized in that, The computer storage medium stores a computer program, and the computer program is used to enable a computer to perform any one of the methods of claims 1-4 or 5-6.