A method, system, device and medium for oblivious transmission based on secret sharing

By introducing a method based on secret sharing in the inadvertent transmission protocol, the message selection and encrypted transmission of complex logical relationships is solved, and the lack of transmission efficiency and security in the existing technology in complex logic and large-scale environments is achieved, and efficient Safe and flexible information transmission.

CN119071089BActive Publication Date: 2025-02-11BEIJING YINSUAN TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411554667.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-04
Publication Date
2025-02-11
Estimated Expiration
2044-11-04

AI Technical Summary

Technical Problem

The existing inadvertent transmission protocol cannot effectively support the selection of messages under complex logical relationships, which makes it seem unscrupulous in scenarios where detailed control of information transmission is required. Moreover, when dealing with a large number of options or complex logical conditions, the communication overhead and computing burden are significantly increased, making it difficult for the system to Flexible response to changing application needs.

Method used

Using an inadvertent transmission method based on secret sharing, by defining the logical rules of the sender and receiver of the message and setting them into a standard form, data packets under multiple different message combinations are generated and filled with virtual data. Combining the pre-generated random array, a secret sharing algorithm is used to generate subkeys, each data packet is encrypted, and the inadvertent transmission protocol is allowed to decrypt the required data by a select b.

Benefits of technology

It realizes the message transmission of arbitrary logical expressions while maintaining privacy between both parties, enhances the security and flexibility of information transmission, reduces system maintenance costs, and improves the ability to adapt to large-scale and dynamic environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119071089B_ABST
    Figure CN119071089B_ABST
Patent Text Reader

Abstract

The present invention provides an oblivious transmission method based on secret sharing, comprising the following steps: defining the logic rules of a message sender and a message receiver, and setting them in a standard form; based on the logic rules in the standard form, generating data packets under multiple different message combinations, and using virtual data to fill them; combining a pre-generated random array, generating a subkey corresponding to the filled data packet through a secret sharing algorithm; encrypting each data packet, and sending the encrypted data packet to the message receiver; the message receiver reconstructs a symmetric key through a secret sharing algorithm based on b random numbers under the a-choose-b oblivious transmission protocol, decrypts the encrypted data packet, and obtains the corresponding plaintext data. The method combines secret sharing with the oblivious transmission protocol, supports message selection under complex logic, and enhances the security, flexibility and efficiency of data transmission.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of ciphertext data transmission, and more specifically to an oblivious transmission method, system, device and medium based on secret sharing. Background Art

[0002] Against the backdrop of the rapid development of modern information technology, security and privacy protection in the field of encrypted data transmission are particularly important.

[0003] As an important basic protocol for secure multi-party computing, the Oblivious Transfer (OT) protocol allows the message receiver to select and obtain specific items from a set of information without the message sender knowing which item was selected. However, traditional OT protocols have significant limitations when facing data transmission requirements with complex logical relationships.

[0004] In existing oblivious transfer protocols, such as 2-choose-1 or a-choose-b oblivious transfer protocols, the message sender can only control the message receiver to select one or more messages from a fixed number of messages. However, in actual application scenarios, the selection of messages often needs to follow specific logical rules. For example, some messages may be mutually exclusive (for example, similar products of different brands cannot be recommended at the same time on an e-commerce platform), or some messages must be bundled together (for example, matching accessories must be recommended at the same time when purchasing electronic devices). Existing oblivious transfer protocols cannot directly support this kind of message selection based on arbitrary logical expressions, which makes them incapable of being used in scenarios where fine control of information transmission is required.

[0005] In addition, when a large number of options or complex logical conditions are involved, the use of a simple a-choose-b oblivious transfer protocol will result in a significant increase in communication overhead and computational burden. As the number of participating messages increases, the number of data packets required to ensure that every possible combination of choices is considered will increase exponentially, which not only increases storage requirements but also increases the time cost of data transmission. And for each newly added message item or logical rule, the entire transmission process may need to be redesigned, making it difficult for the system to flexibly respond to changing application requirements, limiting its practicality in large-scale, dynamic environments.

[0006] Although it can ensure that the message sender does not know which message the message receiver has selected, it may expose additional information to unexpected parties when processing information with complex dependencies. For example, if two messages are mutually exclusive and are mistakenly provided to the message receiver together, important clues about the message sender's strategy or data structure may be leaked. Furthermore, if the key distribution process is not properly managed, attackers may be able to infer some sensitive information by analyzing encrypted traffic patterns. These issues highlight the limitations of current solutions in ensuring comprehensive privacy and security, especially when faced with malicious actors trying to disrupt the normal operation of the protocol.

[0007] Therefore, how to design an oblivious transmission method based on secret sharing to achieve message transmission of arbitrary logical expressions while maintaining the privacy of both parties and enhancing the security and flexibility of information transmission is an urgent problem that technical personnel in this field need to solve. Summary of the invention

[0008] In view of this, the present invention provides an oblivious transmission method based on secret sharing, which not only enhances the privacy protection capability during data transmission and ensures the confidentiality and integrity of information transmission, but also improves the adaptability and efficiency of data transmission by flexibly handling complex logical relationships.

[0009] In order to achieve the above object, the present invention adopts the following technical solution:

[0010] In a first aspect, the present invention provides an oblivious transmission method based on secret sharing, comprising the following steps:

[0011] S1. Define the logic rules of the message sender and the message receiver, and set the logic rules to a standard form;

[0012] S2, based on the logical rules in the standard form, generate data packets under multiple different message combinations, and use virtual data to fill them;

[0013] S3, combining the pre-generated random array, and generating a subkey corresponding to the padded data packet through a secret sharing algorithm;

[0014] S4, the message sender encrypts each data packet using the subkey, and sends the encrypted data packet to the message receiver;

[0015] S5. The message receiver reconstructs the symmetric key based on the b random numbers in the a-choose-b oblivious transfer protocol through a secret sharing algorithm, decrypts the encrypted data packet, and obtains the corresponding plaintext data.

[0016] Furthermore, in S1, the logic rules of the message sender and the message receiver are respectively a logical expression composed of a group of Boolean logic operators, which are used to specify the pre-sent message combination and the pre-received message combination.

[0017] Furthermore, the logic rules of the message sender and the message receiver are determined based on mutually exclusive relationships and dependency relationships;

[0018] The mutually exclusive relationship indicates that there are two or more messages that cannot be sent to the message receiver at the same time;

[0019] The dependency relationship indicates that there is a message sent to a message receiver that depends on other messages being sent to the message receiver at the same time.

[0020] Furthermore, in S1, setting the logic rule to a standard form includes:

[0021] For any logical expression , converted to include and The logical expression is:

[0022]

[0023] Will include and The logical expression is transformed into only The logical expression of the standard form is obtained ;

[0024] in, Indicates any message; Indicates that Indicates or Indicates no.

[0025] Furthermore, in S2, virtual data is used for completion, including:

[0026] S21, adding the number of messages to o+p; wherein o represents the number of original messages, and p represents the difference between the length of the longest data packet and the shortest data packet;

[0027] S22. Based on the p supplemented virtual data, the other data packets except the longest data packet are padded to obtain a plurality of data packets of equal length.

[0028] Furthermore, in S3, the secret sharing algorithm is:

[0029]

[0030] Among them, H() represents the hash function, ⊕ represents the XOR operation, r1 、r 2 ……r d Represents a pregenerated random number.

[0031] Furthermore, in S4, each data packet is encrypted by the subkey, including:

[0032] Define each subkey as the encryption key for the corresponding data packet;

[0033] The AES symmetric encryption algorithm is used to encrypt the plaintext data P in each data packet using the encryption key. text Encrypt and obtain the corresponding ciphertext data C text :

[0034] C text =(P text ,Key,Mode,IV)

[0035] Among them, Mode represents the working mode of the AES symmetric encryption algorithm, and IV represents the initialization vector of the AES symmetric encryption algorithm.

[0036] In a second aspect, the present invention provides an oblivious transmission system based on secret sharing, comprising:

[0037] Logical rule standardization module: used to define the logical rules of the message sender and the message receiver, and set the logical rules to a standard form;

[0038] Data packet generation and completion module: used to generate data packets with multiple different message combinations based on the logical rules in the standard form, and use virtual data to complete them;

[0039] Subkey generation module: used to generate a subkey corresponding to the padded data packet by combining a pre-generated random array through a secret sharing algorithm;

[0040] Encryption and transmission module: used for the message sender to encrypt each data packet using the subkey and send the encrypted data packet to the message receiver;

[0041] Key reconstruction and decryption module: It is used by the message receiver to reconstruct the symmetric key based on b random numbers in the a-choose-b oblivious transfer protocol through a secret sharing algorithm, decrypt the encrypted data packet, and obtain the corresponding plaintext data.

[0042] In a third aspect, the present invention provides an electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the above-mentioned oblivious transmission method based on secret sharing when executing the computer program.

[0043] In a fourth aspect, the present invention provides a computer-readable storage medium, wherein the storage medium stores a computer program, and when the computer program is executed by a processor, the above-mentioned oblivious transmission method based on secret sharing is implemented.

[0044] The descriptions of the second to fourth aspects of the present invention can refer to the detailed description of the first aspect; and the beneficial effects of the descriptions of the second to fourth aspects can refer to the analysis of the beneficial effects of the first aspect, which will not be repeated here.

[0045] It can be seen from the above technical solution that compared with the prior art, the present invention has the following beneficial effects:

[0046] 1. This method can precisely control which message combinations can be sent and how to process received messages by defining logical rules between message senders and message receivers and converting these rules into standard forms. It not only supports complex conditional delivery logic (such as mutual exclusion and dependency), but also allows the system to dynamically adjust the message sending strategy according to actual needs.

[0047] 2. Generate subkeys through secret sharing algorithm and use AES symmetric encryption algorithm to encrypt data packets. Since each data packet is encrypted with an independent subkey, even if an attacker can intercept a data packet, he cannot easily decrypt the contents of other data packets. Combined with the a-choose-b oblivious transfer protocol, the message receiver can only decrypt and obtain the data that it is allowed to access, but cannot know the content of unauthorized data, thereby protecting the confidentiality and integrity of the information.

[0048] 3. When the number of messages changes, a new set of subkeys can be generated by simply re-executing the corresponding secret sharing process without completely changing the architecture of the entire system. This provides good scalability for the system, enabling it to adapt to the growing amount of data and more complex security requirements, while also reducing maintenance costs. BRIEF DESCRIPTION OF THE DRAWINGS

[0049] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without paying creative work.

[0050] Figure 1 A flow chart of an oblivious transmission method based on secret sharing provided by an embodiment of the present invention;

[0051] Figure 2 A schematic diagram of a process of using virtual data to complete a task provided by an embodiment of the present invention;

[0052] Figure 3 A schematic diagram of data comparison before and after data filling using virtual data provided by an embodiment of the present invention;

[0053] Figure 4 A framework diagram of an oblivious transmission system based on secret sharing provided by an embodiment of the present invention;

[0054] Figure 5 A schematic diagram of the structure of an electronic device is provided for an embodiment of the present invention. DETAILED DESCRIPTION

[0055] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0056] The oblivious transmission method provided in the embodiment of the present application can be applied to an oblivious transmission server. The above-mentioned oblivious transmission server can be hardware or software. When the oblivious transmission server is hardware, it can be implemented as a distributed server cluster that provides oblivious transmission services, or it can be implemented as a single server. When the oblivious transmission server is software, it can be installed in the servers listed above. It can be implemented as multiple software or software modules, or it can be implemented as a single software or software module, which is not specifically limited here.

[0057] Embodiment 1;

[0058] like Figure 1 As shown, this embodiment provides an oblivious transmission method based on secret sharing, comprising the following steps:

[0059] S1. Define the logic rules of the message sender and the message receiver, and set the logic rules to a standard form;

[0060] S2, based on the logical rules in the standard form, generate data packets under multiple different message combinations, and use virtual data to fill them;

[0061] S3, combining the pre-generated random array, and generating a subkey corresponding to the padded data packet through a secret sharing algorithm;

[0062] S4, the message sender encrypts each data packet using the subkey, and sends the encrypted data packet to the message receiver;

[0063] S5. The message receiver reconstructs the symmetric key based on the b random numbers in the a-choose-b oblivious transfer protocol through a secret sharing algorithm, decrypts the encrypted data packet, and obtains the corresponding plaintext data.

[0064] This method defines logical rules, generates data packets of uniform length, and uses a secret sharing algorithm to create subkeys to encrypt these data packets. The message sender sends the encrypted data packet to the message receiver, who selects a random number based on the a-choose-b oblivious transfer protocol to reconstruct the symmetric key to decrypt the data, thereby achieving efficient and secure information transmission while protecting privacy. It combines the advantages of the oblivious transfer protocol and secret sharing technology, and can be applied to complex logical computing scenarios that require privacy protection.

[0065] The above steps and related technical features are further described in detail below:

[0066] In the present embodiment S1, the logic rules of the message sender and the message receiver are respectively logic expressions composed of a group of Boolean logic operators, which are used to specify the pre-sent message combination and the pre-received message combination.

[0067] The logic rules of the message sender and the message receiver are determined based on the mutual exclusion relationship and the dependency relationship;

[0068] The mutually exclusive relationship means that there are two or more messages that cannot be sent to the message recipient at the same time; for example, in an e-commerce recommendation system, if the platform does not want users to receive multiple product recommendations of the same category at the same time, then the relationship between these products constitutes a mutually exclusive relationship. Specifically, if product A and product B belong to the same category and should not appear in the recommendation list at the same time, then they are mutually exclusive.

[0069] The dependency relationship indicates that there is a message sent to the message recipient that depends on other messages being sent to the message recipient at the same time. For example, in a digital rights management system, if you want to access a premium video content, you may need to purchase a basic subscription service first; here, the acquisition of the premium video content depends on the existence of the basic subscription service. Therefore, there is a dependency relationship between the two messages.

[0070] By setting such logical rules, both parties can ensure that only message combinations that meet the established conditions will be transmitted, thereby achieving a more flexible information transmission process that meets business needs.

[0071] Furthermore, the logic rules are set to a standard form, including:

[0072] For any logical expression , converted to include and The logical expression is:

[0073]

[0074] Will include and The logical expression is transformed into only The logical expression of the standard form is obtained ;

[0075] in, Indicates any message; Indicates that Indicates or Indicates no.

[0076] This part converts the original expression into a standard form while keeping the original logical relationship unchanged. This is to simplify the processing of logical rules in subsequent steps, making it easier to apply secret sharing algorithms for encryption and transmission. It can ensure that in the actual transmission process, only message combinations that meet the logical rules will be correctly sent and received, thereby achieving the purpose of protecting privacy and improving transmission efficiency.

[0077] like Figure 2 As shown, in this embodiment S2, virtual data is used for filling, including:

[0078] S21, adding the number of messages to o+p; wherein o represents the number of original messages, and p represents the difference between the length of the longest data packet and the shortest data packet;

[0079] S22. Based on the p supplemented virtual data, the other data packets except the longest data packet are padded to obtain a plurality of data packets of equal length.

[0080] Specifically, suppose there are 3 original messages (i.e., o=3), namely M1, M2, and M3. The message combination generated according to the logic rule may generate data packets of different lengths, including: data packet 1 (M1, M2), data packet 2 (M1, M2, M3), and data packet 3 (M2). The longest data packet length is 3, and the shortest data packet length is 1. Therefore, p=3−1=2.

[0081] The number of messages is increased to 5, and the newly added virtual data are V1 and V2. The data packets are completed to obtain the completed data packets: data packet 1 (M1, M2, V1), data packet 2 (M1, M2, M3) and data packet 3 (M2, V1, V2).

[0082] In this embodiment S3, the secret sharing algorithm is:

[0083]

[0084] Among them, H() represents the hash function, ⊕ represents the XOR operation, r 1 、r 2 ……r d Represents a pregenerated random number.

[0085] Specifically, pre-generate d random numbers r 1 、r 2 ……r d , combined with each message in the data packet, a corresponding hash value is calculated using the hash function H().

[0086] And use XOR operation to XOR all hash values ​​bit by bit to get the final subkey; further, get the subkey corresponding to each data packet.

[0087] In this way, each data packet has a unique subkey for subsequent encryption. Due to the characteristics of the hash function, even if part of the subkey is known, the content of the original data packet cannot be inferred, further enhancing the security of the data.

[0088] Due to the irreversibility of the hash function, even if the hash value is known, the original random value cannot be directly restored unless all possible inputs are tried, which is almost impossible in practice. Therefore, this method effectively protects the confidentiality and integrity of data packets and symmetric keys.

[0089] In this embodiment S4, each data packet is encrypted by the subkey, including:

[0090] Define each subkey as the encryption key for the corresponding data packet;

[0091] The AES symmetric encryption algorithm is used to encrypt the plaintext data P in each data packet using the encryption key. text Encrypt and obtain the corresponding ciphertext data C text :

[0092] C text =(P text ,Key,Mode,IV)

[0093] Among them, Mode represents the working mode of the AES symmetric encryption algorithm, and IV represents the initialization vector of the AES symmetric encryption algorithm.

[0094] For each data packet, use its corresponding subkey Key and initialization vector IV, as well as the selected working mode Mode, to perform a text Perform AES encryption operation to obtain ciphertext data C text .

[0095] Ciphertext data Ctext It includes the encrypted data, subkey Key, working mode Mode and initialization vector IV, so that the message recipient can correctly restore the plaintext data when decrypting.

[0096] In this way, each data packet is encrypted into a complete ciphertext data packet, containing all the information required for encryption.

[0097] Furthermore, after preparing all encrypted data packets, the message sender sends all encrypted packets to the receiver (all encrypted data packets cannot be decrypted without the symmetric key), and at the same time uses a random array to perform an a-choose-b oblivious transfer protocol (controlling the receiver's b random numbers to ensure that only one symmetric key can be reconstructed using the secret sharing algorithm, and ensuring that the receiver can only decrypt one data packet). This process ensures the privacy of the message receiver's selection, that is, the message sender will not know which specific messages the message receiver has selected.

[0098] In this embodiment S5, the message receiver reconstructs a symmetric key based on b random numbers in the a-choose-b oblivious transfer protocol through a secret sharing algorithm, decrypts the encrypted data packet, and obtains the corresponding plaintext data.

[0099] Specifically, the message receiver obtains b random numbers based on the a-choose-b oblivious transfer protocol, which correspond to the random numbers used by the message sender to generate the subkey. The message receiver uses the secret sharing algorithm and uses the b random numbers to reconstruct the final symmetric key.

[0100] After obtaining the symmetric key, the message receiver can start decrypting the received encrypted data packets. The same algorithm, working mode, and initialization vector as those used for encryption need to be used for decryption. Since each data packet may be encrypted with a different subkey, the message receiver must ensure that the correct key is used to decrypt each data packet.

[0101] If the sender of the message adds additional security measures when encrypting, such as MAC (message authentication code) or hash value to protect data integrity, then the receiver of the message needs to verify this information after decryption to ensure that no tampering has occurred. If any anomalies are detected, the data packet should be stopped from being processed and appropriate measures should be taken to deal with potential security threats.

[0102] Once decryption is successful and the integrity of the data is confirmed, the message recipient can extract the original plaintext data from the decrypted data packet. This plaintext data conforms to the logical expression previously agreed upon by both parties and is limited to the data packet content selected by the message recipient.

[0103] Embodiment 2;

[0104] In e-commerce recommendation systems, sellers (message senders) want to recommend products based on buyers' preferences while protecting buyers' privacy and avoiding directly exposing their interests. Buyers (message receivers) want to obtain product recommendations that meet their logical rules without exposing their selection preferences. To this end, we use an oblivious transfer method based on secret sharing to ensure efficient product recommendations while protecting the privacy of both parties.

[0105] 1) Define the logic rules for the message sender and the message receiver, and set the logic rules to a standard form;

[0106] Specifically, there are 5 products m 1 、m 2 、m 3 、m 4 and m 5 , the seller’s logic rule is “m 2 and m 4 Cannot recommend at the same time, m 3 and m 5 Cannot recommend and recommend at the same time 1 When you need to attach m 2 、m 2 Cannot be recommended alone as well as m 4 Cannot recommend alone. ”

[0107] That is, the seller’s logical rule is:

[0108] (m 1 m 2 m 3 ) (m 1 m 2 m 5 ) (m 1 m 2 ) (m 2 m 3 ) (m 2 m 5 ) (m 3 m 4 ) (m 4 m 5 ) m3 m 5 ;

[0109] The buyer's logical rule is (m 1 m 2 m 3 ) (m 3 m 4 ) m 5 .

[0110] Furthermore, the logical rules in the seller standard form are: (m 1 m 2 m 3 )、(m 1 m 2 m 5 )、(m 1 m 2 )、(m 2 m 3 )、(m 2 m 5 )、(m 3 m 4 )、(m 4 m 5 )、m 3、 m 5 ;

[0111] The logical rule in the buyer's standard form is: 1 m 2 m 3 )、(m 3 m 4 )、m 5 .

[0112] 2) Based on the logical rules in the standard form, multiple data packets with different message combinations are generated and supplemented with virtual data;

[0113] Specifically, based on the logical rules in the standard form of sellers and buyers, multiple data packets under different message combinations are generated, including: (m 1 m2 m 3 )、(m 1 m 2 m 5 )、(m 1 m 2 )、(m 2 m 3 )、(m 2 m 5 )、(m 3 m 4 )、(m 4 m 5 )、m 3、 m 5。

[0114] like Figure 3 As shown, the completed data packet includes: (m 1 m 2 m 3 )、(m 1 m 2 m 5 )、(m 1 m 2 m 6 )、(m 2 m 3 m 6 )、(m 2 m 5 m 6 )、(m 3 m 4 m 6 )、(m 4 m 5 m 6 )、(m 3 m 6 m 7 ) 、 (m5 m 6 m 7 ) 。

[0115] 3) Combined with the pre-generated random array, a subkey corresponding to the padded data packet is generated through a secret sharing algorithm;

[0116] The generated subkeys include:

[0117]

[0118] 4) The message sender encrypts each data packet using the subkey and sends the encrypted data packet to the message receiver;

[0119] Specifically, the above subkey key 1 、key 2 、key 3 、key 4 、key 5 、key 6 、key 7 、key 8 and key 9 As the encryption key for the corresponding data packet, the AES encryption algorithm is used in combination with the selected working mode and initialization vector to encrypt the plaintext data in each data packet to obtain the corresponding ciphertext data.

[0120] After encryption is complete, the seller sends all encrypted data packets to the buyer. The seller then performs an a-choose-b oblivious transfer protocol with the buyer, in which the buyer chooses b random numbers from a pre-generated random array. The buyer's choice is secret, and the seller does not know which b random numbers the buyer has chosen. This protocol ensures that the buyer can obtain the random numbers needed to reconstruct the symmetric key while keeping his or her choice private.

[0121] 5) The message receiver reconstructs the symmetric key based on the b random numbers in the a-choose-b oblivious transfer protocol through a secret sharing algorithm, decrypts the encrypted data packet, and obtains the corresponding plaintext data.

[0122] Specifically, the buyer obtains b random numbers according to the oblivious transfer protocol. These random numbers are used to reconstruct a symmetric key through a secret sharing algorithm, and the buyer uses these b random numbers to recover the complete symmetric key;

[0123] The specific steps of decryption include: determining the AES working mode and the corresponding initialization vector IV used for encryption. Using the AES decryption algorithm in combination with the selected working mode and initialization vector IV to decrypt each encrypted data packet to obtain the corresponding plaintext data.

[0124] After the buyer successfully decrypts the information, he can obtain the product information that conforms to his logical rules. Throughout the process, the buyer's choices and preferences remain private, and the seller does not know which products the buyer ultimately chooses.

[0125] In this way, the arbitrary logic oblivious transfer method based on secret sharing not only protects the privacy of buyers, but also enables sellers to provide personalized product recommendations based on preset logical rules without exposing buyers' preferences.

[0126] Embodiment 3;

[0127] like Figure 4 As shown, this embodiment provides an oblivious transmission system based on secret sharing, including:

[0128] Logical rule standardization module: used to define the logical rules of the message sender and the message receiver, and set the logical rules to a standard form;

[0129] Data packet generation and completion module: used to generate data packets with multiple different message combinations based on the logical rules in the standard form, and use virtual data to complete them;

[0130] Subkey generation module: used to generate a subkey corresponding to the padded data packet by combining a pre-generated random array through a secret sharing algorithm;

[0131] Encryption and transmission module: used for the message sender to encrypt each data packet using the subkey and send the encrypted data packet to the message receiver;

[0132] Key reconstruction and decryption module: It is used by the message receiver to reconstruct the symmetric key based on b random numbers in the a-choose-b oblivious transfer protocol through a secret sharing algorithm, decrypt the encrypted data packet, and obtain the corresponding plaintext data.

[0133] The system covers modules such as logic rule standardization, data packet generation and completion, subkey generation, encrypted transmission, and key reconstruction and decryption. It ensures that messages remain confidential during transmission while allowing the recipient to obtain only information of interest, thus achieving secure data transmission and privacy protection.

[0134] Embodiment 4;

[0135] like Figure 5As shown, this embodiment provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the above-mentioned inadvertent transmission method when executing the computer program.

[0136] Embodiment 5;

[0137] This embodiment provides a computer-readable storage medium, wherein the storage medium stores a computer program, and when the computer program is executed by a processor, the above-mentioned inadvertent transmission method is implemented.

[0138] In the above embodiments provided in the present application, it should be understood that the disclosed methods, systems, devices and media can be implemented in other ways. The above described methods, systems, devices and media embodiments are only schematic. For example, the division of modules or units is only a logical function division, and there may be other division methods in actual implementation. Each functional unit can be integrated into a processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.

[0139] The units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0140] The computer program includes computer program code, which may be in source code form, object code form, executable file or some intermediate form, etc. Computer readable media may include: any entity or device capable of carrying computer program code, recording medium, USB flash drive, mobile hard disk, magnetic disk, optical disk, computer memory, read-only memory, random access memory, electric carrier signal, telecommunication signal and software distribution medium, etc.

[0141] The above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. These modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application, and should all be included in the protection scope of the present application.

Claims

1. An oblivious transmission method based on secret sharing, characterized in that: The following steps are involved: S1. Define the logic rules of the message sender and the message receiver, and set the logic rules to a standard form; The step of setting the logic rules to a standard form comprises: For any logical expression (m i ∧m k ∧m n )∨(m x ∧m y )∨m z , which is transformed into a The logical expression is: will include ∧ and The logical expression of is transformed into a logical expression including only ∧, and the standard form of the logical expression m is obtained. i ∧m k ∧m n 、m x ∧m y 、m z ; Among them, m i 、m k 、m n 、m x 、m y 、m z 、m α 、m β 、m γ 、m δ Represents any message; ∧ represents and, ∨ represents or, Indicates non; S2. Based on the logic rules in the standard form, generate a plurality of data packets under different message combinations, and use virtual data to fill them; the use of virtual data to fill them includes: S21, adding the number of messages to o+p; wherein o represents the number of original messages, and p represents the difference between the length of the longest data packet and the shortest data packet; S22, based on the p supplemented virtual data, completing the other data packets except the longest data packet to obtain multiple data packets of equal length; S3, combining the pre-generated random array, and generating a subkey corresponding to the padded data packet through a secret sharing algorithm; S4, the message sender encrypts each data packet using the subkey, and sends the encrypted data packet to the message receiver; S5. The message receiver reconstructs the symmetric key based on the b random numbers in the a-choose-b oblivious transfer protocol through a secret sharing algorithm, decrypts the encrypted data packet, and obtains the corresponding plaintext data.

2. The oblivious transmission method based on secret sharing according to claim 1, characterized in that: In S3, the secret sharing algorithm is: Among them, H() represents the hash function, ⊕ represents the XOR operation, r1, r2, ... r d Represents a pregenerated random number.

3. The oblivious transmission method based on secret sharing according to claim 1, characterized in that: In S4, each data packet is encrypted by the subkey, including: Define each subkey as the encryption key for the corresponding data packet; The AES symmetric encryption algorithm is used to encrypt the plaintext data P in each data packet using the encryption key. text Encrypt and obtain the corresponding ciphertext data C text : C text =(P text ,Key,Mode,IV) Among them, Mode represents the working mode of the AES symmetric encryption algorithm, and IV represents the initialization vector of the AES symmetric encryption algorithm.

4. An oblivious transmission system based on secret sharing, characterized in that: The method for implementing the oblivious transmission method based on secret sharing as claimed in any one of claims 1 to 3 comprises: Logical rule standardization module: used to define the logical rules of the message sender and the message receiver, and set the logical rules to a standard form; Data packet generation and completion module: used to generate data packets with multiple different message combinations based on logical rules in standard form, and use virtual data for completion; Subkey generation module: used to generate a subkey corresponding to the padded data packet by combining a pre-generated random array through a secret sharing algorithm; Encryption and transmission module: used for the message sender to encrypt each data packet using the subkey and send the encrypted data packet to the message receiver; Key reconstruction and decryption module: It is used by the message receiver to reconstruct the symmetric key based on b random numbers in the a-choose-b oblivious transfer protocol through a secret sharing algorithm, decrypt the encrypted data packet, and obtain the corresponding plaintext data.

5. An electronic device 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 computer program, the oblivious transmission method based on secret sharing according to any one of claims 1 to 3 is implemented.

6. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the oblivious transmission method based on secret sharing according to any one of claims 1 to 3 is implemented.

Citation Information

Patent Citations

  • File encryption method and device based on MD5, AES and DH algorithms and storage medium

    CN112118088A

  • Data sharing method and device, equipment and storage medium

    CN115603905A