Every confidential Liquid output has a rangeproof attached to it. The rangeproof is usually about 4 KB, which is quite large compared to other schemes like Bulletproofs. But that size comes with a benefit that’s mostly unused today. Or maybe it isn’t, and we’d never know.
You can embed a bit over 3 KB of your own data in a rangeproof, with no overhead. The message is XOR-folded into the proof at signing time, and rewinding it with the blinding key peels the message back out. The message field is 3200 bytes in total, but the first 64 are already spoken for. That’s where the receiver learns the asset of the funds, leaving roughly 3136 bytes to play with. Usually, only the sender and the receiver can rewind the proof, but the sender often uses an ephemeral key that gets discarded, so in practice only the receiver can. On top of that, anyone the receiver shares their view key with can read the message too.
There are a few ways to use this. Most notably, it could back up some of the data needed for a txmanifest, such as the state or instance files, plus a hash of the txmanifest itself.
There’s no requirement to structure the message at all, but one use case I think is worth considering is the same idea as NOSTR. In fact, I’ve built a Liquid-to-NOSTR bridge that republishes any valid NOSTR events it finds to configured relays, or acts as a relay itself.