Cover photo

Emerald’s Vision of SuperChain Accounts

At District Labs (Emerald team) we love the Superchain vision.

It embodies everything we care about in the Ethereum ecosystem: collaboration, experimentation, transparency and good vibes. Plus it’s a world class technical stack.

What’s not love to about Optimism?

Blockchains since inception has been a very β€œtechnical” niche. Catering to early adopters, risk takers and people who like to solve difficult problems. And we believe the Optimism Foundation, and the network of Open Source contributors, will continue to be the people who maintain that essential foundation.

But we’re entering a new era of onchain.

A time when building a successful product experience means hiding away all the complexities, jargon and baggage from the era before. It’s hindering the experience. Not making it better.

Superchain Account Mission

What is the Superchain Account mission?

Technically speaking it’s a a mission approved by the Optimism Collective. Outlining a vision for increasing key metrics: transaction volume and user retention.

https://github.com/ethereum-optimism/ecosystem-contributions/issues/136

More broadly, it’s an invitation to re-imagine the core Superchain user experience. To build an Open Source product stack focused on delivering high-impact onchain experiences and actions.

When asking people to form new habits, we can do 1 of 2 things:

  1. Reduce the friction.

  2. Incentivize the action.

Make it easier to form the habit and/or introduce a positive reward for starting.

For the Superchain Account mission this means removing the technical friction associated with completing multi-chain transactions and rewarding the users who take high-impact actions.

Ultimately the β€œblockchain adoption problem” can be split into 3 major areas of focus:

  • Reducing the steps to go from incentive to action.

  • Encouraging the creation of new habits.

  • Eliminating friction associated with completing an action.

And where each area of focus can be solved independently.

First and foremost is removing complexity involved with finding a new opportunity and subsequently taking action. Eliminate decisions that have to be made, buttons that have to be clicked and non-essentials steps to signing transactions.

The Emerald application is actively working towards this vision today.

Second, is rewarding users through incentives and continual high-impact opportunities. Each user has unique constraints and intents in mind when completing actions onchain. The best opportunities should automatically be presented to users according to their implicit/explicit goals.

Finally, abstracting away all technical difficulties through a of suite technical improvements: smart accounts, account abstraction, smart transactions, decentralized identity, etc…

  1. Superchain Application Experience - Information & Decision Making

  2. Superchain Account Platform - Technical Optimizations

  3. Superchain Action Stack - High-Impact Onchain Opportunities

A successful Superchain Account mission is a one that brings together a carefully crafted user experience, Open Source smart account platform and community driven standards for driving long-term transaction volume and user retention.

Instead of trying to tackle the problem as a whole, we believe chances of success will increase significantly if the Superchain Account mission is solved in distinct product phases.

  • Optimize the core wallet experience. Minimize the amount of steps required to go from incentive to action. Reduce the amount of decisions that have to be made.

  • Introduce smart accounts to increase transaction volume by minimizing the difficulty of signing transactions to complete meaningful actions.

  • Add smart transactions (rules and condition based intents), decentralized identity and a Superchain points standard to drive long-term transaction volume and user retention.

Phase 1: The Super(chain) App Experience

The Ethereum ecosystem is great because it’s open and permissionless. Users have choice. And that’s a good thing. But it’s a doubled edge sword. Because users don’t always want to be presented with an infinite number of choices.

At any one time there is a limited number of β€œright” choices.

And everything else is simply noise.

As outlined in the β€œIntent Engines - The Web 3.0 Search Engine Equivalent?” article, blockchains are "finite" space systems. An environment with measurable objects and knowable properties. They have no immediate side-effects outside of the β€œdigital world” in which they live i.e. it’s a self-contained state machine.

https://mirror.xyz/kames.eth/5h4OoLYAS3Ch7tsBFpTOqxFbV95oJUnQnbZrPtu25EM

It’s possible to automatically identify what the β€œright” choices are for each and every user.

Instead of requiring users individually traversing decision trees, what we want is machines traversing decisions trees with the users β€œintent” and β€œconstraints” in mind and recommending the highest impact actions to them directly.

Surfacing the best opportunities at the click of a button.

We believe the β€œSuper(chain) App Experience” is not something that presents an ever growing amount of information, options and choices to make. In fact quite the opposite. The perfect Superchain experience shows you the fewest options possible.

An application that infers what you want to do based on your wants, desires and habits.

Letting you complete those intents in as few steps as possible.

Phase 2: Superchain Account Platform

Smart Accounts and Account Abstraction (ERC-4337) are great technical achievements.

But we don’t want to sell users on the β€œhow” of these features.

We still need to bring together the best parts of smart accounts and account abstraction - just without making the technical frameworks the central focus.

  1. Seamless Transaction Bundling

  2. Single Signature Multi-Chain Transactions

  3. Expressive Multi-Signature Support (weighted permissions, roles and private key types)

  4. Account Recovery & Security Best Practices

  5. Paymasters & Solvers

All of these features should work in service to help users β€œget more done, in less time” and not be presented as improvements that help everyday users by default. They're features. Not products.

A Superchain Account platform needs to focus on a singular goal - get more done, in less time.

Eliminating the steps required to go from incentive to action.

Focusing on the β€œwhy” of smart accounts and account abstraction. Not the how. Today we show users the same token across between 5+ networks, each with unique balances, on most major wallet and portfolio home screens.

Why?

It’s a vestige of the previous blockchains era. Amongst many other things.

It’s not something we should bring into the Superchain Account era.

We need a fundamental shift in how we think about the blockchain user experience. A Smart Wallet product that helps users achieve what they care about most.

Getting more done, in less time. Everything else is just noise.

Phase 3: Superchain Action Stack

What features should be included in a modular smart accounts platform?

Probably a lot of things, but we have a few ideas of where to start.

SuperChain Points Standard

Points! They're the hot "thing" right now.

Taking off in applications, platforms and protocols like Friend Tech, Rainbow Wallet and Eigen Layer. Incentivizing users to perform specific actions and hopefully form new habits. But as of now points in the blockchain space are just "representation of status" and don't result in real world benefits.

But if we look at points in "traditional" applications they always result in a tangible reward.

A measurable benefit for being a loyal customer and regular user. Whether that's airline points to get free flights or buying 5 cups of coffee and getting the 6th one free. There is always a carrot at the end of the stick.

So why shouldn't that be the case for blockchains?

Why can't users redeem points for ERC-4337 Paymaster credits?

Points, instead of being an abstract representation, should result in users getting tangible benefits, like transactions being processed for free on the Superchain network. Instead of pitching users about the benefits of Paymasters and paying for gas using any ERC20 token, users should be given a product experience that integrates these benefits, in a way that is fun and engaging.

A points systems that reveals the power of Paymasters, without ever mentioning it by name.

Decentralized Identity

Identity has been an "illusive" feature since the start of Ethereum. Many people have, and continue, to attempt the solve the decentralized identity problem - it's hard.

As early contributors to uPort, we happen to also be familiar with the verifiable credential and decentralized identifier W3C specifications, and have a deep appreciation for just how difficult the problem truly is.

Will those standards one day (finally) become the backbone for decentralized identity?

To be honest, we don't know. Maybe... maybe not!

But we think it's worth creating a smart account native decentralized identifier solution, given the popularity of the EVM, and the potential to unlock the full power of a cryptographically powered Web of Trust atop the Superchain ecosystem.

Our Decentralized Identity System Decentralized Identifier standard (did:dis) draft aims to overcome many of the original limitations in the uPort smart account based DID standard and the current limitations of the did:pkh standard i.e. expensive to update and no key rotation.

We overcome these challenges by applying the same Ethos as Farcaster.

Sufficiently decentralized is far better than fully decentralized, if it practically meets user needs.

We do this through a combination of counterfactual instantiation and delegating DID management to offchain servers using the ERC-3668: CCIP Read: Secure offchain data retrieval standard.

β”Œβ”€β”€β”€β”€β”€β”€β”                                          β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚Clientβ”‚                                          β”‚Contractβ”‚ β”‚Identity Hub @ url β”‚
β””β”€β”€β”¬β”€β”€β”€β”˜                                          β””β”€β”€β”€β”¬β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
   β”‚                                                  β”‚             β”‚
   β”‚ did(...)                                         β”‚             β”‚
   β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Ίβ”‚             β”‚
   β”‚                                                  β”‚             β”‚
   β”‚ revert OffchainData(sender, urls, callData,      β”‚             β”‚
   β”‚                     callbackFunction, extraData) β”‚             β”‚
   │◄──────────────────────────────────────────────────             β”‚
   β”‚                                                  β”‚             β”‚
   β”‚ HTTP request (sender, callData)                  β”‚             β”‚
   β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Ίβ”‚
   β”‚                                                  β”‚             β”‚
   β”‚ Response (result)                                β”‚             β”‚
   │◄─────────────────────────────────────────────────┼──────────────
   β”‚                                                  β”‚             β”‚
   β”‚ document(result, extraData)                      β”‚             β”‚
   β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Ίβ”‚             β”‚
   β”‚                                                  β”‚             β”‚
   β”‚ answer                                           β”‚             β”‚
   │◄──────────────────────────────────────────────────             β”‚
   β”‚                                                  β”‚             β”‚

Resulting in a sufficiently decentralized and scalable EVM DID standard that brings forward the best properties of decentralized identifiers and verifiable credentials, without overburdening users with unnecessary technical details.

We have two prototypes to validate the potential of this approach.

Smart Transactions

First let's start with defining "smart transactions" because it's not something that is broadly talked about or discussed. Our definition of smart transactions is "rules and condition based intents" or more broadly "authorizations over dynamic blockchain state" which results in being able to express constraints for when and how a transaction can be executed.

The unique approach was "popularized" in the https://github.com/delegatable/delegatable-sol repo by Dan Finlay of Metamask. After being early contributors to Delegatable we decided to take the core concepts of modular rules/conditions enforcement for transaction and refine it to the most important elements for smart transactions.

Unlike ERC-6900 where "modules" are installed/enabled on a smart account, smart transaction modules are referenced during the transaction signing process and the calldata is evaluated at runtime.

The transaction signing process looks very different from a normal transaction.

It's a collection of transaction modules references, contained with an EIP712 data structure. And each module is responsible for "constraining" a specific part of the transaction or "enforcing" a desired outcome.

What are the benefits of this approach you might be asking?

It allows users to express complex transactions - only executable when certain onchain state conditions are met: protocol apy, tvl, volatility, price, borrowing power, etc... So instead of a requiring a user to sign each and every transaction, they can sign "smart transactions" i.e. rules and conditions based intents, which can be executed across time.

Will this technology be ready immediately? Probably not.

But we feel it represents the "end state" of the transaction primitive once a robust Superchain Account platform has been established. Instead of requiring users to constantly sign transactions for portfolio rebalancing or entering/exiting new position, smart transactions will lets users automate these actions by authorizing long-running intents/transactions.

Today users have to visit the Emerald application to manage their positions.

Completing a series of transactions to move assets across chains and into new protocols. After the introduction of smart accounts, users are still required to manually to changes positions, albeit just with less transaction signing.

With smart transactions, users aren't required to come back to the application, let alone sign more transactions to enter new positions. The users unique constraints and preferences are encoded in smart transactions, which enforces how/when solvers can execute actions on their behalf.

What's better than 5 clicks or less? 0 clicks!

Skin In The Game

District Labs is a recipient of Optimism Retroactive Public Goods funding for TurboETH.

We received roughly 49K OP tokens in the last round. And around 10k in the round previous.

As of now any funds spent have all been for Open Source contributions.

Moving forward, a minimum of $50,000 (denominated in OP tokens) will be used to fund Open Source contributions to Emerald. We anticipate using funds to support development of the frontend, smart contracts and backend infrastructure.

You can view our team Safe at 0x4B5509687117aE7308188753ECbAEd61B3B1233c

Conclusion

From our perspective the Superchain Account mission is a long game. Requiring multiple iterations and evolutions to meet users where they are today, and helping theme get to where we want them tomorrow.

  1. Superchain Application Experience - Information & Decision Making

  2. Superchain Account Platform - Technical Optimizations

  3. Superchain Action Stack - High-Impact Onchain Opportunities

A Superchain Account mission is not simply a technical challenge.

It's also a user experience and product challenge, where the right answers are not always obvious. Requiring a close examination of every level of the stack and weaving together a holistic product experience, that will take months and perhaps even years to fully realize.

Regardless of whether or not we get accepted to complete the Superchain Account mission, District Labs team is committed to helping the Superchain Account vision become a reality.

πŸ’  🟒

Emerald logo
Subscribe to Emerald and never miss a post.