As mentioned, special hardware is needed to realise this approach; it cannot be done in software alone. The key k has to be uploaded and stored in encrypted form, and it must be decrypted only in order to serve it to a running instance of p. While p is running, its memory and possibly its storage need to be protected from other programs running on the hardware.