Sui, Walrus, Seal

A passport is only worth the proof behind it.

SourceLoop records are readable by anyone with the QR code, and checkable by anyone who wants to know whether the record has changed since it was published. Three components do that work, and each has one job.

Prototype. The anchor values on demo passports are placeholders. Production passports anchor at the moment of publication. User-created passports show "Not yet anchored" until on-chain writes are live.

  • Each published passport gets an object on Sui holding the hash of its evidence bundle and the moment of publication. Change one field and the hash no longer matches. That's the whole point.

    • One object per passport
    • Every version kept
    • Public, cheap to check
  • Certificates, geospatial files, lab reports and build records live as Walrus blobs. The passport references the blob id, so evidence stays retrievable without being pasted into a chain transaction.

    • Blob ids referenced by the passport
    • Content-addressed, so nothing silently swaps
    • Survives supplier turnover
  • Pricing, due diligence declarations and audit files are encrypted with Seal. Keys are released only to wallets that satisfy the access policy, so a public record can still hold private commercial detail.

    • Field-level encryption
    • Access policy held on chain
    • Buyer view without a data room

From evidence to anchor.

  1. 01
    Collect

    Suppliers submit certificates, geodata, lab results and build records against a claim.

  2. 02
    Grade

    Each claim gets a level from L0 to L5 based on who attested it and what backs it.

  3. 03
    Bundle

    Public and encrypted evidence are packaged, hashed and written to Walrus.

  4. 04
    Encrypt

    Buyer-only fields are sealed against an access policy before the bundle leaves the platform.

  5. 05
    Anchor

    The bundle hash is committed to a Sui object, timestamping the passport as published.

  6. 06
    Serve

    The QR code resolves to the passport, and anyone can re-hash the bundle to check it matches.

What an anchor record looks like.

Two demo passports, one with restricted claims and one where every claim is public. Every chain value below is a prototype placeholder and says so.

Battery pack, restricted claims

SL-BAT-2026-001 / PACK-60-0001
status
anchored
prototype value
sui object
0xDEMO_SUI_BATTERY_0x8f31c04a
prototype value
tx hash
0xDEMO_TX_BATTERY_5b7ad9e2
prototype value
walrus blob
DEMO_WALRUS_BAT_7q2Xh1TnZ
prototype value
bundle hash
DEMO_BUNDLE_BAT_1f0c93
prototype value
seal policy
0xDEMO_SEAL_POLICY_bf20a7
prototype value, 1 restricted claims
anchored
2026-03-29
prototype value

Black honey coffee, all claims public

SL-ID-2026-003 / BH-200-0001
status
anchored
prototype value
sui object
0xMOCK_SUI_OBJECT_0004
prototype value
tx hash
0xMOCK_TX_HASH_0004
prototype value
walrus blob
MOCK_WALRUS_BLOB_0004
prototype value
bundle hash
MOCK_BUNDLE_HASH_0004
prototype value
seal policy
none
every claim on this passport is public
anchored
2026-04-25
prototype value