US 12,244,697 B2
System and method for identity-based key agreement for secure communication
Sanjay Deshpande, Pune (IN); and Anil Kumar Pradhan, Barihapur (IN)
Assigned to FORTYTWO42 LABS LLP, Pune (IN)
Appl. No. 17/926,500
Filed by FORTYTWO42 LABS LLP, Pune (IN)
PCT Filed Jul. 21, 2021, PCT No. PCT/IN2021/050708
§ 371(c)(1), (2) Date Nov. 18, 2022,
PCT Pub. No. WO2022/185328, PCT Pub. Date Sep. 9, 2022.
Claims priority of application No. 202121008721 (IN), filed on Mar. 2, 2021.
Prior Publication US 2023/0188330 A1, Jun. 15, 2023
Int. Cl. H04L 9/08 (2006.01); H04L 9/32 (2006.01)
CPC H04L 9/085 (2013.01) [H04L 9/0847 (2013.01); H04L 9/3215 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method for secure communication between two or more parties over a communication network, said method comprising steps of:
establishing secret information based on an identity of each of the two or more parties;
dividing the secret information into n shares;
determining a threshold number k, such that k shares are required to reconstruct the secret information, and n=2(k−1);
communicating over the communication network the threshold number of shares k;
communicating over the communication network the total number of shares n;
establishing an initial encryption/decryption key KF
communicating the key KF to the two or more parties from a method selected from communicating over a communication channel, communicating over an out of band communication channel, and by offline communication;
establishing, in a broadcast mode or a communication mode, a pre-shared information (PSI) at each of the two or more parties in the communication network to obtain a shared key by receiving an exchange key by a first party in the communication network from another party in the communication network to reconstruct the secret information from the shares and exchange key received;
generating a first random value for the first party;
generating a second random value for all other parties;
verifying the shared key by generating a first hash value by applying a hash function to a first set comprising the shared key and the first random value for the first party, communicating the first generated hash value and the first random value from the first party to every other party of the two or more parties in the communication network, generating second hash values by applying one or more hash functions to a second set comprising the shared key and the second random value from the other parties and comparing the first hash value with the second hash value; and
updating the pre-shared information in a static secret value mode or a dynamic secret value mode after each key agreement.