Anonymous communication method, device and product based on secret sharing

Through an anonymous communication method based on secret sharing, using two servers and the AES encryption algorithm, the user's identity privacy protection in anonymous communication is achieved, which solves the problem of insufficient anonymity in the existing technology and reduces the computational overhead.

CN119276546BActive Publication Date: 2025-09-16WUHAN UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411309437.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-09-19
Publication Date
2025-09-16
Estimated Expiration
2044-09-19

AI Technical Summary

Technical Problem

Existing anonymous communication technologies cannot effectively resist traffic correlation analysis and web fingerprint recognition attacks, and in point-to-point communication scenarios, the identities of both parties cannot remain anonymous.

Method used

An anonymous communication method based on secret sharing is adopted. Public and private keys are generated by two non-colluding servers A and B. An index and email address are assigned to each user. The AES encryption algorithm and distributed point function technology are used to achieve secret sharing and encryption of messages, ensuring the anonymity of both communicating parties.

Benefits of technology

While ensuring anonymity, it reduces the computational overhead of replying, improves anonymity, ensures the privacy of the reporter's identity, and reduces the computational burden of the receiving agency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119276546B_ABST
    Figure CN119276546B_ABST
Patent Text Reader

Abstract

The present invention discloses an anonymous communication method, device, and product based on secret sharing. The method comprises two non-collusive servers, a bulletin board M, N users, a message sender P, and a message receiver J. First, the server generates a public key and a private key for key negotiation, assigns an index and an email address to the user, and the user generates a symmetric key for encrypting the mailbox database. P then sends his or her email address and email content to the server. The server writes the message to the mailbox database and the bulletin board. J then reads the message in the mailbox. J sends the reply message and the index of the received message to the server. The server reads P's email address component from the bulletin board based on the index and writes the reply message to the mailbox database. Finally, P reads the reply message. The present invention reduces the computational overhead of replying while ensuring the anonymity of users in the system. That is, the server does not know J's identity when sending an email, and J does not need to know P's identity when replying to P.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the field of information security technology and relates to an anonymous communication method, device and product, and specifically to an anonymous communication method, device and product based on secret sharing. Background Art

[0002] With the advent of the information age, users around the world can now communicate instantly across borders via the internet, but this has also led to increasingly serious information security issues. While data confidentiality in network communications is typically maintained through protocols like the TLS protocol, in an uncontrolled environment, anyone with the ability to eavesdrop can obtain metadata generated during communications and thus uncover relevant private information. Communication metadata is additional data with descriptive and explanatory functions, including information such as the identities of the communicating parties and the time of communication. Protecting the privacy of metadata in communications is crucial.

[0003] Anonymous communication technology, as a defensive measure to protect communication metadata, can conceal the relationship between communicating parties, preventing attackers from linking data senders and recipients. Onion routing networks, such as Tor, use a series of relay servers to proxy user traffic, thereby concealing user identities. Due to their simple configuration and high performance, these networks have become one of the most widely used anonymous communication systems. However, these networks are not effectively resistant to passive traffic analysis attacks, such as traffic correlation analysis and web fingerprinting. The anonymous broadcast model can resist traffic analysis by allowing senders to anonymously post messages to bulletin boards, allowing users to freely access and read the information of interest. This makes it suitable for group communication scenarios. The anonymous mailbox model also resists traffic analysis by allowing users to send messages to a pre-registered mailbox, allowing the mailbox owner to access and read the corresponding email content. This model is suitable for point-to-point communication scenarios. However, sending messages requires knowing the recipient's email address, which poses a problem of maintaining anonymity between communicating parties. Summary of the Invention

[0004] In order to solve the above technical problems, the present invention proposes an anonymous communication method and system based on secret sharing.

[0005] The technical solution adopted by the method of the present invention is: an anonymous communication method based on secret sharing, including two non-collusive servers A and B, each server has its own mailbox database D A and D B , a bulletin board M, N users, users include message sender P and message receiver J;

[0006] The method comprises the following steps:

[0007] Step 1: The two servers generate public and private keys for key negotiation, assign an index and email address to each user, and each user generates a symmetric key for encrypting the contents of the mailbox database.

[0008] Step 2: The message sender P performs secret sharing and distributed point function on his / her email address and email content, and then sends them to the server; the server writes the corresponding message to the mailbox database and bulletin board;

[0009] Step 3: Message receiver J reads the message in his mailbox;

[0010] Step 4: Message receiver J sends the reply message and the index in the received message as the reply content to the server; the server reads the message sender's email address component from the bulletin board based on the index and writes the reply message to the mailbox database;

[0011] Step 5: The message sender P reads the reply message.

[0012] Preferably, the specific implementation of step 1 includes the following sub-steps:

[0013] Step 1.1: Server A generates private key a and public key g a , server B generates private key b and public key g b ; Two servers A and B jointly negotiate the message threshold t when publishing a message on the bulletin board M, and assign an identification index i∈[1,N] and an email address addr to each user i ∈[1,N];

[0014] Step 1.2: As i increases from 1 to N, user i executes the AES key generation algorithm to generate two symmetric keys. and Will Send to server A, Send to server B;

[0015] Step 1.3: i increases from 1 to N, and server A transfers mailbox database D A The content of the i-th item is set to use the key After encrypting data 0, server B will send the ciphertext to mailbox database D B The content of the i-th item is set to use the key The ciphertext after the encrypted data 0.

[0016] Preferably, the specific implementation of step 2 includes the following sub-steps:

[0017] Step 2.1: The message sender P with index p generates two random vectors and Where i = addr pWhen satisfied i∈{1,…,N} / addr p When satisfied

[0018] Step 2.2: Generate two random numbers and as indices into two random vectors;

[0019] Step 2.3: Generate private key x and public key g x , calculate the shared key g with server A ax , encrypt the vector using the AES encryption algorithm Get the address ciphertext vector Calculate the shared key g with server B bx , encrypt the vector using the AES encryption algorithm Get the address ciphertext vector

[0020] Step 2.4: Mess the message j When sending a message to the message receiver J with index j, a random number is generated for the message receiver J As an identifier, generate a symmetric key Encrypt the reply message and use the distributed point function key generation algorithm to generate the key according to the email address addr of the message recipient. j and email content j Generate a pair of shared function keys and Will Send to server A, Sent to server B;

[0021] Step 2.5: i ranges from 1 to N, s∈{A,B}, and server s uses a distributed point function evaluation algorithm to calculate The value at point i, get the vector Where i = addr j When satisfied i∈{1,…,N} / addr j When satisfied

[0022] Step 2.6: i ranges from 1 to N, s∈{A,B}, and the server s uses the key Decryption Vector The i-th element in Get vector Calculate dw s =dw s +mw s Update dws ; Among them cdw s Is the server s mailbox database D s Contents in

[0023] Step 2.7: i goes from 1 to N, and server s uses the key Encrypted vector dw s The i-th element in gets the vector cdw s , update mailbox database D s Contents in

[0024] Step 2.8: When the number of address ciphertext vectors received by server s is not less than t, it selects a random time to publish all the address ciphertext vectors and corresponding indexes received during this period to the bulletin board M in a random order.

[0025] Preferably, the specific implementation of step 3 includes the following sub-steps:

[0026] Step 3.1: Receiver J of message index j uses the key Decrypt mailbox database D A Addr j Data get Use key Decrypt mailbox database D B Addr j Data get

[0027] Step 3.2: Calculation Restore email content;

[0028] Step 3.3: s∈{A,B}, server s will Content is set to use the key The ciphertext after the encrypted data 0.

[0029] Preferably, the specific implementation of step 4 includes the following sub-steps:

[0030] Step 4.1: Index is j message receiver J reads the email content cont j The key in Use AES encryption algorithm to encrypt reply message mess p Get cmess p ,Will Send to server A, Sent to server B; The content of the email sent by the message receiver J to the message sender P;

[0031] Step 4.2: k∈{a,b}, s∈{A,B}, server s according to the index Find the reply address ciphertext vector in the bulletin board M {A,B} / s means subtracting element s from the set {A,B}; when s is server A, find When s is server B, find Calculate the shared key g with the message sender P kx , decrypted using the AES decryption algorithm Get vector

[0032] Step 4.3: Server s calculation Where i = addr p When satisfied i∈{1,…,N} / addr p When satisfied

[0033] Step 4.4: Server S executes steps 2.6 and 2.7 to update mailbox database D. s .

[0034] Preferably, the specific implementation of step 5 includes the following sub-steps:

[0035] Step 5.1: The message sender P with index p executes steps 3.1 and 3.2 to obtain the email content. The server executes step 3.3 to update the mailbox database;

[0036] Step 5.2: The message sender P identifies turn up Decrypt cmess using the AES decryption algorithm p Get reply message mess p .

[0037] The technical solution adopted by the device of the present invention is: an anonymous communication device based on secret sharing, including a memory, a processor and a computer program stored in the memory and capable of running on the processor, and the processor implements the anonymous communication method based on secret sharing when executing the program.

[0038] The technical solution adopted by the product of the present invention is: an anonymous communication product based on secret sharing, including a computer program, which implements the anonymous communication method based on secret sharing when executed by a processor.

[0039] Compared with the prior art, the advantages and positive effects of the present invention are mainly reflected in the following aspects:

[0040] (1) This paper designs an anonymous reporting and reply scheme suitable for anonymous communication. This scheme ensures the anonymity of the data sender and the reporter while reducing the computational overhead of the reply.

[0041] (2) The present invention uses secret sharing and encryption technology to hide the whistleblower's email address, ensuring that the relevant receiving agency can still maintain the anonymity of the whistleblower's identity when responding to the whistleblower, thereby improving the anonymity of the solution. BRIEF DESCRIPTION OF THE DRAWINGS

[0042] The technical solution of this invention is further illustrated below using embodiments and specific implementation methods. In addition, some drawings are used in the process of illustrating the technical solution. Those skilled in the art can also derive other drawings and the intent of the present invention based on these drawings without making any creative efforts.

[0043] Figure 1 This is an overall framework diagram of an embodiment of the present invention.

[0044] Figure 2 Flowchart of a method according to an embodiment of the present invention.

[0045] Figure 3 The computational overhead of sending emails to the acceptance agency in the embodiment of the present invention

[0046] Figure 4 This is the computational overhead of the server writing user emails into the database in this embodiment of the present invention. DETAILED DESCRIPTION

[0047] In order to facilitate the technical means and effectiveness of the present invention to be understood and implemented by those skilled in the art, the present invention is further described in detail below in conjunction with the embodiments and drawings. It should be understood that the embodiments described herein are only for the purpose of illustrating and explaining the present invention and are not intended to limit the present invention.

[0048] In identity-sensitive point-to-point communication scenarios such as anonymous reporting, reporters usually hope to maintain their anonymity and avoid disclosing personal information to the relevant receiving agencies. Therefore, in anonymous communication systems, how to enable the receiving agencies to respond to the reporters while maintaining the anonymity of the reporters' identities is an urgent problem that needs to be solved.

[0049] To solve the above technical problems, please see Figure 1 and Figure 2 This embodiment provides an anonymous whistleblower reply method based on secret sharing, including two non-colluding servers A and B, each server has its own mailbox database D A and D B ,There is a bulletin board M with N users, who can be divided into whistleblowers P and receiving agencies J according to the content of the messages they send;

[0050] The method comprises the following steps:

[0051] Step 1: The two servers generate public and private keys for key negotiation, assign an index and email address to each user, and each user generates a symmetric key for encrypting the contents of the mailbox database.

[0052] In one embodiment, the specific implementation of step 1 includes the following sub-steps:

[0053] Step 1.1: Server A generates private key a and public key g a , server B generates private key b and public key g b The two servers jointly negotiate the message threshold t when publishing a message on the bulletin board M, and assign an identification index i∈[1,N] and an email address addr to each user. i ∈[1,N];

[0054] Step 1.2: As i increases from 1 to N, user i executes the AES key generation algorithm to generate two symmetric keys. and Will Send to server A, Send to server B;

[0055] Step 1.3: i increases from 1 to N, and server A transfers mailbox database D A The content of the i-th item is set to use the key After encrypting data 0, server B will send the ciphertext to mailbox database D B The content of the i-th item is set to use the key The ciphertext after the encrypted data 0.

[0056] Step 2: The informant P performs secret sharing and distributed point function on his / her email address and email content, and then sends them to the server; the server writes the corresponding message to the mailbox database and bulletin board;

[0057] In one embodiment, the specific implementation of step 2 includes the following sub-steps:

[0058] Step 2.1: The informant P with index p generates two random vectors and Where i = addr p When satisfied i∈{1,…,N} / addr p When satisfied

[0059] Step 2.2: Generate two random numbers and As the index of the two random vectors, it is convenient for subsequent searches on the bulletin board M;

[0060] Step 2.3: Generate private key x and public key g x , calculate the shared key g with server A ax , encrypt the vector using the AES encryption algorithm Get the address ciphertext vector Calculate the shared key g with server B bx , encrypt the vector using the AES encryption algorithm Get the address ciphertext vector

[0061] Step 2.4: Mess the message j When sent to the acceptance institution J with index j, a random number is generated for the acceptance institution J As an identifier, generate a symmetric key Encrypt the reply message and use the distributed point function key generation algorithm to generate the key according to the email address of the receiving institution addr j and email content j Generate a pair of shared function keys and Will Send to server A, Sent to server B;

[0062] Step 2.5: i ranges from 1 to N, s∈{A,B}, and server s uses a distributed point function evaluation algorithm to calculate The value at point i, get the vector Where i = addr j When satisfied i∈{1,…,N} / addr j When satisfied

[0063] Step 2.6: i ranges from 1 to N, s∈{A,B}, and the server s uses the key Decryption Vector The i-th element in Get vector Calculate dw s =dw s +mw s Update dw s ; Among them cdw s Is the server s mailbox database D s Contents in

[0064] Step 2.7: i goes from 1 to N, and server s uses the key Encrypted vector dws The i-th element in gets the vector cdw s , update mailbox database D s Contents in

[0065] Step 2.8: When the number of address ciphertext vectors received by server s is not less than t, it selects a random time to publish all the address ciphertext vectors and corresponding indexes received during this period to the bulletin board M in a random order.

[0066] Step 3: Receiving institution J reads the report message in its mailbox;

[0067] In one embodiment, the specific implementation of step 3 includes the following sub-steps:

[0068] Step 3.1: Acceptance institution J with index j uses the key Decrypt mailbox database D A Addr j Data get Use key Decrypt mailbox database D B Addr j Data get

[0069] Step 3.2: Calculation Restore email content;

[0070] Step 3.3: s∈{A,B}, server s will Content is set to use the key The ciphertext after the encrypted data 0.

[0071] Step 4: The receiving institution J sends the reply message and the index in the report message as the reply content to the server; the server reads the reporter's email address component from the bulletin board based on the index and writes the reply message into the mailbox database;

[0072] In one embodiment, the specific implementation of step 4 includes the following sub-steps:

[0073] Step 4.1: The index is j, and the acceptance institution J reads the email content cont j The key in Use AES encryption algorithm to encrypt reply message mess p Get cmess p ,Will Send to server A, Sent to server B; The content of the email sent by the receiving agency J to the whistleblower P;

[0074] Step 4.2: k∈{a,b}, s∈{A,B}, server s according to the index Find the reply address ciphertext vector in the bulletin board M {A,B} / s means subtracting element s from the set {A,B}; when s is server A, find When s is server B, find Calculate the shared key g with the message sender P kx , decrypted using the AES decryption algorithm Get vector

[0075] Step 4.3: Server s calculation Where i = addr p When satisfied i∈{1,…,N} / addr p When satisfied

[0076] Step 4.4: Server S executes steps 2.6 and 2.7 to update mailbox database D. s .

[0077] Step 5: Reporter P reads the reply message.

[0078] In one embodiment, the specific implementation of step 5 includes the following sub-steps:

[0079] Step 5.1: The reporter P with index p executes steps 3.1 and 3.2 to obtain the email content The server executes step 3.3 to update the mailbox database;

[0080] Step 5.2: The reporter P identifies turn up Decrypt cmess using the AES decryption algorithm p Get reply message mess p .

[0081] This embodiment also provides an anonymous communication device based on secret sharing, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the program, the anonymous communication method based on secret sharing is implemented.

[0082] This embodiment further provides an anonymous communication product based on secret sharing, including a computer program. When the computer program is executed by a processor, the anonymous communication method based on secret sharing is implemented.

[0083] The present invention is further described below through specific experiments.

[0084] Evaluate the performance of the receiving agency sending emails and the server writing emails to the database. Set the message size to 1KB, 10KB, 20KB, 30KB, and the number of mailboxes to 2. 10 , 2 12 , 2 14 , 2 16 , 2 18 First, we conduct a comparative test on the performance of the receiving agency in sending emails. Figure 3 As shown in the figure, the computing overhead of the receiving agency is mainly concentrated in the encryption operation of the message, which is independent of the number of mailboxes and proportional to the message size. Under the condition that the number of mailboxes and message size remain consistent, the computing overhead of the receiving agency sending emails is significantly lower than that of the Express solution, reducing by about 60%.

[0085] Next, we test the computational overhead of the server writing emails to the database. Figure 4 As shown in the figure, as the number of mailboxes and message size increases, the computational overhead gradually increases, and the computational overhead of the server writing the whistleblower's email is roughly the same as that of the Express solution. The computational overhead of writing the receiving agency's email is less than that of the whistleblower and Express solutions, reducing by about 50%.

[0086] It should be understood that the embodiments described above are only some of the embodiments of the present invention, rather than all of the embodiments. In addition, the technical features of the various embodiments or individual embodiments provided by the present invention may be arbitrarily combined with each other to form a feasible technical solution. Such combination is not restricted by the order of steps and / or structural composition mode, but must be based on the ability of ordinary technicians in this field to implement it. When the combination of technical solutions is mutually inconsistent or cannot be implemented, it should be deemed that such combination of technical solutions does not exist and is not within the scope of protection claimed by the present invention.

[0087] It should be understood that the above description of the preferred embodiment is relatively detailed and cannot be regarded as limiting the scope of protection of the patent of the present invention. Under the guidance of the present invention, ordinary technicians in this field can also make substitutions or modifications without departing from the scope of protection of the claims of the present invention, which all fall within the scope of protection of the present invention. The scope of protection requested by the present invention shall be based on the attached claims.

Claims

1. An anonymous communication method based on secret sharing, including two non-colluding servers A and B, each server has its own mailbox database D A and D B , a bulletin board M, N users, users include message sender P and message receiver J; The method comprises the following steps: Step 1: The two servers generate public and private keys for key negotiation, assign an index and email address to each user, and each user generates a symmetric key for encrypting the contents of the mailbox database. Step 2: The message sender P performs secret sharing and distributed point function on his / her email address and email content, and then sends them to the server; the server writes the corresponding message to the mailbox database and bulletin board; The specific implementation of step 2 includes the following sub-steps: Step 2.1: The message sender P with index p generates two random vectors and Where i = addr p When satisfied i∈{1,…,N} / addr p When satisfied Among them, each user is assigned an identification index i∈[1,N] and an email address addr i ∈[1,N]; Step 2.2: Generate two random numbers and as indices into two random vectors; Step 2.3: Generate private key x and public key g x , calculate the shared key g with server A ax , encrypt the vector using the AES encryption algorithm Get the address ciphertext vector Calculate the shared key g with server B bx , encrypt the vector using the AES encryption algorithm Get the address ciphertext vector Step 2.4: Mess the message j When sending a message to the message receiver J with index j, a random number is generated for the message receiver J As an identifier, generate a symmetric key Encrypt the reply message and use the distributed point function key generation algorithm to generate the key according to the email address addr of the message recipient. j and email content j Generate a pair of shared function keys and Will Send to server A, Sent to server B; Step 2.5: i ranges from 1 to N, s∈{A,B}, and server s uses a distributed point function evaluation algorithm to calculate The value at point i, get the vector Where i = addr j When satisfied i∈{1,…,N} / addr j When satisfied Step 2.6: i ranges from 1 to N, s∈{A,B}, and the server s uses the key Decryption Vector The i-th element in Get vector Calculate dw s =dw s +mw s Update dw s ; Among them cdw s Is the server s mailbox database D s Contents in Step 2.7: i goes from 1 to N, and server s uses the key Encrypted vector dw s The i-th element in gets the vector cdw s , update mailbox database D s Contents in Step 2.8: When the number of address ciphertext vectors received by server s is not less than t, it selects a random time and publishes all the address ciphertext vectors and corresponding indices received during that period in a random order to the bulletin board M; Step 3: Message receiver J reads the message in his mailbox; Step 4: Message receiver J sends the reply message and the index in the received message as the reply content to the server; the server reads the message sender's email address component from the bulletin board based on the index and writes the reply message to the mailbox database; Step 5: The message sender P reads the reply message.

2. The anonymous communication method based on secret sharing according to claim 1, characterized in that: The specific implementation of step 1 includes the following sub-steps: Step 1.1: Server A generates private key a and public key g a , server B generates private key b and public key g b ; Two servers A and B jointly negotiate the message threshold t for publishing a message on the bulletin board M; Step 1.2: As i increases from 1 to N, user i executes the AES key generation algorithm to generate two symmetric keys. and Will Send to server A, Send to server B; Step 1.3: i increases from 1 to N, and server A transfers mailbox database D A The content of the i-th item is set to use the key After encrypting data 0, server B will send the ciphertext to mailbox database D B The content of the i-th item is set to use the key The ciphertext after the encrypted data 0.

3. The anonymous communication method based on secret sharing according to claim 1, characterized in that: The specific implementation of step 3 includes the following sub-steps: Step 3.1: Receiver J of message index j uses the key Decrypt mailbox database D A Addr j Data get Use key Decrypt mailbox database D B Addr j Data get Step 3.2: Calculation Restore email content; Step 3.3: s∈{A,B}, server s will Content is set to use the key The ciphertext after the encrypted data 0.

4. The anonymous communication method based on secret sharing according to claim 3, characterized in that: The specific implementation of step 4 includes the following sub-steps: Step 4.1: Index is j message receiver J reads the email content cont j The key in Use AES encryption algorithm to encrypt reply message mess p Get cmess p ,Will Send to server A, Sent to server B; The content of the email sent by the message receiver J to the message sender P; Step 4.2: k∈{a,b}, s∈{A,B}, server s according to the index Find the reply address ciphertext vector in the bulletin board M {A,B} / s means subtracting element s from the set {A,B}; when s is server A, find When s is server B, find Calculate the shared key g with the message sender P kx , decrypted using the AES decryption algorithm Get vector Step 4.3: Server s calculation Where i = addr p When satisfied i∈{1,…,N} / addr p When satisfied Step 4.4: Server S executes steps 2.6 and 2.7 to update mailbox database D. s .

5. The anonymous communication method based on secret sharing according to claim 4, characterized in that: The specific implementation of step 5 includes the following sub-steps: Step 5.1: The message sender P with index p executes steps 3.1 and 3.2 to obtain the email content. The server executes step 3.3 to update the mailbox database; Step 5.2: The message sender P identifies turn up Decrypt cmess using the AES decryption algorithm p Get reply message mess p .

6. An anonymous communication device based on secret sharing, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the program, the anonymous communication method based on secret sharing according to any one of claims 1 to 5 is implemented.

7. An anonymous communication product based on secret sharing, comprising a computer program, characterized in that: When the computer program is executed by a processor, the anonymous communication method based on secret sharing according to any one of claims 1 to 5 is implemented.

Citation Information

Patent Citations

  • Search and access pattern hiding verifiable searchable encryption for distributed settings with malicious servers

    US20220198048A1

  • Distributed, Private, Sparse Histograms in the Two-Server Model

    US20230327850A1