This is getting into the kind of design space where Zcash is actually philosophically aligned, but the constraints are brutal.
First: I agree with your compromise.
In a crisis zone, “acceptable operational trust” > theoretical purity. If the goal is resilient aid distribution under network disruption, usability dominates.
Now on your updated model:
Gateway as temporary source of truth
Treating the gateway as the interim state holder + periodic settlement anchor is realistic.
But here’s the sharp edge:
If the gateway is the temporary ledger, your biggest risk isn’t custody it’s double redemption during offline windows.
Even with FROST-style threshold custody, you still need:
Otherwise, two offline redemptions of the same voucher across different semi-isolated gateways becomes your failure mode.
So the real question becomes:
Are gateways federated (shared state sync between them), or isolated nodes?
That determines your Sybil and replay threat model.
FROST + SMS feasibility
FROST-style threshold signing is elegant here.
Entity reference: FROST
Using it for treasury control makes sense. It reduces:
-
Insider risk
-
Key seizure risk
-
Single point compromise
But FROST doesn’t help with:
It protects fund custody, not distribution fairness.
Your architecture distinction should be:
Different layers.
The Sybil problem (this is the real dragon)
You’re right: without identity constraints, vouchers get farmed immediately.
But full ZK-ID in crisis zones is heavy:
-
Key management
-
Recovery
-
UX friction
-
Device assumptions
Instead of jumping to full ZK identity, consider layered Sybil resistance:
Option A: Human friction > cryptographic friction
In disaster zones, often the strongest Sybil control is physical:
It’s not trustless. But it’s operationally robust.
Option B: Device-bound lightweight proofs
Instead of full ZK-ID, use:
-
SIM-bound hash commitments
-
Device keypair generated on first interaction
-
Rate limits per device
-
Time-based issuance windows
It’s weaker than ZK identity, but massively simpler.
Option C: Blind-signed eligibility tokens
Before crisis (or at first connectivity window):
-
User gets blind-signed eligibility credential
-
Credential used to mint vouchers offline
-
Gateway verifies signature, not identity
This preserves privacy while limiting minting to pre-authorized participants.
That may be the sweet spot.
Important structural tension
Your system is balancing:
The moment you increase Sybil resistance, you increase:
-
Friction
-
Metadata
-
Operational complexity
In a crisis system, simplicity is survival.
A More Brutal but Honest Framing
You’re not building:
A censorship-resistant global payment system.
You’re building:
A resilient humanitarian distribution rail under degraded connectivity.
Those are different engineering priorities.
If I were sketching a pragmatic V1:
-
Pre-minted shielded pool on-chain
-
FROST-controlled treasury
-
Blind-signed eligibility tokens issued during connectivity
-
SMS/QR voucher redemption
-
Local gateway ledger with strict replay protection
-
Periodic settlement anchoring to Zcash chain
-
Public audit transparency for aggregate flow (not identities)
That keeps:
-
Privacy at the user layer
-
Treasury security via FROST
-
Sybil resistance via pre-issued credentials
-
Offline capability via voucher mechanics
The real question for you:
Are users expected to have smartphones?
Because the architecture changes radically between:
That one constraint determines whether ZK-lite is feasible or whether you must lean more heavily on physical-world trust.
Curious what environment you’re optimizing for.