Implemented a crash fault tolerant distributed banking system that uses a variant of Multi-Paxos protocol to replicate a transaction log and maintain consistent account balances across a 5-node cluster.
Developed a high-throughput PBFT consensus protocol in Java featuring a collector node pattern to reduce communication overhead as well as prune message logs with Checkpointing and Threshold Signatures.
Wrote extensive test cases to simulate network partitions, timing attacks, and equivocation, ensuring the protocol recovered correctly from Byzantine failures.