Patent ID: 7886162

Claim:
A computer-performed method of supporting program code overlays in a data processing system, comprising: executing a first application in the data processing system, wherein the first application is associated with an encryption key and wherein executing the first application includes encrypting input data for a second application using the encryption key, and writing the encrypted input data to data storage in the data processing system; decrypting, using initialization hardware, an encrypted copy of an operating kernel into the data storage; executing the operating kernel, wherein the operating kernel decrypts the second application into the data storage; transferring control of the data processing system to the second application from the operating kernel; deleting one or more cryptographic secrets prior to transferring control of the data processing system to the second application; executing the decrypted second application in the data processing system, wherein the second application is associated with a decryption key and wherein executing the second application includes reading the encrypted input data from the data storage; decrypting the encrypted input data; and performing additional computation on the decrypted input data.