Limits and defaults
Every number, cap and default the Bloxchain Platform enforces, with why each one matters and where it is explained.
Deploying an account
Owner
Your connected wallet, the one that sends the deploy
Controls the account and approves delayed requests. The official factory refuses any other owner
Deploying wallet
A regular wallet (EOA), calling the factory directly
A deploy uses about 16.16M gas against a 16,777,216 per-transaction cap (EIP-7825), so a Safe or ERC-4337 account in front of the factory does not fit
Recovery
One valid, non-zero address, different from the Owner
It is the fallback when the owner key is lost, so it cannot be the owner
Broadcaster addresses
1 to 3, each unique
Separates authorising from submitting, so a compromised broadcaster is not a compromised owner
Time lock
1 day to 90 days on the official factory (Minutes, Hours or Days)
Zero would remove the cancel window
Address
Predictable: salt 0 and the next free index for your wallet
The same wallet, index and salt give the same address on every catalog network
Shell
Base (the official mint deploys Base); Web3 only on a custom network whose factory offers it, with a time lock of at least 1 day
Web3 lets external apps verify signatures from the account (EIP-1271)
Time lock
BasicAccount range
1 day to 90 days
Accounts from the official factory accept nothing outside it. The Sepolia developer toolkit (AccountBlox) allows from 1 second
Ownership transfer wait
Your current time lock
Transfer ownership is a delayed request, cancellable while it waits
A change takes effect
On requests made after it
Requests already waiting keep the delay they started with
Roles, signers and gates
Protected roles
Three, fixed at deploy: Owner, Broadcaster, Recovery
They are protocol security roles, not app permission roles
Custom roles
Each sets Max wallets when created
A role at its limit takes no further signer until you raise it
Gates
Permanent for that role
Only deleting a custom role clears its gates; system-role gates stay on
Actions installed at deploy
Every account registers thirty function schemas at deploy, grouped under ten operation names. You do not register these yourself; Add action is for functions of your own.
Five of the ten are the transfer and controller operations below, and they are what the Actions page shows: the operation name in upper case with the function signature underneath. The other five configure the account itself and appear on their own pages instead: OWNERSHIP_TRANSFER, BROADCASTER_UPDATE, RECOVERY_UPDATE and TIMELOCK_UPDATE on Security, and ROLE_CONFIG_BATCH on Roles.
CONTROLLER_OPERATION
executeWithTimeLock(address,uint256,bytes4,bytes,uint256,bytes32) (entry point)
7
A function selector is the first four bytes of the keccak-256 hash of the signature, identical on every network and derivable from the signature above, so it is not listed here. A future contract release that changes a signature changes its selector with it.
Schemas registered at deploy
30, under 10 operation names
A new account can already describe a transfer; what it lacks is permissions and allowlist entries
Built-in schemas
Protected: they cannot be removed or redefined
Remove action applies to functions you added
Non-revocable grants
27 of the 30 schemas
Everything except NATIVE_TRANSFER, ERC20_TRANSFER and ATTACHED_PAYMENT_RECIPIENT. A grant on any of the 27 is a permanent grant; only deleting the custom role withdraws it
A fresh account
Reads Flow incomplete on every row
The Vault state: registered but not permitted
Requests, allowlists and gas
Signed meta-transaction expiry
Shown when you sign, for example "Meta-tx expires in 1h"
After it passes, the signature is worthless and must be redone
Delayed request expiry
None; it waits for approval or cancellation
A delayed request will not lapse on its own
Allowlist entries
No published maximum; edits collect into one signed batch
An empty list allows nothing, so an unconfigured action is denied
Gas
Paid by the wallet that submits: requester, approver or broadcaster
No hidden relay unless you use the optional Bloxchain broadcaster
Networks and official addresses
Custom EVM networks
You add them in Settings → Networks
No official Protocol addresses; you supply them
BasicFactory (official factory)
0x6b6e4fb86ab52728d983d1a316ad9d8b48513215
Clones and initialises an account in one transaction
BasicAccount (account template)
0x234c0a76399456832a74fb29de3c78d13c22e182
Every account from the official factory is a clone of it
EngineBlox
0xb1fde79830ee7f748022922d07b3f19042ee6526
The shared state machine library, linked into BasicAccount
SecureOwnableDefinitions
0xeb6ca70bb64d1f87bb708460868c9b19f6987ed6
Definitions for owner, recovery and time lock changes
RuntimeRBACDefinitions
0x55ff61c065025e4a521532f1366981805230f988
Definitions for role configuration
GuardControllerDefinitions
0x8e8f6c8a11161214fdf04c702981bcd8b78f2fe0
Definitions for guard and allowlist configuration
CopyBlox (Sepolia developer toolkit)
0x928a2bd6c13e4f48a0850d2171a8d79b29959fc7
Open factory for experiments, Sepolia only. Not offered in the Platform deploy dialog
AccountBlox (Sepolia developer toolkit)
0x783eb64d7d5de55f6913f9cb42ef5a4c402884c0
Template for experiments, Sepolia only; time lock from 1 second
Account link shape
https://bloxchain.app/workspace/<chainId>/<address>
Read-only for anyone; acting needs a wallet holding a role
The BasicFactory, BasicAccount, EngineBlox and definition library addresses are the same on every network in the published address catalog. The CopyBlox and AccountBlox rows are Sepolia only. All of them ship in @bloxchain/contracts as official-deployed-addresses.json; read them from that file rather than copying them into code or environment variables. See Releases and compatibility for package versions.
Stored on this device
Sign-in, plans and organizations
Free
No account needed, open to everyone
The whole operating surface works signed out
Sign in
Live for people who already have early access; everyone else joins the waitlist from the same dialog
The Free path loses nothing meanwhile
Plans
Free, Pro, Team, Enterprise
Sign-in is an identity, not a plan. Pricing is shown at checkout or on request; Enterprise is contact us
Organization before checkout
Checkout required, and it shows no accounts
Not the same as Free
Watched addresses and alerts
Organizations on Pro and above only; follows and alerts per month capped per organization; Ethereum and Arbitrum One only
The cap is shared by all members. The page shows "Alert limit reached" at the cap
Reference prices
Resolve on Ethereum and Arbitrum One only
Everywhere else, Sepolia included, the Value column shows a dash
Related
Last updated
Was this helpful?