US 12,124,594 B2
Enhanced security systems and methods using a hybrid security solution
Yutaka Nagao, San Jose, CA (US); Stephen G. Mitchell, Ben Lomond, CA (US); Vishisht Tiwari, Sunnyvale, CA (US); and Rohaan Advani, San Francisco, CA (US)
Filed by Intertrust Technologies Corporation, Milpitas, CA (US)
Filed on Jan. 6, 2023, as Appl. No. 18/094,179.
Application 18/094,179 is a continuation of application No. 17/196,743, filed on Mar. 9, 2021, granted, now 11,550,933.
Claims priority of provisional application 63/039,282, filed on Jun. 15, 2020.
Prior Publication US 2023/0153445 A1, May 18, 2023
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 21/60 (2013.01); H04L 9/08 (2006.01); H04L 9/32 (2006.01)
CPC G06F 21/602 (2013.01) [H04L 9/0825 (2013.01); H04L 9/0894 (2013.01); H04L 9/3247 (2013.01); H04L 2209/16 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method for performing cryptographic operations by an application executing on a device comprising a processor and a non-transitory computer-readable medium storing instructions that, when executed by the processor, cause the device to perform the method, the method comprising:
retrieving, by the application executing on the device, an encrypted wrapped private key;
sending, by the application to an operating system security service associated with the device, the encrypted wrapped private key for decryption;
receiving, by the application from the operating system security service, a wrapped private key, the wrapped private key being generated by the operating system security service using the encrypted wrapped private key;
sending, by the application to a software cryptographic service associated with the device, the wrapped private key for unwrapping;
sending, by the application to the software cryptographic service, a cryptographic operation request, the cryptographic operation request comprising first data to be operated on by the software cryptographic service; and
receiving, by the application from the software cryptographic service, second data, the second data being generated by the software cryptographic service using the first data and a private cryptographic key generated at least in part by decrypting the wrapped private key.