IP Library › Granted Patent US 11,791,997
Granted Patent B2
US 11,791,997 · App. 17/239,237 · Granted Oct 17, 2023

Method and apparatus for generating secret key based on neural network synchronization

Inventors: Nam-Su Jho (Daejeon, KR); Juyoung Kim (Daejeon, KR); Taek-Young Youn (Daejeon, KR); Ku Young Chang (Daejeon, KR)
Assignee: Electronics and Telecommunications Research Institute
H04L9/0869G06N3/04
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,791,997
App. No.
17/239,237
Granted
Oct 17, 2023
Kind
B2
Abstract

A method and an apparatus for generating a secret key for encrypted communication using a synchronized neural network, which includes: generating initial codewords based on a bit string of weight values of the synchronized neural network and transmitting a first partial codeword of the initial codewords to a device of another party; receiving a second partial codeword generated by the device of the other party and combining final codewords based on the second partial codeword received from the device of the party and the bit string of the weight values; performing an error correction on the combined final codewords and transmitting first restoration success information according to the error correction to the device of the other party; and receiving second restoration success information from the device of the other party and generating the secret key based on the restoration success information of the device of the other party, are provided.

Claims (66)

1. A method for generating a secret key for encrypted communication using a synchronized neural network, the method comprising:

generating initial codewords based on a bit string of weight values of the synchronized neural network and transmitting a first partial codeword of the initial codewords to a device of another party;

receiving second partial codewords generated by the device of the other party and generating final codewords by combining the second partial codeword received from the device of the other party with the bit string of the weight values;

performing an error correction on the final codewords and transmitting first restoration success information according to the error correction to the device of the other party; and

receiving second restoration success information from the device of the other party and generating the secret key based on the second restoration success information.

2. The method of claim 1 ,

wherein the generating initial codewords based on a bit string of weight values of the synchronized neural network and transmitting a first partial codeword of the initial codewords to a device of another party comprises:

dividing the bit string into a plurality of blocks; and

generating the initial codewords for a part of the plurality of blocks,

wherein each of the plurality of blocks has a k-bit length.

3. The method of claim 2 ,

wherein when a length of each of the initial codewords is n, a length of the first partial codeword is (n−k)-bit.

4. The method of claim 2 ,

wherein the generating the initial codewords for a part of the plurality of blocks comprises

generating the initial codewords for a half of the plurality of blocks, and

the combining final codewords based on the second partial codeword received from the device of the other party and the bit string of the weight values comprises

combining the final codewords based on another half of the bit string corresponding to another half of the plurality of blocks and the second partial codeword of second codewords generated by the device of the other party based on a bit string of weight values updated by the other party.

5. The method of claim 3 ,

wherein the receiving a second partial codeword generated by the device of the other party and combining final codewords based on the second partial codeword received from the device of the other party and the bit string of the weight values comprises

receiving M/(2k) second partial codewords of (n−k)-bit length from the device of the other party when a length of the weight values is M-bit and the M is a multiple of 2.

6. The method of claim 5 ,

wherein the receiving a second partial codeword generated by the device of the other party and combining final codewords based on the second partial codeword received from the device of the other party and the bit string of the weight values further comprises

determining one of the final codewords by combining the second partial codeword of the (n−k)-bit length and one block corresponding to the weight values of k-bit length.

7. The method of claim 1 ,

wherein the receiving second restoration success information from the device of the other party and generating the secret key based on the second restoration success information comprises:

determining a block for which restoration has failed among the plurality of blocks based on the second restoration success information; and

restoring bit information from remaining blocks except for the block for which the restoration has failed among the plurality of blocks.

8. The method of claim 7 ,

wherein the receiving second restoration success information from the device of the other party and generating the secret key based on the restoration success information further comprises:

generating a seed based on the restored bit information and generating the secret key by inputting the seed to a hash function.

9. An apparatus for generating a secret key for encrypted communication using a synchronized neural network, the apparatus comprising:

a processor, a memory, and a communication device, wherein the processor coupled to the communication device executes a program stored in the memory to perform:

generating initial codewords based on a bit string of weight values of the synchronized neural network and transmitting a first partial codeword of the initial codewords to a device of another party through the communication device;

receiving a second partial codeword generated by the device of the other party through the communication device and generating final codewords by combining the second partial codeword received from the device of the other party with a remaining bit string of the weight values which is not used to generate the initial codewords;

performing an error correction on the final codewords and transmitting first restoration success information according to the error correction to the device of the other party through the communication device; and

receiving second restoration success information from the device of the other party through the communication device and generating the secret key based on the restoration success information of the device of the other party.

10. The apparatus of claim 9 ,

wherein when generating the initial codewords based on the bit string of the weight values of the synchronized neural network and transmitting the first partial codeword of the initial codewords to the device of the other party through the communication device, the processor performs:

dividing the bit string into a plurality of blocks; and

generating the initial codewords for a part of the plurality of blocks,

wherein each of the plurality of blocks has a k-bit length.

11. The apparatus of claim 10 ,

wherein when a length of each of the initial codewords is n, a length of the first partial codeword is (n−k)-bit.

12. The apparatus of claim 10 ,

wherein when generating the initial codewords for the part of the plurality of blocks, the processor performs

generating the initial codewords for a half of the plurality of blocks, and

when combining final codewords based on the second partial codeword received from the device of the other party and the bit string of the weight values, the processor performs

combining the final codewords based on another half of the bit string corresponding to another half of the plurality of blocks and the second partial codeword of second codewords generated by the device of the other party based on a bit string of weight values updated by the other party.

13. The apparatus of claim 11 ,

wherein when receiving the second partial codeword generated by the device of the other party through the communication device and combining the final codewords based on the second partial codeword received from the device of the other party and the remaining bit string of the weight values which is not used to generate the initial codewords, the processor performs

receiving M/(2k) second partial codewords of (n−k)-bit length from the device of the other party through the communication device when a length of the weight values is M-bit and the M is a multiple of 2.

14. The apparatus of claim 13 ,

wherein when receiving the second partial codeword generated by the device of the other party through the communication device and combining the final codewords based on the second partial codeword received from the device of the other party and the remaining bit string of the weight values which is not used to generate the initial codewords, the processor executes the program to further perform

determining one of the final codewords by combining the second partial codeword of the (n−k)-bit length and one block corresponding to the weight values of k-bit length.

15. The apparatus of claim 9 ,

wherein when receiving the second restoration success information from the device of the other party through the communication device and generating the secret key based on the restoration success information of the device of the other party, the processor performs:

determining a block for which restoration has failed among the plurality of blocks based on the second restoration success information; and

restoring bit information from remaining blocks except for the block for which the restoration has failed among the plurality of blocks.

16. The apparatus of claim 15 ,

wherein when receiving the second restoration success information from the device of the other party through the communication device and generating the secret key based on the restoration success information of the device of the other party, the processor executes the program to further perform

generating a seed based on the restored bit information and generating the secret key by inputting the seed to a hash function.

17. An apparatus for generating a secret key for encrypted communication using a synchronized neural network, the apparatus comprising:

a processor, a memory, and a communication device, wherein the processor executes a program stored in the memory to perform:

generating initial codewords based on a bit string corresponding to weight values of the synchronized neural network;

receiving restoration success information according to an error correction from a device of another party through the communication device after the error correction of final codewords, wherein the device of the other party combines a partial codeword with a part of the initial codewords; and

generating the secret key based on the restoration success information.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 23, 2021
From: JHO, NAM-SU; KIM, JUYOUNG; YOUN, TAEK-YOUNG; CHANG, KU YOUNG
To: ELECTRONICS AND TELECOMMUNICATIONS RESEARCH INSTITUTE
Reel/Frame 056026/0388 →
Priority Claims (1)
KR 10-2020-0049508 · Apr 23, 2020 · national
Continuity (1)
Related Publication 20210336779A1 · Oct 28, 2021