Anonymous communication method, device and product based on secret sharing
Through anonymous communication method based on secret sharing, using the mailbox database and bulletin board of the two servers, the message delivery and reply in anonymous communication is realized, solving the problem that the existing technology cannot maintain identity anonymity, reducing computing overhead and improving Anonymity.
Patent Information
- Application Number
- CN202411309437.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-19
- Publication Date
- 2025-01-07
- Estimated Expiration
- 2044-09-19
AI Technical Summary
The existing anonymous communication technology cannot effectively resist passive traffic analysis attacks such as traffic association analysis and web fingerprint recognition, and in point-to-point communication scenarios, both parties to the communication cannot maintain their identity anonymity.
Using anonymous communication method based on secret sharing, through two unconspiring servers A and B, each server has its own mailbox database, using public and private keys for key negotiation, and the user generates a symmetric key for mailbox database content encryption , and messaging and replying through bulletin boards to ensure the identity anonymity of the sender and receiver of the message.
It realizes the reduction of computational overhead in anonymous reporting and reply scenarios, improves anonymity, ensures the anonymity of the whistleblower identity, and significantly reduces the computational overhead of the acceptance agency sending emails and server writing to the database.
Smart Images

Figure CN119276546A_ABST
Abstract
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 conduct cross-regional instant communication through the Internet, but this has also caused increasingly serious information security issues. Usually, the confidentiality of data content in network communications is usually achieved through methods such as the TLS protocol, but in an uncontrolled environment, any individual with eavesdropping capabilities can obtain the metadata generated in the communication and thus understand the relevant privacy information. Communication metadata is a type of additional data with descriptive and explanatory functions, including the identities of the communicating parties, communication time, and other information. It is crucial to protect the privacy of metadata in communications.
[0003] As a defensive measure to protect communication metadata, anonymous communication technology can hide the relationship between the two parties in communication and ensure that attackers cannot associate the data sender and the data receiver. Onion routing networks represented by Tor use a series of relay servers to proxy the user's traffic to hide the user's identity. Due to its simple configuration and excellent performance, it has become one of the most widely used anonymous communication systems. However, this type of network cannot effectively resist passive traffic analysis attacks such as traffic correlation analysis and web fingerprinting. The anonymous broadcast model can resist traffic analysis and allow the data sender to post messages to the bulletin board anonymously. Users can freely access and read the information they are interested in. It is suitable for group communication scenarios. The anonymous mailbox model can also resist traffic analysis and allow users to send messages to a pre-registered mailbox. The mailbox owner can access and read the corresponding email content. It is suitable for point-to-point communication scenarios, but when sending messages, it is necessary to know the email address of the data receiver, and there is a problem that the identities of the two parties in communication cannot be kept anonymous. 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, the 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 indexes and email addresses 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 sends them to the server; the server writes the corresponding message into the mailbox database and bulletin board;
[0009] Step 3: Message receiver J reads the message in his mailbox;
[0010] Step 4: The 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 email address component of the message sender from the bulletin board according to the index and writes the reply message into 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 ; The 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 i-th content is set to use the key After encrypting data 0, server B will send the ciphertext to mailbox database D B The i-th content 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 sender P of the message with index p generates two random vectors and Where i = addr pWhen, meet i∈{1,…,N} / addr p When, meet
[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 to message receiver J with index j, a random number is generated for 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 encrypted reply message according to the email address addr of the message recipient. j and the email content j Generate a pair of shared function keys and Will Send to server A, Sent to server B;
[0021] Step 2.5: As i increases from 1 to N, s∈{A,B}, server s uses a distributed point function evaluation algorithm to calculate The value at point i, we get the vector Where i = addr j When, meet i∈{1,…,N} / addr j When, meet
[0022] Step 2.6: i increases from 1 to N, s∈{A,B}, and server s uses the key Decryption Vector The i-th element in Get vector Calculate dw s =dw s +mw s Update dws ; where cdw s Is the server s mailbox database D s Contents in
[0023] Step 2.7: i increases 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, a random time is selected to publish all 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: Message receiver J with index j uses 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 Recover 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, the message recipient 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 that the message receiver J replies to the message sender P;
[0031] Step 4.2: k∈{a,b}, s∈{A,B}, server s Find the reply address ciphertext vector in 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, meet i∈{1,…,N} / addr p When, meet
[0033] Step 4.4: Server S executes Step 2.6 and Step 2.7 to update the 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 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 executable 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, and when the computer program is executed by a processor, the anonymous communication method based on secret sharing is implemented.
[0039] Compared with the prior art, the advantages and positive effects of the present invention are mainly reflected in the following aspects:
[0040] (1) The present invention designs an anonymous reporting and replying scheme suitable for anonymous communication. The scheme reduces the computational overhead of replying while ensuring the anonymity of the data sender and the reporter.
[0041] (2) The present invention uses secret sharing and encryption technology to hide the whistleblower's email address, ensuring that the whistleblower's identity remains anonymous when the relevant receiving agency responds to the whistleblower, thereby improving the anonymity of the solution. BRIEF DESCRIPTION OF THE DRAWINGS
[0042] The technical solution of this invention is further described below using embodiments and specific implementation methods. In addition, some drawings are also used in the process of describing the technical solution. For those skilled in the art, other drawings and the intention of the invention can also be obtained based on these drawings without paying creative labor.
[0043] Figure 1 It is an overall framework diagram of an embodiment of the present invention.
[0044] Figure 2 The figure is a flow chart of a method according to an embodiment of the present invention.
[0045] Figure 3 The computational overhead of sending emails to the receiving institution in the embodiment of the present invention
[0046] Figure 4 This is the computational overhead of the server in this embodiment of the present invention writing user emails into the database. DETAILED DESCRIPTION
[0047] In order to make the technical means and effects of the present invention easier for those skilled in the art to understand and implement, the present invention is further described in detail below in conjunction with the embodiments and drawings. It should be understood that the implementation examples described herein are only used to illustrate and explain 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 revealing personal information to relevant receiving agencies. Therefore, in anonymous communication systems, how to enable the receiving agency to reply to the reporter while maintaining the anonymity of the reporter's identity is an urgent problem that needs to be solved.
[0049] To solve the above technical problems, please see Figure 1 and Figure 2 The present embodiment provides an anonymous whistleblower reply method based on secret sharing, including two non-colluding servers A and B, each server having its own mailbox database D A and D B , a bulletin board M, N users, can be divided into reporters P and receiving agencies J according to the content of the messages sent;
[0050] The method comprises the following steps:
[0051] Step 1: The two servers generate public and private keys for key negotiation, assign indexes and email addresses 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 for 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 i-th content is set to use the key After encrypting data 0, server B will send the ciphertext to mailbox database D B The i-th content 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 email address and email content and 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, meet i∈{1,…,N} / addr p When, meet
[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 acceptance institution J with index j, a random number is generated for 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 encrypted reply message according to the email address addr of the receiving institution. j and the email content j Generate a pair of shared function keys and Will Send to server A, Sent to server B;
[0062] Step 2.5: As i increases from 1 to N, s∈{A,B}, server s uses a distributed point function evaluation algorithm to calculate The value at point i, we get the vector Where i = addr j When, meet i∈{1,…,N} / addr j When, meet
[0063] Step 2.6: i increases from 1 to N, s∈{A,B}, and server s uses the key Decryption Vector The i-th element in Get vector Calculate dw s =dw s +mw s Update dw s ; where cdw s Is the server s mailbox database D s Contents in
[0064] Step 2.7: i increases 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, a random time is selected to publish all address ciphertext vectors and corresponding indexes received during this period to the bulletin board M in a random order.
[0066] Step 3: The receiving institution J reads the report message in its mailbox;
[0067] In one implementation, the specific implementation of step 3 includes the following sub-steps:
[0068] Step 3.1: The receiving 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 Recover 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 according to the index and writes the reply message into the email database;
[0072] In one implementation, the specific implementation of step 4 includes the following sub-steps:
[0073] Step 4.1: The receiving institution J with index 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 from the receiving agency J to the reporter P;
[0074] Step 4.2: k∈{a,b}, s∈{A,B}, server s Find the reply address ciphertext vector in 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, meet i∈{1,…,N} / addr p When, meet
[0076] Step 4.4: Server S executes Step 2.6 and Step 2.7 to update the 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 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, wherein the processor implements the anonymous communication method based on secret sharing when executing the program.
[0082] This embodiment further provides an anonymous communication product based on secret sharing, including a computer program, and 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 mails. Figure 3 As shown in the figure, the computing overhead of the receiving agency is mainly concentrated on the encryption operation of the message, which is independent of the number of mailboxes and is proportional to the message size. Under the condition that the number of mailboxes and the message size remain consistent, the computing overhead of the receiving agency sending emails is significantly lower than that of the Express solution, reduced by about 60%.
[0085] Next, we test the computational overhead of the server writing mail to the database. Figure 4 As shown in the figure, as the number of mailboxes and the size of messages increase, 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 part of the embodiments of the present invention, rather than all of the embodiments. In addition, the technical features in the various embodiments or single embodiments provided by the present invention can be combined with each other arbitrarily to form a feasible technical solution. Such combination is not restricted by the sequence of steps and / or the structural composition mode, but must be based on the ability of ordinary technicians in the field to implement. When the combination of technical solutions is contradictory or cannot be implemented, it should be considered that such combination of technical solutions does not exist and is not within the protection scope required 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 patent protection of the present invention. Under the enlightenment 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 for 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, the 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 indexes and email addresses 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 sends them to the server; the server writes the corresponding message into the mailbox database and bulletin board; Step 3: Message receiver J reads the message in his mailbox; Step 4: The 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 email address component of the message sender from the bulletin board according to the index and writes the reply message into 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 ; The 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]; 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 i-th content is set to use the key After encrypting data 0, server B will send the ciphertext to mailbox database D B The i-th content 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 2, characterized in that: The specific implementation of step 2 includes the following sub-steps: Step 2.1: The sender P of the message with index p generates two random vectors and Where i = addr p When, meet When, meet 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 to message receiver J with index j, a random number is generated for 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 encrypted reply message according to the email address addr of the message recipient. j and the email content j Generate a pair of shared function keys and Will Send to server A, Sent to server B; Step 2.5: As i increases from 1 to N, s∈{A,B}, server s uses a distributed point function evaluation algorithm to calculate The value at point i, we get the vector Where i = addr j When, meet When, meet Step 2.6: i increases from 1 to N, s∈{A,B}, and server s uses the key Decryption Vector The i-th element in Get vector Calculate dw s =dw s +mw s Update dw s ; where cdw s Is the server s mailbox database D s Contents in Step 2.7: i increases 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, a random time is selected to publish all address ciphertext vectors and corresponding indexes received during this period to the bulletin board M in a random order.
4. The anonymous communication method based on secret sharing according to claim 3, characterized in that: The specific implementation of step 3 includes the following sub-steps: Step 3.1: Message receiver J with index j uses 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 Recover 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.
5. The anonymous communication method based on secret sharing according to claim 4, characterized in that: The specific implementation of step 4 includes the following sub-steps: Step 4.1: Index is j, the message recipient 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 that the message receiver J replies to the message sender P; Step 4.2: k∈{a,b}, s∈{A,B}, server s Find the reply address ciphertext vector in bulletin board M Where {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, meet When, meet Step 4.4: Server S executes Step 2.6 and Step 2.7 to update the mailbox database D s .
6. The anonymous communication method based on secret sharing according to claim 5, 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 AES decryption algorithm p Get reply message mess p .
7. 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 as claimed in any one of claims 1 to 6 is implemented.
8. 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 as claimed in any one of claims 1 to 6 is implemented.
Citation Information
Patent Citations
Mediation server, control method therefor, communication device, control method therefor, communication system, and computer program
CN103069888A
Calculation-controllable multi-party security credit assessment method and device
CN116596658A
Function secret sharing construction method for interval inclusion function
CN118337381A
Managing network connected devices
US20190158353A1
Search and access pattern hiding verifiable searchable encryption for distributed settings with malicious servers
US20220198048A1