A method of transferring secrets from a first cryptographic system installed on a computing device to a second cryptographic system installed on the computing device to enable the second cryptographic system to replace the first cryptographic system, where the first cryptographic system has an identity, and wherein a trusted party is trusted by the first cryptographic system at least and has a trusted party private key and a corresponding trusted party public key, the method comprising: the second cryptographic system providing a signature under the trusted party private key of the first cryptographic system identity and a second cryptographic system public key, the second cryptographic system having a corresponding second cryptographic system private key; the first cryptographic system confirming that the signature comprises the identity, and either: the first cryptographic system using a first cryptographic system private key and the corresponding second cryptographic system public key to establish a shared secret with the second cryptographic system; or the second cryptographic system using the second cryptographic system private key and a corresponding first cryptographic system public key to establish a shared secret with the first cryptographic system; and the first cryptographic system and the second cryptographic system using the shared secret to transfer one or more secrets from the first cryptographic system to the second cryptographic system, the one or more secrets being decrypted before transfer; wherein an application installed on the computing device initially uses the first cryptographic system to perform at least one secure operation using the one or more secrets, and wherein the method further comprises the second cryptographic system replacing the first cryptographic system in performing the at least one secure operation; and wherein the first and second cryptographic systems are white boxes in which keys and secrets are obfuscated. the second cryptographic system providing a signature under the trusted party private key of the first cryptographic system identity and a second cryptographic system public key, the second cryptographic system having a corresponding second cryptographic system private key; the first cryptographic system confirming that the signature comprises the identity, and either: the first cryptographic system using a first cryptographic system private key and the corresponding second cryptographic system public key to establish a shared secret with the second cryptographic system; or the second cryptographic system using the second cryptographic system private key and a corresponding first cryptographic system public key to establish a shared secret with the first cryptographic system; and the first cryptographic system using a first cryptographic system private key and the corresponding second cryptographic system public key to establish a shared secret with the second cryptographic system; or the second cryptographic system using the second cryptographic system private key and a corresponding first cryptographic system public key to establish a shared secret with the first cryptographic system; and the first cryptographic system and the second cryptographic system using the shared secret to transfer one or more secrets from the first cryptographic system to the second cryptographic system, the one or more secrets being decrypted before transfer; wherein an application installed on the computing device initially uses the first cryptographic system to perform at least one secure operation using the one or more secrets, and wherein the method further comprises the second cryptographic system replacing the first cryptographic system in performing the at least one secure operation; and wherein the first and second cryptographic systems are white boxes in which keys and secrets are obfuscated.