Timelocked 2FA

The Script requires two keys before the set expiry date and only one key after the expiry date.
If one of the keys is yours and the other belongs to a 2FA (2FA stands for two-factor authentication) service provider, the funds can be accessed after the expiry date even if the 2FA service provider has disappeared.

scriptPubKey:
IF <service public key> CHECKSIGVERIFY
ELSE <expiry time> CHECKLOCKTIMEVERIFY DROP
ENDIF
<user public key> CHECKSIG

scriptSig (before expiry): <user signature> <service signature> TRUE
scriptSig (after expiry): <user signature> FALSE

Example:

Expiry: 2020-11-13 17:15:00 UTC

Escrow Service (Compressed) Public Key: 02259B57015E60DE464E1D83C375BDD01D272290C51CEDE0B794301DE1B7770C7B

User (Compressed) Public Key: 023927B837A922696836E26399F759965328437F93AAFAF3E02767D22860C0FBA7

Timelocked 2FA Address: 3NSn5VE22WEMgyxqyojW9mjxhSV6q1sNyC