CN115604006A - Data transmission method, device, equipment and storage medium - Google Patents

Data transmission method, device, equipment and storage medium Download PDF

Info

Publication number
CN115604006A
CN115604006A CN202211261523.2A CN202211261523A CN115604006A CN 115604006 A CN115604006 A CN 115604006A CN 202211261523 A CN202211261523 A CN 202211261523A CN 115604006 A CN115604006 A CN 115604006A
Authority
CN
China
Prior art keywords
data
encrypted
sending
determining
encryption
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211261523.2A
Other languages
Chinese (zh)
Inventor
张天成
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Agricultural Bank of China
Original Assignee
Agricultural Bank of China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Agricultural Bank of China filed Critical Agricultural Bank of China
Priority to CN202211261523.2A priority Critical patent/CN115604006A/en
Publication of CN115604006A publication Critical patent/CN115604006A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/045Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply hybrid encryption, i.e. combination of symmetric and asymmetric encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/50Oblivious transfer

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • Power Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

The application discloses a data transmission method, a device, equipment and a storage medium, comprising the following steps: the data transmitting device may encrypt the first data based on the private key and the public key of the data receiving device to obtain the first encryption number. And processing the first data by using a symmetric encryption algorithm to obtain first encrypted data. And then determining first target data according to the first encryption number and the first encryption data and sending the first target data to the data receiving equipment. The data receiving device may determine the second encrypted data based on the public key and the elliptic curve base point of the data transmitting device, and transmit the third encrypted data to the data receiving device after the second encrypted data is processed by the data transmitting device, so that the data receiving device determines the second encrypted number based on the third encrypted data. By the data transmission method, the data sending device and the data receiving device can send and receive data without complex operations such as exponential product and the like, and the data transmission efficiency can be improved.

Description

Data transmission method, device, equipment and storage medium
Technical Field
The present application relates to the field of data processing technologies, and in particular, to a data transmission method, apparatus, device, and storage medium.
Background
With the rapid development of big data and cloud computing, the information amount is increased explosively, and meanwhile, the importance degree of people on privacy is higher and higher. The inadvertent transmission is used as a basic protocol of cryptography, has important application in the fields of multiparty security calculation, privacy query, data mining and the like, and can protect personal privacy and simultaneously realize the full utilization of data.
In the current inadvertent transmission protocol, when a data sender and a data receiver encrypt/decrypt data, an exponential product operation is usually adopted, which results in higher computational complexity and lower data transmission efficiency of the data sender and the data receiver.
Disclosure of Invention
In view of this, the present application provides a data transmission method, apparatus, device and storage medium, so as to improve the efficiency of data transmission.
In a first aspect, the present application provides a data transmission method, where the method is applied to a data sending device, where the data sending device includes first data, and the method includes:
determining a first encryption number corresponding to the first data based on a private key of the data sending device and a public key of the data receiving device;
determining a first symmetric key based on a key derivation function and the first encryption number;
processing the first data by using a symmetric encryption algorithm and the first symmetric key to obtain first encrypted data;
determining first target data based on the first encrypted data and the first encryption number;
and sending the first target data to the data receiving equipment.
In one possible implementation, the determining a first symmetric key based on a key derivation function and the first encryption number includes:
determining the first symmetric key based on a key derivation function, the first encryption number, and a random number of the data transmission apparatus, the random number of the data transmission apparatus corresponding to the first data.
In one possible implementation manner, the determining the first target data based on the first encrypted data and the first encrypted number includes:
determining a first hash value corresponding to the first encryption number based on a hash function;
determining the first target data based on the first hash value, the random number of the data transmission apparatus, and the first encrypted data.
Therefore, the data sending device can encrypt the first data based on the private key and the public key of the data receiving device and send the first data to the data receiving device, complex calculation methods such as exponential product operation and the like are not needed, and the data transmission efficiency can be improved.
In a second aspect, the present application provides a data transmission method, which is applied to a data receiving device, and includes:
determining second encrypted data based on the public key of the data receiving device and the elliptic curve base point of the data sending device;
sending the second encrypted data to the data sending equipment so that the data sending equipment can process the second encrypted data based on a private key of the data sending equipment and obtain third encrypted data;
receiving third encrypted data sent by the data sending equipment;
determining a second encryption number based on the third encrypted data and a public key of the data transmission device;
and analyzing the first target data sent by the data sending equipment based on the second encryption number to obtain second target data.
In one possible implementation, the determining the second encrypted data based on the public key of the data receiving device and the elliptic curve base point of the data sending device includes:
determining the second encrypted data based on a public key of the data receiving apparatus, a target data number, an elliptic curve base point of the data transmitting apparatus, and a random number of the data receiving apparatus, the data receiving apparatus including a plurality of the target data numbers, the random number of the data receiving apparatus, and the second target data corresponding to each other.
In a possible implementation manner, the determining a second encryption number based on the third encrypted data and a public key of the data sending device includes:
determining the second encryption number based on the third encrypted data, the random number of the data receiving apparatus, and the public key of the data transmitting apparatus.
By the method of the second aspect, the data receiving device may encrypt the data to be obtained based on its own public key, private key and elliptic curve base point of the data sending device, and determine the second encryption number based on the third encrypted data sent by the data sending device, so as to analyze the data sent by the data sending device based on the second encryption number, thereby decrypting to obtain the desired data, and implement encryption and decryption of the data by the elliptic curve encryption algorithm, without complex exponential operation, and may improve the efficiency of data transmission.
In a third aspect, the present application provides a data transmission apparatus, where the apparatus is applied to a data sending device, where the data sending device includes first data, and the apparatus includes:
a first determining unit, configured to determine, based on a private key of the data sending device and a public key of the data receiving device, a first encryption number corresponding to the first data;
a second determination unit configured to determine a first symmetric key based on a key derivation function and the first encryption number;
the processing unit is used for processing the first data by using a symmetric encryption algorithm and the first symmetric key to obtain first encrypted data;
a third determination unit configured to determine first target data based on the first encrypted data and the first encryption number;
and the first sending unit is used for sending the first target data to the data receiving equipment.
In a fourth aspect, the present application provides a data transmission apparatus, where the apparatus is applied to a data receiving device, and the apparatus includes:
a fourth determining unit configured to determine second encrypted data based on the public key of the data receiving apparatus and the elliptic curve base point of the data transmitting apparatus;
the second sending unit is used for sending the second encrypted data to the data sending equipment so that the data sending equipment can process the second encrypted data based on a private key of the data sending equipment and obtain third encrypted data;
a receiving unit, configured to receive third encrypted data sent by the data sending apparatus;
a fifth determining unit configured to determine a second encryption number based on the third encrypted data and a public key of the data transmitting apparatus;
and the analysis unit is used for analyzing the first target data sent by the data sending equipment based on the second encryption number to obtain second target data.
In a fifth aspect, the present application provides a data transmission device, including: a memory and a processor;
the memory is used for storing relevant program codes;
the processor is configured to invoke the program code, and execute the data transmission method according to any one of the implementation manners of the first aspect or the second aspect.
In a sixth aspect, the present application provides a computer-readable storage medium for storing a computer program, where the computer program is configured to execute the data transmission method described in any one of the implementation manners of the first aspect or the second aspect.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed to be used in the description of the embodiments will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments provided in the present application, and other drawings can be obtained by those skilled in the art according to the drawings.
Fig. 1 is a flowchart of a data transmission method according to an embodiment of the present application;
fig. 2 is a flowchart of another data transmission method according to an embodiment of the present application;
fig. 3 is a schematic diagram of a data transmission apparatus according to an embodiment of the present application;
fig. 4 is a schematic diagram of another data transmission apparatus according to an embodiment of the present application;
fig. 5 is a schematic diagram of a data transmission device according to an embodiment of the present application.
Detailed Description
The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and the described embodiments are only exemplary embodiments of the present application, and not all implementations. Those skilled in the art can combine the embodiments of the present application to obtain other embodiments without inventive step, and these embodiments are also within the scope of the present application.
The careless transmission is used as a basic protocol of cryptography, has important application in the fields of multiparty security calculation, privacy query, data mining and the like, and can protect personal privacy and simultaneously realize the full utilization of data. The currently used oblivious transport protocol is the 1-out-of-n OT version (OTn) 1 ) In the n-t careless transmission protocol, a data holder (sender) has n pieces of information, a data receiver wants to acquire t pieces of data, the two parties exchange the information to ensure that the data receiver can only acquire the t pieces of data wanted by the data receiver and cannot acquire the rest n-t pieces of data, and the data holder does not know the t pieces of data specifically selected by the data receiver. The characteristic of the careless transmission makes the method have important application in the fields of multi-party secure computation, private information inquiry and the like.
In the current inadvertent transmission protocol, when a data sender and a data receiver encrypt/decrypt data, an exponential product operation is usually adopted, which results in higher computational complexity and lower data transmission efficiency of the data sender and the data receiver.
Based on this, the embodiment of the application provides a data transmission method, which can improve the efficiency of data transmission in the process of data transmission of a data sending device and a data receiving device. To facilitate understanding of the technical solutions provided in the embodiments of the present application, the following detailed description is provided with reference to the accompanying drawings.
Referring to fig. 1, fig. 1 is a flowchart of a data transmission method according to an embodiment of the present application.
The method is applied to a data transmission device, and can comprise the following steps:
s101: and determining a first encryption number corresponding to the first data based on the private key of the data sending device and the public key of the data receiving device.
When the first data comprises a plurality of data, for any one data, the encryption number corresponding to the data can be determined based on the private key of the data sending device and the public key of the data receiving device, so that the first encryption number corresponding to the first data can be determined, that is, the encryption number corresponding to each data in the first data is determined. It should be noted that the public key of the data sending device may be known by the data receiving device, but the private key of the data sending device is only known by itself, and cannot be known by the data receiving device. Similarly, the public key of the data receiving device can be known by the data sending device, but the private key of the data receiving device is only known by itself, and the data sending device cannot also know. In specific implementation, a number may be assigned to each data in the first data, and then the number of each data, a private key of the data sending device, and a public key of the data receiving device are operated by using elliptic curve multiplication to obtain an encrypted number corresponding to each data, so that the first encrypted number corresponding to the first data may be obtained. The first encryption number can be subsequently used to match the encryption number generated by the data receiving device, so that the data receiving device can obtain the desired data.
S102: a first symmetric key is determined based on the key derivation function and the first encryption number.
After obtaining the first encryption number, a first symmetric key required by the symmetric encryption algorithm may be determined using the key derivation function and the first encryption number. Alternatively, the first symmetric key may be determined based on a key derivation function, the first encryption number, and a random number of the data transmission apparatus. For example, when the first data includes n data, the data transmitting device includes n random numbers, and the random numbers may be generated by a random number generator, which is not limited in this embodiment.
S103: and processing the first data by using a symmetric encryption algorithm and a first symmetric key to obtain first encrypted data.
The symmetric encryption algorithm may be an AES algorithm, an SM4 algorithm, and the like, which is not limited in this embodiment.
S104: based on the first encrypted data and the first encryption number, first target data is determined.
After the first encrypted data is obtained, final first target data may be determined based on the first encrypted data and the first encryption number. In specific implementation, a first hash value corresponding to the first encryption number may be determined based on a hash function, and subsequently, matching with the encryption number of the data receiving device may be implemented by using uniqueness of the hash value. The first target data is then determined based on the first hash value, the random number of the data transmission device, and the first encrypted data. For example, the first hash value corresponding to the first encryption number, the random number of the data sending device, and the first encrypted data may be subjected to data splicing, so as to obtain the first target data.
S105: and sending the first target data to the data receiving equipment.
After the first target data is sent to the data receiving device, since the first target data is encrypted by using the private key of the data sending device, the data sending device needs to encrypt the data to be obtained by an encryption algorithm so as to match the first target data of the data sending device, so that the data to be obtained can be decrypted. The principle of data transmission by the data transmission device will be described in detail with reference to the accompanying drawings.
Referring to fig. 2, fig. 2 is a flowchart of another data transmission method according to an embodiment of the present application.
The method is applied to a data receiving device, and can comprise the following steps:
s201: the second encrypted data is determined based on the public key of the data receiving apparatus and the elliptic curve base point of the data transmitting apparatus.
In this embodiment, when the data receiving device and the data transmitting device perform data transmission through an encryption algorithm, only data required by the data receiving device and the data transmitting device may be acquired from the first data of the data transmitting device. To facilitate cryptographic calculations, the data receiving device may optionally number the data that is desired to be obtained, e.g., when the data receiving device needs to obtain t data, the data in the t data may be numbered 1, 2. The data receiving device may determine the second encrypted data based on its own public key, the target data number, the elliptic curve base point of the data transmitting device, and the random number of the data receiving device. The target data number is a number of data that the data receiving device wants to obtain, and the base point of the elliptic curve of the data transmitting device can be predetermined by the data transmitting device. The number of the random numbers of the data receiving device corresponds to the number of the target data numbers, and the random numbers may be generated by a random number generator in advance, which is not limited in this embodiment. In particular, may be as E tj1 Represents any data in the second encrypted data with t j Denotes the target data number, denoted by P b Public key representing data receiving device, in r bj Random number representing data receiving equipment, in G A Base point of an elliptic curve representing a data transmission apparatus, then E tj1 Can be expressed as E tj1 =t j P b +r bj G A Wherein, t j ∈[1,t]And t represents t data which the data receiving device wants to obtain from the first data of the data receiving device, so that the data receiving device can encrypt the data which the data receiving device wants to obtain second encrypted data.
S202: and sending the second encrypted data to the data sending equipment so that the data sending equipment processes the second encrypted data based on the private key of the data sending equipment and obtains third encrypted data.
After the data receiving device sends the second encrypted data to the data sending device, the data sending device may continue to encrypt the second encrypted data by using its own private key to obtain third encrypted data. Therefore, the data sending device can perform encryption processing on the first data by using the same encryption method, that is, calculate the first encryption number, and conveniently obtain target data in the encrypted data constructed by the data receiving device by using the same encryption method through encryption calculation under the condition that the subsequent data receiving device cannot know the private key of the data sending device.
S203: and receiving third encrypted data sent by the data sending equipment.
After the data sending device obtains the third encrypted data through the private key encryption process, the third encrypted data may be sent to the data receiving device.
S204: the second encryption number is determined based on the third encrypted data and the public key of the data transmission apparatus.
After receiving the third encrypted data, the data receiving device may perform encryption calculation based on the third encrypted data and the public key of the data transmitting device to determine the second encryption number. Specifically, the data reception device may determine the second encryption number by the third encrypted data, the random number of the data reception device, and the public key of the data transmission device. For example, D may be the value for any data that the data receiving device wants to obtain tj Denotes a second encryption number, denoted by E tj1 ' means third encrypted data because of the third encrypted data E tj1 ' is a method of encrypting the second encrypted data E by the data transmitting apparatus using a private key tj1 As can be seen from the above embodiment, the second encrypted data E is obtained by performing encryption processing tj1 Can be represented as E tj1 =t j P b +r bj G A Then the third encrypted data E tj1 ' can be expressed as E tj1 ’=K a E tj1 =K a (t j P b +r bj G A ) Wherein, K is a Representing the private key of the data sending device. Can be represented by P a Representing the public key of the data transmission device, the second encryption number D tj Can be expressed as D tj =E tj1 ’-r bj P a =K a (t j P b +r bj G A )-r bj P a =K a P b t j +r bj K a G A -r bj P a According to the principle of the elliptic curve encryption algorithm, it can be known that the public key of the data transmission device, namely K, can be obtained by multiplying the elliptic curve base point of the data transmission device by the private key a G A =P a Then D can be obtained tj =K a P b t j +r bj K a G A -r bj P a =K a P b t j
S205: and analyzing the first target data sent by the data sending equipment based on the second encryption number to obtain second target data.
Under the condition that the data receiving equipment cannot know the private key of the data sending equipment, the second encryption number is obtained through the calculation of the encryption algorithm and has the same form as the first encryption number obtained by the data sending equipment for the first data encryption processing, so that the data receiving equipment can analyze the first target data sent by the data sending equipment based on the second encryption number, and therefore the required second target data can be obtained.
In a specific implementation, as can be seen from the above embodiment, the first target data may be obtained by data splicing of the first hash value corresponding to the first encryption number, the random number of the data sending device, and the first encrypted data, so that the data receiving device may determine the hash value corresponding to the second encryption number by using the same hash function, and match the hash value corresponding to the second encryption number with the hash value corresponding to the first encryption number. According to the uniqueness of the hash function, when the corresponding hash values are the same, the first encryption number and the second encryption number are the same, so that the data receiving device can decrypt the data to be obtained. For example, when the hash value of the first encryption number and the hash value of the second encryption number are successfully matched, the second symmetric key, that is, the key for decrypting the encrypted data may be computationally determined based on the second encryption number and the random number of the data transmission apparatus using a key derivation function used by the data transmission apparatus. Since the key derivation functions are the same and the random numbers are the same, the second symmetric key is also the same as the first symmetric key. Since the first encrypted data is obtained by the data sending device through the encryption process by using the symmetric encryption algorithm and the first symmetric key, the data receiving device can decrypt the first encrypted data in the first target data by using the second symmetric key and the symmetric encryption algorithm used by the data sending device, and thus the original data required by the data receiving device can be obtained.
According to the data transmission method provided by the embodiment, the data sending device and the data receiving device send and receive data after obtaining the encryption number through data encryption processing, so that the data sending device cannot know the data which the data receiving device wants to obtain, the data receiving device can only decrypt the data which the data receiving device wants to obtain according to the matching of the encryption number, and cannot decrypt other data of the data sending device, the privacy of the data is guaranteed, meanwhile, complex exponential operation is not needed, and the efficiency of data transmission is improved.
Based on the above method embodiments, the present application provides a data transmission device. Referring to fig. 3, fig. 3 is a schematic diagram of a data transmission device according to an embodiment of the present application.
The apparatus 300 may be applied to a data transmission device, the data transmission device including first data, the apparatus 300 including:
a first determining unit 301, configured to determine, based on a private key of the data sending device and a public key of the data receiving device, a first encryption number corresponding to the first data;
a second determining unit 302, configured to determine a first symmetric key based on a key derivation function and the first encryption number;
a processing unit 303, configured to process the first data by using a symmetric encryption algorithm and the first symmetric key, to obtain first encrypted data;
a third determining unit 304 configured to determine first target data based on the first encrypted data and the first encrypted number;
a first sending unit 305, configured to send the first target data to the data receiving device.
In a possible implementation manner, the second determining unit 302 is specifically configured to determine the first symmetric key based on a key derivation function, the first encryption number, and a random number of the data sending apparatus, where the random number of the data sending apparatus corresponds to the first data.
In a possible implementation manner, the third determining unit 304 is specifically configured to determine, based on a hash function, a first hash value corresponding to the first encryption number; determining the first target data based on the first hash value, the random number of the data transmission apparatus, and the first encrypted data.
In addition, the embodiment of the application also provides a data transmission device. Referring to fig. 4, fig. 4 is a schematic diagram of another data transmission device according to an embodiment of the present application.
The apparatus 400 may be applied to a data receiving device, and the apparatus 400 may include:
a fourth determining unit 401, configured to determine second encrypted data based on the public key of the data receiving device and the elliptic curve base point of the data sending device;
a second sending unit 402, configured to send the second encrypted data to the data sending device, so that the data sending device processes the second encrypted data based on its own private key and obtains third encrypted data;
a receiving unit 403, configured to receive third encrypted data sent by the data sending apparatus;
a fifth determining unit 404 configured to determine a second encryption number based on the third encrypted data and a public key of the data transmitting apparatus;
an analyzing unit 405, configured to analyze the first target data sent by the data sending device based on the second encryption number, and obtain second target data.
In a possible implementation manner, the fourth determining unit 401 is specifically configured to determine the second encrypted data based on a public key of the data receiving device, a target data number, an elliptic curve base point of the data sending device, and a random number of the data receiving device, where the data receiving device includes a plurality of target data numbers, and the plurality of target data numbers, the random number of the data receiving device, and the second target data correspond to each other.
In a possible implementation manner, the fifth determining unit 404 is specifically configured to determine the second encryption number based on the third encrypted data, the random number of the data receiving apparatus, and the public key of the data sending apparatus.
The beneficial effects of the data transmission device provided by the embodiment of the present application can be seen in the above method embodiments, which are not described herein again.
Based on the method embodiment and the device embodiment, the embodiment of the application also provides a data transmission device. Referring to fig. 5, fig. 5 is a schematic diagram of a data transmission device according to an embodiment of the present application.
The apparatus 500 comprises: a memory 501 and a processor 502;
the memory 501 is used for storing relevant program codes;
the processor 502 is configured to call the program code to execute the data transmission method according to the above method embodiment.
In addition, an embodiment of the present application further provides a computer-readable storage medium, where the computer-readable storage medium is used to store a computer program, and the computer program is used to execute the data transmission method described in the foregoing method embodiment.
It should be noted that, in the present specification, each embodiment is described in a progressive manner, and each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments may be referred to each other. In particular, for system or apparatus embodiments, since they are substantially similar to method embodiments, they are described relatively simply, and reference may be made to some descriptions of method embodiments for related portions. The above-described embodiments of the apparatus are merely illustrative, where units or modules described as separate components may or may not be physically separate, and components displayed as units or modules may or may not be physical modules, that is, may be located in one place, or may be distributed on multiple network units, and some or all of the units or modules may be selected according to actual needs to achieve the purpose of the solution of the present embodiment. One of ordinary skill in the art can understand and implement without inventive effort.
It should be understood that, in this application, "at least one" means one or more, "a plurality" means two or more. "and/or" for describing an association relationship of associated objects, indicating that there may be three relationships, e.g., "a and/or B" may indicate: only A, only B and both A and B are present, wherein A and B may be singular or plural. The character "/" generally indicates that the former and latter associated objects are in an "or" relationship. "at least one of the following" or similar expressions refer to any combination of these items, including any combination of single item(s) or plural items. For example, at least one (one) of a, b, or c, may represent: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", wherein a, b and c may be single or plural.
It is further noted that, herein, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrases "comprising one of 8230; \8230;" 8230; "does not exclude the presence of additional like elements in a process, method, article, or apparatus that comprises the element.
The steps of a method or algorithm described in connection with the embodiments disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in Random Access Memory (RAM), memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.
The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present application. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the application. Thus, the present application is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims (10)

1. A data transmission method applied to a data transmission apparatus including first data, the method comprising:
determining a first encryption number corresponding to the first data based on a private key of the data sending device and a public key of the data receiving device;
determining a first symmetric key based on a key derivation function and the first encryption number;
processing the first data by using a symmetric encryption algorithm and the first symmetric key to obtain first encrypted data;
determining first target data based on the first encrypted data and the first encryption number;
and sending the first target data to the data receiving equipment.
2. The method of claim 1, wherein determining a first symmetric key based on a key derivation function and the first encryption number comprises:
determining the first symmetric key based on a key derivation function, the first encryption number, and a random number of the data transmission apparatus, the random number of the data transmission apparatus corresponding to the first data.
3. The method according to claim 1, wherein the determining first target data based on the first encrypted data and the first encryption number comprises:
determining a first hash value corresponding to the first encryption number based on a hash function;
determining the first target data based on the first hash value, the random number of the data transmission apparatus, and the first encrypted data.
4. A data transmission method applied to a data receiving device, the method comprising:
determining second encrypted data based on the public key of the data receiving device and the elliptic curve base point of the data sending device;
sending the second encrypted data to the data sending equipment so that the data sending equipment can process the second encrypted data based on a private key of the data sending equipment and obtain third encrypted data;
receiving third encrypted data sent by the data sending equipment;
determining a second encryption number based on the third encrypted data and a public key of the data transmission apparatus;
and analyzing the first target data sent by the data sending equipment based on the second encryption number to obtain second target data.
5. The method according to claim 4, wherein determining second encrypted data based on the public key of the data receiving device and the elliptic curve base point of the data transmitting device comprises:
determining the second encrypted data based on a public key of the data receiving apparatus, a target data number, an elliptic curve base point of the data transmitting apparatus, and a random number of the data receiving apparatus, the data receiving apparatus including a plurality of the target data numbers, the random number of the data receiving apparatus, and the second target data corresponding to each other.
6. The method according to claim 4, wherein the determining a second encryption number based on the third encrypted data and a public key of the data transmission apparatus comprises:
determining the second encryption number based on the third encrypted data, the random number of the data receiving apparatus, and the public key of the data transmitting apparatus.
7. A data transmission apparatus, wherein the apparatus is applied to a data transmission device including first data, the apparatus comprising:
a first determining unit, configured to determine, based on a private key of the data sending device and a public key of the data receiving device, a first encryption number corresponding to the first data;
a second determination unit configured to determine a first symmetric key based on a key derivation function and the first encryption number;
the processing unit is used for processing the first data by using a symmetric encryption algorithm and the first symmetric key to obtain first encrypted data;
a third determination unit configured to determine first target data based on the first encrypted data and the first encryption number;
and the first sending unit is used for sending the first target data to the data receiving equipment.
8. A data transmission apparatus, wherein the apparatus is applied to a data receiving device, the apparatus comprising:
a fourth determining unit configured to determine second encrypted data based on the public key of the data receiving apparatus and the elliptic curve base point of the data transmitting apparatus;
the second sending unit is used for sending the second encrypted data to the data sending equipment so that the data sending equipment can process the second encrypted data based on a private key of the data sending equipment and obtain third encrypted data;
a receiving unit, configured to receive third encrypted data sent by the data sending apparatus;
a fifth determining unit configured to determine a second encryption number based on the third encrypted data and a public key of the data transmitting apparatus;
and the analysis unit is used for analyzing the first target data sent by the data sending equipment based on the second encryption number to obtain second target data.
9. A data transmission device, characterized in that the device comprises: a memory and a processor;
the memory is used for storing relevant program codes;
the processor is configured to call the program code to perform the data transmission method of any one of claims 1 to 3 or 4 to 6.
10. A computer-readable storage medium for storing a computer program for executing the data transmission method according to any one of claims 1 to 3 or 4 to 6.
CN202211261523.2A 2022-10-14 2022-10-14 Data transmission method, device, equipment and storage medium Pending CN115604006A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211261523.2A CN115604006A (en) 2022-10-14 2022-10-14 Data transmission method, device, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211261523.2A CN115604006A (en) 2022-10-14 2022-10-14 Data transmission method, device, equipment and storage medium

Publications (1)

Publication Number Publication Date
CN115604006A true CN115604006A (en) 2023-01-13

Family

ID=84846086

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211261523.2A Pending CN115604006A (en) 2022-10-14 2022-10-14 Data transmission method, device, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN115604006A (en)

Similar Documents

Publication Publication Date Title
US11477006B2 (en) Secure analytics using an encrypted analytics matrix
US9736128B2 (en) System and method for a practical, secure and verifiable cloud computing for mobile systems
Liu et al. An efficient privacy-preserving outsourced calculation toolkit with multiple keys
US20210367783A1 (en) Matching system, method, apparatus, and program
CN109146481B (en) Method, medium and device for automatically importing account private key of blockchain wallet and blockchain system
CN107196926B (en) Cloud outsourcing privacy set comparison method and device
CN111130803B (en) Method, system and device for digital signature
US20180131512A1 (en) Method and system for providing encrypted data on a client
NL2013944B1 (en) Public-key encryption system.
WO2018232603A1 (en) Secured computing
CN109040060B (en) Terminal matching method and system and computer equipment
WO2023050687A1 (en) Sample alignment method and apparatus in federated learning, and device and storage medium
CN115580396B (en) Tight trace query system and method
US20240163084A1 (en) Method of data transmission, and electronic devic
CN114239019A (en) Method, device and system for determining number of shared data for protecting privacy data
WO2014030706A1 (en) Encrypted database system, client device and server, method and program for adding encrypted data
CN106789008B (en) Method, device and system for decrypting sharable encrypted data
CN117077209B (en) Large-scale data hiding trace query method
CN115098868A (en) Privacy-protecting data providing and inquiring method, device and system
CN114448640A (en) Double-blind information distribution method and device and computer readable storage medium
CN117150557A (en) Compression-supporting private information retrieval method and system based on secure multiparty computing
CN110598427A (en) Data processing method, system and storage medium
CN115604006A (en) Data transmission method, device, equipment and storage medium
CN112836239A (en) Method and device for cooperatively determining target object data by two parties for protecting privacy
US20230085577A1 (en) Secured performance of an elliptic curve cryptographic process

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination