Slide 01 // Title

OBSCURA ๐Ÿ›ก๏ธ

Settle the invoice. Hide the price. Kill the double-spend.

Confidential B2B invoice settlement in USDC โ€” proving amount โ‰ค credit limit & paid on time without exposing the price โ€” with on-chain anti-fraud nullifiers.

Soroban ยท UltraHonk ยท SEP-41

settle_invoice(proof, inputs, ...)
โ†’ valid & unspent โ†’ paid โœ“
โ†’ replayed โ†’ nullifier reject โœ—

Stellar Hacks: Real-World ZK ยท DoraHacks

Slide 02 // The Problem

Public chains leak prices and enable invoice fraud.

Pricing leakage

Competitors monitor settlement contracts, read invoice values, and reverse-engineer your confidential wholesale pricing.

Double-factoring fraud

A supplier settles the same invoice with multiple financiers โ€” costing the trade-finance industry billions annually.

Slide 03 // The Solution

Confidential settlement with a fraud-proof nullifier.

Invoices tokenized as SEP-41 assets with encrypted metadata. The buyer settles with a client-side Noir proof โ€” amount within credit limit, paid on time โ€” never revealing the value.

๐Ÿ”’ Private

validity, not value, on-chain

๐Ÿšซ Fraud-proof

Poseidon2 nullifier blocks replay

โฑ๏ธ Terms

amount โ‰ค limit, time โ‰ค due

โšก Atomic

verify โ†’ nullify โ†’ pay

Slide 04 // Live Demo & Flow

What the judges see

$ npm run prove:demo

1. supplier mints SEP-41 invoice + AES-GCM envelope

2. buyer Noir proof: amount โ‰ค limit ยท time โ‰ค due

nullifier = Poseidon2(invoice_id, buyer)

3. settle_invoice(...) โ†’ UltraHonk via P26 MSM on-chain

valid & unspent โ†’ register nullifier, pay USDC โœ“

replayed โ†’ nullifier rejects โœ—

Settle the same invoice twice โ†’ the second reverts on the nullifier. Hosted app = UX sandbox; load-bearing ZK = prove:demo + deployed contract.

Slide 05 // Architecture & Tech

One pipeline, executed deep.

ZK Circuit

Noir / UltraHonk ยท range proof (amount โ‰ค credit line) + due-date check + Poseidon2 nullifier

Verifier

Rust/Soroban + rs-soroban-ultrahonk ยท Protocol 26 BN254 MSM ยท reads due_date & nullifier from bb's own public_inputs blob

Token

SEP-41 standardized invoice assets, ecosystem-compatible

Settlement

require_auth() buyer approval ยท ledger().timestamp() terms ยท event receipts

UltraHonk on-chain, consuming bb's native public_inputs bytes โ€” sidestepping the field-ordering bugs that break naive integrations.

Slide 06 // Market & Impact

A multi-trillion-dollar market bleeding to fraud.

$T+

global trade finance; invoice factoring alone is multi-trillion.

$B

lost to double-factoring fraud every year โ€” structurally invisible without a shared registry.

1st

on-chain primitive that protects pricing AND makes double-factoring impossible.

Slide 07 // Business Model

How Obscura survives the hackathon

01

Per-settlement fee โ€” basis points on each confidential invoice settlement.

02

Anti-fraud network โ€” financiers pay to query/contribute to the shared nullifier registry (value compounds with size).

03

Enterprise SaaS โ€” confidential settlement module for ERP / supply-chain finance platforms.

04

Cost moat โ€” sub-cent settlement beats legacy factoring reconciliation overhead.

Slide 08 // Competitive Edge

Why Obscura wins

Legacy factoring Public-chain settle Obscura
Price privacy โš ๏ธ paper โŒ โœ… ZK range
Double-factoring blocked โŒ manual โŒ โœ… nullifier
On-chain settlement โŒ โœ… โœ…
Terms enforced in ZK โŒ โŒ โœ…
Cost overhead gas sub-cent
Slide 09 // Traction & Validation

Built & verified, not vaporware

โœ… Verifies on testnet

Real Noir/UltraHonk proof accepted on-chain โ€” npm run prove:demo.

โœ… Negative control

Tampered inputs rejected on-chain.

โœ… Settlement hardened

settle_invoice reads real bb public_inputs (due_date/nullifier); broken to_xdr removed; double-spend guard tested.

โœ… Measured cost

ZK verify + settlement โ‰ˆ 144,562 CPU (~0.14% budget), ~51KB mem. 120+ assertions, 6-stage CI.

Slide 10 // Roadmap

30 / 60 / 90 days

30 DAYS

stellar.expert verified; live confidential-settlement + double-spend-rejection demo.

60 DAYS

Cumulative credit tracking โ€” global outstanding-debt state (today: per-invoice check only).

90 DAYS

Shared cross-financier nullifier registry, in-browser proving, first trade-finance partner.

Slide 11 // Team

Engineering leverage

Edy Cu

full-stack + applied-ZK engineer

Solo-built the Noir/UltraHonk invoice circuit (range proof + due-date + Poseidon2 nullifier), the Rust/Soroban settlement contract with the embedded rs-soroban-ultrahonk verifier and SEP-41 integration, the AES-GCM tokenizer, and the Next.js console. One of five real on-chain ZK products shipped for this hackathon.

Slide 12 // The Ask

Settle the invoice.
Hide the price.
Kill the double-spend.

Obscura gives trade finance its first on-chain primitive that protects pricing and makes double-factoring cryptographically impossible โ€” settled on Stellar.

npm run prove:demo  # try to settle twice โ€” it reverts