A computer-implemented method for changing a value of a first shared encryption key shared by a first operating environment and a second computing environment to encrypt information therebetween, and a value of a second shared encryption key shared by the first and second operating environments (56, 62) and used for purposes of changing the value of the first shared encryption key, wherein the first and second operating environments (56, 62) include a basic input/output system and an operating system, the method comprising: requesting, by the first operating environment, a second computing environment to generate a new value for the first shared encryption key; using, by the second operating environment, the second shared encryption key to verify the first operating environment's request, wherein verifying the first operating environment's request comprises computing, by the second operating environment, a hash function-based message authentication code; in case of a successful verification of the first operating environment's request, generating, by the second operating environment, the new value for the first shared encryption key and generating a new value for the second shared encryption key; providing, by the second operating environment, the new value for the first shared encryption key and the new value for the second shared encryption key to the first computing environment; using, by the first operating environment, the second shared encryption key to verify the communication from the second operating environment containing the new values for the first and second shared encryption keys (K3, K4), wherein verifying the communication from the second operating environment comprises computing, by the first operating environment, a hash function-based message authentication code; and in case of a successful verification of the communication from the second operating environment, replacing, by the first operating environment, the old values for the first and second shared encryption keys (K3, K4) by the new values for the first and second shared encryption keys (K3, K4). requesting, by the first operating environment, a second computing environment to generate a new value for the first shared encryption key; using, by the second operating environment, the second shared encryption key to verify the first operating environment's request, wherein verifying the first operating environment's request comprises computing, by the second operating environment, a hash function-based message authentication code; in case of a successful verification of the first operating environment's request, generating, by the second operating environment, the new value for the first shared encryption key and generating a new value for the second shared encryption key; providing, by the second operating environment, the new value for the first shared encryption key and the new value for the second shared encryption key to the first computing environment; using, by the first operating environment, the second shared encryption key to verify the communication from the second operating environment containing the new values for the first and second shared encryption keys (K3, K4), wherein verifying the communication from the second operating environment comprises computing, by the first operating environment, a hash function-based message authentication code; and in case of a successful verification of the communication from the second operating environment, replacing, by the first operating environment, the old values for the first and second shared encryption keys (K3, K4) by the new values for the first and second shared encryption keys (K3, K4).