<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://en.bitcoin.it/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Apekato</id>
	<title>Bitcoin Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://en.bitcoin.it/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Apekato"/>
	<link rel="alternate" type="text/html" href="https://en.bitcoin.it/wiki/Special:Contributions/Apekato"/>
	<updated>2026-04-10T02:56:36Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=OP_RETURN&amp;diff=65582</id>
		<title>OP RETURN</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=OP_RETURN&amp;diff=65582"/>
		<updated>2018-07-17T00:15:41Z</updated>

		<summary type="html">&lt;p&gt;Apekato: Undo revision 62559 by Midnightmagic (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;OP_RETURN&#039;&#039;&#039; is a [[script]] opcode used to mark a transaction output as invalid. Since the data after OP_RETURN are irrelevant to Bitcoin payments, arbitrary data can be added into the output after an OP_RETURN. Since any outputs with OP_RETURN are provably unspendable, OP_RETURN outputs can be used to [[Proof of burn|burn]] bitcoins.&lt;br /&gt;
&lt;br /&gt;
Currently, the default Bitcoin client relays OP_RETURN transactions up to 80 bytes [https://github.com/bitcoin/bitcoin/search?utf8=%E2%9C%93&amp;amp;q=MAX_OP_RETURN_RELAY], but does not provide a way for users to create OP_RETURN transactions.&lt;br /&gt;
&lt;br /&gt;
== Is storing data in the blockchain acceptable? ==&lt;br /&gt;
Many members of the Bitcoin community believe that use of OP_RETURN is irresponsible in part because Bitcoin was intended to provide a record for financial transactions, not a record for arbitrary data. Additionally, it is trivially obvious that the demand for external, massively-replicated data store is essentially infinite. Despite this, the use of OP_RETURN continues unabated: while there is no global miner consensus to stop people from embedding arbitrary data in the blockchain if they want to, OP_RETURN is somewhat more efficient in terms of [http://i.imgur.com/VAGZWBK.png data bytes stored as a fraction of blockchain space consumed]. Compared to some other ways of storing data in the blockchain, OP_RETURN has the advantage of not creating bogus UTXO entries. [https://github.com/bitcoin/bitcoin/pull/5286 Discussion on GitHub pull request]&lt;br /&gt;
&lt;br /&gt;
The creation of OP_RETURN outputs also destroys Bitcoins used in the outputs of OP_RETURN transactions, which contributes to future deflationary pressures.&lt;br /&gt;
&lt;br /&gt;
From [https://bitcoin.org/en/release/v0.9.0#opreturn-and-data-in-the-block-chain Bitcoin Core release 0.9.0]:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
This change is not an endorsement of storing data in the blockchain. The OP_RETURN change creates a provably-prunable output, to avoid data storage schemes – some of which were already deployed – that were storing arbitrary data such as images as forever-unspendable TX outputs, bloating bitcoin&#039;s UTXO database.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== OP_RETURN applications ==&lt;br /&gt;
OP_RETURN is used for writing human-language messages, digital asset proof-of-ownership, and storing data. Its use has been proposed for P2P application discovery. See the &amp;quot;prefixes&amp;quot; table below.&lt;br /&gt;
&lt;br /&gt;
== OP_RETURN prefixes ==&lt;br /&gt;
Often, OP_RETURN transactions include a prefix to identify which protocol they belong to. There is no standardized method of claiming OP_RETURN prefixes, and not all OP_RETURN transactions use prefixes. At the time of writing, this wiki page is probably the most complete list of OP_RETURN prefixes. Note that this table is an attempt to catalog OP_RETURN prefixes that are already in use, *not* a system for reserving OP_RETURN prefixes! Protocols with no prefix do not use a prefix in OP_RETURN transactions.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Prefix !! Protocol&lt;br /&gt;
|-&lt;br /&gt;
|     || [https://play.google.com/store/apps/details?id=a.apkt Apekato]&lt;br /&gt;
|-&lt;br /&gt;
| SPK || [http://coinspark.org/developers/ CoinSpark]&lt;br /&gt;
|-&lt;br /&gt;
| DOCPROOF || [http://www.proofofexistence.com/ Proof of Existence]&lt;br /&gt;
|-&lt;br /&gt;
| CryptoTests- || [http://crypto-copyright.com/ Crypto Copyright]&lt;br /&gt;
|-&lt;br /&gt;
| CryptoProof- || [http://crypto-copyright.com/ Crypto Copyright]&lt;br /&gt;
|-&lt;br /&gt;
| BS || [http://blocksignit.com/ BlockSign]&lt;br /&gt;
|-&lt;br /&gt;
| OA || [https://github.com/OpenAssets/open-assets-protocol/blob/master/specification.mediawiki Open Assets]&lt;br /&gt;
|-&lt;br /&gt;
| STAMPD## || [http://stampd.io/ stampd]&lt;br /&gt;
|-&lt;br /&gt;
| Factom!! || [http://factom.org/ Factom]&lt;br /&gt;
|-&lt;br /&gt;
| FACTOM00 || [http://factom.org/ Factom]&lt;br /&gt;
|-&lt;br /&gt;
| Fa || [http://factom.org/ Factom]&lt;br /&gt;
|-&lt;br /&gt;
| FA || [http://factom.org/ Factom]&lt;br /&gt;
|-&lt;br /&gt;
| tradle || [http://tradle.io/ Tradle]&lt;br /&gt;
|-&lt;br /&gt;
| LaPreuve || [http://www.lapreuve.net/ LaPreuve]&lt;br /&gt;
|-&lt;br /&gt;
| hex:5888 || [http://blog.onename.com/blockstore-bitcoin/ Blockstore]&lt;br /&gt;
|-&lt;br /&gt;
| hex:5808 || [http://blog.onename.com/blockstore-bitcoin/ Blockstore]&lt;br /&gt;
|-&lt;br /&gt;
| id || [http://blog.onename.com/blockstore-bitcoin/ Blockstore]&lt;br /&gt;
|-&lt;br /&gt;
| BITPROOF || [https://bitproof.io/ Bitproof]&lt;br /&gt;
|-&lt;br /&gt;
| S1 || [https://stampery.co/ Stampery]&lt;br /&gt;
|-&lt;br /&gt;
| S2 || [https://stampery.co/ Stampery]&lt;br /&gt;
|-&lt;br /&gt;
| S3 || [https://stampery.co/ Stampery]&lt;br /&gt;
|-&lt;br /&gt;
| S4 || [https://stampery.co/ Stampery]&lt;br /&gt;
|-&lt;br /&gt;
| S5 || [https://stampery.co/ Stampery]&lt;br /&gt;
|-&lt;br /&gt;
| ASCRIBE || [https://www.ascribe.io/ Ascribe]&lt;br /&gt;
|-&lt;br /&gt;
| ProveBit || [https://github.com/thereal1024/ProveBit ProveBit]&lt;br /&gt;
|-&lt;br /&gt;
| EW  || [http://eternitywall.it/ Eternity Wall]&lt;br /&gt;
|-&lt;br /&gt;
| CC || [http://colu.co/ Colu]&lt;br /&gt;
|-&lt;br /&gt;
| omni || [http://www.omnilayer.org/ Omni Layer]&lt;br /&gt;
|-&lt;br /&gt;
| MG || [http://monegraph.com/ Monegraph]&lt;br /&gt;
|-&lt;br /&gt;
| RMBd || [https://app.remembr.io/ Remembr]&lt;br /&gt;
|-&lt;br /&gt;
| RMBe || [https://app.remembr.io/ Remembr]&lt;br /&gt;
|-&lt;br /&gt;
| ORIGMY || [http://originalmy.com/ OriginalMy]&lt;br /&gt;
|-&lt;br /&gt;
| BID || [http://bitpos.me/ Identity]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== External resources on OP_RETURN ==&lt;br /&gt;
=== Viewing OP_RETURN ===&lt;br /&gt;
* [http://coinsecrets.org/ coinsecrets.org]: An OP_RETURN transaction explorer]&lt;br /&gt;
* [http://bitcoinstrings.com/ bitcoinstrings.com]: A site showing raw strings in Bitcoin transactions&lt;br /&gt;
&lt;br /&gt;
=== Explaining OP_RETURN ===&lt;br /&gt;
* [https://github.com/coinspark/python-OP_RETURN python-OP_RETURN]&lt;br /&gt;
* [http://bitcoin.stackexchange.com/questions/29554/explanation-of-what-an-op-return-transaction-looks-like StackExchange: Explanation of what an OP_RETURN transaction looks like]&lt;br /&gt;
* [http://www.slideshare.net/coinspark/bitcoin-2-and-opreturns-the-blockchain-as-tcpip Metadata in the Blockchain: The OP_RETURN Explosion]&lt;br /&gt;
* [http://wlangiewicz.com/blog/2014/10/24/how-to-put-custom-messages-into-bitcoin-blockchain-op-return/ How to Put Custom Messages Into Bitcoin Blockchain - OP_RETURN]&lt;br /&gt;
{{DISPLAYTITLE:OP_RETURN}}&lt;/div&gt;</summary>
		<author><name>Apekato</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=OP_RETURN&amp;diff=65581</id>
		<title>OP RETURN</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=OP_RETURN&amp;diff=65581"/>
		<updated>2018-07-17T00:15:22Z</updated>

		<summary type="html">&lt;p&gt;Apekato: Undo revision 62560 by Luke-jr (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;OP_RETURN&#039;&#039;&#039; is a [[script]] opcode used to mark a transaction output as invalid. Since the data after OP_RETURN are irrelevant to Bitcoin payments, arbitrary data can be added into the output after an OP_RETURN. Since any outputs with OP_RETURN are provably unspendable, OP_RETURN outputs can be used to [[Proof of burn|burn]] bitcoins.&lt;br /&gt;
&lt;br /&gt;
Currently, the default Bitcoin client relays OP_RETURN transactions up to 80 bytes [https://github.com/bitcoin/bitcoin/search?utf8=%E2%9C%93&amp;amp;q=MAX_OP_RETURN_RELAY], but does not provide a way for users to create OP_RETURN transactions.&lt;br /&gt;
&lt;br /&gt;
== Is storing data in the blockchain acceptable? ==&lt;br /&gt;
Many members of the Bitcoin community believe that use of OP_RETURN is irresponsible in part because Bitcoin was intended to provide a record for financial transactions, not a record for arbitrary data. Additionally, it is trivially obvious that the demand for external, massively-replicated data store is essentially infinite. Despite this, the use of OP_RETURN continues unabated: while there is no global miner consensus to stop people from embedding arbitrary data in the blockchain if they want to, OP_RETURN is somewhat more efficient in terms of [http://i.imgur.com/VAGZWBK.png data bytes stored as a fraction of blockchain space consumed]. Compared to some other ways of storing data in the blockchain, OP_RETURN has the advantage of not creating bogus UTXO entries. [https://github.com/bitcoin/bitcoin/pull/5286 Discussion on GitHub pull request]&lt;br /&gt;
&lt;br /&gt;
The creation of OP_RETURN outputs also destroys Bitcoins used in the outputs of OP_RETURN transactions, which contributes to future deflationary pressures.&lt;br /&gt;
&lt;br /&gt;
From [https://bitcoin.org/en/release/v0.9.0#opreturn-and-data-in-the-block-chain Bitcoin Core release 0.9.0]:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
This change is not an endorsement of storing data in the blockchain. The OP_RETURN change creates a provably-prunable output, to avoid data storage schemes – some of which were already deployed – that were storing arbitrary data such as images as forever-unspendable TX outputs, bloating bitcoin&#039;s UTXO database.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== OP_RETURN applications ==&lt;br /&gt;
OP_RETURN is used for writing human-language messages, digital asset proof-of-ownership, and storing data. Its use has been proposed for P2P application discovery. See the &amp;quot;prefixes&amp;quot; table below.&lt;br /&gt;
&lt;br /&gt;
== OP_RETURN prefixes ==&lt;br /&gt;
Often, OP_RETURN transactions include a prefix to identify which &amp;quot;protocol&amp;quot; they belong to. There is no standardized method of claiming OP_RETURN prefixes, and not all OP_RETURN transactions use prefixes. Protocols with no prefix do not use a prefix in OP_RETURN transactions.&lt;br /&gt;
&lt;br /&gt;
== External resources on OP_RETURN ==&lt;br /&gt;
=== Viewing OP_RETURN ===&lt;br /&gt;
* [http://coinsecrets.org/ coinsecrets.org]: An OP_RETURN transaction explorer]&lt;br /&gt;
* [http://bitcoinstrings.com/ bitcoinstrings.com]: A site showing raw strings in Bitcoin transactions&lt;br /&gt;
&lt;br /&gt;
=== Explaining OP_RETURN ===&lt;br /&gt;
* [https://github.com/coinspark/python-OP_RETURN python-OP_RETURN]&lt;br /&gt;
* [http://bitcoin.stackexchange.com/questions/29554/explanation-of-what-an-op-return-transaction-looks-like StackExchange: Explanation of what an OP_RETURN transaction looks like]&lt;br /&gt;
* [http://www.slideshare.net/coinspark/bitcoin-2-and-opreturns-the-blockchain-as-tcpip Metadata in the Blockchain: The OP_RETURN Explosion]&lt;br /&gt;
* [http://wlangiewicz.com/blog/2014/10/24/how-to-put-custom-messages-into-bitcoin-blockchain-op-return/ How to Put Custom Messages Into Bitcoin Blockchain - OP_RETURN]&lt;br /&gt;
{{DISPLAYTITLE:OP_RETURN}}&lt;/div&gt;</summary>
		<author><name>Apekato</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=OP_RETURN&amp;diff=62556</id>
		<title>OP RETURN</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=OP_RETURN&amp;diff=62556"/>
		<updated>2017-05-06T15:06:07Z</updated>

		<summary type="html">&lt;p&gt;Apekato: /* OP_RETURN prefixes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;OP_RETURN&#039;&#039;&#039; is a [[script]] opcode used to mark a transaction output as invalid. Since the data after OP_RETURN are irrelevant to Bitcoin payments, arbitrary data can be added into the output after an OP_RETURN. Since any outputs with OP_RETURN are provably unspendable, OP_RETURN outputs can be used to [[Proof of burn|burn]] bitcoins.&lt;br /&gt;
&lt;br /&gt;
Currently, the default Bitcoin client relays OP_RETURN transactions up to 80 bytes [https://github.com/bitcoin/bitcoin/search?utf8=%E2%9C%93&amp;amp;q=MAX_OP_RETURN_RELAY], but does not provide a way for users to create OP_RETURN transactions.&lt;br /&gt;
&lt;br /&gt;
== Is storing data in the blockchain acceptable? ==&lt;br /&gt;
Some members of the Bitcoin community believe that use of OP_RETURN violates the contract of Bitcoin, because Bitcoin was intended to provide a record for financial transactions, not a record for arbitrary data. Despite this, use of OP_RETURN may continue unabated because there is no easy way to stop people from embedding arbitrary data in the blockchain if they want to, and OP_RETURN is reasonably efficient in terms of [http://i.imgur.com/VAGZWBK.png data bytes stored as a fraction of blockchain space consumed]. Compared to some other ways of storing data in the blockchain, OP_RETURN has the advantage of not creating bogus UTXO entries. [https://github.com/bitcoin/bitcoin/pull/5286 Discussion on GitHub pull request]&lt;br /&gt;
&lt;br /&gt;
From [https://bitcoin.org/en/release/v0.9.0#opreturn-and-data-in-the-block-chain Bitcoin Core release 0.9.0]:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
This change is not an endorsement of storing data in the blockchain. The OP_RETURN change creates a provably-prunable output, to avoid data storage schemes – some of which were already deployed – that were storing arbitrary data such as images as forever-unspendable TX outputs, bloating bitcoin&#039;s UTXO database.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== OP_RETURN applications ==&lt;br /&gt;
OP_RETURN is used for writing human-language messages, digital asset proof-of-ownership, and storing data. Its use has been proposed for P2P application discovery. See the &amp;quot;prefixes&amp;quot; table below.&lt;br /&gt;
&lt;br /&gt;
== OP_RETURN prefixes ==&lt;br /&gt;
Often, OP_RETURN transactions include a prefix to identify which protocol they belong to. There is no standardized method of claiming OP_RETURN prefixes, and not all OP_RETURN transactions use prefixes. At the time of writing, this wiki page is probably the most complete list of OP_RETURN prefixes. Note that this table is an attempt to catalog OP_RETURN prefixes that are already in use, *not* a system for reserving OP_RETURN prefixes! Protocols with no prefix do not use prefix in OP_RETURN transactions.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Prefix !! Protocol&lt;br /&gt;
|-&lt;br /&gt;
|     || [https://play.google.com/store/apps/details?id=a.apkt Apekato]&lt;br /&gt;
|-&lt;br /&gt;
| SPK || [http://coinspark.org/developers/ CoinSpark]&lt;br /&gt;
|-&lt;br /&gt;
| DOCPROOF || [http://www.proofofexistence.com/ Proof of Existence]&lt;br /&gt;
|-&lt;br /&gt;
| CryptoTests- || [http://crypto-copyright.com/ Crypto Copyright]&lt;br /&gt;
|-&lt;br /&gt;
| CryptoProof- || [http://crypto-copyright.com/ Crypto Copyright]&lt;br /&gt;
|-&lt;br /&gt;
| BS || [http://blocksignit.com/ BlockSign]&lt;br /&gt;
|-&lt;br /&gt;
| OA || [https://github.com/OpenAssets/open-assets-protocol/blob/master/specification.mediawiki Open Assets]&lt;br /&gt;
|-&lt;br /&gt;
| STAMPD## || [http://stampd.io/ stampd]&lt;br /&gt;
|-&lt;br /&gt;
| Factom!! || [http://factom.org/ Factom]&lt;br /&gt;
|-&lt;br /&gt;
| FACTOM00 || [http://factom.org/ Factom]&lt;br /&gt;
|-&lt;br /&gt;
| Fa || [http://factom.org/ Factom]&lt;br /&gt;
|-&lt;br /&gt;
| FA || [http://factom.org/ Factom]&lt;br /&gt;
|-&lt;br /&gt;
| tradle || [http://tradle.io/ Tradle]&lt;br /&gt;
|-&lt;br /&gt;
| LaPreuve || [http://www.lapreuve.net/ LaPreuve]&lt;br /&gt;
|-&lt;br /&gt;
| hex:5888 || [http://blog.onename.com/blockstore-bitcoin/ Blockstore]&lt;br /&gt;
|-&lt;br /&gt;
| hex:5808 || [http://blog.onename.com/blockstore-bitcoin/ Blockstore]&lt;br /&gt;
|-&lt;br /&gt;
| id || [http://blog.onename.com/blockstore-bitcoin/ Blockstore]&lt;br /&gt;
|-&lt;br /&gt;
| BITPROOF || [https://bitproof.io/ Bitproof]&lt;br /&gt;
|-&lt;br /&gt;
| S1 || [https://stampery.co/ Stampery]&lt;br /&gt;
|-&lt;br /&gt;
| S2 || [https://stampery.co/ Stampery]&lt;br /&gt;
|-&lt;br /&gt;
| S3 || [https://stampery.co/ Stampery]&lt;br /&gt;
|-&lt;br /&gt;
| S4 || [https://stampery.co/ Stampery]&lt;br /&gt;
|-&lt;br /&gt;
| S5 || [https://stampery.co/ Stampery]&lt;br /&gt;
|-&lt;br /&gt;
| ASCRIBE || [https://www.ascribe.io/ Ascribe]&lt;br /&gt;
|-&lt;br /&gt;
| ProveBit || [https://github.com/thereal1024/ProveBit ProveBit]&lt;br /&gt;
|-&lt;br /&gt;
| EW  || [http://eternitywall.it/ Eternity Wall]&lt;br /&gt;
|-&lt;br /&gt;
| CC || [http://colu.co/ Colu]&lt;br /&gt;
|-&lt;br /&gt;
| omni || [http://www.omnilayer.org/ Omni Layer]&lt;br /&gt;
|-&lt;br /&gt;
| MG || [http://monegraph.com/ Monegraph]&lt;br /&gt;
|-&lt;br /&gt;
| RMBd || [https://app.remembr.io/ Remembr]&lt;br /&gt;
|-&lt;br /&gt;
| RMBe || [https://app.remembr.io/ Remembr]&lt;br /&gt;
|-&lt;br /&gt;
| ORIGMY || [http://originalmy.com/ OriginalMy]&lt;br /&gt;
|-&lt;br /&gt;
| BID || [http://bitpos.me/ Identity]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== External resources on OP_RETURN ==&lt;br /&gt;
=== Viewing OP_RETURN ===&lt;br /&gt;
* [http://coinsecrets.org/ coinsecrets.org]: An OP_RETURN transaction explorer]&lt;br /&gt;
* [http://bitcoinstrings.com/ bitcoinstrings.com]: A site showing raw strings in Bitcoin transactions&lt;br /&gt;
&lt;br /&gt;
=== Explaining OP_RETURN ===&lt;br /&gt;
* [https://github.com/coinspark/python-OP_RETURN python-OP_RETURN]&lt;br /&gt;
* [http://bitcoin.stackexchange.com/questions/29554/explanation-of-what-an-op-return-transaction-looks-like StackExchange: Explanation of what an OP_RETURN transaction looks like]&lt;br /&gt;
* [http://www.slideshare.net/coinspark/bitcoin-2-and-opreturns-the-blockchain-as-tcpip Metadata in the Blockchain: The OP_RETURN Explosion]&lt;br /&gt;
* [http://wlangiewicz.com/blog/2014/10/24/how-to-put-custom-messages-into-bitcoin-blockchain-op-return/ How to Put Custom Messages Into Bitcoin Blockchain - OP_RETURN]&lt;br /&gt;
{{DISPLAYTITLE:OP_RETURN}}&lt;/div&gt;</summary>
		<author><name>Apekato</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=OP_RETURN&amp;diff=62555</id>
		<title>OP RETURN</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=OP_RETURN&amp;diff=62555"/>
		<updated>2017-05-06T14:55:15Z</updated>

		<summary type="html">&lt;p&gt;Apekato: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;OP_RETURN&#039;&#039;&#039; is a [[script]] opcode used to mark a transaction output as invalid. Since the data after OP_RETURN are irrelevant to Bitcoin payments, arbitrary data can be added into the output after an OP_RETURN. Since any outputs with OP_RETURN are provably unspendable, OP_RETURN outputs can be used to [[Proof of burn|burn]] bitcoins.&lt;br /&gt;
&lt;br /&gt;
Currently, the default Bitcoin client relays OP_RETURN transactions up to 80 bytes [https://github.com/bitcoin/bitcoin/search?utf8=%E2%9C%93&amp;amp;q=MAX_OP_RETURN_RELAY], but does not provide a way for users to create OP_RETURN transactions.&lt;br /&gt;
&lt;br /&gt;
== Is storing data in the blockchain acceptable? ==&lt;br /&gt;
Some members of the Bitcoin community believe that use of OP_RETURN violates the contract of Bitcoin, because Bitcoin was intended to provide a record for financial transactions, not a record for arbitrary data. Despite this, use of OP_RETURN may continue unabated because there is no easy way to stop people from embedding arbitrary data in the blockchain if they want to, and OP_RETURN is reasonably efficient in terms of [http://i.imgur.com/VAGZWBK.png data bytes stored as a fraction of blockchain space consumed]. Compared to some other ways of storing data in the blockchain, OP_RETURN has the advantage of not creating bogus UTXO entries. [https://github.com/bitcoin/bitcoin/pull/5286 Discussion on GitHub pull request]&lt;br /&gt;
&lt;br /&gt;
From [https://bitcoin.org/en/release/v0.9.0#opreturn-and-data-in-the-block-chain Bitcoin Core release 0.9.0]:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
This change is not an endorsement of storing data in the blockchain. The OP_RETURN change creates a provably-prunable output, to avoid data storage schemes – some of which were already deployed – that were storing arbitrary data such as images as forever-unspendable TX outputs, bloating bitcoin&#039;s UTXO database.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== OP_RETURN applications ==&lt;br /&gt;
OP_RETURN is used for writing human-language messages, digital asset proof-of-ownership, and storing data. Its use has been proposed for P2P application discovery. See the &amp;quot;prefixes&amp;quot; table below.&lt;br /&gt;
&lt;br /&gt;
== OP_RETURN prefixes ==&lt;br /&gt;
Often, OP_RETURN transactions include a prefix to identify which protocol they belong to. There is no standardized method of claiming OP_RETURN prefixes, and not all OP_RETURN transactions use prefixes. At the time of writing, this wiki page is probably the most complete list of OP_RETURN prefixes. Note that this table is an attempt to catalog OP_RETURN prefixes that are already in use, *not* a system for reserving OP_RETURN prefixes! Protocols with no prefix do not use prefixes in OP_RETURN transactions.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Prefix !! Protocol&lt;br /&gt;
|-&lt;br /&gt;
|     || [https://play.google.com/store/apps/details?id=a.apkt Apekato]&lt;br /&gt;
|-&lt;br /&gt;
| SPK || [http://coinspark.org/developers/ CoinSpark]&lt;br /&gt;
|-&lt;br /&gt;
| DOCPROOF || [http://www.proofofexistence.com/ Proof of Existence]&lt;br /&gt;
|-&lt;br /&gt;
| CryptoTests- || [http://crypto-copyright.com/ Crypto Copyright]&lt;br /&gt;
|-&lt;br /&gt;
| CryptoProof- || [http://crypto-copyright.com/ Crypto Copyright]&lt;br /&gt;
|-&lt;br /&gt;
| BS || [http://blocksignit.com/ BlockSign]&lt;br /&gt;
|-&lt;br /&gt;
| OA || [https://github.com/OpenAssets/open-assets-protocol/blob/master/specification.mediawiki Open Assets]&lt;br /&gt;
|-&lt;br /&gt;
| STAMPD## || [http://stampd.io/ stampd]&lt;br /&gt;
|-&lt;br /&gt;
| Factom!! || [http://factom.org/ Factom]&lt;br /&gt;
|-&lt;br /&gt;
| FACTOM00 || [http://factom.org/ Factom]&lt;br /&gt;
|-&lt;br /&gt;
| Fa || [http://factom.org/ Factom]&lt;br /&gt;
|-&lt;br /&gt;
| FA || [http://factom.org/ Factom]&lt;br /&gt;
|-&lt;br /&gt;
| tradle || [http://tradle.io/ Tradle]&lt;br /&gt;
|-&lt;br /&gt;
| LaPreuve || [http://www.lapreuve.net/ LaPreuve]&lt;br /&gt;
|-&lt;br /&gt;
| hex:5888 || [http://blog.onename.com/blockstore-bitcoin/ Blockstore]&lt;br /&gt;
|-&lt;br /&gt;
| hex:5808 || [http://blog.onename.com/blockstore-bitcoin/ Blockstore]&lt;br /&gt;
|-&lt;br /&gt;
| id || [http://blog.onename.com/blockstore-bitcoin/ Blockstore]&lt;br /&gt;
|-&lt;br /&gt;
| BITPROOF || [https://bitproof.io/ Bitproof]&lt;br /&gt;
|-&lt;br /&gt;
| S1 || [https://stampery.co/ Stampery]&lt;br /&gt;
|-&lt;br /&gt;
| S2 || [https://stampery.co/ Stampery]&lt;br /&gt;
|-&lt;br /&gt;
| S3 || [https://stampery.co/ Stampery]&lt;br /&gt;
|-&lt;br /&gt;
| S4 || [https://stampery.co/ Stampery]&lt;br /&gt;
|-&lt;br /&gt;
| S5 || [https://stampery.co/ Stampery]&lt;br /&gt;
|-&lt;br /&gt;
| ASCRIBE || [https://www.ascribe.io/ Ascribe]&lt;br /&gt;
|-&lt;br /&gt;
| ProveBit || [https://github.com/thereal1024/ProveBit ProveBit]&lt;br /&gt;
|-&lt;br /&gt;
| EW  || [http://eternitywall.it/ Eternity Wall]&lt;br /&gt;
|-&lt;br /&gt;
| CC || [http://colu.co/ Colu]&lt;br /&gt;
|-&lt;br /&gt;
| omni || [http://www.omnilayer.org/ Omni Layer]&lt;br /&gt;
|-&lt;br /&gt;
| MG || [http://monegraph.com/ Monegraph]&lt;br /&gt;
|-&lt;br /&gt;
| RMBd || [https://app.remembr.io/ Remembr]&lt;br /&gt;
|-&lt;br /&gt;
| RMBe || [https://app.remembr.io/ Remembr]&lt;br /&gt;
|-&lt;br /&gt;
| ORIGMY || [http://originalmy.com/ OriginalMy]&lt;br /&gt;
|-&lt;br /&gt;
| BID || [http://bitpos.me/ Identity]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== External resources on OP_RETURN ==&lt;br /&gt;
=== Viewing OP_RETURN ===&lt;br /&gt;
* [http://coinsecrets.org/ coinsecrets.org]: An OP_RETURN transaction explorer]&lt;br /&gt;
* [http://bitcoinstrings.com/ bitcoinstrings.com]: A site showing raw strings in Bitcoin transactions&lt;br /&gt;
&lt;br /&gt;
=== Explaining OP_RETURN ===&lt;br /&gt;
* [https://github.com/coinspark/python-OP_RETURN python-OP_RETURN]&lt;br /&gt;
* [http://bitcoin.stackexchange.com/questions/29554/explanation-of-what-an-op-return-transaction-looks-like StackExchange: Explanation of what an OP_RETURN transaction looks like]&lt;br /&gt;
* [http://www.slideshare.net/coinspark/bitcoin-2-and-opreturns-the-blockchain-as-tcpip Metadata in the Blockchain: The OP_RETURN Explosion]&lt;br /&gt;
* [http://wlangiewicz.com/blog/2014/10/24/how-to-put-custom-messages-into-bitcoin-blockchain-op-return/ How to Put Custom Messages Into Bitcoin Blockchain - OP_RETURN]&lt;br /&gt;
{{DISPLAYTITLE:OP_RETURN}}&lt;/div&gt;</summary>
		<author><name>Apekato</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=OP_RETURN&amp;diff=62554</id>
		<title>OP RETURN</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=OP_RETURN&amp;diff=62554"/>
		<updated>2017-05-06T14:33:51Z</updated>

		<summary type="html">&lt;p&gt;Apekato: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;OP_RETURN&#039;&#039;&#039; is a [[script]] opcode used to mark a transaction output as invalid. Since the data after OP_RETURN are irrelevant to Bitcoin payments, arbitrary data can be added into the output after an OP_RETURN. Since any outputs with OP_RETURN are provably unspendable, OP_RETURN outputs can be used to [[Proof of burn|burn]] bitcoins.&lt;br /&gt;
&lt;br /&gt;
Currently, the default Bitcoin client relays OP_RETURN transactions up to 80 bytes [https://github.com/bitcoin/bitcoin/search?utf8=%E2%9C%93&amp;amp;q=MAX_OP_RETURN_RELAY], but does not provide a way for users to create OP_RETURN transactions.&lt;br /&gt;
&lt;br /&gt;
== Is storing data in the blockchain acceptable? ==&lt;br /&gt;
Some members of the Bitcoin community believe that use of OP_RETURN violates the contract of Bitcoin, because Bitcoin was intended to provide a record for financial transactions, not a record for arbitrary data. Despite this, use of OP_RETURN may continue unabated because there is no easy way to stop people from embedding arbitrary data in the blockchain if they want to, and OP_RETURN is reasonably efficient in terms of [http://i.imgur.com/VAGZWBK.png data bytes stored as a fraction of blockchain space consumed]. Compared to some other ways of storing data in the blockchain, OP_RETURN has the advantage of not creating bogus UTXO entries. [https://github.com/bitcoin/bitcoin/pull/5286 Discussion on GitHub pull request]&lt;br /&gt;
&lt;br /&gt;
From [https://bitcoin.org/en/release/v0.9.0#opreturn-and-data-in-the-block-chain Bitcoin Core release 0.9.0]:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
This change is not an endorsement of storing data in the blockchain. The OP_RETURN change creates a provably-prunable output, to avoid data storage schemes – some of which were already deployed – that were storing arbitrary data such as images as forever-unspendable TX outputs, bloating bitcoin&#039;s UTXO database.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== OP_RETURN applications ==&lt;br /&gt;
OP_RETURN is used for writing human-language messages, digital asset proof-of-ownership, and storing data. Its use has been proposed for P2P application discovery. See the &amp;quot;prefixes&amp;quot; table below.&lt;br /&gt;
&lt;br /&gt;
== OP_RETURN prefixes ==&lt;br /&gt;
Often, OP_RETURN transactions include a prefix to identify which protocol they belong to. There is no standardized method of claiming OP_RETURN prefixes, and not all OP_RETURN transactions use prefixes. At the time of writing, this wiki page is probably the most complete list of OP_RETURN prefixes. Note that this table is an attempt to catalog OP_RETURN prefixes that are already in use, *not* a system for reserving OP_RETURN prefixes!&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Prefix !! Protocol&lt;br /&gt;
|-&lt;br /&gt;
|     || [https://play.google.com/store/apps/details?id=a.apkt Apekato]&lt;br /&gt;
|-&lt;br /&gt;
| SPK || [http://coinspark.org/developers/ CoinSpark]&lt;br /&gt;
|-&lt;br /&gt;
| DOCPROOF || [http://www.proofofexistence.com/ Proof of Existence]&lt;br /&gt;
|-&lt;br /&gt;
| CryptoTests- || [http://crypto-copyright.com/ Crypto Copyright]&lt;br /&gt;
|-&lt;br /&gt;
| CryptoProof- || [http://crypto-copyright.com/ Crypto Copyright]&lt;br /&gt;
|-&lt;br /&gt;
| BS || [http://blocksignit.com/ BlockSign]&lt;br /&gt;
|-&lt;br /&gt;
| OA || [https://github.com/OpenAssets/open-assets-protocol/blob/master/specification.mediawiki Open Assets]&lt;br /&gt;
|-&lt;br /&gt;
| STAMPD## || [http://stampd.io/ stampd]&lt;br /&gt;
|-&lt;br /&gt;
| Factom!! || [http://factom.org/ Factom]&lt;br /&gt;
|-&lt;br /&gt;
| FACTOM00 || [http://factom.org/ Factom]&lt;br /&gt;
|-&lt;br /&gt;
| Fa || [http://factom.org/ Factom]&lt;br /&gt;
|-&lt;br /&gt;
| FA || [http://factom.org/ Factom]&lt;br /&gt;
|-&lt;br /&gt;
| tradle || [http://tradle.io/ Tradle]&lt;br /&gt;
|-&lt;br /&gt;
| LaPreuve || [http://www.lapreuve.net/ LaPreuve]&lt;br /&gt;
|-&lt;br /&gt;
| hex:5888 || [http://blog.onename.com/blockstore-bitcoin/ Blockstore]&lt;br /&gt;
|-&lt;br /&gt;
| hex:5808 || [http://blog.onename.com/blockstore-bitcoin/ Blockstore]&lt;br /&gt;
|-&lt;br /&gt;
| id || [http://blog.onename.com/blockstore-bitcoin/ Blockstore]&lt;br /&gt;
|-&lt;br /&gt;
| BITPROOF || [https://bitproof.io/ Bitproof]&lt;br /&gt;
|-&lt;br /&gt;
| S1 || [https://stampery.co/ Stampery]&lt;br /&gt;
|-&lt;br /&gt;
| S2 || [https://stampery.co/ Stampery]&lt;br /&gt;
|-&lt;br /&gt;
| S3 || [https://stampery.co/ Stampery]&lt;br /&gt;
|-&lt;br /&gt;
| S4 || [https://stampery.co/ Stampery]&lt;br /&gt;
|-&lt;br /&gt;
| S5 || [https://stampery.co/ Stampery]&lt;br /&gt;
|-&lt;br /&gt;
| ASCRIBE || [https://www.ascribe.io/ Ascribe]&lt;br /&gt;
|-&lt;br /&gt;
| ProveBit || [https://github.com/thereal1024/ProveBit ProveBit]&lt;br /&gt;
|-&lt;br /&gt;
| EW  || [http://eternitywall.it/ Eternity Wall]&lt;br /&gt;
|-&lt;br /&gt;
| CC || [http://colu.co/ Colu]&lt;br /&gt;
|-&lt;br /&gt;
| omni || [http://www.omnilayer.org/ Omni Layer]&lt;br /&gt;
|-&lt;br /&gt;
| MG || [http://monegraph.com/ Monegraph]&lt;br /&gt;
|-&lt;br /&gt;
| RMBd || [https://app.remembr.io/ Remembr]&lt;br /&gt;
|-&lt;br /&gt;
| RMBe || [https://app.remembr.io/ Remembr]&lt;br /&gt;
|-&lt;br /&gt;
| ORIGMY || [http://originalmy.com/ OriginalMy]&lt;br /&gt;
|-&lt;br /&gt;
| BID || [http://bitpos.me/ Identity]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== External resources on OP_RETURN ==&lt;br /&gt;
=== Viewing OP_RETURN ===&lt;br /&gt;
* [http://coinsecrets.org/ coinsecrets.org]: An OP_RETURN transaction explorer]&lt;br /&gt;
* [http://bitcoinstrings.com/ bitcoinstrings.com]: A site showing raw strings in Bitcoin transactions&lt;br /&gt;
&lt;br /&gt;
=== Explaining OP_RETURN ===&lt;br /&gt;
* [https://github.com/coinspark/python-OP_RETURN python-OP_RETURN]&lt;br /&gt;
* [http://bitcoin.stackexchange.com/questions/29554/explanation-of-what-an-op-return-transaction-looks-like StackExchange: Explanation of what an OP_RETURN transaction looks like]&lt;br /&gt;
* [http://www.slideshare.net/coinspark/bitcoin-2-and-opreturns-the-blockchain-as-tcpip Metadata in the Blockchain: The OP_RETURN Explosion]&lt;br /&gt;
* [http://wlangiewicz.com/blog/2014/10/24/how-to-put-custom-messages-into-bitcoin-blockchain-op-return/ How to Put Custom Messages Into Bitcoin Blockchain - OP_RETURN]&lt;br /&gt;
{{DISPLAYTITLE:OP_RETURN}}&lt;/div&gt;</summary>
		<author><name>Apekato</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=OP_RETURN&amp;diff=62553</id>
		<title>OP RETURN</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=OP_RETURN&amp;diff=62553"/>
		<updated>2017-05-06T14:32:11Z</updated>

		<summary type="html">&lt;p&gt;Apekato: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;OP_RETURN&#039;&#039;&#039; is a [[script]] opcode used to mark a transaction output as invalid. Since the data after OP_RETURN are irrelevant to Bitcoin payments, arbitrary data can be added into the output after an OP_RETURN. Since any outputs with OP_RETURN are provably unspendable, OP_RETURN outputs can be used to [[Proof of burn|burn]] bitcoins.&lt;br /&gt;
&lt;br /&gt;
Currently, the default Bitcoin client relays OP_RETURN transactions up to 80 bytes [https://github.com/bitcoin/bitcoin/search?utf8=%E2%9C%93&amp;amp;q=MAX_OP_RETURN_RELAY], but does not provide a way for users to create OP_RETURN transactions.&lt;br /&gt;
&lt;br /&gt;
== Is storing data in the blockchain acceptable? ==&lt;br /&gt;
Some members of the Bitcoin community believe that use of OP_RETURN violates the contract of Bitcoin, because Bitcoin was intended to provide a record for financial transactions, not a record for arbitrary data. Despite this, use of OP_RETURN may continue unabated because there is no easy way to stop people from embedding arbitrary data in the blockchain if they want to, and OP_RETURN is reasonably efficient in terms of [http://i.imgur.com/VAGZWBK.png data bytes stored as a fraction of blockchain space consumed]. Compared to some other ways of storing data in the blockchain, OP_RETURN has the advantage of not creating bogus UTXO entries. [https://github.com/bitcoin/bitcoin/pull/5286 Discussion on GitHub pull request]&lt;br /&gt;
&lt;br /&gt;
From [https://bitcoin.org/en/release/v0.9.0#opreturn-and-data-in-the-block-chain Bitcoin Core release 0.9.0]:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
This change is not an endorsement of storing data in the blockchain. The OP_RETURN change creates a provably-prunable output, to avoid data storage schemes – some of which were already deployed – that were storing arbitrary data such as images as forever-unspendable TX outputs, bloating bitcoin&#039;s UTXO database.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== OP_RETURN applications ==&lt;br /&gt;
OP_RETURN is used for writing human-language messages, digital asset proof-of-ownership, and storing data. Its use has been proposed for P2P application discovery. See the &amp;quot;prefixes&amp;quot; table below.&lt;br /&gt;
&lt;br /&gt;
== OP_RETURN prefixes ==&lt;br /&gt;
Often, OP_RETURN transactions include a prefix to identify which protocol they belong to. There is no standardized method of claiming OP_RETURN prefixes, and not all OP_RETURN transactions use prefixes. At the time of writing, this wiki page is probably the most complete list of OP_RETURN prefixes. Note that this table is an attempt to catalog OP_RETURN prefixes that are already in use, *not* a system for reserving OP_RETURN prefixes!&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Prefix !! Protocol&lt;br /&gt;
|-&lt;br /&gt;
|     || [https://play.google.com/store/apps/details?id=a.apkt/ Apekato]&lt;br /&gt;
|-&lt;br /&gt;
| SPK || [http://coinspark.org/developers/ CoinSpark]&lt;br /&gt;
|-&lt;br /&gt;
| DOCPROOF || [http://www.proofofexistence.com/ Proof of Existence]&lt;br /&gt;
|-&lt;br /&gt;
| CryptoTests- || [http://crypto-copyright.com/ Crypto Copyright]&lt;br /&gt;
|-&lt;br /&gt;
| CryptoProof- || [http://crypto-copyright.com/ Crypto Copyright]&lt;br /&gt;
|-&lt;br /&gt;
| BS || [http://blocksignit.com/ BlockSign]&lt;br /&gt;
|-&lt;br /&gt;
| OA || [https://github.com/OpenAssets/open-assets-protocol/blob/master/specification.mediawiki Open Assets]&lt;br /&gt;
|-&lt;br /&gt;
| STAMPD## || [http://stampd.io/ stampd]&lt;br /&gt;
|-&lt;br /&gt;
| Factom!! || [http://factom.org/ Factom]&lt;br /&gt;
|-&lt;br /&gt;
| FACTOM00 || [http://factom.org/ Factom]&lt;br /&gt;
|-&lt;br /&gt;
| Fa || [http://factom.org/ Factom]&lt;br /&gt;
|-&lt;br /&gt;
| FA || [http://factom.org/ Factom]&lt;br /&gt;
|-&lt;br /&gt;
| tradle || [http://tradle.io/ Tradle]&lt;br /&gt;
|-&lt;br /&gt;
| LaPreuve || [http://www.lapreuve.net/ LaPreuve]&lt;br /&gt;
|-&lt;br /&gt;
| hex:5888 || [http://blog.onename.com/blockstore-bitcoin/ Blockstore]&lt;br /&gt;
|-&lt;br /&gt;
| hex:5808 || [http://blog.onename.com/blockstore-bitcoin/ Blockstore]&lt;br /&gt;
|-&lt;br /&gt;
| id || [http://blog.onename.com/blockstore-bitcoin/ Blockstore]&lt;br /&gt;
|-&lt;br /&gt;
| BITPROOF || [https://bitproof.io/ Bitproof]&lt;br /&gt;
|-&lt;br /&gt;
| S1 || [https://stampery.co/ Stampery]&lt;br /&gt;
|-&lt;br /&gt;
| S2 || [https://stampery.co/ Stampery]&lt;br /&gt;
|-&lt;br /&gt;
| S3 || [https://stampery.co/ Stampery]&lt;br /&gt;
|-&lt;br /&gt;
| S4 || [https://stampery.co/ Stampery]&lt;br /&gt;
|-&lt;br /&gt;
| S5 || [https://stampery.co/ Stampery]&lt;br /&gt;
|-&lt;br /&gt;
| ASCRIBE || [https://www.ascribe.io/ Ascribe]&lt;br /&gt;
|-&lt;br /&gt;
| ProveBit || [https://github.com/thereal1024/ProveBit ProveBit]&lt;br /&gt;
|-&lt;br /&gt;
| EW  || [http://eternitywall.it/ Eternity Wall]&lt;br /&gt;
|-&lt;br /&gt;
| CC || [http://colu.co/ Colu]&lt;br /&gt;
|-&lt;br /&gt;
| omni || [http://www.omnilayer.org/ Omni Layer]&lt;br /&gt;
|-&lt;br /&gt;
| MG || [http://monegraph.com/ Monegraph]&lt;br /&gt;
|-&lt;br /&gt;
| RMBd || [https://app.remembr.io/ Remembr]&lt;br /&gt;
|-&lt;br /&gt;
| RMBe || [https://app.remembr.io/ Remembr]&lt;br /&gt;
|-&lt;br /&gt;
| ORIGMY || [http://originalmy.com/ OriginalMy]&lt;br /&gt;
|-&lt;br /&gt;
| BID || [http://bitpos.me/ Identity]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== External resources on OP_RETURN ==&lt;br /&gt;
=== Viewing OP_RETURN ===&lt;br /&gt;
* [http://coinsecrets.org/ coinsecrets.org]: An OP_RETURN transaction explorer]&lt;br /&gt;
* [http://bitcoinstrings.com/ bitcoinstrings.com]: A site showing raw strings in Bitcoin transactions&lt;br /&gt;
&lt;br /&gt;
=== Explaining OP_RETURN ===&lt;br /&gt;
* [https://github.com/coinspark/python-OP_RETURN python-OP_RETURN]&lt;br /&gt;
* [http://bitcoin.stackexchange.com/questions/29554/explanation-of-what-an-op-return-transaction-looks-like StackExchange: Explanation of what an OP_RETURN transaction looks like]&lt;br /&gt;
* [http://www.slideshare.net/coinspark/bitcoin-2-and-opreturns-the-blockchain-as-tcpip Metadata in the Blockchain: The OP_RETURN Explosion]&lt;br /&gt;
* [http://wlangiewicz.com/blog/2014/10/24/how-to-put-custom-messages-into-bitcoin-blockchain-op-return/ How to Put Custom Messages Into Bitcoin Blockchain - OP_RETURN]&lt;br /&gt;
{{DISPLAYTITLE:OP_RETURN}}&lt;/div&gt;</summary>
		<author><name>Apekato</name></author>
	</entry>
</feed>