B.BlockAxis⌕ Search
Menu

Sui: owned objects and shared state

Sui is a programmable Layer 1 that uses Move and an object-centred data model.

IntermediateContent revised · 10.10.20265 min reading · allow 5–10 more minutes for the workshopBlockAxis
← My learning journey
Workshop · 20 XP

Awarded once after a correct answer.

The question we will work through

Find the state that needs coordination

Useful first : From signing to settlement

Reading path · 41 / 41 · Intermediate

Key takeaway

Sui is a programmable Layer 1 that uses Move and an object-centred data model.

State organised as objects

Sui is a programmable Layer 1 that uses Move and an object-centred data model. SUI is its native asset, used for gas and staking. An object is not just a picture or an NFT: it is a piece of on-chain state with an identity, type and ownership rules. Coins and application resources can also be objects.

Ownership changes the rules

Ownership affects which transactions can use or change an object. An address-owned object is controlled through its owner’s authority. A shared object can be accessed by multiple users through the rules of its Move program. Immutable objects cannot be changed. “Shared” therefore does not mean that anyone may edit every field however they like.

Find the shared dependency

The useful question is which state two operations need to modify. Independent objects can permit independent work; two operations touching the same shared state require coordination. The object model does not mean that every operation is parallel, that conflicts disappear or that application logic becomes correct automatically.

A ticket and the last available seat

Compare an individually owned concert ticket with a shared seat inventory. Transferring an existing ticket and reserving the last seat are different operations. The second must respect a common availability rule. Read the object’s owner and the program’s permissions alongside the requested action; a friendly interface alone does not establish what a signed transaction will do.

Understand the details

Imagine two people each transferring their own ticket object. The objects differ, so these actions need not compete for the same ticket state. Now imagine both trying to reserve the final seat from one shared inventory. The program must enforce that seat’s availability. Ownership helps define who may submit a change; program logic determines which change is valid.

Boundaries and common mistakes

The ticket is a fictional application model, not a statement about a live ticketing service. Shared objects can enforce permissions. An object-based chain still needs consensus, careful programming and secure signing.

The mechanism at a glance

SEE THE CONNECTIONS
Find the state that needs coordinationFour connected ideas
  1. 01Object identity
  2. 02Ownership
  3. 03Allowed operation
  4. 04State dependencies

Read these as connected concepts, not necessarily consecutive steps.

Separate objects and shared inventoryTwo separate ticket transfers concern different state. Two reservations for the same last seat touch one shared inventory and must respect its single availability.SEPARATE OBJECTSTicket ANew holder ATicket BNew holder BSHARED STATERequest 1Request 2Inventory: 1 seat remainingOnly one valid reservation

Two separate ticket transfers concern different state. Two reservations for the same last seat touch one shared inventory and must respect its single availability.

Read the explanation

Imagine two people each transferring their own ticket object. The objects differ, so these actions need not compete for the same ticket state. Now imagine both trying to reserve the final seat from one shared inventory. The program must enforce that seat’s availability. Ownership helps define who may submit a change; program logic determines which change is valid.

The distinction that changes the analysis

01Permission to submit
02Valid state change

Two signed requests can both be authorised while competing for the same final seat in a shared inventory. Ownership and signatures answer who may request an action; the program must still preserve availability.

Explain it yourself

Revisit the case above. Name what is established, what remains to be checked and the evidence needed to conclude. A strong answer addresses both sides of the diagram.

Applied workshop · work at your own pace

Apply the lesson to a case

One shared inventory has a single seat left. Two requests both attempt to reduce the remaining count from one to zero and issue a ticket. Both requests have valid user signatures.

What must the application still establish?

Choose one answer.

Terms in this lesson
Gas
A measure of execution resources; gas units and the price per unit are separate quantities.
Prepare a correction note

Describe the passage and the proposed correction. This creates a local note for you to share; it sends nothing. Do not include personal or confidential information.

Sources and references

References for the mechanisms described. Numerical examples are hypothetical unless stated otherwise. Check the applicable version, network and jurisdiction.

References reviewed on 10 October 2026. All sources →