Introduction
Sui is a decentralized permissionless smart contract platform specifically designed for low-latency asset management. What sets it apart is its unique approach to handling digital assets and its innovative consensus mechanism that enables parallel processing of transactions.
Sui has been getting a little bit of attention lately, because of many reasons:
1. In the year of 2024, Sui was up 400% it's price.
2. Even with big shakeouts of the market, Sui still managed to keep it's price high.
3. Community is growing, the number of developers and users is increasing.
4. Sui has had a huge growth in the last year, and it's still growing.
5. Sui has a lot of potential to be a gamechanger in the blockchain space.
These are some of the reasons why i wanted to talk about Sui because i've been using this blockchain for a while now and now i can't go to any other because of how good it is. Obviously all of this is subjective, there are a lot of blockchains that are fast and low on gas and latency, like Solana, Aptos, etc. But Sui is growing for a lot of reasons, and i think it's a good idea to talk about it.
Core Architecture
At its core, Sui leverages the Move programming language to define and manage digital assets. The platform's architecture is built around the concept of objects, with a clear separation between different types of objects to optimize performance.
Key Architectural Components
- Move-based smart contracts
- Object-centric data model
- Parallel execution engine
- Dual consensus mechanism
Let's compare this with other blockchains like Solana. First of all, a lot of people like me, think that Sui is going to replace Solana and flip it in market cap in a near future. Solana is good and it has demonstrated that it can handle a lot of transactions, but Sui is faster and cheaper. Also, Sui network is not down 99% of the time like Solana. Sui has indeed been down one time, but it was fixed very quickly.
Another key difference is Move. Sui uses Move, which is a programming language that is very similar to Rust. In my opinion, Move is way easier to use than Rust, and it's a lot more intuitive. This atracts a lot of developers to use Sui, and more people will build with it. Solana uses Rust, and it's a very hard language to learn, and it's not very intuitive.
While Solana does an amazing quantity of more than 5000 transactions per second, these are the transactions per second that Sui can do:
Transactions per second
- A Sui network with 100 globally distributed validators achieved peak throughput ranging from 10,871 TPS to 297,000 TPS on various workloads
- Sui's time to finality is ~480 milliseconds
Object-Centric Model
Sui's object model is one of its most distinctive features. Every piece of data in Sui is represented as an object with a globally unique identifier.
struct Obj has key {
id: VersionedID, // Globally unique ID and version
// Custom fields...
}
Object Types
- Owned Objects: Controlled by a single address
- Shared Objects: Accessible by multiple users
- Immutable Objects: Read-only, accessible by anyone
Let's see an example of a Move package:
# examples/move/first_package/Move.toml
[package]
name = "my_first_package"
edition = "2024.beta" # edition = "legacy" to use legacy (pre-2024) Move
# license = "" # e.g., "MIT", "GPL", "Apache 2.0"
# authors = ["..."] # e.g., ["Joe Smith ([email protected])", "John Snow ([email protected])"]
[dependencies]
Sui = { git = "https://github.com/MystenLabs/sui.git", subdir = "crates/sui-framework/packages/sui-framework", rev = "framework/testnet" }
[addresses]
my_first_package = "0x0"
[dev-dependencies]
# The dev-dependencies section allows overriding dependencies for `--test` and
# `--dev` modes. You can introduce test-only dependencies here.
# Local = { local = "../path/to/dev-build" }
[dev-addresses]
# The dev-addresses section allows overwriting named addresses for the `--test`
# and `--dev` modes.
# alice = "0xB0B"
And the move code:
// examples/move/first_package/sources/example.move
module my_first_package::example;
// Part 1: These imports are provided by default
// use sui::object::{Self, UID};
// use sui::transfer;
// use sui::tx_context::{Self, TxContext};
// Part 2: struct definitions
public struct Sword has key, store {
id: UID,
magic: u64,
strength: u64,
}
public struct Forge has key {
id: UID,
swords_created: u64,
}
// Part 3: Module initializer to be executed when this module is published
fun init(ctx: &mut TxContext) {
let admin = Forge {
id: object::new(ctx),
swords_created: 0,
};
// Transfer the forge object to the module/package publisher
transfer::transfer(admin, ctx.sender());
}
// Part 4: Accessors required to read the struct fields
public fun magic(self: &Sword): u64 {
self.magic
}
public fun strength(self: &Sword): u64 {
self.strength
}
public fun swords_created(self: &Forge): u64 {
self.swords_created
}
// Part 5: Public/entry functions (introduced later in the tutorial)
// Part 6: Tests
Source: Sui Documentation
Let's break down this Move code example to understand how Sui's object-centric model works:
Key Components:
- Struct Definitions:
Sword
- A game item withkey
andstore
abilities:key
makes it a Sui object that can be transferredstore
allows it to be stored inside other objects- Has properties: unique ID, magic power, and strength
Forge
- An admin object that tracks sword creation:- Has
key
ability but notstore
- Contains a counter for swords created
- Has
- Module Initialization:
- The
init
function runs once when the module is published - Creates a
Forge
object and transfers it to the module publisher - This establishes the initial admin capabilities
- The
- Accessor Functions:
- Provide read-only access to object properties
- Follow Move's principle of data encapsulation
- Enable other modules to safely interact with the objects
This example demonstrates Sui's object-centric programming model where each object has a unique ID and explicit ownership rules. The abilities (key
, store
) determine how objects can be used and transferred within the system.
Consensus Innovation
Sui implements a dual consensus mechanism that optimizes for different use cases:
Consensus Mechanisms
- Byzantine Consistent Broadcast: Used for owned objects, providing faster finality
- Byzantine Agreement: Used only for shared objects, ensuring consistency across multiple users
Let's examine each consensus mechanism in detail:
Byzantine Consistent Broadcast (BCB)
- Use Case: Single-owner objects and simple payments
- Key Benefits:
- Near-instant finality (1-2 seconds)
- Higher throughput due to minimal validator coordination
- Lower gas fees from reduced computational overhead
- Process:
- Owner signs and broadcasts transaction
- Validators check validity independently
- Transaction finalizes with ⅔ validator signatures
Byzantine Agreement (BA)
- Use Case: Shared objects and complex DeFi operations
- Key Features:
- Strong consistency guarantees
- Total ordering of transactions
- Protection against double-spending attacks
- Process:
- Validators participate in multi-round consensus
- Agreement reached on transaction order
- State updates applied atomically
Key Innovation: Sui's dual consensus approach allows it to optimize for different transaction types. Simple transfers can bypass full consensus, while complex operations maintain strong consistency where needed. This hybrid model significantly improves overall network performance without sacrificing security.
Visual Representation

Transaction Processing
Sui's transaction processing is one of its most innovative features. It uses a two-phase approach that enables parallel execution while maintaining safety:
Transaction Processing Phases
- Lock Acquisition Phase: Ensures exclusive access to input objects at specific versions
- Execution Phase: Parallel execution of the transaction and commitment of effects
Transaction Structure
A Sui transaction contains several key components:
// Transaction components
struct Transaction {
// The package object containing the Move code to execute
call_target: CallTarget,
// Input objects and arguments
inputs: Vec,
// Gas payment information
gas_info: GasInfo,
// Sender's address and authenticator
sender: Address,
authenticator: Authenticator
}
Object Handling
When processing transactions, Sui handles objects differently based on their ownership:
Object Processing Rules
- Owned Objects: Use Byzantine consistent broadcast - faster, requires only 2 round trips
- Shared Objects: Require full Byzantine agreement - 4-8 round trips to quorums
- Immutable Objects: Can be read concurrently without locks
Transaction Finality
A transaction reaches finality when:
- A quorum (>2/3) of authorities have processed and signed the transaction certificate
- The effects certificate is available, providing transferable proof of finality
- All causal dependencies in the transaction's path are also final
Understanding Quorum
A quorum in Sui refers to a threshold of authorities (validators) that must agree for a decision to be considered valid.
- Size: More than ⅔ (two-thirds) of all authorities by stake weight
- Purpose: Ensures Byzantine fault tolerance by requiring:
- Enough honest validators to prevent malicious actions
- Sufficient stake representation for network security
- Example: In a network with 100 validators:
- At least 67 validators must agree for finality
- Can tolerate up to 33 malicious validators
- Ensures safety as long as > ⅔ are honest
Note: Quorum requirements are based on stake weight, not just validator count. A validator with more delegated stake has proportionally more voting power.
Gas and Fees
Sui uses an EIP-1559-style fee mechanism, inspired by Ethereum's fee market model:
EIP-1559 Fee Model
EIP-1559 introduced a "base fee + tip" model that makes transaction fees more predictable and efficient:
- Base Fee:
- Automatically adjusts based on network congestion
- Increases when blocks are full, decreases when empty
- Provides a predictable starting point for users
- Priority Fee (Tip):
- Optional fee to incentivize faster processing
- Helps during high congestion periods
- Goes directly to validators
- Benefits:
- More predictable fees for users
- Better fee market efficiency
- Reduced fee volatility
tl;dr: Sui's fee model is designed to be more predictable and efficient, providing a better user experience.
struct GasInfo {
payment: ObjectRef, // Reference to gas payment object
max_gas: u64, // Maximum gas units allowed
base_fee: u64, // Protocol-defined base fee
tip: u64 // Optional priority fee
}
Fee Calculation
Total Fee = (Gas Used × Base Fee) + Tip
- Base fee adjusts algorithmically at epoch boundaries
- Tips help prioritize transactions during congestion
- Fees are distributed to authorities and their delegators
Error Handling
Transactions in Sui have all-or-nothing semantics:
Transaction Error Handling
- Atomic Execution:
- All changes are reverted if execution aborts
- No partial state updates are possible
- Object versions remain unchanged on failure
- Gas Charges:
- Gas fees are charged even for failed transactions
- Prevents denial-of-service attacks
- Compensates validators for computational resources
- Error Information:
- Detailed abort codes for debugging
- Module and function location of the error
- Stack trace for complex failures
- Common Error Types:
- Insufficient gas
- Invalid object references
- Authorization failures
- Move execution aborts
- Consensus-related failures
Note: While transaction execution is atomic, gas charges are not part of the atomicity guarantee. This ensures validators are compensated for their work even if the transaction fails.
Error Handling in Move Code
public fun transfer(obj: Object, recipient: address) {
// Example of error handling in Move
assert!(is_transferable(&obj), 0 /* error code */);
if (!is_valid_recipient(recipient)) {
abort 1 // Explicit abort with error code
};
// ... transfer logic ...
}
Best Practices for Error Handling
- Use descriptive error codes for different failure cases
- Validate inputs early to save gas
- Include proper error messages in assertions
- Handle expected failure cases gracefully
- Document error codes and their meanings
Scalability Features
Sui achieves horizontal scalability through several key architectural decisions and technical features:
Core Scalability Mechanisms
1. Parallel Transaction Processing
- Two-Phase Processing:
- Phase 1: Lock acquisition for object versions
- Phase 2: Parallel execution and commitment
- Lock Management:
- Distributed locks at object granularity
- Sharded across machines by ObjectID
- No global synchronization for owned objects
2. Object Storage Architecture
- Distributed Key-Value Store:
- Loose consistency requirements
- Horizontally scalable across machines
- Efficient versioned object storage
- Caching Strategy:
- Aggressive caching for read operations
- Distributed cache architecture
- Static data serving for light clients
3. Consensus Optimization
- Minimal Synchronization:
- Byzantine broadcast for owned objects
- Consensus only for shared objects
- Parallel agreement paths
- Version Management:
- Object-centric versioning
- Causal history tracking
- Efficient state updates
Key Innovation: Sui's scalability comes from minimizing global synchronization points and allowing parallel execution whenever possible. The system can scale by adding more computational resources, with quasi-linear throughput improvements.
Performance Characteristics
Throughput Scaling
- Resource Utilization:
- CPU: Parallel transaction execution
- Memory: Distributed object caching
- Network: Sharded communication
- Storage: Distributed state management
- Bottleneck Mitigation:
- No global locks for owned objects
- Minimal cross-machine coordination
- Efficient state commitment
State Management
Checkpointing and State Commitment
- Off critical path processing
- Distributed computation of state roots
- Efficient proof generation for light clients
- Periodic state pruning capabilities
Smart Contract Design Implications
To maximize scalability benefits, smart contract developers should:
- Design data models that minimize shared object usage
- Leverage owned objects for user-specific state
- Use immutable objects for shared read-only data
- Structure transactions to enable parallel execution
Note: The choice between owned and shared objects directly impacts transaction latency and throughput. Owned objects can process in parallel, while shared objects require consensus.
Safety & Security
Security in Sui is maintained through multiple layers:
Core Security Features
1. Object Safety
- Ownership Model:
- Strong ownership tracking
- Version-based access control
- Immutable object guarantees
- Resource Safety:
- Move's linear type system
- No accidental object duplication
- No accidental object deletion
- Explicit transfer semantics
2. Cryptographic Guarantees
- Transaction Certificates:
- Multi-signature validation
- Quorum-based certification
- Transferable proof of finality
- Light Client Support:
- Merkle proof verification
- Efficient state authentication
- Minimal trust assumptions
3. Byzantine Fault Tolerance
- Consensus Mechanisms:
- Byzantine consistent broadcast for owned objects
- Byzantine agreement for shared objects
- Tolerates up to f < n/3 malicious validators
- Fraud Detection:
- Cryptographic proofs of misbehavior
- Automatic detection of equivocation
- Stake slashing for malicious behavior
Sui implements a comprehensive security model combining Move's type safety, cryptographic guarantees through multi-signature validation, and Byzantine fault tolerance to protect against malicious actors while ensuring safe smart contract execution.
Move Type Safety
// Example of Move's safety features
struct Token has key {
id: VersionedID,
value: u64
}
public fun transfer(token: Token, recipient: address) {
// Type system ensures:
// 1. Token can't be copied (linear type)
// 2. Token can't be dropped (must be consumed)
// 3. Only this module can create/destroy Token
transfer::transfer(token, recipient)
}
Security Best Practices
Smart contract developers should follow these security guidelines:
- Access Control:
- Use capability objects for privileged operations
- Implement proper ownership checks
- Validate all inputs thoroughly
- Resource Management:
- Leverage Move's type system for asset safety
- Use appropriate ability constraints
- Handle all error cases explicitly
- State Management:
- Maintain object invariants
- Use versioning for upgrades
- Implement proper cleanup logic
Note: Sui's security model combines Move's static guarantees with runtime checks and cryptographic proofs to ensure safe execution of smart contracts.
Light Client Security
Verification Capabilities
- Efficient state verification without full node requirements
- Cryptographic proofs of object existence and ownership
- Transaction finality verification through certificates
- Support for cross-chain bridge security
Move Programming Model
What is Move?
Move is a safe and expressive programming language designed specifically for blockchain smart contracts.
Historical Background
- Origins:
- Originally developed at Facebook/Meta for the Diem blockchain (2019)
- Designed to address limitations in existing smart contract languages
- Now platform-agnostic and open source
- Key Innovations:
- First-class resources with linear types
- Built-in asset safety guarantees
- Module-based architecture for composability
- Adoption:
- Sui: Primary smart contract language
- Aptos: Core programming language
- 0L Network: Alternative implementation
- Growing ecosystem of Move-based projects
Core Features
- Safety:
- Static type checking
- Resource safety verification
- Formal verification support
- Performance:
- Efficient bytecode execution
- Optimized for blockchain operations
- Low runtime overhead
Note: Move's name comes from its ability to "move" resources between storage locations while maintaining strict safety guarantees - unlike traditional programming languages that copy data.
module {
struct declarations
function declarations
module initializer
}
Key Features
- Type-safe and resource-aware programming
- Module-based encapsulation
- Strong composability
Economic Model
The SUI token plays a central role in the platform's economics, serving multiple purposes in the ecosystem:
Token Economics Overview
1. Supply Characteristics
- Token Supply:
- Fixed total supply
- No inflation mechanism
- Controlled distribution schedule
- Distribution Model:
- Initial allocation to early stakeholders
- Validator rewards
- Ecosystem development fund
- Community incentives
2. Utility Functions
- Gas Payments:
- Transaction fee payments
- Storage fees for state management
- Computation costs for smart contract execution
- Staking Mechanism:
- Validator stake requirements
- Delegation opportunities for token holders
- Stake-weighted voting power
- Governance:
- Protocol upgrade voting
- Parameter adjustments
- System configuration changes
Key Point: The economic model is designed to align incentives between validators, delegators, and users while ensuring network security and efficiency.
Validator Economics
Validator Incentives
- Revenue Streams:
- Transaction fee shares
- Storage fee allocation
- Stake rewards
- Costs and Responsibilities:
- Infrastructure operation
- Security maintenance
- Network participation
- Slashing Conditions:
- Byzantine behavior penalties
- Downtime consequences
- Performance requirements
Delegation System
Delegation Mechanics
Token holders can participate in network security and earn rewards through delegation:
- Delegation Process:
- Flexible delegation amounts
- Multiple validator selection
- Epoch-based rewards
- Reward Distribution:
- Proportional to delegation amount
- Validator commission rates
- Performance-based adjustments
- Risk Management:
- Slashing protection mechanisms
- Unbonding periods
- Validator performance tracking
Fee Market
Fee Dynamics
- Reference Gas Price:
- Algorithmically adjusted each epoch
- Based on network utilization
- Predictable cost basis
- Fee Distribution:
- Validator rewards pool
- Delegator share calculation
- Stake-weighted allocation
Note: The fee market is designed to provide stable, predictable costs while ensuring efficient resource allocation during periods of high demand.
Storage Fund
Long-term State Management
- Dedicated fund for storage costs
- Sustainable state growth model
- Incentivizes efficient state management
- Supports long-term network sustainability
Community
Sui has a great community, in fact, is one of the most active and bullish communities i have ever seen. Like, we don't shut up about it. You know that meme of a linux user that has to talk about linux? We're that. We're that meme, but about sui.
Memecoins
Total market cap of memecoins in sui are less than $1B, that means that memecoins space are still pretty fresh and has a lot of room for growth. You can launch your own memecoins in sui in platforms like movepump, turbos or you can code your own token and open a liquidity pool for it in something like Cetus. Sadly, a lot of memecoins are still rug pulls or scams, there are even honeypots that pay dex boosts to get more people to scam.
Avoiding Scams in Memecoins
1. Red Flags to Watch For
- Contract Analysis:
- Hidden minting functions
- Blacklist capabilities
- Suspicious transfer restrictions
- Undocumented admin privileges
- Liquidity Concerns:
- Unlocked liquidity pools
- Single large liquidity provider
- Unusual price impact on small trades
2. Due Diligence Steps
- Community Research:
- Check team's background and history
- Review social media presence
- Look for independent audits
- Technical Verification:
- Test small transactions first
- Verify contract source code
- Check token distribution
Remember: If something seems too good to be true, it probably is. Always invest only what you can afford to lose and prioritize well-established projects with transparent teams.
Some examples of honeypots
These honeypots can trick any newbie into believing: "this thing only goes up", and then, it might trick someone into believing: "this has volume, this can't be a honeypot, right?". This volume is likely caused by bot activity and insiders, for example, you can see in the second image that the chart only goes up and then someone full clips a giant red candle. These are likely the insiders taking profit.


More tokens that are not scams
There are a lot of tokens that are not scams. For example, you can trust tokens that are built for a purpose. For example, we have Deep, Cetus and Send, which are great tokens, with great tokenomics and managed by great teams, also monitorized by Mysten Labs. Community tokens are also great, we can see some tokens that resisted huge shakeouts.
Suiyan incident
Suiyan is a memecoin i love so much. It isn't a community token because it has a development team behind, but it's a great example of a token that resisted a huge shakeout. Let's see the chart:
Suiyan terrorific shakeout that almost gave me a heart attack
I was eating my lunch and when i came back, my whole net worth turned to dust for a moment. Telegram chat was in pure CHAOS, everyone was panicking and then, the developer givar, explained everything. He got hacked by a fake zoom link.
"I'm stupid. I got hacked. A zoom link that asked me to update zoom and then installed something on my Mac that allowed the hackers to get access to all my funds on SUI. All the team wallets of Suiyan got drained except one that is locked through Streamflow finance that I dont have access to."
Even with that scary situation, a lot of whales started buying the floor and the token resisted an almost inminent death for any other token. This in an example of a huge community and a token you can trust.

AI Narrative
Artificial Intelligence tokens have been a huge trend in the last months. AI tokens are cryptocurrencies that leverage artificial intelligence technology or are focused on AI-related projects. On Sui, we've seen several interesting AI token projects emerge:
Key AI Token Categories
1. AI Infrastructure Tokens
- Computing Resources:
- Tokens for AI model training and inference
- Distributed computing networks
- Data storage and processing
- Development Tools:
- AI model marketplaces
- Developer frameworks
- Testing and deployment platforms
2. AI Agents
- Autonomous Agents:
- Self-executing smart contracts
- Automated trading systems
- Decision-making protocols
- Agent Networks:
- Multi-agent coordination
- Decentralized AI governance
- Collaborative learning systems
Note: While AI tokens show promise, it's important to evaluate their actual technological implementation rather than just marketing claims. Many projects use "AI" as a buzzword without substantial AI integration.
The integration of AI agents with blockchain technology creates new possibilities for autonomous decision-making and value creation. These agents can operate independently, execute complex strategies, and interact with smart contracts based on AI-driven insights.
Conclusion
In conclusion, sui represents a great advancement in the blockchain community. It's parallel execution model, it's move programming language, and it's architecture are all great innovations. By the day i'm writing this, sui is the third blockchain by Total Value Locked growth in 2024. It has $3.3B TVL and is growing at an absurd rate. Sui might be the new thing, our first objective might be to enter in the top 10 network by market cap. Once we enter there, we can reach top 5 easily.