An apparatus to provide secure access comprising: a computer-readable storage; a first processor element coupled to the computer-readable storage; and first logic to: receive a one-time password, OTP, routine (370, 375) from a computing device; store the OTP routine within a first secure enclave defined by the first processor element within the storage; obtain a first measure of the contents of the first secure enclave with the OTP routine stored therein; transmit the measure to the computing device; receive an OTP seed; derive a sealing key from at least the first measure; store the OTP seed within the first secure enclave; use the sealing key to encrypt the OTP seed following storage of the OTP seed within the first secure enclave; store the encrypted OTP seed and OTP routine within the storage but outside the first secure enclave; uninstantiate the first secure enclave; discard the sealing key; upon execution of the OTP routine by the first processor element instantiate a second secure enclave by the first processor element within the storage, wherein the second secure enclave can be a re-instantiation of the first secure enclave; store and execute the OTP routine within the second secure enclave; obtain a second measure of the contents of the second enclave with the OTP routine stored therein and with the OTP seed not stored therein, wherein the second measure can be a re-derivation of the first measure; regenerate the sealing key from at least the second measure; store the OTP seed within the second secure enclave; use the sealing key to decrypt the OTP seed to obtain a seed value following storage of the OTP seed within the second secure enclave; obtain a variable value from a counter element; and use the variable value and the seed value to generate an OTP. a computer-readable storage; a first processor element coupled to the computer-readable storage; and first logic to: receive a one-time password, OTP, routine (370, 375) from a computing device; store the OTP routine within a first secure enclave defined by the first processor element within the storage; obtain a first measure of the contents of the first secure enclave with the OTP routine stored therein; transmit the measure to the computing device; receive an OTP seed; derive a sealing key from at least the first measure; store the OTP seed within the first secure enclave; use the sealing key to encrypt the OTP seed following storage of the OTP seed within the first secure enclave; store the encrypted OTP seed and OTP routine within the storage but outside the first secure enclave; uninstantiate the first secure enclave; discard the sealing key; upon execution of the OTP routine by the first processor element instantiate a second secure enclave by the first processor element within the storage, wherein the second secure enclave can be a re-instantiation of the first secure enclave; store and execute the OTP routine within the second secure enclave; obtain a second measure of the contents of the second enclave with the OTP routine stored therein and with the OTP seed not stored therein, wherein the second measure can be a re-derivation of the first measure; regenerate the sealing key from at least the second measure; store the OTP seed within the second secure enclave; use the sealing key to decrypt the OTP seed to obtain a seed value following storage of the OTP seed within the second secure enclave; obtain a variable value from a counter element; and use the variable value and the seed value to generate an OTP. receive a one-time password, OTP, routine (370, 375) from a computing device; store the OTP routine within a first secure enclave defined by the first processor element within the storage; obtain a first measure of the contents of the first secure enclave with the OTP routine stored therein; transmit the measure to the computing device; receive an OTP seed; derive a sealing key from at least the first measure; store the OTP seed within the first secure enclave; use the sealing key to encrypt the OTP seed following storage of the OTP seed within the first secure enclave; store the encrypted OTP seed and OTP routine within the storage but outside the first secure enclave; uninstantiate the first secure enclave; discard the sealing key; upon execution of the OTP routine by the first processor element instantiate a second secure enclave by the first processor element within the storage, wherein the second secure enclave can be a re-instantiation of the first secure enclave; store and execute the OTP routine within the second secure enclave; obtain a second measure of the contents of the second enclave with the OTP routine stored therein and with the OTP seed not stored therein, wherein the second measure can be a re-derivation of the first measure; regenerate the sealing key from at least the second measure; store the OTP seed within the second secure enclave; use the sealing key to decrypt the OTP seed to obtain a seed value following storage of the OTP seed within the second secure enclave; obtain a variable value from a counter element; and use the variable value and the seed value to generate an OTP.