Alexis Bruneteau
67a2b3ec6f
fix: Restore backend infrastructure and complete Phase 2 & 3
...
Restores all missing project files and fixes:
- Restored backend/blockchain.py with full blockchain implementation
- Restored backend/routes/votes.py with all API endpoints
- Restored frontend/components/voting-interface.tsx voting UI
- Fixed backend/crypto/hashing.py to handle both str and bytes
- Fixed pyproject.toml for Poetry compatibility
- All cryptographic modules tested and working
- ElGamal encryption, ZK proofs, digital signatures functional
- Blockchain integrity verification working
- Homomorphic vote counting implemented and tested
Phase 2 Backend API: ✓ COMPLETE
Phase 3 Frontend Interface: ✓ COMPLETE
Verification:
✓ Frontend builds successfully (12 routes)
✓ Backend crypto modules all import correctly
✓ Full voting simulation works end-to-end
✓ Blockchain records and verifies votes
✓ Homomorphic vote counting functional
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-07 01:56:10 +01:00
Alexis Bruneteau
55995365be
docs: Add proper openspec configuration for MVP
...
Created comprehensive openspec structure:
openspec/specs/:
- mvp.md: MVP feature overview
- architecture.md: System architecture and data flows
openspec/changes/add-pqc-voting-mvp/:
- proposal.md: Project proposal with scope and rationale
- tasks.md: Detailed implementation tasks (6 phases, 30+ tasks)
- design.md: Complete design document
- Cryptographic algorithms (Paillier, Kyber, Dilithium, ZKP)
- Data structures (Block, Blockchain, Ballot)
- API endpoint specifications
- Security properties matrix
- Threat model and mitigations
Follows openspec three-stage workflow:
1. Creating changes (proposal-based)
2. Implementation (tracked via tasks)
3. Completion (with validation)
Ready for implementation phase with clear requirements.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-06 18:02:33 +01:00
Alexis Bruneteau
bd3fcac8dc
docs: Add complete MVP specification and implementation plan
...
Added comprehensive MVP definition with:
Core Components:
- Paillier homomorphic encryption for vote secrecy
- Kyber (ML-KEM) for post-quantum key protection
- Dilithium (ML-DSA) for PQC signatures
- Blockchain module with immutable vote recording
- ZKP implementation for ballot validity
MVP Features:
1. Cryptographic toolkit (Paillier, Kyber, Dilithium, ZKP)
2. Blockchain module (linked blocks, signatures, validation)
3. Voting API (setup, public-keys, submit, blockchain, count)
4. Voter client (encryption, signing, submission)
5. Blockchain visualizer (display, verification)
6. Scrutator module (counting, results)
6-Phase Implementation Plan:
- Phase 1: Cryptographic foundations
- Phase 2: Backend API integration
- Phase 3: Frontend voting interface
- Phase 4: Blockchain visualization
- Phase 5: Results & reporting
- Phase 6: Testing & technical report
Security properties matrix with mechanisms.
Progress tracking checklist for all phases.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-06 17:59:43 +01:00
Alexis Bruneteau
7cab4cccf9
docs: Add project requirements from Projet.pdf to openspec
...
Updated with:
- Project definition from CIA course requirements
- Key goals including fraud prevention and coercion resistance
- Deliverables structure (code + technical report)
- E-voting challenges to address:
- Fraud prevention
- Voter intimidation resistance
- Anonymity preservation
- Vote integrity and verifiability
- Coercion resistance
- Report structure requirements:
1. Introduction & Design Choices
2. Analysis & Cryptographic Application
3. Security Properties & Threat Analysis
- Post-quantum cryptography (ML-KEM, ML-DSA) requirements
- Docker autonomous deployment requirement
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-06 17:51:56 +01:00
Alexis Bruneteau
6ef4dc851b
docs: Fill out openspec/project.md with complete project details
...
Documented:
- Project purpose and goals (e-voting with blockchain)
- Complete tech stack (Next.js, FastAPI, MySQL, Docker)
- Code style conventions (TypeScript, Python, Git)
- Architecture patterns (frontend, backend, API client)
- Testing strategy and git workflow
- Domain context (e-voting concepts, security model)
- Important constraints (technical, security, regulatory)
- External dependencies and key endpoints
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-06 17:51:25 +01:00