AERE Network, Developer Documentation

Everything you need to build on AERE Layer 1: quickstart, JSON-RPC reference, deployed contract registry, faucet API, indexer API.

Open source on GitHub: aere-contracts · aere-sdk · aere-docs · aere-examples

Quickstart

Five minutes to your first transaction on AERE.

# 1. Add the network to MetaMask
Network name:    AERE Network
RPC URL:         https://rpc.aere.network
Chain ID:        2800
Currency symbol: AERE
Block explorer:  https://explorer.aere.network

# 2. Claim faucet (0.05 AERE drip, 24h cooldown per address)
Browse to https://aere.network/faucet.html

# 3. Send a tx (with ethers v6)
const provider = new ethers.JsonRpcProvider('https://rpc.aere.network');
const wallet = new ethers.Wallet(privateKey, provider);
await wallet.sendTransaction({ to: recipient, value: ethers.parseEther('0.01') });

SDK · @aere/sdk

Official TypeScript SDK wrapping ethers v6 with typed contract clients for every deployed AERE L1 contract. Designed for consumer neobank backends.

# @aere/sdk is not yet on public npm, install from GitHub:
npm i github:aerenetwork/aere-sdk ethers

import { AereClient } from '@aere/sdk';
import { ethers } from 'ethers';

const aere = new AereClient({ privateKey: process.env.OPS_PRIVATE_KEY });

// Multi-asset balance for any user
const p = await aere.getPortfolio('0xUser…');
console.log(ethers.formatEther(p.aere), 'AERE');
console.log(ethers.formatEther(p.waere), 'WAERE');

// Lock 100 AERE for 90 days at 15% APY
await aere.staking.lockTier90(ethers.parseEther('100'));

// Write KYC attestation on-chain
const oneYear = Math.floor(Date.now() / 1000) + 365 * 86400;
await aere.identity.addClaim(userAddr, 'kyc-tier-1', reportHash, oneYear);

// Watch for incoming AERE deposits, for a neobank webhook
const stop = await aere.watchTransfersTo(userAddr, tx => {
  console.log(\`+\${ethers.formatEther(tx.value)} AERE in \${tx.hash}\`);
});

Source + types on GitHub at github.com/aerenetwork/aere-sdk (gitea mirror: git.aere.network/aere-network/sdk-js). Wraps: staking, locked staking, governance, identity, bridge, swap, faucet, NFT marketplace, mining subscription. Full address book bundled, no manual constants.

Neobank reference backend

Working Express server demonstrating the full neobank-on-AERE integration pattern: signup, KYC attestation, multi-asset portfolio, on-chain savings, deposit-watching webhook. Source is available on the AERE gitea at git.aere.network/aere-network.

OPS_PRIVATE_KEY=0x… npm run dev
# Server on :4400 with routes:
#   POST /signup
#   POST /webhooks/baas/kyc-cleared       → writes AereIdentity claim on-chain
#   GET  /users/:id/portfolio              → AERE + WAERE balances
#   POST /users/:id/earn                   → returns tx instructions for client to sign
#   POST /webhooks/onramp/deposit          → MoonPay/Transak callback
#   Live block watcher                     → fires on user deposits

KYC attestation pattern

Two layers of KYC, independent:

  • Fiat KYC, performed by your BaaS provider (Striga / Dipocket / Modulr / etc) on signup. Returns a verified status + report hash via webhook.
  • On-chain attestation, the neobank backend writes the cleared status to AereIdentity against the user's AERE wallet. Smart contracts gate features (lending, higher limits, fiat off-ramp) by checking hasValidClaim(user, 'kyc-tier-1', kycOpsAddress).
// In the kyc-cleared webhook handler
await aere.identity.addClaim(
  userAereAddress,
  'kyc-tier-1',
  reportHash,                                     // keccak256 of BaaS report
  Math.floor(Date.now()/1000) + 365 * 86400,      // expires in 1 year
);

Wallet provisioning

AERE is non-custodial. Don't ask consumers to manage seed phrases, use one of:

  • Privy, email/social login, MPC + email recovery, ~1 day to integrate. Recommended.
  • Magic.link, similar pattern, slightly different recovery model.
  • Web3Auth, open-source, more configuration knobs.

Each provisions an EVM wallet keyed to the user's identity. Pass that signer into AereClient on the client side; the wallet works on chain 2800 immediately.

Network parameters

ParameterValue
Chain nameAERE Network
Chain ID2800 (0xAF0)
ConsensusHyperledger Besu QBFT, 0.5-second blocks (transitioned from 1s at block 2,138,451)
Native tokenAERE (18 decimals)
Genesis foundation alloc180,000,000 AERE → 0x0243A4f47D44b40b65D33f20329dE20D00c6f3C3
HTTP RPChttps://rpc.aere.network
WebSocket RPCwss://wss.aere.network
Block explorerhttps://explorer.aere.network
Indexer REST/WShttps://api.aere.network

Add to MetaMask

One-click form: /addnetwork.html. Or programmatically:

await window.ethereum.request({
  method: 'wallet_addEthereumChain',
  params: [{
    chainId: '0xAF0',
    chainName: 'AERE Network',
    rpcUrls: ['https://rpc.aere.network'],
    nativeCurrency: { name: 'AERE', symbol: 'AERE', decimals: 18 },
    blockExplorerUrls: ['https://explorer.aere.network'],
  }]
});

Faucet

0.05 AERE drip per address per 24 hours.

  • UI: /faucet.html, calls the on-chain AereFaucet contract directly.

JSON-RPC endpoints

Standard Ethereum JSON-RPC, plus the QBFT and ADMIN namespaces.

curl -s -X POST https://rpc.aere.network \
  -H 'content-type: application/json' \
  -d '{"jsonrpc":"2.0","method":"eth_blockNumber","id":1}'

# Methods enabled:
ETH, NET, WEB3, QBFT, DEBUG, TRACE, TXPOOL

Rate-limit: ~100 req/s per IP. Open a ticket at git.aere.network for higher quota.

EVM ruleset

AERE Network runs the Pectra + Fusaka EVM ruleset, both hardforks activated on 2026-05-31. Full functional parity with Ethereum mainnet post-Fusaka. Includes:

Pectra (activated at block 2,075,363):

  • EIP-7702, EOA delegation to smart-contract code (native account abstraction; works alongside ERC-4337)
  • EIP-2537, BLS12-381 curve precompiles at addresses 0x0b, 0x11 (G1ADD, G1MSM, G2ADD, G2MSM, PAIRING_CHECK, MAP_FP_TO_G1, MAP_FP2_TO_G2), cheap on-chain BLS signature verification, used for trustless cross-chain proofs
  • EIP-2935, Historical block hashes (up to 8,192 blocks back) available via system contract
  • Cancun pack, EIP-1153 (TSTORE/TLOAD transient storage), EIP-5656 (MCOPY), EIP-6780 (SELFDESTRUCT change), EIP-7516 (BLOBBASEFEE)

Cancun opcode set proven live on-chain: a canary contract AereCancunCanary (0x8DbFC002bB23124cBeCd7B4916c179D2AFd65498) demonstrates TSTORE/TLOAD (including the cross-transaction auto-reset), MCOPY, PUSH0, and BLOBHASH / BLOBBASEFEE returning correct values on chain 2800, inspectable via eth_call and eth_getCode.

Fusaka (activated at block 2,106,606):

  • RIP-7951, secp256r1 / P-256 signature precompile at address 0x0000000000000000000000000000000000000100. Fixed cost ~3,450 gas. Verifies signatures from Apple Face ID / Touch ID, Windows Hello, Android biometric APIs, YubiKey, TPM 2.0, EMV cards, and the EU Digital Identity Wallet. ~70× cheaper than Solidity-based verification.

Note: AERE has no consensus-layer beacon chain, so EIP-4788 (parent beacon block root) is set to zero each block, and EIP-4844 blob fields exist in headers but no actual blobs are produced. Fusaka EIPs that are consensus-layer-only or rollup-only (PeerDAS, FOCIL, EOF) are no-ops on QBFT.

Advanced cryptography & AI infrastructure

All of the following are deployed on chain 2800 and callable. Each carries an explicit honest-scope note. Read recording vs view-only carefully.

Post-quantum verifier suite

A broad set of NIST post-quantum signature verifiers (not key generation or signing) run on-chain. We are not aware of any other public chain that verifies all of these signature schemes on-chain (stated as a hedge, not an unqualified "world first"). Recording means a state-changing verifyAndRecord transaction fits the L1 per-transaction gas cap (EIP-7825, 224); view-only means verification is correct and demonstrable via eth_call (validated bit-for-bit against official NIST vectors) but a recording transaction would exceed that per-tx cap.

ContractAddressScope
AereFalcon512Verifier0x4E8e9682329e646784fB3bd01430aA4bA54D8fFCNIST Falcon-512, KAT-validated, recording (~10.5M gas)
AereFalcon1024Verifier0xF0aFA59BaB2058e4B6e6B424b7f76750F1F66e36NIST Falcon-1024, KAT-validated, view-only (recording ~21.7M gas exceeds per-tx cap)
AerePQCVerifier0x1cE2949e8cE3f1A77b178aF767a4455c08ec6F82WOTS+ (Winternitz one-time) hash-based, recording
AereXmssVerifier0x77b14E264D0bb08d304d4e0E527F0fCdFc88B112RFC 8391 XMSS many-time hash-based, recording (~1.56M gas); does not enforce one-time-per-leaf state
AereMLDSA44Verifier0xf1F7A6Acd82D5DAf9AF3166a2F736EE52C5F85AENIST ML-DSA-44 / Dilithium2 (FIPS 204), ACVP-validated 15/15, view-only (~52.9M gas)
AereHybridAuth0xc20390C9656ECe1AE37603c84E395bC898b3FAA1Authorizes iff BOTH ECDSA AND Falcon-512 verify over the same hash, recording (~10.3M gas)
AereConsensusPQCAttestor0xf3681Aa6444F79562683C26f9d5c369A479c87dDFalcon-512 finality attestation ALONGSIDE QBFT; does NOT replace ECDSA block signing (not consensus PQC)

Confidential compute (threshold MPC)

AereConfidentialCompute 0x2120350c124e4Cae2C9FfBB6E4942DB1d380c287. A 5-node committee (MPC reconstruction threshold 3, on-chain signature quorum 4) computes an agreed arithmetic circuit over parties' private inputs using real Shamir secret sharing (BN254 scalar field) and a real BGW multiplication gate. The MPC runs off-chain; the contract verifies a quorum of committee ECDSA signatures over the EIP-712 result and records it. Honest threat model: semi-honest (secure against a colluding minority below the threshold, not malicious-secure, no cheater detection). No owner backdoor can forge a result. TEE is not built: the host has no usable SEV-SNP/TDX/SGX attestation, so the pure-software secret-sharing path is used.

Parallel L2 execution & rollup validity

A real from-scratch Rust Block-STM parallel executor (~8.6-9.3x on 16 cores, parallel proven equal to sequential) is wired into the rollup sequencer. Honest scope: the L1 base runs Besu and executes sequentially; this parallelizes L2 rollup batches only. AereBlockSTMRegistry 0x98E2C3e615841919d173D8FF642514c5902E8A28 is a deployed opt-in read/write slot-hint registry (advisory). AereRollupValidity 0x38772063572DF94E90351e44ccbBEefD5F497fbd anchors a real SP1 Groth16 validity proof of the executor (epoch 0); it is a proof of concept over a bounded-VM executor (Transfer/Sweep/Increment/AmmSwap), not a full-EVM validity rollup.

Agentic + AI infrastructure

ContractAddressPurpose
AereAgentBond0x32E0015F622a8719d1C380A87CE1a09bcd0cB86ASlashable agent bond (WAERE); slashed value burns via AereSink
AereAIReputation0x781ef746c08760aa854cDa4621d54db6734bfeBFComposable 0-10000 agent reputation over the bond
AereAgentMemoryVault0x309b56BDf0E3F6C10783eB76c0C02127F933D641Portable user-owned agent memory; no admin
AereInferNet0xba76891DB84B9755613dE3A1c7F3902BB6bbf856EU AI Act Art.12 inference-log Merkle commitments; no PII, permissionless
ERC6551Registry0x7fFdA0AcDeB919938dB91dbEa779D841c833EF68Canonical ERC-6551 token-bound-account registry
AereTokenBoundAccount0xBc5e24180f3F75DC6b1965E4aaD3D4F184b6F9E2ERC-6551 account implementation (owned by the bound NFT)

Contract source is published and verified Sourcify-style (34 contracts), browsable at /verified-contracts.html.

Multi-prover ZK verifiers

Beyond SP1 (Groth16 + Plonk) and RISC Zero, the substrate now includes a KZG opening verifier and a real Halo2 verifier, and recursion has been demonstrated at scale.

ContractAddressPurpose
AereKZGVerifier0x6596307BD8f54d9A91FE364EBC3e594F200AC862KZG point-evaluation opening verifier; calls the live EIP-4844 precompile at 0x0A
AereHalo2Verifier0x414Cfe640B2770856d3D7262a7a3729f5c07dC55Real on-chain Halo2 (PLONKish, KZG-backed) verifier
AereProofAggregator0x6a260238890E740dB12b371E0C5d17a2470F84C5Recursive SP1 aggregation; demonstrated at scale (8+ child proofs folded into one Groth16 proof)

Modular ERC-7579 accounts (session keys + social recovery)

An ERC-7579-style modular account factory with pluggable validator modules. Proven live: a userOp signed only by a scoped session key executed through the live AereEntryPointV2.

ContractAddressPurpose
AereModularAccountFactory0xE3f45Ed4a81f982fF25ad172A72456a1833a440EERC-7579 modular smart-account factory (pluggable validators)
AereSessionKeyValidator0x6e03A3D7A4c90d6f8dD6F0BA1F6e8aB1F8990D26Scoped, time-bounded session keys (target/selector/expiry limits)
AereSocialRecoveryModule0x077514DB2a85F239145537e8334CC99d42c9D812Guardian social recovery behind a 48-hour timelock

Interoperability (Hyperlane v3)

A live Hyperlane v3 deployment on the AERE side with a working quoteDispatch. The USDC.e Warp Route rides this v3 mailbox: the AERE side is live and proven, while the Ethereum L1 leg still needs an L1 deployment and real ETH gas (pending).

ContractAddressPurpose
Hyperlane v3 Mailbox0x7BF113Ab1BCd2b6da01804764065776e3057605aLive Hyperlane v3 mailbox, working quoteDispatch (owner = Foundation multisig)
Hyperlane v3 IGP0x5e4B8e9b196B1c7b3Be86148769aB0047c79744cHyperlane v3 Interchain Gas Paymaster (owner = Foundation multisig)
AereWarpRouteV30x1f44573684aB6bC617e7200A19b940b05e4EE098USDC.e Warp Route on Hyperlane v3; AERE side live+proven, Ethereum L1 leg pending

Application-level building blocks (honest scope)

AereShutterMempoolV2 0x135100D523edA8D0AdC70e08af905dE5042A9310 is an application-level, opt-in threshold-encrypted anti-MEV mempool proof of concept. A Besu QBFT L1 has no protocol-level encrypted mempool, so this is not a base-layer feature and is not wired into consensus. AereStateRootAnchor 0x78b40a983E89c91Aefd8A62Be709bDF25ABB57cb anchors state/storage roots whose canonicity comes from the BLOCKHASH opcode; that reaches back only 256 blocks (~128s at 0.5s blocks), and EIP-2935 is not deployed on chain 2800, so there is no extended lookback window today.

Contract registry

All currently-deployed contracts on AERE L1 (chain ID 2800). Owner: Foundation 0x0243A4f47D44b40b65D33f20329dE20D00c6f3C3.

ContractAddressPurpose
WAERE0x7e84d7d66d5da4cfE46Da67CDEeB05B323e1f5e8Wrapped AERE (WETH9-style ERC-20)
AereTreasury0x687933AE7ea4927867AC227F1b60d476003e6119Timelocked foundation treasury
AereOracleV20xca69AA961D836516010Ae669a223Ce249490ACb1Multi-reporter median price feed (canonical, quorum-safe). Legacy AereOracle 0xf0A1…F399 remains the live read source until the Foundation repoints AereOracleAdapter.
AereIdentity0x658dD2CD1F798AAb19fEc8FF69A270B2d192CaD1DID registry + revocable claims
AereFaucet0xDdBe942aD9eB0F3E7C541BdCF7CC2cfA29d35aE40.05 AERE drip per 24 h
AereCardEscrow0xD1f7f12830AdCFd1B7676C8460B9e30602b1f059Consumer card settlement escrow
AereSecurity0xaD305e4D91e0a9160Bd338Fd1ecb2Ee1645daC44Security module
sAERE0xA2125bE9C6fd4196D9F94757Df18B3a2A5e650b0ERC-4626 staking receipt · variable staker-yield from the AereSink fee split (earns yield, not a validator seat)
AereLockedStaking0x21108c28A849b05aE6b7a3a5bc435C9Bc897E7AdFixed-term locked staking · 30d/10%, 90d/15%, 180d/22%, 365d/30% APY (yield product, not delegation-to-a-validator)
AereSink0x69581B86A48161b067Ff4E01544780625B231676Immutable fee router · 15/40/45 split feeding sAERE staker-yield, buyback, and burn
AereSwapFactory0xf0a8df7BDc25721892475B21271e52D77B0e84DCV2 AMM factory · 0.3% fee
AereSwapRouter0x7526B2E5526EfA84018378b60F2844Dad77523D8V2 periphery: add/remove liquidity, swap, native-AERE auto-wrap
AereBridge0x7eDa66cd93baAE19530839Bbb28ee36aC8aFAd68Federated lock-and-release bridge
AereMiningSubscription0xDad25d2163187DF8AAEcf9EA31b6355315Bb69f1On-chain name only · scheduled reserve distribution, not PoW mining
AereNFT0x3f9A9D9CAB005327869396C69bE226ef98039f1cERC-721 + EIP-2981 royalties
AereNFTMarketplace0x852e07F2619F7F4aD10d9f2aC681310301d995282.5% fee, royalty-aware marketplace
AereGovernanceStaked0x8D77C888e439C4fADb2e23F1567a0A1965F80bCbStaked governance · proposals + voting
AereLockedStaking0x21108c28A849b05aE6b7a3a5bc435C9Bc897E7AdFixed-term locks · 30d/10%, 90d/15%, 180d/22%, 365d/30% APY
AereFeeBurnVault0x696afDF4f814e6Fd6aa45CE14C498ed9375fB2c6Stateless protocol-fee burn endpoint (no admin, no withdraw)
AereYieldFarm0xF86Fb0Eb3262C4e93Dbb349d63023218a5Db713FLP staking → native AERE rewards (MasterChef-style)
AereMiningDistributor0x0607ad23534ee251f359D960f7a6823C6b876b26Merkle-claim reserve-distribution payout (per-epoch, deadline-sweepable)
AereEntryPoint0x19773ba45287A64B05d0BCBD59D1371BF51Bd5D2ERC-4337 EntryPoint for AERE paymaster stack
AereOnboardingPaymaster0x4058E406475Dbed7056Aee0c808f293F05fEa879Foundation-funded · 3 free txs/sender (lifetime) · 100/day sitewide cap
AereTokenPaymaster0x217f56a5b0C7f35abe4D2fff924A6c13B85d7243Pay AERE gas with any whitelisted ERC-20 (USDT/USDC/etc.)
AereStakeQuotaPaymaster0xE50464ca7E8E7F542D1816B3172a2330cFE384E8Stake AERE → daily free-tx quota
AereAppPaymasterFactory0xEC22603E8712cBc5c31E53370D10f1a80CcB4DF0Permissionless factory, each dApp deploys its own paymaster
AereMessenger0xe54c2329f0786CFE3420c566B646148D25477325Hyperlane Mailbox-compatible cross-chain message bus (multisig ISM)
AereIGP0x61B48615F490A23945988c92835eF35fdD86E837Interchain Gas Paymaster, collects AERE for outbound cross-chain relays
AereSpokePool0xCAB1DBA5f6F06198000C20a974d675f1B3181AbDAcross-v3-compatible SpokePool, deposit + fill + settlement for intent-based bridging
AereERC76830x67Fb9830e3a2BC06cEb641cfF3beD87b273ccb29ERC-7683 IOriginSettler, standards-compliant gasless cross-chain intents
AerePyth0xb7F3354C1E0C5ef89D8b1072a3CEa7FFEf2FfE3FPyth-IPyth-compatible pull oracle, publisher-signed price updates
AereOracleAdapter0xb28A23dc177794DEC2Cacd2738fCc6c5C1Fc4Fe6Unified price-quote interface, routes Pyth → legacy AereOracle fallback
AereRandomnessBeacon0x25b6317efD8C7d425210F56Ee1E204852CD8213CPermissionless drand verifiable-randomness beacon (Quicknet chain)
AereDrandConsumer0xeBA8De4f61c923a2E43eA8d7233Cf8e1Db5911B5Reference drand consumer (integration example/library)
AereCoinbaseSplitter0xb4b0eCe9011613A5b84248a9B42a0f309E6F01EcAtomic 37.5% → AereFeeBurnVault burn + 62.5% → validator (whitepaper §3.3 made real)
AereVaultRelayer0x9FCA122e87E36D7cba20DbEA7b9b7354A4Cece91Token allowance proxy for AereSettlement batch DEX
AereSolverRegistry0xDBD29332a9993d2816EF0bD240288E03a8103f3BPermissioned solver allowlist for the batch DEX
AereSettlement0x9C2957b1622567B4802E4AFd4c42FB2ec70dE875Batch-atomic settlement contract, MEV-resistant DEX
AereFeeMonetizationV20xb560bdFB8b8B918012e6481e3bcF473c79c2a850Developer fee-share NFTs (20%) + Foundation treasury slice (5%) per gas fee. Canonical; register() here. Deprecated V1 0x6b62…dd98 (fee-stream squat) must not be used.
SP1VerifierGateway0x9ca479C8c52C0EbB4599319a36a5a017BCC70628SP1 (Succinct Labs) proof verifier, stable address, routes by selector to v6.x Groth16/Plonk concrete verifiers
RiscZeroVerifierRouter0x3f7015BC3290e63F7EC68ecF769b00aB296a249CRISC Zero zkVM proof router, stable address, routes by selector to concrete Groth16 verifier
AereProofRegistry0x0A9b09677DbE995ACfC0A28F0033e68F068517EeMulti-prover attestation log, verifies via SP1 gateway + R0 router, permissionless program registration
AerePasskeyAccountFactory0xfB0eF980667A79Fe1AB69c5f2d512118F1B30739CREATE2 factory for passkey-controlled smart accounts (Touch ID, Face ID, Windows Hello, YubiKey, EU Digital Identity)
AereEntryPointV20x8D6f40598d552fF0Cb358b6012cF4227B86aF770ERC-4337 v0.7-shaped EntryPoint, handleOps, validateUserOp, deposits/withdrawals, paymaster dispatch
AerePasskeyAccountFactoryV20x5FFa9a6487DA4641a1A1e7900ff2bD4525D34fdAV2 factory, multi-owner (passkey + EOA), recovery, EIP-1271, ERC-4337 compat

Each contract is inspectable on the explorer at explorer.aere.network.

Indexer API (api.aere.network)

# Latest blocks
GET https://api.aere.network/api/blocks?limit=20

# Block by number
GET https://api.aere.network/api/block/12345

# Transaction by hash
GET https://api.aere.network/api/tx/0xabc...

# Address (balance, txs, contract code)
GET https://api.aere.network/api/address/0xdeadbeef...

# Network stats
GET https://api.aere.network/api/stats

# WebSocket: live block stream
wss://api.aere.network/ws

Cross-chain bridge

Federated 2-of-2 lock-and-release. Lock AERE on L1 → relayers gather signatures → mint wAERE on the foreign chain. Burn wAERE → release native AERE on L1.

# Lock
await bridge.lockAndBridge(toChainId, recipient, { value: amount });

# Foreign side
await counterparty.releaseFromL1(srcChainId, nonce, recipient, amount, signatures);

Run a validator

Hyperledger Besu QBFT image, 32-byte private key file, peer with the existing bootnode. See git.aere.network/aere-network/aere-node.

Open source on GitHub at github.com/aerenetwork (aere-contracts, aere-sdk, aere-docs, aere-examples). Docs PRs and issues welcome there; gitea mirror at git.aere.network.