Abstract
The Bitcoin protocol allows to save arbitrary data on the blockchain through a special instruction of the scripting language, called OP_RETURN. A growing number of protocols exploit this feature to extend the range of applications of the Bitcoin blockchain beyond transfer of currency. A point of debate in the Bitcoin community is whether loading data through OP_RETURN can negatively affect the performance of the Bitcoin network with respect to its primary goal. This paper is an empirical study of the usage of OP_RETURN over the years. We identify several protocols based on OP_RETURN, which we classify by their application domain. We measure the evolution in time of the usage of each protocol, the distribution of OP_RETURN transactions by application domain, and their space consumption.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsNotes
- 1.
Source: coinmarketcap.com, accessed on February 28th, 2017.
- 2.
in-script/out-script are called scriptPubKey/scriptSig in the Bitcoin wiki.
- 3.
- 4.
- 5.
Regarding the use of OP_RETURN, the release notes of Bitcoin Core version 0.9.0 state that: “This change is not an endorsement of storing data in the blockchain.” At the same time, some Bitcoin explorers, (e.g. blockchain.info, blockexplorer.com, smartbit.com) allow to inspect data encoded in OP_RETURN scripts.
- 6.
Hereafter we aggregate all the protocols built upon Blockstore, by identifying them with Blockstore itself.
- 7.
To verify this conjecture we would need to compare the transaction identifiers of our empty transactions with the identifiers of [35], which are not available online.
- 8.
The release notes of Bitcoin Core version 0.9.0 state that: “Storing arbitrary data in the blockchain is still a bad idea; it is less costly and far more efficient to store non-currency data elsewhere.”.
References
Alternatives to opreturn. http://bitcoin.stackexchange.com/questions/37206/alternatives-to-op-return-to-store-data-in-bitcoin-blockchain. Accessed 15 Feb 2017
Bicoin scalability. https://en.bitcoin.it/wiki/Scalability_FAQ. Accessed 15 Dec 2016
Bitcoin core dev update 5 transaction fees embedded data. http://www.coindesk.com/bitcoin-core-dev-update-5-transaction-fees-embedded-data/. Accessed 15 Dec 2016
Bitcoin network survives surprise stress test. http://www.coindesk.com/bitcoin-network-survives-stress-test/. Accessed 15 Dec 2016
Bitcoin OPRETURN explorer. https://github.com/BitcoinOpReturn/. Accessed 15 Dec 2016
Bitcoin OP_RETURN wiki page. https://en.bitcoin.it/wiki/OP_RETURN. Accessed 15 Dec 2016
Bitcoin pull request 5075. https://github.com/bitcoin/bitcoin/pull/5075. Accessed 15 Dec 2016
Bitcoin pull request 5286. https://github.com/bitcoin/bitcoin/pull/5286. Accessed 15 Dec 2016
Bitcoin release 0.10.0. https://bitcoin.org/en/release/v0.10.0. Accessed 15 Dec 2016
Bitcoin release 0.11.0. https://bitcoin.org/en/release/v0.11.0. Accessed 15 Dec 2016
Bitcoin release 0.12.0. https://bitcoin.org/en/release/v0.12.0. Accessed 15 Dec 2016
Bitcoin release 0.9.0. https://bitcoin.org/en/release/v0.9.0. Accessed 15 Dec 2016
Blockstore website. https://github.com/blockstack/blockchain-id/wiki/Blockstore. Accessed 15 Dec 2016
Chainpoint website. http://www.chainpoint.org/. Accessed 15 Dec 2016
Colu protocol, torrents. https://github.com/Colored-Coins/Colored-Coins-Protocol-Specification/wiki/Metadata#torrents. Accessed 15 Dec 2016
Colu website. https://www.colu.com/. Accessed 15 Dec 2016
Counterparty open letter and plea to the Bitcoin core development team. http://counterparty.io/news/an-open-letter-and-plea-to-the-bitcoin-core-development-team/. Accessed 15 Dec 2016
Developers battle over bitcoin block chain. http://www.coindesk.com/developers-battle-bitcoin-block-chain/. Accessed 15 Dec 2016
Diploma website. http://diploma.report/. Accessed 15 Dec 2016
Eternity wall website. https://eternitywall.it/. Accessed 15 Dec 2016
Factom website. https://www.factom.com/. Accessed 15 Dec 2016
Kaiko data store. https://www.kaiko.com/. Accessed 15 Dec 2016
La preuve website. http://lapreuve.eu/explication.html. Accessed 15 Dec 2016
Omni website. http://www.omnilayer.org/. Accessed 15 Dec 2016
Open assets website. https://github.com/OpenAssets/. Accessed 15 Dec 2016
opreturn.org. http://opreturn.org/. Accessed 15 Dec 2016
Pay-to-contract and sign-to-contract. https://bitcointalk.org/index.php?topic=915828.msg10056796#msg10056796. Accessed 15 Feb 2017
Peter Todd delayed txo commitments. https://petertodd.org/2016/delayed-txo-commitments. Accessed 15 Dec 2016
Proof of existence website. https://proofofexistence.com/. Accessed 15 Dec 2016
Scalability debate ever end. https://www.cryptocoinsnews.com/will-bitcoin-scalability-debate-ever-end/. Accessed 30 Nov 2016
Scaling debate in Reddit. http://www.coindesk.com/viabtc-ceo-sparks-bitcoin-scaling-debate-reddit-ama/. Accessed 15 Dec 2016
Smartbit OP_RETURN statistics. https://www.smartbit.com.au/op-returns. Accessed 15 Dec 2016
Stampery website. https://stampery.com/. Accessed 15 Dec 2016
Ali, M., Nelson, J., Shea, R., Freedman, M.J.: Blockstack: a global naming and storage system secured by blockchains. In: USENIX Annual Technical Conference (2016)
Baqer, K., Huang, D.Y., McCoy, D., Weaver, N.: Stressing out: Bitcoin “stress testing”. In: Clark, J., Meiklejohn, S., Ryan, P.Y.A., Wallach, D., Brenner, M., Rohloff, K. (eds.) FC 2016. LNCS, vol. 9604, pp. 3–18. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-53357-4_1
Dermody, R., Krellenstein, A., Slama, O., Wagner, E.: Counterparty: protocol specification (2014). http://counterparty.io/docs/protocol_specification/. Accessed 15 Dec 2016
Garay, J., Kiayias, A., Leonardos, N.: The Bitcoin backbone protocol: analysis and applications. In: Oswald, E., Fischlin, M. (eds.) EUROCRYPT 2015. LNCS, vol. 9057, pp. 281–310. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-46803-6_10
Lischke, M., Fabian, B.: Analyzing the Bitcoin network: the first four years. Future Internet 8(1), 7 (2016)
Möser, M., Böhme, R.: Trends, tips, tolls: a longitudinal study of Bitcoin transaction fees. In: Brenner, M., Christin, N., Johnson, B., Rohloff, K. (eds.) FC 2015. LNCS, vol. 8976, pp. 19–33. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-48051-9_2
Nakamoto, S.: Bitcoin: a peer-to-peer electronic cash system (2008). https://bitcoin.org/bitcoin.pdf
Reid, F., Harrigan, M.: An analysis of anonymity in the Bitcoin system. In: Altshuler, Y., Elovici, Y., Cremers, A., Aharony, N., Pentland, A. (eds.) Security and Privacy in Social Networks, pp. 197–223. Springer, New York (2013). https://doi.org/10.1007/978-1-4614-4139-7_10
Ron, D., Shamir, A.: Quantitative analysis of the full Bitcoin transaction graph. In: Sadeghi, A.-R. (ed.) FC 2013. LNCS, vol. 7859, pp. 6–24. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-39884-1_2
Acknowledgments
The authors thank the anonymous reviewers of BITCOIN 2017 for their insightful comments on a preliminary version of this paper. This work is partially supported by Aut. Reg. of Sardinia P.I.A. 2013 “NOMAD”.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2017 International Financial Cryptography Association
About this paper
Cite this paper
Bartoletti, M., Pompianu, L. (2017). An Analysis of Bitcoin OP_RETURN Metadata. In: Brenner, M., et al. Financial Cryptography and Data Security. FC 2017. Lecture Notes in Computer Science(), vol 10323. Springer, Cham. https://doi.org/10.1007/978-3-319-70278-0_14
Download citation
DOI: https://doi.org/10.1007/978-3-319-70278-0_14
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-70277-3
Online ISBN: 978-3-319-70278-0
eBook Packages: Computer ScienceComputer Science (R0)