A persistent lock, which stores its state (whether it’s locked or unlocked)
on-chain, so that the inner value can be accessed depending on
the current state of the lock.
To distinguish between legacy nonces and versioned nonces
we use a specific prefix individual for each version.
Serialized versioned nonce contains:
VERSIONED_MAGIC_PREFIX (4 bytes) || VERSION (1 byte) || NONCE_BYTES (27 bytes)
Currently supported versions:
- V1: SALT (4 bytes) || DEADLINE (8 bytes) || NONCE (15 random bytes)