Data zero-knowledge protection method, server and storage medium

By classifying user data into deterministic and non-deterministic data and mapping it to zero-knowledge data on the cloud service provider's server, the problem of user data privacy protection in traditional storage methods is solved, and reliable data protection and efficient storage are achieved.

CN120034400BActive Publication Date: 2025-09-09DARKCHAIN TECH INC
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202510517941.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-04-24
Publication Date
2025-09-09
Estimated Expiration
2045-04-24

AI Technical Summary

Technical Problem

Traditional data storage methods cannot effectively protect user data privacy on cloud service providers' servers, leading to data leakage and privacy infringement, and the diversity of data formats leads to low storage and access efficiency.

Method used

A zero-knowledge protection method is adopted to classify user data into deterministic and non-deterministic data. The non-deterministic data is mapped to zero-knowledge data through the first server and stored on the second server to ensure that the public server cannot obtain the actual data content.

Benefits of technology

It achieves reliable protection of user data, prevents malicious acquisition and leakage, improves storage and access efficiency, decouples the management scenarios of cloud service providers and application developers, and provides a collaborative channel for privacy and professional services.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120034400B_ABST
    Figure CN120034400B_ABST
Patent Text Reader

Abstract

The embodiment of the present application discloses a method, server and storage medium for zero-knowledge protection of data. The method includes: obtaining client data sent by a second server, and if the client data includes target deterministic data, converting the target deterministic data into first-form data, and sending the first-form data to the second server for storage, wherein the first-form data is zero-knowledge data. If the client data includes target non-deterministic data, mapping the target non-deterministic data into second-form data, and sending the second-form data to the second server for storage, wherein the second-form data is zero-knowledge data. The embodiment of the present application isolates the direct acquisition of user data on the second server with established form data, thereby reliably protecting user data from malicious acquisition and leakage.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present application relate to the field of data processing technology, and in particular to a zero-knowledge protection method, server, and storage medium for data. Background Art

[0002] With the passage of time and the continuous development of technology, the various application systems that serve all aspects of our social lives have become increasingly powerful and complex. The development and operation of these systems have gradually evolved from the closed, integrated implementation by centralized teams to a multi-party collaborative approach characterized by functional decoupling, separation of subsystems and microservices, interconnection of networks and communication protocols, and API access and expansion. This trend is continuously unlocking the scale of information systems, thereby continuously improving society's macro-productivity.

[0003] Among them, cloud services support the hardware infrastructure of storage, algorithms and computing power for most current information technology applications, and are the main pillar for the significant advancement of macro productivity in recent years.

[0004] Storage is a core service in cloud services. In the traditional and most commonly used storage architecture, relational databases, as software management tool libraries, primarily serve as persistent storage, with non-relational databases providing a supporting role. When cloud service providers provide servers to application developers, they have virtually complete access and capability to access and use all user data required to store services for their users, as well as the trade secrets of their applications (including code innovations and key configuration parameters). This poses both direct risks to privacy and data protection and indirect challenges to technological advancement and application adoption. Furthermore, with the exponential growth of data volumes, the read / write and parallelization bottlenecks of traditional relational database software on centralized cloud service hardware systems (the conflict between the need for atomic security and the need for parallel efficiency) pose constraints and challenges to future scalability.

[0005] In current cloud service usage, databases are software deployed by application developers on server hardware provided by cloud providers. While the application developer manages their operation and the processing of requests from higher-level servers, the underlying storage and access to the database data on the hardware is managed by the cloud provider's resource management operating system. Therefore, any data stored by application developers in the database, including their own system data and user data, remains completely transparent from the cloud provider's perspective, unobstructed by any permissions, and in its original form.

[0006] Take user data, for example. In reality, this data is typically stored directly as actual data (including symmetrically encrypted content, which, from an entropy perspective, also contains all the actual information) in traditional relational database storage architectures. This allows cloud service providers to gain unobstructed access to the private information of application developers using their services, allowing them to technically copy and transfer this information without the developers' knowledge. Because legal protection requires clear evidence, without knowledge, these protections are effectively nonexistent and virtually unattainable.

[0007] On the other hand, these user data are in various forms (such as integers, floating points, dates, text, files, binary, etc.), resulting in non-uniform data formats, encodings, lengths, required storage resources, and types. This also leads to additional complexity and resource consumption in the technical requirements and implementation of data operations, reversible conversions, integrity verification, encryption and decryption.

[0008] To summarize, storing actual data directly on hardware storage services provided by a third party cannot prevent the third party from infringing on data privacy. Even with the protection of agreements and legal terms, it lacks practical effect. At the same time, due to the diversity of data, it brings many challenges to the effectiveness of storage and access. Summary of the Invention

[0009] One purpose of the embodiments of the present application is to provide a zero-knowledge protection method, server and storage medium for data, so as to solve the technical problem that traditional data storage and use methods easily cause the storage service platform to infringe and leak the client data served by it.

[0010] In a first aspect, an embodiment of the present application provides a zero-knowledge protection method for data, which is applied to a first server and includes: obtaining client data sent by a second server, the client data including target deterministic data and / or target non-deterministic data, the target deterministic data being optional data pre-configured for one or more fixed entries, the target non-deterministic data being data other than the target deterministic data, and the target non-deterministic data including data freely input by a user on a fixed entry of an electronic device; if the client data includes target deterministic data, converting the target deterministic data into first form data, and sending the first form data to the second server for storage, the first form data being zero-knowledge data; if the client data includes target non-deterministic data, mapping the target non-deterministic data into second form data, and sending the second form data to the second server for storage, the second form data being zero-knowledge data.

[0011] Optionally, mapping the target non-deterministic data into second form data includes: obtaining a mapping table, the mapping table being used to record form data corresponding to each non-deterministic data; and adding the second form data corresponding to the target non-deterministic data to the mapping table.

[0012] Optionally, adding second form data corresponding to the target non-deterministic data to the mapping table includes: determining whether the mapping table has pre-stored target associated data corresponding to the target non-deterministic data; if it has been pre-stored, determining that the form data corresponding to the target non-deterministic data is the second form data; if it has not been pre-stored, generating second form data corresponding to the target non-deterministic data and target associated data corresponding to the target non-deterministic data, associating the target associated data with the second form data and saving them on the mapping table.

[0013] Optionally, the target associated data is the target non-deterministic data; or, the target associated data is a target hash digest obtained by performing a hash operation on the target non-deterministic data, and the target hash digest is used to point to the target non-deterministic data, and the target non-deterministic data is stored on the first server or the second server.

[0014] Optionally, the generating of target associated data corresponding to the target non-deterministic data includes: determining whether the target non-deterministic data meets a preset lightweight storage condition; if not, directly using the target non-deterministic data as target associated data; if compliant, performing a data lightweight processing operation on the target non-deterministic data to obtain target associated data, the target associated data being used to point to the target non-deterministic data, and the target non-deterministic data being stored on the first server or the second server.

[0015] Optionally, performing a data lightweight processing operation on the target non-deterministic data to obtain target associated data includes: performing a hash operation on the target non-deterministic data to obtain a target hash digest; and using the target hash digest as the target associated data.

[0016] Optionally, the constituent elements of the preset lightweight storage conditions include: the non-deterministic data is binary file data, or the data volume of the non-deterministic data is greater than a predetermined data volume threshold, or the non-deterministic data is designated sensitive data; the judgment of whether the target non-deterministic data meets the preset lightweight storage conditions includes: judging whether the target non-deterministic data is binary file data; or, judging whether the data volume of the target non-deterministic data is greater than a predetermined data volume threshold; or, judging whether the target non-deterministic data is designated sensitive data.

[0017] In a second aspect, an embodiment of the present application provides a zero-knowledge protection method for data, which is applied to a second server and includes: obtaining a storage request sent by an electronic device, the storage request being used to request the second server to store client data, the client data including target deterministic data and target non-deterministic data, the target deterministic data being optional data pre-configured for one or more fixed entries, the target non-deterministic data being data other than the target deterministic data, and the target non-deterministic data including data freely input by a user on a fixed entry of the electronic device; obtaining first form data corresponding to the target deterministic data, the first form data being zero-knowledge data; storing the first form data on the second server, the second server being used to communicate with the first server; sending the target non-deterministic data to the first server for storage, so that the first server maps the target non-deterministic data to second form data, the second form data being zero-knowledge data; and storing the second form data returned by the first server on the second server.

[0018] Optionally, the target deterministic data includes a target field corresponding to the fixed entry and first actual data under the target field, and obtaining the first form data corresponding to the target deterministic data includes: sending the target deterministic data to the first server so that the first server converts the target deterministic data into first form data and returns the first form data corresponding to the target field; or, obtaining configuration information sent by the first server, and converting the first actual data of the target field into first form data based on the configuration information.

[0019] In a third aspect, an embodiment of the present application provides a method for zero-knowledge protection of data, which is applied to a second server, including: obtaining a query request sent by an electronic device, the query request carrying a data request identifier, the data request identifier including a deterministic type identifier and / or a non-deterministic type identifier, the deterministic type identifier is used to represent target deterministic data, the non-deterministic type identifier is used to represent target non-deterministic data, the target deterministic data is optional data that is pre-configured for one or more fixed entries, the target non-deterministic data is data other than the target deterministic data, the target non-deterministic data includes data freely entered by a user on a fixed entry of the electronic device, and the second server stores the target data. First form data corresponding to the deterministic data and second form data corresponding to the target non-deterministic data, the first form data and the second form data are both zero-knowledge data, the second server is used to communicate with the first server, the first server stores the target non-deterministic data and the target deterministic data; responds to the query request, determines the target form data corresponding to the data request identifier; sends a data access request to the first server, so that the first server returns the target actual data corresponding to the target form data, the target actual data is one or both of the target non-deterministic data and the target deterministic data; sends the target actual data to the electronic device.

[0020] In a fourth aspect, an embodiment of the present application provides a server comprising a memory and a processor, wherein the memory is connected to the processor, and the processor is used to execute one or more computer programs stored in the memory. When the processor executes the one or more computer programs, the server implements the above-mentioned zero-knowledge protection method for data.

[0021] In a fifth aspect, an embodiment of the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, wherein the computer program includes program instructions, and when the program instructions are executed by a processor, the processor executes the above-mentioned zero-knowledge protection method for data.

[0022] The embodiment of the present application can achieve the following technical effects: the embodiment of the present application uses established form data to isolate the direct acquisition of user data on the second server, thereby reliably protecting user data from malicious acquisition and leakage. BRIEF DESCRIPTION OF THE DRAWINGS

[0023] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the following briefly introduces the drawings required for use in the description of the embodiments of the present application. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.

[0024] Figure 1 A schematic diagram of the system architecture of a zero-knowledge protection system for data provided in an embodiment of the present application;

[0025] Figure 2 A schematic diagram of an application APP provided in an embodiment of the present application providing a registration page for a user on an electronic device;

[0026] Figure 3 The user A provided in the embodiment of the present application is Figure 2 The diagram of the registration page after filling in the information is shown;

[0027] Figure 4 A schematic diagram of a registration page after form processing provided in an embodiment of the present application;

[0028] Figure 5 A schematic diagram of storing target non-deterministic data provided in an embodiment of the present application;

[0029] Figure 6 A flowchart of a method for zero-knowledge protection of data provided in an embodiment of the present application;

[0030] Figure 7 A flowchart of a method for zero-knowledge protection of data provided in another embodiment of the present application;

[0031] Figure 8 A flowchart of a method for zero-knowledge protection of data provided in yet another embodiment of the present application;

[0032] Figure 9 A schematic diagram of the structure of a server provided in an embodiment of the present application. DETAILED DESCRIPTION

[0033] In order to make the purpose, technical solutions and advantages of this application more clearly understood, the present application is further described in detail below with reference to the accompanying drawings and examples. It should be understood that the specific embodiments described herein are only used to explain this application and are not intended to limit this application. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.

[0034] It should be noted that, if there is no conflict, the various features in the embodiments of the present application can be combined with each other and are all within the scope of protection of the present application. In addition, although the functional modules are divided in the device schematic and the logical order is shown in the flow chart, in some cases, the steps shown or described can be performed in a different order than the module division in the device or the order in the flow chart. Furthermore, the words "first", "second", "third", etc. used in this application do not limit the data and execution order, but only distinguish between the same items or similar items with basically the same functions and effects.

[0035] The following embodiments of the present application provide a zero-knowledge protection system for data. Figure 1 The zero-knowledge protection system 100 for data includes an electronic device 11 , a first server 12 and a second server 13 . The electronic device 11 is communicatively connected to the second server 13 , and the second server 13 is communicatively connected to the first server 12 .

[0036] Electronic device 11 has an application APP installed. After a user launches the application APP on electronic device 11 and completes relevant operations on the interactive interface provided by the application APP, the application APP submits a storage request to the second server 13 through the electronic device 11. The storage request is used to request the second server 13 to store client data. For example, if a user needs to register the application APP, the application APP provides the user with a registration page. After the user completes the relevant information on the registration page and clicks Submit, the application APP encapsulates the client data filled in by the user into a storage request and sends the storage request to the second server 13.

[0037] Client data is data generated by an electronic device's application (APP) based on user operations. It includes target deterministic data and / or target non-deterministic data. Target deterministic data is optional data pre-configured with one or more fixed items. Target non-deterministic data is data outside of target deterministic data, including data freely entered by the user into fixed items on the electronic device.

[0038] See also Figure 2 The application APP provides a registration page 20 for the user on the electronic device 11. The embodiment of the present application sets the following fixed entries (i.e., fields) on the registration page 20: user name 21, user nickname 22, user avatar 23, user password 24, nationality 25, mobile phone number 26, ethnicity 27, and gender 28.

[0039] Different users enter different names in the area corresponding to user name 21. For example, user A enters "A" in the area corresponding to user name 21, user B enters "B" in the area corresponding to user name 21, and so on. Because "A" and "B" are not pre-configured optional data, the data entered in the area corresponding to user name 21 is non-deterministic.

[0040] Different users enter different nicknames in the area corresponding to user nickname 22. For example, user A enters "Super Warrior" in the area corresponding to user nickname 22, user B enters "Laughing at Life" in the area corresponding to user nickname 22, and so on. Therefore, the data entered in the area corresponding to user nickname 22 is non-deterministic data.

[0041] Different users enter different avatars in the area corresponding to the user avatar 23. For example, user A enters "A's avatar" in the area corresponding to the user avatar 23, user B enters "B's avatar" in the area corresponding to the user avatar 23, and so on. Therefore, the data entered in the area corresponding to the user avatar 23 is non-deterministic data.

[0042] Different users enter different passwords in the area corresponding to user password 24. For example, user A enters "123456" in the area corresponding to user password 24, user B enters "987654" in the area corresponding to user password 24, and so on. Therefore, the data entered in the area corresponding to user password 24 is non-deterministic.

[0043] The area corresponding to nationality 25 is pre-configured with multiple optional data. For example, when a user clicks the first drop-down button 251 in the area corresponding to nationality 25, the first drop-down button 251 expands the following nationality options: China, South Korea, Japan, North Korea, etc. It will be understood that the embodiment of the present application pre-configures corresponding form data for each nationality option. For example, the form data for China is 1, the form data for South Korea is 2, the form data for Japan is 3, and so on.

[0044] Different users enter different profile pictures in the area corresponding to mobile number 26. For example, user A enters "123...5142" in the area corresponding to user profile picture 23, user B enters "136...8945" in the area corresponding to mobile number 26, and so on. This shows that the data entered in the area corresponding to mobile number 26 is non-deterministic.

[0045] The area corresponding to ethnic group 27 is pre-configured with multiple optional data. For example, when a user clicks the second drop-down button 271 in the area corresponding to ethnic group 27, the second drop-down button 271 expands the following ethnic group options: Han, Miao, Zhuang, Korean, etc. It is understandable that the embodiment of the present application pre-configures corresponding form data for each ethnic group option. For example, the form data for Han is 1, the form data for Miao is 2, the form data for Zhuang is 3, and so on.

[0046] The area corresponding to gender 28 is pre-configured with multiple selectable data. For example, when a user clicks the third drop-down button 281 in the area corresponding to gender 28, the third drop-down button 281 displays the following ethnicity options: male and female. It will be appreciated that this embodiment of the application pre-configures corresponding form data for each gender option. For example, the form data for male is 1, the form data for female is 2, and so on.

[0047] Thus, although the nationality selected by the user in the area corresponding to nationality 25 is uncertain, or the ethnicity selected in the area corresponding to ethnicity 27 is uncertain, or the gender selected in the area corresponding to gender 28 is uncertain, compared to the data corresponding to user name 21, user nickname 22, user avatar 23, and mobile phone number 26, which have infinite choices (because different users can give any name, any avatar, or any mobile phone number), the data sets corresponding to nationality 25, ethnicity 27, and gender 28 are all deterministic. For example, the number of countries in the world is finite and definite, and the formal data of nationalities contained in the data set corresponding to nationality 25 is also finite and definite. Therefore, the data entered in the area corresponding to nationality 25 is deterministic. Similarly, the number of ethnic groups in China is finite and definite, and the formal data of ethnic groups contained in the data set corresponding to ethnicity 27 is also finite and definite. Therefore, the area corresponding to ethnicity 27 can be designed as a deterministic data selection component, and the data entered is deterministic. The number of genders is limited and definite, and the formal data of gender contained in the data set corresponding to gender 28 is also limited and definite. Therefore, the area corresponding to gender 28 can be designed as a selection component for deterministic data, and its input data is deterministic data.

[0048] The embodiments of the present application accurately classify the data to be stored into deterministic data and non-deterministic data. Deterministic data originates from one or more pre-configured optional data sets, and the range of values ​​for deterministic data is clear and limited. Non-deterministic data covers all data other than deterministic data, including data freely entered by users and other data whose possible values ​​are not predetermined. This data classification method is the basis for subsequent implementation of privacy protection and efficiency improvement.

[0049] The first server 12 is a server provided by the application developer, and the second server 13 is a server provided by the cloud service provider. It can be understood that the first server 12 can be regarded as a private server, and the second server 13 can be regarded as a public server.

[0050] First server 12 receives client data sent by second server. If the client data includes target deterministic data, first server 12 converts the target deterministic data into first-form data and sends the first-form data to second server for storage. The first-form data is zero-knowledge data. If the client data includes target non-deterministic data, first server 12 maps the target non-deterministic data into second-form data and sends the second-form data to second server 13 for storage. The second-form data is zero-knowledge data. Zero-knowledge data refers to data that does not provide any useful information for others to discover or mine the actual data corresponding to the form data.

[0051] The embodiments of the present application creatively use formal data and related usage methods, which not only decouples the management scenarios of storage resources provided by cloud service providers and the independent operation scenarios required by application developers, allowing them to each get what they want from a mechanism perspective and not infringe on each other, but also opens up a collaborative channel between privacy (user data being served) and openness (seeking professional services from third-party service providers), so that they no longer restrict each other and lose sight of one while focusing on the other. At the same time, it also provides a peer-to-peer mode interface and standardized solutions for the further integration of emerging technologies such as blockchain and artificial intelligence.

[0052] Second server 13 obtains first-format data corresponding to target deterministic data and / or second-format data corresponding to non-target deterministic data, and stores the first-format data and / or second-format data on the second server. Second server 13 is configured with a relational database, and stores the first-format data and / or second-format data in the relational database.

[0053] The target deterministic data includes a target field corresponding to a fixed entry and the first actual data under the target field. Figure 3 , user A enters the following information for each fixed item on the registration page of the application APP of the electronic device 11: Figure 3 The information shown is as follows. For the fixed entry "User Name" target field, the first actual data under "User Name" is "A." Similarly, for the fixed entry "User Nickname" target field, the first actual data under "User Nickname" is "Super Soldier," and so on.

[0054] There are at least two ways to obtain the first form of data corresponding to the target deterministic data:

[0055] ① Obtaining first form data corresponding to target deterministic data includes the following steps: sending the target deterministic data to the first server, so that the first server converts the target deterministic data into first form data and returns the first form data corresponding to the target field.

[0056] The first server 12 pre-stores configuration information, which is used to represent the mapping relationship between the optional data of the target field and the form data. Please refer to Table 1:

[0057] Table 1

[0058]

[0059] As can be seen from Table 1, each target field has a mapping relationship between corresponding optional data and formal data. The embodiment of the present application can find the formal data corresponding to the optional data based on the optional data of the target field. Specifically, the first server finds the optional data corresponding to the target deterministic data under the target field of the configuration information as the target optional data, selects the formal data corresponding to the target optional data as the first formal data, and returns the first formal data to the second server for storage.

[0060] For example, the target deterministic data includes "Nationality - Chinese," "Ethnicity - Han," and "Gender - Male." The first server calls the configuration information and determines that the first form data of the target field corresponding to "Nationality" is 0, the first form data of the target field corresponding to "Ethnicity" is 0, and the first form data of the target field corresponding to "Gender" is 0. The first server returns the first form data corresponding to the target fields to the second server, that is, the first server returns "Nationality - 0," "Ethnicity - 0," and "Gender - 0" to the second server.

[0061] The second server does not save configuration information locally, and the data of user A on the second server is formal data. Even if the administrator of the second server obtains the first form data of the user on the second server, he cannot discover or mine the actual data about the user through the first form data. Therefore, the embodiment of the present application can effectively prevent the administrator of the cloud service provider from obtaining any actual data about the user by reading the information stored on the second server.

[0062] ② Obtaining first form data corresponding to the target deterministic data includes the following steps: obtaining configuration information sent by the first server, and converting the first actual data of the target field into the first form data based on the configuration information.

[0063] The second server sends a configuration acquisition request to the first server, so that the first server responds to the configuration acquisition request and returns configuration information to the second server. The second server searches the target field of the configuration information for optional data corresponding to the target deterministic data as the target optional data, selects the form data corresponding to the target optional data as the first form data, and stores the first form data.

[0064] It is understandable that in this scenario, the process by which the second server converts the first actual data of the target field into the first form of data based on the configuration information is developed by the application developer, and the configuration information is not persisted to the hardware. Therefore, the administrator of the cloud service provider will not obtain the configuration information through the second server, and will not obtain any useful data about the user based on the configuration information.

[0065] For deterministic data, the embodiments of the present application pre-construct configuration information and use zero-knowledge first-form data to correspond to the source data with practical meaning. During actual storage, the public server only stores the first-form data, while the source data and configuration information are stored on the private server, and the two servers are securely connected via the network. This storage method prevents the service provider of the public server from knowing the actual content of the data, thus ensuring data privacy from a mechanism perspective. For example, in an e-commerce system, the category of goods (such as clothing, electronic products, etc.) can be used as deterministic data, and a mapping relationship from "clothing" to form data "1", "electronic products" to form data "2", etc. is pre-constructed. The public server only stores form data such as "1" and "2", while the private server stores source data and configuration information such as "clothing" and "electronic products".

[0066] The second server sends the target non-deterministic data to the first server for storage, so that the first server maps the target non-deterministic data into second-form data, which is zero-knowledge data. The first server sends the second-form data to the second server, and the second server stores the second-form data.

[0067] The first server is configured with a NoSQL database that stores a mapping between the formal data of the target non-deterministic data and the actual data. The NoSQL database provides an efficient mapping service for this scenario.

[0068] For the first server, the first server obtains the client data sent by the second server. The client data includes target deterministic data and / or target non-deterministic data. The target deterministic data is optional data pre-configured for one or more fixed entries. The target non-deterministic data is data excluding the target deterministic data, including data freely entered by the user on the fixed entries of the electronic device. If the client data includes target deterministic data, the first server converts the target deterministic data into first-form data and sends the first-form data to the second server for storage. The first-form data is zero-knowledge data. If the client data includes target non-deterministic data, the first server maps the target non-deterministic data into second-form data and sends the second-form data to the second server for storage. The second-form data is zero-knowledge data.

[0069] The first server maps the target non-deterministic data to the second form data including the following steps: the first server obtains a mapping table, the mapping table is used to record the form data corresponding to each non-deterministic data, and adds the second form data corresponding to the target non-deterministic data to the mapping table.

[0070] For non-deterministic data, given the unpredictable nature of its values, a mapping table is first constructed on a private server before storage, using zero-knowledge second-form data to correspond to the source data. Only the newly generated second-form data is then stored on the public server. To avoid duplicate mappings, before constructing the mapping table, a check is performed to determine whether a mapping relationship already exists for the same source data. If so, the existing second-form data is directly used. For example, in a free-entry scenario such as user comments, if two users enter the same comment, the system will reuse the already generated second-form data to reduce redundant storage.

[0071] The first server obtains existing form data in the mapping table, generates new form data based on the existing form data, the new form data being different from all existing form data, and uses the new form data as second form data.

[0072] Generating new form data based on existing form data includes the following steps: the first server determines the maximum arrangement number corresponding to the non-deterministic data arranged last in the mapping table according to the sequence number, adds the natural number 1 to the maximum arrangement number to obtain a new maximum arrangement number, and uses the new maximum arrangement number as the new form data.

[0073] For example, see Table 2, which is as follows:

[0074] Table 2

[0075]

[0076] As shown in Table 2, in the current mapping table, the maximum permutation number corresponding to the last non-deterministic data is "3." It can be understood that for the first actual data, its second form data is "0." Similarly, for the second actual data, its second form data is "1." For the third actual data, its second form data is "2." For the fourth actual data, its second form data is "3."

[0077] In order to add the target non-deterministic data of user A to the mapping table and allocate the second form of data to the target non-deterministic data, the embodiment of the present application adds the natural number 1 to the maximum permutation sequence number to obtain a new maximum permutation sequence number "4", uses the new maximum permutation sequence number "4" as the second form of data, and updates the mapping table, as shown in Table 3:

[0078] Table 3

[0079]

[0080] The first server sends the second form data "4" obtained from Table 3 to the second server. So far, the second server has obtained the registration information of user A. Figure 4 The second form data of user name 21, user nickname 22, user avatar 23, user password 24 and mobile phone number 26 are all "4", the first form data of nationality 25 is 0, the first form data of ethnicity 27 is 0, and the first form data of gender 28 is 0. The second server is the server of the cloud service provider. The administrator of the cloud service provider or others can Figure 4 The registration information shown does not reveal or mine any useful or meaningful information about User A, thus achieving zero-knowledge protection of the data.

[0081] In some embodiments, adding second form data corresponding to the target non-deterministic data to the mapping table includes the following steps: determining whether the mapping table has pre-stored target associated data corresponding to the target non-deterministic data; if so, determining that the form data corresponding to the target non-deterministic data is the second form data; if not, generating the second form data corresponding to the target non-deterministic data and the target associated data corresponding to the target non-deterministic data, associating the target associated data with the second form data and saving them on the mapping table.

[0082] In some embodiments, the target associated data is target non-deterministic data, and determining whether the mapping table has pre-stored target associated data corresponding to the target non-deterministic data includes the following steps: traversing the mapping table to determine whether the target non-deterministic data exists.

[0083] As shown in Table 3, if User A registers a second time, before assigning the second form of data to the target non-deterministic data, the first server can directly traverse Table 3 to check whether the target non-deterministic data for User A exists. Since the target-related data is the target non-deterministic data, this process is effectively equivalent to traversing the mapping table to check whether the target-related data corresponding to the target non-deterministic data exists. Obviously, the non-deterministic data corresponding to sequence number "4" in Table 3 is the target non-deterministic data for User A. The first server can return the non-deterministic data corresponding to sequence number "4" to the second server as User A's target non-deterministic data.

[0084] In other embodiments, the target associated data is a target hash digest obtained by performing a hash operation on the target non-deterministic data, and the target hash digest is used to point to the target non-deterministic data.

[0085] Determining whether the mapping table has pre-stored target associated data corresponding to the target non-deterministic data includes the following steps: performing hash operation on the target non-deterministic data to obtain a reference hash digest, and traversing the mapping table to determine whether there is a hash digest corresponding to the reference hash digest.

[0086] See Table 4:

[0087] Table 4

[0088]

[0089] As shown in Table 4, a hash operation is performed on the target non-deterministic data "{(User Name: A)" for User A to obtain a reference hash digest. The mapping table is then searched to see if a hash digest corresponding to the reference hash digest exists. Clearly, Table 4 shows that a hash digest corresponding to the reference hash digest exists, indicating that the mapping table already stores the target associated data corresponding to the target non-deterministic data.

[0090] The data form of non-deterministic data can be character strings, file data, image data, voice data, video data, etc. Generally, if the file data, image data, voice data, or video data has a large amount of data, directly writing such data into the mapping table will easily cause the mapping table to have an excessively large amount of data, which does not conform to the simplified expression form of the mapping table. Therefore, in the case of a large amount of non-deterministic data, the embodiment of the present application can maintain the simplified expression of the mapping table, so as not to cause the mapping table to carry an excessive amount of data. In addition, the non-deterministic data can be stored reliably and efficiently, so that the non-deterministic data can be returned to the electronic device or the second server completely and reliably when it is subsequently queried.

[0091] In some embodiments, generating target-associated data corresponding to target non-deterministic data includes the following steps: determining whether the target non-deterministic data meets preset lightweight storage conditions; if not, directly using the target non-deterministic data as target-associated data; if so, performing data lightweight processing operations on the target non-deterministic data to obtain target-associated data; the target-associated data is used to point to the target non-deterministic data; and the target non-deterministic data is stored on the first server or the second server.

[0092] The components of the preset lightweight storage conditions include: the non-deterministic data being binary file data, or the amount of the non-deterministic data being greater than a predetermined data amount threshold, or the non-deterministic data being designated sensitive data. Accordingly, determining whether the target non-deterministic data meets the preset lightweight storage conditions includes the following steps: determining whether the target non-deterministic data is binary file data, or determining whether the amount of the target non-deterministic data is greater than a predetermined data amount threshold, or determining whether the target non-deterministic data is designated sensitive data.

[0093] Compared to non-deterministic data that has a smaller data volume recorded in a mapping table, binary file data generally has a larger data volume. If the target non-deterministic data is binary file data, it means that the target non-deterministic data has a larger data volume and is inconvenient to store in the mapping table. If the target non-deterministic data is not binary file data, but the data volume of the target non-deterministic data is greater than the predetermined data volume threshold, the target non-deterministic data is also inconvenient to store in the mapping table. The preset data volume threshold is customized by the designer based on engineering experience. If the target non-deterministic data is designated sensitive data, in order to improve confidentiality, the target non-deterministic data is also inconvenient to store in the mapping table, but can be stored in other locations.

[0094] If the target non-deterministic data does not meet the preset lightweight storage conditions, it means that there is no need to perform any processing on the target non-deterministic data, and the target non-deterministic data can be directly written into the mapping table as target associated data.

[0095] If the target non-deterministic data meets the preset lightweight storage conditions, it is necessary to perform a data lightweight processing operation on the target non-deterministic data to obtain the target associated data. At this time, the target non-deterministic data will not be written to the mapping table. This embodiment of the present application adopts this approach to reduce the data volume of the mapping table and reduce the data storage load of the mapping table.

[0096] In some embodiments, performing a data lightweight processing operation on the target non-deterministic data to obtain target associated data includes the following steps: performing a hash operation on the target non-deterministic data to obtain a target hash digest, and using the target hash digest as the target associated data.

[0097] In some embodiments, the target non-deterministic data is recorded in a designated file, and the storage location of the designated file can be on the first server or the second server. It is understandable that when the designated file is stored on the first server, since the first server is a private server, others will not obtain the target non-deterministic data, thereby achieving confidentiality. It is also understandable that when the designated file is stored on the second server, although the second server is a shared server, the designated file lacks the constraint of valid information on the second server. For example, the second server does not store the user information or other useful information of the designated file. The administrator of the second server or others will find it difficult to obtain the designated file from the second server in the absence of guidance of user information or other useful information. Therefore, relatively speaking, storing the designated file on the second server will not make the designated file easy to obtain, and when the storage load of the first server is too large, storing the designated file on the second server can effectively alleviate the storage pressure of the first server.

[0098] The target hash digest is used as the file name of the specified file, and the file name of the specified file is the suffix path for storing the specified file.

[0099] See also Figure 5 The target non-deterministic data is video clip 51. The first server assigns the second form of data "5" to video clip 51 according to the above method. Since video clip 51 is large in data size, the first server performs a hash operation on video clip 51, resulting in a target hash digest of "61248...6978." This embodiment of the application configures a prefix path for the specified file. The prefix path is the path to the target folder where the specified file is stored. For example, the path to the target folder is E:\98djUj29s\.

[0100] like Figure 5 As shown, the designated file is a video clip 51, which is stored in a target folder 52. When the electronic device or the second server needs to obtain the video clip 51, the first server combines the prefix path with the file name of the video clip 51, "61248...6978," to form a file acquisition path: E:\98djUj29s\61248...6978, and obtains the video clip 51 based on the file acquisition path.

[0101] It can be understood that the data volume of the target hash summary is much smaller than the data volume of the target non-deterministic data. The embodiment of the present application stores the target hash summary as target associated data directly on the mapping table, which can greatly reduce the data storage load of the mapping table.

[0102] In addition, the embodiment of the present application directly performs a hash operation on the target non-deterministic data, and the probability of duplication between the obtained target hash digest and the hash digests obtained from other non-deterministic data is very low, that is, the probability of hash collision is very low, which is beneficial to improving the uniqueness of the hash digest of the target non-deterministic data, and when the non-deterministic data is subsequently queried, since the probability of the existence of two identical hash digests is very low, the first server will not return erroneous non-deterministic data to the electronic device or the second server.

[0103] Finally, if the relevant technology determines the target-associated data corresponding to the target non-deterministic data with different parameters, such as generating target-associated data corresponding to the target non-deterministic data based on the timestamp or other variables of the target non-deterministic data, then this approach is prone to the following problems: the same target non-deterministic data is easily processed into different target-associated data, and the different target-associated data are stored in the mapping table, which easily increases the storage load of the mapping table but does not produce additional benefits.

[0104] The first server uses a standardized hash algorithm to hash the target non-deterministic data. Any target non-deterministic data is processed using a standardized hash algorithm. Since the target non-deterministic data is deterministic and unique, the target associated data corresponding to the target non-deterministic data (i.e., the target hash digest) is also unique. This eliminates the need to store multiple hash digests describing the same target non-deterministic data in the mapping table. This approach improves system uniformity, which is particularly important in large systems such as blockchain.

[0105] In general, in order to optimize the storage resource utilization of private servers, the embodiments of the present application propose that for some source data (i.e., target non-deterministic data) that meet the preset lightweight storage conditions, lightweight processing is first performed to form target-related data with pointer properties, and the target-related data is stored in the mapping table of the private server. At this time, if the target non-deterministic data or the specified file containing the target non-deterministic data is stored on the public server, it is not stored in the same orderly management area as the database, but is designed to be stored in a specific area separated from the database and stored in a confused mode. In this area, all data of all users are mixed and placed in a "big warehouse" without any identification measures such as labels, classifications or partitions. The only mapping relationship that can identify these data exists only on the private server. In this way, even if the operator of the public server obtains these source data, due to the lack of effective identification information, the actual meaning of the data cannot be known.

[0106] It's important to emphasize that privacy encompasses not only the specific content of information but also its ownership and relevance. For example, even if a public server operator sees a profile picture, the value of that picture is extremely limited because they can't determine who it belongs to. Furthermore, application developers have the ability to encrypt and lock the entire area storing source data, further enhancing data privacy. This approach maximizes data privacy while fully utilizing public server storage resources.

[0107] In some embodiments, the zero-knowledge protection method also includes the following steps: obtaining a non-deterministic data access request sent by the second server, the non-deterministic data access request includes second form data, which is used to request the first server to return specified non-deterministic data corresponding to the second form data to the second server, responding to the non-deterministic data access request, extracting specified associated data corresponding to the second form data from the mapping table, and judging whether the specified associated data has undergone data lightweight processing operation. If not, the specified associated data is directly returned to the second server as specified non-deterministic data; if it has, the specified associated data corresponding to the second form data is extracted from the mapping table, and the specified associated data is used as a suffix path to obtain a preset prefix path, and the prefix path and the suffix path are combined into a file acquisition path, and the specified non-deterministic data is obtained based on the file acquisition path, and the specified non-deterministic data is returned to the second server.

[0108] During the data query phase, the embodiments of the present application provide an efficient process. First, the second form of data is queried from the public server, and then the corresponding source data is queried from the private server. If the source data is pointer-type source data, the source data is further queried according to the corresponding rules and ultimately returned to the user. This query process not only ensures data privacy but also effectively improves the database's read and write and overall operational efficiency through reasonable data storage and processing methods.

[0109] In general, the embodiment of the present application isolates the direct acquisition of user data on the second server using established form data, thereby reliably protecting user data from malicious acquisition and leakage.

[0110] The above embodiments are about methods of converting target deterministic data and target non-deterministic data into first form data and second form data, respectively, and methods of storing target deterministic data and target non-deterministic data. Below, embodiments of the present application further introduce methods of querying target deterministic data and target non-deterministic data by an electronic device or a second server, as follows:

[0111] The second server receives a query request sent by the electronic device, the query request carrying a data request identifier. The data request identifier includes a deterministic type identifier and / or a non-deterministic type identifier. The deterministic type identifier is used to indicate target deterministic data, and the non-deterministic type identifier is used to indicate target non-deterministic data. The second server stores first-form data corresponding to the target deterministic data and second-form data corresponding to the target non-deterministic data, and the first server stores the target non-deterministic data and the target deterministic data.

[0112] The second server responds to the query request and determines the target form data corresponding to the data request identifier. For example, if the data request identifier is a deterministic type identifier, the target form data is the first form data; if the data request identifier is a non-deterministic type identifier, the target form data is the second form data; if the data request identifier includes both the deterministic type identifier and the non-deterministic type identifier, the target form data includes both the first form data and the second form data.

[0113] The second server sends a data access request to the first server, so that the first server returns target actual data corresponding to the target form data, where the target actual data is one or both of target non-deterministic data and target deterministic data. For example, when the target form data is first form data, the target actual data is target deterministic data; when the target form data is second form data, the target actual data is target non-deterministic data; and when the target form data includes first form data and second form data, the target actual data includes target deterministic data and target non-deterministic data.

[0114] The second server sends the target actual data to the electronic device.

[0115] In order to elaborate on the zero-knowledge protection method for data provided by the embodiments of the present application, the embodiments of the present application provide the following application scenarios to explain this in detail, as follows:

[0116] ①Data classification module:

[0117] When the system starts, the data classification module is initialized. When new client data enters the storage process, the module first determines the data type of the client data. If the client data includes deterministic data, the system matches it against pre-configured optional data sets. For example, in a school management system, a student's gender (male / female) is deterministic data, and the system identifies this deterministic data using a pre-configured gender data set. If the client data includes non-deterministic data, such as freely entered content such as a student's self-description, the system classifies it as non-deterministic data.

[0118] ②Deterministic data processing module:

[0119] 2.1 Mapping Construction: For deterministic data, the system constructs mapping relationships on a private server. For example, in an e-commerce system, the brand of a product is considered deterministic data. Assuming there are brands "A," "B," and "C," the system generates first-form data "101," "102," and "103," respectively, and records the corresponding relationship between the brand and the first-form data in a configuration file.

[0120] 2.2 Storage Process: After the mapping is established, the first form of data is transferred and stored in the public database, while the source data and configuration files are stored on the private server. For example, in the e-commerce system described above, the public server only records data in the form of "101," "102," and "103," while the private server stores brand information for "A," "B," and "C," along with the corresponding configuration files.

[0121] ③Non-deterministic data processing module:

[0122] 3.1 Mapping Detection and Construction: When non-deterministic data enters the system, the private server first checks whether the source data is identical. For example, if two users post updates on social platforms with the same content, the system will simply reuse the existing data. If no identical data exists, a new mapping record is constructed to generate the corresponding second data.

[0123] 3.2 Storage operation: After the second form of data is generated, it is also stored in the public server, and the source data is stored in the private server, waiting for possible subsequent lightweight processing.

[0124] 3.3 Lightweight Processing Module: For some source data that meets the lightweighting criteria (such as large images and long texts), the system performs lightweight processing on private servers. For example, a high-definition image is converted into low-resolution pointer data (i.e., target-related data) with specific identifiers. The original high-definition image is then stored in a dedicated obfuscation area on the public server, separate from the database. On the private server, the corresponding rules between the pointer data and the original high-definition image are retained.

[0125] ④Data query module:

[0126] 4.1 Initial Query: When a query request is received, the system first searches the public server for the corresponding form data. For example, when querying e-commerce product brand information, the system first obtains form data such as "101" and "102" from the public server.

[0127] 4.2 Deep Query: Based on the type of data, the system initiates a request to the private server to obtain the corresponding source data. If the source data is pointer data, such as the image pointer data mentioned above, the private server will use the corresponding rules to find the original high-definition image from the obfuscated area of ​​the public server, integrate it with other source data, and return it to the user.

[0128] ⑤Encryption and security module:

[0129] Application developers can use proven encryption algorithms (such as AES) to encrypt specific obfuscated areas on public servers that store source data. At the same time, strict access control is implemented to ensure that only authorized queries can access relevant data, further ensuring data privacy and security.

[0130] In summary, the embodiments of the present application improve the privacy protection capabilities of database stored data from a mechanism perspective through data classification processing, innovative storage methods and optimized query processes, while also improving the database's read and write efficiency and overall operation efficiency, effectively solving the pain points of existing technologies.

[0131] The database privacy protection and performance improvement methods proposed in the embodiments of this application have shown significant beneficial effects in many aspects, as follows:

[0132] ① Privacy protection level:

[0133] 1.1 Zero-knowledge Storage: By dividing data into deterministic and non-deterministic data and storing each using zero-knowledge formal data, public servers only hold meaningless formal data and are completely unaware of the actual data content. For example, in a medical data storage scenario, a patient's diagnosis results are stored as formal data in a public database. Even if a public server operator accesses the data, they cannot obtain any valuable medical information from it, greatly protecting patient privacy.

[0134] 1.2 Comprehensive Privacy Protection: This not only protects data content but also provides strong protection against data ownership and relevance. For example, the original source data is stored in an obfuscated format in a specific area of ​​a public server, and the unique identification mapping is stored on a private server, preventing the public server from knowing the user to whom the data belongs and the relationships between the data. For example, even if a user posts an image on a social platform and accesses it, the image has no real value because the user to whom the image belongs and its relationship to other users' data are unknown. Furthermore, the application developer encrypts and locks this area, further strengthening privacy protection. Even if the data is accidentally leaked, it cannot be decrypted and viewed without authorization.

[0135] ②Efficiency improvement level:

[0136] 2.1 Improved Storage Efficiency: Formal data is stored using a unified, minimal-storage integer format, reducing the space required for data storage. For example, storing large amounts of product category data in an e-commerce system significantly saves storage space and improves storage efficiency compared to storing raw text. Furthermore, this uniformity and simplification reduces the cost of data differentiation and processing. Different data types no longer need to be adapted to complex and diverse storage formats, reducing the conversion and organization required during storage.

[0137] 2.2 Enhanced Operational Performance: In terms of read and write operations, database read and write speeds have been improved due to optimized data storage methods. For example, during a query, the form data is quickly retrieved from the public database, and then the source data is retrieved from the private server based on the mapping. This streamlined process reduces query time. Furthermore, the uniformity of the form data enhances parallel processing capabilities. Multiple query requests can simultaneously process different forms of data without interfering with each other, improving overall operational efficiency. Regarding atomic operations, the simplified data format enhances atomic operation performance, making data processing more efficient and accurate.

[0138] In summary, the embodiments of the present application, through innovative data processing and storage mechanisms, effectively protect data privacy while significantly improving the database's read and write efficiency and overall operational efficiency, providing strong technical support for various scenarios that rely on database storage and management of data.

[0139] As another aspect of the present invention, the present invention provides a method for zero-knowledge protection of data, which is applied to the first server. Figure 6 ,The zero-knowledge protection method of data includes the following steps:

[0140] S61: Acquire client data sent by the second server, where the client data includes target deterministic data and / or target non-deterministic data.

[0141] S62: If the client data includes target deterministic data, convert the target deterministic data into first-format data, and send the first-format data to the second server for storage, where the first-format data is zero-knowledge data.

[0142] S63: If the client data includes target non-deterministic data, map the target non-deterministic data into second-format data, and send the second-format data to the second server for storage, where the second-format data is zero-knowledge data.

[0143] The embodiment of the present application uses established form data to isolate the direct acquisition of user data on the second server, thereby reliably protecting user data from malicious acquisition and leakage.

[0144] In some embodiments, mapping the target non-deterministic data to second form data includes: obtaining a mapping table, the mapping table is used to record the form data corresponding to each non-deterministic data, and adding the second form data corresponding to the target non-deterministic data to the mapping table.

[0145] In some embodiments, adding second form data corresponding to the target non-deterministic data to the mapping table includes: determining whether the mapping table has pre-stored target associated data corresponding to the target non-deterministic data; if it has been pre-stored, determining that the form data corresponding to the target non-deterministic data is the second form data; if it has not been pre-stored, generating the second form data corresponding to the target non-deterministic data and the target associated data corresponding to the target non-deterministic data, associating the target associated data with the second form data and saving them on the mapping table.

[0146] In some embodiments, the target associated data is target non-deterministic data; or, the target associated data is a target hash digest obtained by performing a hash operation on the target non-deterministic data, and the target hash digest is used to point to the target non-deterministic data, and the target non-deterministic data is stored on the first server or the second server.

[0147] In some embodiments, target-associated data corresponding to target non-deterministic data is generated, including: determining whether the target non-deterministic data meets preset lightweight storage conditions; if not, directly using the target non-deterministic data as target-associated data; if compliant, performing a data lightweight processing operation on the target non-deterministic data to obtain target-associated data, the target-associated data being used to point to the target non-deterministic data, and the target non-deterministic data being stored on the first server or the second server.

[0148] In some embodiments, performing a data lightweight processing operation on the target non-deterministic data to obtain target associated data includes: performing a hash operation on the target non-deterministic data to obtain a target hash digest; and using the target hash digest as the target associated data.

[0149] In some embodiments, the constituent elements of the preset lightweight storage conditions include: the non-deterministic data is binary file data, or the data volume of the non-deterministic data is greater than a predetermined data volume threshold, or the non-deterministic data is designated sensitive data; judging whether the target non-deterministic data meets the preset lightweight storage conditions includes: judging whether the target non-deterministic data is binary file data; or, judging whether the data volume of the target non-deterministic data is greater than a predetermined data volume threshold; or, judging whether the target non-deterministic data is designated sensitive data.

[0150] As another aspect of the embodiment of the present application, the embodiment of the present application provides a zero-knowledge protection method for data, which is applied to the second server. Figure 7,The zero-knowledge protection method of data includes the following steps:

[0151] S71: Obtain a storage request sent by the electronic device, where the storage request is used to request the second server to store client data.

[0152] S72, obtaining first form data corresponding to the target deterministic data, where the first form data is zero-knowledge data;

[0153] S73, storing the first format data on a second server, where the second server is configured to communicate with the first server;

[0154] S74, sending the target non-deterministic data to the first server for storage, so that the first server maps the target non-deterministic data into second-form data, where the second-form data is zero-knowledge data;

[0155] S75: Store the second format data returned by the first server on the second server.

[0156] In some embodiments, the target deterministic data includes a target field corresponding to a fixed entry and first actual data under the target field, and obtaining the first form data corresponding to the target deterministic data includes: sending the target deterministic data to a first server so that the first server converts the target deterministic data into first form data and returns the first form data corresponding to the target field; or, obtaining configuration information sent by the first server, and converting the first actual data of the target field into first form data based on the configuration information.

[0157] As another aspect of the embodiment of the present application, the embodiment of the present application provides a zero-knowledge protection method for data, which is applied to the second server. Figure 8 ,The zero-knowledge protection method of data includes the following steps:

[0158] S81, obtaining a query request sent by an electronic device;

[0159] S82, responding to the query request, determining target form data corresponding to the data request identifier;

[0160] S83, sending a data access request to the first server, so that the first server returns target actual data corresponding to the target form data, where the target actual data is one or both of target non-deterministic data and target deterministic data;

[0161] S84, sending the target actual data to the electronic device.

[0162] The query request carries a data request identifier, which includes a deterministic type identifier and / or a non-deterministic type identifier. The deterministic type identifier is used to represent target deterministic data, and the non-deterministic type identifier is used to represent target non-deterministic data. The target deterministic data is optional data pre-configured for one or more fixed entries. The target non-deterministic data is data other than the target deterministic data. The target non-deterministic data includes data freely input by the user on the fixed entries of the electronic device. The second server saves first form data corresponding to the target deterministic data and second form data corresponding to the target non-deterministic data. Both the first form data and the second form data are zero-knowledge data. The second server is used to communicate with the first server, and the first server saves the target non-deterministic data and the target deterministic data.

[0163] In general, the embodiments of the present application can achieve at least the following technical effects:

[0164] 1. Cloud service providers have difficulty obtaining meaningful information from their own secondary servers. The first and second forms of data in the secondary server's database are in a zero-knowledge state (making it difficult to infer information about the actual data). During system operation, meaningful data is directly generated and used by applications, protecting the privacy of application developers and their users. This also significantly improves the performance of the secondary server.

[0165] 2. Multi-faceted efficiency improvements: Because the storage format of formal data is extremely simplified and unified, the database space storage efficiency, read and write speed, parallel operation, and even code integration and optimization capabilities are greatly improved.

[0166] 3. Security: Zero-knowledge storage on the server hardware prevents server providers and their related malicious environments from unnecessarily obtaining and utilizing user information.

[0167] 4. Decoupling: Sensitive information is decoupled to the application side, facilitating cross-Internet information collaboration and further enhancing system integration and upgrade capabilities.

[0168] 5. It can be used as a basic technical means for data protection and sharing in future data space architecture.

[0169] It should be noted that, in each of the above-mentioned embodiments, there is not necessarily a certain order between the above-mentioned steps. A person skilled in the art can understand, based on the description of the embodiments of this application, that in different embodiments, the above-mentioned steps may have different execution orders, that is, they may be executed in parallel, or may be executed interchangeably, etc.

[0170] See also Figure 9 , Figure 9This is a schematic diagram of the structure of a server provided in an embodiment of the present application. The server can be the first server or the second server. Figure 9 As shown, the server 900 includes one or more processors 91 and a memory 92. The memory 92 is connected to the one or more processors 91, for example, via a bus.

[0171] Processor 91 is configured to support the server in executing the corresponding functions of the method in the above-described method embodiment. The processor can be a central processing unit (CPU), a network processor (NP), a hardware chip, or any combination thereof. The hardware chip can be an application-specific integrated circuit (ASIC), a programmable logic device (PLD), or any combination thereof. The PLD can be a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof.

[0172] Memory 92 is used to store program code, etc. Memory can include volatile memory (VM), such as random access memory (RAM); non-volatile memory (NVM), such as read-only memory (ROM), flash memory, a hard disk drive (HDD), or a solid-state drive (SSD); or a combination of the aforementioned types of memory.

[0173] The memory 92 can be used to store non-volatile software programs, non-volatile computer executable programs, and modules, such as the program instructions / modules corresponding to the zero-knowledge data protection method in the embodiments of the present application. The processor executes the non-volatile software programs, instructions, and modules stored in the memory to execute the various functional applications and data processing of the zero-knowledge data protection method and the zero-knowledge data protection device, thereby realizing the functions of the various modules or units of the zero-knowledge data protection method and the zero-knowledge data protection device provided in the above-mentioned method embodiments.

[0174] The memory may include a program storage area and a data storage area. The program storage area may store an operating system and application programs required for at least one function. The data storage area may store data created by using the zero-knowledge data protection device. In some embodiments, the memory may optionally include a memory remote from the processor. Such remote memory may be connected to the zero-knowledge data protection device via a network. Examples of such networks include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.

[0175] The one or more modules are stored in the memory, and when executed by the one or more processors, perform the zero-knowledge protection method for data in any of the above method embodiments, for example, execute the method steps described in the above method embodiments to realize the functions of the modules described in the above device embodiments.

[0176] An embodiment of the present application further provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, wherein the computer program includes program instructions, and when the program instructions are executed by a server, the server executes the method as described in the above embodiment.

[0177] Those skilled in the art will appreciate that all or part of the processes in the above-described method embodiments can be implemented by instructing related hardware through a computer program. The program can be stored in a computer-readable storage medium, and when executed, the program can include the processes in the above-described method embodiments. The storage medium can be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM).

[0178] The above disclosure is only a preferred embodiment of the present application, and certainly cannot be used to limit the scope of rights of the present application. Therefore, equivalent changes made according to the claims of the present application are still within the scope covered by the present application.

Claims

1. A zero-knowledge data protection method, applied to a first server, characterized in that: include: Obtaining client data sent by the second server, the client data including target deterministic data and / or target non-deterministic data, the target deterministic data being optional data pre-configured for one or more fixed items, the target non-deterministic data being data other than the target deterministic data, the target non-deterministic data including data freely input by a user on a fixed item of the electronic device; If the client data includes target deterministic data, converting the target deterministic data into first form data, and sending the first form data to the second server for storage, wherein the first form data is zero-knowledge data; If the client data includes target non-deterministic data, the target non-deterministic data is mapped into second-form data, and the second-form data is sent to the second server for storage, where the second-form data is zero-knowledge data.

2. The zero-knowledge protection method according to claim 1, characterized in that: Mapping the target non-deterministic data into second-format data includes: Obtaining a mapping table, wherein the mapping table is used to record the formal data corresponding to each non-deterministic data; Second form data corresponding to the target non-deterministic data is newly added to the mapping table.

3. The zero-knowledge protection method according to claim 2, characterized in that: The adding of the second form data corresponding to the target non-deterministic data to the mapping table includes: Determining whether the mapping table has pre-stored target associated data corresponding to the target non-deterministic data; If it has been pre-stored, determining that the form data corresponding to the target non-deterministic data is the second form data; If not pre-stored, second form data corresponding to the target non-deterministic data and target associated data corresponding to the target non-deterministic data are generated, the target associated data is associated with the second form data and stored in the mapping table.

4. The zero-knowledge protection method according to claim 3, characterized in that: The target-related data is the target non-deterministic data; or, The target associated data is a target hash digest obtained by performing a hash operation on the target non-deterministic data. The target hash digest is used to point to the target non-deterministic data. The target non-deterministic data is stored on the first server or the second server.

5. The zero-knowledge protection method according to claim 3, characterized in that: The generating target associated data corresponding to the target non-deterministic data includes: Determining whether the target non-deterministic data meets the preset lightweight storage conditions; If not, the target non-deterministic data is directly used as the target associated data; If so, a data lightweight processing operation is performed on the target non-deterministic data to obtain target associated data, where the target associated data is used to point to the target non-deterministic data, and the target non-deterministic data is stored on the first server or the second server.

6. The zero-knowledge protection method according to claim 5, characterized in that: The performing a data lightweight processing operation on the target non-deterministic data to obtain target associated data includes: Performing a hash operation on the target non-deterministic data to obtain a target hash digest; The target hash digest is used as target association data.

7. The zero-knowledge protection method according to claim 5, characterized in that: The constituent elements of the preset lightweight storage conditions include: the non-deterministic data is binary file data, or the data volume of the non-deterministic data is greater than a predetermined data volume threshold, or the non-deterministic data is designated sensitive data; The determining whether the target non-deterministic data meets the preset lightweight storage conditions includes: Determine whether the target non-deterministic data is binary file data; or, Determine whether the amount of the target non-deterministic data is greater than a predetermined data amount threshold; or Determine whether the target non-deterministic data is designated sensitive data.

8. A zero-knowledge data protection method, applied to a second server, characterized in that: include: Obtaining a storage request sent by the electronic device, the storage request being used to request the second server to store client data, the client data including target deterministic data and target non-deterministic data, the target deterministic data being optional data pre-configured for one or more fixed entries, the target non-deterministic data being data other than the target deterministic data, and the target non-deterministic data including data freely input by a user on a fixed entry of the electronic device; Acquire first form data corresponding to the target deterministic data, where the first form data is zero-knowledge data; storing the first form of data on the second server, where the second server is configured to be communicatively connected to the first server; Sending the target non-deterministic data to the first server for storage, so that the first server maps the target non-deterministic data into second-form data, where the second-form data is zero-knowledge data; The second server stores the second format data returned by the first server.

9. The zero-knowledge protection method according to claim 8, characterized in that: The target deterministic data includes a target field corresponding to the fixed entry and first actual data under the target field, and obtaining the first form data corresponding to the target deterministic data includes: sending the target deterministic data to the first server, so that the first server converts the target deterministic data into first form data and returns the first form data corresponding to the target field; or Configuration information sent by the first server is acquired, and first actual data of the target field is converted into first format data based on the configuration information.

10. A zero-knowledge data protection method, applied to a second server, characterized in that: include: Obtaining a query request sent by an electronic device, the query request carrying a data request identifier, the data request identifier including a deterministic type identifier and / or a non-deterministic type identifier, the deterministic type identifier being used to indicate target deterministic data, the non-deterministic type identifier being used to indicate target non-deterministic data, the target deterministic data being optional data pre-configured for one or more fixed entries, the target non-deterministic data being data other than the target deterministic data, the target non-deterministic data including data freely input by a user on a fixed entry of the electronic device, the second server storing first form data corresponding to the target deterministic data and second form data corresponding to the target non-deterministic data, the first form data and the second form data being both zero-knowledge data, the second server being used to communicate with the first server, the first server storing the target non-deterministic data and the target deterministic data; In response to the query request, determining target form data corresponding to the data request identifier; Sending a data access request to the first server, so that the first server returns target actual data corresponding to the target form data, the target actual data being one or both of the target non-deterministic data and the target deterministic data; The target actual data is sent to the electronic device.

11. A server, characterized in that: The server comprises a memory and a processor, wherein the memory is connected to the processor, and the processor is used to execute one or more computer programs stored in the memory. When the processor executes the one or more computer programs, the server implements the zero-knowledge protection method for data as described in any one of claims 1 to 7, the zero-knowledge protection method for data as described in any one of claims 8 to 9, or the zero-knowledge protection method for data as described in claim 10.

12. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, which includes program instructions. When the program instructions are executed by a processor, the processor executes the zero-knowledge protection method for data as described in any one of claims 1 to 7, the zero-knowledge protection method for data as described in any one of claims 8 to 9, or the zero-knowledge protection method for data as described in claim 10.

Citation Information

Patent Citations

  • Account login method, page display method, client, and server

    CN107196898A

  • Zero-knowledge data storage verification method and device based on BLS signature and storage medium

    CN114021158A

  • Data processing method, device and equipment and computer storage medium

    CN116522404A