๐งพ DStash:
Verifiable Proof of Storage on Canton
๐ฏ Objective
Design and implement a decentralized Proof of Storage
(PoS) protocol built entirely on the Canton
Network using Daml smart contractsbeginning
with the implementation of a secure randomness
generator to power unpredictable challenge creation.
โ
Key Goal
- Enable trustless, auditable Proof of Storage using
cryptographic challenge-response protocols on the Canton ledger.
๐ง Milestones
๐ฅ Milestone 1:
Native VRF Randomness Generator
- Secure randomness generator to power unpredictable
challenge creation
- Implement a Daml-based VRFRequest/VRFResult
contract system.
- Develop an off-ledger VRF engine (e.g., using Ed25519 or BLS) to
generate:
- Deterministic randomness
- Verifiable proof
- Public key binding
- Store all outputs on-ledger for composable use by PoS verification
contracts.
- Output format:
seed โ (randomness, proof, publicKey)
โณ Timeline: 2 weeks
๐ฆ Deliverables: - Daml templates for VRF oracle -
Off-ledger signer service - Documentation + test script
๐ฅ Milestone 2: Proof
of Storage Protocol (PoS)
- Design a PoS protocol using Proof of Data Possession
(PDP).
- Link challenge generation to VRF randomness (e.g.,
seed = file hash + round).
- Implement contracts for:
StorageCommitment
ProofSubmission
ChallengeAudit
- Accept proofs from storage providers using Merkle tags or hash-based
checks.
โณ Timeline: 3โ4 weeks
๐ฆ Deliverables: - PoS contract templates -
Verification logic based on VRF randomness - Initial simulation and test
harness
๐ฅ Milestone 3:
Reputation, Incentives & Automation
- Add provider registration, staking, and slashing rules.
- Introduce challenge windows and automatic failure handling.
- Integrate triggers or orchestrator bots to automate challenges.
โณ Timeline: 2โ3 weeks
๐ฆ Deliverables: - Reputation scoring contract -
Slashing mechanism - Trigger-based challenge scheduler
โ๏ธ Tech Stack
| Smart Contracts |
Daml on Canton |
| Randomness Engine |
Off-ledger Ed25519/BLS VRF (Python or Rust) |
| Communication |
Daml JSON API, Triggers |
| Storage Proof Logic |
Merkle tree or hash-based PDP |
๐ Security Highlights
- Challenge generation is unpredictable and
verifiable.
- VRF proof tied to public key identity and ledger-visible.
- Storage proofs verified through deterministic contract logic.
- All steps traceable and auditable on the Canton ledger.
๐ Outcomes
- A fully deterministic, auditable Proof of Storage
system on Canton.
- A reusable randomness generation primitive for
other use cases.
- Foundation for future enhancements: Proof of Retrievability,
provider incentives, and decentralized network scaling.