A data trusted exchange and sharing method, memory and processor
By adopting autonomous authorization and trust-based searchable encryption technology in the data trustworthy exchange sharing method, the problem that users cannot adopt different sharing strategies for different levels of data is solved, and flexible and secure sharing of data is achieved.
Patent Information
- Application Number
- CN202110912012.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-08-10
- Publication Date
- 2025-02-14
- Estimated Expiration
- 2041-08-10
AI Technical Summary
In the prior art, users cannot adopt different sharing strategies for data of different levels of confidentiality, resulting in the inability to effectively protect the security of the data.
Use self-authorized searchable encryption technology to share confidential data. By setting the data owner's proxy server as the relay for the interaction between the user and the cloud, we can determine whether the identity of the data visitor is legal; for non-confidential data, trust-based searchable Encryption technology, the authorization center determines whether access is allowed based on the user's trust value.
It realizes a flexible sharing strategy for different confidential data, improves data security and user privacy protection, and meets the needs of small enterprises with insufficient resources to store confidential data.
Smart Images

Figure CN113821823B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of data security, and in particular to a method for trusted data exchange and sharing. Background Art
[0002] Industrial Internet data security is a key element to ensure that the Industrial Internet plays the role of key infrastructure, and is also one of the decisive factors that determine the future development direction of the Industrial Internet. In the Industrial Internet platform, data storage and exchange in the cloud is a basic behavior, and ensuring the trusted storage and exchange of industrial big data in the cloud is an important part of the Industrial Internet security research.
[0003] Searchable encryption technology is proposed to solve the storage problem of untrusted servers. It supports query and retrieval of ciphertext data and is also suitable for outsourcing sensitive data encryption. Searchable encryption technology provides a solution for ciphertext retrieval of untrusted servers and has been widely used in cloud storage ciphertext retrieval environments.
[0004] Trust-based access control technology is an access control mechanism that can achieve dynamic authorization, automatic granting of permissions, and fine-grained control. Due to the real-time dynamic nature of cloud computing environments, large-scale and complex and diverse users and data, access control systems face new challenges in granting user permissions, managing user permissions, and maintaining the fine-grained nature of access control, which makes it impossible to effectively protect data security. Therefore, trust-based access control technology has emerged.
[0005] Different data has different confidentiality levels, and different data trusted storage and exchange should be flexibly selected according to the needs of the object. However, in the existing technology, most cloud storage and exchange technologies only provide a trust-based access control technology service. Such a service makes the user's confidential data not in their own hands. Therefore, it cannot meet the needs of small businesses with insufficient resources to store confidential data. Summary of the invention
[0006] The embodiments of the present application provide a data trusted exchange and sharing method, a memory, and a processor, which are used to solve the technical problem in the prior art that users cannot adopt different sharing strategies for data of different confidentiality levels.
[0007] According to one aspect of the present application, a data trusted exchange and sharing method is provided.
[0008] receiving a first instruction, wherein the first instruction is used to indicate whether the data to be processed is confidential data;
[0009] In response to the data indicated by the first instruction being confidential data, sharing the confidential data using an autonomously authorized searchable encryption technology;
[0010] In response to the data indicated by the first instruction being non-confidential data, the non-confidential data is shared using a trust-based searchable encryption technology.
[0011] Furthermore, in the present invention, the sharing of confidential data using the autonomously authorized searchable encryption technology includes:
[0012] The data owner's proxy server is set as a relay for interaction between the user and the cloud. The proxy server determines whether to allow access to the cloud based on whether the identity in the data accessor's trapdoor is legal.
[0013] Furthermore, in the present invention, the trust-based searchable encryption technology for sharing non-confidential data includes:
[0014] The authorization center is set to determine whether to allow access to the cloud based on the user trust value of the data visitor, and the authorization center also updates the user trust value based on the user behavior reward and punishment information fed back by the cloud.
[0015] Another aspect of the present application provides a data trusted exchange and sharing method, which is applied to a proxy server.
[0016] Receive a query request from a user, the query request is an initial trapdoor information, the initial trapdoor information includes a user's identity authentication code and ciphertext information, wherein the user's identity authentication code is generated by the user encrypting his own identity identifier through a private session key, and the ciphertext information is generated by the user encrypting a query word set and his own identity identifier through a private session key, wherein the private session key and the identity identifier are both generated in advance by the data owner according to security parameters, and the query word set is selected in advance by the data owner;
[0017] Verify whether the user information is in the identity information table according to the identity authentication code in the initial trapdoor information. If so, decrypt the ciphertext information to obtain the query word set and the decrypted identity identifier; the identity information table is pre-constructed and sent by the data owner with the private session key and identity information;
[0018] The decrypted identity identifier is encrypted with a private session key to obtain an encrypted identity authentication code. If the identity authentication code is the same as the encrypted identity authentication code, the query keyword is encrypted with a trapdoor key to form final trapdoor information and sent to the cloud, so that the cloud searches for the first encrypted file containing the final trapdoor information in the relevant files after receiving the final trapdoor information; the trapdoor key is generated and sent in advance by the data owner according to the attributes of the data accessor and the system key when receiving the user authentication; the query keyword is selected in advance by the data owner;
[0019] Receive the first encrypted file containing the final trapdoor information from the cloud, encrypt the first encrypted file using the private session key to obtain a second encrypted file and send it to the user, so that the user can decrypt the ciphertext using the private session key and further restore it to plaintext using the trapdoor key.
[0020] Furthermore, in the present application, the relevant files in the cloud include a first encrypted file and a corresponding index, which are obtained by the data owner after encrypting the plaintext data and the query keywords respectively according to the access policy and security parameters selected by the data owner.
[0021] Furthermore, in the present application, the system key is generated in advance by the data owner according to security parameters.
[0022] Furthermore, in the present application, the identity identifier and the private session key are allocated by the data owner upon receiving the authentication request from the user and agreeing to the user's access.
[0023] Furthermore, in the present application, the identity information table is a hash table.
[0024] A third aspect of the present application is to provide a memory for storing software, wherein the software is used to execute any of the methods described above.
[0025] A fourth aspect of the present application is to provide a processor for executing software, wherein the software is used to execute any of the methods described above.
[0026] The present invention provides a data trusted exchange and sharing method, receiving a first instruction, the first instruction is used to indicate whether the data to be processed is confidential data or not; in response to the data indicated by the first instruction being confidential data, the confidential data is shared using a self-authorized searchable encryption technology; in response to the data indicated by the first instruction being non-confidential data, the non-confidential data is shared using a trust-based searchable encryption technology. The above method solves the technical problem in the prior art that users cannot adopt different sharing strategies for data of different confidentiality levels. BRIEF DESCRIPTION OF THE DRAWINGS
[0027] The drawings constituting a part of the present application are used to provide a further understanding of the present application. The illustrative embodiments and descriptions of the present application are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings:
[0028] Figure 1 It is a flow chart of a method for trusted data exchange and sharing according to an embodiment of the present invention;
[0029] Figure 2 is a schematic diagram of a confidential data exchange and sharing model according to an embodiment of the present invention;
[0030] Figure 3 It is a schematic diagram of an exchange and sharing model of non-confidential data according to an embodiment of the present invention. DETAILED DESCRIPTION
[0031] It should be noted that, in the absence of conflict, the embodiments and features in the embodiments of the present application can be combined with each other. The present application will be described in detail below with reference to the accompanying drawings and in combination with the embodiments.
[0032] It should be noted that the steps shown in the flowcharts of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and that, although a logical order is shown in the flowcharts, in some cases, the steps shown or described can be executed in an order different from that shown here.
[0033] In the prior art, the searchable encryption process generally has the following steps:
[0034] Encryption process: The user uses the key to encrypt the plaintext file locally and upload it to the server;
[0035] In the process of trapdoor generation, users with search capabilities use the key to generate trapdoors for the keywords to be queried, requiring that the trapdoors cannot leak any information about the keywords;
[0036] The retrieval process,the server takes the keyword trapdoor as input, executes the retrieval algorithm, and returns all the ciphertext files containing the keyword corresponding to the trapdoor,requiring the server to obtain no more information except whether the ciphertext file contains a specific keyword;
[0037] Decryption process: The user uses the key to decrypt the ciphertext file returned by the server to obtain the query result.
[0038] The embodiment of the present invention combines the above-mentioned searchable encryption technology and adopts different security sharing methods according to the different data confidentiality levels of users. Figure 1 The figure is a flow chart of a method for trusted data exchange and sharing according to an embodiment of the present invention, comprising:
[0039] receiving a first instruction, wherein the first instruction is used to indicate whether the data to be processed is confidential data;
[0040] In response to the data indicated by the first instruction being confidential data, sharing the confidential data using an autonomously authorized searchable encryption technology;
[0041] In response to the data indicated by the first instruction being non-confidential data, the non-confidential data is shared using a trust-based searchable encryption technology.
[0042] The above scheme proposes a data trusted storage and exchange technology for industrial big data, which enables users to choose different storage and exchange technologies according to their needs. The confidential data storage and exchange technology realizes autonomous authorization management, and the non-confidential data storage and exchange technology realizes dynamic authorization management based on trust value. Both use searchable encryption technology to ensure the security of data storage and exchange.
[0043] The above confidential data storage and exchange mode mainly takes into account that the object may have the need to store confidential data due to enterprise resource constraints. At this time, the mode should ensure the secure storage and autonomous authorization of data, so as not to require the participation of a trusted third party, ensure that the user's management and authorization are directly the responsibility of the data owner, and meet the data owner's need to control the confidential data in his own hands. In order to meet the needs of trusted storage and exchange of confidential data, an autonomously authorized searchable encryption technology is proposed. Under the condition of autonomous authorization, the searchable encryption technology is used to allow users to retrieve the ciphertext stored on the cloud server without leaking the user's query information and retrieval results, thereby ensuring the user's privacy and the object's data security.
[0044] As a preferred embodiment, in order to relieve the request pressure of the data owner, the sharing of confidential data using the self-authorized searchable encryption technology includes setting the data owner's proxy server as a relay for interaction between the user and the cloud, and the proxy server determines whether to allow access to the cloud based on whether the identity in the data accessor's trap is legal. The above-mentioned proxy server is the private cluster server of the data owner, and this entity is considered to be completely trustworthy.
[0045] like Figure 2 FIG. 1 is a schematic diagram of a confidential data exchange and sharing model according to an embodiment of the present invention. The confidential data sharing method has the following features:
[0046] System initialization: The data owner generates the system key SK, the identity identifier UID and the private session key CK of the proxy server based on the security parameter α.
[0047]
[0048] Data owners interact with cloud servers: Figure 2 As shown in ①, the data owner encrypts the plaintext data M and the query word set Q selected by the data owner according to the self-selected access policy P and security parameter α, generates a first encrypted file and a corresponding index respectively, and uploads the encrypted first encrypted file and index to the cloud server.
[0049] Cipher_encryption(P,α,M)→CT
[0050] Indexes(P,α,Q)→CT_K
[0051] Data owner interacts with users: e.g. Figure 2 As shown in ②, when the user proposes authentication, the data owner chooses whether to agree to user i to access his confidential data according to his needs. If he agrees, he will assign the user the corresponding user identity identifier uid i , the private session key ck with the proxy server i , and a trapdoor key SK_K generated based on the attribute set of the data accessor and the system key SK.
[0052] KeyGen(SK,α,U p )→SK_K
[0053] Data owner interacts with proxy server: Figure 2 As shown in ③, the data owner will transfer the trapdoor key SK_K and the private session key ck of the legitimate user. i The hash table AH is constructed with the identity information and sent to the proxy server.
[0054] User interaction with proxy server: Figure 2 As shown in ④, when the user makes a query request, the private session key ck with the proxy server is used i Encrypt your own identity identifier uid i Generate an identity authentication code ID, and then use the private session key ck i Encrypted query word set Q, identity identification code uid i Generate the ciphertext information MSG to be transmitted, then combine the identity authentication code ID and the ciphertext information MSG into the initial trapdoor TQ' and send it to the proxy server. The proxy server obtains the value corresponding to the hash table AH based on the identity authentication code in the trapdoor. If it is NULL, it means that the user does not have the search permission. Otherwise, decrypt MSG to obtain the query keyword set Q and user uid i ', the proxy server uses the same hash function on the private session key ck i Encrypted uid under action i ', if the obtained identity authentication code ID' is the same as the identity authentication code ID, the authentication is successful; otherwise, an authentication failure is sent to the user.
[0055] H1(ck i ,uid i )→ID
[0056] AES(ck i ,uid i ,Q)→MSG
[0057] {ID,MSG}→TQ'
[0058] H1(ck i ,uid i ')→ID'
[0059] Proxy server interacts with the cloud: Figure 2 As shown in ⑤, if the user authentication is passed, the proxy server will use the data owner's trapdoor key SK_K to encrypt the user's query keyword W and send it to the cloud. After the cloud receives the trapdoor TQ, it searches for files containing the query trapdoor in the relevant files. If found, it will sort them according to the priority sorting criteria, find the most relevant top L ciphertext files and send them to the proxy server, otherwise it will send a search failure to the proxy server.
[0060] Query_trapdoor(SK_K,W)→TQ
[0061] Proxy server interacts with users: Figure 2 As shown in ⑥, if the retrieval is successful, the proxy server uses the private session key ck i The function is to encrypt the search result file set CQ belonging to the first encrypted file to generate a second encrypted file CQ' and return it to the user. After the user receives it, he first uses the private session key ck i Decrypt the ciphertext file, and then use the trapdoor key SK_K to restore the corresponding plaintext. If the retrieval fails, the proxy server returns a search failure result;
[0062] AES(ck i ,CQ)→CQ'
[0063] Decrypt(SK_K,CQ)→M
[0064] The above-mentioned sharing method for confidential data is applied to a proxy server and specifically includes the following steps:
[0065] Step S102, receiving a query request from a user, wherein the query request is an initial trapdoor information, and the initial trapdoor information includes the user's identity authentication code and ciphertext information, wherein the user's identity authentication code is generated by the user encrypting his own identity identifier through a private session key, and the ciphertext information is generated by the user encrypting a query word set and his own identity identifier through a private session key, wherein the private session key and the identity identifier are both generated in advance by the data owner according to security parameters, and the query word set is selected in advance by the data owner;
[0066] Step S104: Verify whether the user information is in the identity information table according to the identity authentication code in the initial trapdoor information. If so, decrypt the ciphertext information to obtain the query word set and the decrypted identity identifier; the identity information table is pre-constructed and sent by the data owner with the private session key and identity information;
[0067] Step S106: encrypt the decrypted identity identifier using the private session key to obtain the encrypted identity authentication code. If the identity authentication code is the same as the encrypted identity authentication code, encrypt the query keyword using the trapdoor key to form the final trapdoor information and send it to the cloud, so that the cloud searches for the first encrypted file containing the final trapdoor information in the relevant files after receiving the final trapdoor information; the trapdoor key is generated and sent in advance by the data owner according to the attributes of the data accessor and the system key when receiving the user authentication; the query keyword is selected in advance by the data owner;
[0068] Step S108, receiving the first encrypted file containing the final trapdoor information queried from the cloud, encrypting the first encrypted file using the private session key to obtain a second encrypted file and sending it to the user, so that the user can use the private session key to decrypt the ciphertext and further use the trapdoor key to restore it to plaintext.
[0069] Preferably, in the above step S106, the relevant files in the cloud include a first encrypted file and a corresponding index, which are obtained by the data owner encrypting the plaintext data and the query keyword respectively according to the access policy and security parameters selected by the data owner.
[0070] Preferably, in the above step S106, the system key is generated in advance by the data owner according to security parameters.
[0071] Preferably, in the above step S102, the identity identifier and the private session key are allocated by the data owner when the data owner agrees to the user's access upon receiving the user's authentication request.
[0072] In order to take into account the data security of the data owner, user privacy and possible illegal access problems of users, the sharing method for non-confidential data mentioned in the embodiment of the present invention includes: setting an authorization center to determine whether to allow access to the cloud based on the user trust value of the data accessor, and the authorization center also updates the user trust value based on the user behavior reward and punishment information fed back from the cloud. In the above manner, while ensuring data security encryption, user privacy is guaranteed, the user's access behavior is dynamically monitored, and the user's access rights are modified according to the user's vertical data.
[0073] like Figure 3 FIG. 1 is a schematic diagram of a non-confidential data exchange and sharing model according to an embodiment of the present invention. The non-confidential data sharing method has the following features:
[0074] System initialization: The authorization center generates the public parameter PPK and the master key MSK based on the input security parameter α and the complete attribute set U.
[0075] Setup(a,U)→(PPK,MSK)
[0076] Data owners interact with the authorization center: Figure 3 As shown in ①, the data owner submits a request to the authorization center to upload data, and the authorization center sends the public parameter PPK to the data owner.
[0077] Data owners interact with the cloud: Figure 3 As shown in ②, the data owner runs the encryption function to encrypt the plaintext data M according to the self-selected attribute access policy P and public parameter PPK, generating the ciphertext CT. The data owner runs the index encryption function to encrypt the self-selected search keyword set Q according to the self-selected attribute access policy P and public parameter PPK, generating the data index CT_K. The ciphertext and index are then stored in the cloud storage server.
[0078] Cipher_encryption(P,PPK,M)→CT
[0079] Indexes(P,PPK,Q)→CT_K
[0080] Data accessors interact with the authorization center: Figure 3 As shown in ③, the data accessor makes an access request to the authorization center, and the authorization center calculates the user's trust value according to the trust value calculation strategy. When the user's trust value is greater than the preset threshold of the authority, the authorization center p Generate a decryption key Skey and send it to the data accessor; otherwise, the user's access request will be rejected.
[0081] KeyGen(MSK,PPK,U p )→Skey
[0082] Cloud interacts with data accessors: e.g. Figure 3 As shown in ④, the data visitor generates a query trap TQ based on the keyword W that he needs to search, and sends a query request containing the query trap to the cloud server for ciphertext retrieval. The cloud searches for the matching index CK_K based on the query trap TQ provided by the data visitor, and sends the corresponding ciphertext CQ to the data visitor. If no matching index is found, a search failure message is sent to the data visitor. The data visitor decrypts the received ciphertext CQ based on the decryption key Skey sent by the authorization center. If the attribute set U p If the access policy P set by the data owner is met, the ciphertext can be successfully decrypted to obtain the plaintext M.
[0083] Query_trapdoor(Skey,W)→TQ
[0084] Decrypt(Skey,CQ)→M
[0085] Interaction between the cloud and the authorization center: Figure 3 As shown in Figure ⑤, the cloud sets a trust value reward and punishment measure based on game theory, gives certain rewards or punishments to the user's behavior, and feeds back the results to the trust value calculation module of the authorization center, dynamically updates the user's trust value, and records the corresponding data.
[0086] The above method belongs to a trust-based searchable attribute-based encryption scheme, which realizes a more secure, flexible and fine-grained dynamic access authorization mechanism. The cloud platform uses the trust value method to evaluate whether the user has access rights, and sets a reward and punishment measure based on game theory to dynamically update the user's trust value, so that users can regulate their access behavior. The data owner uses searchable attribute-based encryption to ensure data security encryption while ensuring the privacy of users, and it is convenient for data owners and data accessors to search for data in the cloud.
[0087] According to a second aspect of the present application, a memory is provided for storing software, wherein the software is used to execute the above method.
[0088] According to a third aspect of the present application, a processor is provided for executing software, wherein the software is used to execute the above method.
[0089] It should be noted that the data security sharing method executed by the above software is the same as the data trusted exchange and sharing method introduced above, and will not be repeated here.
[0090] In this embodiment, an electronic device is provided, including a memory and a processor. The memory stores a computer program, and the processor is configured to run the computer program to execute the method in the above embodiment.
[0091] These computer programs can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, so that the instructions executed on the computer or other programmable device provide instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps of the functions specified in one or more blocks can be implemented by different modules corresponding to different steps.
[0092] The above program can be run in the processor, or it can be stored in the memory (or computer-readable medium), which includes permanent and non-permanent, removable and non-removable media. Information storage can be achieved by any method or technology. Information can be computer-readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, read-only compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined in this article, computer-readable media does not include temporary computer-readable media (transitory media), such as modulated data signals and carrier waves.
[0093] The above are only embodiments of the present application and are not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included within the scope of the claims of the present application.
Claims
1. A data trusted exchange and sharing method, applied to a proxy server, characterized in that: Receive a query request from a user, the query request is an initial trapdoor information, the initial trapdoor information includes the user's identity authentication code and ciphertext information, wherein the user's identity authentication code is generated by the user encrypting his own identity identifier through a private session key, and the ciphertext information is generated by the user encrypting a query word set and his own identity identifier through a private session key, wherein the private session key and the identity identifier are both generated in advance by the data owner according to security parameters, and the query word set is pre-selected by the data owner; Verify whether the user information is in the identity information table according to the identity authentication code in the initial trapdoor information. If so, decrypt the ciphertext information to obtain the query word set and the decrypted identity identifier; the identity information table is pre-constructed and sent by the data owner with the private session key and identity information; The decrypted identity identifier is encrypted with a private session key to obtain an encrypted identity authentication code. If the identity authentication code is the same as the encrypted identity authentication code, the query keyword is encrypted with a trapdoor key to form final trapdoor information and sent to the cloud, so that the cloud searches for the first encrypted file containing the final trapdoor information in the relevant files after receiving the final trapdoor information; the trapdoor key is generated and sent in advance by the data owner according to the attributes of the data accessor and the system key when receiving the user authentication; the query keyword is selected in advance by the data owner; Receive the first encrypted file containing the final trapdoor information from the cloud, encrypt the first encrypted file using the private session key to obtain a second encrypted file and send it to the user, so that the user can decrypt the ciphertext using the private session key and further restore it to plaintext using the trapdoor key.
2. A data trusted exchange and sharing method according to claim 1, characterized in that: The relevant files in the cloud include a first encrypted file and a corresponding index, which are obtained by the data owner after encrypting the plaintext data and the query keyword respectively according to the access policy and security parameters selected by the data owner.
3. A data trusted exchange and sharing method according to claim 1, characterized in that: The system key is generated in advance by the data owner according to security parameters.
4. A data trusted exchange and sharing method according to claim 1, characterized in that: The identity identifier and the secret session key are assigned by the data owner upon receiving the user's authentication request and agreeing to the user's access.
5. A data trusted exchange and sharing method according to claim 1, characterized in that: The identity information table is a hash table.
6. A memory, characterized in that: Used to store software, wherein the software is used to execute the method according to any one of claims 1 to 5.
7. A processor, characterized in that: Used to execute software, wherein the software is used to execute the method according to any one of claims 1 to 5.
Citation Information
Patent Citations
Method for protecting privacy data of users in cloud environment
CN102655508A
Data secure sharing method and device based on cloud environment
CN108881195A