Blockchain
April 3, 2024

Exploring Account Abstraction: A Guide to zkSync and Lit Protocol

The current wave of digitalization and the rise of blockchain technologies are now expanding beyond the basic notion of ownership. As we move from Web2 to Web3, user friction increases, and blockchain interactions remain challenging, particularly regarding account management and logins, discouraging many people from entering the Web3 scene.

Account Abstraction addresses this issue. It’s a blockchain-enabled solution that allows consumers to use smart contracts as accounts and create flexible wallet management rules. That’s why it holds great potential for reducing friction and implementing improved user rules and security measures in the crypto field.

Read this article to learn more about Account Abstraction, zkSync, and Lit protocol - and how they come together to provide a smoother and more secure user experience.

Definition and Significance of AA

Account Abstraction (AA) is a blockchain-enabled solution that lets consumers use smart contracts as accounts and establish flexible wallet management rules.

Account abstraction effectively cuts off the relationship between Externally Owned Accounts (EOAs) and smart contracts from the original and rigid ECDSA (Elliptic Curve Digital Signature Algorithm) digital signature system and the blockchain's consensus layer.

What exactly is ECDSA? It offers a validation framework for EOAs and smart contract accounts, using the private and public key pairing technique to oversee access control and task execution protocols for blockchain accounts. For validation, each transaction must run via this consensus layer.

The use of on-chain smart contracts to build the wallet and the governance rules around it is a significant innovation brought about by Account Abstraction. Such concepts have already been implemented in some smart contract accounts, notably Argent, or with little governance via on-chain multisig like Safe.

In terms of governance, several signers and quorums can be formed to perform specified operations. The user will interface with their smart contract, verifying that governance rules are satisfied before carrying out the actions. One advantage of running this logic on-chain with a Turing complete language is that it allows you to define any governance rules and execute signature verification for any algorithm.

ECDSA is the foundation of any solution based on AA or MPC. AA will serve as a simplification and a gateway for more users to adopt blockchain for everyday use.

Benefits of AA

By automating key management and improving the user experience, Account Abstraction wallets can potentially increase the adoption of blockchain technology. As this technology advances, it promises to increase accessibility and flexibility in the cryptocurrency sector, altering how we interact with digital assets. Whether AA wallets eventually outperform EOA and MPC wallets remains to be seen, but their influence on the crypto market is evident.

Problems Addressed by AA

Account Abstraction allows multiple atomic calls to different contracts in a single transaction, improving the user experience and security. For instance, ENS resolution can be performed directly by the smart account.

Account Abstraction also enables sophisticated operations at the account level, leading to creative techniques for account recovery. In this situation, users can nominate a group of trusted guardians to enable them access to their account if they lose it. EIP 5883 and the more current EIP 7093 both provide strategies for putting such social processes into action.

In AA, users can now choose a threshold and a set of conditions that will trigger the account recovery procedure in the case of access loss, potentially improving the user experience in crypto significantly.

Analysis of zkSync

Introduction to zkSync

Like Optimism and Arbitrum, zkSync is an Ethereum Layer 2 solution designed to mitigate the network's high transaction fees and poor performance. It employs zero-knowledge rollups to package transactions off-chain, lowering costs before returning the transaction proofs to Ethereum. This method assures security and verification by the Ethereum Mainnet.

The notion of zero-knowledge proofs is central to ZK-rollups, which are cryptographic tools that confirm a transaction without giving any specific data about it. The fundamental value of this method is that it moves most of the computational effort off-chain, leaving only the base layer to verify the proof.

AA Integration in zkSync

zkSync Era Mainnet showcases the power of Account Abstraction to transform the Ethereum ecosystem. As mentioned above, Account Abstraction overcomes the limits of externally owned accounts (EOAs) by enabling the creation of smart contract accounts. Because of the complete freedom in logic development, this results in a better user experience and increased security.

New features enabled by such smart contract accounts include the ability to use alternative authentication methods, pay gas in ERC20s with Paymasters, integrate allowlists and scam blocklists, schedule one-time and recurring transactions, and create unlimited account customization.

The implementation of AA has, however, encountered significant difficulties, and EIP-4337 has had to make concessions to prevent a hard fork. zkSync Era implemented Account Abstraction at the protocol level, resulting in a unified transaction flow, mempool, and validator/bundler function. This permits externally owned accounts to use Paymasters, which is a substantial advance over EIP-4337 and provides a smoother and more efficient user experience.

Use Cases of AA in zkSync

Real-world use cases of Account Abstraction and hyperchains and the corresponding smart contracts. Hyperchains can incorporate AA elements into their ecosystem, enabling users to use their accounts as smart contracts. This is feasible because hyperchain accounts may implement arbitrary logic and start transactions similar to EOAs.

AA is useful in a variety of ways, including:

  • Preserving the anonymity and security of smart contract wallets or protocols,
  • Allowing for one-click approval of asset dealing and swapping,
  • Simplifying the process of taking transaction fees in ERC tokens from any chain, independent of the fee logic used.

AA also supports cross-hyperchain wallet management, allowing users to manage and maintain wallets on several chains while still transacting with any chain.

Lit Protocol as an Alternative and Complement

Characteristics of Lit Protocol

Lit Protocol is a decentralized network and platform for key management and code execution across a variety of applications. It uses threshold cryptography to improve privacy and immutability while still giving end-users control.

Lit Protocol is based on current research in applied cryptography, secure enclaves, and distributed systems. This foundation enables developers to build apps with private data, simple wallet onboarding, asset management experiences, and immutable serverless functions that execute according to predefined rules.

Use Cases of Lit Protocol

Lit Protocol can be used for diverse Web3 applications, including:

  • DeFi: Including features such as conditional transaction execution and Infrastructure for recurring payments,
  • Infrastructure: This includes cross-chain bridges, off-chain data oracles, transactions that protect anonymity, and AA wallet signers.
  • Sovereign Data: Providing programmable credential issuance,
  • Web3 Social: Features private data in social apps, token-gated video streaming, decentralized chatbots, and on-chain reputation management.
  • Gaming: Wallet abstraction, conditional incentives, and private data in multiplayer games.
  • Token Gating for Web2 Apps: Control access to Shopify, Zoom, Google Drive, and WordPress with tokens.

Practical Applications and Case Studies

Application of zkSync and Lit Protocol

Lit provides client-side data encryption and decryption using on- or off-chain circumstances, eliminating the need for a centralized key custodian. First, Lit can be used to store data securely on the open Web by implementing encryption and access control.

Lit may be used to create complicated signature automation or to deliver smooth wallet onboarding experiences by utilizing Programmable Key Pairs (PKPs) and Lit Actions. PKPs are MPC wallets created and distributed around the Lit network, whereas Lit Actions are JavaScript methods that specify when, why, and what a PKP wallet will sign.

Real-world Examples

Orbis Club - Enables "friends-only" material and encrypted messaging.

  • Lens - Permissioned data for Web3 Social.
  • Starling Lab - Token-based data archives.
  • Streamr - Offers private data marketplaces.
  • Gather - Powers exclusive virtual places for your team.
  • IPFS - Allows encrypting material for private storage using IPFS.
  • WalletChat.fun - Provides encrypted wallet-to-wallet communications.

Other example applications include:

  • Token-gated Zoom calls.
  • Google Drive - Set access control criteria for your Google Drive files.
  • WordPress - Control access to WordPress websites and pages.
  • Unlockable NFTs - Using HTML NFTs, you may build protected content that only the NFT's owners can access. This includes dynamic material, such as webpages and metaverse spaces.

Challenges and Future of AA

Implementation and Adoption Challenges

Key obstacles for implementing AA in Ethereum's Layer 1 include:

Externally Owned Accounts (EOAs)

EOAs are fundamental to Ethereum's basic protocol. Modifying them to enable AA is a challenging task, especially given Ethereum's increasing value and usage.

Limitations of Ethereum Virtual Machine (EVM)

The EVM, Ethereum's smart contract runtime environment, has constraints that prevent AA implementation. Despite multiple AA suggestions since Ethereum's launch, they have been postponed because of the importance of other vital upgrades and enhancements.

Proponents are now advocating for the adoption of AA through Layer 2 solutions, rather than waiting for EOAs to be phased out and included in Ethereum's core. This method attempts to speed up the delivery of AA advantages to users while maintaining Ethereum's competitive edge in the rapidly developing crypto ecosystem.

Future Considerations and Development Directions

Multicall, a feature that combines multiple transactions into one atomic transaction, streamlines complicated processes, and lowers gas costs, is a practical benefit of Account Abstraction that guides its development direction.

Another advantage is Session Keys, particularly beneficial for blockchain games, enabling users to pre-approve engagement rules for a decentralized app, enhancing user experience while maintaining security.

Plug-ins contribute to account flexibility and modularity by empowering third-party developers to add functionality, while users can modify their accounts accordingly. This area is bound to see growth in the near future.

Detailed Analysis of Lit Protocol

Introduction to Lit Protocol

Lit Protocol represents an attempt to decentralize public key cryptography by using safe multi-party computation and threshold signature techniques (MPC + TSS). When executed on a distributed network of nodes (the "Lit Network"), the Lit program allows for the secure administration of permanent cryptographic keys for signature, encryption, and computation.

Both MPC and TSS are based on public key cryptography fundamentals and extend their benefits to multi-party and decentralized situations where the security and privacy of private key material, data, and computation are vital.

These solutions build on "traditional" public key infrastructure (PKI), eliminating the need for centralized key custodians, who act as a single point of failure. This considerably decreases the attack vector for key compromise by dividing ownership among several parties, limiting a single entity's capacity to wreak broad harm.

To take control, an attacker must successfully obtain control of more than a certain number of cooperating parties. In the Lit Network, this barrier is set at two-thirds, requiring involvement from two-thirds of nodes for signing and encryption.

Advanced Encryption Features

Lit Protocol offers support for asymmetric and symmetric encryption and the innovative ConditionedAccessControl.Encryption. Asymmetric and symmetric encryption is encryption to a specific key (recipient). It also has ConditionedAccessControl - the ability to determine with logical conditions who will be able to decrypt the message.

Lit basically allows you to encrypt and save any static material. This might be a file, a string, or anything that doesn’t change. You must store the material and metadata yourself (on IPFS, Arweave, or a centralized storage solution), and Lit will keep track of who has access to decode it and enforce this (also known as key management).

If you wish to utilize IPFS as a storage option, Lit has an encryptToIpfs function that simplifies the encryption and storage of encrypted data. You will be required to give an Infura ID and API secret key.

Access Control and Management

Lit Protocol offers developers a decentralized access control layer that may be used to encrypt material for private and permissioned storage on the open web. The Lit SDK includes utilities for client-side content encryption and decryption, as well as access control conditions (ACCs) that determine who may decrypt and access locked data. Lit allows for the use of both on-chain and off-chain data to define access control rules.

Integration with NFT and Encrypted Metadata

Lit lets users allow others to use their capacity credit NFT. For example, imagine User 1 who has a Capacity Credit NFT and wishes to let User 2 use it only for particular Lit Actions or another resource or combination of resources that they own.

They can establish a session capability object that can authenticate via an RLI NFT and request Threshold Execution against a certain Lit Action IPFS CID(s). User 1 then signs and delivers these powers to User 2.

User 2 can create an AuthSig by delegating equal rights to his session keys and including the capabilities provided to them by User 1 as evidence in the session object. User 2 can then build a SessionSig that asks User 1’s RLI NFT and Lit Action IPFS CID from the resourceAbilityRequests.

Support for MPC Keys

Lit Protocol supports MPC keys and allows Web3 developers to install white-labeled and programmable MPC wallets effortlessly. These non-custodial wallets may be used to streamline user onboarding while also increasing security.

The Lit Network generates keys and distributes them to each participating node. This implies that keys produced by Lit never exist in their entirety, and no one entity has the authority to deny service.

To use these keys (for example, when signing a transaction), a sufficient number of key shares must be gathered and aggregated. This two-thirds threshold design offers censorship resistance and fault tolerance that "typical" 2-of-2 MPC systems lack. In addition to any 2-of-2 provider's ability to refuse the user access to their funds or censor transactions, most of these systems need the end user to have a key share.

With Lit, the complete key is stored in the network, and any arbitrary authentication logic may be applied to that pair. This authentication logic decides which persons or credentials have the authority to control and utilize these keys. This allows the application developer or user complete flexibility over how interactions with the MPC wallet should be handled.

Community and Resources

Lit Protocol is surrounded by a vibrant community and offers rich education resources, documentation, and use case examples. Check out Lit’s awesome page to see all the examples, projects, and integrations.

Conclusion and Prospects

Account Abstraction is more than simply a technical enhancement; it’s a fundamental shift that has the potential to alter the user experience and security of blockchain dramatically. While complete Account Abstraction on Ethereum has been repeatedly postponed, its implementation on Layer 2 solutions has the potential to be a game changer.

Account Abstraction, by providing a more flexible, scalable, and user-friendly interface, might be the key to realizing blockchain technology's full potential for mainstream adoption.

Lit Protocol is essentially an effort to decentralize public key cryptography by utilizing safe multi-party projects, computation, and threshold signature systems. Both MPC and TSS are based on public key cryptography fundamentals and users can apply them to multi-party and decentralized situations where the security and privacy of private key material, data, and computation are vital.

These solutions build on "traditional" public key infrastructure (PKI), eliminating the need for centralized key custodians, who serve as a single point of failure. This significantly decreases the attack vector for key compromise by dividing ownership among several parties, limiting a single entity's capacity to cause broad harm.

Several AA solutions are now available on the market such as Venly Wallets, Biconomy AA, Alchemy AccountKit, and Thirdweb AA - each with unique pros and cons. Keep an eye on our blog for more resources that explore the AA landscape.

April 3, 2024