Stellar
dpo2u-stellar implements DPO2U's compliance-as-a-protocol vertical on Stellar using Soroban contracts: a canonical attestation registry, an association-set provider (ASP) that consumes it, and a privacy-pool lane with on-chain zero-knowledge proof verification.
Network
The repository README badges the network as Stellar Testnet and describes the repo as a "hackathon submission build". The SDK testnetClient() preset targets https://soroban-testnet.stellar.org with Networks.TESTNET.
The SDK also contains a mainnetClient() preset, but MAINNET_ATTESTATION_CONTRACT_ID is an empty string in the source, so no mainnet contract ID is versioned. This page makes no mainnet deployment claim.
Testnet attestation contract ID, as versioned in the SDK preset: CC4TJGDRWZOPGBWOOHBJF3N2VKUQRNIW6C6PTYHD7ZI3D42GBQRRZHM5.
Components
| Contract | Role |
|---|---|
protocol-registry | Canonical multi-issuer attestation registry with explicit revocation and scope per claim/jurisdiction. This is the registry of attestations. |
asp-mvp | Association-set provider: admits a member only when the registry verifies its claim (cross-contract, fail-closed) and exposes a deterministic append-only root. |
pool-adapter-mock | Mock pool adapter proving fail-closed gating by ASP membership. The source states it is not a real or private pool. |
privacy-pool | Symbolic fixed-denomination privacy pool with BN254 ZK membership withdrawals and a nullifier set. |
zk-verifier | On-chain Groth16 verifier over BLS12-381 ("private score, public proof"). |
por-verifier | On-chain Groth16 verifier over BN254 (proof of reserve), successor of zk-verifier. |
anticorruption-attestation | Minimal immutable attestation registry for the anti-corruption pilot. |
disclosure-helper | Bounded selective-disclosure grants cross-checked against the registry; stores no sensitive payload. |
defindex-rebalance-gate | Role gate for the DeFindex RebalanceManager that forwards calls only when a PASS attestation exists. |
agg-filing, por-filing, xchain-attest | Seals for aggregated multi-jurisdiction proofs, BCB 5710/5711 filings, and proofs relayed from an EVM chain. |
All descriptions come from the description field of each contract's Cargo.toml or its crate-level doc comment under contracts/.
Energy sectoral pack
The SDK ships an Energy (ANEEL/CCEE) policy pack in sdk/src/energy-policy.ts. Its predicate registry has four entries:
| Predicate | Citation | Deterministic |
|---|---|---|
energy_pld_range | REN ANEEL 1.032/2022 | yes |
energy_comercializadora | Lei 9.074/1995 plus CCEE enablement | no (signed attestation) |
energy_consumer_eligibility | Portaria GM/MME 50/2022 | no (signed attestation) |
energy_lastro_ccee | Art. 11 Lei 14.300/2022 (anti double-counting) | no (signed attestation) |
The file header notes that the energy layer is mostly attestation and oracle based, not self-contained numeric predicates.
MCP tool: submit_attestation_stellar
Submits a compliance attestation on Stellar/Soroban through the Pilot Gateway (POST /api/v1/attestation/submit). Required parameters: use_case_id, request_id (idempotent: replaying the same body returns the same attestation) and evidence. The tool requires the PILOT_GATEWAY_API_KEY environment variable on the server and returns chain: "stellar-soroban". It is the dual-chain counterpart of submit_compliance_attestation (Solana). The companion tool build_compliance_evidence produces the evidence object for the compliance_attestation_v1 use case. See the Tool catalog.
What is not claimed
Per the repository README: no production-ready privacy pool, no final MPC ceremony, no decentralized issuer governance/staking/slashing, no production custody or token movement, and no permissionless integration with an external instance whose admin DPO2U does not control.