Telegram (AI) YouTube Facebook X
Ру
Bitcoin, not emojis: how to leave a message in the blockchain of the first cryptocurrency

Bitcoin, not emojis: how to leave a message in the blockchain of the first cryptocurrency

Some call Bitcoin a single global currency, some equate it with gold. It is less common, however, to compare the first cryptocurrency to a social network.

Specifically for ForkLog, the founder and CEO of AMLBot and AMLSafe, Vyacheslav Demchuk, discussed signaling in the Bitcoin network. It is a way of transmitting messages in place of coins, which remain in the blockchain forever. Sometimes these are entire manifestos.

Notable messages in the blockchain

The first entry in the Bitcoin blockchain was made by the creator of the cryptocurrency Satoshi Nakamoto. In the genesis block he placed the headline of The Times from January 3, 2009: “Chancellor on brink of second bailout for banks” (“The Chancellor on the brink of a second bailout for banks”).

The article described the policy of governments bailing out the debts of large banks after the 2008 financial crisis. Both of these events served as catalysts for the emergence of cryptocurrencies.

Thus, Satoshi not only fixed the timestamp of the first block but also left an ideological message for followers.

Bitcoin, not emojis: how to leave a message in the blockchain of the first cryptocurrency

Details of the first transaction (creation of the genesis block). Data: Explorer.btc21.org.

To repeat the story ahead of the May 2020 halving, co-founder Van Chun of F2Pool signed the last transaction before the block reward was cut and included in it The New York Times headline from April 9, 2020: “With $2.3T Injection, Fed’s Plan Far Exceeds 2008 Rescue.”

On 3 December 2020, the oldest mining pool SlushPool immortalised in block #659678 the Reuters headline “Dollar plummets on U.S. stimulus hopes; bitcoin hits all-time peak.”

The article described the dollar’s weakness as Bitcoin rose to a new high above $19,900 on December 1.

Pools craft the right message meticulously. The blockchain has become a fully functioning forum, allowing not only exchange of opinions but also collection of statistics and even advertising one’s organisation. All of this is possible thanks to the ability to write a record in the coinbase transaction—the foundation of the block that will be mined.

Mining pools have their own coinbase signature, which often matches their name: Slush – for SlushPool, ozcoin – for Ozco.in, F2Pool, Binance, BTC.COM and ViaBTC.

In block #657402 the signature “Mined by pk888” is decoded.

Among similar messages you often find greetings, congratulations and other information: “Happy New Year! Your GHash.IO”, “Mined on an ASIC miner”, “Hello from 50BTC.com”, “Made in China.”

Later, miners could even vote using these records. P2SH script in BIP16 multisig lets you send transactions to the script hash rather than the public key hash (these addresses begin with 3, not 1).

Entries like “BTC Guild /P2SH/” and “/P2SH/BIP16/slush/R” appear in many blocks generated in 2012 (for example, #169000, #169100, #169156, #169163, #169170, #175134, #200000).

Moreover, the Bitcoin network stores about 400 love notes, more than 10 marriage proposals, a message about the birth of a son, and even prayers.

Bitcoin, not emojis: how to leave a message in the blockchain of the first cryptocurrency

Data: Twitter.

How to write a message in the blockchain

Coinbase

If you are a miner, the method described above will help add about 100 bytes of data.

OP_RETURN output

The OP_RETURN script makes the transaction output invalid and openly creates unspent outputs (the minimum amount of bitcoins you send is burned).

This method allows storing up to 80 bytes of information in each transaction and is a transparent way to transfer data. It is precisely these transactions that many sites monitoring blockchain records track.

American software engineer Ken Shirriff proposed a simple encoding scheme suitable for a 20-character message. To do this you need to:

  • convert the text to hexadecimal format (ASCII to HEX);
  • convert the resulting value to an address using a “hash to address” service in blockchain explorers such as blockchain.com. Put this value after the slash and you obtain a “fake” address;
  • send the minimum amount of satoshis to that address to carry out the transaction (note: bitcoins cannot be returned). Once the block containing this transaction is mined, your message will be permanently recorded in that block.

On BitcoinStrings you can view textual records on the blockchain.

Pay-to-Fake-Key (P2FK)

To reproduce this method, insert the data as a fake public key (see Shirriff’s method). It allows up to 33 bytes of compressed data or 65 bytes uncompressed. The sent satoshis burn.

Pay-to-Fake-Key-Hash (P2FKH)

Using this method you must insert the message in the form of a fake public key hash (PubKeyHash) into the output script. This creates unspent UTXOs. This can deliver up to 20 bytes of data in each output, generating multiple outputs in a single transaction.

Pay-to-Fake-Multisig (P2FMS)

This method involves using a real public key together with one or two fake ones. In this way you can encode data with multisignature.

P2FMS differs from the previous options by allowing spending the Bitcoins. Each transaction contains several P2FMS outputs, and the fake public key enables transmitting up to 65 bytes per output.

Pay-to-Fake-Script-Hash (P2FSH)

We’ve already mentioned P2SH in the miners’ voting context. Transmitting messages via this scheme, but with a fake script hash, operates on the same principle as the fourth method (P2FKH). Arbitrary data is stored in the redeem script or in the input script that precedes it. The UTXOs created in the process are also unspendable.

Rick-rolling

Rickrolling is an old joke in which a serious text or image carries a hidden message. It originated from a prank where the victim, under the guise of a clip of Rick Astley’s Never Gonna Give You Up, is sent a hyperlink to another resource.

Bitcoin, not emojis: how to leave a message in the blockchain of the first cryptocurrency

In the Bitcoin context this means renaming part of the address to a desired word. These addresses in the transaction list will carry a message. But they are often regarded as spam.

Bitcoin, not emojis: how to leave a message in the blockchain of the first cryptocurrency

An example of a Rickroll.

Services for recording messages on the blockchain

If you are too lazy to figure it out yourself, developers have created a number of services:

  • Eternity Wall – is no longer available, but previously allowed saving a unique message in the blockchain and displaying it on an electronic wall.
  • BitScribble – allows sending up to 80 characters for 43 187 satoshis (0.00043 BTC). The service uses the OP_RETURN output, discussed above.
  • Apertus – a hardware solution that helps store and read data on different blockchains.
  • CryptoGraffiti – a visual journey through images that were encrypted in Bitcoin transactions.

How to read a hidden message

To read the encrypted message in a particular transaction, you need to locate the block hash into which it was included. Any explorer can help, such as Blockchain.com. Enter the transaction’s identifier into the search box. Choose the blockchain (Bitcoin or Bitcoin Cash), and in the “Hash” section find the required string.

Bitcoin, not emojis: how to leave a message in the blockchain of the first cryptocurrency

After this, you must translate the data into RAW format. You can use the API for “rawblock” or issue “getblock ‘hash’ 0” when working with Bitcoin Core. The output will have a varying number of characters. Copy them and paste into a HEX–ASCII converter (through the ASCII table it converts hexadecimal into readable text).

Although the resulting data block may contain information from all transactions in the block, not all of them contain a message. Messages may lie between many unrelated characters.

Spam and other problems

Once, an AMLBot client said that dust was sent to his address with the aim of “smearing.” It turned out to be ordinary spam and nothing dangerous.

Our partners at Crystal Blockchain analysed similar advertising campaigns. Here are two notable examples.

BestMixer case

BestMixer case

Crystal Blockchain’s team began investigating after several online forum users flagged suspicious transactions. They were all tied to the same signer—BestMixer. This is an anonymous online service for obfuscating Bitcoins with a high-risk profile.

BestMixer sent 57 transactions to roughly 47,000 addresses, each for 888 satoshis. These were either addresses with large Bitcoin balances or recently activated ones.

Crystal’s estimate put the cost to BestMixer at just 0.416 BTC. Yet users of Bitfinex and Bitflyer exchanges were charged deposit fees. At least 360 address owners paid 0.0004 BTC each (totaling over $950 at the time).

Laxo Trade case

Laxo Trade case

The team at Laxo Trade were somewhat more generous but caused potentially less harm. The screenshot above shows one of 109 transactions sent from the address 1LaxoTrQy51LnB289VmoSAgN6J6UrJbfL9, which begins with the organisation’s name.

The bulk of the campaign occurred on 6–7 September 2015 and targeted 12,173 addresses, with an estimated cost of only $68.

In conclusion

Now you know that you can write a message into the blockchain. Transactions hide many interesting things!

Follow ForkLog news on Telegram: ForkLog Feed — the full news feed, ForkLog — the most important news and polls.

Подписывайтесь на ForkLog в социальных сетях

Telegram (основной канал) Facebook X
Нашли ошибку в тексте? Выделите ее и нажмите CTRL+ENTER

Рассылки ForkLog: держите руку на пульсе биткоин-индустрии!

We use cookies to improve the quality of our service.

By using this website, you agree to the Privacy policy.

OK