Data circulation method and device based on trusted execution environment, equipment and medium
By processing data in a trusted execution environment and generating data interfaces to realize data sharing, data security issues in existing data circulation methods are solved, and the secure circulation and efficient utilization of data are realized.
Patent Information
- Application Number
- CN202411940913.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-26
- Publication Date
- 2025-04-22
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
The existing data circulation methods have risks of data leakage, abuse, and tampering, and are costly and inefficient, which cannot effectively solve the data security problems.
By establishing a data processing model for the pending data source in a trusted execution environment and running the model in that environment to generate a result data table, a data interface is generated for the result data table, ensuring that the data is processed and shared in a secure environment.
It ensures the security of the data processing process without leaking data to the outside world, achieves the purpose of data being available and invisible, and reduces the risk of data leakage and tampering.
Smart Images

Figure CN119862050A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of data circulation technology, and in particular to a data circulation method, device, equipment and medium based on a trusted execution environment. Background Art
[0002] In the process of data circulation and application, all parties involved in the data face the risk of data leakage, abuse, and tampering, as well as the hidden danger of privacy leakage. With the expansion of data circulation and application scope, data security issues are becoming increasingly prominent.
[0003] Traditional data circulation methods often rely on direct data transmission or sharing. Although this method can achieve rapid data circulation, it is costly, inefficient, and poses a risk of data leakage and abuse. Summary of the invention
[0004] In view of this, the purpose of the present invention is to provide a data circulation method, device, equipment and medium based on a trusted execution environment, which can realize on-demand fusion computing and processing through one or more parties' data in a secure environment, and use the data interface to call the result data table. It can realize data processing under the premise of ensuring that the data is not leaked to the outside, so as to achieve the purpose of data being available but invisible, and use the trusted execution environment to ensure the security of the data processing process.
[0005] In a first aspect, an embodiment of the present invention provides a data circulation method based on a trusted execution environment, comprising:
[0006] Establish a data processing model corresponding to the data source to be processed;
[0007] Sending the data processing model to the trusted execution environment, running the data processing model in the trusted execution environment, and obtaining a result data table output by the data processing model;
[0008] Get the configuration information corresponding to the result data table;
[0009] Based on the configuration information, a data interface corresponding to the result data table is generated for the data demander to call the result data table.
[0010] In a preferred embodiment of the present invention, before establishing the data processing model corresponding to the data source to be processed, the following steps are included:
[0011] Obtain at least one initial data source;
[0012] Based on each initial data source, obtain the governance information corresponding to each initial data source;
[0013] According to the governance information corresponding to each initial data source, data governance is performed on each initial data source to obtain a data source to be processed.
[0014] In a preferred embodiment of the present invention, the above governance information corresponding to each initial data source is used to perform data governance on each initial data source to obtain a data source to be processed, including:
[0015] According to the governance information corresponding to each initial data source, establish a data governance model corresponding to each initial data source;
[0016] For each initial data source, the initial data source is input into the data governance model corresponding to the initial data source to obtain the data source to be processed.
[0017] In a preferred embodiment of the present invention, the above-mentioned establishment of a data processing model corresponding to the data source to be processed includes:
[0018] Obtain the calculation rules corresponding to the data source to be processed;
[0019] According to the calculation rules, a data processing model corresponding to the data source to be processed is established.
[0020] In a preferred embodiment of the present invention, the data processing model is sent to a trusted execution environment, and the data processing model is run in the trusted execution environment to obtain a result data table output by the data processing model, including:
[0021] Encrypting the data processing model to obtain an encrypted data processing model;
[0022] The encrypted data processing model is sent to the trusted execution environment, and the encrypted data processing model is run in the trusted execution environment to obtain a result data table output by the encrypted data processing model.
[0023] In a preferred embodiment of the present invention, the encrypted data processing model is run in a trusted execution environment to obtain a result data table output by the encrypted data processing model, including:
[0024] Decrypting the encrypted data processing model in the trusted execution environment to obtain a data processing model;
[0025] According to the scheduling program instruction corresponding to the data processing model, the data processing model is run to obtain the data calculation result of the data processing model;
[0026] The data calculation results are stored in the result data table.
[0027] In a preferred embodiment of the present invention, after the data interface corresponding to the result data table is generated based on the configuration information so that the data demander can call the result data table, the method further includes:
[0028] Receive data request corresponding to the data interface;
[0029] Based on the data request, the data interface is called to obtain the result data table.
[0030] In a second aspect, an embodiment of the present invention further provides a data circulation device based on a trusted execution environment, comprising:
[0031] A data processing model building module is used to build a data processing model corresponding to the data source to be processed;
[0032] A data processing module is used to send the data processing model to the trusted execution environment, run the data processing model in the trusted execution environment, and obtain a result data table output by the data processing model;
[0033] A configuration information acquisition module is used to obtain configuration information corresponding to the result data table;
[0034] The data interface generation module is used to generate a data interface corresponding to the result data table based on the configuration information, so that the data demander can call the result data table.
[0035] In a third aspect, an embodiment of the present invention further provides an electronic device, including a processor and a memory, wherein the memory stores computer-executable instructions that can be executed by the processor, and the processor executes the computer-executable instructions to implement the data circulation method based on a trusted execution environment of the first aspect mentioned above.
[0036] In a fourth aspect, an embodiment of the present invention further provides a computer-readable storage medium, which stores computer-executable instructions. When the computer-executable instructions are called and executed by a processor, the computer-executable instructions prompt the processor to implement the data circulation method based on a trusted execution environment of the first aspect mentioned above.
[0037] The embodiments of the present invention bring the following beneficial effects:
[0038] The embodiment of the present invention provides a data circulation method based on a trusted execution environment, by establishing a data processing model corresponding to the data source to be processed, sending it to the trusted execution environment, and running the data processing model in the trusted execution environment to obtain a result data table, which can prevent the data source to be processed from being illegally obtained or tampered with during the operation of the data processing model, thereby causing risks such as data leakage, and ensure the security of the data processing process. A data interface is generated for the result data table so that the data demander can call the result data table, which can realize data circulation under the premise of ensuring that the data is not leaked to the outside, and achieve the purpose of data being available but invisible.
[0039] Other features and advantages of the present invention will be set forth in the following description, or some features and advantages may be inferred or unambiguously determined from the description, or may be learned by implementing the above-mentioned technology of the present invention.
[0040] In order to make the above-mentioned objects, features and advantages of the present invention more obvious and easy to understand, preferred embodiments are given below and described in detail with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0041] In order to more clearly illustrate the specific implementation methods of the present invention or the technical solutions in the prior art, the drawings required for use in the specific implementation methods or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are some implementation methods of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0042] Figure 1 A flow chart of a data circulation method based on a trusted execution environment provided by an embodiment of the present invention;
[0043] Figure 2 A flowchart of another data circulation method based on a trusted execution environment provided by an embodiment of the present invention;
[0044] Figure 3 A flowchart of another data circulation method based on a trusted execution environment provided by an embodiment of the present invention;
[0045] Figure 4 A schematic diagram of the structure of a data circulation device based on a trusted execution environment provided by an embodiment of the present invention;
[0046] Figure 5 A schematic diagram of the structure of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0047] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution of the present invention will be clearly and completely described below in conjunction with the accompanying drawings. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0048] In recent years, driven by the wave of Internet informatization, the volume of data resources in the whole society has increased rapidly, but the potential value of data has not been fully explored and effectively released. The reasons are multifaceted, especially in the aspects of data sharing, circulation and application.
[0049] In terms of data sharing, there are still problems such as "unwilling to share", "dare not share", and "cannot share". The incomplete institutional norms of data ownership, disposal rights, and use rights, the lack of awareness of the value of data sharing by data owners, the backwardness of data sharing technology and its strong dependence on technology, and the security threats in the process of data circulation may hinder data sharing.
[0050] In the process of data circulation and application, all parties involved in the data face the risk of data leakage, abuse, and tampering, as well as the hidden danger of privacy leakage. With the expansion of data circulation and application scope, data security issues are becoming increasingly prominent. How to achieve safe, reliable, and efficient circulation and application of data while protecting the interests of all parties involved in the data has become an urgent problem to be solved.
[0051] Traditional data circulation management methods are costly, inefficient, and have the risk of data leakage and abuse. They cannot solve the problem of data holders being "unwilling to share", "daring not to share", or "unable to share". With the development of the data factor market, traditional concepts and technical means can no longer adapt to the needs of data circulation and utilization in the new era and new environment.
[0052] Based on this, a data circulation method based on a trusted execution environment provided by an embodiment of the present invention can create a secure environment based on hardware technology, ensure the security of the code and data running inside the environment, and prevent attackers from accessing or tampering with it. By establishing a data processing model corresponding to the data source to be processed and sending it to the trusted execution environment, the data processing model is run in the trusted execution environment to obtain a result data table, and a data interface is generated for the result data table for the data demander to call the result data table. This can achieve data circulation while ensuring that the data is not leaked to the outside, thereby achieving the purpose of data being available but invisible.
[0053] To facilitate understanding of this embodiment, a data circulation method based on a trusted execution environment disclosed in an embodiment of the present invention is first introduced in detail.
[0054] Example 1
[0055] The embodiment of the present invention provides a data circulation method based on a trusted execution environment. Figure 1 A flow chart of a data circulation method based on a trusted execution environment provided by an embodiment of the present invention. Figure 1 As shown, the data circulation method based on the trusted execution environment may include the following steps:
[0056] Step S101: establishing a data processing model corresponding to the data source to be processed.
[0057] Data source refers to data provided by a data supplier. The data type of a data source can be diverse, including structured data sets (such as database tables), unstructured files (such as Office documents, PDF files), IoT data (such as device sensor data), etc. The number of data suppliers providing data sources can be multiple, and for each data supplier, data of one data type can be used as a data source. The data source to be processed refers to the data that the data demander needs to process in the data source. The number of data sources to be processed is at least one, which can be data sources provided by different data suppliers, and the data types between different data sources to be processed can be different. The data processing model refers to a model for calculating the data source to be processed. In an embodiment of the present invention, the number of data processing models is at least one, and the data processing model can be a calculation model written in SQL statements, a calculation model written in Python statements, or a calculation model written in other statements. The data supplier can publish the data source on the data sharing platform. When publishing the data source, the name, type, quantity, storage address, field list, usage method and other information of the data can be provided. Data demanders can obtain the data source to be processed on the data sharing platform according to business needs, that is, obtain the name, type, quantity, storage address, field list, usage method and other information of the data. It can also be understood as obtaining the permission to obtain the data source to be processed, so as to facilitate subsequent calculations on the data source to be processed.
[0058] Specifically, the data demander establishes a data processing model corresponding to the data source to be processed on the data middle platform according to business needs. The data middle platform refers to a system that provides data processing capabilities for the data demander. The data demander can use the data middle platform and input the parameters required to establish the data processing model into the data middle platform according to the data processing functions provided by the data middle platform to generate a data processing model corresponding to the data source to be processed. Furthermore, before establishing the data processing model, the access information of the data source to be processed can be set on the data middle platform, which is used to store the data source to be processed in the data middle platform, or to store the storage location of the data source to be processed in the data middle platform.
[0059] For example, a bank can use the data center to establish a data processing model based on the characteristics of a vehicle company's transaction data and the needs of a risk control company. This data processing model can analyze the vehicle company's transaction data and extract key information for risk assessment.
[0060] Step S102, sending the data processing model to the trusted execution environment, running the data processing model in the trusted execution environment, and obtaining a result data table output by the data processing model.
[0061] The trusted execution environment may be a trusted execution environment provided by the centralized processing machine. It is understandable that the data demander can send the data processing model to the centralized processing machine through the data middle platform, store it in the trusted execution environment of the centralized processing machine, run the data processing model in the trusted execution environment of the centralized processing machine, obtain the processing result output by the data processing model, and store the processing result in the result data table.
[0062] In the process of running the data processing model, the data source to be processed can be directly obtained through the access information of the data source to be processed, and the data source to be processed can be input into the data processing model, so as to calculate the data source to be processed, obtain the calculation results, and store them in the result data table. The storage location of the result data table can be specified in the data processing model, so as to store the result data table.
[0063] Step S103, obtaining configuration information corresponding to the result data table.
[0064] The configuration information is used to set the data interface corresponding to the result data table. One result data table corresponds to one data interface, and the data demander obtains the result data table by calling the data interface. The data interface can be an API interface (Application Programming Interface).
[0065] Specifically, the configuration information includes at least the API interface name, interface type, request URL address (Uniform Resource Locator, web page address), API request method, request encoding, input parameters, output parameters, data cache information, data paging information, data desensitization strategy, whether to enable signature verification of API access, whether to enable API access authorization and authentication mechanism, result data table access information, etc. Among them, the API interface name and request URL address can be set according to demand, the interface type includes JSON (JavaScript Object Notation, lightweight data exchange format) and XML (eXtensible Markup Language, extensible markup language), the API request method includes Get and Post, and the request encoding includes UTF-8 (variable length character encoding) and GBK (character encoding standard for simplified Chinese). Input parameters refer to the parameters entered in the request URL address when calling the API interface, which are used to filter specific data in the result data table. Exemplarily, the format of the input parameters is url? key1=value1&key2=value2. While setting the input parameters in the API configuration information, you can further set the filter condition operator. The value of the input parameter will generate a WHERE condition statement together with the filter condition operator to filter out the data corresponding to the input parameter in the result data table. Exemplarily, the filter condition operator includes >, < and LIKE, etc., which are used to describe the query range of data when querying the data corresponding to the input parameter in the result data table. Output parameters refer to the parameters output after calling the API interface. It can be understood that when the data demander calls the result data table, he can understand the structure of the data in the result data table by viewing part of the data in the result data table; for the data that needs to be viewed, it can be controlled by the output parameters when setting the API configuration information. Data cache information is used to describe whether the data demander caches the data in the result data table after obtaining the data in the result data table. If caching is required, the cache time can be further set. Data paging information is used to describe whether the data demander displays the data in the result data table in pages when obtaining the data in the result data table. Data desensitization strategy is used to describe whether the data demander desensitizes the data in the result data table when obtaining the data in the result data table. Whether to enable signature verification for API access is used to describe whether the data demander needs to perform signature verification when calling the API interface. Whether to enable API access authorization and authentication mechanism is used to describe whether the data demander needs to perform access authorization and authentication when calling the API interface. Result data table access information includes data subject (database) type, data subject name, and data table name.The data subject (database) type refers to the type of the database to which the result data table belongs (such as a MySQL database or a Hive database, etc.), the data subject name refers to the name of the database to which the result data table belongs, and the data table name refers to the name of the result data table.
[0066] Exemplarily, the data demander may input API configuration information corresponding to the result data table on the data platform.
[0067] Step S104: Generate a data interface corresponding to the result data table based on the configuration information, so that the data demander can call the result data table.
[0068] Specifically, first set the API interface name, request URL address, API request method, request code and other basic information, then set the data source, that is, set the result data table access information (select data subject type, data subject name, data table name), set the API interface input parameter information, output parameter information, and then set the data cache information, data paging information, and data desensitization strategy according to actual needs. Set whether to enable signature verification for API access and whether to enable API access authorization and authentication mechanism according to the public characteristics and security level of the data. After setting the above configuration information, the data center will quickly generate a data service API based on this information for data demanders to call.
[0069] The data circulation method based on the trusted execution environment provided by the embodiment of the present invention establishes a data processing model corresponding to the data source to be processed, sends it to the trusted execution environment, runs the data processing model in the trusted execution environment, and obtains a result data table. It can avoid the data source to be processed from being illegally obtained or tampered with during the operation of the data processing model, thereby causing risks such as data leakage, ensuring the security of the data processing process and achieving the purpose of data being available but invisible. A data interface is generated for the result data table for the data demander to call the result data table, which can realize data sharing and trusted circulation under the premise of ensuring that the data is not leaked to the outside. Since the data interface is generated outside the trusted execution environment, the data demander can obtain the required data without entering the trusted execution environment. At the same time, since the data source to be processed and the data calculation and processing process are protected in the trusted execution environment, the data demander cannot directly access or tamper with the original data, thereby realizing the safe circulation of data.
[0070] Example 2
[0071] The embodiment of the present invention also provides another data circulation method based on a trusted execution environment; this method is implemented on the basis of the method of the above embodiment; this method focuses on describing the specific implementation method of establishing a data processing model corresponding to the data source to be processed.
[0072] Figure 2 A flowchart of another data circulation method based on a trusted execution environment provided by an embodiment of the present invention, such as Figure 2 As shown, the data circulation method based on the trusted execution environment may include the following steps:
[0073] Step S201: Acquire at least one initial data source.
[0074] The initial data source refers to the original data obtained by the data demander in the data source. It is understandable that the data demander can obtain the data source to be processed after preprocessing the initial data source. Preprocessing refers to the process of performing preliminary processing on the initial data source to remove abnormal data, redundant data, etc. in the initial data source to obtain a high-quality data source.
[0075] Specifically, the data demander can establish a data collection task in the data center, and the data center obtains at least one initial data source by running the data collection task. Exemplarily, the data demander can enter the collection task name, collection data type, collection target library type, initial data source connection information, running interval and other information in the data center, and the data center automatically generates the data collection task according to the information entered by the data demander. Among them, the collection data type refers to the data type of the data source that the data demander needs to obtain (such as database, message queue, data cache, API interface, etc.). The collection target library type refers to the type of database that stores the initial data source (such as MySQL, Hive, SQL Server, Presto, etc.). The initial data source connection information refers to the information provided by the data supplier for accessing the initial data source. The running interval refers to the interval duration when the data collection task is running. A data collection task can be established for an initial data source.
[0076] Step S202: Based on each initial data source, obtain the governance information corresponding to each initial data source.
[0077] Governance information is used to describe the process of preprocessing the initial data source. Governance information includes target data subject, target data table, data quality standard, mapping dictionary, data verification rules, and desensitization rules. The target data subject refers to the name of the specific database that stores the data after governance, that is, the name of the database used to store the data source to be processed. The target data table refers to the name of the data table that stores the data after governance. Data quality standards refer to a set of detailed regulations, indicators or rules defined by humans in a business environment to ensure the accuracy, consistency, integrity, uniqueness, timeliness, validity and accessibility of data, so that the data meets the purpose of use of the data demander and meets the specific needs of the business scenario. Data quality standards can select corresponding standards from the data center according to actual conditions. The mapping dictionary is used to describe the mapping method for processing the data of specific fields in the initial data source during the data governance process. Data verification rules refer to the rules for checking and verifying the data of specific fields in the data source to be processed during the data governance process, including null or non-null verification, value range verification, value length verification, regular expression verification, etc. Desensitization rules refer to whether it is necessary to perform desensitization processing on the values of specific fields in the initial data source. Data validation rules can include null value checking, validity checking, and format checking.
[0078] Specifically, for each initial data source, the governance information corresponding to the initial data source is input.
[0079] Step S203: performing data governance on each initial data source according to the governance information corresponding to each initial data source to obtain a data source to be processed.
[0080] Specifically, for the governance information corresponding to each initial data source, first create the data source, target data subject, and target data table. Among them, creating a data source means storing the initial data source in the data center. Then establish data quality standards according to actual needs, set mapping dictionaries, data verification rules, and desensitization rules. Then, during the execution of data governance tasks, perform data standard checks according to the configuration, replace fields based on the data mapping dictionary, check field values based on data verification rules, and desensitize field data based on the desensitization rule configuration. After the task is executed, the final data source to be processed is generated.
[0081] Specifically, the data source to be processed can be obtained through steps A1 and A2.
[0082] Step A1: Establish a data governance model corresponding to each initial data source based on the governance information corresponding to each initial data source.
[0083] The data governance model is used to perform data governance on the initial data source. Specifically, for each initial data source, according to the governance information corresponding to the initial data source, the configured governance information is converted into a program written in SQL statements to obtain the data governance model corresponding to the initial data source. Alternatively, according to the governance information corresponding to the initial data source, a program can be directly written using SQL statements to describe the governance information corresponding to the initial data source to obtain the data governance model corresponding to the initial data source.
[0084] Step A2: for each initial data source, input the initial data source into the data governance model corresponding to the initial data source to obtain the data source to be processed.
[0085] Specifically, the data center runs the data processing model, inputs the initial data source into the corresponding data governance model, and obtains the output of the data governance model, which is the data source to be processed. One of the initial data sources can obtain a data source to be processed.
[0086] By establishing a data governance model, the initial data source is governed to obtain the data source to be processed, making the data processing process more automated and efficient. Once the model is established, a large number of initial data sources can be processed in batches without the need for manual tedious data cleaning and conversion.
[0087] Step S204: obtaining the calculation rules corresponding to the data source to be processed.
[0088] The calculation rules corresponding to the data source to be processed are used to describe the calculation formula when calculating the data source to be processed. Specifically, the data demander can input the calculation rules corresponding to the data source to be processed on the data platform according to business needs. Exemplarily, at least one calculation rule of addition, subtraction, multiplication and division of specific fields between different data sources to be processed can be set on the data platform.
[0089] Step S205: establishing a data processing model corresponding to the data source to be processed according to the calculation rules.
[0090] Specifically, the data middle platform can convert the calculation rules input by the data demander into SQL statements, thereby generating a data processing model corresponding to the data source to be processed.
[0091] In another possible implementation, the data demander can directly write the calculation rules corresponding to the data source to be processed using SQL statements on the data center. The data center configures and associates the data source to be processed, the result data location, and the processing flow rule information according to the written calculation rules. The result data location is the storage location of the result data table, and the processing flow rule information is the calculation rule.
[0092] Step S206, sending the data processing model to the trusted execution environment, running the data processing model in the trusted execution environment, and obtaining a result data table output by the data processing model.
[0093] Step S207, obtaining configuration information corresponding to the result data table.
[0094] Step S208: Generate a data interface corresponding to the result data table based on the configuration information, so that the data demander can call the result data table.
[0095] The data circulation method based on a trusted execution environment provided by an embodiment of the present invention manages the initial data source to obtain the data source to be processed, and can eliminate abnormal data in the initial data source and improve the data quality of the data source to be processed, thereby improving the accuracy and availability of data in the result data table in the process of using the data source to be processed to perform data calculations to obtain the result data table.
[0096] Example 3
[0097] An embodiment of the present invention also provides another data circulation method based on a trusted execution environment; this method is implemented on the basis of the method in the above-mentioned embodiment; this method focuses on describing the specific implementation method of sending a data processing model to a trusted execution environment, running the data processing model in the trusted execution environment, and obtaining a result data table output by the data processing model.
[0098] Figure 3 A flowchart of another data circulation method based on a trusted execution environment provided by an embodiment of the present invention, such as Figure 3 As shown, the data circulation method based on the trusted execution environment may include the following steps:
[0099] Step S301: establishing a data processing model corresponding to the data source to be processed.
[0100] Step S302, encrypt the data processing model to obtain the encrypted data processing model.
[0101] Specifically, the data processing model can be encrypted and compressed to obtain the encrypted data processing model. The encryption and decryption component supports the national encryption SM4 encryption and decryption, and other encryption components can also be used to encrypt the data processing model.
[0102] Step S303, sending the encrypted data processing model to the trusted execution environment, running the encrypted data processing model in the trusted execution environment, and obtaining a result data table output by the encrypted data processing model.
[0103] The data demander can send the encrypted data processing model to the centralized processing machine through the data middle platform, store it in the trusted execution environment of the centralized processing machine, decrypt and run the encrypted data processing model in the trusted execution environment of the centralized processing machine, obtain the processing results output by the data processing model, and store the processing results in the result data table.
[0104] Specifically, a result data table can be obtained through step B1-step B2.
[0105] Step B1, decrypting the encrypted data processing model in a trusted execution environment to obtain the data processing model.
[0106] Specifically, after receiving the encrypted data processing model, the centralized processing machine decrypts the encrypted data processing model according to the encryption method of the data processing model, and obtains the data processing model after decryption.
[0107] Step B2, according to the scheduling program instructions corresponding to the data processing model, the data processing model is run to obtain the data calculation results of the data processing model.
[0108] The scheduler instruction refers to the program statement deployed in the centralized processing machine for calling and executing the data processing model, which is used to implement model call execution, execution log recording and log reporting. After obtaining the data processing model, the centralized processing machine executes the scheduler instruction, calculates the data source to be processed, and obtains the data calculation result of the data processing model.
[0109] Step B3, storing the data calculation results in the result data table.
[0110] During the transmission of the data processing model, the accuracy and consistency of the data processing model can be guaranteed by encrypting the data processing model, and the leakage and tampering of the data processing model can be avoided. Since the data processing model and the encrypted files of the data source to be processed involve the data integrity and data credibility of the data source to be processed and the data calculation results, the encryption method also further protects the security and credibility of the data source to be processed and the data calculation results.
[0111] Step S304, obtaining configuration information corresponding to the result data table.
[0112] Step S305: Generate a data interface corresponding to the result data table based on the configuration information, so that the data demander can call the result data table.
[0113] Step S306: receiving a data request corresponding to the data interface.
[0114] Data request refers to the data request sent by the data demander according to the data interface configuration when calling the result data table, that is, the request URL address in the configuration information corresponding to the result data table. Specifically, the data demander can initiate a data request to the data center by entering the request URL address and carrying the required input parameters as needed. The data center can receive and parse the data request initiated by the data demander based on the correspondence between the data interface configuration and the request URL address.
[0115] Step S307: based on the data request, process the result data table to obtain a result data set of the data request.
[0116] After the data center receives and parses the data request initiated by the data demander, it filters, assembles, and processes the data in the result data table according to the input parameters carried in the data request to obtain the result data set required by the data demander, and then feeds the result data set back to the data demander.
[0117] Furthermore, the data request may also carry at least one other configuration information in the configuration information corresponding to the result data table, in addition to the input parameters. Based on the data request sent by the data demander, the data center determines the data interface corresponding to the data request, and determines the result data table access information corresponding to the data interface according to the configuration information used when generating the data interface, thereby determining the result data table corresponding to the data interface, and based on the input parameters and other configuration information carried in the data request (such as data paging information, data desensitization strategy, etc.), the specific data set of the result data table is processed and fed back to the data demander through the data interface after a certain processing link.
[0118] The data circulation method based on a trusted execution environment provided by the embodiment of the present invention generates data interfaces corresponding to result data tables, so that data demanders can easily call these data interfaces to obtain the required data without directly accessing the original data source or having professional database knowledge background, thereby simplifying the data circulation process and lowering the threshold for data use. At the same time, by using data requests to call data interfaces, records of data interfaces and data requests can be retained and tracked, which helps to improve the transparency and traceability of data circulation. When data access errors occur, it is easier to locate the source of the problem and take corresponding remedial measures.
[0119] Example 4
[0120] Corresponding to the above method embodiment, the embodiment of the present invention provides a data circulation device based on a trusted execution environment, Figure 4 A structural diagram of a data circulation device based on a trusted execution environment provided by an embodiment of the present invention is shown in FIG. Figure 4 As shown, the data circulation device based on the trusted execution environment may include:
[0121] The data processing model establishment module 401 is used to establish a data processing model corresponding to the data source to be processed;
[0122] The data processing module 402 is used to send the data processing model to the trusted execution environment, run the data processing model in the trusted execution environment, and obtain a result data table output by the data processing model;
[0123] Configuration information acquisition module 403, used to acquire configuration information corresponding to the result data table;
[0124] The data interface generation module 404 is used to generate a data interface corresponding to the result data table based on the configuration information, so that the data demander can call the result data table.
[0125] The data circulation device based on the trusted execution environment provided by the embodiment of the present invention establishes a data processing model corresponding to the data source to be processed, sends it to the trusted execution environment, runs the data processing model in the trusted execution environment, and obtains a result data table. It can avoid the data source to be processed from being illegally obtained or tampered with during the operation of the data processing model, thereby causing risks such as data leakage, ensuring the security of the data processing process and achieving the purpose of data being available but invisible. A data interface is generated for the result data table for the data demander to call the result data table, which can realize data sharing and trusted circulation under the premise of ensuring that the data is not leaked to the outside. Since the data interface is generated outside the trusted execution environment, the data demander can obtain the required data without entering the trusted execution environment. At the same time, since the data source to be processed and the data calculation and processing process are protected in the trusted execution environment, the data demander cannot directly access or tamper with the original data, thereby realizing the safe circulation of data.
[0126] In some embodiments, the apparatus further comprises:
[0127] An initial data source acquisition module, used to acquire at least one initial data source;
[0128] A governance information acquisition module, used to acquire governance information corresponding to each initial data source based on each initial data source;
[0129] The data governance module is used to perform data governance on each initial data source according to the governance information corresponding to each initial data source to obtain the data source to be processed.
[0130] In some embodiments, the data governance module is further configured to:
[0131] According to the governance information corresponding to each initial data source, establish a data governance model corresponding to each initial data source;
[0132] For each initial data source, the initial data source is input into the data governance model corresponding to the initial data source to obtain the data source to be processed.
[0133] In some embodiments, the data processing model building module 401 is further used to:
[0134] Obtain the calculation rules corresponding to the data source to be processed;
[0135] According to the calculation rules, a data processing model corresponding to the data source to be processed is established.
[0136] In some embodiments, the data processing module 402 is further configured to:
[0137] Encrypting the data processing model to obtain an encrypted data processing model;
[0138] The encrypted data processing model is sent to the trusted execution environment, and the encrypted data processing model is run in the trusted execution environment to obtain a result data table output by the encrypted data processing model.
[0139] In some embodiments, the encrypted data processing model is run in a trusted execution environment to obtain a result data table output by the encrypted data processing model, and is also used to:
[0140] Decrypting the encrypted data processing model in the trusted execution environment to obtain the data processing model;
[0141] According to the scheduling program instruction corresponding to the data processing model, the data processing model is run to obtain the data calculation result of the data processing model;
[0142] The data calculation results are stored in the result data table.
[0143] In some embodiments, the apparatus further comprises:
[0144] A request receiving module, used for receiving a data request corresponding to a data interface;
[0145] The request processing module is used to call the data interface based on the data request and obtain the result data table.
[0146] The device provided in the embodiment of the present invention has the same implementation principle and technical effects as those of the aforementioned method embodiment. For the sake of brief description, for matters not mentioned in the device embodiment, reference may be made to the corresponding contents in the aforementioned method embodiment.
[0147] Example 5
[0148] The embodiment of the present invention also provides an electronic device for executing the above-mentioned data circulation method based on a trusted execution environment; see Figure 5A structural schematic diagram of an electronic device is shown, which includes a memory 500 and a processor 501, wherein the memory 500 is used to store one or more computer instructions, and the one or more computer instructions are executed by the processor 501 to implement the above-mentioned data circulation method based on a trusted execution environment.
[0149] Further, Figure 5 The electronic device shown further includes a bus 502 and a communication interface 503 , and the processor 501 , the communication interface 503 and the memory 500 are connected via the bus 502 .
[0150] The memory 500 may include a high-speed random access memory (RAM), and may also include a non-volatile memory, such as at least one disk storage. The communication connection between the system network element and at least one other network element is realized through at least one communication interface 503 (which may be wired or wireless), and the Internet, wide area network, local area network, metropolitan area network, etc. may be used. The bus 502 may be an ISA bus, a PCI bus, or an EISA bus, etc. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 5 Only one bidirectional arrow is used in the diagram, but this does not mean that there is only one bus or only one type of bus.
[0151] The processor 501 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the hardware integrated logic circuit or software instructions in the processor 501. The above processor 501 can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components. The methods, steps and logic block diagrams disclosed in the embodiments of the present invention can be implemented or executed. The general processor can be a microprocessor or the processor can also be any conventional processor, etc. The steps of the method disclosed in the embodiment of the present invention can be directly embodied as a hardware decoding processor for execution, or a combination of hardware and software modules in the decoding processor for execution. The software module may be located in a storage medium mature in the art, such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory, or an electrically erasable programmable memory, a register, etc. The storage medium is located in the memory 500, and the processor 501 reads the information in the memory 500 and completes the steps of the method of the above embodiment in combination with its hardware.
[0152] An embodiment of the present invention also provides a computer-readable storage medium, which stores computer-executable instructions. When the computer-executable instructions are called and executed by a processor, the computer-executable instructions prompt the processor to implement the above-mentioned data circulation method based on a trusted execution environment. The specific implementation can be found in the method embodiment, which will not be repeated here.
[0153] The computer program product for performing a data circulation method based on a trusted execution environment provided in an embodiment of the present invention includes a computer-readable storage medium storing a non-volatile program code executable by a processor. The instructions included in the program code can be used to execute the method described in the previous method embodiment. The specific implementation can be found in the method embodiment, which will not be repeated here.
[0154] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0155] In the several embodiments provided by the present invention, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. The device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some communication interfaces, and the indirect coupling or communication connection of devices or units can be electrical, mechanical or other forms.
[0156] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0157] In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
[0158] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a non-volatile computer-readable storage medium that is executable by a processor. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium, including several instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the methods described in each embodiment of the present invention. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0159] Finally, it should be noted that the above-described embodiments are only specific implementations of the present invention, which are used to illustrate the technical solutions of the present invention, rather than to limit them. The protection scope of the present invention is not limited thereto. Although the present invention is described in detail with reference to the above-mentioned embodiments, ordinary technicians in the field should understand that any technician familiar with the technical field can still modify the technical solutions recorded in the above-mentioned embodiments within the technical scope disclosed by the present invention, or can easily think of changes, or make equivalent replacements for some of the technical features therein; and these modifications, changes or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the embodiments of the present invention, and should be included in the protection scope of the present invention. Therefore, the protection scope of the present invention shall be based on the protection scope of the claims.
Claims
1. A data circulation method based on a trusted execution environment, characterized in that: include: Establish a data processing model corresponding to the data source to be processed; Sending the data processing model to a trusted execution environment, running the data processing model in the trusted execution environment, and obtaining a result data table output by the data processing model; Obtain configuration information corresponding to the result data table; Based on the configuration information, a data interface corresponding to the result data table is generated so that a data demander can call the result data table.
2. The method according to claim 1, characterized in that Before establishing the data processing model corresponding to the data source to be processed, the method further includes: Obtain at least one initial data source; Based on each of the initial data sources, obtaining governance information corresponding to each of the initial data sources; According to the governance information corresponding to each of the initial data sources, data governance is performed on each of the initial data sources to obtain a data source to be processed.
3. The method according to claim 2, characterized in that The step of performing data governance on each of the initial data sources according to the governance information corresponding to each of the initial data sources to obtain a data source to be processed includes: Establishing a data governance model corresponding to each of the initial data sources according to the governance information corresponding to each of the initial data sources; For each of the initial data sources, the initial data source is input into the data governance model corresponding to the initial data source to obtain the data source to be processed.
4. The method according to claim 1, characterized in that The step of establishing a data processing model corresponding to the data source to be processed includes: Obtain the calculation rules corresponding to the data source to be processed; According to the calculation rules, a data processing model corresponding to the data source to be processed is established.
5. The method according to claim 1, characterized in that The sending the data processing model to a trusted execution environment, running the data processing model in the trusted execution environment, and obtaining a result data table output by the data processing model includes: Encrypting the data processing model to obtain an encrypted data processing model; The encrypted data processing model is sent to a trusted execution environment, and the encrypted data processing model is run in the trusted execution environment to obtain a result data table output by the encrypted data processing model.
6. The method according to claim 5, characterized in that The step of running the encrypted data processing model in the trusted execution environment to obtain a result data table output by the encrypted data processing model includes: Decrypting the encrypted data processing model in the trusted execution environment to obtain the data processing model; According to the scheduling program instruction corresponding to the data processing model, the data processing model is run to obtain the data calculation result of the data processing model; The data calculation results are stored in a result data table.
7. The method according to claim 1, characterized in that After the data interface corresponding to the result data table is generated based on the configuration information so that the data demander can call the result data table, the method further includes: Receiving a data request corresponding to the data interface; Based on the data request, the data interface is called to obtain the result data table.
8. A data circulation device based on a trusted execution environment, characterized in that: include: A data processing model building module is used to build a data processing model corresponding to the data source to be processed; A data processing module, used for sending the data processing model to a trusted execution environment, running the data processing model in the trusted execution environment, and obtaining a result data table output by the data processing model; A configuration information acquisition module, used to acquire configuration information corresponding to the result data table; The data interface generation module is used to generate a data interface corresponding to the result data table based on the configuration information, so that the data demander can call the result data table.
9. An electronic device, characterized in that: It comprises a processor and a memory, wherein the memory stores computer executable instructions that can be executed by the processor, and the processor executes the computer executable instructions to implement the data circulation method based on a trusted execution environment as described in any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer-executable instructions. When the computer-executable instructions are called and executed by a processor, the computer-executable instructions prompt the processor to implement the data circulation method based on a trusted execution environment as described in any one of claims 1 to 7.
Citation Information
Patent Citations
Method and terminal for protecting model in computing rod
CN114168981A
Data sharing method, terminal and system
CN115150120A
Database data exchange and sharing method and device and readable storage medium
CN115757589A
Data service scheduling method and device
CN118916158A
Privacy Enhancing Deep Learning Cloud Service Using a Trusted Execution Environment
US20190392305A1
Cited By
Data access and use control method and system for trusted data space
CN120744947A