US 12,355,872 B2
Set of servers for “machine-to-machine” communications using public key infrastructure
John A. Nix, Evanston, IL (US)
Assigned to Network-1 Technologies, Inc., New York, NY (US)
Filed by Network-1 Technologies, Inc., New York, NY (US)
Filed on Feb. 6, 2024, as Appl. No. 18/433,664.
Application 18/433,664 is a continuation of application No. 17/249,242, filed on Feb. 24, 2021, granted, now 11,973,863.
Application 17/249,242 is a continuation of application No. 16/843,107, filed on Apr. 8, 2020, granted, now 11,283,603, issued on Mar. 22, 2022.
Application 16/843,107 is a continuation of application No. 15/972,914, filed on May 7, 2018, granted, now 10,652,017, issued on May 12, 2020.
Application 15/972,914 is a continuation of application No. 15/457,700, filed on Mar. 13, 2017, granted, now 9,998,281, issued on Jun. 12, 2018.
Application 15/457,700 is a continuation of application No. 14/789,255, filed on Jul. 1, 2015, granted, now 9,596,078, issued on Mar. 14, 2017.
Application 14/789,255 is a continuation of application No. 14/064,618, filed on Oct. 28, 2013, granted, now 9,118,464, issued on Aug. 25, 2015.
Prior Publication US 2024/0178996 A1, May 30, 2024
This patent is subject to a terminal disclaimer.
Int. Cl. H04L 9/08 (2006.01); G06F 21/35 (2013.01); G06F 21/44 (2013.01); H04J 11/00 (2006.01); H04L 9/00 (2022.01); H04L 9/14 (2006.01); H04L 9/30 (2006.01); H04L 9/32 (2006.01); H04L 9/40 (2022.01); H04L 12/28 (2006.01); H04L 67/04 (2022.01); H04W 4/70 (2018.01); H04W 8/08 (2009.01); H04W 12/02 (2009.01); H04W 12/033 (2021.01); H04W 12/04 (2021.01); H04W 12/06 (2021.01); H04W 12/069 (2021.01); H04W 12/40 (2021.01); H04W 40/00 (2009.01); H04W 52/02 (2009.01); H04W 76/27 (2018.01); H04W 80/04 (2009.01); H04W 84/12 (2009.01); H04W 88/12 (2009.01)
CPC H04L 9/0861 (2013.01) [G06F 21/35 (2013.01); G06F 21/445 (2013.01); H04J 11/00 (2013.01); H04L 9/006 (2013.01); H04L 9/0816 (2013.01); H04L 9/0841 (2013.01); H04L 9/085 (2013.01); H04L 9/088 (2013.01); H04L 9/0894 (2013.01); H04L 9/14 (2013.01); H04L 9/30 (2013.01); H04L 9/3066 (2013.01); H04L 9/32 (2013.01); H04L 9/321 (2013.01); H04L 9/3239 (2013.01); H04L 9/3247 (2013.01); H04L 9/3249 (2013.01); H04L 9/3263 (2013.01); H04L 12/2854 (2013.01); H04L 63/0272 (2013.01); H04L 63/0435 (2013.01); H04L 63/0442 (2013.01); H04L 63/045 (2013.01); H04L 63/061 (2013.01); H04L 63/0807 (2013.01); H04L 63/123 (2013.01); H04L 63/166 (2013.01); H04L 67/04 (2013.01); H04W 4/70 (2018.02); H04W 8/082 (2013.01); H04W 12/02 (2013.01); H04W 12/033 (2021.01); H04W 12/04 (2013.01); H04W 12/06 (2013.01); H04W 12/069 (2021.01); H04W 12/40 (2021.01); H04W 40/005 (2013.01); H04W 52/0216 (2013.01); H04W 52/0235 (2013.01); H04W 52/0277 (2013.01); H04W 76/27 (2018.02); H04W 80/04 (2013.01); G06F 2221/2105 (2013.01); G06F 2221/2107 (2013.01); G06F 2221/2115 (2013.01); H04L 63/0464 (2013.01); H04L 2209/24 (2013.01); H04L 2209/72 (2013.01); H04L 2209/805 (2013.01); H04W 84/12 (2013.01); H04W 88/12 (2013.01); Y02D 30/70 (2020.08)] 9 Claims
OG exemplary drawing
 
1. A system comprising:
one or more processors; and
a non-transitory computer-readable memory operatively connected to the one or more processors, the non-transitory computer-readable memory having stored thereon machine readable instructions that, when executed by the one or more processors, cause the one or more processors to perform steps of:
a) storing (i) a key derivation function, wherein the key derivation function uses an elliptic curve Diffie-Hellman (ECDH) algorithm, and (ii) a symmetric ciphering algorithm;
b) deriving a server private key and a first server public key using cryptographic parameters, the server private key and first server public key associated with a server including the one or more processors and the non-transitory computer-readable memory;
c) receiving a message from a user module, wherein the message includes (i) a module public key, and (ii) the cryptographic parameters for the module public key, wherein the cryptographic parameters include an elliptic curve;
d) deriving a shared symmetric key using the key derivation function which utilizes:
(i) the first server public key and the module public key, and
(ii) a key exchange for the ECDH algorithm including
(1) the server private key and
(2) the cryptographic parameters;
e) encrypting by the server utilizing the shared symmetric key and the symmetric ciphering algorithm:
(i) a module instruction which includes a second server public key, and
(ii) a server digital signature generated by the server,
to generate server encrypted data; and
f) sending a response including the server encrypted data to the user module,
wherein the server encrypted data is decrypted by the user module using the shared symmetric key derived by the user module to provide the second server public key and the server digital signature generated by the server, and
wherein the user module uses the server digital signature generated by the server to verify an identity of the server.