Objective:
Design, implement, and formally verify a novel federated learning protocol that is simultaneously:
- Resilient to Byzantine participants,
- Resistant to poisoning and backdoor attacks,
- Fully homomorphically encrypted or alternatively employs secure multi-party computation (SMPC),
- Guarantees differential privacy for clients’ data,
- Operates over a dynamic, unreliable network (e.g., mobile edge devices or IoT nodes),
- And is verifiably correct through formal proof (e.g., using Coq, TLA+, or Isabelle/HOL).
Scope and Requirements:
- Protocol Design:
- Propose a federated optimization algorithm that tolerates at least f Byzantine clients out of n total in each round.
- Integrate cryptographic techniques (e.g., lattice-based FHE, Garbled Circuits, or Oblivious Transfer) to ensure intermediate model updates cannot be reverse-engineered.
- Achieve provable (ε, δ)-differential privacy under budgeted noise accumulation.
- Security Model:
- Define and justify your security assumptions.
- Prove resistance to:
- Model inversion attacks
- Membership inference
- Model poisoning (e.g., adaptive inner-layer attacks)
- Free-rider and drop-out behaviors
- Network Assumptions:
- Handle partial participation and node churn (e.g., using Gossip or Raft-inspired mechanisms).
- Demonstrate robustness under lossy, asynchronous communication with at least 30% packet loss.
- Formal Verification:
- Specify your protocol using a formal language (e.g., TLA+, Coq).
- Prove critical invariants:
- Termination (under probabilistic scheduling)
- Correct convergence (under honest-majority and mixed adversarial settings)
- Privacy guarantees (using a mechanized proof assistant)
- Experimental Validation:
- Implement a working prototype using real-world data (e.g., a distributed medical imaging dataset or natural language corpus).
- Evaluate:
- Convergence under attack
- Overhead introduced by encryption and privacy layers
- Tradeoffs between utility, latency, and security
- Deliverables:
- Protocol design document (20–30 pages)
- Formal specification and proof artifacts
- Source code (Python, Rust, or OCaml preferred)
- Experimental results and performance benchmarks
- A reflection section discussing limitations, open problems, and potential improvements