1. A computer enabled method of performing a cryptographic process involving a key, comprising the acts of: providing a cryptographic process partitioned into at least first, second and third portions wherein the second portion operates on a result of the first portion, and the third portion operates on a result of the second portion; executing the first portion in a White Box first environment whereby a key for the cryptographic process is not stored in a memory associated with the White Box first environment; executing the second portion in a Black Box second environment whereby a key for the cryptographic process may be stored in a memory associated with the Black Box second environment; executing the third portion in the White Box first environment; and combining results of the first and second and third portions to provide an output of the cryptographic process, wherein the third portion is an identity or integrity verification function and verifies security of the second portion.