CN117454405A - SGX-based data analysis method, system and storage medium - Google Patents

SGX-based data analysis method, system and storage medium Download PDF

Info

Publication number
CN117454405A
CN117454405A CN202311518399.8A CN202311518399A CN117454405A CN 117454405 A CN117454405 A CN 117454405A CN 202311518399 A CN202311518399 A CN 202311518399A CN 117454405 A CN117454405 A CN 117454405A
Authority
CN
China
Prior art keywords
data
model
encryption
analysis
data analysis
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202311518399.8A
Other languages
Chinese (zh)
Inventor
程司时
范学鹏
汤载阳
王宸敏
曾驭龙
张金波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Yizhi Technology Co ltd
Original Assignee
Beijing Yizhi Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Yizhi Technology Co ltd filed Critical Beijing Yizhi Technology Co ltd
Priority to CN202311518399.8A priority Critical patent/CN117454405A/en
Publication of CN117454405A publication Critical patent/CN117454405A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/25Fusion techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes

Abstract

The embodiment of the invention discloses a data analysis method, a system and a storage medium based on SGX, which are characterized in that an encryption data set provided by a data provider and an encryption model provided by a model provider are decrypted in a preset enclave for data analysis in a trusted execution environment of a data analysis party to obtain a data analysis model and a plurality of original data sets, the original data sets are fused to obtain a fused data set, the fused data set is input into the data analysis model for data analysis to obtain an analysis result, and finally the encrypted analysis result is sent to an analysis task initiator, so that the privacy and safety of user data, the data analysis model and the analysis result are always protected in the whole data analysis process.

Description

SGX-based data analysis method, system and storage medium
Technical Field
The invention relates to the technical field of computer software, in particular to a data analysis method, a system and a storage medium based on SGX.
Background
Communication operators and internet companies rely on their learned user information to integrate and analyze with the advertiser's deep conversion link data (e.g., payment details) to optimize advertising effectiveness and improve user satisfaction. Currently, user data between industries is not interworking and often contains private information about the user, which makes the data somewhat sensitive. With the increasing strictness of policies on data security and privacy, it is no longer appropriate to perform data analysis processing on publicly shared data.
Based on trusted execution environment (TEE, trusted Execution Environment) technology, intel has proposed software protection extension (SGX, software Guard Extensions) technology, SGX is a viable user privacy protection measure that employs hardware assisted enclave (also known as a secure enclave) to encapsulate sensitive data and critical program code to prevent it from being compromised.
Disclosure of Invention
Aiming at the technical defects in the prior art, the embodiment of the invention aims to provide a data analysis method, a system and a storage medium based on SGX, which are used for protecting user privacy and data security in the data analysis process.
In order to achieve the above object, in a first aspect, an embodiment of the present invention provides a data analysis method based on SGX, where the method is applied to an enclave preset in a trusted execution environment of a data analysis party, where the enclave is used for performing data analysis, and the method includes:
receiving an encryption model provided by a model provider and an encryption data set provided by N data providers, wherein N is more than or equal to 2, and N is an integer;
decrypting the encryption model and the N encryption data sets respectively to obtain a data analysis model and N original data sets;
carrying out fusion processing on the data in the N original data sets to obtain a fusion data set;
inputting the fusion data set into the data analysis model for data analysis to obtain an analysis result;
encrypting the analysis result, and sending the encrypted analysis result to an analysis task initiator.
Further, before receiving the encryption model provided by the model provider and the encrypted data provided by the N data providers, the method further comprises:
generating a pair of first asymmetric keys, wherein the public key is denoted as P t The private key is denoted as S t
-applying said public key P t Is sent to a model provider and a data provider to enable the model provider to use the public key P t Private key S of second asymmetric key generated by model provider itself a Encryption is carried out to obtain a first encryption private key S a The public key P is used by a data provider t Private key S of a third asymmetric key generated by the data provider itself b Encryption is carried out to obtain a second encryption private key S b
Receiving a first encryption private key S transmitted by the model provider a And N second encryption private keys S transmitted by N data providers b
By private key S t For the first encryption private key S a And a second encryption private key S b Decrypting to obtain the private key S of the second asymmetric key a And N third asymmetric keys b
Further, the encryption model is passed by the model provider to the public key P of the second asymmetric key a Encrypting the data analysis model to obtain the data analysis model;
the encrypted data set is passed by the data provider to the public key P of the third asymmetric key b And encrypting the original data set to obtain the data set.
Further, decrypting the encryption model and the N encrypted data sets, respectively, to obtain a data analysis model and N original data sets, including:
private key S using a second asymmetric key a Decrypting the encryption model to obtain the data analysis model;
private key S using N third asymmetric keys b The N encrypted data sets are correspondingly decrypted to obtain N original data sets.
Further, after receiving the encryption model provided by the model provider and the encrypted data set provided by the N data providers, the method further comprises:
verifying the validity of the model authorization of the encryption model and the data authorization of each encryption data set, and decrypting the encryption model and the N encryption data sets respectively if the model authorization and the data authorization of each encryption data set are verified to be legal;
wherein the model authorization is a private key S of the model provider using a second asymmetric key a Signature of preset information, the data is authorized to be a private key S of a third asymmetric key adopted by a data provider b Signing the preset information, wherein the preset information comprises a public key P t And a hash value Hpred of the enclave.
Further, verifying the validity of the model authorization of the encryption model and the data authorization of each of the encrypted data sets, and if the model authorization or at least one of the data authorizations is verified as illegal, aborting the data analysis.
Further, the data in the original dataset is ordered according to data ids.
Further, encrypting the analysis result includes:
using the public key P generated by the analysis task initiator to analyze the result c Encryption.
In a second aspect, an embodiment of the present invention further provides a data analysis system based on SGX, where the system is operated in an enclave preset in a trusted execution environment of a data analysis party, and the system includes:
the receiving module is used for receiving an encryption model provided by a model provider and an encryption data set provided by N data providers, wherein N is more than or equal to 2, and N is an integer;
the decryption module is used for decrypting the encryption model and the N encryption data sets respectively to obtain a data analysis model and N original data sets;
the fusion module is used for carrying out fusion processing on the data in the N original data sets to obtain a fusion data set;
the analysis module is used for inputting the fusion data set into the data analysis model to perform data analysis, so as to obtain an analysis result;
the encryption module is used for encrypting the analysis result and sending the encrypted analysis result to an analysis task initiator.
In a third aspect, embodiments of the present invention also provide a computer readable storage medium storing a computer program comprising program instructions which, when executed by a processor, cause the processor to perform the method according to the first aspect.
According to the method provided by the embodiment of the invention, an encryption data set provided by a data provider and an encryption model provided by a model provider are firstly decrypted in an enclave preset in a trusted execution environment of a data analysis party to obtain a data analysis model and a plurality of original data sets, the original data sets are fused to obtain a fusion data set, the fusion data set is input into the data analysis model to perform data analysis to obtain an analysis result, and finally the encrypted analysis result is sent to an analysis task initiator, so that the privacy and safety of the original data, the data analysis model and the analysis result are always protected in the whole data analysis process.
Because the data is transmitted in an encryption manner and the data analysis process is performed in an enclave preset in a trusted execution environment of a data analysis party, the risk of data leakage is greatly reduced, the privacy data is fundamentally ensured not to be illegally stolen, leaked or misused, the data sharing among different data providers can be performed more safely, and the cooperation among industries is promoted.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below.
Fig. 1 is a schematic flow chart of an SGX-based data analysis method according to an embodiment of the present invention;
fig. 2 is a schematic structural diagram of an SGX-based data analysis system according to an embodiment of the present invention.
Detailed Description
The following description of the embodiments of the present invention will be made clearly and fully with reference to the accompanying drawings, in which it is evident that the embodiments described are some, but not all embodiments of the invention. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
It should be understood that the terms "comprises" and "comprising," when used in this specification and the appended claims, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
It is also to be understood that the terminology used in the description of the invention herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used in this specification and the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise.
It should be further understood that the term "and/or" as used in the present specification and the appended claims refers to any and all possible combinations of one or more of the associated listed items, and includes such combinations.
As used in this specification and the appended claims, the term "if" may be interpreted as "when..once" or "in response to a determination" or "in response to detection" depending on the context. Similarly, the phrase "if a determination" or "if a [ described condition or event ] is detected" may be interpreted in the context of meaning "upon determination" or "in response to determination" or "upon detection of a [ described condition or event ]" or "in response to detection of a [ described condition or event ]".
It is noted that unless otherwise indicated, technical or scientific terms used herein should be given the ordinary meaning as understood by one of ordinary skill in the art to which this invention pertains.
The problems in the related art are: when industry data is analyzed, the data among different data providers are not communicated, and the original data of the different data providers all contain privacy information to be protected or kept secret, so that the data has certain sensitivity and cannot be freely circulated among the different data providers, and as the security and privacy of the data are increasingly strict, the method for sharing the data is not suitable.
Based on trusted execution environment (TEE, trusted Execution Environment) technology, intel proposes software protection extension (SGX, software Guard Extensions) technology. SGX is a viable user privacy protection measure that employs hardware-assisted enclaves (also known as secure enclaves) to encapsulate sensitive data and critical program code from being compromised. The trusted execution environment can be provided with enclaves with different functions, and the data analysis process of the scheme is performed in the enclave for performing data analysis.
The technical scheme provided by the invention is based on SGX technology, the data provider firstly encrypts data locally and then transmits the encrypted data to an enclave which is preset in a trusted execution environment of the data analysis party and is used for data analysis, meanwhile, the encrypted data analysis model is also transmitted to an enclave which is preset in the trusted execution environment of the data analysis party and is used for data analysis, then data decryption, data fusion, model decryption and data analysis are carried out in the enclave of the trusted execution environment, and the data analysis result is transmitted to the analysis task initiator after being encrypted in the enclave of the trusted execution environment. The data is transmitted through encryption and the data analysis process is carried out in the enclave of the trusted execution environment of the data analysis party, so that the risk of data leakage is greatly reduced, and the privacy data is fundamentally ensured not to be illegally stolen, leaked or misused.
In the embodiment of the application, based on the data security channel, the encrypted original data set is allowed to be transmitted to the trusted execution environment of the data analysis party by the data provider at different places, and the encrypted original data set is encrypted to be ciphertext, so that the encrypted original data set cannot cause information leakage even if the original data set is illegally stolen or leaked.
It should be noted that, in the case of no conflict, the embodiments and features in the embodiments may be combined with each other. The present application will be described in detail below with reference to the accompanying drawings in conjunction with embodiments.
As shown in fig. 1, the flow chart of the SGX-based data analysis method provided in the embodiment of the present application is applied to an enclave preset in a trusted execution environment of a data analysis party, where the data analysis party is an independent third party. The method comprises the following steps of S110 to S150:
s110: an encryption model provided by a model provider and an encryption data set provided by N data providers are received, wherein N is more than or equal to 2, and N is an integer.
The data provider comprises at least two model providers, which can be independent third parties, and can also be one of the data providers, namely, the data provider provides a data analysis model. It will be appreciated that the analysis task initiator may be either one of the data providers or an independent third party. The data analysis model is a model with a data analysis function which is trained in advance.
Each data provider is provided with a respective original data set, the original data set is encrypted in the data provider to obtain an encrypted data set, and the encrypted data set is transmitted to an enclave preset in a trusted execution environment of the data analyzer for data analysis. The data analysis model is encrypted in the model provider to obtain an encryption model, and the encryption model is transmitted to an enclave preset in a trusted execution environment of the data analysis provider for data analysis.
The data analysis model and the original data set are encrypted in an asymmetric encryption mode. The model provider generates a second asymmetric key pair, where the public key is denoted as P a The private key is denoted as S a . The model provider adopts the public key P a And encrypting the data analysis model to obtain an encryption model.
The data provider generates a third asymmetric key pair, wherein the public key is denoted as P b The private key is denoted as S b . It will be appreciated that the third asymmetric key generated by each data provider is different, and the public key of the third asymmetric key generated by the ith data provider may be denoted as P bi The private key is denoted as S bi . For the data provider, public key P is employed b And encrypting the original data set to obtain an encrypted data set.
Since the data analysis party needs to decrypt the encrypted data set and the encryption model, the data analysis party needs to obtain the private key S of the second asymmetric key a And a private key S of each third asymmetric key bi . Private key S for preventing second asymmetric key a And a private key S of each third asymmetric key bi Is illegally stolen or leaked in the transmission process, in this embodiment, the private key S of the second asymmetric key is first to a And a private key S of each third asymmetric key bi Asymmetric encryption is carried out to obtain a first encryption private key S a Second encryption private key S bi Then the first encryption private key S a Second encryption private key S bi And transmitting the data to an enclave preset in a trusted execution environment of the data analysis party for data analysis.
The data analysis party generates a pair of first asymmetric keys in the enclave, wherein the public key is denoted as P t The private key is denoted as S t The public key is then appliedP t Is sent to a model provider and a data provider to enable the model provider to use the public key P t Private key S of second asymmetric key generated by model provider itself a Encryption is carried out to obtain a first encryption private key S a The public key P is used by a data provider t Private key S of a third asymmetric key generated by the data provider itself b Encryption is carried out to obtain a second encryption private key S b
The data analysis party receives the first encryption private key S transmitted by the model provider a And N second encryption private keys S transmitted by N data providers b And into the enclave. Finally, in the enclave, by private key S t For the first encryption private key S a And a second encryption private key S b Decrypting to obtain the private key S of the second asymmetric key a And N third asymmetric keys b
Further, to ensure that the original data provided by the data provider is only used for data analysis and is not stolen in the trusted execution environment of the data analyzer, the data provider may also generate data authorization when encrypting the original data set. Similarly, to ensure that the data analysis model provided by the model provider is not moved to other uses in the trusted execution environment of the data analysis party, the model provider may also generate a model authorization when encrypting the data analysis model.
In this embodiment, the model authorization is the private key S of the model provider using the second asymmetric key a Signature of preset information, the data is authorized to be a private key S of a third asymmetric key adopted by a data provider b Signing the preset information, wherein the preset information comprises a public key P t And a hash value Hpred of the enclave. The hash value Hpred of the enclave for data analysis is transmitted by the data analyst to each data provider and model provider.
The data provider will transmit the encrypted data set and the data authorization to the data analyzer, moduloThe model provider will transmit the encryption model and model authorization to the data analyst. Verifying the legitimacy of the model authority and each data authority, respectively, in an enclave preset in a trusted execution environment of the data analysis party for data analysis, i.e. whether the model authority and each data authority are the desired public key P t And a hash value Hpred of the enclave for data analysis.
If the model authorization and each data authorization are verified to be legal, continuing to execute the subsequent data analysis flow; if the model authorization or at least one of the data authorizations verifies illegitimate, the data analysis is aborted.
In this embodiment, the data in the original data set is sorted according to the data ids, for example, the data may be sorted in ascending order according to the data ids, or sorted in descending order.
S120: and decrypting the encryption model and the N encryption data sets respectively to obtain a data analysis model and N original data sets.
The method specifically comprises the following steps: private key S using a second asymmetric key a Decrypting the encryption model to obtain the data analysis model; private key S using N third asymmetric keys b The N encrypted data sets are correspondingly decrypted to obtain N original data sets.
S130: and carrying out fusion processing on the data in the N original data sets to obtain a fusion data set.
Specifically, data fusion can be performed according to the data id, and a fusion data set is obtained. Because the memory of the enclave is limited, the efficiency of the data fusion after sequencing according to the data id can be improved.
S140: and inputting the fusion data set into the data analysis model to perform data analysis, and obtaining an analysis result.
S150: encrypting the analysis result, and sending the encrypted analysis result to an analysis task initiator.
Specifically, the analysis result is used for generating a public key P by the analysis task initiator c Encryption. If the task initiator is an independent third party, the task initiator needs to generate a public key P c Transmitted to the data analysis party, which uses the public key P in the enclave c And encrypting the analysis result.
If the task initiator is the mth data provider, the task initiator may directly use the private key S of the mth data provider in the enclave bm Computing to generate a corresponding public key P bm The public key P bm I.e. public key P c
After the analysis task initiator receives the encrypted analysis result, the corresponding private key S is used c And decrypting the obtained result to obtain an analysis result plaintext.
In summary, in the method provided by the embodiment, in an enclave preset in a trusted execution environment of a data analysis party, which is used for performing data analysis, an encrypted data set provided by the data provider and an encrypted model provided by a model provider are decrypted to obtain a data analysis model and a plurality of original data sets, the original data sets are fused to obtain a fused data set, the fused data set is input into the data analysis model to perform data analysis, an analysis result is obtained, and finally the encrypted analysis result is sent to an analysis task initiator, so that privacy and security of the original data, the data analysis model and the analysis result are always protected in the whole data analysis process.
Because the data is transmitted in an encryption manner and the data analysis process is performed in an enclave preset in a trusted execution environment of a data analysis party, the risk of data leakage is greatly reduced, the privacy data is fundamentally ensured not to be illegally stolen, leaked or misused, the data sharing among different data providers can be performed more safely, and the cooperation among industries is promoted.
In addition, the data analysis method provided by the embodiment has wide application field and use field and extremely high commercial popularization value.
In a second aspect, the present embodiment further provides a data analysis system based on SGX, where the system is operated in an enclave preset in a trusted execution environment of a data analysis party, where the enclave is used for performing data analysis. As shown in fig. 2, the system includes:
the receiving module 201 is configured to receive an encryption model provided by a model provider and an encryption data set provided by N data providers, where N is greater than or equal to 2 and N is an integer;
the decryption module 202 is configured to decrypt the encryption model and the N encrypted data sets, respectively, to obtain a data analysis model and N original data sets;
the fusion module 203 is configured to perform fusion processing on the data in the N original data sets, so as to obtain a fused data set;
the analysis module 204 is configured to input the fused dataset into the data analysis model for data analysis, so as to obtain an analysis result;
and the encryption module 205 is configured to encrypt the analysis result, and send the encrypted analysis result to an analysis task initiator.
Further, an embodiment of the present invention also provides a readable storage medium storing a computer program, the computer program including program instructions that when executed by a processor implement: the SGX-based data analysis method.
The computer readable storage medium may be an internal storage unit of the background server according to the foregoing embodiment, for example, a hard disk or a memory of the system. The computer readable storage medium may also be an external storage device of the system, such as a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) Card, a Flash memory Card (Flash Card) or the like, which are provided on the system. Further, the computer readable storage medium may also include both internal storage units and external storage devices of the system. The computer readable storage medium is used to store the computer program and other programs and data required by the system. The computer-readable storage medium may also be used to temporarily store data that has been output or is to be output.
Those of ordinary skill in the art will appreciate that the elements and algorithm steps described in connection with the embodiments disclosed herein may be embodied in electronic hardware, in computer software, or in a combination of the two, and that the elements and steps of the examples have been generally described in terms of function in the foregoing description to clearly illustrate the interchangeability of hardware and software. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the solution. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.
In addition, each functional unit in the embodiments of the present invention may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit. The integrated units may be implemented in hardware or in software functional units.
The integrated units, if implemented in the form of software functional units and sold or used as stand-alone products, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present invention is essentially or a part contributing to the prior art, or all or part of the technical solution may be embodied in the form of a software product stored in a storage medium, comprising several instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method according to the embodiments of the present invention. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a random access Memory (RAM, random Access Memory), a magnetic disk, or an optical disk, or other various media capable of storing program codes.
While the invention has been described with reference to certain preferred embodiments, it will be understood by those skilled in the art that various changes and substitutions of equivalents may be made and equivalents will be apparent to those skilled in the art without departing from the scope of the invention. Therefore, the protection scope of the invention is subject to the protection scope of the claims.

Claims (10)

1. The SGX-based data analysis method is characterized by being applied to an enclave preset in a trusted execution environment of a data analysis party and used for data analysis, and comprises the following steps:
receiving an encryption model provided by a model provider and an encryption data set provided by N data providers, wherein N is more than or equal to 2, and N is an integer;
decrypting the encryption model and the N encryption data sets respectively to obtain a data analysis model and N original data sets;
carrying out fusion processing on the data in the N original data sets to obtain a fusion data set;
inputting the fusion data set into the data analysis model for data analysis to obtain an analysis result;
encrypting the analysis result, and sending the encrypted analysis result to an analysis task initiator.
2. The SGX based data analysis method of claim 1, wherein prior to receiving the encryption model provided by the model provider and the encrypted data provided by the N data providers, the method further comprises:
generating a pair of first asymmetric keys, wherein the public key is denoted as P t The private key is denoted as S t
-applying said public key P t Is sent to a model provider and a data provider to enable the model provider to use the public key P t Private key S of second asymmetric key generated by model provider itself a Encryption is carried out to obtain a first encryption private key S a The public key P is used by a data provider t Private key S of a third asymmetric key generated by the data provider itself b Encryption is carried out to obtain a second encryption private key S b
Receiving a first encryption private key S transmitted by the model provider a And N second encryption private keys S transmitted by N data providers b
By private key S t For the first encryption private key S a And a second encryption private key S b Decrypting to obtain the private key S of the second asymmetric key a And N third asymmetric keys b
3. The SGX-based data analysis method according to claim 2, wherein the encryption model is passed by the model provider by a public key P of a second asymmetric key a Encrypting the data analysis model to obtain the data analysis model;
the encrypted data set is passed by the data provider to the public key P of the third asymmetric key b And encrypting the original data set to obtain the data set.
4. A SGX based data analysis method according to claim 3, wherein decrypting the encryption model and the N encrypted data sets, respectively, to obtain a data analysis model and N original data sets, comprises:
private key S using a second asymmetric key a Decrypting the encryption model to obtain the data analysis model;
private key S using N third asymmetric keys b The N encrypted data sets are correspondingly decrypted to obtain N original data sets.
5. A SGX based data analysis method according to claim 3, wherein after receiving the encryption model provided by the model provider and the encrypted data set provided by the N data providers, the method further comprises:
verifying the validity of the model authorization of the encryption model and the data authorization of each encryption data set, and decrypting the encryption model and the N encryption data sets respectively if the model authorization and the data authorization of each encryption data set are verified to be legal;
wherein the model authorization is a private key S of the model provider using a second asymmetric key a Signature of preset information, the data is authorized to adopt the first data providerPrivate key S of three asymmetric keys b Signing the preset information, wherein the preset information comprises a public key P t And a hash value Hpred of the enclave.
6. The SGX-based data analysis method of claim 5, wherein the validity of the model authorization of the encryption model and the data authorization of each of the encrypted data sets is verified, and if the model authorization or at least one of the data authorizations is verified as invalid, the data analysis is aborted.
7. The SGX-based data analysis method of claim 1, wherein the data in the original dataset is ordered by data id.
8. The SGX-based data analysis method according to claim 1, wherein encrypting the analysis result includes:
using the public key P generated by the analysis task initiator to analyze the result c Encryption.
9. A SGX-based data analysis system operating in an enclave preset in a trusted execution environment of a data analysis party for data analysis, the system comprising:
the receiving module is used for receiving an encryption model provided by a model provider and an encryption data set provided by N data providers, wherein N is more than or equal to 2, and N is an integer;
the decryption module is used for decrypting the encryption model and the N encryption data sets respectively to obtain a data analysis model and N original data sets;
the fusion module is used for carrying out fusion processing on the data in the N original data sets to obtain a fusion data set;
the analysis module is used for inputting the fusion data set into the data analysis model to perform data analysis, so as to obtain an analysis result;
the encryption module is used for encrypting the analysis result and sending the encrypted analysis result to an analysis task initiator.
10. A computer readable storage medium, characterized in that the computer readable storage medium stores a computer program comprising program instructions which, when executed by a processor, cause the processor to perform the method of any of claims 1-8.
CN202311518399.8A 2023-11-15 2023-11-15 SGX-based data analysis method, system and storage medium Pending CN117454405A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311518399.8A CN117454405A (en) 2023-11-15 2023-11-15 SGX-based data analysis method, system and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311518399.8A CN117454405A (en) 2023-11-15 2023-11-15 SGX-based data analysis method, system and storage medium

Publications (1)

Publication Number Publication Date
CN117454405A true CN117454405A (en) 2024-01-26

Family

ID=89579853

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311518399.8A Pending CN117454405A (en) 2023-11-15 2023-11-15 SGX-based data analysis method, system and storage medium

Country Status (1)

Country Link
CN (1) CN117454405A (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113095507A (en) * 2021-04-02 2021-07-09 支付宝(杭州)信息技术有限公司 Method, device, equipment and medium for training and predicting machine learning model
US20230008976A1 (en) * 2019-12-03 2023-01-12 Visa International Service Association Techniques For Providing Secure Federated Machine-Learning
CN116881936A (en) * 2023-06-20 2023-10-13 杭州趣链科技有限公司 Trusted computing method and related equipment
CN117061105A (en) * 2023-08-16 2023-11-14 北京火山引擎科技有限公司 Data processing method and device, readable medium and electronic equipment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230008976A1 (en) * 2019-12-03 2023-01-12 Visa International Service Association Techniques For Providing Secure Federated Machine-Learning
CN113095507A (en) * 2021-04-02 2021-07-09 支付宝(杭州)信息技术有限公司 Method, device, equipment and medium for training and predicting machine learning model
CN116881936A (en) * 2023-06-20 2023-10-13 杭州趣链科技有限公司 Trusted computing method and related equipment
CN117061105A (en) * 2023-08-16 2023-11-14 北京火山引擎科技有限公司 Data processing method and device, readable medium and electronic equipment

Similar Documents

Publication Publication Date Title
CN109309565B (en) Security authentication method and device
EP3257227B1 (en) Confidential communication management
CN111079128B (en) Data processing method and device, electronic equipment and storage medium
CN110519309B (en) Data transmission method, device, terminal, server and storage medium
US8321924B2 (en) Method for protecting software accessible over a network using a key device
US20150163058A1 (en) Techniques for ensuring authentication and integrity of communications
US20020032873A1 (en) Method and system for protecting objects distributed over a network
CN112232814B (en) Encryption and decryption methods of payment key, payment authentication method and terminal equipment
KR20070112115A (en) File encryption/decryption method, device, program, and computer-readable recording medium containing the program
US8423766B2 (en) Authentication method, authentication apparatus, and computer product
CN104243494B (en) A kind of data processing method
US8316437B2 (en) Method for protecting the access to an electronic object connected to a computer
TWM623435U (en) System for verifying client identity and transaction services using multiple security levels
CN110868291B (en) Data encryption transmission method, device, system and storage medium
CN114143082A (en) Encryption communication method, system and device
US11431514B1 (en) Systems for determining authenticated transmissions of encrypted payloads
CN112769789A (en) Encryption communication method and system
CN116743470A (en) Service data encryption processing method and device
US20020184501A1 (en) Method and system for establishing secure data transmission in a data communications network notably using an optical media key encrypted environment (omkee)
CN105049433B (en) Markization card number information transmits verification method and system
CN117454405A (en) SGX-based data analysis method, system and storage medium
CN113938878A (en) Equipment identifier anti-counterfeiting method and device and electronic equipment
Campbell Supporting digital signatures in mobile environments
Singh et al. A des, aes, dss, and rsa-based security system for protecting sensitive information during communication and providing fast, reliable file identification
CN117473324A (en) Model training method, system and storage medium based on SGX and XGBoost

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination