I'm a bit surprised by the success of the BRC-20 token protocol which is clogging the blockchain right now. BRC-20 seems to be a way to create and transfer fungible tokens storing a small JSON file in an Ordinal inscription.
That's how a BRC-20 inscription
looks like:
{
"p": "brc-20",
"op": "mint",
"tick": "soon",
"amt": "1000"
}
Most readers of this subforum will know that there are already dozens of protocols allowing tokens on Bitcoin, the oldest probably being EPOBC (2012). Most are now based on data storage via OP_RETURN. The most popular - until BRC20 emerged -
was were Omni (2013) and Counterparty (2014) which seem to be continuosly updated and improved. And there are advanced protocols with very efficient mechanisms like RGB and Taro (which can be used for much more things than tokens).
What I'm interested in is to know if BRC-20 has any advantage respect to the OP_RETURN based systems. Yes, a JSON file seems quite "elegant" or easy to create. But it's also terribly inefficient to store a dictionary of the needed data (i.e. token type, name, quantity of the transaction etc.) as a JSON text instead of storing only the values in an OP_RETURN string, for example using
Protocol Buffers. It may not be a big advantage (a dozen or two of bytes, perhaps) but technically you'll still
pay higher fees occupy more space with BRC-20 than even with the simplest OP_RETURN based approaches.
Someone knows if there's any advantage to use this method? My own interpretation is that it's simply popular "because Ordinals is popular". But is there more?
PS: I've made a small correction and it may be already answering my question: It's possible that while you occupy more space on the blockchain with BRC20, the witness discount is enough to counter any real space efficiency advantage and thus leading to equal or even less fees.