Captcha Rouille
EPITA, projet de deuxième année, un CAPTCHA anti-bots entièrement écrit en Rust avec un modèle ia CNN, traitement d'image et de multiple algorithmes
janv. 2026 → mai 2026
Ce projet EPITA était beaucoup plus ouvert ; les seules consignes étaient : créer un projet entièrement codé en Rust qui utilise des algorithmes pour résoudre le problème qu'il doit résoudre. Nous avons décidé de créer un CAPTCHA très robuste en Rust en utilisant Actix.rs et Yew.rs (WebAssembly). Le projet incluait de nombreuses fonctionnalités de sécurité, telles que : de petits défis utilisateur (sélectionner des images contenant un élément donné, faire tourner un animal dans le bon sens, ou résoudre un petit casse-tête), des filtres d'image (distorsion, bruit, décalage des couleurs, etc.), un défi de preuve de travail (proof-of-work) sur CPU pour augmenter le coût de résolution pour les fermes de bots, un modèle CNN entraîné sur notre propre ensemble de données de mouvements de souris générés par des bots, capable de vraiment bien détecter les robots, et enfin, une empreinte initiale du navigateur et de l'IP avec un scoring via une API d'adresses IP. Le jury a beaucoup apprécié notre projet et nous a dit qu'il n'avait jamais vu ça auparavant lors des soutenances.
Construit avec
- Rust
- Sass
- Git