### Terms and Conditions
- [x] I agree to the [Grant Agreement](https://9ba4718…c-5c73-47c3-a024-4fc4e5278803.usrfiles.com/ugd/9ba471_f81ef4e4b5f040038350270590eb2e42.pdf) terms if funded
- [x] I agree to [Provide KYC information](https://9ba4718c-5c73-47c3-a024-4fc4e5278803.usrfiles.com/ugd/9ba471_7d9e73d16b584a61bae92282b208efc4.pdf) if funded above $50,000 USD
- [x] I agree to disclose conflicts of interest
- [x] I agree to adhere to the [Code of Conduct](https://forum.zcashcommunity.com/t/zcg-code-of-conduct/41787) and [Communication Guidelines](https://forum.zcashcommunity.com/t/zcg-communication-guidelines/44284)
- [x] I understand all milestone deliverables will be validated and accepted by their intended users or their representatives, who will confirm that the deliverables meet the required quality, functionality, and usability for each user story.
- [x] I agree that for any new open-source software, I will create a `CONTRIBUTING.md` file that reflects the high standards of Zcash development, using the [`librustzcash` style guides](https://github.com/zcash/librustzcash/blob/main/CONTRIBUTING.md#styleguides) as a primary reference.
- [x] I understand when contributing to existing Zcash code, I am required to adhere to the project specific contribution guidelines, paying close attention to any [merge](https://github.com/zcash/librustzcash/blob/main/CONTRIBUTING.md#merge-workflow), [branch](https://github.com/zcash/librustzcash/blob/main/CONTRIBUTING.md#branch-history), [pull request](https://github.com/zcash/librustzcash/blob/main/CONTRIBUTING.md#pull-request-review), and [commit](https://github.com/zcash/librustzcash/blob/main/CONTRIBUTING.md#commit-messages) guidelines as exemplified in the `librustzcash` repository.
- [x] I agree to post request details on the [Community Forum](https://forum.zcashcommunity.com/c/grants/33)
- [x] I understand it is my responsibility to post a link to this issue on the [Zcash Community Forums](https://forum.zcashcommunity.com/c/grants/33) after this application has been submitted so the community can give input. I understand this is required in order for ZCG to discuss and vote on this grant application.
### Application Owners (@Octocat, @Octocat1)
@MrHashFox0x
### Organization Name
HashFoxLabs
### How did you learn about Zcash Community Grants
Zypherpunk Hackaton
### Requested Grant Amount (USD)
75000
### Category
Media
### Project Lead
```project-lead.yaml
Name: Alex
Role: Founder / Developer
Background: Full-stack development with focus on privacy-preserving technologies
and zero-knowledge systems. Experience building decentralized applications with
blockchain integration
Responsibilities:
- Frontend architecture and user experience design
- IPFS integration and decentralized storage management
- NEAR Protocol smart contract development and deployment
- zkApp development for Mina credential verification system
```
### Additional Team Members
```team-members.yaml
Name: Shay
Role: Developer / Co-founder
Background: Finance expertise with technical development experience. Leveraging
background in traditional finance and AI to translate market concepts into
automated algorithms and decentralized systems
Responsibilities:
- FROST threshold signature implementation and coordination
- Zcash shielded transaction integration and testing
- Cross-chain architecture design (Zcash ↔ NEAR ↔ Mina)
- Privacy-preserving cryptographic protocol development
```
### Project Summary
ZKFIED is a censorship-resistant whistleblower platform that combines Zcash shielded transactions, FROST threshold signatures (3-of-5), and zero-knowledge proofs to protect source anonymity while ensuring evidence integrity through decentralized storage (IPFS) and cross-chain verification (NEAR Protocol, Mina zkApps). The platform eliminates single points of failure present in traditional whistleblower systems like SecureDrop and WikiLeaks by leveraging cryptographic primitives that prevent server seizure, metadata leakage, and evidence tampering.
### Project Description
ZKFIED addresses fundamental security failures in traditional whistleblower platforms (SecureDrop, WikiLeaks, GlobaLeaks) that have led to source exposure, evidence tampering, and financial censorship. The platform leverages Zcash's shielded pool as the foundational privacy layer for a censorship-resistant evidence submission system where whistleblowers can anonymously submit verifiable evidence without centralized servers, single points of failure, or metadata leakage.
Current Production Status:
- Frontend: https://zkfied.vercel.app
- Backend: https://zkfied-frost-testnet.fly.dev
- NEAR Contract: reg.mrhashfox.testnet
- Mina zkApp: B62qjLQo287BXoYZBweHfRN5bikWUFdc81rqECVEiRCBEoYBEGCbNc3
- Zcash Network: Testnet (mainnet-ready architecture)
Core Architecture:
1. Zcash Shielded Transactions
- All evidence submissions anchored to Zcash using shielded pool transactions
- ZIP-225 v5 transactions with 512-byte encrypted memos containing evidence identifiers
- Payment disclosure proofs (ZIP-311) enable selective transparency for verification
- No IP addresses, server logs and reversible metadata
2. FROST Threshold Signatures
- 3-of-5 threshold signing using frost-rerandomized (Ed25519/ristretto255)
- No single admin can approve or censor evidence, requires board consensus
- Production implementation with two-round signing protocol
3. Cross-Chain Verification for public auditability
- NEAR Protocol smart contract provides immutable public registry
- Evidence records link Zcash transaction IDs, IPFS content hashes, and FROST signatures
- On-chain verification allows users to cryptographically prove evidence authenticity
4. Decentralized Storage (IPFS)
- Evidence files stored with content-addressed hashing
5. Zero-Knowledge Credentials (Mina zkApps)
- Professional credential verification without revealing identity
- Succinct proofs (128 bytes) verify employment without doxxing whistleblower
Hybrid Architecture:**
ZKFIED offers two submission modes:
- Hybrid Mode: Users create Zcash transactions in their own wallets (Zashi, Nighthawk), then link the txid
- Full Orchestrator Mode: One-click submission with automated Zcash transaction building
### Proposed Problem
Traditional whistleblower platforms have repeatedly failed to protect sources, leading to arrests, prosecutions, and chilling effects on investigative journalism:
Historical Failures:
- Reality Winner (2017): NSA contractor leaked document to The Intercept; microdot tracking in PDF led to arrest within 6 hours
- Chelsea Manning (2010): Confided in Adrian Lamo who reported her to FBI; sentenced to 35 years
- Edward Snowden (2013): Required direct journalist contact + asylum in Russia to avoid prosecution
- WikiLeaks (2010): Financial deplatforming (Visa/Mastercard/PayPal blockade) demonstrated vulnerability to economic censorship
- Lavabit (2013): Government server seizure forced complete shutdown
Root Causes:
1. Server Seizure: Government can subpoena/seize centralized servers
2. Metadata Leakage: Email headers, IP logs, printer tracking dots reveal source identity
3. Single Point of Compromise: One admin key compromised = entire platform compromised
4. No Cryptographic Identity: Manual verification enables impersonation/honeypots
5. Evidence Tampering: Centralized storage allows evidence deletion/modification
6. Financial Censorship: Traditional payment rails can be blocked
Current Platform Vulnerabilities:
- SecureDrop: Centralized server infrastructure, requires manual journalist verification, no blockchain anchoring, evidence can be deleted by server operators
- WikiLeaks: Centralized editorial control, no cryptographic proof of source verification, server-based storage vulnerable to seizure
- GlobaLeaks: Self-hosted architecture requiring technical expertise, server admin has god-mode access, no blockchain immutability guarantees
These platforms fundamentally cannot protect sources because they rely on trusted servers, centralized administrators, and reversible storage, all vulnerable to legal compulsion, infiltration, or technical compromise.
### Proposed Solution
1. Zcash as Privacy Foundation
- Shielded pool transactions ensure whistleblower IP addresses and identities are never exposed on-chain
- ZIP-225 v5 transactions with 512-byte encrypted memos store evidence identifiers without revealing content
- Payment disclosure proofs (ZIP-311) enable selective transparency, journalists can verify evidence authenticity without compromising source anonymity
- No metadata leakage: Unlike email/Tor hidden services, Zcash transactions contain zero identifying information
2. FROST Threshold Signatures
- 3-of-5 threshold means no single entity controls evidence approval
- Rerandomized signatures prevent linking between evidence submissions
- Two-round protocol implemented in production Rust backend
- Board consensus required for all evidence publication, prevents rogue admin censorship
3. Immutable Cross-Chain Registry
- NEAR Protocol smart contract provides public evidence registry
- On-chain records link Zcash txids, IPFS CIDs, and FROST signatures
- Cryptographic proof chain: Evidence cannot be deleted or tampered with after submission
- Public verification: Anyone can validate evidence integrity without trusted intermediaries
4. Decentralized Storage
- IPFS content addressing ensures file integrity (hash-based verification)
- No single server to seize: Files distributed across IPFS network
- Optional encryption: Future milestone adds client-side encryption before IPFS upload
5. Zero-Knowledge Credentials
- Mina zkApps verify professional credentials (doctor, nurse, journalist, laborer) without revealing identity
- 128-byte proofs enable credential verification on-chain
- Board mapping: Credentials automatically grant access to appropriate evidence boards
6. Dual Anonymity Networks
- Tor + I2P support provides redundant network-layer anonymity
- Hidden service addresses planned for both .onion and .i2p
- Compromise of one network doesn't deanonymize users
### Solution Format
Deliverables:
1. Production Software
- Mainnet-ready Rust backend with FROST coordinator
- React frontend with Zcash wallet integration (Zashi, WebZjs)
- NEAR Protocol smart contract
- Mina zkApp for credential verification
- Comprehensive API documentation
2. Technical Documentation
- Deployment guides for self-hosting ZKFIED instances
- Security best practices for whistleblower platforms
- Zcash integration tutorials (shielded transactions, payment disclosures)
- FROST threshold signature implementation guide
3. Research Output
- Technical whitepaper on ZKFIED architecture
- Threat model analysis comparing ZKFIED to traditional platforms
- Performance benchmarks (Zcash transaction latency, FROST signing overhead)
4. Community Resources
- serstraining materials on using ZKFIED safely
- Video tutorials for whistleblowers and newsrooms
- Integration guides for investigative journalism organizations
### Dependencies
Technical Dependencies:
1. Zcash Infrastructure
- Zcash mainnet access (lightwalletd endpoint or self-hosted node)
- Zcash parameter files (Sapling/Orchard proving/verification keys)
- ZIP-225 v5 transaction construction libraries
- ZIP-311 payment disclosure implementation
2. Rust Ecosystem
- Zcash primitives crate for transaction building
- Zcash client backend for wallet functionality
- FROST rerandomized library for threshold signatures
- IPFS API for decentralized storage
- NEAR SDK for smart contract development
3. IPFS Network
- Self-hosted IPFS node or cluster (production deployment)
- Public IPFS gateways for file retrieval
- Pinning services for redundancy (Pinata)
4. NEAR Protocol
- NEAR mainnet RPC access
- Smart contract deployment and storage fees
- Mainnet account with sufficient NEAR for gas
5. Mina Protocol
- Mina mainnet GraphQL endpoint
- zkApp deployment account
- o1js SDK for credential verification
Resource Dependencies:
1. Infrastructure
- Production servers (Fly.io)
- Database (PostgreSQL)
- IPFS cluster storage (minimum 1TB for evidence files)
- Monitoring and logging (Prometheus)
- CDN for frontend distribution (Cloudflare)
2. Security
- Third-party cryptographic audit
- Penetration testing for backend API
3. Domain and SSL
- Production domain (zkfied.com)
- SSL certificates for HTTPS
- Tor hidden service .onion address
- I2P hidden service .i2p address
Collaboration Dependencies:
1. Zcash Community
- Coordination with Zcash core developers on ZIP-226 (ZSA) integration timeline
- Feedback on payment disclosure implementation (ZIP-311)
- Potential collaboration on WebZjs MetaMask Snap improvements
2. NEAR Protocol
- Contract deployment on mainnet
- Gas optimization guidance from NEAR DevRel
- Potential integration with NEAR Social for journalist discovery
3. Mina Protocol
- zkApp mainnet deployment coordination
- o1js SDK support for credential verification
- Potential collaboration on recursive proof aggregation
4. IPFS Community
- Best practices for content pinning and redundancy
- Cluster setup guidance
5. Journalism Organizations
- Beta testing with investigative newsrooms
- Feedback on UX/security from journalists
### Technical Approach
ZKFIED uses a multi-layer architecture with Zcash as the privacy foundation. The platform integrates five key components:
Layer 1: Privacy Foundation (Zcash)
- Shielded pool transactions
- ZIP-225 v5 transaction format supports 512-byte encrypted memos
- Payment disclosure proofs (ZIP-311) enable selective transparency
- Testnet deployment currently operational, mainnet migration planned
Layer 2: Distributed Authorization (FROST)
- Threshold cryptography requires 3-of-5 board members to approve evidence
- Ed25519/ristretto255 curve provides strong security
- Two-round signing protocol minimizes latency
- Rerandomization prevents signature linkability
- Current implementation uses production-grade FROST library
Layer 3: Decentralized Storage (IPFS)
- Content-addressed storage ensures file integrity
- SHA-256 hashing provides cryptographic verification
- Multi-node cluster deployment provides redundancy
- Public gateways enable widespread access
- Optional client-side encryption protects file content
Layer 4: Public Registry (NEAR Protocol)
- Smart contract stores evidence records on-chain
- Immutable ledger prevents tampering or deletion
- FROST signature verification on-chain
- Cross-chain linking (Zcash txid → NEAR record)
- Low-cost storage
Layer 5: Credential Verification (Mina)
- Zero-knowledge proofs verify professional credentials
- Poseidon hash function optimized for ZK circuits
- Succinct proofs (128 bytes constant size)
- On-chain verification with minimal blockchain bloat
- Credential-to-board mapping logic
Submission Workflows:
Hybrid Mode:
1. User submits evidence metadata to backend
2. Backend generates evidence ID and initiates FROST session
3. User creates Zcash shielded transaction in personal wallet
4. User includes evidence ID in transaction memo
5. User submits Zcash txid to backend
6. Backend generates payment disclosure and posts to NEAR registry
Full Orchestrator Mode:
1. User connects WebZjs MetaMask Snap
2. User uploads files and submits evidence via frontend
3. Backend orchestrates: IPFS upload → FROST signing → Zcash tx building → NEAR posting
4. Real-time status updates provided to user
5. Automatic redirect to evidence detail page
### Upstream Merge Opportunities
ZKFIED does not fork or modify core Zcash repositories. We use Zcash as a library dependency. Our work will benefit the Zcash ecosystem through:
1. Documentation & Examples
- Share ZIP-311 payment disclosure implementation examples
- Contribute non-financial use case tutorials to Zcash Developer Hub
- Publish case study on using Zcash for privacy-preserving metadata anchoring
2. Community Feedback
- Report WebZjs integration experience and feature requests
- Provide ZSA (ZIP-226) early testing feedback when available
- Share lessons learned building on Zcash shielded pools
3. Ecosystem Growth
- Demonstrate Zcash use beyond payments (evidence submission)
- Contribute to Zcash adoption in journalism/press freedom space
### Hardware/Software Costs (USD)
3500
### Hardware/Software Justification
Production Servers:
- Fly.io
- 50GB SSD storage
IPFS Storage:
- Single IPFS node with Pinata backup pinning
- 500GB storage
Database:
- Managed PostgreSQL or SQLite with backups
- 10GB storage
CDN and Hosting:
- Vercel/Cloudflare free tier with custom domain
Domain and SSL:
- zkfied.com domain
- SSL certificate
Development Tools:
- Basic Grafana/Sentry plans
Testing:
- Zcash mainnet transaction fees
- NEAR/Mina gas fees
### Service Costs (USD)
12500
### Service Costs Justification
Focused Cryptographic Audit (Zcash Integration):
- Scope: Zcash transaction construction (ZIP-225), payment disclosure (ZIP-311), ZSA integration
Penetration Testing:
- API Security Assessment:
- Basic penetration test of REST API
Legal/Compliance:
- Legal Consultation:
- Limited review of terms of service
- Basic jurisdictional risk analysis
### Compensation Costs (USD)
29000
### Compensation Costs Justification
Alex
- Rate: $97/hour × 150 hours
- Time allocation: 50 hours/month
- Responsibilities: Frontend, IPFS integration, NEAR contracts, Mina zkApps, project management
Shay
- Rate: $97/hour × 150 hours
- Time allocation: 50 hours/month
- Responsibilities: FROST implementation, Zcash integration, backend development, security hardening
### Total Budget (USD)
45000
### Previous Funding
No
### Previous Funding Details
NA
### Other Funding Sources
No
### Other Funding Sources Details
NA
### Implementation Risks
Zcash Mainnet Transaction Failures
FROST Key Share Compromise
IPFS Content Unavailability
ZSA (ZIP-226) Delayed Mainnet Activation
Security Audit Findings Require Major Refactoring
Regulatory/Legal Challenges
NEAR/Mina Network Issues
Malicious Evidence Submissions
Resource Consumption (Zcash Fees, IPFS Storage)
### Potential Side Effects
ZKFIED's decentralized architecture eliminates many risks inherent to traditional whistleblower platforms, several potential challenges require proactive mitigation. The platform could be abused for spam, disinformation, or illegal content submissions. Advanced adversaries might attempt deanonymization through network-level surveillance or timing analysis, which is mitigated through Tor/I2P integration and comprehensive user education on operational security practices. Evidence integrity disputes could arise if adversaries claim submissions are fabricated, but ZKFIED's multi-layered verification, FROST signatures, ZIP-311 payment disclosure proofs, IPFS content addressing, and NEAR blockchain immutability provides cryptographic proof chains that make tampering detectable. Whistleblowers might develop a false sense of security and neglect basic operational security (using personal devices, poor OPSEC), necessitating clear threat model documentation that explains what ZKFIED protects against (metadata leakage, server seizure) versus what it doesn't (device compromise, social engineering). Finally, large-scale adoption could increase operational costs through Zcash transaction fees and IPFS storage; this is addressed through the Hybrid Mode where users pay their own Zcash fees, enforced storage limits (10MB per submission), cost transparency in the UI, and future sustainability plans through press freedom foundation grants.
### Success Metrics
*Real-world Zcash usage
At least 50 evidence submissions using Zcash shielded transactions with successful ZIP-311 payment disclosure verification by users.
Evidence submitted via both Hybrid Mode (user-created Zcash transactions) and Full Orchestrator Mode (automated transaction building), demonstrating both workflows are functional.
Evidence of practical benefit
At least 2 journalism organizations publicly acknowledging that ZKFIED's Zcash-based anonymity provided stronger source protection compared to traditional platforms (SecureDrop, Signal).
At least one documented case where a whistleblower successfully submitted evidence via Zcash shielded transaction that demonstrates the value of ZIP-225 privacy guarantees.
Zcash ecosystem contribution
One presentation at Zcon or Zcash community call demonstrating ZKFIED as a non-financial use case for Zcash.
Published implementation guide for ZIP-311 payment disclosures with working code examples that other developers can reference.
At least 2 self-hosted ZKFIED instances deployed by newsrooms or press freedom organizations, showing the platform is trusted infrastructure.
Security validation
Third-party audit focused on Zcash integration (ZIP-225 transaction construction, ZIP-311 payment disclosures) completed with zero unresolved critical findings.
Zero security incidents compromising Zcash transaction privacy or whistleblower anonymity during the grant period.
### Startup Funding (USD)
4000
### Startup Funding Justification
Infrastructure First Approach:
- Cannot begin mainnet migration without production infrastructure in place
- Testnet → mainnet transition requires parallel environments (testing while maintaining testnet availability)
- IPFS cluster setup is time-intensive
Early Risk Mitigation:
- Identifies infrastructure issues before Milestone 1 deadline
- Tests NEAR mainnet contract deployment process in isolation
Accelerated Timeline Support:
- Initial 2-week intensive sprint establishes foundation for remaining milestones
- Sets up development workflows before main work begins
- Establishes baseline metrics for success tracking
Deliverables Before Milestone 1:
- Production servers operational
- Zcash mainnet parameters downloaded and verified
- Staging environment configured
- Basic monitoring dashboards
### Milestone Details
```milestones.yaml
Milestone: 1 - Zcash Mainnet + ZSA Integration
Amount (USD): $17,000
Expected Completion Date: 2026-02-15
User Stories:
- "As a whistleblower, I want to submit evidence on Zcash mainnet so that my submission is permanent and censorship-resistant"
- "As a journalist, I want to verify evidence using Zcash payment disclosures so that I can trust submissions are genuine"
- "As a board administrator, I want to use Zcash Shielded Assets for board-specific evidence tokens"
Deliverables:
Core Zcash Integration:
- Zcash mainnet deployment
- ZIP-225 v5 shielded transaction construction operational
- ZIP-311 payment disclosure generation and verification working
- Zcash memo field encryption for evidence IDs
- Transaction fee estimation and dynamic adjustment
- Mainnet wallet integration (Zashi, WebZjs support)
ZSA (ZIP-226) Integration:
- Board-specific evidence tokens (Healthcare, Government, Corporate)
- ZSA issuance integrated with FROST coordinator
- ZSA transaction broadcasting to mainnet
- Viewing key management for journalists
- Frontend ZSA token display
Production Infrastructure:
- PostgreSQL migration from SQLite
- IPFS cluster deployed
- Monitoring Prometheus
- NEAR/Mina mainnet contracts deployed
Acceptance Criteria:
- Whistleblower submits evidence via Zcash mainnet shielded transaction
- Transaction confirms within 10 minutes, zero failures in 25 test submissions
- Payment disclosure generated and verified successfully
- ZSA tokens issued for 3 board categories (if ZIP-226 activated)
- 25+ real evidence submissions from early testers on mainnet
- Cross-chain anchoring to NEAR/Mina operational
Milestone: 2 - User Onboarding & Community Growth
Amount (USD): $14,000
Expected Completion Date: 2025-03-30
User Stories:
- "As a journalist, I want training on ZKFIED so I can receive evidence securely"
- "As a whistleblower, I want clear documentation so I can submit evidence safely"
- "As a newsroom, I want to deploy ZKFIED internally for our sources"
Deliverables:
User Acquisition (Zcash-focused):
- Onboard 50+ active users submitting evidence on Zcash mainnet
- Train 2+ journalism organizations on Zcash privacy features
- Partner with 1+ press freedom organizations for user referrals
- Achieve 20+ evidence submissions per month on mainnet
Documentation:
- Comprehensive Zcash integration guide (shielded txs, payment disclosures, ZSA)
- Video tutorials: Using Zcash for whistleblowing
- Security best practices for whistleblowers (Zcash wallet setup, operational security)
- API documentation with Zcash-specific examples
- Self-hosting deployment guide
Acceptance Criteria:
- 50+ registered users actively using Zcash mainnet
- 20+ evidence submissions per month sustained
- 2+ journalism organizations trained (attendance records)
- 1+ presentation at Zcash event or community call
- 1+ published article/whitepaper on Zcash non-financial use case
- 1+ self-hosted ZKFIED instances deployed by partners
- 1,000+ website visitors within first month
Milestone: 3 - Security Audit & Hardening
Amount (USD): $10,000
Expected Completion Date:** 2026-05-15
**User Stories:**
- "As a security researcher, I want to review ZKFIED's Zcash integration so I can validate privacy claims"
- "As a whistleblower, I want independent audit confirmation before trusting the platform with sensitive evidence"
Deliverables:
Security Audit:
- Third-party cryptographic audit (focus on Zcash integration)
- ZIP-225 v5 transaction construction
- ZIP-311 payment disclosure generation
- ZSA token issuance
- FROST signature integration with Zcash txs
- Public audit report published
- All critical/high-severity findings remediated
Acceptance Criteria:
- Audit report published
- All high-severity findings addressed with mitigations
- Penetration test confirms no exploitable vulnerabilities
- Zero security incidents during grant period
- Legal review complete, platform structure minimizes liability
```
### Supporting Documents
```files.yaml
https://www.youtube.com/watch?v=YCE3-C2_boE&feature=youtu.be
https://zkfied.vercel.app/
https://testnet.nearblocks.io/address/reg.mrhashfox.testnet
https://zkfied-frost-testnet.fly.dev/
https://minascan.io/devnet/account/B62qjfNr4fERPmVx6RbZxdYLmELeJwoisWGqcsWyceAn17DVAMNm4zr
https://zkfied-pitchdeck.vercel.app/
https://github.com/ZKFIED-pro/ZKFIED
```