The symmetric ratchet
Every message consumes one key from the sender's sending chain: a KDF turns the current chain key into a message key and also replaces the chain key itself, so each step forward is irreversible. The receiver runs the identical chain to reconstruct the message key. This is what delivers forward secrecy cheaply: a chain key leaked today cannot decrypt anything the chain produced before it.