CN110661618A - Data transmission method and device and electronic equipment - Google Patents

Data transmission method and device and electronic equipment Download PDF

Info

Publication number
CN110661618A
CN110661618A CN201910767410.1A CN201910767410A CN110661618A CN 110661618 A CN110661618 A CN 110661618A CN 201910767410 A CN201910767410 A CN 201910767410A CN 110661618 A CN110661618 A CN 110661618A
Authority
CN
China
Prior art keywords
service data
random number
random
data
initial position
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.)
Granted
Application number
CN201910767410.1A
Other languages
Chinese (zh)
Other versions
CN110661618B (en
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.)
Advanced New Technologies Co Ltd
Advantageous New Technologies Co Ltd
Original Assignee
Alibaba Group Holding Ltd
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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201910767410.1A priority Critical patent/CN110661618B/en
Publication of CN110661618A publication Critical patent/CN110661618A/en
Priority to PCT/CN2020/106300 priority patent/WO2021031828A1/en
Application granted granted Critical
Publication of CN110661618B publication Critical patent/CN110661618B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Telephonic Communication Services (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

The embodiment of the specification provides a data transmission method, a data transmission device and electronic equipment. The method comprises the following steps: the sender generates a plurality of first random numbers according to the first random seeds; the third party generates a second random number according to the first random seed and the initial position, and sends the second random number to the receiving party; the receiving party receives the second random number; the receiver calculates the offset according to the target position and the initial position and sends the offset to the sender; the sender receives the offset, encrypts the plurality of service data according to the plurality of first random numbers and the offset, and sends a plurality of encrypted ciphertext data to the receiver; and the receiver receives the plurality of ciphertext data, decrypts the ciphertext data positioned at the target position in the plurality of ciphertext data according to the second random number, and obtains the final service data to be selected. The data transmission method, the data transmission device and the electronic equipment in the embodiment of the specification can improve efficiency and robustness.

Description

Data transmission method and device and electronic equipment
Technical Field
The embodiment of the specification relates to the technical field of computers, in particular to a data transmission method, a data transmission device and electronic equipment.
Background
In practical business, the need of enabling each party to perform safe and effective multi-party cooperation without revealing own data is particularly urgent. Oblivious Transfer (OT) is a technique in secure multiparty computing. This technique enables both parties to communicate data in a selective obfuscation manner. Specifically, the sender may have a plurality of data. One or more of the plurality of data can be obtained by the recipient via an inadvertent transmission. In this process, the sender does not know which data the receiver receives; and the receiver cannot obtain any data other than the data it receives. The inadvertent transmission has great value and prospect in the fields of social interaction, military, commerce, finance, government and the like.
During the data transmission phase of the inadvertent transmission, the participation of a third party is usually required to multiple-encrypt the data held by the sender. Therefore, on one hand, the data held by the sender needs to be subjected to multiple encryption, so that the calculation amount is large; on the other hand, because of the participation of a third party, if the third party has communication failure, transmission failure is caused, and the robustness is poor.
Disclosure of Invention
The embodiment of the specification provides a data transmission method, a data transmission device and electronic equipment, so that the efficiency and the robustness are improved.
In order to achieve the above purpose, one or more embodiments in the present specification provide the following technical solutions.
According to a first aspect of one or more embodiments of the present specification, there is provided a data transmission method including: the sender generates a plurality of first random numbers according to the first random seeds; the third party generates a second random number according to the first random seed and the initial position, and sends the second random number to the receiving party; the initial position is the position of the service data initially to be selected by the receiver in the plurality of service data held by the sender, and the second random number is equal to the first random number located at the initial position in the plurality of first random numbers; the receiver receives the second random number, calculates an offset according to the target position and the initial position, and sends the offset to the sender; the target position is the position of the service data to be selected by the receiver in the service data; the sender receives the offset, encrypts the plurality of service data according to the plurality of first random numbers and the offset, and sends a plurality of encrypted ciphertext data to the receiver; and the receiver receives the plurality of ciphertext data, decrypts the ciphertext data positioned at the target position in the plurality of ciphertext data according to the second random number, and obtains the final service data to be selected.
According to a second aspect of one or more embodiments of the present specification, there is provided a data transmission method applied to a sender holding a plurality of service data, the method including: generating a plurality of first random numbers according to the random seed; receiving an offset sent by a receiving party; the offset is calculated according to a target position and an initial position, the target position is the position of the service data to be selected by the receiver finally in the plurality of service data, and the initial position is the position of the service data to be selected by the receiver initially in the plurality of service data; encrypting the plurality of service data according to the plurality of first random numbers and the offset; and sending the encrypted plurality of ciphertext data to a receiving party.
According to a third aspect of one or more embodiments of the present specification, there is provided a data transmission method applied to a receiving side, the method including: receiving a first random number sent by a third party; calculating an offset according to the target position and the initial position; the target position is the position of the service data which is finally selected by the receiver in the plurality of service data held by the sender, and the initial position is the position of the service data which is initially selected by the receiver in the plurality of service data; sending the offset to a sender so that the sender encrypts a plurality of service data held by the sender; receiving a plurality of encrypted ciphertext data sent by a sender; and decrypting the ciphertext data positioned at the target position in the plurality of ciphertext data according to the first random number to obtain the final service data to be selected.
According to a fourth aspect of one or more embodiments of the present specification, there is provided a data transmission method applied to a third party, the method including: generating a random number according to the initial position and a first random seed appointed with a sender; the initial position is the position of the service data initially selected by the receiver in the plurality of service data held by the sender; and sending the random number to a receiving party.
According to a fifth aspect of one or more embodiments of the present specification, there is provided a data transmission apparatus, which is applied to a sender holding a plurality of service data, the apparatus including: a generating unit configured to generate a plurality of first random numbers according to the random seed; a receiving unit, configured to receive an offset sent by a receiving party; the offset is calculated according to a target position and an initial position, the target position is the position of the service data to be selected by the receiver finally in the plurality of service data, and the initial position is the position of the service data to be selected by the receiver initially in the plurality of service data; an encrypting unit, configured to encrypt the plurality of service data according to the plurality of first random numbers and the offset; and the transmitting unit is used for transmitting the encrypted plurality of ciphertext data to the receiving party.
According to a sixth aspect of one or more embodiments of the present specification, there is provided a data transmission apparatus applied to a receiving side, the apparatus including: the first receiving unit is used for receiving a first random number sent by a third party; a calculation unit for calculating an offset amount based on the target position and the initial position; the target position is the position of the service data which is finally selected by the receiver in the plurality of service data held by the sender, and the initial position is the position of the service data which is initially selected by the receiver in the plurality of service data; a sending unit, configured to send the offset to a sender, so that the sender encrypts multiple service data owned by the sender; the second receiving unit is used for receiving a plurality of encrypted ciphertext data sent by the sending party; and the decryption unit is used for decrypting the ciphertext data positioned at the target position in the plurality of ciphertext data according to the first random number to obtain the final service data to be selected.
According to a seventh aspect of one or more embodiments of the present specification, there is provided a data transmission apparatus applied to a third party, the apparatus including: the generating unit is used for generating a random number according to the initial position and a first random seed appointed with a sender; the initial position is the position of the service data initially selected by the receiver in the plurality of service data held by the sender; a sending unit, configured to send the random number to a receiving side.
According to an eighth aspect of one or more embodiments of the present specification, there is provided an electronic apparatus comprising: a memory for storing computer instructions; a processor for executing the computer instructions to carry out the method steps according to the second aspect.
According to a ninth aspect of one or more embodiments of the present specification, there is provided an electronic device comprising: a memory for storing computer instructions; a processor for executing the computer instructions to perform the method steps according to the third aspect.
According to a tenth aspect of one or more embodiments of the present specification, there is provided an electronic apparatus comprising: a memory for storing computer instructions; a processor for executing the computer instructions to perform the method steps according to the fourth aspect.
As can be seen from the technical solutions provided by the embodiments of the present specification, the sender and the receiver can implement the inadvertent transmission. On one hand, the business data held by the sender only needs to be encrypted once, so that the calculation amount is reduced, and the efficiency is improved; on the other hand, only the sender and the receiver need to interact in the data transmission stage of the accidental transmission without the participation of a third party, thereby avoiding the transmission failure problem caused by the communication failure of the third party and improving the robustness.
Drawings
In order to more clearly illustrate the embodiments of the present specification or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below, the drawings in the following description are only some embodiments described in the present specification, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
FIG. 1 is a schematic diagram of a data transmission system according to an embodiment of the present disclosure;
FIG. 2 is a flow chart of a data transmission method according to an embodiment of the present disclosure;
FIG. 3 is a flow chart of a data transmission method according to an embodiment of the present disclosure;
FIG. 4 is a flow chart of a data transmission method according to an embodiment of the present disclosure;
FIG. 5 is a flow chart of a data transmission method according to an embodiment of the present disclosure;
fig. 6 is a functional block diagram of a data transmission device according to an embodiment of the present disclosure;
fig. 7 is a functional block diagram of a data transmission device according to an embodiment of the present disclosure;
fig. 8 is a functional block diagram of a data transmission device according to an embodiment of the present disclosure;
fig. 9 is a functional block diagram of an electronic device according to an embodiment of the present disclosure.
Detailed Description
The technical solutions in the embodiments of the present disclosure will be clearly and completely described below with reference to the drawings in the embodiments of the present disclosure, and it is obvious that the described embodiments are only a part of the embodiments of the present disclosure, and not all of the embodiments. All other embodiments obtained by a person skilled in the art based on the embodiments in the present specification without any inventive step should fall within the scope of protection of the present specification.
Oblivious Transfer (OT), also known as casual Transfer, is a privacy-preserving two-party communication protocol that enables two communicating parties to communicate data in a selective obfuscation manner. The sender may have a plurality of data. One or more of the plurality of data can be obtained by the recipient via an inadvertent transmission. In this process, the sender does not know which data the receiver receives; and the receiver cannot obtain any data other than the data it receives.
The random seed may be a random number used to generate the random number. The random seed may be a true random number. In practical application, the random seed is used as an initial condition, and a random number generation algorithm is utilized to perform multiple iterations, so that a plurality of corresponding random numbers can be generated. The same random number generation algorithm is executed by different implementation bodies based on the same random seed, and the same random number can be obtained. The random number generation algorithm may include a squaring Method (MidsquareMethod), a Linear congruence Method (Linear Congruential Method), and the like.
Please refer to fig. 1. This specification provides embodiments of a data transmission system. The data transmission system may include a sender, a receiver, and a Third Party (TTP). The sender can be equipment such as a server, a mobile phone, a tablet computer or a personal computer; alternatively, the system may be a system including a plurality of devices, for example, a server cluster including a plurality of servers. The receiver can be a server, a mobile phone, a tablet computer, a personal computer or other equipment; alternatively, the system may be a system including a plurality of devices, for example, a server cluster including a plurality of servers. The third party may be a server; alternatively, it may be a server cluster including a plurality of servers.
The sender may be a sender of service data in an inadvertent transmission process, the receiver may be a receiver of the service data in the inadvertent transmission process, and the sender may hold a plurality of service data for the receiver to select. The third party may be configured to issue a random number to the sender and/or the receiver, so that the sender and the receiver can perform an inadvertent transmission. The process of inadvertent transmission between the sender and the receiver may include an offline phase and an online phase. The offline phase may be understood as a preparation phase prior to data transmission, in which the participation of a third party is required. The online phase may be understood as a data transfer phase, in which no third party is involved.
In the off-line phase, the third party and the sender may agree on a first random seed. The sender may generate a plurality of first random numbers according to the first random seed. The third party may generate a second random number from the initial position and the first random seed; the second random number may be transmitted to the receiving side. The receiving side may receive the second random number. The initial position is the position of the service data initially selected by the receiver in the service data held by the sender. Before data transmission, the receiver does not know which service data to select by itself, and thus the initial position may be a random number. The third party and the recipient may each hold the initial location. In some embodiments, the third party and the recipient may agree on a second random seed. The third party may locally generate an initial position according to the second random seed, and the receiving party may also locally generate an initial position according to the second random seed. In other embodiments, the third party may randomly generate an initial location; the initial position may be sent to the recipient. The recipient may receive the initial location. In other embodiments, the recipient may randomly generate an initial location; the initial location may be sent to the third party. The third party may receive the initial location.
In the online stage, the receiver can calculate the offset according to the target position and the initial position; the offset may be sent to the sender. The target position is the position of the service data to be selected by the receiver in the service data. The sender may receive the offset; the plurality of traffic data may be encrypted according to the plurality of first random numbers and the offset; the encrypted plurality of ciphertext data may be transmitted to a recipient. The receiver may receive the plurality of ciphertext data; the ciphertext data located at the target position in the plurality of ciphertext data may be decrypted according to the second random number, so as to obtain the final service data to be selected. Thus, the receiving is convenient to select and obtain the service data corresponding to the target position. In this process, the sender does not know which service data the receiver selects, and the receiver cannot obtain any service data other than the service data selected by the receiver.
The present specification also provides an embodiment of a data transmission method. By this embodiment, an inadvertent transmission between the sender and the receiver is enabled. This embodiment may include an offline phase and an online phase. The off-line phase may be understood as a preparation phase before data transmission, the off-line phase may include steps S101 to S107, the on-line phase may be understood as a data transmission phase, and the on-line phase may include steps S109 to S117. It should be noted that the method steps in the offline phase and the method steps in the online phase may be executed multiple times when the sender and the receiver perform multiple times of unintentional transmission. Alternatively, the method steps of the offline phase may be performed only once, while the method steps of the online phase may be performed multiple times.
Referring to fig. 2, the embodiment may include the following steps.
Step S101: the sender generates a plurality of first random numbers according to the first random seeds.
In some embodiments, the sender may hold a plurality of service data for selection by the receiver, and each service data may have a position in the plurality of service data. In one scenario example, the sender holds d0、d1、...、dN-1Wait for N service data, d0、d1、dN-1The positions in the N service data are respectively 0, 1 and N-1, and the bit number of each service data is K.
In some embodiments, the first random seed may be a random seed agreed between the third party and the sender. The sender may generate a plurality of first random numbers according to the first random seed, and each first random number may have a position in the plurality of first random numbers. The number of the first random numbers may be the same as or different from the number of the service data, and the number of bits of the first random numbers may also be the same as or different from the number of bits of the service data, depending on the encryption scheme used by the sender in the subsequent step S113. In some embodiments, the sender may be a sender of the messageAnd performing multiple iterations by using the random number generation algorithm with the first random seed as an initial condition to generate a plurality of corresponding first random numbers. In other embodiments, the sender may generate a random number sequence by a random number generation algorithm with the first random seed as an input; the random number sequence may be split into a plurality of first random numbers. Continuing with the previous scenario example, the number of bits of the random number sequence may be N × K. The sender may split the random number sequence into s0、s1、...、sN-1Wait for N first random numbers, s0、s1、sN-1The positions in the N first random numbers are respectively 0, 1 and N-1, and the bit number of each first random number is K.
Step S103: the third party generates a second random number according to the first random seed and the initial position.
In some embodiments, the initial position is a position of the service data to be selected initially by the receiving side in the plurality of service data held by the sending side. In the off-line phase, the receiver does not determine which service data to select in the on-line phase, and thus the initial position may be a random number. The initial position may be a positive integer, and the size of the initial position is smaller than or equal to the number of the service data. Continuing with the previous scenario example, the initial position may be a random number r between 0 and N-1.
The third party and the recipient may each hold the initial location. In some embodiments, the third party and the recipient may agree to have a second random seed. The third party may locally generate an initial position according to the second random seed, and the receiving party may also locally generate an initial position according to the second random seed. In other embodiments, the third party may randomly generate an initial location; the initial position may be sent to the recipient. The recipient may receive the initial location. In other embodiments, the recipient may randomly generate an initial location; the initial location may be sent to the third party. The third party may receive the initial location.
In some embodiments, the second random number may be equal to a first random number located at the initial position among the plurality of first random numbers. Continuing with the previous example of the scenario, the N first random numbers s0、s1、...、sN-1The first random number at the initial position r may be srAnd thus the second random number may be associated with srAre equal.
In some embodiments, the third party may generate the second random number from the first random seed and the initial position in any manner. In some embodiments, the third party may generate the plurality of first random numbers from the first random seed; the first random number located at the initial position may be selected from the plurality of first random numbers as a second random number. In some embodiments, the third party may further directly generate, as the second random number, the first random number located at the initial position from the plurality of first random numbers according to the first random seed and the initial position.
Step S105: and the third party sends the second random number to a receiving party.
Step S107: the receiving side receives the second random number.
Step S109: the receiver calculates an offset according to the target position and the initial position.
In some embodiments, the target position is a position of the service data to be selected by the receiving party in the plurality of service data. The target position may be a positive integer, and the size of the target position is smaller than or equal to the number of the service data. The offset is the distance between the position of the service data to be selected finally and the position of the service data to be selected initially.
In some embodiments, the recipient may calculate a difference between the target location and the initial location; the difference and the number of the service data can be subjected to modular operation; the result of the operation may be taken as an offset. Continuing with the previous scenario example, the recipient may calculate c ═ r-p)% N as the offset, c denotes the offset, r denotes the initial position, p denotes the target position, and% denotes the modulo operation.
Step S111: and the receiving side sends the offset to the sending side.
Step S113: and the sender receives the offset and encrypts the plurality of service data according to the plurality of first random numbers and the offset.
In some embodiments, the sender may add the offset to a position of each first random number in the plurality of first random numbers, respectively; each addition result and the number of the service data can be subjected to modular operation respectively; the traffic data may be encrypted using the first random number located at each operation result among the plurality of first random numbers, respectively. The modulo operation is used to cyclically shift the first random number by the offset number of positions. Thus, the sender can obtain the first random number which is separated from each first random number (hereinafter, referred to as the original first random number) by the offset, and can encrypt the service data at the corresponding position by using the obtained first random number. The traffic data at the respective locations can be understood as: the position of the service data in the plurality of service data is equal to the position of the original first random number in the plurality of first random numbers.
Continuing with the previous scenario example, the sender may add the offset c to the position 0, 1,. and/or N-1 of each first random number in the plurality of first random numbers, respectively, to obtain an addition result 0+ c, 1+ c,. and/or N-1+ c; performing a modulo operation on each addition result and the number N of the service data to obtain operation results of (0+ c)% N, (1+ c)% N, · and (N-1+ c)% N; a first random number s at each operation result of the plurality of first random numbers may be obtained(0+c)%N、s(1+c)%N、...、s(N-1+c)%N(ii) a Can use s(0+c)%N、s(1+c)%N、...、s(N-1+c)%NFor service data d0、d1、...、dN-1Encrypting to obtain ciphertext data s(0+c)%NXORd0、s(1+c)%NXORd1、...、s(N-1+c)%NXORdN-1. XOR denotes an exclusive or operation. It should be noted that, the encryption of the service data by the exclusive or operation is only an example, and in practical applications, the service data may be encrypted by other methods, such as an AES encryption method.
Step S115: the sender sends the encrypted ciphertext data to the receiver.
Step S117: and the receiver receives the plurality of ciphertext data, decrypts the ciphertext data positioned at the target position in the plurality of ciphertext data according to the second random number, and obtains the final service data to be selected.
In some embodiments, the plurality of ciphertext data are obtained by encrypting the plurality of service data, and an arrangement order of the plurality of ciphertext data and an arrangement order of the plurality of service data may be consistent. For example, if the position of a certain service data in the plurality of service data is j. Then, the position of the ciphertext data corresponding to the service data in the plurality of ciphertext data is also j. Therefore, the receiver can decrypt the ciphertext data located at the target position in the plurality of ciphertext data according to the second random number, so as to obtain the final service data to be selected, that is, the service data corresponding to the target position is obtained. Continuing the preceding example of a scenario, the plurality of ciphertext data
s(0+c)%NXORd0、s(1+c)%NXORd1、...、s(N-1+c)%NXORdN-1The ciphertext data at the target position p may be s(p+c)%NXORdp. In view of sr=s(p+c)%NThe receiving party may be based on a second random number srFor ciphertext data
s(p+c)%NXORdpDecrypting to obtain the final service data d to be selectedp
Of course, the arrangement order of the plurality of ciphertext data and the arrangement order of the plurality of service data may be different. The receiving side may attempt to decrypt the plurality of ciphertext data based on the second random number, but only one ciphertext data is successfully decrypted. The receiver may use the successfully decrypted service data as the service data corresponding to the target location.
In some embodiments, the number of bits of the first random number and the number of bits of the second random number may be equal to the number of bits of the service data. Thus, the service data can be encrypted by the first random number having the same number of bits as the service data in step S113, and the ciphertext data can be decrypted by the second random number having the same number of bits as the service data in step S117.
In some embodiments, the number of bits of the first random number and the number of bits of the second random number may both be equal to a preset safety threshold. The security threshold may be, for example, 128 bits, 256 bits, or the like. Thus, the traffic data may be encrypted based on the first random number having the number of bits equal to the security threshold at step S113, and the ciphertext data may be decrypted based on the second random number having the number of bits equal to the security threshold at step S117.
In some embodiments, the number of bits of the traffic data may be greater than the safety threshold. The number of bits of the first random number and the number of bits of the second random number may both be equal to the security threshold. The sender may generate a plurality of third random numbers according to the plurality of first random numbers, and a bit number of the third random numbers may be equal to a bit number of the service data. The sender may specifically generate a corresponding third random number according to each first random number. The sender may encrypt the plurality of service data according to the plurality of third random numbers and the offset, and a specific encryption process may refer to a related description in step S113. Accordingly, the receiver may generate a fourth random number according to the second random number, the number of bits of the fourth random number may be equal to the number of bits of the service data, and the fourth random number may be equal to a third random number located at the initial position among the plurality of third random numbers. The receiving side may decrypt the ciphertext data located at the target position in the plurality of ciphertext data according to the fourth random number, and a specific decryption process may refer to related description in step S117.
In this regard, in step S113, the service data may be encrypted based on the third random number having the number of bits greater than the security threshold, and in step S117, the ciphertext data may be decrypted based on the fourth random number having the number of bits greater than the security threshold. On the other hand, the third party transmits the second random number to the receiving party instead of transmitting the fourth random number to the receiving party, and the number of bits of the second random number is smaller than that of the fourth random number, so that the communication traffic between the third party and the receiving party is reduced.
In the data transmission method, the sender and the receiver in the embodiments of the present description can implement the inadvertent transmission. On one hand, the business data held by the sender only needs to be encrypted once, so that the calculation amount is reduced, and the efficiency is improved; on the other hand, only the sender and the receiver need to interact in the data transmission stage of the accidental transmission without the participation of a third party, thereby avoiding the transmission failure problem caused by the communication failure of the third party and improving the robustness.
The present specification also provides another embodiment of a data transmission method. The embodiment takes a sender as an execution subject. The sender may hold a plurality of service data. Referring to fig. 3, the embodiment may include the following steps.
Step S21: a plurality of first random numbers are generated from the random seed.
For the description of the random seed, reference may be made to the description of the first random seed in the embodiment corresponding to fig. 2.
Step S23: receiving the offset sent by the receiving party.
Step S25: and encrypting the plurality of service data according to the plurality of first random numbers and the offset.
Step S27: and sending the encrypted plurality of ciphertext data to a receiving party.
In some embodiments, the number of bits of the first random number may be equal to the number of bits of the service data. Thus, the service data can be encrypted according to the first random number having the same number of bits as the service data in step S25.
In some embodiments, the number of bits of the first random number may be equal to a preset safety threshold. Thus, in step S25, the traffic data may be encrypted according to the first random number having the number of bits equal to the security threshold.
In some embodiments, the number of bits of the traffic data may be greater than the safety threshold. The number of bits of the first random number may be equal to the safety threshold. The sender may generate a plurality of second random numbers from the plurality of first random numbers; the plurality of traffic data may be encrypted according to the plurality of second random numbers and the offset. The number of bits of the second random number may be equal to the number of bits of the service data. Thus, in step S25, the traffic data may be encrypted according to the second random number having the bit number greater than the security threshold. The description of the second random number may refer to the description of the third random number in the embodiment corresponding to fig. 2.
In the data transmission method, the sender and the receiver in the embodiments of the present description can implement the inadvertent transmission. On one hand, the business data held by the sender only needs to be encrypted once, so that the calculation amount is reduced, and the efficiency is improved; on the other hand, only the sender and the receiver need to interact in the data transmission stage of the accidental transmission without the participation of a third party, thereby avoiding the transmission failure problem caused by the communication failure of the third party and improving the robustness.
The present specification also provides another embodiment of a data transmission method. The embodiment takes a receiving party as an execution subject.
Referring to fig. 4, the embodiment may include the following steps.
Step S31: and receiving the first random number sent by the third party.
For the description of the first random number, reference may be made to the description of the second random number in the embodiment corresponding to fig. 2.
Step S33: and calculating the offset according to the target position and the initial position.
The initial position may be obtained in the following manner: generating an initial position according to the random seeds; or, randomly generating an initial position; alternatively, an initial location from a third party is received.
Step S35: and sending the offset to the sender so that the sender encrypts a plurality of service data held by the sender.
Step S37: and receiving a plurality of encrypted ciphertext data sent by the sender.
Step S39: and decrypting the ciphertext data positioned at the target position in the plurality of ciphertext data according to the first random number to obtain the final service data to be selected.
In some embodiments, the number of bits of the first random number may be equal to the number of bits of the service data. Thus, in step S39, the ciphertext data may be decrypted based on the first random number having the same number of bits as the service data.
In some embodiments, the number of bits of the first random number may be equal to a preset safety threshold. Thus, the ciphertext data may be decrypted in step S39 according to the first random number having the number of bits equal to the security threshold.
In some embodiments, the number of bits of the traffic data may be greater than the safety threshold. The number of bits of the first random number may be equal to the safety threshold. The receiving party may generate a second random number from the first random number; ciphertext data located at the target position in the plurality of ciphertext data may be decrypted according to the second random number. The number of bits of the second random number may be equal to the number of bits of the service data. Thus, the ciphertext data may be decrypted in step S39 according to the second random number having the bit number greater than the security threshold. For the description of the second random number, reference may be made to the description of the fourth random number in the embodiment corresponding to fig. 2.
In the data transmission method, the sender and the receiver in the embodiments of the present description can implement the inadvertent transmission. On one hand, the business data held by the sender only needs to be encrypted once, so that the calculation amount is reduced, and the efficiency is improved; on the other hand, only the sender and the receiver need to interact in the data transmission stage of the accidental transmission without the participation of a third party, thereby avoiding the transmission failure problem caused by the communication failure of the third party and improving the robustness.
The present specification also provides another embodiment of a data transmission method. This embodiment takes a third party as an execution subject.
Referring to fig. 5, the embodiment may include the following steps.
Step S41: and generating a random number according to the initial position and a first random seed appointed with the sender.
The initial position may be obtained in the following manner: generating an initial position according to a second random seed appointed by a receiver; or; randomly generating an initial position; alternatively, an initial position sent by the receiving party is received.
For the description of the random number, reference may be made to the description of the second random number in the embodiment corresponding to fig. 2.
Step S43: and sending the random number to a receiving party.
In some embodiments, the number of bits of the random number may be equal to the number of bits of the traffic data; or it may also be equal to a preset safety threshold.
In the data transmission method, the sender and the receiver in the embodiments of the present description can implement the inadvertent transmission. On one hand, the business data held by the sender only needs to be encrypted once, so that the calculation amount is reduced, and the efficiency is improved; on the other hand, only the sender and the receiver need to interact in the data transmission stage of the accidental transmission without the participation of a third party, thereby avoiding the transmission failure problem caused by the communication failure of the third party and improving the robustness.
The present specification also provides an embodiment of a data transmission apparatus, which is applied to a sender holding multiple service data. Referring to fig. 6, the apparatus may include the following elements.
A generating unit 51 for generating a plurality of first random numbers from the random seed;
a receiving unit 53, configured to receive an offset sent by a receiving party; the offset is calculated according to a target position and an initial position, the target position is the position of the service data to be selected by the receiver finally in the plurality of service data, and the initial position is the position of the service data to be selected by the receiver initially in the plurality of service data;
an encrypting unit 55, configured to encrypt the plurality of service data according to the plurality of first random numbers and the offset;
a transmitting unit 57, configured to transmit the plurality of encrypted ciphertext data to the receiving side.
The present specification also provides an embodiment of a data transmission apparatus, which is applied to a receiving party. Referring to fig. 7, the apparatus may include the following elements.
A first receiving unit 61, configured to receive a first random number sent by a third party;
a calculation unit 63 for calculating an offset amount from the target position and the initial position; the target position is the position of the service data which is finally selected by the receiver in the plurality of service data held by the sender, and the initial position is the position of the service data which is initially selected by the receiver in the plurality of service data;
a sending unit 65, configured to send the offset to the sender, so that the sender encrypts multiple service data of the sender;
a second receiving unit 67, configured to receive a plurality of encrypted ciphertext data sent by the sending party;
a decryption unit 69, configured to decrypt, according to the first random number, ciphertext data located at the target position in the plurality of ciphertext data, to obtain final service data to be selected.
The present specification also provides an embodiment of a data transmission apparatus, which is applied to a third party. Referring to fig. 8, the apparatus may include the following elements.
A generating unit 71, configured to generate a random number according to the initial position and a first random seed agreed with the sender; the initial position is the position of the service data initially selected by the receiver in the plurality of service data held by the sender;
a sending unit 73, configured to send the random number to a receiving side.
An embodiment of an electronic device of the present description is described below. Fig. 9 is a schematic diagram of a hardware structure of an electronic device in this embodiment. As shown in fig. 9, the electronic device may include one or more processors (only one of which is shown), memory, and a transmission module. Of course, it is understood by those skilled in the art that the hardware structure shown in fig. 9 is only an illustration, and does not limit the hardware structure of the electronic device. In practice the electronic device may also comprise more or fewer component elements than shown in fig. 9; or have a different configuration than that shown in fig. 9.
The memory may comprise high speed random access memory; alternatively, non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory may also be included. Of course, the memory may also comprise a remotely located network memory. The remotely located network storage may be connected to the electronic device through a network such as the internet, an intranet, a local area network, a mobile communications network, or the like. The memory may be used for storing program instructions or modules of application software, such as the program instructions or modules of the embodiment corresponding to fig. 3 in this specification; and/or, the program instructions or modules of the embodiments corresponding to fig. 4 in this specification; and/or program instructions or modules of the embodiments corresponding to fig. 5 in this specification.
The processor may be implemented in any suitable way. For example, the processor may take the form of, for example, a microprocessor or processor and a computer-readable medium that stores computer-readable program code (e.g., software or firmware) executable by the (micro) processor, logic gates, switches, an Application Specific Integrated Circuit (ASIC), a programmable logic controller, an embedded microcontroller, and so forth. The processor may read and execute the program instructions or modules in the memory.
The transmission module may be used for data transmission via a network, for example via a network such as the internet, an intranet, a local area network, a mobile communication network, etc.
It should be noted that, in the present specification, each embodiment is described in a progressive manner, and the same or similar parts in each embodiment may be referred to each other, and each embodiment focuses on differences from other embodiments. In particular, as for the device embodiment and the electronic apparatus embodiment, since they are substantially similar to the method embodiment, the description is relatively simple, and the relevant points can be referred to the partial description of the method embodiment. In addition, it is understood that one skilled in the art, after reading this specification document, may conceive of any combination of some or all of the embodiments listed in this specification without the need for inventive faculty, which combinations are also within the scope of the disclosure and protection of this specification.
In the 90 s of the 20 th century, improvements in a technology could clearly distinguish between improvements in hardware (e.g., improvements in circuit structures such as diodes, transistors, switches, etc.) and improvements in software (improvements in process flow). However, as technology advances, many of today's process flow improvements have been seen as direct improvements in hardware circuit architecture. Designers almost always obtain the corresponding hardware circuit structure by programming an improved method flow into the hardware circuit. Thus, it cannot be said that an improvement in the process flow cannot be realized by hardware physical modules. For example, a Programmable Logic Device (PLD), such as a Field Programmable Gate Array (FPGA), is an integrated circuit whose Logic functions are determined by programming the Device by a user. A digital system is "integrated" on a PLD by the designer's own programming without requiring the chip manufacturer to design and fabricate application-specific integrated circuit chips. Furthermore, nowadays, instead of manually making an integrated Circuit chip, such Programming is often implemented by "logic compiler" software, which is similar to a software compiler used in program development and writing, but the original code before compiling is also written by a specific Programming Language, which is called Hardware Description Language (HDL), and HDL is not only one but many, such as abel (advanced Boolean Expression Language), ahdl (alternate Language Description Language), traffic, pl (core unified Programming Language), HDCal, JHDL (Java Hardware Description Language), langue, Lola, HDL, laspam, hardsradware (Hardware Description Language), vhjhd (Hardware Description Language), and vhigh-Language, which are currently used in most popular applications. It will also be apparent to those skilled in the art that hardware circuitry that implements the logical method flows can be readily obtained by merely slightly programming the method flows into an integrated circuit using the hardware description languages described above.
The systems, devices, modules or units illustrated in the above embodiments may be implemented by a computer chip or an entity, or by a product with certain functions. One typical implementation device is a computer. In particular, the computer may be, for example, a personal computer, a laptop computer, a cellular telephone, a camera phone, a smartphone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.
From the above description of the embodiments, it is clear to those skilled in the art that the present specification can be implemented by software plus a necessary general hardware platform. Based on such understanding, the technical solutions of the present specification may be essentially or partially implemented in the form of software products, which may be stored in a storage medium, such as ROM/RAM, magnetic disk, optical disk, etc., and include instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute the methods described in the embodiments or some parts of the embodiments of the present specification.
The description is operational with numerous general purpose or special purpose computing system environments or configurations. For example: personal computers, server computers, hand-held or portable devices, tablet-type devices, multiprocessor systems, microprocessor-based systems, set top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, distributed computing environments that include any of the above systems or devices, and the like.
This description may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. The specification may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices.
While the specification has been described with examples, those skilled in the art will appreciate that there are numerous variations and permutations of the specification that do not depart from the spirit of the specification, and it is intended that the appended claims include such variations and modifications that do not depart from the spirit of the specification.

Claims (27)

1. A method of data transmission, comprising:
the sender generates a plurality of first random numbers according to the first random seeds;
the third party generates a second random number according to the first random seed and the initial position, and sends the second random number to the receiving party; the initial position is the position of the service data initially to be selected by the receiver in the plurality of service data held by the sender, and the second random number is equal to the first random number located at the initial position in the plurality of first random numbers;
the receiver receives the second random number, calculates an offset according to the target position and the initial position, and sends the offset to the sender; the target position is the position of the service data to be selected by the receiver in the service data;
the sender receives the offset, encrypts the plurality of service data according to the plurality of first random numbers and the offset, and sends a plurality of encrypted ciphertext data to the receiver;
and the receiver receives the plurality of ciphertext data, decrypts the ciphertext data positioned at the target position in the plurality of ciphertext data according to the second random number, and obtains the final service data to be selected.
2. The method of claim 1, wherein the number of bits of the first random number and the number of bits of the second random number are both equal to the number of bits of the traffic data.
3. The method of claim 1, the number of bits of the first random number and the number of bits of the second random number both equal a safety threshold.
4. The method of claim 1, wherein the number of bits of the service data is greater than a safety threshold, and the number of bits of the first random number and the number of bits of the second random number are both equal to the safety threshold; the method further comprises the following steps:
the sender generates a plurality of third random numbers according to the plurality of first random numbers, and the receiver generates a fourth random number according to the second random numbers; the number of bits of the third random number and the number of bits of the fourth random number are both equal to the number of bits of the service data, and the fourth random number is equal to a third random number located at the initial position among the plurality of third random numbers;
the encrypting the plurality of service data according to the plurality of first random numbers and the offset includes:
encrypting the plurality of service data according to the plurality of third random numbers and the offset;
the decrypting, according to the second random number, ciphertext data located at the target position from among the plurality of ciphertext data, includes:
and decrypting ciphertext data located at the target position in the plurality of ciphertext data according to the fourth random number.
5. The method of claim 1, further comprising:
the third party generates an initial position according to the second random seed, and the receiving party generates an initial position according to the second random seed; alternatively, the first and second electrodes may be,
a third party randomly generates and sends an initial position to a receiving party, and the receiving party receives the initial position; alternatively, the first and second electrodes may be,
the receiving party randomly generates and sends the initial position to the third party, and the third party receives the initial position.
6. The method of claim 1, the calculating an offset from the target position and the initial position, comprising:
calculating a difference value between a target position and an initial position, performing modular operation on the difference value and the quantity of the service data, and taking an operation result as an offset;
the encrypting the plurality of service data according to the plurality of first random numbers and the offset includes:
and respectively adding the position of each first random number in the plurality of first random numbers and the offset, respectively performing modulo operation on each addition result and the quantity of the service data, and respectively encrypting the service data by using the first random number positioned at each operation result in the plurality of first random numbers.
7. A data transmission method is applied to a sender holding a plurality of service data, and comprises the following steps:
generating a plurality of first random numbers according to the random seed;
receiving an offset sent by a receiving party; the offset is calculated according to a target position and an initial position, the target position is the position of the service data to be selected by the receiver finally in the plurality of service data, and the initial position is the position of the service data to be selected by the receiver initially in the plurality of service data;
encrypting the plurality of service data according to the plurality of first random numbers and the offset;
and sending the encrypted plurality of ciphertext data to a receiving party.
8. The method of claim 7, wherein a number of bits of the first random number is equal to a number of bits of the traffic data.
9. The method of claim 7, the first random number having a number of bits equal to a security threshold.
10. The method of claim 7, wherein the number of bits of the traffic data is greater than a safety threshold, and the number of bits of the first random number is equal to the safety threshold; the method further comprises the following steps:
generating a plurality of second random numbers according to the plurality of first random numbers; the bit number of the second random number is equal to the bit number of the service data;
the encrypting the plurality of service data according to the plurality of first random numbers and the offset includes:
and encrypting the plurality of service data according to the plurality of second random numbers and the offset.
11. The method of claim 7, the offset comprising: performing a modulo operation on a specific difference value and the number of the service data, wherein the specific difference value is a difference value between a target position and an initial position;
the encrypting the plurality of service data according to the plurality of first random numbers and the offset includes:
adding the offset to the position of each first random number in the plurality of first random numbers, respectively;
performing modular operation on each addition result and the number of the service data respectively;
and respectively encrypting the service data by using the first random number positioned at each operation result in the plurality of first random numbers.
12. A data transmission method is applied to a receiving party, and the method comprises the following steps:
receiving a first random number sent by a third party;
calculating an offset according to the target position and the initial position; the target position is the position of the service data which is finally selected by the receiver in the plurality of service data held by the sender, and the initial position is the position of the service data which is initially selected by the receiver in the plurality of service data;
sending the offset to a sender so that the sender encrypts a plurality of service data held by the sender;
receiving a plurality of encrypted ciphertext data sent by a sender;
and decrypting the ciphertext data positioned at the target position in the plurality of ciphertext data according to the first random number to obtain the final service data to be selected.
13. The method of claim 12, wherein a number of bits of the first random number is equal to a number of bits of the traffic data.
14. The method of claim 12, the first random number having a number of bits equal to a security threshold.
15. The method of claim 12, wherein the number of bits of the traffic data is greater than a safety threshold, and the number of bits of the first random number is equal to the safety threshold; the method further comprises the following steps:
generating a second random number according to the first random number; the bit number of the second random number is equal to the bit number of the service data;
the decrypting, according to the first random number, ciphertext data located at the target position from among the plurality of ciphertext data, includes:
and decrypting ciphertext data located at the target position in the plurality of ciphertext data according to the second random number.
16. The method of claim 12, the method further comprising:
generating an initial position according to the random seeds; alternatively, the first and second electrodes may be,
randomly generating an initial position; alternatively, the first and second electrodes may be,
and receiving an initial position sent by a third party.
17. The method of claim 12, said calculating an offset from the target position and the initial position, comprising:
calculating a difference between the target position and the initial position;
and performing modular operation on the difference and the quantity of the service data, and taking an operation result as an offset.
18. A data transmission method is applied to a third party, and comprises the following steps:
generating a random number according to the initial position and a first random seed appointed with a sender; the initial position is the position of the service data initially selected by the receiver in the plurality of service data held by the sender;
and sending the random number to a receiving party.
19. The method of claim 18, wherein the number of bits of the random number is equal to the number of bits of the traffic data.
20. The method of claim 18, the number of bits of the random number being equal to a security threshold.
21. The method of claim 18, the method further comprising:
generating an initial position according to a second random seed appointed by a receiver; or;
randomly generating an initial position; alternatively, the first and second electrodes may be,
and receiving the initial position sent by the receiving party.
22. A data transmission apparatus, applied to a sender holding a plurality of service data, the apparatus comprising:
a generating unit configured to generate a plurality of first random numbers according to the random seed;
a receiving unit, configured to receive an offset sent by a receiving party; the offset is calculated according to a target position and an initial position, the target position is the position of the service data to be selected by the receiver finally in the plurality of service data, and the initial position is the position of the service data to be selected by the receiver initially in the plurality of service data;
an encrypting unit, configured to encrypt the plurality of service data according to the plurality of first random numbers and the offset;
and the transmitting unit is used for transmitting the encrypted plurality of ciphertext data to the receiving party.
23. An electronic device, comprising:
a memory for storing computer instructions;
a processor for executing the computer instructions to carry out the method steps according to any one of claims 7 to 11.
24. A data transmission apparatus applied to a receiving side, the apparatus comprising:
the first receiving unit is used for receiving a first random number sent by a third party;
a calculation unit for calculating an offset amount based on the target position and the initial position; the target position is the position of the service data which is finally selected by the receiver in the plurality of service data held by the sender, and the initial position is the position of the service data which is initially selected by the receiver in the plurality of service data;
a sending unit, configured to send the offset to a sender, so that the sender encrypts multiple service data owned by the sender;
the second receiving unit is used for receiving a plurality of encrypted ciphertext data sent by the sending party;
and the decryption unit is used for decrypting the ciphertext data positioned at the target position in the plurality of ciphertext data according to the first random number to obtain the final service data to be selected.
25. An electronic device, comprising:
a memory for storing computer instructions;
a processor for executing the computer instructions to carry out the method steps according to any one of claims 12-17.
26. A data transmission apparatus for use with a third party, the apparatus comprising:
the generating unit is used for generating a random number according to the initial position and a first random seed appointed with a sender; the initial position is the position of the service data initially selected by the receiver in the plurality of service data held by the sender;
a sending unit, configured to send the random number to a receiving side.
27. An electronic device, comprising:
a memory for storing computer instructions;
a processor for executing the computer instructions to carry out the method steps according to any one of claims 18 to 21.
CN201910767410.1A 2019-08-20 2019-08-20 Data transmission method and device and electronic equipment Active CN110661618B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201910767410.1A CN110661618B (en) 2019-08-20 2019-08-20 Data transmission method and device and electronic equipment
PCT/CN2020/106300 WO2021031828A1 (en) 2019-08-20 2020-07-31 Data transmission method, device and electronic apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910767410.1A CN110661618B (en) 2019-08-20 2019-08-20 Data transmission method and device and electronic equipment

Publications (2)

Publication Number Publication Date
CN110661618A true CN110661618A (en) 2020-01-07
CN110661618B CN110661618B (en) 2021-04-27

Family

ID=69037597

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910767410.1A Active CN110661618B (en) 2019-08-20 2019-08-20 Data transmission method and device and electronic equipment

Country Status (1)

Country Link
CN (1) CN110661618B (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021031828A1 (en) * 2019-08-20 2021-02-25 创新先进技术有限公司 Data transmission method, device and electronic apparatus
CN112671802A (en) * 2021-01-12 2021-04-16 北京邮电大学 Data sharing method and system based on oblivious transmission protocol
CN112769786A (en) * 2020-12-29 2021-05-07 杭州趣链科技有限公司 Data transmission method and device based on oblivious transmission rule and computer equipment
CN114301591A (en) * 2021-12-28 2022-04-08 支付宝(杭州)信息技术有限公司 Method, device and system for executing careless transmission protocol
CN117579255A (en) * 2024-01-17 2024-02-20 同盾科技有限公司 Method and device for generating inadvertent transmission instance, electronic equipment and medium

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106656475A (en) * 2017-01-09 2017-05-10 李朋林 Novel symmetric key algorithm for high speed encryption
WO2017209816A1 (en) * 2016-03-11 2017-12-07 Microsoft Technology Licensing, Llc Data encryption techniques
CN108830096A (en) * 2018-06-21 2018-11-16 广州华多网络科技有限公司 Data processing method, device, electronic equipment and storage medium
CN108933650A (en) * 2018-06-28 2018-12-04 阿里巴巴集团控股有限公司 The method and device of data encrypting and deciphering
CN109840426A (en) * 2019-03-05 2019-06-04 深圳市汇顶科技股份有限公司 Encryption method, encryption device and electronic equipment
WO2019110380A1 (en) * 2017-12-04 2019-06-13 Koninklijke Philips N.V. Nodes and methods of operating the same
CN110019283A (en) * 2019-01-31 2019-07-16 阿里巴巴集团控股有限公司 Extreme value determines method and device, electronic equipment, storage medium

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017209816A1 (en) * 2016-03-11 2017-12-07 Microsoft Technology Licensing, Llc Data encryption techniques
CN106656475A (en) * 2017-01-09 2017-05-10 李朋林 Novel symmetric key algorithm for high speed encryption
WO2019110380A1 (en) * 2017-12-04 2019-06-13 Koninklijke Philips N.V. Nodes and methods of operating the same
CN108830096A (en) * 2018-06-21 2018-11-16 广州华多网络科技有限公司 Data processing method, device, electronic equipment and storage medium
CN108933650A (en) * 2018-06-28 2018-12-04 阿里巴巴集团控股有限公司 The method and device of data encrypting and deciphering
CN110019283A (en) * 2019-01-31 2019-07-16 阿里巴巴集团控股有限公司 Extreme value determines method and device, electronic equipment, storage medium
CN109840426A (en) * 2019-03-05 2019-06-04 深圳市汇顶科技股份有限公司 Encryption method, encryption device and electronic equipment

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021031828A1 (en) * 2019-08-20 2021-02-25 创新先进技术有限公司 Data transmission method, device and electronic apparatus
CN112769786A (en) * 2020-12-29 2021-05-07 杭州趣链科技有限公司 Data transmission method and device based on oblivious transmission rule and computer equipment
CN112671802A (en) * 2021-01-12 2021-04-16 北京邮电大学 Data sharing method and system based on oblivious transmission protocol
CN114301591A (en) * 2021-12-28 2022-04-08 支付宝(杭州)信息技术有限公司 Method, device and system for executing careless transmission protocol
CN117579255A (en) * 2024-01-17 2024-02-20 同盾科技有限公司 Method and device for generating inadvertent transmission instance, electronic equipment and medium
CN117579255B (en) * 2024-01-17 2024-03-29 同盾科技有限公司 Method and device for generating inadvertent transmission instance, electronic equipment and medium

Also Published As

Publication number Publication date
CN110661618B (en) 2021-04-27

Similar Documents

Publication Publication Date Title
CN110661618B (en) Data transmission method and device and electronic equipment
TWI728639B (en) Data processing method, device and electronic equipment
CN110580409B (en) Model parameter determining method and device and electronic equipment
TWI740399B (en) Data processing method, device and electronic equipment
US9912479B1 (en) Key encapsulation mechanisms
CN110650119B (en) Data transmission method and device and electronic equipment
CN110569227B (en) Model parameter determination method and device and electronic equipment
US20090220083A1 (en) Stream cipher using multiplication over a finite field of even characteristic
US10454681B1 (en) Multi-use key encapsulation processes
CN110391895B (en) Data preprocessing method, ciphertext data acquisition method, device and electronic equipment
CN112287377A (en) Model training method based on federal learning, computer equipment and storage medium
AU2012234508A1 (en) Enabling a software application to be executed on a hardware device
CN108833095B (en) Behavior verification method, node, system and electronic equipment in block chain
CN112906037A (en) Communication encryption system, method and device
CN111008325B (en) Data query method, device, electronic equipment and system
CN114175572A (en) System and method for performing equality and subordination operations on encrypted data using quasigroup operations
CN108667598B (en) Device and method for realizing secure key exchange and secure key exchange method
CN111193741B (en) Information sending method, information obtaining method, device and equipment
CN110730167B (en) Data sending method, data query method, device, electronic equipment and system
CN111046408A (en) Judgment result processing method, query method, device, electronic equipment and system
CN116861477A (en) Data processing method, system, terminal and storage medium based on privacy protection
CN114726511A (en) Data processing method and device
US11101824B2 (en) Encryption device and decryption device, and operation method thereof
CN113645022A (en) Method and device for determining privacy set intersection, electronic equipment and storage medium
EP4022837A1 (en) Multi-party cryptographic systems and methods

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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20201012

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant after: Innovative advanced technology Co.,Ltd.

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant before: Advanced innovation technology Co.,Ltd.

Effective date of registration: 20201012

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant after: Advanced innovation technology Co.,Ltd.

Address before: Greater Cayman, British Cayman Islands

Applicant before: Alibaba Group Holding Ltd.

REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40028289

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant