Enforces a UTXO to remain unspendable until a certain block height is reached or a specific point in time has passed. Also known as CLTV, this op defines an absolute timelock mechanism; unlike checksequenceverify (csv), this enforces a condition where the UTXO is locked until a specified *absolute* block height or Unix timestamp. When the input item value is below 500000000, it represents a block height; otherwise, it represents a Unix timestamp. This allows for constructing contracts like payment channels for Lightning or atomic swaps, where conditions must be met after a certain period. For the operation to succeed, the value on the top of the stack must be less than or equal to the transaction's `nLockTime` field and greater than or equal to the current block height or timestamp.
OP_Code Walkthrough
Ensure a UTXO cannot be spent until an absolute block height or specific time
Pop top item (locktime value)
Determine if it's block height or Unix timestamp based on value
Compare to transaction's nLockTime
Verify transaction based on Boolean result (fail or continue)