Bixin Ventures: Why We Invested in the Next Generation Public Chain Aptos?
Original: Allen Zhao, Mustafa Yilham, Henry Ang & Jermaine Wong, "Portfolio Insights: Aptos"
Compiled by: Evan Gu, Wayne Zhang, Bixin Ventures
Introduction:
Bixin Ventures is pleased to announce a strategic investment in Aptos, a high-performance public blockchain based on Move. This round of financing continues from the new round of financing announced by the Aptos team in late July this year. This round is led by FTX Ventures and Jump Crypto, with participation from Apollo, Animoca Brands, Griffin Gaming Partners, Franklin Templeton, Superscrypt, and Circle Ventures. Previous investors a16z and Multicoin also continue to participate in this round. We hope to bring in more strategic partners to promote the development of the Aptos ecosystem, expand use cases, and foster the developer community. We also welcome entrepreneurs who wish to deploy products on Aptos to contact us and co-build the Aptos ecosystem.
A Blockchain Focused on Security and Scalability
Aptos is a brand new L1 blockchain with a vision to help billions of people create assets and access the network in a fair, decentralized, and permissionless manner. Aptos is also referred to as the "progeny" of Diem, with Solana co-founder Anatoly even considering Aptos as a direct competitor to Solana compared to other EVM blockchains. Aptos was co-founded by CEO Mo Shaikh and CTO Avery Ching. CTO Avery Ching was the technical lead for the most renowned Diem blockchain within Meta. Before joining Meta, Mo worked at Consensys, BlackRock, and Boston Consulting Group, while Avery worked at Yahoo. The other members of the Aptos team consist of PhDs, researchers, engineers, designers, and strategists who have previously worked at companies like Meta, Novi, Amazon, and VMware.
In this article, we will introduce the reasons why Aptos can achieve high TPS and how it ensures security, followed by an introduction to the upcoming roadmap, and finally, we will inform you how to access the soon-to-be-released mainnet.
1. Performance
The Aptos blockchain is designed to fully utilize any available hardware and enhance its performance through parallel execution of transactions. It currently achieves over 160k TPS and sub-second block finality. The key to Aptos's good performance lies in its ability to modularize the transaction lifecycle by separating the transaction layer from the consensus protocol using batched transactions, the parallel execution engine Block-STM, and a new state synchronization mechanism to reduce the time to finalize blocks.
- Batched Transactions through Availability Proofs
During the transaction sending process, validators group transactions into batches and merge them into blocks after reaching consensus. Execution, storage, and ledger verification are all processed in batches, optimizing the ordering system, reducing operational steps, and enabling parallel execution.
Transaction Processing Lifecycle
Transactions are transmitted in batches among validators. Subsequently, validators will sign each batch summary, and when signatures from over ⅔ of validators are collected, an Availability Proof (PoAv) is formed. PoAv ensures that the transaction batches will be stored locally by at least ⅓ of honest validators, who can then retrieve the transaction batches before execution. Therefore, during the transaction process, only the necessary batch metadata and proofs required in each block can be used for ordering, thus improving transaction TPS and minimizing the time to finalize blocks.
However, continuous propagation of batched transactions may trigger DDoS attacks, leading to insufficient memory and crashes among validators. To address this issue, Aptos attaches a timestamp to each batch of transactions to assist validators in garbage transaction collection, which also helps to free up memory.
Click here to read more about batched transactions, transaction propagation, and block ordering.
- Parallel Execution Engine: Block-STM
Block-STM is an efficient, multi-threaded parallel execution engine that theoretically achieves up to 160k TPS. Compared to other parallel execution technologies, Block-STM pre-declares all dependencies, avoiding restrictions on transactions or forcing them to be broken down into smaller parts. Block-STM can detect access conflicts within a predefined transaction order, thereby extracting the maximum transaction processing.
Here are the key features of Block-STM:
- Optimistic Concurrency Control: Transactions are executed optimistically and validated after execution. If validation fails, the transaction will be re-executed, and all associated transactions need to be re-validated before being committed.
- Multi-version Data Structures: All writes to the same location are stored with their associated versions to avoid conflicts during simultaneous writes when new transactions occur.
- Validation: During execution, transactions are divided into read sets and write sets. During validation, all memory locations in the read set will compare the returned versions with the corresponding versions in the write set.
- Cooperative Scheduling: Coordination of validation and execution tasks between threads is achieved through a counting-based approach.
- Dynamic Dependency Estimation: All failed validations will lead to an "ESTIMATION" value being recorded in the multi-version data structure of the associated write set. This ensures that all future transactions will wait for any dependencies to be resolved before proceeding.
Overall, Block-STM uses cooperative schedulers and multi-version data structures to estimate dependencies of pre-set transaction orders and reduce abort situations. Block-STM then uses a series of atomic counters to ensure that the entire block can be committed.
You can click here for more information about Block-STM.
- State Synchronization
State synchronization is a key aspect of Aptos's architectural design, and here are its key features:
- Short completion time: Reduces transaction processing time through rapid data propagation between nodes.
- Latest consensus: Brings crashed or new validators to the latest blockchain state.
- Data correctness: Prevents malicious actors from modifying or censoring data in the network.
- Increased decentralization: By increasing the frequency of rotating active validator sets and allowing more nodes to come online in a shorter time.
- Upgradeability: Management and configuration of validator nodes are achieved through on-chain state for rapid and upgradeable solutions.
To build this state synchronization protocol, Aptos must ensure the ability to:
- Persistent storage: Prevent machine failures and achieve data distribution through RocksDB.
- Verifiable blockchain: Validate the Merkle root and resulting state of submitted transactions through validators.
- Trust foundation to prevent malicious modifications of blockchain data.
This allows validators to synchronize to the blockchain at any time through the genesis block (the first set of validator nodes + initial blockchain state) and trusted path points (the hash of the current validator set + blockchain state). Aptos can synchronize state with other nodes (such as full nodes or other validator nodes) at a rate exceeding 10k TPS, with sub-second block finality and moderate hardware requirements.
- Data prefetching: Reduces the time to finalize blocks by prefetching transaction data (transactions + state increments) before processing.
- Pipelined execution and storage: Increases synchronized TPS by separating transaction execution from storage persistence.
- Peer monitoring: Optimizes peer selection when requesting new blockchain data through monitoring behavior, distance to the validator set, and local scoring.
- Data caching: Reduces the read load on storage by storing commonly requested data items and responses in memory.
- Storage cleanup: Prevents storage from bloating over time by removing unnecessary transactions and blockchain data.
To match Block-STM's achievement of 100K+ TPS, the Aptos team has identified optimizations to be made next:
- Batched transactions: Reduces costly validation and storage by validating proofs of batched transactions against single transactions.
- Network compression: Optimizes bandwidth for scalability by compressing transmitted data and serializing data distribution.
- Faster storage writes: Reduces the time to write blockchain data to storage by using more efficient data structures and storage configurations or alternative storage engines.
- Parallel data processing: Enables parallel data processing with sequential state synchronization through sharding or other methods.
Click here to read more about state synchronization on Aptos.
2. Security
- Smart Contract Programming Language - Move
Move was originally developed by Facebook for writing secure smart contracts. It is platform-agnostic and supports cross-blockchain shared libraries, tools, and developer communities. The design of the Move language emphasizes security, aiming to avoid many scenarios where Web3.0 users fall victim, including but not limited to re-entrancy vulnerabilities, poison tokens, and spoofed token approvals.
To provide additional protection, Move can be assisted by the Move Prover verification tool, which allows developers to write formal specifications for the critical features of their applications and use the verifier to check the correctness of code execution within 30 seconds.
The greatest advantage of Move is its asset data model, which allows for high composability. Move assets are arbitrary user-defined types, meaning assets can be passed as parameters, stored within other assets, and, more importantly, assets can move freely across contract boundaries without losing their integrity. This contrasts sharply with EVM-type assets written in Solidity, which are forever trapped within the contracts that define them.
Aptos extends the core MoveVM's additional functionalities through an adapter layer, including parallel execution implemented via Block-STM, allowing concurrent execution of transactions without any input from users.
Compared to Solidity (38.4K), Rust (68.9K), Ink! (950), and Cairo (786), the Move GitHub repository has a total of 264 stars. The current adoption rate is relatively low. However, as Aptos develops, we are willing to continuously monitor and track the usage of this language.
Click here to read more about the Move language on Aptos.
- Consensus Mechanism: AptosBFT
Aptos's consensus mechanism is derived from the HotStuff protocol originally designed for Diem, and the team has iterated it for the fourth time. Here are the key mechanisms of AptosBFT:
- Byzantine Fault Tolerance
- The network can only be threatened if it obtains the consent of more than ⅓ of malicious validators.
- Once confirmed by >⅔ of validators, it guarantees that the transaction has been completed.
- Separation of protocol liveness and security
- As long as Aptos's BFT consensus exists, the network will not fork.
- Prevents DDoS attacks on the network.
- Reputation-based leadership system
- Uses the last submitted state to track active validator nodes.
- Analyzes on-chain states and automatically rotates leadership nodes to adapt to unresponsive validators.
- Minimizes the impact of downtime.
Click here for a deeper understanding of AptosBFT.
Additionally, the Aptos team is testing its next-generation protocol on the work products of other research teams, including Narwhal & Tusk, Bullshark, and more advanced derivatives.
- Key Recovery and Rotation Protocol
Aptos will support any account to rotate its private keys, including the consensus keys of validators, to reduce the likelihood of key theft. The team is also researching key recovery methods that can be directly integrated into the blockchain account model. This will ensure that no monetary value is lost due to key loss and will lower the barrier for new crypto users to enter the blockchain world.
- Public and Transparent Transaction Pre-signing
Aptos will provide services that offer users precautions regarding transaction signatures. Before signing a transaction, the transaction result will be displayed in a human-readable format, allowing users to understand the permissions they are granting. Coupled with previous malicious attacks and the repository of smart contracts, this will help reduce the occurrence of fraudulent events.
3. Development Roadmap
Testnet
Aptos has established its testnet roadmap in preparation for a robust mainnet launch. The table below covers key objectives and important timelines:
The testnet has provided many valuable insights, further convincing us that the mainnet launch will be robust. Here are some issues and responses derived from the team's past testing:
Learn about IT1 (details) and IT2 (details).
As of the writing of this article, a performance snapshot of participants in AIT3 has been recorded, with nodes able to freely detach from the setup. AIT3 has been converted into a long-running testnet, providing developers with a stable environment. The establishment of a long-running testnet by developers indicates confidence in the long-term stability of the software stack, laying the groundwork for the successful launch of the mainnet.
After the mainnet, the team will run AIT4 in the fourth quarter for further stress testing and open the network to more validators. We will continue to monitor the project's progress.
4. Aptos Grant Program
The Aptos grant program was announced at the end of June and provides funding to accelerate the development of the dApp ecosystem. The segmented tracks for grant products include:
- Developer tools, SDKs, libraries, documentation, guides, tutorials.
- Tools and frameworks for system development, governance, DeFi, and NFTs.
- Core protocol contributions: token standards, libraries, protocol upgrades, etc.
- Open-source and public goods.
- Products in the area of guidelines.
Click here to learn more about application standards, guidelines, and review processes.
5. Current Ecosystem Status
As Aptos is a non-EVM chain, there may be questions about how it will guide liquidity within the ecosystem. With the help of partners and investors, the full-chain interoperability protocol Layerzero will be integrated after the launch of the Aptos mainnet, allowing users to access the Aptos ecosystem through Layerzero, providing liquidity for Aptos. Currently, Layerzero supports blockchains such as Ethereum, Optimism, Arbitrum, Binance Smart Chain, Avalanche, and others.
In terms of projects, there are over 2,100 forks and 3,800 stars in the Aptos core repository, and now there are over 200 projects across DeFi, NFTs, gaming, and more looking to deploy on the mainnet around the end of September.
Here are some interesting projects:
Pontem is one of the early projects in the Aptos ecosystem, including a wallet and a live AMM. As part of their roadmap, they plan to build a Move VM (for cross-chain deployment) and an EVM compatible with Move VM (for interoperability with other blockchains).
Martian Wallet is a crypto wallet that helps users manage digital assets and access dApps on the Aptos blockchain. They will be available in the future as a Chrome extension and iOS app. As of the end of August, downloads have exceeded 100,000.
Switchboard is a permissionless, customizable multi-chain oracle protocol for feeding general data and verifiable randomness. They are live on Solana and recently announced their devnet on Aptos. Switchboard has integrated with several notable projects, such as Tusnami Finance, Houston Swap, and Econia Labs.
Econia is a high-parallel DEX running on DecNet, using an on-chain order book model for trade matching. Due to its adoption of Aptos's parallel execution engine Block-STM, it has significant advantages in transaction speed and efficiency.
Currently in beta testing, Topaz is the first NFT marketplace on the Aptos network, providing a platform for NFT creators and artists.
Ditto Finance is a secure decentralized liquid staking platform on Aptos. Currently, there is a lack of native delegation on Aptos, providing staking rewards for users who cannot run validators.
Hippo Labs is building an aggregation layer for the Aptos ecosystem, including features such as transaction aggregators, various exchanges, text transmission, and transaction simulation APIs.
6. Conclusion & Thoughts
Aptos focuses on building a fast, secure, scalable, and upgradeable L1 blockchain. Although the security advantages of the Move programming language have been well established, the developer ecosystem is still in its early stages, which may impact the development of the dApp ecosystem on Aptos. On a broader level, the L1 space is highly competitive, with the emergence of many high-performance L2s creating fierce competition for attracting developers, which will affect ecosystem building and subsequent market adoption.
However, the results from the Aptos Devnet launched in March are encouraging, with over 200 projects across DeFi, NFTs, gaming, and more requesting deployment on the mainnet. Additionally, the Aptos grant program launched in June will further incentivize developer growth and accelerate dApp development.
Overall, we believe the team has the capability to achieve their vision. The recently launched incentivized testnet also demonstrates the team's proactive approach to problem-solving. We will continue to monitor information regarding the project's economic model and more.
If you are a startup team on the Aptos network or wish to deploy your product on Aptos, feel free to contact us for discussions!
Appendix: Full Node and Validator Node Requirements
Please note: The above requirements are as of the writing of this article and may change over time.
Aptos's full nodes do not participate in consensus. Instead, these nodes re-execute all transactions in the history of the Aptos blockchain and store the results locally. When any violations by validators are detected, they will use these results to challenge and provide evidence.
Validator nodes run a distributed consensus protocol while executing transactions and storing results locally. They can decide which transactions to include and in what order to execute them. The BFT consensus protocol is then used by validators to agree on the final ledger and execution results of transactions, which are then propagated to full nodes that can execute their verification processes.