US 12,118,092 B2
Secure firmware interface
Eugene Khoruzhenko, Redmond, WA (US); and Philip B Gardner, Woodbury, MN (US)
Assigned to Absolute Software Corporation, Vancouver (CA)
Filed by Absolute Software Corporation, Vancouver (CA)
Filed on Aug. 16, 2023, as Appl. No. 18/234,536.
Application 18/234,536 is a continuation of application No. 17/949,290, filed on Sep. 21, 2022, granted, now 11,763,003.
Application 17/949,290 is a continuation of application No. 16/641,931, granted, now 11,455,394, issued on Sep. 27, 2022, previously published as PCT/CA2018/051064, filed on Sep. 4, 2018.
Claims priority of provisional application 62/554,811, filed on Sep. 6, 2017.
Prior Publication US 2024/0232365 A1, Jul. 11, 2024
Int. Cl. G06F 21/57 (2013.01); G06F 21/44 (2013.01); G06F 21/85 (2013.01); H04L 9/00 (2022.01); H04L 9/08 (2006.01); H04L 9/32 (2006.01)
CPC G06F 21/572 (2013.01) [G06F 21/44 (2013.01); G06F 21/85 (2013.01); H04L 9/006 (2013.01); H04L 9/0825 (2013.01); H04L 9/0869 (2013.01); H04L 9/3268 (2013.01); H04L 9/3271 (2013.01)] 7 Claims
OG exemplary drawing
 
1. A system for sending a command to a device, comprising:
at least one server;
the at least one server having a server processor and server memory connected to the server processor;
at least one device configured to be in communication with the at least on server, and
the at least one device having a device processor; and
device memory connected to the device processor;
the server memory comprising server instructions that when executed by the server processor cause the at least one server to send a signed server key to any one or more of the at least one device;
upon reboot of the at least one device a first time, the at least one device executes device instructions stored in the device memory which cause the device to verify the signed server key in a DXE (driver execution environment) of firmware in the at least one device's firmware and send a nonce to the at least one server, the nonce being encrypted using the signed server key;
upon receipt of the nonce, the at least one server sends a message to the at least one device that includes a first portion with a secure command and a second portion that is based on a hash of the nonce;
the at least one device configured to reboot a second time after receipt of the message and verify the message in the DXE of the at least one device's, firmware; and
execute the secure command on the at least one device.