1. A method for providing a secure execution environment for multiple instances of separate program code or data, comprising: offloading multiple instances of separate code or data from a host processor to a secure asset management unit (SAMU) in an encrypted format for authenticating and for maintaining confidentiality of the multiple instances of separate code or data.