Oblivious transmission method, system, device and medium based on elliptic curve
Through the design of elliptic curve encryption and mapping function, the problems of high computing complexity and low key exchange efficiency in IoT devices are solved, and efficient and secure information transmission is achieved, which is suitable for complex scenarios such as multi-party secure computing.
Patent Information
- Application Number
- CN202510644678.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-20
- Publication Date
- 2025-08-08
- Estimated Expiration
- 2045-05-20
AI Technical Summary
The existing inadvertent transmission protocols have high computing complexity in resource-constrained IoT devices, low key exchange efficiency, and are difficult to adapt to the diversified needs of complex computing scenarios.
The elliptic curve encryption and mapping functions are adopted to achieve efficient key exchange and information protection through obfuscating ciphertext design, and support the combination of multiple elliptic curves and configurable mapping functions, which is suitable for scenarios such as multi-party security calculations.
It significantly reduces the computational complexity and communication load of key exchange, enhances information security, is suitable for complex computing scenarios, supports a variety of elliptic curves and mapping functions, and expands the application boundaries of inadvertent transmission technology.
Smart Images

Figure CN120165870B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of information security, and more particularly to an oblivious transmission method, system, device and medium based on elliptic curves. Background Art
[0002] The Oblivious Transfer (OT) protocol is one of the cornerstones of secure multi-party computation (MPC). A sender can transmit multiple messages to a receiver, but the receiver can only decrypt the message it selects, without the sender's knowledge of the specific message. This protocol plays an irreplaceable role in areas such as set intersection, federated learning, and secure outsourced computing.
[0003] Traditional OT solutions generally rely on public-key cryptography systems such as RSA or Diffie-Hellman (DH), requiring key lengths of 3072 bits or longer to mitigate security threats posed by the evolution of computing power. These long keys require frequent large-integer modular exponentiation operations during key negotiation, each requiring tens of milliseconds. This can easily lead to communication delays and increased energy consumption in resource-constrained IoT devices. For example, DH-based OT protocols require at least two modular exponentiation operations per interaction, with computational overhead accounting for over 30% of the device's total energy consumption, severely limiting real-time performance requirements.
[0004] Furthermore, existing OT protocols often use fixed parameter configurations, making them difficult to adapt to the diverse needs of complex computing scenarios. For example, in cross-institutional, multi-party secure computations, participants may use different elliptic curve standards, making dynamic compatibility of multiple curve parameters impossible, leading to low collaboration efficiency. Furthermore, key generation and ciphertext construction mechanisms lack modular design, making it difficult to support customizable mapping functions or dynamic random number injection.
[0005] Therefore, how to design an oblivious transmission method based on elliptic curves to improve key exchange efficiency and reduce computational complexity while enhancing security is an urgent problem that needs to be solved by those skilled in the art. Summary of the Invention
[0006] In view of this, the present invention provides an oblivious transmission method based on elliptic curves, which uses elliptic curve encryption to achieve efficient and low-complexity data transmission, and enhances information protection through mapping functions and obfuscated ciphertexts; it supports multiple elliptic curves and mapping functions, is suitable for scenarios such as multi-party secure computing, and provides flexible and powerful information security protection.
[0007] In order to achieve the above object, the present invention adopts the following technical solutions:
[0008] In a first aspect, the present invention provides an oblivious transmission method based on elliptic curves, comprising the following steps:
[0009] S1. The two communicating parties select an elliptic curve E and determine a base point G on the elliptic curve E. The order of G is t, and tG=o is satisfied, where o is a point at infinity.
[0010] S2. The sender generates a random private key d and calculates the public key Q = dG. It then randomly generates a point P0 on the elliptic curve and makes the public key Q, the random point P0, and the total number of messages to be transmitted n public.
[0011] S3. The receiver generates a random number r k , through the mapping function r k Mapped to a point P on the elliptic curve k , for each message index i, construct the obfuscated ciphertext C 1i =r k G+(k−i)P0 and auxiliary ciphertext C2=P k +r k Q, and all (C 1i ,C2) sent to the sender;
[0012] S4, the sender uses the private key d to 1i ,C2) decrypts, obtains n random numbers, and uses them as symmetric keys to encrypt n messages, and sends the encrypted results to the receiver;
[0013] S5, the receiver passes the random number r k Symmetrically decrypt the kth encrypted message to obtain the target message m k .
[0014] Furthermore, in said S1,
[0015] The elliptic curve E satisfies the equation y 2 =x 3 +ax+b prime field elliptic curve, and 4a 3 +27b 2 ≠0; or use the 256-bit prime field elliptic curve defined by the national cryptographic standard SM2.
[0016] Furthermore, in S3, a random number r is generated. k Combine the timestamp T with the hardware unique identification ID:
[0017] r k =H rand (T||ID||s)
[0018] Here, s represents the pre-shared seed and || represents the concatenation operation.
[0019] Furthermore, in S3, the mapping function is expressed as f:Z t →S, where Z trepresents the finite field {1,2…t-1}, S represents the set of points on the elliptic curve; the mapping function satisfies:
[0020] For any r∈Z t , there exists a unique P∈S such that P=f(r); for any P∈S, there exists a unique r∈Z t , so that r=f -1 (P); If point P generates a new point P' through elliptic curve operation, then there exists r'∈Z t So that P'=f(r').
[0021] Furthermore, in S3, the obfuscated ciphertext C 1i The following obfuscation mechanisms are met:
[0022] When i≠k, C 1i Contains the (k−i)P0 term, resulting in the random number r′ mapped after decryption i and the true random number r k irrelevant, so that the sender cannot pass r′ i Infer the receiver's selection bit k; When i=k, C 1i =r k G, ensures that the receiver can only restore P after decryption using the private key d k , and then correctly obtain r through the inverse mapping function k , achieve the target elimination k Accurate decryption.
[0023] Furthermore, the S4 includes:
[0024] S41、For each (C 1i ,C2) Calculate P′ i =C2−dC 1i , get the point P′ on the elliptic curve i ;
[0025] S42, P′ is transformed into i Restore to random number r′ i ;
[0026] S43, using random number r' i As a symmetric key pair for message m i Encryption is performed, and the encryption formula is Enc(m i )=H key (r i )⊕m i .
[0027] Furthermore, the S5 includes:
[0028] Use a random number r kGenerate symmetric key H(r k ); decrypt the kth encrypted message, the decryption formula is m k =Enc(m k )⊕H key (r k ).
[0029] In a second aspect, the present invention provides an oblivious transmission system based on elliptic curves, comprising:
[0030] Parameter initialization module: used by the communicating parties to select an elliptic curve E and determine the base point G on the elliptic curve E; where the order of G is t, and tG=o is satisfied, and o is the point at infinity;
[0031] Key generation and disclosure module: used by the sender to generate a random private key d and calculate the public key Q = dG, randomly generate a point P0 on the elliptic curve, and disclose the public key Q, random point P0, and the total number of messages to be transmitted n;
[0032] Ciphertext building block: used by the receiver to generate a random number r k , through the mapping function r k Mapped to a point P on the elliptic curve k , for each message index i, construct the obfuscated ciphertext C 1i =r k G+(k−i)P0 and auxiliary ciphertext C2=P k +r k Q, and all (C 1i ,C2) sent to the sender;
[0033] Ciphertext decryption and message encryption module: used by the sender to use the private key d for each (C 1i ,C2) decrypts, obtains n random numbers, and uses them as symmetric keys to encrypt n messages, and sends the encrypted results to the receiver;
[0034] Message decryption module: used by the receiver to pass the random number r k Symmetrically decrypt the kth encrypted message to obtain the target message m k .
[0035] In a third aspect, the present invention provides an electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the above-mentioned oblivious transfer method based on elliptic curves when executing the computer program.
[0036] In a fourth aspect, the present invention provides a computer-readable storage medium, wherein the storage medium stores a computer program, and when the computer program is executed by a processor, the computer program implements the above-mentioned oblivious transfer method based on elliptic curve.
[0037] The descriptions of the second to fourth aspects of the present invention can refer to the detailed description of the first aspect; and the beneficial effects of the descriptions of the second to fourth aspects can refer to the analysis of the beneficial effects of the first aspect, which will not be repeated here.
[0038] It can be seen from the above technical solutions that compared with the prior art, the present invention has the following beneficial effects:
[0039] 1. This solution replaces traditional RSA and Diffie-Hellman algorithms with elliptic curve cryptography, shortening key length while maintaining equivalent security strength, significantly reducing the computational complexity and communication overhead during the key exchange phase. Combining symmetric encryption with a ciphertext obfuscation mechanism further reduces the number of large-number modular and exponential operations, enabling the protocol to operate efficiently in resource-constrained scenarios such as the Internet of Things and edge computing, effectively alleviating computational resource consumption and communication latency.
[0040] 2. Through the design of mapping functions and obfuscated ciphertext, the indistinguishability between ciphertext and random numbers is ensured, preventing the adversary from deducing the original information or selecting bit data through ciphertext, thus providing future-oriented security for complex computing scenarios such as multi-party secure computing and information set intersection.
[0041] 3. It supports multiple elliptic curves and configurable mapping function combinations. Through the uniqueness, coverage and reversibility requirements of bijective functions, it ensures the versatility of the protocol in different complex computing scenarios. It can be seamlessly integrated into complex applications such as multi-party collaboration and dynamic data fusion, expanding the application boundaries of oblivious transfer technology. BRIEF DESCRIPTION OF THE DRAWINGS
[0042] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are merely embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without paying any creative work.
[0043] Figure 1 A flow chart of an oblivious transfer method based on elliptic curves provided in an embodiment of the present invention;
[0044] Figure 2 A schematic diagram of the encryption process of the sender provided in an embodiment of the present invention;
[0045] Figure 3 A schematic diagram of a specific implementation process of oblivious transmission in a smart home system provided by an embodiment of the present invention;
[0046] Figure 4A framework diagram of an oblivious transfer system based on elliptic curves provided by an embodiment of the present invention;
[0047] Figure 5 A schematic diagram of the structure of an electronic device is provided for an embodiment of the present invention. DETAILED DESCRIPTION
[0048] The following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of the present invention.
[0049] The oblivious transmission method provided in the embodiments of the present application can be applied to an oblivious transmission server, which can be either hardware or software. When the oblivious transmission server is hardware, it can be implemented as a distributed server cluster providing oblivious transmission services, or as a single server. When the oblivious transmission server is software, it can be installed in the servers listed above. It can be implemented as multiple software programs or software modules, or as a single software program or software module, without specific limitations herein.
[0050] Example 1;
[0051] like Figure 1 As shown, this embodiment provides an oblivious transmission method based on elliptic curves, comprising the following steps:
[0052] S1. The two communicating parties select an elliptic curve E and determine a base point G on the elliptic curve E. The order of G is t, and tG=o is satisfied, where o is a point at infinity.
[0053] S2. The sender generates a random private key d and calculates the public key Q = dG. It then randomly generates a point P0 on the elliptic curve and makes the public key Q, the random point P0, and the total number of messages to be transmitted n public.
[0054] S3. The receiver generates a random number r k , through the mapping function r k Mapped to a point P on the elliptic curve k , for each message index i, construct the obfuscated ciphertext C 1i =r k G+(k−i)P0 and auxiliary ciphertext C2=P k +r k Q, and all (C 1i ,C2) sent to the sender;
[0055] S4, the sender uses the private key d to1i ,C2) decrypts, obtains n random numbers, and uses them as symmetric keys to encrypt n messages, and sends the encrypted results to the receiver;
[0056] S5, the receiver passes the random number r k Symmetrically decrypt the kth encrypted message to obtain the target message m k .
[0057] This method uses elliptic curve encryption to replace traditional algorithms, significantly reducing the computational complexity and communication load of key exchange. Through flexible mapping functions and obfuscated ciphertext design, the scheme ensures data security in complex computing scenarios. It also supports multiple elliptic curves and configurable combinations, enhancing the versatility and scalability of the protocol, and providing an efficient, secure and flexible solution for complex applications such as multi-party secure computing.
[0058] The following further describes each step in the above method in detail;
[0059] In this embodiment S1, the communicating parties select an elliptic curve E and determine a base point G on the elliptic curve E; wherein the order of G is t, and tG=o is satisfied, where o is a point at infinity;
[0060] Among them, the elliptic curve E satisfies the equation y 2 =x 3 +ax+b prime field elliptic curve, and 4a 3 +27b 2 ≠0; or use the 256-bit prime field elliptic curve defined by the National Cryptography Standard SM2. Specifically, the parameters of the elliptic curve E are dynamically selected during the protocol initialization phase. This involves the communicating parties negotiating and selecting elliptic curves with different prime field lengths based on real-time network latency, device computing power, or a preset security level.
[0061] In this embodiment S2, the sender generates a random private key d and calculates a public key Q = dG, randomly generates a point P0 on the elliptic curve, and makes the public key Q, the random point P0, and the total number of messages to be transmitted n public;
[0062] In this step, the sender first generates a random private key d and multiplies it by a base point G on the elliptic curve to obtain a public key Q = dG. Next, the sender randomly selects a point P0 on the elliptic curve as a parameter during the protocol execution. Finally, the sender publicly discloses the public key Q, the random point P0, and the total number of messages to be transmitted, n, so that the receiver can generate the corresponding obfuscated ciphertext based on this information and participate in the oblivious transfer protocol.
[0063] In this embodiment S3, the receiver generates a random number r k , through the mapping function r kMapped to a point P on the elliptic curve k , for each message index i, construct the obfuscated ciphertext C 1i =r k G+(k−i)P0 and auxiliary ciphertext C2=P k +r k Q, and all (C 1i ,C2) sent to the sender;
[0064] Among them, generate a random number r k Combine the timestamp T with the hardware unique identification ID:
[0065] r k =H rand (T||ID||s)
[0066] Among them, s represents the pre-shared seed, || represents the splicing operation, and H rand Use collision-resistant hash functions.
[0067] Furthermore, the mapping function is expressed as f:Z t →S, where Z t represents the finite field {1,2…t-1}, S represents the set of points on the elliptic curve; the mapping function satisfies:
[0068] For any r∈Z t , there exists a unique P∈S such that P=f(r); for any P∈S, there exists a unique r∈Z t , so that r=f -1 (P); If point P generates a new point P' through elliptic curve operation, then there exists r'∈Z t So that P'=f(r').
[0069] Specifically, the mapping function can adopt a hierarchical hash-elliptic curve encoding mechanism, which includes: converting the random number r k Generate an intermediate value h=H1(r k ), and then the intermediate value h is generated through the hash function H2 to generate the deterministic elliptic curve point P k , and restore r layer by layer during inverse mapping k ; Among them, the first hash function H1 is a collision-resistant hash function, and the output length is compatible with the elliptic curve coding algorithm; the second hash function H2 is a deterministic and reversible elliptic curve point coding function.
[0070] Furthermore, the obfuscated ciphertext C 1i The following obfuscation mechanisms are met:
[0071] When i≠k, C 1i Contains the (k−i)P0 term, resulting in the random number r′ mapped after decryption iand the true random number r k irrelevant, so that the sender cannot pass r′ i Infer the receiver's selection bit k; When i=k, C 1i =r k G, ensures that the receiver can only restore P after decryption using the private key d k , and then correctly obtain r through the inverse mapping function k , achieve the target elimination k Accurate decryption.
[0072] In this embodiment S4, the sender uses the private key d to 1i ,C2) decrypts, obtains n random numbers, and uses them as symmetric keys to encrypt n messages, and sends the encrypted results to the receiver; Figure 2 As shown, specifically including:
[0073] S41、For each (C 1i ,C2) Calculate P′ i =C2−dC 1i , get the point P′ on the elliptic curve i ;
[0074] S42, P′ is transformed into i Restore to random number r′ i ;
[0075] S43, using random number r' i As a symmetric key pair for message m i Encryption is performed, and the encryption formula is Enc(m i )=H key (r i )⊕m i .
[0076] In this embodiment S5, the receiver passes the random number r k Symmetrically decrypt the kth encrypted message to obtain the target message m k ; Specifically include:
[0077] Use a random number r k Generate symmetric key H(r k ); decrypt the kth encrypted message, the decryption formula is m k =Enc(m k )⊕H key (r k ),in,
[0078] H key Use lightweight hash function.
[0079] The following is a description of the correctness and security of an oblivious transmission method based on elliptic curves in this embodiment.
[0080] For further explanation:
[0081] In terms of correctness, it is based on the closedness of elliptic curve operations and the reversibility of mapping functions. The receiver constructs the obfuscated ciphertext C 1i =r k G+(k−i)P0 and auxiliary ciphertext C2=P k +r k Q, calculated using the private key d during decryption, calculates P′ i =C2−dC 1i , get the point P′ on the elliptic curve i , combined with the inverse mapping function, the random number r can be uniquely restored k , thereby correctly decrypting the target message m k The sender ensures that the receiver can only decrypt the specified message through the closed nature of the elliptic curve points, and the remaining obfuscated ciphertexts remain irreversible because it is impossible to distinguish between the original points and the obfuscated points, thereby ensuring the correctness of the protocol execution.
[0082] In terms of security, the protocol relies on a dual mechanism of Elliptic Curve Discrete Logarithm Problem (ECDLP) and symmetric encryption. ECDLP ensures that the private key d cannot be derived from the public key Q=dG. The structural design of obfuscating ciphertext and auxiliary secret further prevents the sender from inferring the message index k selected by the receiver. Furthermore, a mapping function and layered hash coding technology ensure the uniqueness of the generated and restored elliptic curve points, preventing information leakage.
[0083] This method significantly reduces computational and communication overheads through dynamic negotiation of elliptic curve parameters and efficient implementation of lightweight hash functions, making it suitable for complex computing scenarios with high real-time requirements.
[0084] Example 2;
[0085] In a smart home system, smart door locks need to encrypt and transmit user unlocking logs to a cloud server, requiring the cloud server to only decrypt logs within a specified time period (e.g., the last 24 hours).
[0086] This embodiment uses the oblivious transfer protocol of elliptic curves to achieve efficient and secure selective transmission of logs, such as Figure 3 As shown, the specific implementation steps include:
[0087] 1) Initialization of elliptic curve parameters;
[0088] The smart door lock (sender) and the cloud server (receiver) dynamically negotiate the elliptic curve parameters. The 256-bit prime field elliptic curve of the national secret SM2 standard is selected to satisfy the equation y 2 =x3 +ax+b (mod p), where p is a 256-bit prime number. The specific parameters comply with the GM / T 0003-2012 standard. Both parties determine that the order of the base point G is t, satisfying tG=o, where o is the point at infinity.
[0089] 2) Sender key generation and parameter disclosure;
[0090] The smart door lock generates a random private key d∈{1,2,...,t−1}, calculates the public key Q=dG, and randomly selects an elliptic curve point P0. Subsequently, the public key Q, the random point P0, and the total number of logs n=24 are published to the cloud; the private key d is retained only by the sender for subsequent decryption operations.
[0091] 3) The receiver constructs the obfuscated ciphertext;
[0092] The cloud needs to decrypt the log of hour k = 12 (for example). First, it generates a random number r by splicing the timestamp T, the device unique identifier ID and the pre-shared seed s. k , then, r is converted into k Mapped to elliptic curve point P k , and construct the obfuscated ciphertext:
[0093] For each hour index i∈{1,2,...,24}, generate C 1i =r k G+(12−i)P0 and auxiliary ciphertext C2=P k +r k Q; and all (C 1i ,C2) is sent to the smart door lock to ensure that the sender cannot infer the target index.
[0094] 4) Sender encrypted log;
[0095] The smart door lock uses the private key d to decrypt the received ciphertext, and for each (C 1i ,C2), calculate P′ i =C2−dC 1i ,
[0096] After simplification, only when i=12, P′ i =P k , the rest are invalid confusion points; P′ is transformed into i Restore to random number r′ i , only r′ 12 =r k Valid; then, using the random number r' i As the symmetric key pair log m i Encryption is performed, and the encryption formula is Enc(m i )=H key (ri )⊕m i and sends the encrypted result to the cloud.
[0097] 5) Decryption by the receiver;
[0098] Cloud usage k Generate symmetric key K 12 , decrypt the target log Enc(m 12 )⊕K 12 =m 12 Through the time index k and obfuscated ciphertext design, the cloud can only decrypt logs with k=12, and historical data cannot be restored due to key obfuscation;
[0099] This embodiment achieves efficient log transmission in smart home scenarios through dynamic parameter negotiation, obfuscated ciphertext design, and lightweight hash functions. The cloud can only decrypt logs from a specified time period; the remaining data is irreversible due to the obfuscation mechanism, meeting information protection requirements and making it suitable for resource-constrained IoT devices.
[0100] Example 3;
[0101] like Figure 4 As shown, this embodiment provides an oblivious transfer system based on elliptic curves, including:
[0102] Parameter initialization module: used by the communicating parties to select an elliptic curve E and determine the base point G on the elliptic curve E; where the order of G is t, and tG=o is satisfied, and o is the point at infinity;
[0103] Key generation and disclosure module: used by the sender to generate a random private key d and calculate the public key Q = dG, randomly generate a point P0 on the elliptic curve, and disclose the public key Q, random point P0, and the total number of messages to be transmitted n;
[0104] Ciphertext building block: used by the receiver to generate a random number r k , through the mapping function r k Mapped to a point P on the elliptic curve k , for each message index i, construct the obfuscated ciphertext C 1i =r k G+(k−i)P0 and auxiliary ciphertext C2=P k +r k Q, and all (C 1i ,C2) sent to the sender;
[0105] Ciphertext decryption and message encryption module: used by the sender to use the private key d for each (C 1i ,C2) decrypts, obtains n random numbers, and uses them as symmetric keys to encrypt n messages, and sends the encrypted results to the receiver;
[0106] Message decryption module: used by the receiver to pass the random number r k Symmetrically decrypt the kth encrypted message to obtain the target message m k .
[0107] This embodiment provides an oblivious transfer system based on elliptic curves, comprising a parameter initialization module, a key generation and disclosure module, a ciphertext construction module, a ciphertext decryption and message encryption module, and a message decryption module. This series of modules enables efficient and secure data transmission. This system not only reduces the computational complexity and communication overhead of traditional OT solutions but also is applicable to a variety of application scenarios requiring high-level information protection, such as federated learning, ensuring data integrity during transmission.
[0108] Example 4;
[0109] like Figure 5 As shown, this embodiment provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, the oblivious transmission method based on elliptic curves in the above embodiment is implemented.
[0110] Example 5;
[0111] This embodiment provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, the oblivious transfer method based on elliptic curves in the above embodiment is implemented.
[0112] In the above embodiments provided in this application, it should be understood that the disclosed methods, systems, devices, and media can be implemented in other ways. The above-described methods, systems, devices, and media embodiments are merely illustrative. For example, the division of modules or units is merely a logical functional division, and other division methods may be used in actual implementation. Each functional unit may be integrated into a processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit.
[0113] The units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0114] The computer program includes computer program code, which may be in source code form, object code form, executable file, or some intermediate form. Computer-readable media may include any entity or device capable of carrying computer program code, recording media, USB flash drives, removable hard drives, magnetic disks, optical disks, computer memory, read-only memory, random access memory, electrical carrier signals, telecommunications signals, and software distribution media.
[0115] The above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. These modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the various embodiments of the present application, and should all be included in the scope of protection of the present application.
Claims
1. An oblivious transmission method based on elliptic curves, characterized in that: The following steps are involved: S1. The communicating parties select an elliptic curve E and determine a base point G on the elliptic curve E; where the order of G is t, and tG = o, where o is a point at infinity; S2. The sender generates a random private key d and calculates the public key Q = dG. It then randomly generates a point P0 on the elliptic curve and makes the public key Q, the random point P0, and the total number of messages to be transmitted n public. S3. The receiver generates a random number r k , through the mapping function r k Mapped to a point P on the elliptic curve k , for each message index i, construct the obfuscated ciphertext C 1i =r k G+(ki)P0 and auxiliary ciphertext C2=P k +r k Q, and all (C 1i ,C2) sent to the sender; S4, the sender uses the private key d to 1i ,C2) decrypts, obtains n random numbers, and uses them as symmetric keys to encrypt n messages, and sends the encrypted results to the receiver; S5, the receiver passes the random number r k Symmetrically decrypt the kth encrypted message to obtain the target message m k .
2. The oblivious transmission method based on elliptic curve according to claim 1, characterized in that: In the S1, The elliptic curve E satisfies the equation y 2 =x 3 +ax+b prime field elliptic curve, and 4a 3 +27b 2 ≠0; or use the 256-bit prime field elliptic curve defined by the national cryptographic standard SM2.
3. The oblivious transmission method based on elliptic curve according to claim 1, characterized in that: In S3, a random number r is generated. k Combine the timestamp T with the hardware unique identification ID: r k =H rand (T||ID||s) Here, s represents the pre-shared seed and || represents the concatenation operation.
4. The oblivious transmission method based on elliptic curve according to claim 1, characterized in that: In S3, the mapping function is expressed as f:Z t →S, where Z t represents the finite field {1,2…t-1}, S represents the set of points on the elliptic curve; the mapping function satisfies: For any r∈Z t , there exists a unique P∈S such that P=f(r); for any P∈S, there exists a unique r∈Z t , so that r = f -1 (P); If point P generates a new point P' through elliptic curve operation, then there exists r'∈Z t So that P'=f(r').
5. The oblivious transmission method based on elliptic curve according to claim 1, characterized in that: In S3, the obfuscated ciphertext C 1i The following obfuscation mechanisms are met: When i≠k, C 1i Contains the (ki)P0 term, resulting in the random number r′ mapped after decryption i and the true random number r k irrelevant, so that the sender cannot pass r′ i Infer the receiver's selection bit k; When i=k, C 1i =r k G, ensures that the receiver can only restore P after decryption using the private key d k , and then correctly obtain r through the inverse mapping function k , to achieve the target message m k Accurate decryption.
6. The oblivious transmission method based on elliptic curve according to claim 1, characterized in that: The S4 includes: S41、For each (C 1i ,C2) Calculate P′ i =C2-dC 1i , get the point P′ on the elliptic curve i ; S42, through the inverse mapping function P' i Restore to random number r′ i ; S43, using random number r' i As a symmetric key pair for message m i Encryption is performed, and the encryption formula is Enc(m i )=H key (r′ i )⊕m i .
7. The oblivious transmission method based on elliptic curve according to claim 1, characterized in that: The S5 includes: Use a random number r k Generate symmetric key H key (r k ); Decrypt the kth encrypted message, the decryption formula is m k =Enc(m k )⊕H key (r k ).
8. An oblivious transfer system based on elliptic curves, characterized in that include: Parameter initialization module: used by the communicating parties to select an elliptic curve E and determine the base point G on the elliptic curve E; where the order of G is t, and tG = o, where o is the point at infinity; Key generation and disclosure module: used by the sender to generate a random private key d and calculate the public key Q = dG, randomly generate a point P0 on the elliptic curve, and disclose the public key Q, random point P0, and the total number of messages to be transmitted n; Ciphertext building block: used by the receiver to generate a random number r k , through the mapping function r k Mapped to a point P on the elliptic curve k , for each message index i, construct the obfuscated ciphertext C 1i =r k G+(ki)P0 and auxiliary ciphertext C2=P k +r k Q, and all (C 1i ,C2) sent to the sender; Ciphertext decryption and message encryption module: used by the sender to use the private key d for each (C 1i ,C2) decrypts, obtains n random numbers, and uses them as symmetric keys to encrypt n messages, and sends the encrypted results to the receiver; Message decryption module: used by the receiver to pass the random number r k Symmetrically decrypt the kth encrypted message to obtain the target message m k .
9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the computer program, the oblivious transmission method based on elliptic curves according to any one of claims 1 to 7 is implemented.
10. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the oblivious transmission method based on elliptic curves according to any one of claims 1 to 7 is implemented.
Citation Information
Patent Citations
Mass transmission method and device based on elliptic curve
CN112055021A
Homomorphic encryption-based casual transmission method, medium and electronic equipment
CN116781243A