Reference
Protocol limits
Every consensus limit of Tenrai in one place. Transactions, work blocks, cuts, staking, sizes of keys and signatures, and the mass formula.
On this page
All values below are part of block validity. GET /v1/transactions/manifest returns the transaction limits of the network you are connected to.
Transaction
| Limit | Value |
|---|---|
| Wire size, witnesses included | 46 KiB (47,104 bytes) |
| Inputs | 8 |
| Outputs | 8 |
| Witnesses | 10 |
| Signature checks | 10 |
| Operation bytes | 10,000 |
| Payload | 1,024 bytes |
| Mass | 95,999 |
| Validity interval | 1,800 cuts |
| Minimum fee | 1 atom per unit of mass |
Mass
transaction mass = bytes
+ 2 × inputs
+ 3 × outputs
+ 4 × witnesses
+ 5 × operation bytes
+ 6 × payload bytes
work block mass = 1 + 2 × parents + sum of transaction massesUnsigned integers with overflow checks. Fees are compared to mass without rounding.
Work block
| Limit | Value |
|---|---|
| Header | 312 bytes |
| Body | 46 KiB (47,104 bytes) |
| Transactions | 10 |
| Signature authorizations | 10 |
| Payload bytes of all transactions together | 1,024 |
| Mass | 96,000 |
| Parents | 16 |
| Miner tag | 20 characters |
Cut
| Limit | Mainnet, Testnet | Testnet100 |
|---|---|---|
| Work blocks registered per cut | 250 | 300 |
| Work blocks per anchor in total | 250 | 300 |
| Work blocks executed per cut | 256 | 300 |
| Block bytes registered or executed per cut | 11,776,000 | 14,131,200 |
| Mass registered or executed per cut | 24,000,000 | 28,800,000 |
| Signature checks registered or executed per cut | 2,500 | 3,000 |
| Registration window | 96 cuts | 96 cuts |
| Stake exits released per cut | 256 | 256 |
| Equivocation proofs per cut | 1 | 1 |
Staking
| Limit | Value |
|---|---|
| Committee members | 64 |
| Validator records | 256 |
| Stake positions | 65,536 |
| Self-bond | at least 100,000 TRAI |
| Delegation | at least 1,000 TRAI |
| Unbonding | 10 days |
| Activation of a new validator | 2 epochs after its registration |
| Key or endpoint update delay | 2 epochs |
| Validator commission | 0.0% to 10.0% of delegated rewards, in 0.1 percentage-point steps |
| Commission activation | 14 epochs after scheduling |
| Heartbeat grace | 2 epochs |
| Heartbeats | One per validator and epoch |
| Attendance | 12 windows per epoch; signatures in 9 of them qualify a committee member for staking rewards |
| Jail | 2 epochs after a committee member missed attendance |
Sizes
| Object | Bytes |
|---|---|
| Identifier (transaction, block, cut, state root) | 48 |
| Spend lock | 41 |
| ML-DSA-65 public key | 1,952 |
| ML-DSA-65 signature | 3,309 |
| Inline witness | 5,262 |
| Referenced witness | 3,310 |
| Payment, 1 input and 2 outputs, first spend | 5,563 |
| Payment, 1 input and 2 outputs, later spends | 3,611 |
| Cut certificate, 64 signers | about 207 KiB |
Amounts
| Decimals | 8 |
|---|---|
| Smallest unit | 1 atom = 0.00000001 TRAI |
| Maximum supply | 200,000,000 TRAI = 20,000,000,000,000,000 atoms |
