Batch-OT Based Data Transmission Method, Apparatus, Device, Medium and Product

By introducing Batch-OT data transmission method into the OT protocol, the cooperation between the receiver and the sender generates and decrypts random number pairs for XOR calculations, the existing OT protocol has solved the problem of large computing volume and low efficiency, and efficient data transmission is achieved.

CN117118619BActive Publication Date: 2025-06-20BEIJING TOPWALK INFORMATION TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210535843.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-05-17
Publication Date
2025-06-20
Estimated Expiration
2042-05-17

AI Technical Summary

Technical Problem

The existing OT protocols have problems such as large computing volume and low execution efficiency, making it difficult to complete data transmission efficiently.

Method used

Using a Batch-OT-based data transmission method, multiple random number pairs are generated by the receiver and encrypted, and the sender decrypts and performs XOR calculations to realize the transmission of multiple data pairs.

Benefits of technology

The number of execution rounds and calculation amount of the Batch-OT protocol is reduced, and the execution of the OT protocol can generate multiple OTs, which improves the efficiency of data transmission.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117118619B_ABST
    Figure CN117118619B_ABST
Patent Text Reader

Abstract

The present invention relates to a data transmission method, apparatus, device, medium, and product based on Batch-OT, including: the receiver receives two public keys of the sender and generates multiple random number pairs, and encrypts multiple groups of random number pairs based on the two public keys to generate an encrypted list; the receiver sends the generated encrypted list to the sender; the receiver receives the decryption data pair list sent by the sender, and performs exclusive OR calculation on the multiple random number pairs and the decryption data pair list to obtain a set of data results in the multiple data pairs, where the decryption data pair list is obtained by the sender decrypting the encrypted list based on the two private keys to obtain multiple groups of decryption results, and taking the multiple groups of decryption results as the private inputs of the multiple data pairs for exclusive OR generation. Through this data transmission method, the present application enables the Batch-OT protocol to have a low number of execution rounds, a low amount of calculation, and multiple OTs can be generated by executing OT once.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of data transmission, and in particular, to a data transmission method, apparatus, device, medium, and product based on Batch-OT. Background Art

[0002] There are many construction methods for secure multi-party computation protocols. For example, they can be implemented based on secret sharing or based on Oblivious Transfer (OT). Oblivious Transfer (OT) is a basic cryptographic primitive and is widely used in fields such as secure multi-party computation. The OT protocol scheme is constructed based on the RSA encryption system. In the protocol, the sender S sends a message m to the receiver R, and the receiver R accepts the message m with a probability of 1 / 2. So at the end of the protocol interaction, S does not know whether R has accepted the message. Another form of the OT protocol is that the sender S sends two messages m1 and m2, and the receiver R can obtain one of the messages m1 or m2, but cannot obtain the other unselected message, and the sender S also cannot know which message the receiver R has selected. However, the OT protocol generally has problems of large computational complexity and low execution efficiency. Summary of the Invention

[0003] To overcome the problems in the related art, the present disclosure provides a data transmission method, apparatus, device, medium, and product based on Batch-OT.

[0004] According to the first aspect of the embodiments of the present disclosure, a data transmission method based on Batch-OT is provided, including:

[0005] The receiver receives two public keys from the sender and generates multiple random number pairs, encrypts the multiple groups of random number pairs based on the two public keys to generate an encrypted list, where the receiver at least includes a selection bit string, the sender at least includes multiple data pairs, and the two public keys are sent by the sender after generating two groups of RSA keys, and each group of RSA keys at least includes a public key and a private key;

[0006] The receiver sends the generated encrypted list to the sender;

[0007] The receiver receives the decrypted data pair list sent by the sender, performs an exclusive OR calculation on the multiple random number pairs and the decrypted data pair list to obtain a group of data results in the multiple data pairs, where the decrypted data pair list is obtained by the sender decrypting the encrypted list based on two private keys to obtain multiple groups of decryption results, and taking the multiple groups of decryption results as private inputs of the multiple data pairs for exclusive OR generation.

[0008] In some embodiments, encrypting the multiple pairs of random numbers based on the two public keys to generate an encrypted list includes:

[0009] The receiver selects one of the two public keys based on the selection bits included in the selection bit string to encrypt the multiple groups of random number arrays to generate the encrypted list.

[0010] In some embodiments, the number of the multiple pairs of random numbers generated by the receiver is the same as the number of the multiple pairs of data.

[0011] In some embodiments, the decrypted data pair list is obtained by the sender decrypting the encrypted list based on two private keys to obtain multiple groups of decryption results, including:

[0012] Decrypting the encrypted list respectively by each of the two private keys to obtain the multiple groups of decryption results, wherein only one group of decryption results in the multiple groups of decryption results is correct.

[0013] According to a second aspect of the embodiments of the present disclosure, there is provided a data transmission device based on Batch-OT, including:

[0014] An encryption module, the receiver receives two public keys of the sender and generates multiple pairs of random numbers, encrypts the multiple pairs of random numbers based on the two public keys to generate an encrypted list, wherein the receiver at least includes a selection bit string, the sender at least includes multiple pairs of data, and the two public keys are sent after the sender generates two groups of RSA keys, and each group of RSA keys at least includes a public key and a private key;

[0015] A sending module, configured for the receiver to send the generated encrypted list to the sender;

[0016] A decryption module, the receiver receives the decrypted data pair list sent by the sender, performs an exclusive OR calculation on the multiple pairs of random numbers and the decrypted data pair list to obtain a group of data results in the multiple pairs of data, wherein the decrypted data pair list is generated by the sender decrypting the encrypted list based on two private keys to obtain multiple groups of decryption results and performing an exclusive OR on the multiple groups of decryption results as private inputs of the multiple pairs of data.

[0017] In some embodiments, the encryption module is further configured to:

[0018] The receiver selects one of the two public keys based on the selection bits included in the selection bit string to encrypt the multiple groups of random number arrays to generate the encrypted list.

[0019] In some embodiments, the decryption module is further configured to:

[0020] Decrypt the encrypted list respectively by each of the two private keys to obtain the multiple groups of decryption results, where only one group of decryption results among the multiple groups of decryption results is correct.

[0021] According to a third aspect of the embodiments of the present disclosure, there is provided an electronic device, including a processor and a memory. At least one instruction, at least one segment of program, code set or instruction set is stored in the memory, and the instruction, the program, the code set or the instruction set is loaded and executed by the processor to implement the data transmission method based on Batch-OT according to any one of the first aspects.

[0022] According to a fourth aspect of the embodiments of the present disclosure, there is provided a non-transitory computer-readable storage medium. When the instructions in the storage medium are executed by a processor of a mobile terminal, the mobile terminal can execute the data transmission method based on Batch-OT according to any one of the first aspects.

[0023] According to a fifth aspect of the embodiments of the present disclosure, there is provided a computer program product. When the instructions in the computer program product are executed by a processor of a mobile terminal, the mobile terminal can execute the data transmission method based on Batch-OT according to any one of the first aspects.

[0024] The technical solutions provided by the embodiments of the present disclosure may include the following beneficial effects: Through the above method of data transmission in this application, the number of protocol execution rounds of Batch-OT is low, the computational amount is low, and multiple OTs can be generated by executing OT once.

[0025] It should be understood that the above general description and the following detailed description are only exemplary and explanatory, and cannot limit the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

[0026] The drawings herein are incorporated into the specification and form a part of the specification, showing embodiments consistent with the present invention and used together with the specification to explain the principles of the present invention.

[0027] Figure 1 is a flowchart of a data transmission method based on Batch-OT shown according to an exemplary embodiment.

[0028] Figure 2 is a block diagram of a data transmission device based on Batch-OT shown according to an exemplary embodiment.

[0029] Figure 3 is an internal structure diagram of an electronic device shown according to an exemplary embodiment. DETAILED DESCRIPTION

[0030] Exemplary embodiments will be described in detail herein, and examples thereof are shown in the accompanying drawings. When the following description refers to the accompanying drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present invention. On the contrary, they are merely examples of devices and methods consistent with some aspects of the present invention as detailed in the appended claims.

[0031] Figure 1 is a flowchart of a data transmission method based on Batch-OT shown according to an exemplary embodiment, as Figure 1 shown, and includes the following steps:

[0032] In step S101, the receiver receives two public keys of the sender and generates multiple random number pairs, and encrypts the multiple groups of random number pairs based on the two public keys to generate an encryption list. Among them, the receiver at least includes a selection bit string, the sender at least includes multiple data pairs, and the two public keys are sent after the sender generates two groups of RSA keys, and each group of RSA keys at least includes a public key and a private key.

[0033] Specifically, when the sender and the receiver need to perform Batch-OT data transmission, the receiver at least includes a selection bit string, the sender at least includes multiple data pairs, the sender generates two groups of RSA keys, where each group of RSA keys at least includes a public key and a private key, the sender sends the two public keys to the receiver, and the receiver generates multiple random number pairs after receiving the two public keys, and at the same time encrypts the multiple groups of random number pairs through the two received public keys to generate an encryption list.

[0034] In some embodiments, encrypting the multiple groups of random number pairs based on the two public keys to generate an encryption list includes:

[0035] The receiver selects one of the two public keys based on the selection bits included in the selection bit string to encrypt the multiple groups of random number arrays to generate the encryption list.

[0036] Specifically, since the receiver includes a selection bit string, the selection bits included in the selection bit string can be used to select one of the two public keys to encrypt the multiple groups of random number arrays to generate the encryption list. Combining with specific embodiments, the selection bit string (s1, s2,..., s k ), public keys pk0, pk1. When s1 is 0, select pk0 for encryption, and when s1 is 1, select pk1 for encryption.

[0037] In some embodiments, the number of the multiple random number pairs generated by the receiver is the same as the number of the multiple data pairs.

[0038] Specifically, in order to obtain the data in the data pairs subsequently, the number of random number pairs generated by the receiver needs to be the same as the number of the multiple data pairs.

[0039] In step S102, the receiver sends the generated encryption list to the sender.

[0040] Specifically, the encryption list needs to be decrypted with the private key to be sent. Therefore, the receiver needs to send the generated encryption list to the sender to implement the subsequent decryption process.

[0041] In step S103, the receiver receives the decrypted data pair list sent by the sender, and performs an exclusive OR calculation based on the multiple random number pairs and the decrypted data pair list to obtain a set of data results in the multiple data pairs, where the decrypted data pair list is obtained by the sender decrypting the encryption list with two private keys to obtain multiple sets of decryption results, and performing an exclusive OR on the multiple sets of decryption results as the private inputs of the multiple data pairs.

[0042] Specifically, when the sender receives the encryption list, it decrypts the encryption list with two private keys to obtain multiple sets of decryption results, performs an exclusive OR on the multiple sets of decryption results as the private inputs of the multiple data pairs to generate a decrypted data pair list, and sends the decrypted data pair list to the receiver. The receiver can obtain a set of data results in the multiple data pairs by performing an exclusive OR calculation on the multiple random number pairs and the decrypted data pair list.

[0043] In some embodiments, the decrypted data pair list is obtained by the sender decrypting the encryption list with two private keys to obtain multiple sets of decryption results, including:

[0044] Each of the two private keys is used to decrypt the encryption list separately to obtain the multiple sets of decryption results, where only one set of decryption results in the multiple sets of decryption results is correct.

[0045] Specifically, since the encryption is performed with one of the two public keys during the encryption process, when each of the two private keys is used to decrypt the encryption list separately, multiple sets of decryption results are obtained, and only one set of decryption results in the multiple sets of decryption results after decryption is correct.

[0046] To further elaborate on the technical idea of the present invention, the technical solution of the present invention will be described in combination with a specific application scenario.

[0047] The sender is Sender (abbreviated as S), and the receiver is Receiver (abbreviated as R). S holds k data pairs: [(h 10 ,h11 ),(h 20 ,h 21 ),…,(h k0 ,h k1 )](which can be randomly generated), R holds the selection bit strings (s1, s2, …, s k ).

[0048] First step, S generates two pairs of RSA keys (pk0, sk0), (pk1, sk1); and sends the public keys pk0, pk1 to R.

[0049] Second step, R generates random numbers (r 10 , r 11 ), (r 20 , r 21 ), …, (r k0 , r k1 ). For each pair of random numbers (r i0 , r i1 ), R decides which public key to use for encryption according to the selection bit string s i . Specifically, for the public keys pk0, pk1, when s1 is 0, pk0 is selected for encryption, and when s1 is 1, pk1 is selected for encryption;

[0050] Third step, R sends the encrypted list to S;

[0051] Fourth step, S decrypts each pair separately with the two private keys sk0, sk1, and records the decrypted results as k i0 , k i1 , and then uses them to perform exclusive OR on the private inputs, that is, calculates and sends them to R;

[0052] Fifth step, R performs exclusive OR calculation on each pair of numbers received with the random numbers generated in the second step R obtains the final result

[0053] In the last step of the above embodiment, R calculates for each pair of numbers Since is the correct decryption result after encryption:

[0054] That is, if s i = 0, then k i0 = r i0 , then

[0055] If s i= 1, then k i1 = r i1 , then

[0056] It can be seen that when s i = 0, R obtains the correct result h i0 , when s i = 1, R obtains the correct result h i1 , i ∈ {1, …, k}, and the correctness is proved.

[0057] In the above solution, S and R go through 3 rounds of interaction. During these interactions, S receives Although S can decrypt based on these numbers, it only obtains the random number pairs of R. When R generates these random number pairs, they are independent of the selected bit strings (s1, s2, …, s k ). Therefore, (s1, s2, …, s k ) is secret to S, and R has no knowledge of any information about s i , 1 ≤ i ≤ k.

[0058] During the interaction, the data received by R are pk0, pk1, Since k i0 , k i1 are the decryption results using different private keys for decryption, so there must be 1 incorrect decryption result. Therefore, when R restores the result using the random numbers r , r i0 , r i1 , it can only restore 1 result The other one is kept secret for R.

[0059] In summary, a data transmission method based on Batch-OT provided by this application can complete data transmission through 3 rotations, resulting in a low number of protocol execution rounds, low computational complexity, and the ability to generate multiple OTs per execution of OT in Batch-OT, solving the problems of large computational amount and low execution efficiency commonly existing in the existing OT protocols.

[0060] Figure 2 is a block diagram of a data transmission device for Batch-OT shown according to an exemplary embodiment. Referring to Figure 2 , the device includes an encryption module 201, a sending module 202, and a decryption module 203.

[0061] Encryption module 201, the receiving party receives two public keys of the sending party and generates multiple random number pairs, encrypts the multiple random number pairs based on the two public keys to generate an encrypted list, wherein the receiving party at least includes a selection bit string, the sending party at least includes multiple data pairs, and the two public keys are sent after the sending party generates two groups of RSA keys, and each group of RSA keys at least includes a public key and a private key;

[0062] Sending module 202, for the receiving party to send the generated encrypted list to the sending party;

[0063] Decryption module 203, the receiving party receives the decryption data pair list sent by the sending party, performs an exclusive OR calculation on the multiple random number pairs and the decryption data pair list to obtain a set of data results in the multiple data pairs, wherein the decryption data pair list is obtained by the sending party decrypting the encrypted list based on two private keys to obtain multiple groups of decryption results, and performing an exclusive OR on the multiple groups of decryption results as the private input of the multiple data pairs.

[0064] In some embodiments, the encryption module 201 is further configured to:

[0065] The receiving party selects one of the two public keys based on the selection bits included in the selection bit string to encrypt the multiple random number arrays to generate the encrypted list.

[0066] In some embodiments, the decryption module 203 is further configured to:

[0067] Decrypt the encrypted list respectively through each of the two private keys to obtain the multiple groups of decryption results, wherein only one group of decryption results in the multiple groups of decryption results is correct.

[0068] Regarding the device in the above embodiments, the specific manners in which each module performs operations have been described in detail in the embodiments related to the method, and will not be elaborated here.

[0069] In one embodiment, an electronic device is provided. The electronic device may be a terminal, and its internal structure diagram may be as Figure 3As shown. The electronic device includes a processor, a memory, a communication interface, a display screen, and an input device connected through a system bus. Among them, the processor of the electronic device is used to provide computing and control capabilities. The memory of the electronic device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The communication interface of the computer device is used to communicate with an external terminal in a wired or wireless manner, and the wireless manner can be implemented through WIFI, a carrier network, near field communication (NFC), or other technologies. When the computer program is executed by the processor, it implements a data transmission method based on Batch-OT. The display screen of the computer device can be a liquid crystal display screen or an electronic ink display screen, and the input device of the computer device can be a touch layer covered on the display screen, or a button, a trackball, or a touchpad provided on the housing of the computer device, or an external keyboard, touchpad, or mouse, etc.

[0070] Those skilled in the art can understand that Figure 3 the structure shown in is only a block diagram of some structures related to the solution of this application, and does not constitute a limitation on the computer device to which the solution of this application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine some components, or have different component arrangements.

[0071] In one embodiment, the data transmission device based on Batch-OT provided by this application can be implemented in the form of a computer program, and the computer program can run on an electronic device such as Figure 3 shown. Each program module constituting the data transmission device based on Batch-OT can be stored in the memory of the electronic device. For example, Figure 2 the encryption module 201, the sending module 202, and the decryption module 203 shown in. The computer program composed of each program module enables the processor to execute the steps in a data transmission method based on Batch-OT in each embodiment of this application described in this specification.

[0072] For example, Figure 3 the electronic device shown can be through such as Figure 2The encryption module 201 of the Batch-OT-based data transmission device shown receives two public keys from the sender and generates multiple random number pairs, encrypts the multiple random number pairs based on the two public keys to generate an encrypted list, wherein the receiver at least includes a selection bit string, the sender at least includes multiple data pairs, the two public keys are sent after the sender generates two groups of RSA keys, and each group of RSA keys at least includes a public key and a private key; a sending module 202, configured to send the generated encrypted list by the receiver to the sender; a decryption module 203, the receiver receives the decrypted data pair list sent by the sender, performs an exclusive OR calculation based on the multiple random number pairs and the decrypted data pair list to obtain a group of data results in the multiple data pairs, wherein the decrypted data pair list is obtained by the sender decrypting the encrypted list based on two private keys to obtain multiple groups of decryption results, and performing an exclusive OR on the multiple groups of decryption results as the private inputs of the multiple data pairs to generate

[0073] The electronic device provided by this application can open each module in the Batch-OT-based data transmission device through a memory and a processor, and complete data transmission through 3 rotations, so that the Batch-OT protocol has a low number of execution rounds, a low amount of calculation, and can generate multiple OTs by executing 1 OT once, solving the problems of large amount of operation and low execution efficiency commonly existing in the existing OT protocol.

[0074] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the following steps are implemented: the receiver receives two public keys from the sender and generates multiple random number pairs, encrypts the multiple random number pairs based on the two public keys to generate an encrypted list, wherein the receiver at least includes a selection bit string, the sender at least includes multiple data pairs, the two public keys are sent after the sender generates two groups of RSA keys, and each group of RSA keys at least includes a public key and a private key; the receiver sends the generated encrypted list to the sender; the receiver receives the decrypted data pair list sent by the sender, performs an exclusive OR calculation based on the multiple random number pairs and the decrypted data pair list to obtain a group of data results in the multiple data pairs, wherein the decrypted data pair list is obtained by the sender decrypting the encrypted list based on two private keys to obtain multiple groups of decryption results, and performing an exclusive OR on the multiple groups of decryption results as the private inputs of the multiple data pairs to generate.

[0075] The non-transitory computer-readable storage medium provided by this application can execute the data transmission method based on Batch-OT in the above-mentioned embodiments through the instructions in the storage medium. The data transmission can be completed through 3 rotations, resulting in a low number of protocol execution rounds and low computational complexity for Batch-OT, and multiple OTs can be generated by executing one OT once, solving the problems of large computational complexity and low execution efficiency commonly existing in the existing OT protocols.

[0076] In one embodiment, a computer program product is provided. When the instructions in the computer program product are executed by the processor of a mobile terminal, the mobile terminal can be enabled to perform the following steps: The receiving party receives two public keys from the sending party and generates multiple random number pairs, encrypts the multiple groups of random number pairs based on the two public keys to generate an encrypted list, wherein the receiving party at least includes a selection bit string, the sending party at least includes multiple data pairs, and the two public keys are sent after the sending party generates two groups of RSA keys, and each group of RSA keys at least includes a public key and a private key; The receiving party sends the generated encrypted list to the sending party; The receiving party receives the decrypted data pair list sent by the sending party, and performs an exclusive OR calculation based on the multiple random number pairs and the decrypted data pair list to obtain a set of data results among the multiple data pairs, wherein the decrypted data pair list is obtained by the sending party decrypting the encrypted list based on two private keys to obtain multiple groups of decryption results, and the multiple groups of decryption results are used as the private inputs of the multiple data pairs for exclusive OR generation.

[0077] The computer program product provided by this application can enable the mobile terminal to execute the data transmission method based on Batch-OT in the above-mentioned embodiments. The data transmission can be completed through 3 rotations, resulting in a low number of protocol execution rounds and low computational complexity for Batch-OT, and multiple OTs can be generated by executing one OT once, solving the problems of large computational complexity and low execution efficiency commonly existing in the existing OT protocols.

[0078] Those of ordinary skill in the art can understand that all or part of the processes in the methods of the above embodiments can be completed by instructing relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above methods. Among them, any reference to a memory, database, or other medium used in the embodiments provided in the present application can include at least one of non-volatile and volatile memories. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, or optical memory, etc. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in many forms, such as static random access memory (SRAM) and dynamic random access memory (DRAM), etc.

[0079] The technical features of the above embodiments can be combined arbitrarily. For the sake of brevity of description, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, it should be considered as the scope recorded in this specification.

[0080] The above embodiments only represent several implementation manners of the present application. The description is relatively specific and detailed, but it should not be construed as a limitation on the scope of the invention patent. It should be noted that for those of ordinary skill in the art, without departing from the concept of the present application, several modifications and improvements can still be made, and these all belong to the protection scope of the present application. Therefore, the protection scope of the patent of the present application should be subject to the appended claims.

Claims

1. A data transmission method based on Batch-OT, characterized in that, Including: The receiving party receives two public keys of the sending party and generates multiple random number pairs, and encrypts the multiple random number pairs based on the two public keys to generate an encrypted list. Wherein, the receiving party at least includes a selection bit string, the sending party at least includes multiple data pairs, and the two public keys are sent after the sending party generates two sets of RSA keys, and each set of RSA keys at least includes a public key and a private key; The receiving party sends the generated encrypted list to the sending party; The receiving party receives the decrypted data pair list sent by the sending party, and performs an exclusive OR calculation on the multiple random number pairs and the decrypted data pair list to obtain a set of data results in the multiple data pairs. Wherein, the decrypted data pair list is obtained by the sending party decrypting the encrypted list based on two private keys to obtain multiple sets of decryption results, and performing an exclusive OR operation on the multiple sets of decryption results as the private inputs of the multiple data pairs; The sender is S and the receiver is R. S holds data pairs: , and R holds the selection bit string ; Step 1, S generates two pairs of RSA keys , ; and sends the public keys , to R; Step 2, R generates random numbers , for each pair of random numbers , R determines which public key to use for encryption according to the selected bit string ; In the third step, R sends the encrypted list to S; Step 4, S uses two private keys , respectively to decrypt each pair, and records the decrypted results as , . Then, it uses them to perform XOR on the private inputs, that is, calculates , , and sends them to R; Step 5: For each pair of numbers received by R , perform an exclusive OR calculation with the random number generated in Step 2 , and R obtains the final result ; In the last step above, R calculates for each pair of numbers , since is the correct decryption result after encryption: That is, if , then , so ; If , then , so ; It can be seen that when , R obtains the correct result , when , R obtains the correct result , .

2. The data transmission method based on Batch-OT according to claim 1, characterized in that, Encrypting the multiple random number pairs based on the two public keys to generate an encrypted list, including: The receiving party selects one of the two public keys based on the selection bits included in the selection bit string to encrypt the multiple random number pairs to generate the encrypted list.

3. The data transmission method based on Batch-OT according to claim 1, characterized in that, Including: The number of the multiple random number pairs generated by the receiving party is the same as the number of the multiple data pairs.

4. The data transmission method based on Batch-OT according to claim 1, characterized in that, The decrypted data pair list is obtained by the sending party decrypting the encrypted list based on two private keys to obtain multiple sets of decryption results, including: Decrypting the encrypted list respectively through each of the two private keys to obtain the multiple sets of decryption results, and only one set of decryption results in the multiple sets of decryption results is correct.

5. A data transmission device based on Batch-OT, characterized in that, The device is used to execute the data transmission method based on Batch-OT according to any one of claims 1-4. The device includes: An encryption module, where the receiving party receives two public keys of the sending party and generates multiple random number pairs, and encrypts the multiple random number pairs based on the two public keys to generate an encrypted list. Wherein, the receiving party at least includes a selection bit string, the sending party at least includes multiple data pairs, and the two public keys are sent after the sending party generates two sets of RSA keys, and each set of RSA keys at least includes a public key and a private key; A sending module, configured to enable the receiving party to send the generated encrypted list to the sending party; A decryption module, where the receiving party receives the decrypted data pair list sent by the sending party, and performs an exclusive OR calculation on the multiple random number pairs and the decrypted data pair list to obtain a set of data results in the multiple data pairs. Wherein, the decrypted data pair list is obtained by the sending party decrypting the encrypted list based on two private keys to obtain multiple sets of decryption results, and performing an exclusive OR operation on the multiple sets of decryption results as the private inputs of the multiple data pairs.

6. The data transmission device based on Batch-OT according to claim 5, characterized in that, The encryption module is further configured to: The receiving party selects one of the two public keys based on the selection bits included in the selection bit string to encrypt the multiple random number pairs to generate the encrypted list.

7. The data transmission device based on Batch-OT according to claim 5, characterized in that, The decryption module is further configured to: Decrypt the encrypted list respectively by each of the two private keys to obtain the multiple groups of decryption results, where only one group of decryption results among the multiple groups of decryption results is correct.

8. An electronic device, characterized in that, It includes a processor and a memory, and at least one instruction, at least one program, a code set or an instruction set is stored in the memory. The instruction, the program, the code set or the instruction set is loaded and executed by the processor to implement the data transmission method based on Batch-OT according to any one of claims 1-4.

9. A non - transitory computer - readable storage medium, characterized in that, When the instructions in the storage medium are executed by the processor of the mobile terminal, the mobile terminal is enabled to execute the data transmission method based on Batch-OT according to any one of claims 1-4.

10. A computer program product, characterized in that, When the instructions in the computer program product are executed by the processor of the mobile terminal, the mobile terminal is enabled to execute the data transmission method based on Batch-OT according to any one of claims 1-4.

Citation Information

Patent Citations

  • Casual transmission method, multi-party security computing platform and device for casual transmission

    CN114301594A

  • Fast oblivious transfers

    US20200259800A1