Casual transmission method and device

By introducing random numbers and elliptic curve point Y into the elliptic curve public key system, the problem that inadvertent transmission protocol in the elliptic curve public key system cannot protect the privacy of the receiver, achieving the effect that the receiver can only decrypt the target message.

CN119172078APending Publication Date: 2024-12-20ZHENGZHOU XINDA JIEAN INFORMATION TECH
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411255630.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-09
Publication Date
2024-12-20

AI Technical Summary

Technical Problem

The inadvertent transmission protocol in the existing elliptic curve public key system cannot effectively protect the privacy of the recipient. The sender can calculate the message that the recipient wants to obtain by decrypting the ciphertext, and the receiver cannot protect the privacy of other messages other than the target message.

Method used

By introducing the first random number r, the sender cannot calculate the target message that the receiver wants to obtain, and introduces the second random number, message number and elliptic curve point Y in the encryption key calculation to ensure that the receiver can only decrypt the target Encrypted cipher text of the message.

Benefits of technology

Privacy protection for the receiver and the sender is realized, ensuring that the receiver can only decrypt the encrypted cipher text of the target message, and preventing the sender from obtaining information of non-target messages.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119172078A_ABST
    Figure CN119172078A_ABST
Patent Text Reader

Abstract

According to the casual transmission method and device provided by the embodiment of the invention, the first random number r is introduced, so that a sender cannot calculate the target to-be-sent message which is to be acquired by a receiver and corresponds to the target message label t based on the first elliptic curve point Y, and the privacy of the receiver is protected. Meanwhile, the sender introduces a cooperation key related to the second random number to hide the second random number, the second random number, the message label and the first elliptic curve point Y are introduced when the encryption key is calculated, and the receiver obtains an encrypted ciphertext obtained by encrypting the encryption key and the cooperation key, so that the encryption key is encrypted; when the message label is not equal to the target message label, the second random number generated by the sender cannot be directly obtained, and when the message label is not equal to the target message label, the decryption key cannot decrypt the encrypted ciphertext corresponding to the message label, so that the receiver can only decrypt the encrypted ciphertext corresponding to the target message label. According to the technical scheme provided by the embodiment of the invention, the inadvertent transmission between the sender and the receiver is realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present invention relate to the field of communication technology, and in particular to an oblivious transmission method and device. Background Art

[0002] With the development of economy and technology, computers, mobile phones and other types of computers are becoming more and more popular in people's lives. On this basis, with the help of the Internet and communication technology, various computers have achieved interconnection, which greatly promotes the transmission and sharing of information. However, at the same time, network security issues such as virus invasion and network attacks have also exploded, and user privacy leaks have also occurred from time to time.

[0003] Among them, one of the more commonly used technologies for user privacy leakage is anonymity technology. Anonymity technology has been widely used in public transportation, social networks and other fields, and has played an important role in protecting user privacy and security. The core idea of ​​anonymity technology is to make user identity and other information appear unrelated. The technical means used is to use anonymous servers to provide pseudonym or group signature services. Since anonymity technology requires trusted anonymous servers and other facilities, and pseudonym and group signature services require more computing resources and communication resources, anonymity technology has the problems of high hardware cost, complex calculation and low communication efficiency.

[0004] Another feasible solution to the problem of user privacy leakage is oblivious transfer (OT). Oblivious transfer, also known as oblivious transmission, is one of the most basic primitives in cryptography and secure computing systems. It refers to the protocol participants transmitting messages in an obfuscated way, thereby effectively protecting the privacy of each participant. Taking n-choose-1 oblivious transfer as an example, n-choose-1 oblivious transfer means that the sender has n messages m 1 , m 2 , ... , m n , the receiver can only choose one of the messages to obtain, and the sender does not know which message the receiver obtains, and the receiver cannot obtain any information about other messages except the selected message. Because of its above characteristics, the oblivious transfer protocol is widely used to construct obfuscated circuits, zero-knowledge proof protocols, etc. For the implementation of oblivious transfer, an anonymous server is not necessary, and the sender does not know what message the receiver obtains, so there is no need for pseudonym and group signature services, which partially solves the problems existing in anonymity technology.

[0005] In the past, oblivious transmission was generally based on discrete logarithms. Xu Yanjiao and others extended oblivious transmission to the public key system and designed a protocol based on the elliptic curve public key system. It does not require the establishment of an authentication channel in advance, reduces the overall overhead of protocol execution, and can be executed on insecure channels.

[0006] However, in the above scheme, the receiver needs to first use the private key to encrypt the target message number and send it to the sender. After the sender receives the ciphertext of the target message number, it can decrypt the ciphertext of the target message number based on the receiver's public key, thereby calculating the target message to be sent that the receiver wants to obtain, and the receiver's privacy is not protected. Similarly, after the receiver receives the message returned by the sender, it can obtain the random number generated by the sender based on the collaboration key, and calculate any other non-target message based on the random number.

[0007] Therefore, how to provide an oblivious transmission method based on the elliptic curve public key system that can protect the privacy of the receiver and the sender is an urgent problem to be solved by those skilled in the art. Summary of the invention

[0008] The embodiments of the present invention aim to solve one of the technical problems in the related art at least to a certain extent.

[0009] To this end, an embodiment of the present invention discloses an oblivious transmission method and device.

[0010] In a first aspect, an embodiment of the present invention provides an oblivious transmission method, which is applied to an information transmission system, wherein the information transmission system includes: a sender and a receiver, wherein the sender and the receiver have the same elliptic curve equation and elliptic curve base point G, and the method includes: The receiver obtains the target message number t and generates a first random number r; wherein r∈[1, n-1], n is the order of the elliptic curve base point G; The receiver calculates the first elliptic curve point Y by using the target message number t, the first random number r, a first correspondence between the elliptic curve base point G and the first elliptic curve point Y; The receiving party sends the first elliptic curve point Y to the sending party; The sender has k messages to be sent m v1 、m v2 ,……,m vk Processing is performed to obtain k groups of ciphertext data; wherein the k messages to be sent include the target message m to be sent corresponding to the target message number t t , the message m to be sent with message number i i The corresponding ciphertext data includes: M i and A i , M i The sender is to send the message m i The encrypted ciphertext obtained after encryption, A i For M i The corresponding collaboration key, i∈{v1,v2,…,vk}; The sender sends the k groups of ciphertext data to the receiver; The receiver uses the first random number r and the collaboration key A corresponding to the target message number t t Calculate the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t , and i≠t, the decryption key e i Unable to decrypt the encrypted ciphertext M corresponding to message number i i ; The sender sends the k messages m to be sent. v1 、m v2 ,……,m vk Perform the following processing respectively: The sender generates a second random number k i , where k i ∈[1,n-1]; The sender uses the second random number k i and collaboration key A i The second correspondence between the two calculates the collaborative key A i ; The sender uses the first elliptic curve point Y, the second random number k i , message number i, the elliptic curve base point G and encryption key s i The third correspondence between the two calculates the message m to be sent i The encryption key i ; The sender uses the encryption key s i Treat the sent message m i Encrypt and get the encrypted ciphertext M i .

[0011] In a second aspect, an embodiment of the present invention further discloses an oblivious transmission device, which is applied to an information transmission system, wherein the information transmission system includes: a sender and a receiver, wherein the sender and the receiver have the same elliptic curve equation and elliptic curve base point G, and the device includes: an acquisition unit, a first calculation unit, a first sending unit and a decryption unit located at the receiver, and a processing unit and a second sending unit located at the sender; The acquisition unit is used to acquire the target message label t and generate a first random number r; wherein r∈[1, n-1], n is the order of the elliptic curve base point G; The first calculation unit is used to calculate the first elliptic curve point Y by using the target message label t, the first random number r, the first corresponding relationship between the elliptic curve base point G and the first elliptic curve point Y; The first sending unit is used to send the first elliptic curve point Y to the sender; The processing unit is used to process k messages m to be sent. v1 、m v2 ,……,m vk Processing is performed to obtain k groups of ciphertext data; wherein the k messages to be sent include the target message m to be sent corresponding to the target message number t t , the message m to be sent with message number i i The corresponding ciphertext data includes: M i and A i , M i The sender is to send the message m i The encrypted ciphertext obtained after encryption, A i For M i The corresponding collaboration key, i∈{v1,v2,…,vk}; The second sending unit is used to send the k groups of ciphertext data to the receiving party; The decryption unit is configured to decrypt the target message based on the first random number r and the collaborative key A corresponding to the target message number t. t Calculate the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t , and i≠t, the decryption key e i Unable to decrypt the encrypted ciphertext M corresponding to message number i i ; The processing unit processes the k messages m to be sent. v1 、m v2 ,……,m vk Perform the following processing respectively: Generate a second random number k i , where k i ∈[1,n-1]; Using the second random number k i and collaboration key A i The second correspondence between the two calculates the collaborative key A i ; Using the first elliptic curve point Y and the second random number k i , message number i, the elliptic curve base point G and the encryption key si The third correspondence relationship calculates the message m to be sent i The encryption key i ; Using the encryption key s i Treat the sent message m i Encrypt and get the encrypted ciphertext M i .

[0012] Beneficial effects of the embodiments of the present invention: An oblivious transmission method and device provided by an embodiment of the present invention introduces a first random number r, so that the sender cannot calculate the target message to be sent corresponding to the target message label t that the receiver wants to obtain based on the first elliptic curve point Y, thereby protecting the privacy of the receiver. At the same time, the sender introduces a collaboration key related to the second random number to hide the second random number. When calculating the encryption key, the second random number, the message label and the first elliptic curve point Y are introduced, so that the encryption key is related to the first random number, the second random number, the message label and the target message label. Since the receiver obtains the encrypted ciphertext and the collaboration key encrypted by the encryption key, it is impossible to directly obtain the second random number generated by the sender. When the message label and the target message label are not equal, the decryption key cannot decrypt the encrypted ciphertext corresponding to the message label, so that the receiver can only decrypt the encrypted ciphertext corresponding to the target message label. The technical solution of the embodiment of the present invention realizes the oblivious transmission of the sender and the receiver. BRIEF DESCRIPTION OF THE DRAWINGS

[0013] Figure 1 A schematic diagram of the structure of an information transmission system provided by an embodiment of the present invention; Figure 2 A schematic diagram of a flow chart of an oblivious transmission method provided by an embodiment of the present invention; Figure 3 A schematic diagram of a flow chart of a method for generating ciphertext data provided by an embodiment of the present invention; Figure 4 A schematic structural diagram of an inadvertent transmission device provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0014] In order to more clearly understand the above-mentioned purposes, features and advantages of the present invention, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings 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. All other embodiments obtained by ordinary technicians in this field based on the technical concept of the embodiments of the present invention belong to the scope of protection of the present invention.

[0015] For ease of understanding, the application scenario of the embodiment of the present invention is first described. Figure 1 As shown, Figure 1 A schematic diagram of the structure of an information transmission system provided by an embodiment of the present invention. Figure 1 The information transmission system shown includes a sender 10 and a receiver 11. The sender 10 and the receiver 11 use the oblivious transmission method of an embodiment of the present invention to perform data transmission, so that the receiver 11 can only select one of the messages to obtain, and the sender 10 does not know which message the receiver 11 obtains, and the receiver 11 cannot obtain any information of other messages except the selected message.

[0016] In order to have a more intuitive understanding of the technical solution of the embodiment of the present invention, some more specific scenarios are described here by way of example. One possible scenario is that the user is the receiver of the e-commerce platform and the e-commerce platform is the sender. The user sends an encrypted price request for a certain commodity to the e-commerce platform. After receiving the price request, the e-commerce platform uses the price request and the encryption algorithm negotiated by the sender and the receiver to generate n encrypted price information and send it to the user. Finally, the user uses the encryption parameter to decrypt the price information corresponding to the price request, but cannot decrypt other price information. Another possible scenario is that the doctor is the receiver of the smart medical platform and the smart medical platform is the sender. The doctor sends an encrypted case acquisition request for a certain patient to the smart medical platform. After receiving the case acquisition request, the smart medical platform uses the case acquisition request and the encryption algorithm negotiated by the sender and the receiver to generate n encrypted case information and send it to the doctor. Finally, the doctor uses the encryption parameter to decrypt the case information corresponding to the case acquisition request, but cannot decrypt other case information. It should be noted that this is only an exemplary description of the application scenario of the embodiment of the present invention, and the embodiment of the present invention is not limited to the aforementioned application scenario.

[0017] After exemplarily describing the application scenarios of the embodiments of the present invention, the technical solution itself will be described in conjunction with the accompanying drawings.

[0018] See also Figure 2 As shown, Figure 2 A flowchart of an oblivious transmission method provided by an embodiment of the present invention. Figure 2 The method shown is applied to an information transmission system, which includes: a sender and a receiver. The sender and the receiver have the same elliptic curve equation and elliptic curve base point G. In practical applications, the encryption algorithm corresponding to the elliptic curve equation can be the national secret SM2 algorithm, or an elliptic curve encryption algorithm such as the ECDSA (elliptic curve digital signature algorithm, elliptic curve digital signature) algorithm.

[0019] Furthermore, the initiator and the receiver may be electronic devices such as mobile phones, laptops, tablet computers, personal computers, servers, etc. that have computing capabilities, storage memory functions, and communication functions.

[0020] It should be noted that. In practical applications, before executing the oblivious transmission method of an embodiment of the present invention, in order to make the sender and the receiver have the same elliptic curve equation and elliptic curve base point G, initialization settings need to be performed. In some embodiments, the sender generates elliptic curve parameters, determines the elliptic curve equation according to the elliptic curve parameters, and then the sender determines the elliptic curve base point G based on the elliptic curve equation, and provides the elliptic curve parameters and the elliptic curve base point G to the receiver. In other embodiments, a third party that is trusted by both the sender and the receiver can be used to generate elliptic curve parameters, determine the elliptic curve equation according to the elliptic curve parameters, and then the third party determines the elliptic curve base point G based on the elliptic curve equation, and provides the elliptic curve parameters and the elliptic curve base point G to the sender and the receiver.

[0021] After the initialization setting is completed, an oblivious transmission method according to an embodiment of the present invention is executed. Figure 2 The oblivious transmission methods shown may include: In step S210, the receiver obtains the target message number t and generates a first random number r.

[0022] Where r∈[1, n-1], n is the order of the elliptic curve base point G. The target message number t is the message number of the target message to be sent selected by the receiver, and is used to identify the target message to be sent. Obviously, the message number of the message to be sent is set according to a certain numbering rule. For example, the numbering rule can set a message number for each message to be sent in an ascending order from 1 to k. At this time, the target message number t is the message number of the tth message to be sent. Of course, the numbering rule is not limited to an ascending order from 1 to k. For example, the message number of the first message to be sent is set to 2, the message number of the second message to be sent is set to 4, the message number of the third message to be sent is set to 6, and so on.

[0023] Specifically, the recipient can select the target message number t from the message number list. In actual applications, the sender can set a message number for each message to be sent, generate a message number list using each message number, and send it to the recipient. In addition, in some implementations, the message number list can also include description information of each message to be sent, so that the recipient can select the target message number t according to the description information. Of course, the recipient can also select the target message number t from the message number list according to the set rules (for example, selecting in order of message number size), and the setting rules are determined according to actual application requirements. In particular, the recipient user can also obtain the target message number through other channels (such as the message number provided by the patient) and input it to the recipient.

[0024] In step S220, the receiver calculates the first elliptic curve point Y by using the first corresponding relationship among the target message number t, the first random number r, the elliptic curve base point G and the first elliptic curve point Y.

[0025] Specifically, the first corresponding relationship is a functional relationship between the target message number t, the first random number r, the elliptic curve base point G and the first elliptic curve point Y. The recipient can substitute the target message number t, the first random number r and the elliptic curve base point G into the first corresponding relationship to calculate the first elliptic curve point Y.

[0026] Among them, the first random number r is introduced when calculating the first elliptic curve point Y, so that the first elliptic curve point Y is not the elliptic curve point directly corresponding to the target message label t, and the elliptic curve point directly corresponding to the target message label t is hidden. The sender cannot calculate the target message to be sent corresponding to the target message label t that the receiver wants to obtain based on the first elliptic curve point Y, thereby protecting the privacy of the receiver.

[0027] In step S230, the receiver sends the first elliptic curve point Y to the sender.

[0028] In step S240, the sender sends k messages m to be sent. v1 、m v2 ,……,m vk Processing is performed to obtain k groups of ciphertext data.

[0029] Among them, the k messages to be sent include the target message m to be sent corresponding to the target message number t t , subscripts v1, v2, ..., vk are the message numbers of the messages to be sent. In some implementations, v1, v2, ..., vk are 1, 2, ..., k. The message m to be sent with message number i i The corresponding ciphertext data includes: M i and A i , M i The sender treats the message m as sent iThe encrypted ciphertext obtained after encryption, A i For M i The corresponding collaboration key, i∈{v1,v2,…,vk}.

[0030] In the embodiment of the present invention, after receiving the first elliptic curve point Y, the sender performs the following operations on the k messages m to be sent: v1 、m v2 ,……,m vk The steps to perform the processing. Figure 3 As shown, the sender has k messages to be sent m v1 、m v2 ,……,m vk Perform the following processing respectively to obtain k groups of ciphertext data.

[0031] In step S2401, the sender generates a second random number k i , where k i ∈[1,n-1].

[0032] In step S2402, the sender uses the second random number k i and collaboration key A i The second correspondence between the two calculates the collaborative key A i .

[0033] Specifically, the second corresponding relationship is the second random number k i and collaboration key A i The receiver can use the second random number k i Substitute the first corresponding relationship to calculate the collaborative key A i .

[0034] The second correspondence relationship should ensure that the receiver cannot use the collaborative key A i Calculate the second random number k i , to achieve the second random number k i The encryption key of any message to be sent is hidden to prevent the receiver from calculating it. i is the second random number k i The corresponding elliptic curve point.

[0035] In step S2403, the sender uses the first elliptic curve point Y and the second random number k i , message number i, elliptic curve base point G and encryption key s i The third correspondence between the two calculates the message m to be sent i The encryption key i .

[0036] Specifically, the third corresponding relationship is the first elliptic curve point Y, the second random number k i , message number i, elliptic curve base point G and encryption key s i The receiver can use the first elliptic curve point Y and the second random number k i , the message number i and the elliptic curve base point G are substituted into the first corresponding relationship to calculate the collaborative key A i .

[0037] In step S2404, the sender uses the encryption key s i Treat the sent message m i Encrypt and get the encrypted ciphertext M i .

[0038] It should be noted that the message number i in the embodiment of the present invention is a general reference, that is, the sender executes Figure 3 In the ciphertext data generation method of the illustrated embodiment, each set of ciphertext data includes an encrypted ciphertext and a collaborative key, wherein the second random numbers of different messages to be sent are generated separately.

[0039] In step S250, the sender sends k groups of ciphertext data to the receiver.

[0040] In step S260, the receiver uses the first random number r and the collaboration key A corresponding to the target message number t to generate a t Calculate the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t .

[0041] Specifically, the receiver is configured to calculate the decryption key e t According to the functional relationship, the decryption key e can be calculated t Among them, the decryption key e t and encryption keys t Both are the same as the target message to be sent m t Correspondingly, when the encryption algorithm used to encrypt the message to be sent is a symmetric encryption algorithm, the decryption key e t and encryption keys t When the encryption algorithm used to encrypt the message to be sent is an asymmetric encryption algorithm, the decryption key e t and encryption keys t are the corresponding public and private key pairs.

[0042] It should be noted that in actual applications, the first correspondence, the second correspondence, the third correspondence and the functional relationship for calculating the decryption key are not unique. The general requirement is that the first correspondence, the second correspondence, the third correspondence and the functional relationship for calculating the decryption key are designed so that when i=t, the calculated decryption key e t and encryption keys t Correspondingly, the decryption key e t Ability to decrypt encryption keys t Encrypted message to be sent m t When i≠t, the calculated decryption key e i and encryption keys i No correspondence, that is, the decryption key e i Unable to decrypt encryption key i Encrypted message to be sent m i , or the decryption key e i Unable to decrypt the encrypted ciphertext M corresponding to message number i i .

[0043] In order to meet the above-mentioned design requirements, one possible design idea is: the third corresponding relationship includes a part that is not related to the message number and a part that is related to the message number, and the part that is related to the message number is equal to 0 when i=t, and is not equal to 0 when i≠t; the functional relationship for calculating the decryption key corresponds to the part that is not related to the message number. Another possible design idea is: the third corresponding relationship includes a part that is not related to the message number; the functional relationship for calculating the decryption key includes a part that is related to the message number and a decryption part, and the part that is related to the message number is equal to 0 when i=t, and is not equal to 0 when i≠t, and the decryption part corresponds to the part that is not related to the message number. It should be noted here that in both design ideas, the part that is not related to the message number and the part that is related to the message number are both related to the second random number, so that when i≠t, the receiver cannot calculate the part that is related to the message number (the first design idea) or the part that is not related to the message number (the second design idea), and therefore cannot decrypt the encrypted ciphertext M corresponding to the message number i. i .

[0044] The oblivious transmission method provided by the embodiment of the present invention introduces the first random number r, so that the sender cannot calculate the target message to be sent corresponding to the target message label t that the receiver wants to obtain based on the first elliptic curve point Y, thereby protecting the privacy of the receiver. At the same time, the sender introduces a collaboration key related to the second random number to hide the second random number. When calculating the encryption key, the second random number, the message label and the first elliptic curve point Y are introduced, so that the encryption key is related to the first random number, the second random number, the message label and the target message label. Since the receiver obtains the encrypted ciphertext and the collaboration key encrypted by the encryption key, it is impossible to directly obtain the second random number generated by the sender. When the message label and the target message label are not equal, the decryption key cannot decrypt the encrypted ciphertext corresponding to the message label, so that the receiver can only decrypt the encrypted ciphertext corresponding to the target message label. The technical solution of the embodiment of the present invention realizes the oblivious transmission of the sender and the receiver.

[0045] Furthermore, possible forms of expression of the first corresponding relationship, the second corresponding relationship, the third corresponding relationship and the functional relationship for calculating the decryption key are described below through several specific embodiments.

[0046] In a specific embodiment E1 of the present invention, step S260 may include: the receiving party uses the first random number r, the collaborative key A i and the decryption key e i The fourth correspondence between the two calculates the decryption key e corresponding to the ciphertext data i , using the decryption key e i Decrypt the encrypted ciphertext M i , and use the obtained valid message to be sent as the target message to be sent m t .

[0047] In the specific embodiment E1, the first corresponding relationship is: Y=[r]G+[t]G; the second corresponding relationship is: A i =[k i ]G; the third corresponding relationship is: B i =[k i ](Y-[i]G) =(x i ,y i ), s i = KDF(x i ,y i ); the fourth corresponding relationship is: C i =[r]A i =(x c ,y c ), e i =KDF(x c ,y c ), where B iRepresents the third elliptic curve point corresponding to the message number i, (x i ,y i ) represents the third elliptic curve point B i The coordinates of i The fourth elliptic curve point corresponding to the message number i, (x c ,y c ) represents the fourth elliptic curve point C i The coordinates of A, KDF() represents the key derivation function. i =[k i ]G, that is, A i k is the base point of the elliptic curve G i times point, due to the asymmetry of the elliptic curve, the receiver cannot use the collaborative key A i Calculate the second random number k i .

[0048] The correctness of the specific embodiment E1 is demonstrated below: B i =[k i ](Y-[i]G) =[k i ]Y-[k i ·i]G =[k i ]([r]G+[t]G)-[k i ·i]G =[ k i ·r]G+[k i ·t] - [k i ·i]G =[ k i ·r]G+[ k i t-k i ·i]G And C i =[r]A i = [k i ·r]G. Where “·” represents large number modular multiplication operation.

[0049] It can be seen that when i=t, B i Equal to C i , then the encryption key s i Equal to the decryption key e i , which is the encryption key s t Equal to the decryption key e t . Decryption Key e t Can decrypt the encrypted ciphertext M t , the valid message to be sent is the target message to be sent m t When i≠t, B iNot equal to C i , then the encryption key s i Not equal to the decryption key e i , so the decryption key e i Unable to decrypt encrypted ciphertext M i , after decryption, the result is an invalid message to be sent. Therefore, the receiver can only obtain the target message to be sent m t , but cannot obtain the target message m t Other messages to be sent.

[0050] Obviously, B i In [k i ·r]G is the part that is not related to the message number, [k i t-k i ·i]G is the part related to the message number. The fourth corresponding relationship is the functional relationship for calculating the decryption key.

[0051] It should be noted that in the specific embodiment E1, since the ciphertext data does not include the message label, the receiver needs to obtain the collaborative key A from each set of ciphertext data. i , and then calculate the decryption key e i , until the decryption key e i Can decrypt M in this set of ciphertext data i , and use the obtained valid message to be sent as the target message to be sent m t .

[0052] In a specific embodiment E2 of the present invention, each group of ciphertext data includes a message number of a message to be sent, and step S260 may include: the sender searches for ciphertext data with a message number t according to the target message number t; the receiver uses the first random number r and the collaborative key A t and the decryption key e t The fifth correspondence between the two calculates the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t .

[0053] In the specific embodiment E2, the first corresponding relationship is: Y=[r]G+[t]G; the second corresponding relationship is: A i =[k i ]G; the third corresponding relationship is: B i =[k i ](Y-[i]G) =(x i ,y i ), s i = KDF(xi ,y i ); The fifth corresponding relationship is: C i =[r]A i =(x i ´,y i ´) ,e t =KDF(x i ´,y i ´); where B i Represents the third elliptic curve point corresponding to the message number i, (x i ,y i ) represents the third elliptic curve point B i The coordinates of i The fourth elliptic curve point corresponding to the message number i, (x i ´,y i ´) represents the fourth elliptic curve point C i coordinates, KDF() represents the key derivation function.

[0054] The correctness of specific embodiment E2 is demonstrated below: B i =[k i ](Y-[i]G) =[k i ]Y-[k i ·i]G =[k i ]([r]G+[t]G)-[ k i ·i]G =[ k i ·r]G+[ k i ·t] - [k i ·i]G =[ k i ·r]G+[ k i t-k i ·i]G And C i =[r]A i = [k i ·r]G.

[0055] It can be seen that when i=t, B i Equal to C i , then the encryption key s i Equal to the decryption key e i , which is the encryption key s t Equal to the decryption key e t . Decryption Key e t Can decrypt the encrypted ciphertext M t , get the target message m to be sent tWhen i≠t, B i Not equal to C i , then the encryption key s i Not equal to the decryption key e i , so the decryption key e i Unable to decrypt encrypted ciphertext M i Therefore, the receiver can only obtain the target message m to be sent. t , but cannot obtain the target message m t Other messages to be sent.

[0056] Obviously, B i In [k i ·r]G is the part that is not related to the message number, [k i t-k i ·i]G is the part related to the message number. The fifth corresponding relationship is the functional relationship for calculating the decryption key.

[0057] Compared with the specific embodiment E1, the specific embodiment E2 can directly find the ciphertext data corresponding to the target message number t, and the encrypted ciphertext M therein t Decrypt and get the target message m to be sent t There is no need to perform decryption calculations on each set of ciphertext data, thereby saving computing resources and improving data transmission efficiency.

[0058] In a specific embodiment E3 of the present invention, the oblivious transmission method of the embodiment of the present invention may further include: The sender generates a third random number q, where q∈[1, n-1]; The sender calculates the second elliptic curve point Q=qG, and sends the second elliptic curve point Q to the receiver.

[0059] Accordingly, step S220 may include: the receiver calculates the first elliptic curve point Y using the first corresponding relationship among the target message label t, the first random number r, the elliptic curve base point G, the second elliptic curve point Q and the first elliptic curve point Y.

[0060] Step S260 may include: the receiver uses the first random number r and the collaboration key A i and the decryption key e i The sixth correspondence between the two is to calculate the decryption key e corresponding to the ciphertext data. i , using the decryption key e i Decrypt the encrypted ciphertext M i , and use the obtained valid message to be sent as the target message to be sent m t .

[0061] In the specific embodiment E3, the first corresponding relationship is: Y=[r]Q+[t]G; the second corresponding relationship is: A i =(k i ·q)modn; the third corresponding relationship is: s i =[k i ](Y-[i]G) =(x i ,y i ); the sixth corresponding relationship is: e i =(A i ·r)modn.

[0062] Wherein, mod n represents the modulo n operation. i =(k i q)modn, that is, A i k i ·Modular n operation of q. Since the modulo n operation is performed, the same A i The corresponding k i q is not unique, the receiver cannot use the collaborative key A i Calculate the second random number k i ;(x i ,y i ) represents the encryption key s i Coordinates on an elliptic curve.

[0063] The correctness of specific embodiment E3 is demonstrated below: s i =[k i ](Y-[i]G) =[k i ]Y-[k i ·i]G =[k i ]([r]Q+[t]G)-[ k i ·i]G =[k i ]([r·q]G +[t]G) - [k i ·i]G =[ k i ·q·r]G+[ k i t-k i ·i]G And e i =(A i ·r)modn=(k i ·q·r)modn.

[0064] It can be seen that when i=t, the encryption key s i and the decryption key e i Constitute a public-private key pair, i.e. the decryption key et The encryption key s t The private key of the decryption key e t Can decrypt the encrypted ciphertext M t , the valid message to be sent is the target message to be sent m t When i≠t, the encryption key s i and the decryption key e i It does not constitute a public-private key pair, so the decryption key e i Unable to decrypt encrypted ciphertext M i Therefore, the receiver can only obtain the target message m to be sent. t , but cannot obtain the target message m t Other messages to be sent.

[0065] Obviously, s i In [k i ·q·r]G is the part that is irrelevant to the message number, [k i t-k i ·i]G is the part related to the message number. The sixth corresponding relationship is the functional relationship for calculating the decryption key.

[0066] It should be noted that in the specific embodiment E3, since the ciphertext data does not include the message label, the receiver needs to obtain the collaborative key A from each set of ciphertext data. i , and then calculate the decryption key e i , until the decryption key e i Can decrypt M in this set of ciphertext data i , and use the obtained valid message to be sent as the target message to be sent m t .

[0067] In a specific embodiment E4 of the present invention, each group of ciphertext data includes a message number of a message to be sent, and the oblivious transmission method of the embodiment of the present invention may further include: The sender generates a third random number q, where q∈[1, n-1]; The sender calculates the second elliptic curve point Q=qG, and sends the second elliptic curve point Q to the receiver.

[0068] Accordingly, step S220 may include: the receiver calculates the first elliptic curve point Y using the first corresponding relationship among the target message label t, the first random number r, the elliptic curve base point G, the second elliptic curve point Q and the first elliptic curve point Y.

[0069] Step S260 may include: the sending party searches for the ciphertext data with the target message number t according to the target message number t; the receiving party uses the first random number r and the collaborative key A t and the decryption key et The seventh correspondence between the two calculates the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t .

[0070] In the specific embodiment E4, the first corresponding relationship is: Y=[r]Q+[t]G; the second corresponding relationship is: A i =(k i ·q)modn; the third corresponding relationship is: s i =[k i ](Y-[i]G) =(x i ,y i ); The seventh corresponding relationship is: e i =(A i ·r)modn;(x i ,y i ) represents the encryption key s i Coordinates on an elliptic curve.

[0071] The correctness of specific embodiment E4 is demonstrated below: s i =[k i ](Y-[i]G) =[k i ]Y-[k i ·i]G =[k i ]([r]Q+[t]G)-[ k i ·i]G =[k i ]([r·q]G +[t]G) - [k i ·i]G =[ k i ·q·r]G+[ k i t-k i ·i]G And e i =(A i ·r)modn=(k i ·q·r)modn.

[0072] It can be seen that when i=t, the encryption key s i and the decryption key e i Constitute a public-private key pair, i.e. the decryption key e t The encryption key s t The private key of the decryption key e t Can decrypt the encrypted ciphertext Mt , get the target message m to be sent t When i≠t, the encryption key s i and the decryption key e i It does not constitute a public-private key pair, so the decryption key e i Unable to decrypt encrypted ciphertext M i Therefore, the receiver can only obtain the target message m to be sent. t , but cannot obtain the target message m t Other messages to be sent.

[0073] Obviously, s i In [k i ·q·r]G is the part that is irrelevant to the message number, [k i t-k i ·i]G is the part related to the message number. The seventh corresponding relationship is the functional relationship for calculating the decryption key.

[0074] Compared with the specific embodiment E3, the specific embodiment E4 can directly find the ciphertext data corresponding to the target message number t, and perform the encrypted ciphertext M therein. t Decrypt and get the target message m to be sent t There is no need to perform decryption calculations on each set of ciphertext data, thereby saving computing resources and improving data transmission efficiency.

[0075] In a specific embodiment E5 of the present invention, the oblivious transmission method of the embodiment of the present invention may further include: The sender generates a fourth random number p, where p∈[1, n-1]; The sender generates the fifth random number d i , where d i ∈[1,n-1]; The sender calculates the third elliptic curve point P=pG, and sends the third elliptic curve point P to the receiver.

[0076] It should be noted that a fifth random number is generated for each message to be sent.

[0077] Correspondingly, step S220 may include: the receiver calculates the first elliptic curve point Y using a first correspondence between the target message number t, the first random number r, the elliptic curve base point G, the third elliptic curve point P and the first elliptic curve point Y.

[0078] Step S2403 may include: the sender uses the first elliptic curve point Y and the second random number k i , message number i, fifth random number d i The third correspondence between the elliptic curve base point G is used to calculate the message m to be senti The encryption key i .

[0079] Step S260 may include: the receiver uses the first random number r and the collaboration key A i , the fifth random number d i and the decryption key e i The eighth correspondence between the two is to calculate the decryption key e corresponding to the ciphertext data i , using the decryption key e i Decrypt the encrypted ciphertext M i , and use the obtained valid message to be sent as the target message to be sent m t .

[0080] In the specific embodiment E5, the first corresponding relationship is: Y=[r]P+[t]G; the second corresponding relationship is: A i =(k i ·p)modn; the third corresponding relationship is: s i =[k i ](Y-[i]G)+d i G =(x i ,y i ); The eighth corresponding relationship is: e i =(A i ·r+d i )modn;(x i ,y i ) represents the encryption key s i Coordinates on an elliptic curve.

[0081] Among them, A i =(k i p)modn, that is, A i k i · Modulo n operation of p. Since modulo n operation is performed, the same A i The corresponding k i p is not unique, the receiver cannot use the collaborative key A i Calculate the second random number k i .

[0082] The correctness of specific embodiment E5 is demonstrated below: s i =[k i ](Y-[i]G) +d i G =[k i ]Y-[k i ·i]G+d i G =[k i ]([r]P+[t]G)-[ ki ·i]G+d i G =[k i ]([r·p]G +[t]G) - [k i ·i]G+d i G =[ k i ·p·r+d i ]G+[ k i t-k i ·i]G And e i =(A i ·r+d i )modn=(k i ·p·r+d i )modn.

[0083] It can be seen that when i=t, the encryption key s i and the decryption key e i Constitute a public-private key pair, i.e. the decryption key e t The encryption key s t The private key of the decryption key e t Can decrypt the encrypted ciphertext M t , the valid message to be sent is the target message to be sent m t When i≠t, the encryption key s i and the decryption key e i It does not constitute a public-private key pair, so the decryption key e i Unable to decrypt encrypted ciphertext M i Therefore, the receiver can only obtain the target message m to be sent. t , but cannot obtain the target message m t Other messages to be sent.

[0084] Obviously, s i In [k i ·p·r+d i ]G is the part that is not related to the message number, [k i t-k i ·i]G is the part related to the message number. The eighth corresponding relationship is the functional relationship for calculating the decryption key.

[0085] It should be noted that in the specific embodiment E5, since the ciphertext data does not include the message number, the receiver needs to obtain the collaborative key A from each set of ciphertext data. i , and then calculate the decryption key e i , until the decryption key e i Can decrypt M in this set of ciphertext data i, and use the obtained valid message to be sent as the target message to be sent m t .

[0086] In a specific embodiment E6 of the present invention, each group of ciphertext data includes a message number of a message to be sent, and the oblivious transmission method of the embodiment of the present invention may further include: The sender generates a fourth random number p, where p∈[1, n-1]; The sender generates the fifth random number d i , where d i ∈[1,n-1]; The sender calculates the third elliptic curve point P=pG, and sends the third elliptic curve point P to the receiver.

[0087] Accordingly, step S220 may include: the receiver calculates the first elliptic curve point Y using the first corresponding relationship among the target message number t, the first random number r, the elliptic curve base point G, the third elliptic curve point P and the first elliptic curve point Y.

[0088] Step S2403 may include: the sender uses the first elliptic curve point Y and the second random number k i , message number i, fifth random number d i The third correspondence between the elliptic curve base point G is used to calculate the message m to be sent i The encryption key i .

[0089] Step S260 may include: the sending party searches for the ciphertext data with the target message number t according to the target message number t; the receiving party uses the first random number r and the collaborative key A t , the fifth random number d t and the decryption key e t The ninth correspondence between the two calculates the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t .

[0090] In the specific embodiment E6, the first corresponding relationship is: Y=[r]P+[t]G; the second corresponding relationship is: A i =(k i ·p)modn; the third corresponding relationship is: s i =[k i ](Y-[i]G)+d i G =(x i ,y i ); The ninth corresponding relationship is: e i=(A i ·r+d i )modn;(x i ,y i ) represents the encryption key s i Coordinates on an elliptic curve.

[0091] The correctness of specific embodiment E6 is demonstrated below: s i =[k i ](Y-[i]G) +d i G =[k i ]Y-[k i ·i]G+d i G =[k i ]([r]P+[t]G)-[ k i ·i]G+d i G =[k i ]([r·p]G +[t]G) - [k i ·i]G+d i G =[ k i ·p·r+d i ]G+[ k i t-k i ·i]G And e i =(A i ·r+d i )modn=(k i ·p·r+d i )modn.

[0092] It can be seen that when i=t, the encryption key s i and the decryption key e i Constitute a public-private key pair, i.e. the decryption key e t The encryption key s t The private key of the decryption key e t Can decrypt the encrypted ciphertext M t , the valid message to be sent is the target message to be sent m t When i≠t, the encryption key s i and the decryption key e i It does not constitute a public-private key pair, so the decryption key e i Unable to decrypt encrypted ciphertext M i Therefore, the receiver can only obtain the target message m to be sent. t , but cannot obtain the target message m t Other messages to be sent.

[0093] Obviously, s i In [k i ·p·r+d i ]G is the part that is not related to the message number, [k i t-k i ·i]G is the part related to the message number. The ninth corresponding relationship is the functional relationship for calculating the decryption key.

[0094] Compared with the specific embodiment E5, the specific embodiment E6 can directly find the ciphertext data corresponding to the target message number t, and perform the encrypted ciphertext M therein. t Decrypt and get the target message m to be sent t There is no need to perform decryption calculations on each set of ciphertext data, thereby saving computing resources and improving data transmission efficiency.

[0095] In a specific embodiment E7 of the present invention, the encryption key s i Includes: first encryption key s i1 and the second encryption key s i2 Each set of ciphertext data also includes a second encryption key s i2 The oblivious transmission method of the embodiment of the present invention may further include: The sender generates the sixth random number h i , where h i ∈[1,n-1].

[0096] It should be noted that a sixth random number is generated for each message to be sent.

[0097] Step S2403 may include: the sender uses the first elliptic curve point Y and the second random number k i , message number i, sixth random number h i The third correspondence between the elliptic curve base point G is used to calculate the message m to be sent i The first encryption key s i1 and the second encryption key s i2 .

[0098] Step S2404 may include: the sender uses the first encryption key s i1 Treat the sent message m i Encrypt and get the encrypted ciphertext M i .

[0099] Step S260 may include: the receiver uses the first random number r and the collaboration key A i、 Second encryption key i2 and the decryption key e i The tenth correspondence between the two is used to calculate the decryption key e corresponding to the ciphertext data.i , using the decryption key e i Decrypt the encrypted ciphertext M i , and use the obtained valid message to be sent as the target message to be sent m t .

[0100] In the specific embodiment E7, the first corresponding relationship is: Y=[r]G+[t]G; the second corresponding relationship is: A i =[k i ]G; the third corresponding relationship is: s i1 =[h i ]G,s i2 =[k i ](Y-[i]G)+[h i ]G; the tenth corresponding relationship is: e i =s i2 -[r]A i .

[0101] Among them, A i =[k i ]G, that is, A i k is the base point of the elliptic curve G i times point, due to the asymmetry of the elliptic curve, the receiver cannot use the collaborative key A i Calculate the second random number k i .

[0102] The correctness of specific embodiment E7 is demonstrated below: e i =s i2 -[r]A i =[k i ](Y-[i]G)+[h i ]G-[k i ·r]G =[k i ]Y-[k i ·i]G+[h i ]G-[k i ·r]G =[k i ]([r]G+[t]G)-[k i ·i]G+[h i ]G-[k i ·r]G =[k i ·r]G+[k i ·t] - [k i ·i]G+[h i ]G-[k i ·r]G =[hi ]G+[k i t-k i ·i]G It can be seen that when i=t, the first encryption key s i1 Equal to the decryption key e i , that is, the first encryption key s t1 Equal to the decryption key e t . Decryption Key e t Can decrypt the encrypted ciphertext M t , get the target message m to be sent t When i≠t, the first encryption key s i1 Not equal to the decryption key e i , so the decryption key e i Unable to decrypt encrypted ciphertext M i Therefore, the receiver can only obtain the target message m to be sent. t , but cannot obtain the target message m t Other messages to be sent.

[0103] Obviously, e i In [h i ]G is the part that is not related to the message number, [k i t-k i ·i]G is the part related to the message number. The tenth corresponding relationship is the functional relationship for calculating the decryption key.

[0104] It should be noted that in the specific embodiment E7, since the ciphertext data does not include the message number, the receiver needs to obtain the collaborative key A from each set of ciphertext data. i and i2 , and then calculate the decryption key e i , until the decryption key e i Can decrypt M in this set of ciphertext data i , and use the obtained valid message to be sent as the target message to be sent m t .

[0105] In a specific embodiment E8 of the present invention, each set of ciphertext data includes a message number of the message to be sent, an encryption key s i Includes: first encryption key s i1 and the second encryption key s i2 Each set of ciphertext data also includes a second encryption key s i2 The oblivious transmission method of the embodiment of the present invention may further include: The sender generates a sixth random number h i , where h i ∈[1,n-1].

[0106] Step S2403 may include: the sender uses the first elliptic curve point Y and the second random number k i , message number i, sixth random number h i The third correspondence between the elliptic curve base point G is used to calculate the message m to be sent i The first encryption key s i1 and the second encryption key s i2 .

[0107] Step S2404 may include: the sender uses the first encryption key s i1 Treat the sent message m i Encrypt and get the encrypted ciphertext M i .

[0108] Step S260 may include: the sending party searches for the ciphertext data with the target message number t according to the target message number t; the receiving party uses the first random number r and the collaborative key A t , the second encryption key s t2 and the decryption key e t The eleventh corresponding relationship between the two calculates the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t .

[0109] In the specific embodiment E8, the first corresponding relationship is: Y=[r]G+[t]G; the second corresponding relationship is: A i =[k i ]G; the third corresponding relationship is: s i1 =[h i ]G,s i2 =[k i ](Y-[i]G)+[h i ]G; the eleventh corresponding relationship is: e i =s i2 -r·A i .

[0110] The correctness of specific embodiment E8 is demonstrated below: e i =s i2 -[r]A i =[k i ](Y-[i]G)+[h i ]G-[k i ·r]G =[k i ]Y-[ki ·i]G+[h i ]G-[k i ·r]G =[k i ]([r]G+[t]G)-[k i ·i]G+[h i ]G-[k i ·r]G =[k i ·r]G+[k i ·t] - [k i ·i]G+[h i ]G-[k i ·r]G =[h i ]G+[k i t-k i ·i]G It can be seen that when i=t, the first encryption key s i1 Equal to the decryption key e i , that is, the first encryption key s t1 Equal to the decryption key e t . Decryption Key e t Can decrypt the encrypted ciphertext M t , get the target message m to be sent t When i≠t, the first encryption key s i1 Not equal to the decryption key e i , so the decryption key e i Unable to decrypt encrypted ciphertext M i Therefore, the receiver can only obtain the target message m to be sent. t , but cannot obtain the target message m t Other messages to be sent.

[0111] Obviously, e i In [h i ]G is the part that is not related to the message number, [k i t-k i ·i]G is the part related to the message number. The eleventh corresponding relationship is the functional relationship for calculating the decryption key.

[0112] Compared with the specific embodiment E7, the specific embodiment E8 can directly find the ciphertext data corresponding to the target message number t, and perform the encrypted ciphertext M therein. t Decrypt and get the target message m to be sent t There is no need to perform decryption calculations on each set of ciphertext data, thereby saving computing resources and improving data transmission efficiency.

[0113] Corresponding to the above method embodiment, the embodiment of the present invention further discloses an oblivious transmission device, which is applied to an information transmission system. The information transmission system includes: a sender and a receiver, and the sender and the receiver have the same elliptic curve equation and elliptic curve base point G. Figure 4 As shown, the oblivious transmission device of the embodiment of the present invention may include: an acquisition unit 410, a first calculation unit 420, a first sending unit 430 and a decryption unit 460 located at the receiving side, and a processing unit 440 and a second sending unit 450 located at the sending side.

[0114] The acquisition unit 410 is used to acquire the target message label t and generate a first random number r; wherein r∈[1, n-1], n is the order of the elliptic curve base point G; The first calculation unit 420 is used to calculate the first elliptic curve point Y by using the first corresponding relationship between the target message label t, the first random number r, the elliptic curve base point G and the first elliptic curve point Y; The first sending unit 430 is used to send the first elliptic curve point Y to the sender; The processing unit 440 is used to process k messages m to be sent. v1 、m v2 ,……,m vk Processing is performed to obtain k groups of ciphertext data; wherein the k messages to be sent include the target message m to be sent corresponding to the target message number t t , the message m to be sent with message number i i The corresponding ciphertext data includes: M i and A i , M i The sender is to send the message m i The encrypted ciphertext obtained after encryption, A i For M i The corresponding collaboration key, i∈{v1,v2,…,vk}; The second sending unit 450 is used to send the k groups of ciphertext data to the receiving party; The decryption unit 460 is configured to decrypt the target message based on the first random number r and the collaboration key A corresponding to the target message number t. t Calculate the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t , and i≠t, the decryption key e i Unable to decrypt the encrypted ciphertext M corresponding to message number i i .

[0115] The processing unit 440 processes the k messages m to be sent. v1 、m v2 ,……,m vk Perform the following processing respectively: Generate a second random number k i , where k i ∈[1,n-1]; Using the second random number k i and collaboration key A i The second correspondence between the two calculates the collaborative key A i ; Using the first elliptic curve point Y and the second random number k i , the third correspondence between the message number i and the elliptic curve base point G is used to calculate the message m to be sent i The encryption key i ; Using the encryption key s i Treat the sent message m i Encrypt and get the encrypted ciphertext M i .

[0116] An oblivious transmission device provided by an embodiment of the present invention introduces a first random number r so that the sender cannot calculate the target message to be sent corresponding to the target message label t that the receiver wants to obtain based on the first elliptic curve point Y, thereby protecting the privacy of the receiver. At the same time, the sender introduces a collaboration key related to the second random number to hide the second random number. When calculating the encryption key, the second random number, the message label and the first elliptic curve point Y are introduced, so that the encryption key is related to the first random number, the second random number, the message label and the target message label. Since the receiver obtains the encrypted ciphertext and the collaboration key encrypted by the encryption key, it is impossible to directly obtain the second random number generated by the sender. When the message label and the target message label are not equal, the decryption key cannot decrypt the encrypted ciphertext corresponding to the message label, so that the receiver can only decrypt the encrypted ciphertext corresponding to the target message label. The technical solution of the embodiment of the present invention realizes the oblivious transmission of the sender and the receiver.

[0117] Optionally, in some implementations of the embodiments of the present invention, the decryption unit 460 is specifically configured to: use the first random number r and the collaborative key A i and the decryption key e i The fourth correspondence between the two calculates the decryption key e corresponding to the ciphertext data i , using the decryption key e i Decrypt the encrypted ciphertext M i , and use the obtained valid message to be sent as the target message to be sent m t ; Among them, the first corresponding relationship is: Y=[r]G+[t]G; the second corresponding relationship is: A i =[k i ]G; the third corresponding relationship is: B i =[k i ](Y-[i]G) =(x i ,y i ), s i = KDF(x i ,y i ); the fourth corresponding relationship is: C i =[r]A i =(x i ´,y i ´) ,e i =KDF(x i ´,y i ´); where B i Represents the third elliptic curve point corresponding to the message number i, (x i ,y i ) represents the third elliptic curve point B i The coordinates of i The fourth elliptic curve point corresponding to the message number i, (x i ´,y i ´) represents the fourth elliptic curve point C i coordinates, KDF() represents the key derivation function.

[0118] Optionally, in some implementations of the embodiments of the present invention, each group of ciphertext data includes a message number of a message to be sent, and the decryption unit 460 is specifically used to: Searching for ciphertext data with message number t according to the target message number t; Using the first random number r and the collaborative key A t and the decryption key e t The fifth correspondence between the two calculates the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t ; Among them, the first corresponding relationship is: Y=[r]G+[t]G; the second corresponding relationship is: A i =[k i ]G; The third corresponding relationship is: i =[k i ](Y-[i]G) =(xi ,y i ), s i = KDF(x i ,y i ); the fifth corresponding relationship is: C i =[r]A i =(x i ´,y i ´) ,e i =KDF(x i ´,y i ´); where B i Represents the third elliptic curve point corresponding to the message number i, (x i ,y i ) represents the third elliptic curve point B i The coordinates of i The fourth elliptic curve point corresponding to the message number i, (x i ´,y i ´) represents the fourth elliptic curve point C i coordinates, KDF() represents the key derivation function.

[0119] Optionally, in some implementations of the embodiments of the present invention, the oblivious transmission device of the embodiments of the present invention may further include: a first generating unit and a second calculating unit located at the sending side.

[0120] The first generating unit is used to generate a third random number q; wherein q∈[1, n-1]; The second calculation unit is used to calculate the second elliptic curve point Q=qG; The second sending unit 450 is further configured to send the second elliptic curve point Q to the receiving party; The first calculation unit 420 is specifically used to: calculate the first elliptic curve point Y by using the first corresponding relationship between the target message number t, the first random number r, the elliptic curve base point G, the second elliptic curve point Q and the first elliptic curve point Y; The decryption unit 460 is specifically used to: use the first random number r and the collaborative key A i and the decryption key e i The sixth correspondence between the two is to calculate the decryption key e corresponding to the ciphertext data. i , using the decryption key e i Decrypt the encrypted ciphertext M i , and use the obtained valid message to be sent as the target message to be sent m t ; The first corresponding relationship is: Y=[r]Q+[t]G; the second corresponding relationship is: A i =(k i·q)modn; the third corresponding relationship is: s i =[k i ](Y-[i]G) =(x i ,y i ); the sixth corresponding relationship is: e i =(A i ·r)modn,(x i ,y i ) represents the encryption key s i Coordinates on an elliptic curve.

[0121] Optionally, in some implementations of the embodiments of the present invention, each group of ciphertext data includes a message number of a message to be sent, and the oblivious transmission device of the embodiments of the present invention may further include: a second generating unit and a third calculating unit located at the sending side.

[0122] The second generating unit is used to generate a third random number q; wherein q∈[1, n-1]; The third calculation unit is used to calculate the second elliptic curve point Q=qG; The second sending unit 450 is further configured to send the second elliptic curve point Q to the receiving party; The first calculation unit 420 is specifically used to: calculate the first elliptic curve point Y by using the first corresponding relationship between the target message number t, the first random number r, the elliptic curve base point G, the second elliptic curve point Q and the first elliptic curve point Y; The decryption unit 460 is specifically used to: search for the ciphertext data with the message number t according to the target message number t; use the first random number r and the collaborative key A t and the decryption key e t The seventh correspondence between the two calculates the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t ; The first corresponding relationship is: Y=[r]Q+[t]G; the second corresponding relationship is: A i =(k i ·q)modn; the third corresponding relationship is: s i =[k i ](Y-[i]G) =(x i ,y i ); the seventh corresponding relationship is: e i =(A i ·r)modn,(x i ,yi ) represents the encryption key s i Coordinates on an elliptic curve.

[0123] Optionally, in some implementation manners of the embodiments of the present invention, the oblivious transmission device of the embodiments of the present invention may further include: a third generating unit and a fourth calculating unit located at the sending side.

[0124] The third generating unit is used to generate a fourth random number p and a fifth random number d i ; where p∈[1,n-1], d i ∈[1,n-1]; The fourth calculation unit is used to calculate the third elliptic curve point P=pG; The second sending unit 450 is further configured to send the third elliptic curve point P to the receiving party; The first calculation unit 420 is specifically used to: calculate the first elliptic curve point Y by using the first corresponding relationship between the target message number t, the first random number r, the elliptic curve base point G, the third elliptic curve point P and the first elliptic curve point Y; The processing unit 440 uses the first elliptic curve point Y and the second random number k i , message number i, the elliptic curve base point G and encryption key s i The third correspondence between the two calculates the message m to be sent i The encryption key i The specific implementation method is: using the first elliptic curve point Y, the second random number k i , message number i, the fifth random number d i , the elliptic curve base point G and the encryption key s i The third correspondence between the two calculates the message m to be sent i The encryption key i ; The decryption unit 460 is specifically used to: use the first random number r and the collaborative key A i , the fifth random number d i and the decryption key e i The eighth correspondence between the two is to calculate the decryption key e corresponding to the ciphertext data i , using the decryption key e i Decrypt the encrypted ciphertext M i , and use the obtained valid message to be sent as the target message to be sent m t ; The first corresponding relationship is: Y=[r]P+[t]G; the second corresponding relationship is: A i =(k i ·p)modn; the third corresponding relationship is: si =[k i ](Y-[i]G)+d i G =(x i ,y i ); the eighth corresponding relationship is: e i =(A i ·r+d i )modn,(x i ,y i ) represents the encryption key s i Coordinates on an elliptic curve.

[0125] Optionally, in some implementations of the embodiments of the present invention, each group of ciphertext data includes a message number of a message to be sent, and the oblivious transmission device of the embodiments of the present invention may further include: a fourth generating unit and a fifth calculating unit located at the sender.

[0126] The fourth generating unit is used to generate a fourth random number p and a fifth random number d i ; where p∈[1,n-1], d i ∈[1,n-1]; The fifth calculation unit is used to calculate the third elliptic curve point P=pG; The second sending unit 450 is further configured to send the third elliptic curve point P to the receiving party; The first calculation unit 420 is specifically used to: calculate the first elliptic curve point Y by using the first corresponding relationship between the target message number t, the first random number r, the elliptic curve base point G, the third elliptic curve point P and the first elliptic curve point Y; The processing unit 440 uses the first elliptic curve point Y and the second random number k i , message number i, the elliptic curve base point G and encryption key s i The third correspondence between the two calculates the message m to be sent i The encryption key i The specific implementation method is: using the first elliptic curve point Y, the second random number k i , message number i, the fifth random number d i , the elliptic curve base point G and the encryption key s i The third correspondence between the two calculates the message m to be sent i The encryption key i ; The decryption unit 460 is specifically used to: search for the ciphertext data with the message number t according to the target message number t; use the first random number r and the collaborative key A t , the fifth random number d t and the decryption key e tThe ninth correspondence between the two calculates the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t ; The first corresponding relationship is: Y=[r]P+[t]G; the second corresponding relationship is: A i =(k i ·p)modn; the third corresponding relationship is: s i =[k i ](Y-[i]G)+d i G =(x i ,y i ); the ninth corresponding relationship is: e i =(A i ·r+d i )modn,(x i ,y i ) represents the encryption key s i Coordinates on an elliptic curve.

[0127] Optionally, in some implementations of the embodiments of the present invention, the encryption key s i Includes: first encryption key s i1 and the second encryption key s i2 Each set of ciphertext data also includes a second encryption key s i2 The oblivious transmission device of the embodiment of the present invention may further include: a fifth generating unit located at the sending side.

[0128] The fifth generating unit is used to generate a sixth random number h i , where h i ∈[1,n-1]; The processing unit 440 uses the first elliptic curve point Y and the second random number k i , message number i, the elliptic curve base point G and the encryption key s i The third correspondence relationship calculates the message m to be sent i The encryption key i The specific implementation method is: using the first elliptic curve point Y, the second random number k i , message number i, the sixth random number h i , the elliptic curve base point G, the first encryption key s i1 and the second encryption key s i2 The third correspondence between the two calculates the message m to be sent i The first encryption key s i1and the second encryption key s i2 ; The processing unit 440 uses the encryption key s i Treat the sent message m i Encrypt and get the encrypted ciphertext M i The specific implementation method is: using the first encryption key s i1 Treat the sent message m i Encrypt and get the encrypted ciphertext M i ; The decryption unit 460 is specifically used to: use the first random number r and the collaborative key A i、 Second encryption key i2 and the decryption key e i The tenth correspondence between the two is used to calculate the decryption key e corresponding to the ciphertext data. i , using the decryption key e i Decrypt the encrypted ciphertext M i , and use the obtained valid message to be sent as the target message to be sent m t ; Among them, the first corresponding relationship is: Y=[r]G+[t]G; the second corresponding relationship is: A i =[k i ]G; The third corresponding relationship is: i1 =[h i ]G,s i2 =[k i ](Y-[i]G)+[h i ]G; the tenth corresponding relationship is: e i =s i2 -r·A i .

[0129] Optionally, in some implementations of the embodiments of the present invention, each group of ciphertext data includes a message number of a message to be sent, and the encryption key si includes: a first encryption key s i1 and the second encryption key s i2 Each set of ciphertext data also includes a second encryption key s i2 The oblivious transmission device of the embodiment of the present invention may further include: a sixth generating unit located at the sending side.

[0130] The sixth generating unit is used to generate a sixth random number h i , where h i ∈[1,n-1]; The processing unit 440 uses the first elliptic curve point Y and the second random number k i , message number i, the elliptic curve base point G and encryption key s iThe third correspondence between the two calculates the message m to be sent i The encryption key i The specific implementation method is: using the first elliptic curve point Y, the second random number k i , message number i, the sixth random number h i , the elliptic curve base point G, the first encryption key s i1 and the second encryption key s i2 The third correspondence between the two calculates the message m to be sent i The first encryption key s i1 and the second encryption key s i2 ; The processing unit 440 uses the encryption key s i Treat the sent message m i Encrypt and get the encrypted ciphertext M i The specific implementation method is: using the first encryption key s i1 Treat the sent message m i Encrypt and get the encrypted ciphertext M i ; The decryption unit 460 is specifically used to: search for the ciphertext data with the message number t according to the target message number t; use the first random number r and the collaborative key A t , the second encryption key s t2 and the decryption key e t The eleventh corresponding relationship between the two calculates the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t ; Among them, the first corresponding relationship is: Y=[r]G+[t]G; the second corresponding relationship is: A i =[k i ]G; The third corresponding relationship is: i1 =[h i ]G,s i2 =[k i ](Y-[i]G)+[h i ]G; the eleventh corresponding relationship is: e i =s i2 -r·A i .

[0131] It should be noted that the modules described as separate components in the above system embodiments may or may not be physically separated, and the components shown as modules may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0132] In addition, each functional module in each embodiment of the present invention may be integrated into one processing unit, or each module may exist physically separately, or two or more modules may be integrated into one unit.

[0133] Those skilled in the art can clearly understand that the technology in the embodiments of the present invention can be implemented by means of software plus a necessary general hardware platform. Based on this understanding, the technical solution in the embodiments of the present invention can be essentially or partly contributed to the prior art in the form of a software product, which can be stored in a storage medium such as ROM / RAM, a magnetic disk, an optical disk, etc., and includes several instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in the various embodiments of the present invention or certain parts of the embodiments.

[0134] Each embodiment in this specification is described in a progressive manner, and the same or similar parts between the embodiments can be referred to each other. In the absence of conflict, the embodiments of the present invention and the features in the embodiments can be combined with each other, and each embodiment focuses on the differences from other embodiments. In particular, for the system and device embodiments, since they are basically similar to the method embodiments, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiments.

[0135] The terms "first", "second", "third", "fourth", etc. (if any) in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein, for example. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0136] The above-described embodiments of the present invention do not constitute a limitation on the protection scope of the present invention. Any modification, equivalent replacement and improvement made within the spirit and principle of the present invention shall be included in the protection scope of the present invention.

Claims

1. An oblivious transmission method, characterized in that: Applied to an information transmission system, the information transmission system includes: a sender and a receiver, the sender and the receiver have the same elliptic curve equation and elliptic curve base point G, the method includes: The receiver obtains the target message number t and generates a first random number r; wherein r∈[1, n-1], n is the order of the elliptic curve base point G; The receiver calculates the first elliptic curve point Y by using the target message number t, the first random number r, a first correspondence between the elliptic curve base point G and the first elliptic curve point Y; The receiving party sends the first elliptic curve point Y to the sending party; The sender has k messages to be sent m v1 、m v2 ,……,m vk Processing is performed to obtain k groups of ciphertext data; wherein the k messages to be sent include the target message m to be sent corresponding to the target message number t t , the message m to be sent with message number i i The corresponding ciphertext data includes: M i and A i , M i The sender is to send the message m i The encrypted ciphertext obtained after encryption, A i For M i The corresponding collaboration key, i∈{v1,v2,…,vk}; The sender sends the k groups of ciphertext data to the receiver; The receiver uses the first random number r and the collaboration key A corresponding to the target message number t t Calculate the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t , and i≠t, the decryption key e i Unable to decrypt the encrypted ciphertext M corresponding to message number i i ; The sender sends the k messages m to be sent. v1 、m v2 ,……,m vk Perform the following processing respectively: The sender generates a second random number k i , where k i ∈[1,n-1]; The sender uses the second random number k i and collaboration key A i The second correspondence between the two calculates the collaborative key A i ; The sender uses the first elliptic curve point Y, the second random number k i , message number i, the elliptic curve base point G and encryption key s i The third correspondence between the two calculates the message m to be sent i The encryption key i ; The sender uses the encryption key s i Treat the sent message m i Encrypt and get the encrypted ciphertext M i .

2. The oblivious transmission method according to claim 1, wherein: The receiver uses the first random number r and the collaboration key A corresponding to the target message number t t Calculate the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t ,include: The receiving party uses the first random number r, the collaborative key A i and the decryption key e i The fourth correspondence between the two calculates the decryption key e corresponding to the ciphertext data i , using the decryption key e i Decrypt the encrypted ciphertext M i , and use the obtained valid message to be sent as the target message to be sent m t ; Wherein, the first corresponding relationship is: Y=[r]G+[t]G; The second corresponding relationship is: i =[k i ]G; The third corresponding relationship is: i =[k i ](Y-[i]G) =(x i ,y i ), s i = KDF(x i ,y i ); The fourth corresponding relationship is: i =[r]A i =(x i ´,y i ´) ,e i =KDF(x i ´,y i ´); KDF() represents the key derivation function.

3. The oblivious transmission method according to claim 1, wherein: Each group of ciphertext data includes the message number of the message to be sent, and the receiving party uses the first random number r and the collaboration key A corresponding to the target message number t to generate a ciphertext data. t Calculate the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t ,include: The receiving party searches for the ciphertext data with the message number t according to the target message number t; The receiving party uses the first random number r, the collaborative key A t and the decryption key e t The fifth correspondence between the two calculates the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t ; Wherein, the first corresponding relationship is: Y=[r]G+[t]G; The second corresponding relationship is: i =[k i ]G; The third corresponding relationship is: i =[k i ](Y-[i]G) =(x i ,y i ), s i = KDF(x i ,y i ); The fifth corresponding relationship is: i =[r]A i =(x i ´,y i ´) ,e i =KDF(x i ´,y i ´); KDF() represents the key derivation function.

4. The oblivious transmission method according to claim 1, wherein: The method further comprises: The sender generates a third random number q, wherein q∈[1, n-1]; The sender calculates a second elliptic curve point Q=qG, and sends the second elliptic curve point Q to the receiver; The receiver calculates the first elliptic curve point Y by using the target message number t, the first random number r, a first correspondence between the elliptic curve base point G and the first elliptic curve point Y, including: The receiver calculates the first elliptic curve point Y by using a first correspondence between the target message number t, the first random number r, the elliptic curve base point G, the second elliptic curve point Q and the first elliptic curve point Y; The receiver uses the first random number r and the collaboration key A corresponding to the target message number t t Calculate the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t ,include: The receiving party uses the first random number r, the collaborative key A i and the decryption key e i The sixth correspondence between the two is to calculate the decryption key e corresponding to the ciphertext data i , using the decryption key e i Decrypt the encrypted ciphertext M i , and use the obtained valid message to be sent as the target message to be sent m t ; Wherein, the first corresponding relationship is: Y=[r]Q+[t]G; The second corresponding relationship is: i =(k i q)modn; The third corresponding relationship is: i =[k i ](Y-[i]G) =(x i ,y i ); The sixth corresponding relationship is: i =(A i ·r)modn.

5. The oblivious transmission method according to claim 1, wherein: Each set of ciphertext data includes a message number of a message to be sent, and the method further includes: The sender generates a third random number q, wherein q∈[1, n-1]; The sender calculates a second elliptic curve point Q=qG, and sends the second elliptic curve point Q to the receiver; The receiver calculates the first elliptic curve point Y by using the target message number t, the first random number r, a first correspondence between the elliptic curve base point G and the first elliptic curve point Y, including: The receiver calculates the first elliptic curve point Y by using a first correspondence between the target message number t, the first random number r, the elliptic curve base point G, the second elliptic curve point Q and the first elliptic curve point Y; The receiver uses the first random number r and the collaboration key A corresponding to the target message number t t Calculate the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t ,include: The receiving party searches for the ciphertext data with the message number t according to the target message number t; The receiving party uses the first random number r, the collaborative key A t and the decryption key e t The seventh correspondence between the two calculates the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t ; Wherein, the first corresponding relationship is: Y=[r]Q+[t]G; The second corresponding relationship is: i =(k i q)modn; The third corresponding relationship is: i =[k i ](Y-[i]G) =(x i ,y i ); The seventh corresponding relationship is: i =(A i ·r)modn.

6. The oblivious transmission method according to claim 1, wherein: The method further comprises: The sender generates a fourth random number p, wherein p∈[1, n-1]; The sender generates a fifth random number d i , where d i ∈[1,n-1]; The sender calculates a third elliptic curve point P=pG, and sends the third elliptic curve point P to the receiver; The receiver calculates the first elliptic curve point Y by using the target message number t, the first random number r, a first correspondence between the elliptic curve base point G and the first elliptic curve point Y, including: The receiver calculates the first elliptic curve point Y by using the target message number t, the first random number r, the elliptic curve base point G, a first correspondence between the third elliptic curve point P and the first elliptic curve point Y; The sender uses the first elliptic curve point Y, the second random number k i , message number i, the elliptic curve base point G and encryption key s i The third correspondence between the two calculates the message m to be sent i The encryption key i ,include: The sender uses the first elliptic curve point Y, the second random number k i , message number i, the fifth random number d i , the elliptic curve base point G and the encryption key s i The third correspondence between the two calculates the message m to be sent i The encryption key i ; The receiver uses the first random number r and the collaboration key A corresponding to the target message number t t Calculate the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t ,include: The receiving party uses the first random number r, the collaborative key A i , the fifth random number d i and the decryption key e i The eighth correspondence between the two is to calculate the decryption key e corresponding to the ciphertext data i , using the decryption key e i Decrypt the encrypted ciphertext M i , and use the obtained valid message to be sent as the target message to be sent m t ; Wherein, the first corresponding relationship is: Y=[r]P+[t]G; The second corresponding relationship is: i =(k i ·p)modn; The third corresponding relationship is: i =[k i ](Y-[i]G)+d i G =(x i ,y i ); The eighth corresponding relationship is: i =(A i ·r+d i )modn.

7. The oblivious transmission method according to claim 1, wherein: Each set of ciphertext data includes a message number of a message to be sent, and the method further includes: The sender generates a fourth random number p, wherein p∈[1, n-1]; The sender generates a fifth random number d i , where d i ∈[1,n-1]; The sender calculates a third elliptic curve point P=pG, and sends the third elliptic curve point P to the receiver; The receiver calculates the first elliptic curve point Y by using the target message number t, the first random number r, a first correspondence between the elliptic curve base point G and the first elliptic curve point Y, including: The receiver calculates the first elliptic curve point Y by using the target message number t, the first random number r, the elliptic curve base point G, a first correspondence between the third elliptic curve point P and the first elliptic curve point Y; The sender uses the first elliptic curve point Y, the second random number k i , message number i, the elliptic curve base point G and encryption key s i The third correspondence between the two calculates the message m to be sent i The encryption key i ,include: The sender uses the first elliptic curve point Y, the second random number k i , message number i, the fifth random number d i , the elliptic curve base point G and the encryption key s i The third correspondence between the two calculates the message m to be sent i The encryption key i ; The receiver uses the first random number r and the collaboration key A corresponding to the target message number t t Calculate the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t ,include: The receiving party searches for the ciphertext data with the message number t according to the target message number t; The receiving party uses the first random number r, the collaborative key A t , the fifth random number d t and the decryption key e t The ninth correspondence between the two calculates the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t ; Wherein, the first corresponding relationship is: Y=[r]P+[t]G; The second corresponding relationship is: i =(k i ·p)modn; The third corresponding relationship is: i =[k i ](Y-[i]G)+d i G =(x i ,y i ); The ninth corresponding relationship is: i =(A i ·r+d i )modn.

8. The oblivious transmission method according to claim 1, wherein: The encryption key si includes: the first encryption key s i1 and the second encryption key s i2 Each set of ciphertext data also includes a second encryption key s i2 , the method further comprises: The sender generates a sixth random number h i , where h i ∈[1,n-1]; The sender uses the first elliptic curve point Y, the second random number k i , message number i, the elliptic curve base point G and the encryption key s i The third correspondence relationship calculates the message m to be sent i The encryption key i ,include: The sender uses the first elliptic curve point Y, the second random number k i , message number i, the sixth random number h i , the elliptic curve base point G, the first encryption key s i1 and the second encryption key s i2 The third correspondence between the two calculates the message m to be sent i The first encryption key s i1 and the second encryption key s i2 ; The sender uses the encryption key s i Treat the sent message m i Encrypt and get the encrypted ciphertext M i ,include: The sender uses the first encryption key s i1 Treat the sent message m i Encrypt and get the encrypted ciphertext M i ; The receiver uses the first random number r and the collaboration key A corresponding to the target message number t t Calculate the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t ,include: The receiving party uses the first random number r, the collaborative key A i、 Second encryption key i2 and the decryption key e i The tenth correspondence between the two is used to calculate the decryption key e corresponding to the ciphertext data. i , using the decryption key e i Decrypt the encrypted ciphertext M i , and use the obtained valid message to be sent as the target message to be sent m t ; Wherein, the first corresponding relationship is: Y=[r]G+[t]G; The second corresponding relationship is: i =[k i ]G; The third corresponding relationship is: i1 =[h i ]G,s i2 =[k i ](Y-[i]G)+[h i ]G; The tenth corresponding relationship is: i =s i2 -r·A i .

9. The oblivious transmission method according to claim 1, wherein: Each group of ciphertext data includes the message number of the message to be sent, and the encryption key si includes: the first encryption key s i1 and the second encryption key s i2 Each set of ciphertext data also includes a second encryption key s i2 , the method further comprises: The sender generates a sixth random number h i , where h i ∈[1,n-1]; The sender uses the first elliptic curve point Y, the second random number k i , message number i, the elliptic curve base point G and encryption key s i The third correspondence between the two calculates the message m to be sent i The encryption key i ,include: The sender uses the first elliptic curve point Y, the second random number k i , message number i, the sixth random number h i , the elliptic curve base point G, the first encryption key s i1 and the second encryption key s i2 The third correspondence between the two calculates the message m to be sent i The first encryption key s i1 and the second encryption key s i2 ; The sender uses the encryption key s i Treat the sent message m i Encrypt and get the encrypted ciphertext M i ,include: The sender uses the first encryption key s i1 Treat the sent message m i Encrypt and get the encrypted ciphertext M i ; The receiver uses the first random number r and the collaboration key A corresponding to the target message number t t Calculate the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t ,include: The receiving party searches for the ciphertext data with the message number t according to the target message number t; The receiving party uses the first random number r, the collaborative key A t , the second encryption key s t2 and the decryption key e t The eleventh corresponding relationship between the two calculates the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t ; Wherein, the first corresponding relationship is: Y=[r]G+[t]G; The second corresponding relationship is: i =[k i ]G; The third corresponding relationship is: i1 =[h i ]G,s i2 =[k i ](Y-[i]G)+[h i ]G; The eleventh corresponding relationship is: i =s i2 -r·A i .

10. An inadvertent transmission device, characterized in that: Applied to an information transmission system, the information transmission system comprises: a sender and a receiver, the sender and the receiver have the same elliptic curve equation and elliptic curve base point G, the device comprises: an acquisition unit, a first calculation unit, a first sending unit and a decryption unit located at the receiver, and a processing unit and a second sending unit located at the sender; The acquisition unit is used to acquire the target message label t and generate a first random number r; wherein r∈[1, n-1], n is the order of the elliptic curve base point G; The first calculation unit is used to calculate the first elliptic curve point Y by using the target message label t, the first random number r, the first corresponding relationship between the elliptic curve base point G and the first elliptic curve point Y; The first sending unit is used to send the first elliptic curve point Y to the sender; The processing unit is used to process k messages m to be sent. v1 、m v2 ,……,m vk Processing is performed to obtain k groups of ciphertext data; wherein the k messages to be sent include the target message m to be sent corresponding to the target message number t t , the message m to be sent with message number i i The corresponding ciphertext data includes: M i and A i , M i The sender is to send the message m i The encrypted ciphertext obtained after encryption, A i For M i The corresponding collaboration key, i∈{v1,v2,…,vk}; The second sending unit is used to send the k groups of ciphertext data to the receiving party; The decryption unit is configured to decrypt the target message based on the first random number r and the collaborative key A corresponding to the target message number t. t Calculate the decryption key e corresponding to the target message number t t , using the decryption key e t Decrypt the encrypted ciphertext M corresponding to the target message number t t , get the target message m to be sent t , and i≠t, the decryption key e i Unable to decrypt the encrypted ciphertext M corresponding to message number i i ; The processing unit processes the k messages m to be sent. v1 、m v2 ,……,m vk Perform the following processing respectively: Generate a second random number k i , where k i ∈[1,n-1]; Using the second random number k i and collaboration key A i The second correspondence between the two calculates the collaborative key A i ; Using the first elliptic curve point Y and the second random number k i , message number i, the elliptic curve base point G and the encryption key s i The third correspondence relationship calculates the message m to be sent i The encryption key i ; Using the encryption key s i Treat the sent message m i Encrypt and get the encrypted ciphertext M i .

Citation Information

Cited By

  • Casual transmission method, system and equipment based on elliptic curve and medium

    CN120165870A