US 12,135,817 B2
Using a secure enclave to satisfy retention and expungement requirements with respect to private data
Sergey Yekhanin, Redmond, WA (US); Joshua Stanley Allen, Bellevue, WA (US); Ankit Srivastava, Bellevue, WA (US); Ralph Kennedy Johnston, Jr., Renton, WA (US); and Janardhan Dattatreya Kulkarni, Seattle, WA (US)
Assigned to Microsoft Technology Licensing, LLC, Redmond, WA (US)
Filed by Microsoft Technology Licensing, LLC, Redmond, WA (US)
Filed on Oct. 20, 2022, as Appl. No. 17/970,148.
Application 17/970,148 is a division of application No. 15/931,020, filed on May 13, 2020, granted, now 11,507,687.
Prior Publication US 2024/0089100 A1, Mar. 14, 2024
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 21/62 (2013.01); G06F 21/60 (2013.01); G06F 21/78 (2013.01); G06F 21/86 (2013.01); H04L 9/08 (2006.01); H04L 9/32 (2006.01)
CPC G06F 21/6245 (2013.01) [G06F 21/602 (2013.01); G06F 21/78 (2013.01); G06F 21/86 (2013.01); H04L 9/0894 (2013.01); H04L 9/3247 (2013.01); G06F 2221/2101 (2013.01); G06F 2221/2149 (2013.01); H04L 2209/08 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method comprising:
receiving data, wherein the data comprises personal information of one or more individuals and is subject to privacy requirements;
loading code into a secure enclave, wherein the code includes aggregation code and noise code;
generating, by the secure enclave, an encryption key and a decryption key, wherein the decryption key is tied to the secure enclave and the code;
encrypting the data using the encryption key to generate encrypted data;
decrypting, by the secure enclave, a copy of the encrypted data using the decryption key to generate decrypted data;
adding, by executing the noise code, noise to the decrypted data;
generating, by executing the aggregation code, a report based on the decrypted data and the noise, wherein the report aggregates the decrypted data, satisfies a differential privacy guarantee based on the privacy requirements, and is subject to audit requirements; and
retaining the encrypted data for a period of time based on the audit requirements.