BTC
ETH
HTX
SOL
BNB
View Market
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt

Parsing Ethereum: The Evolution of a Messaging App

ChinaDeFi
特邀专栏作者
This article is about 2515 words, reading the full article takes about 4 minutes
Let's take a look at the various ways Ethereum users use their wallets to communicate with the world and each other.
AI Summary
Expand
Let's take a look at the various ways Ethereum users use their wallets to communicate with the world and each other.


On August 11th, we saw one of the largest cryptocurrency hacks ever. $611 million from PolyNetwork stolen. The sheer number of hacks was not the only feature of the hack. Unlike most hacks, this one had an ongoing narrative accompanying it, fed by messages sent to and from the hacker's address. It even has a self-published Q&A series!

In this post, we take a look at the various ways Ethereum users use their wallets to communicate with the world and each other, take a look at:

  • Input Data Message (IDM)

  • non-standard IDM

  • verify signature

Input Data Message (IDM)

IDM is a term we coined to describe messages sent through input data fields in Ethereum transactions. Input data fields are used extensively to inform the blockchain which contract calls to make as part of a transaction. The data is written in hex, which can be decoded to show the exact function being called.


Raw hex input for a Uniswap V2 transaction.


The same input is decoded to reveal the function arguments.

However, the same field can also be used to enter hexadecimal data - when converted to UTF-8 encoding - represented as text.



Vitalik's news, burning 90% of his SHIBA tokens.

Identifying which of all transactions done on Ethereum is IDM is a challenge, because contract interaction transactions may be converted to UTF-8, and those transactions that should be messages may have some characters malformed.

From the information we can identify, their uses can be divided into:

  • Transaction Receipt/Note

  • Attribute description (JSON format)

  • dialogue

  • advertise

  • dialogue

Transaction Receipt/Note

The primary use of these messages appears to be in the form of receipts/bills. Such an example completely dwarfs the others when trying to find common words used in IDM that include a subset of addresses.


Bitfinex 3 addresses have sent over 117,000 transactions (presumably withdrawals).

Another example of a receipt is from the Anyswap: BSC bridge address. In this case, Anyswap takes the transaction hash of the user's deposit on BSC as the IDM in the Ethereum transaction they send to the user. Users can simply copy and paste the hash to BscScan.com to double check their BSC deposits.


See more Anyswap transaction receipts in this dashboard.

verify

Some addresses use IDM for verification. In one example, an address sends itself an IDM every day.

Checking IDM reveals that they follow the standard JSON format. We're not sure, but we can surmise that this is the daily validation of smart contracts added to the registry.

crypto begging

As long as there is a popular or newly rich address, bet another address will send them a message asking them to "help muh famili". Example message sent to Vitalik (Vb address):

Read through Vitalik's message here.

advertise

advertise

Different from begging information, some entrepreneurs will send IDM to popular addresses to promote their products. The address spammed over 150 addresses where IDM was promoting a campaign to raise funds for "Troll Hunters - The First Tokenized 3D Animated Movie." However, this fundraising does not appear to have been successfully completed.

list of facilitated deals

dialogue

dialogue

Finally, the most interesting IDMs for online busy people like us are on-chain conversations. The "heart-warming" exchange between two MEV robot operators is a prime example of the fruitful use of two-party IDM.

In the space of these 30 messages, two former online strangers and arbitrage competitors form a partnership, ensure better profits for both parties, and become friends!

Non-standard IDM

Non-standard IDM

While most IDMs are just sent as text, some require extra work to decode the message.

encrypted message

These messages combine the publicity of blockchains with the relative privacy of encrypted messages. Someone who wants to understand the contents of the message needs to decrypt it.

event log

event log

The second THORChain exploit uses this message as the message sent to the target, which needs to parse through the event log of 6 transactions and change the line-by-line input data view from Hex to Text. Future DeFi developers, please stick to the standard IDM approach!

byte

byte

Another non-standard form of IDM is to make the data (when converted to UTF-8) appear in byte format. For these cases, the reader needs to use such a tool to convert text from byte format to string format.

IDM, which takes the form of a long string of numbers, magically becomes human-readable.

Convert messages from this transaction to Vb addresses.

verify signature

Another type of message uses Ethereum but is not stored on-chain. Wallet owners can sign messages with their private key to prove that the message came from the signing address. Anyone can then verify the signed message using tools like Etherscan and Mycrypto.

Example of a message with a verified signature.

Etherscan keeps a record of messages signed with our tool. While this tool is primarily intended for contract creators to verify ownership of their contracts, it has been used by thousands of people in the community for a variety of use cases.

Why would users choose to use verified signed messages instead of IDM? First, these messages are not bound to a receiving address. Anyone logged into the Verify Signature page on Etherscan can see a list of these messages without navigating to a specific address. The UX for reading these messages is also simpler - users don't need to convert from hex to UTF-8. Perhaps most importantly, they do not incur transaction costs like IDMs.

By looking at these messages we can see that they serve a different purpose than in IDM.

30% of messages are used to verify their social media accounts.

  • 29% of messages used a format other than Etherscan to prove address ownership.

  • Only 9% of messages actually followed the Etherscan template.

  • Interestingly, as much as 1% of these messages were used to indicate shipments by courier services!

Aside from these uses, some interesting highlights include:

  • Identify accounts for transaction support

  • License to issue smart contracts

  • Apply for P2P Loans on Bitcointalk

  • Announcing the correct Twitter account for a DeFi project

  • Vote on Uniswap governance

  • Financial Audit Verification

  • Correcting wrongly sent USDT

  • Due to its Turing completeness, Ethereum can be used for everything other than DeFi or NFTs. Using it as an instant messaging app is one example. The space of this use case is broad and underexplored. We look forward to seeing more done on this!


ETH
Welcome to Join Odaily Official Community