A journey data privacy method and system
Through non-interactive zero-knowledge proof technology, privacy processing of travel data is generated, which solves the problem of information leakage of personal travel history records in travel cards, and realizes verification that the travel is in compliance with epidemic prevention policies without leaking detailed travel information, protecting personal privacy and reducing the risk of information abuse.
Patent Information
- Application Number
- CN202210535852.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-05-17
- Publication Date
- 2025-10-21
- Estimated Expiration
- 2042-05-17
AI Technical Summary
In the existing technology, the travel card has the problem of complete display of personal travel history records in epidemic prevention and control, leading to information leakage, infringement of personal privacy, and possible abuse or illegal collection.
Non-interactive zero-knowledge proof technology is used to achieve privacy processing of travel data by generating public reference strings and keys, allowing the prover to generate proof documents that do not contain travel time and space information, and the verifier only verifies the travel history based on the list of medium and high-risk cities.
Without disclosing personal itinerary details, verify whether the itinerary complies with epidemic prevention policies, protect personal privacy, reduce the risk of information abuse, and improve the safety of epidemic prevention measures and public participation.
Smart Images

Figure CN114969812B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer technology, and in particular to a method and system for privacy protection of travel data. Background Art
[0002] Currently, traveling across China requires presenting a communication big data travel card, also known as a "travel card," which is an officially authorized and certified travel data record query service. Users simply enter their real-name verified mobile phone number and the corresponding query verification code to obtain and display proof of their travel history in all cities where they stayed for more than four hours in the past 14 days. The app will also display whether a travel destination is marked with an asterisk based on the real-time epidemic prevention and control risk rating of the travel destination, and ultimately whether the travel destination is green, yellow, or red.
[0003] Although travel cards are now nationwide and provide significant convenience for the information-based management and control of the epidemic, their implementation still presents some information security issues. The implementation of information-based tools such as travel codes and health codes to combat the epidemic often compels the disclosure of some personal privacy data for public safety reasons, neglecting the protection of personal information. For example, the presentation of a travel code often requires the display of all travel records within 14 days, even though many irrelevant travel records do not require verification. Travel codes in some locations further collect personal information beyond the scope of health codes for epidemic prevention, sparking public concern about the excessive collection of personal privacy data. Summary of the Invention
[0004] To overcome the shortcomings of existing technologies, this paper addresses the security issue of personal information leakage during travel card verification, which fully displays personal travel history. It proposes a travel data privacy monitoring method for epidemic prevention and control using non-interactive zero-knowledge proof technology. This method involves a prototype system consisting of an absolutely trustworthy third-party server, a prover client, and a verifier client, which can fully implement the privacy of travel data throughout the entire process of proof and verification. This is achieved through the following scheme:
[0005] A method for protecting the privacy of travel data includes the following steps:
[0006] Step 1: Generate a public reference string containing the certification key and verification key;
[0007] Step 2: Generate a certification document using a certification algorithm;
[0008] Step 3: Use a verification algorithm to verify the certification document.
[0009] A travel data privacy system includes: an absolutely trusted third-party server, a prover client, and a verifier client, wherein:
[0010] The prover client initiates a proof request and sends it to an absolutely trusted third-party server. After receiving the proof key from the third-party server, it generates a proof file and returns it to the third-party server.
[0011] An absolutely trusted third-party server generates a public reference string, distributes the proof key to the prover client, and distributes the verification key to the verifier client;
[0012] The verifier client initiates a verification request to an absolutely trusted third-party server. The third-party server returns a proof document to the verifier client, and the verifier client uses the proof document and verification key to input the verification proof.
[0013] The beneficial effect of this invention is that the prover generates a certificate document based on the travel time and space privacy data, which does not contain travel time and space information. The verifier uses this certificate document and the current list of medium- and high-risk cities to determine whether the prover has a travel history in medium- and high-risk cities, and then implements corresponding countermeasures against the prover. In this process, the prover does not need to provide the complete travel time and space privacy data to the verifier, and the verifier can still verify whether the prover has a travel history in medium- and high-risk cities. BRIEF DESCRIPTION OF THE DRAWINGS
[0014] Figure 1 Schematic diagram of the zero-knowledge proof framework for spatiotemporal data according to an embodiment of the present invention.
[0015] Figure 2 This is a preprocessing zero-knowledge proof system according to an embodiment of the present invention.
[0016] Figure 3 This is the workflow of the prototype system of an embodiment of the present invention.
[0017] Figure 4 Schematic diagram of visualization of R1CS constraints according to an embodiment of the present invention.
[0018] Figure 5 The prototype system of the embodiment of the present invention absolutely trusts the third-party server.
[0019] Figure 6 This is an illustrative prototype system certifier client of an embodiment of the present invention.
[0020] Figure 7 This is a schematic prototype system verifier client of an embodiment of the present invention. DETAILED DESCRIPTION
[0021] The present invention will be further described below with reference to the following examples. The examples are only part of the present invention and are only used to explain the present invention, and do not constitute any limitation to the scope of the present invention.
[0022] The prover and prover client described in the present invention are as follows: the prover is an individual whose travel history needs to be proved, and the prover client is a smart terminal held by the individual, such as a mobile phone.
[0023] The verifier and verifier client described in the present invention are as follows: the verifier is a staff member or terminal device that verifies personal travel, and the verifier client is a smart terminal held by the staff member, or a gate machine with verification function.
[0024] The absolutely trusted third-party server described in the present invention is an absolutely trusted server that communicates with the verifier client and the certifier client.
[0025] In an embodiment of the present invention, a method and system for privacy protection of travel data are provided, wherein the operating environment of the system is based on the Linux operating system.
[0026] Please refer to Figure 1 The travel data privacy system in the embodiment of the present invention involves a zero-knowledge proof framework for spatiotemporal data, and the underlying platform of the framework chooses to use the Linux operating system.
[0027] The libsnark layer is actually the entire libsnark library. Of course, the present invention does not necessarily use all libsnark functions.
[0028] Preprocessing Zero-Knowledge Proof Interface Layer. PreProcessing Zero-Knowledge Succinct Non-interactive ARgument of Knowledge is an interface abstracted by the preprocessing zero-knowledge proof system. PreProcessing refers to the fact that this type of proof system needs to preprocess and generate a Common Reference String (CRS) before proof. There are three mainstream algorithms for implementing this type of proof system, namely PHGR13 / BCTV14a, Groth16 and GM17. Figure 2 As shown, the workflow of the preprocessing zero-knowledge proof system can be summarized in principle into three steps: 1. Generate the CRS using the Generate algorithm; 2. Prove the proof using the Prove algorithm; and 3. Verify the proof using the Verify algorithm. Correspondingly, the preprocessing zero-knowledge proof interface layer within the spatiotemporal data zero-knowledge proof framework abstracts three interfaces based on libsnark: the Setup public reference string parameter generation algorithm interface, the Prove proof generation algorithm interface, and the Verify proof algorithm interface. It is also at this layer that the present invention functionally implements the complete basic preprocessing zero-knowledge proof process.
[0029] The interaction layer, based on the three pre-processing interfaces of the zero-knowledge proof interface layer, constructs an interactive logic layer that absolutely trusts third parties and data flow. Specifically, it uses computer communication interaction and graphical display technologies such as Google Protocol Buffers, gRPC, and Qt, and uses CMake to build the entire interaction layer functionality.
[0030] Ultimately, at the top application layer, the framework integrates the functions of all parties involved in zero-knowledge proof to implement the three roles required for the complete process of pre-processing the zero-knowledge proof system: an absolutely trusted third-party server, a prover client, and a verifier client.
[0031] like Figure 3 As shown, in an embodiment of the present invention, a method for privacy protection of travel data further includes the following steps:
[0032] Step 1: Generate a public reference string, or keypair. This keypair consists of a proving key (PK) and a verifying key (VK). This generation process (also known as setup) requires the random generation of certain parameters, also known as "toxic waste." These parameters must be immediately destroyed, as they could become an attack surface for the protocol and compromise the security of the proof system. The paired public reference strings are then delivered to the prover and verifier, respectively, as necessary for the complete proof process. These public reference strings serve as crucial support for the zero-knowledge nature of propositional information and are crucial for achieving non-interactivity, which separates the proof and verification processes.
[0033] Step 2: Generate a proof using a proof algorithm. In this invention, the prover wants to prove that their travel history satisfies the spatiotemporal data polynomial proposition. To generate the proof, the prover needs to input the spatiotemporal privacy evidence, the proof key, and the public statement, which they pass to the proof algorithm implementation function.
[0034] In an embodiment of the present invention, the spatiotemporal data polynomial proposition is implemented through a formula. Taking the 21 prefecture-level cities in Guangdong Province as an example, these 21 cities are set as a 21-dimensional spatiotemporal data vector using Boolean encoding. For the prover, if the value of each dimension of this vector is 0, it means that there is no visit history for the city, and if the value is 1, it means that there is a visit history for the city. Similarly, for the verifier, if the value of each dimension of this vector is 0, it means that there is no need to verify the city, and if the value is 1, it means that the city needs to be verified.
[0035] Then it is easy to get the travel history vector held by the prover , the travel history vector to be verified by the verifier And the proposition when the prover has no visit history to the city to be verified within 14 days. The spatiotemporal data polynomial proposition satisfies the following formula:
[0036]
[0037]
[0038] .
[0039] The above formula enables the prover to have the travel history that enables the proposition to be proved to be true.
[0040] Step 3: Verify using the verification algorithm. The proof generated in step 2, the verification key generated in step 1, and the public statement are used as input to the verification algorithm implementation function. This verifies that the prover's itinerary satisfies the proof proposition in step 2 without revealing the prover's private itinerary information.
[0041] Based on a preprocessing zero-knowledge proof system and a spatiotemporal data zero-knowledge proof framework, this research prototype system features three endpoints: a trusted third-party server, a prover client, and a verifier client. The prototype system workflow consists of the following six steps.
[0042] The prover client initiates a proof request and sends it to an absolutely trusted third-party server.
[0043] An absolutely trusted third-party server generates a public reference string, distributes the proof key to the prover client, and distributes the verification key to the verifier client.
[0044] The prover client generates a proof document and returns it to the absolutely trusted third-party server.
[0045] The verifier client initiates a verification request to an absolutely trusted third-party server.
[0046] The absolutely trusted third-party server returns the proof document to the verifier client.
[0047] The verifier client verifies the proof using the proof file, verification key, and other inputs.
[0048] Prover client registration service. In this service, the absolutely trusted third-party server will collect the name string sent by the prover and check whether there are duplicate names. If there are no duplicates, the name submitted by the prover client will be recorded in the third-party server database.
[0049] The same principle applies to the authenticator client registration service. In this service, the trusted third-party server collects the name string sent by the authenticator client and checks whether there are any duplicate names. If there are no duplicates, the name submitted by the authenticator client is recorded in the third-party server database.
[0050] The public statement setting service, taking Guangdong Province as an example, can set up a list of the 21 prefecture-level cities in Guangdong Province that are currently designated as medium- and high-risk cities.
[0051] The public statement acquisition service is built for both prover and verifier clients. This is because not only does the prover need the public statement as input to generate proofs, but the verifier also needs the public statement as input to verify proofs.
[0052] The prover and verifier client pairing service pairs the prover and verifier clients. Because in the general attestation process, the prover and verifier clients appear in pairs, the purpose of building this service is to bind the prover and verifier clients that need to be proven and verified as the two interacting parties for a complete attestation.
[0053] The Public Reference String Generation Module, building on the previous service, generates a temporary pair of public reference strings—the attestation key and verification key—for each pair of prover and verifier clients using the R1CS circuit. It's important to note that a new public reference string must be generated for each pair to ensure information security.
[0054] In the embodiment of the present invention, the spatiotemporal data polynomial proposition is converted into an R1CS circuit, and four pb_variable_array array variables are applied, as shown in Table 1. With the help of these four array variables, the proposition is flattened into several quadratic equations and converted into simple R1CS constraints, such as Figure 4 shown.
[0055] Variable Name Array length - Size primary_inputs N auxiliary_inputs N intermediates N add_intermediates N-1
[0056] Table 1
[0057] The quadratic equation is expressed as follows:
[0058]
[0059]
[0060]
[0061]
[0062] like Figure 5As shown in the figure, the third-party server includes the following parts:
[0063] Send the proof key to the prover client service. Based on the previous two services, the temporarily generated proof key is sent to the paired prover client and eventually destroyed to ensure system information security.
[0064] Sending the verification key to the authenticator client service. Based on the first two services of sending the proof key to the authenticator client service, the temporarily generated verification key is sent to the paired authenticator client and finally destroyed to ensure system information security.
[0065] Obtain proof document service from the prover client, that is, receive the proof document serialized data sent by the paired prover and store it in the server database. This is also based on the prover client and verifier client pairing service produced by the prover client and verifier client pairing service.
[0066] Sending the proof document to the Verifier client service involves sending the serialized data of the proof document stored in the server database, which is also based on the prover and verifier client pairing service. Finally, the proof document in the server database is destroyed to ensure system information security.
[0067] like Figure 6 As shown, the prover client consists of the following parts:
[0068] Prover registration module. The prover client initiates a registration request. The prover needs to submit its own uniquely authenticated ID string and call the corresponding service prover client registration service of the absolutely trusted third-party server to implement the function.
[0069] The public statement acquisition module implements the function of obtaining public statement input. The prover client initiates a request and calls the corresponding service of the absolutely trusted third-party server, the public statement acquisition service, which returns the serialized public statement data.
[0070] In the verifier pairing module, the prover client initiates a request, calls the corresponding service of the absolutely trusted third-party server, pairs with the corresponding verifier client, and stores the pairing information in the third-party server database.
[0071] Attestation key acquisition module. The prover client initiates a request and calls the corresponding service of the absolutely trusted third-party server to send the attestation key to the prover client service. The third-party server returns the serialized data of the attestation key corresponding to the prover client.
[0072] The spatiotemporal travel privacy data setting module implements the function of setting evidence witness (travel data privacy). Correspondingly, the prover can set the list of cities in Guangdong Province where the prover has been active within the past 14 days.
[0073] The certification document generation module generates certification documents based on the certification key, public statement and itinerary spatiotemporal privacy evidence.
[0074] Send the proof document to the third-party server module, the prover client initiates the request, absolutely trusts the corresponding service of the third-party server to obtain the proof document service from the prover client, and finally destroys the proof document to ensure the security of system information.
[0075] like Figure 7 As shown, the validator client consists of the following parts:
[0076] In the verifier registration module, the verifier client initiates a registration request. The verifier needs to submit its own unique authentication ID string and call the corresponding service verifier client registration service of the absolutely trusted third-party server to implement the function.
[0077] The public statement acquisition module implements the function of obtaining public statement input. The verifier client initiates a request and calls the corresponding service of the absolutely trusted third-party server, the public statement acquisition service, and returns the serialized public statement data.
[0078] In the prover pairing module, the verifier client initiates a request, calls the corresponding service of the absolutely trusted third-party server, pairs with the corresponding prover client, and stores the pairing information in the third-party server database.
[0079] Verification key acquisition module. The authenticator client initiates a request, calls the corresponding service of the absolutely trusted third-party server, and sends the verification key to the authenticator client service. The third-party server returns the serialized data of the verification key corresponding to the authenticator client.
[0080] Obtain the certification document module from the third-party server. The verifier client initiates a request, calls the corresponding service of the absolutely trusted third-party server, and sends the certification document to the third-party server module. The third-party server returns the serialized data of the certification document to the verifier client.
[0081] Verification Proof Module: The verifier client verifies the proof based on the verification key, public statement, and proof document.
[0082] This invention addresses the security concerns of personal information leakage during travel card verification, which requires a complete display of an individual's 14-day travel history. It proposes a travel data privacy monitoring method for epidemic prevention and control using non-interactive zero-knowledge proof technology. Current travel verification often requires the complete display of the prover's complete spatiotemporal travel information for the past 14 days. The verifier, based on local epidemic prevention and control policies, determines and verifies whether the spatiotemporal travel information satisfies epidemic prevention policies, specifically whether the prover has visited medium- or high-risk cities, and then enforces the corresponding policies against the prover. In contrast, the present invention uses the prover to generate a certificate document that excludes the spatiotemporal travel information based on the spatiotemporal travel privacy data. The verifier then uses this certificate document and a list of current medium- and high-risk cities to determine whether the prover has a travel history in medium- or high-risk cities and then implements appropriate countermeasures against the prover. In this process, the prover does not need to provide the verifier with the complete spatiotemporal travel privacy data, yet the verifier can still verify whether the prover has a travel history in medium- or high-risk cities.
[0083] The present invention protects the information security of personal spatiotemporal travel privacy data in proof verification scenarios such as travel codes through non-interactive zero-knowledge technology. It reduces the possibility of criminals stealing and abusing citizens' information. In particular, when the personal information of some infected persons is disclosed, they are attacked by "human flesh", revealing their true identities and even suffering from cyber violence. In addition, there are some companies that attempt to collect this information for commercial application analysis, such as "killing old customers" with big data. This behavior is obviously contrary to the spirit of the rule of law. At the same time, we must also be vigilant against the illegal collection of data of Chinese citizens by individuals or organizations abroad. Obviously, once personal information is leaked, the legitimate rights and interests of ordinary people and even national security are extremely vulnerable to damage. In addition, safe and confidential methods can also increase people's enthusiasm and sense of security in participating in the fight against the epidemic.
[0084] The above description is merely a preferred embodiment of the present invention and does not constitute any form of limitation to the present invention. Although the present invention has been disclosed as a preferred embodiment, it is not intended to limit the present invention. Any technician familiar with the present profession can make some changes or modifications to equivalent embodiments of equivalent changes using the technical contents disclosed above without departing from the scope of the technical solution of the present invention. However, any simple modifications, equivalent changes and modifications made to the above embodiments based on the technical essence of the present invention without departing from the content of the technical solution of the present invention are still within the scope of the technical solution of the present invention.
Claims
1. A travel data privacy system, characterized in that: The system includes: an absolutely trusted third-party server, a prover client, and a verifier client, where: The prover client initiates a proof request and sends it to an absolutely trusted third-party server. After receiving the proof key from the third-party server, it generates a proof file and returns it to the third-party server. The absolutely trusted third-party server generates a public reference string, distributes the proof key to the prover client, and distributes the verification key to the verifier client; The verifier client initiates a verification request to an absolutely trusted third-party server. The third-party server returns a certificate document to the verifier client. The verifier client verifies the certificate document using the certificate document and verification key. The third-party server includes: A registration service collects name strings sent by the prover client and the verifier client, searches for duplicate names, and if not, records the name strings in a third-party server database; Public statement setting service: set the list of medium and high-risk cities as input for generating and verifying certificates; Prover client and verifier client pairing service: This service pairs the prover client and the verifier client, requiring the prover client and the verifier client to be the interacting parties for a complete proof. Public Reference String Generation Module: For a paired prover client and verifier client, generates a pair of temporary public reference strings based on the R1CS circuit. The public reference strings contain a temporarily generated proof key and verification key. The temporarily generated proof key is sent to the paired prover client and eventually destroyed. The verification key is sent to the verifier client, the temporarily generated verification key is sent to the paired verifier client, and eventually destroyed to ensure system information security. Obtaining proof document service from the prover client: receiving the serialized proof document data sent by the matched prover and storing it in the server database. This is also the prover client and verifier client produced by the prover client and verifier client pairing service. Send the proof document to the verifier client service: This means sending the serialized data of the proof document stored in the server database. This is also based on the paired prover client and verifier client produced by the prover client and verifier client pairing service. Finally, the proof document in the server database is destroyed to ensure system information security.
2. A travel data privacy system according to claim 1, characterized in that: The certifier client includes: Prover registration module: The certifier client initiates a registration request, submits its own uniquely authenticated ID string, and calls the certifier client registration service of the third-party server to implement the registration function; Public statement acquisition module: The prover client initiates a request and calls the public statement acquisition service of the third-party server, which returns the serialized public statement data; Verifier pairing module: The prover client initiates a request, calls the corresponding service of the third-party server, pairs with the corresponding verifier client, and stores the pairing information in the database of the third-party server; In the attestation key acquisition module, the prover client initiates a request, calls the corresponding service of the third-party server, and sends the attestation key to the prover client service. The third-party server returns the serialized data of the attestation key corresponding to the prover client. Time-space travel privacy data setting module: implements the function of setting travel data privacy and sets the list of cities where the prover has been active within a few days; Proof document generation module: Generates proof documents based on the proof key, public statements, and travel time and space privacy evidence; Service for sending certification documents: The certifier client initiates a request, and the corresponding service on the third-party server obtains the certification document from the certifier client and destroys the certification document after use to ensure system information security.
3. A travel data privacy system according to claim 1, characterized in that: The verifier client includes: Verifier registration module: The verifier client needs to submit its own unique authentication ID string and call the corresponding service verifier client registration service of the third-party server to implement the function; Public statement acquisition module: The verifier client initiates a request, calls the public statement acquisition service of the third-party server, and returns the serialized public statement data; Prover-client pairing module: The verifier client initiates a request, calls the corresponding service on the third-party server, pairs with the corresponding prover client, and stores the pairing information in the third-party server database; Verification key acquisition module: The authenticator client initiates a request, calls the corresponding service of the third-party server, and sends the verification key to the authenticator client service. The third-party server returns the corresponding verification key serialized data of the authenticator client; Obtaining proof document module: The verifier client initiates a request, calls the corresponding service of the third-party server to send the proof document to the third-party server module, and the third-party server returns the serialized data of the proof document corresponding to the verifier client; Verification and Proof Module: The verifier client verifies the proof document based on the verification key, public statement, and proof document.
4. A method for privacy protection of travel data, performed by the travel data privacy protection system of claim 1, comprising the following steps: Step 1: Generate a public reference string containing the certification key and verification key; Step 2: Use the proof algorithm to generate a proof document to prove that the travel history it holds can make the spatiotemporal data polynomial proposition valid; Step 3: Use a verification algorithm to verify the certification document.
5. A method for privacy protection of travel data according to claim 4, characterized in that: During the generation of the certification document, it is necessary to input the travel time and space privacy evidence, the certification key and the public statement.
6. A method for privacy protection of travel data according to claim 5, characterized in that: The verification algorithm uses the certification document, the verification key and the public statement as a verification algorithm to verify that the prover's itinerary satisfies the spatiotemporal data polynomial proposition.
Citation Information
Patent Citations
Intelligent contract authentication data privacy protection method and system based on zero knowledge proof
CN110781521A
Privacy identity authentication method based on feature face
CN113591650A