Skip to main content

Why LUKSO needs a different explorer approach?

ยท 4 min read

The LUKSO blockchain is different than other EVM chains (the chains running the Ethereum Virtual Machine such as Ethereum, Polygon, Optimism...). Its value doesn't lie in the protocol, but in the standardised contracts that run on it.

The main difference: everything is built around a standardised smart account, which we call Universal Profile1.

Long story short, this allows users to do cool stuff but it also has an impact on how we can track transactions on blockchain explorers.

EOA vs Smart contractsโ€‹

On EVM chains, addresses can be either2:

  1. an Externally Owned Account (OEA)
  2. or a smart contract

EOA are cheap, "dumb", easy and we are used to it. If you use MetaMask, Rainbow, Rabby, ... -> you are using an EOA.

On the other hand, accounts based on smart contracts are... smart (wow no way?) and powerful but a bit complex to set up. However, when a user joins the LUKSO ecosystem, this user is highly encouraged to use a smart contract account - we call them: Universal Profiles - and doing so is also quite easy because the LUKSO Universal Profile Browser Extension takes care of everything for you.

Key takeaways

At this stage, simply remember:

  • on LUKSO, most users use a smart contract account (Universal Profiles).
  • on other chains, most users use an EOA.

Cool features of smart accountsโ€‹

There are a lot of cool features around smart accounts, but for the scope of this article, let's focus on "gasless" / "relayed" transactions.

Now that you have a smart account, you can ask someone else to send a transaction "in your name". Here is an example:

  1. you write a postcard for your Mom and sign it with your name
  2. you give the postcard to your friend Bob who will pay for the stamp and post it for you
  3. your Mom receives a postcard from you, paid by Bob.

With standard EOA, you can't do this. If you write the letter (read transaction), no one else besides you (your EOA) can send and pay for that letter.

Key takeaways

Universal Profiles allow you to ask someone else to pay for your transaction while preserving your identity3.

Blockchain explorers in a non "EOA first" eraโ€‹

In a full EOA world, things are quite easy. No one can "send letters for you". The sender of the transaction IS the "person" who is sending the transaction.

Here is an example: Tx 0x8e97...2177 on Ethereum.

A tx between 2 EOAs on etherscan

Etherscan shows the right information

  • 0x9522b6c62CAd5b8b8776aE6b95C09c1397fc7fBE (EOA) sends 0.008886624445326524 ETH to 0xb68fBCAE1CfEb1b7c3bD78caA8E15dAcaFCbF88c (EOA)

Easy ๐Ÿ‘Œ


Now, on a blockchain where most users use smart contract accounts (for instance, Universal Profiles), the person (or the company) who pays and sends the transaction might not be the real person (step 2 above: "Bob pays and sends the postcard for you").

Here is an example: Tx 0x44a1...b917 on LUKSO.

Sending 0.01 LYX from Hugo to Jean

Sending 0.01 LYX between two Universal Profiles.

  1. Hugo signs a transaction (writes the postcard) and gives it to the sender.
  2. The sender, let's call him John4, will buy the stamp and post the postcard on behalf of Hugo (read: pays transaction fees and sends the transaction).
  3. Jean "receives" the postcard.

If the blockchain explorer is not "smart enough" to understand what is going on, it will simply show the information as "John has sent a transaction related to Hugo" (even the value is wrong).

The tx as seen on EOA first explorer

How we see the transaction on an "EOA" first explorer. Spoiler alert: it is irrelevant.

On smart blockchain explorers which can decode these transactions properly, such as Txs.app, you can see the real activity:

The tx as seen on Txs.app

The tx as seen on Txs.app.

Conclusionโ€‹

When everyone starts using standardised5 blockchain accounts, it unlocks a lot of potential. However, to unlock this massive value, existing tools will need to evolve and very likely, new tools will need to be built. This is only the beginning ๐Ÿš€

Resourcesโ€‹

Footnotesโ€‹

  1. Based on LSP0 โ†ฉ

  2. https://ethereum.org/en/developers/docs/accounts/#key-differences โ†ฉ

  3. This is only one feature enabled by this, there are many more โ†ฉ

  4. The technical name is "Transaction Relay System" โ†ฉ

  5. https://docs.lukso.tech/standards/universal-profile/introduction โ†ฉ