1. A system for providing secure execution of an application comprising: at least one processor and a memory; at least one enclave, said enclave comprising a hardware-enforced protected region of an address space of the memory; and an emulator comprising code that is executable on the at least one processor, is loaded into an emulator enclave, and emulates the functions of the application.