Networks
Status
Section titled “Status”| Network | Chain ID | Status | Notes |
|---|---|---|---|
| Base Sepolia | 84532 | ✅ Live | Public test period in progress. Real EAS attestations on Base testnet. |
| Base mainnet | 8453 | ⏳ Pending | Mainnet deploy is held until the public test period closes. |
The OP-Stack EAS predeploys are at fixed addresses on every Base chain:
- EAS:
0x4200000000000000000000000000000000000021 - SchemaRegistry:
0x4200000000000000000000000000000000000020
Base Sepolia (current public test)
Section titled “Base Sepolia (current public test)”Each Fidemark network ships three resolvers + four schemas bound to the existing EAS predeploy: Human + AI on FidemarkResolver, Multi-party on FidemarkMultiResolver, Verified-human (World ID) on FidemarkPoPResolver.
| Component | Address |
|---|---|
FidemarkResolver (Human + AI) | 0xc17c1013479278d91065C40abDe9Ae86C3C5581d |
FidemarkMultiResolver | 0xB3c0D0eb17BcEeF4AFc0fD3A7024B87509051431 |
FidemarkPoPResolver | 0x25210Aa76A6e8EFeE070A2f849F652174d4Edd08 |
| Worldcoin verifier (Base Sepolia) | 0x42FF98C4E85212a5D31358ACbFe76a621b50fC02 |
| Schema | UID |
|---|---|
| Human | 0x036295c587e1bf82ab6f6ed881d1b5b2bc38eb69023ea2ed213cdf1a0d726a43 |
| AI | 0xf137529321d45cf2b2dbac4eb0f9d1d0d8b61cd16bb4c4dc10047eff68cc0a4b |
| Multi-party | 0x701078ea03836f41ce18d698cda3ea6857947a76ed19810b5611032bb5af6189 |
| Verified-human (PoP) | 0xad0644cdb97b0cd3731a21eef6e240429db367358b7498a770df02b3b9b6bc5f |
To get test ETH: Coinbase Developer Platform faucet or Alchemy faucet.
Selecting a network
Section titled “Selecting a network”Pass a network name to the SDK:
import { Fidemark, getNetwork } from "@fidemark/sdk";
const fidemark = new Fidemark({ network: getNetwork("base-sepolia"), // mainnet ("base") not yet live signer,});getNetwork(name) returns a NetworkConfig with the resolver address, schema UIDs, and a default RPC URL. Pass a custom provider to the Fidemark constructor if you want to use your own RPC.
Adding new trust-layer methods on an existing network
Section titled “Adding new trust-layer methods on an existing network”The resolver maintains an allowlist of accepted proofMethod values for the Human schema. New methods that don’t require new validation logic (e.g. an upcoming label that piggybacks on existing checks) can be added by the resolver owner without redeployment.
If a new layer requires different on-chain validation logic (multi-party signature recovery, World ID Groth16 verification, TDX quote verification), it ships as a new schema paired with a new resolver. Old schemas keep their guarantees forever.
Indexing for production
Section titled “Indexing for production”For high-volume use, the SDK’s verifyByHash (which scans events) becomes prohibitive. Migrate to:
- EAS GraphQL for read queries.
- A self-hosted indexer (Goldsky, Subgraph, etc.) for custom queries.
The on-chain protocol stays the same; only the read path changes. See Fidemark.verifyByHash for indexer-aware usage.