← All projects

Captcha Rouille

EPITA, second year project, A bot-fighting CAPTCHA written entirely in Rust with ai CNN model, image processing and multiple algorithms

Jan 2026 → May 2026

This EPITA project was much more open-ended; the only instructions were: create a project entirely coded in Rust that uses algorithms to solve the problem it must solve. We decided to create a very robust CAPTCHA in Rust using Actix.rs and Yew.rs (WebAssembly). The project included numerous security features such as: small user challenges (selecting images containing a given label, rotating an animal the right way, or solving a small puzzle), image filters (distortion, noise, color shifting, etc.), a CPU proof-of-work challenge to increase the solving cost for bot farms, a CNN model trained on our own generated bot mouse-movement dataset that could really detect bots well, and finally, initial browser and IP fingerprinting with IP API scoring. The jury really enjoyed our project and told us that it had never been seen before in defenses.

Built with

  • Rust
  • Sass
  • Git

Related interests