Patent ID: 8473754

Claim:
A secure software execution device that provides protection for both program instructions and data against unauthorized access and/or execution, comprising: CPU core circuitry on a semiconductor chip, the CPU core circuitry comprising a Harvard architecture type processor having physically separate information pathways and storage memories for instructions and data; encryption management unit (EMU) circuitry instantiated on the semiconductor chip, the EMU circuitry comprising circuitry for storing one or more encryption keys for encrypted instructions and circuitry for storing one or more encryption keys for encrypted data, the EMU circuitry configured having an information processing pathway specifically for data and an information processing pathway specifically for instructions that is separate and isolated from the information processing pathway for data, and the EMU circuitry being operable to maintain one or more associations between encryption keys used for instructions and encryption keys used for data accessed by the instructions and to accept encrypted instructions and encrypted data via separate isolated pathways from an off-chip source and to provide decrypted instructions and decrypted data via separate isolated pathways to the CPU core circuitry for execution based on one or more encryption keys; and a secure key management unit (SKU) circuitry instantiated on the semiconductor chip and isolated from direct access by the CPU core circuitry, said SKU configured to acquire credential information from one or more sources and, based on the credential information, identify or generate one or more encryption keys for provision to the EMU; wherein the CPU core circuitry does not have access to encryption key information generated by the SKU and wherein the EMU circuitry is configured to decrypt at least a portion of encrypted instructions or data that is associated with one or more encryption keys provided by the SKU.