When to use arrays vs mappings in Solidity?
Arrays are useful when you know the size of the collection in advance, and you need to be able to iterate over the elements in a specific order. Mappings are useful when you don't know the size of the collection in advance, and you need to be able to quickly lookup values. Here are a few specific scenarios where you might choose to use one over the other: 1. Use an array when you need to store a collection of items that need to be accessed by index. 2. Use a mapping when you need to asso...
Ethereum vanity addresses
Ethereum vanity address is a one-of-a-kind customized address that has portions of it chosen rather than being created at random. Why would you create a vanity address? First of all, it looks cool. The second thing it can help you with is to reinforce your brand and make you more noticeable. How to generate your own vanity address? Creating a vanity address is a straightforward trial-and-error process. When performing high-risk cryptographic operations, such as private key creation, it is imp...
Bored Ape Yacht Club: Smart Contract Breakdown
Bored Ape Yacht Club (BAYC) is a popular NFT collection created by Yuga Labs. In this post, we’ll go over BAYC smart contract code. The source code is available on EtherScan.ERC721BAYC is implemented as an ERC721 token, a standard that defines a set of functions that a smart contract must implement in order to be considered a compliant ERC721 token. These functions include the ability to transfer tokens, approve other addresses to manage your tokens, and check token ownership.ERC721 interface...
Co-founder & CTO of Blank. Building software and helping companies enter web3.
When to use arrays vs mappings in Solidity?
Arrays are useful when you know the size of the collection in advance, and you need to be able to iterate over the elements in a specific order. Mappings are useful when you don't know the size of the collection in advance, and you need to be able to quickly lookup values. Here are a few specific scenarios where you might choose to use one over the other: 1. Use an array when you need to store a collection of items that need to be accessed by index. 2. Use a mapping when you need to asso...
Ethereum vanity addresses
Ethereum vanity address is a one-of-a-kind customized address that has portions of it chosen rather than being created at random. Why would you create a vanity address? First of all, it looks cool. The second thing it can help you with is to reinforce your brand and make you more noticeable. How to generate your own vanity address? Creating a vanity address is a straightforward trial-and-error process. When performing high-risk cryptographic operations, such as private key creation, it is imp...
Bored Ape Yacht Club: Smart Contract Breakdown
Bored Ape Yacht Club (BAYC) is a popular NFT collection created by Yuga Labs. In this post, we’ll go over BAYC smart contract code. The source code is available on EtherScan.ERC721BAYC is implemented as an ERC721 token, a standard that defines a set of functions that a smart contract must implement in order to be considered a compliant ERC721 token. These functions include the ability to transfer tokens, approve other addresses to manage your tokens, and check token ownership.ERC721 interface...
Co-founder & CTO of Blank. Building software and helping companies enter web3.

Subscribe to 0xMarko

Subscribe to 0xMarko
Share Dialog
Share Dialog
<100 subscribers
<100 subscribers
Account abstraction is a paradigm to make blockchain accounts programmable.
Let's explore this a bit in the context of Ethereum.
Currently, there are two types of accounts on Ethereum: Contract Accounts and Externally Owned Accounts (EOA). For any transaction to occur on the blockchain, it must be initiated and paid for by an EOA, which is controlled through its private key.
The private key is used to create a signature that proves the account ownership to the blockchain. However, if the private key is lost, then the account and all its funds will be lost as well. You can't call Vitalik to get your keys recovered.
Account abstraction aims to resolve this issue by merging the two account types into one.
A single contract account will have the ability to transact with tokens and create contracts, eliminating the need for separate account types. With a single account type for all Ethereum accounts, developers can provide a smooth and seamless experience to users on a single account that has the capability to transact tokens and create new contracts.
Additionally, it will make it easier for developers to create more advanced protocols and services without having to distinguish between account types, as all transactions will be conducted within the EVM.
The motivation behind account abstraction also includes providing enhanced user experiences such as multi-signature security, creating lists of allowed or denied addresses, and gasless meta-transactions.
Account abstraction has the potential to bring the best of both worlds, greatly improving the user experience by moving towards a model where all accounts are contracts. Contracts can pay for gas, and users have the freedom to define their own security models.
Although account abstraction is not yet a reality, it has become a popular topic of discussion since the Merge.
Account abstraction is a paradigm to make blockchain accounts programmable.
Let's explore this a bit in the context of Ethereum.
Currently, there are two types of accounts on Ethereum: Contract Accounts and Externally Owned Accounts (EOA). For any transaction to occur on the blockchain, it must be initiated and paid for by an EOA, which is controlled through its private key.
The private key is used to create a signature that proves the account ownership to the blockchain. However, if the private key is lost, then the account and all its funds will be lost as well. You can't call Vitalik to get your keys recovered.
Account abstraction aims to resolve this issue by merging the two account types into one.
A single contract account will have the ability to transact with tokens and create contracts, eliminating the need for separate account types. With a single account type for all Ethereum accounts, developers can provide a smooth and seamless experience to users on a single account that has the capability to transact tokens and create new contracts.
Additionally, it will make it easier for developers to create more advanced protocols and services without having to distinguish between account types, as all transactions will be conducted within the EVM.
The motivation behind account abstraction also includes providing enhanced user experiences such as multi-signature security, creating lists of allowed or denied addresses, and gasless meta-transactions.
Account abstraction has the potential to bring the best of both worlds, greatly improving the user experience by moving towards a model where all accounts are contracts. Contracts can pay for gas, and users have the freedom to define their own security models.
Although account abstraction is not yet a reality, it has become a popular topic of discussion since the Merge.
No activity yet