| CPC H04L 9/0866 (2013.01) [H04L 9/0825 (2013.01); H04L 9/3278 (2013.01)] | 20 Claims |

|
1. A computer implemented method for generating an encryption key, the method comprising:
generating, by a first device, a stream of random challenges;
sending, from the first device, the stream of random challenges to a plurality of other devices, each device of the plurality of other devices:
processing, by a physically unclonable function (PUF), the stream of random challenges to obtain pairs of responses, and
generating a first learning parity with noise (LPN) instance using a pre-stored public matrix, a partial encryption key generated by the device, and a first error matrix;
receiving, by the first device, first LPN instances from the plurality of other devices;
combining, by the first device, a plurality of the first LPN instances to provide combined first LPN instances;
computing an estimated combined error of PUFs included in the plurality of other devices; and
generating, by the first device, the encryption key, comprising computing a difference between the combined first LPN instances and the estimated combined error to recover a summation of each partial encryption key encoded in the combined first LPN instances.
|