US 12,326,823 B2
Application authentication and data encryption without stored pre-shared keys
Mark E. Marson, Carlsbad, CA (US); Scott Best, Palo Alto, CA (US); Winthrop Wu, Pleasanton, CA (US); Matthew Evan Orzen, San Francisco, CA (US); and Helena Handschuh, Palo Alto, CA (US)
Assigned to Cryptography Research, Inc., San Jose, CA (US)
Filed by Cryptography Research, Inc., San Jose, CA (US)
Filed on Jul. 22, 2020, as Appl. No. 16/935,925.
Claims priority of provisional application 62/888,903, filed on Aug. 19, 2019.
Prior Publication US 2021/0056053 A1, Feb. 25, 2021
Int. Cl. G06F 3/00 (2006.01); G06F 12/00 (2006.01); G06F 13/16 (2006.01); G06F 21/60 (2013.01); G06F 21/64 (2013.01); G06F 21/72 (2013.01)
CPC G06F 13/1668 (2013.01) [G06F 21/602 (2013.01); G06F 21/64 (2013.01); G06F 21/72 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A resource controller comprising:
a first interface to communicate with an application executing on a processor coupled to the resource controller;
a second interface to communicate with a system resource; and
a processing device coupled to the first interface and the second interface, wherein the processing device is to:
receive an application identifier (ID) from the application;
provide a current nonce to the application, wherein the current nonce is associated with the application ID;
receive a current key from the application, wherein the current key is generated by the application based on the current nonce and a set of program instructions of the application; and
provide the application access to the system resource responsive to determining that a hash of the current key received from the application equals a current tag, wherein the current tag was previously provided from the application to the resource controller.