US 11,790,119 B2
Application integrity attestation
Hervé Sibert, Le Mans (FR); Eric D. Friedman, Berkeley, CA (US); Erik C. Neuenschwander, San Mateo, CA (US); Jerrold V. Hauck, Windermere, FL (US); Thomas P. Mensch, Sunnyvale, CA (US); Julien F. Freudiger, San Francisco, CA (US); and Alan W. Yu, Vancouver (CA)
Assigned to Apple Inc., Cupertino, CA (US)
Filed by Apple Inc., Cupertino, CA (US)
Filed on Nov. 13, 2019, as Appl. No. 16/683,233.
Claims priority of provisional application 62/768,540, filed on Nov. 16, 2018.
Prior Publication US 2020/0159966 A1, May 21, 2020
Int. Cl. G06F 21/64 (2013.01); H04L 9/14 (2006.01); H04L 9/32 (2006.01)
CPC G06F 21/64 (2013.01) [H04L 9/14 (2013.01); H04L 9/3236 (2013.01); H04L 9/3263 (2013.01); H04L 9/3271 (2013.01)] 17 Claims
OG exemplary drawing
 
1. A computing device, comprising:
a secure circuit configured to maintain a plurality of cryptographic keys of the computing device;
a processor;
memory having program instructions stored therein that are executable by the processor to cause the computing device to perform operations including:
receiving, from an executing application, a request for an attestation usable to confirm an integrity of the executing application;
instructing the secure circuit to use one of the plurality of cryptographic keys to supply the attestation for the executing application based on verification of the integrity of the executing application, wherein the verification includes performing a comparison of a signed hash value and a hash value generated from the executing application in response to the received request; and
causing provision of the attestation to a remote computing system in communication with the executing application.