Register an account 
Makechain V2 is address-native.
Accounts are address-native, and signer management is submitted directly to consensus.
Try it interactively
The generated Ed25519 key stays active in this browser and becomes the Makechain signer used by later write guides.
What an account means in V2
Your account identity is your owner_address.
- It is the 20-byte address of your wallet or passkey-derived account.
- It is valid even before any state row exists.
- Missing account state means default-zero bookkeeping.
Basic setup flow
- Connect the wallet or passkey that will be your
owner_address. - Generate an Ed25519 protocol keypair for fast Makechain message signing.
- Authorize that same key with
SIGNER_ADD. - Rent storage on Tempo.
- Wait for the relayer-backed
STORAGE_CLAIM. - Claim your canonical username with
USERNAME_CREATE.
What SIGNER_ADD does
SIGNER_ADD is the first key-management step in V2.
- The message envelope is signed by an Ed25519 key for transport integrity.
- Authorization comes from an EIP-712 custody signature from
owner_address. - The message also includes app attribution through
request_owner_addressandrequest_signature.
There is no relay-era fallback. SIGNER_ADD and SIGNER_REMOVE are the only signer-management paths.
Account lifecycle notes
ACCOUNT_DATAwrites profile fields such as display name, avatar, bio, and website.VERIFICATION_ADDlinks external ETH or SOL identities to the sameowner_address.- Storage expansion happens only through
STORAGE_CLAIMsettlement verification. STORAGE_CLAIMfunds raw storage only. Claim the canonical username separately withUSERNAME_CREATE, and replace it later withUSERNAME_UPDATE.
First successful STORAGE_CLAIM remains settlement-verified and does not require delegated-key authorization. Delegated-key scope SIGNING is required for username messages and other ordinary user messages.
Recommended app flow
In app clients, the preferred registration sequence is lifted above the raw protocol message:
- connect the wallet or passkey that will own the account
- generate an Ed25519 keypair and authorize it with
SIGNER_ADD - rent storage on Tempo with
rentStorage() - wait for Makechain to show the relayer-backed claim with
waitForStorageClaim() - claim the canonical username with
usernameCreate()
This keeps STORAGE_CLAIM as the protocol primitive while avoiding direct claim submission in the normal user flow.
CLI shape
The exact Rust CLI migration is still in progress, but the normative V2 model is:
- generate an Ed25519 keypair
- sign a
SIGNER_ADDtyped payload with the custody wallet - submit the signed Makechain message
- rent storage and claim the username
Use protocol/SPECIFICATION.md as the source of truth for field names and signing payloads.
Learn more
Next steps
- Create a project — submit your first project-scoped Makechain message
- Set up your profile — add display name, avatar, bio, and website metadata
- Verify your identity — link an Ethereum or Solana address to the same owner address