A secure system for executing program code in an insecure environment
while making it impossible, or at least impractical, to determine how to
copy the program code and associated data is provided. A program memory
contains encrypted program data and security circuitry contained within
an integrated circuit is provided for decrypting the program data as it
is needed by a processor. A portion of the processing steps which would
be done by the processor in an insecure system is performed in this
secure system within the secure circuitry using portions of the decrypted
program data which are not provided to the processor. Program data is
parsed it out based on a proper request to the security chip from the
processor. A key value stored in volatile memory is used in the
decrypting process and the volatile memory is positioned on the
integrated circuit such that its contents are lost before a chip peel
provides access to the volatile memory.