Jeu web d’introduction à la cryptographie

Encadrants

  • Sébastien CANARD
  • Emails: sebastien.canard@telecom-paris.fr
  • Bureaux: 4C59

Nombre d'étudiant par instance du projet:

  • Minimum: 4
  • Maximum: 5

Nombre d'instances du projet :

1

Sigles des UE couvertes et/ou Mots-clés :

INF111, INF109, INF112, InterSem INF114 -- programmation web, programmation Python, Java, introduction à la cybersécurité

Logo/Favicon

project image

Description du projet :

La cryptographie est aujourd’hui au coeur de notre quotidien, et nous l’utilisons tous plusieurs fois par jour : quand nous ouvrons notre navigateur web, quand nous demandons à notre téléphone mobile d’envoyer des données ou encore quand nous effectuons un paiement via notre carte bancaire. Ce domaine de la cybersécurité est cependant très vieux, puisque les premiers systèmes datent de l’Antiquité, avec des méthodes très simples utilisés par les Spartes ou par Jules César. Ces derniers ne sont bien évidemment plus utilisés aujourd’hui, notamment parce que nous savons facilement comment les attaquer. Ils ont cependant progressivement évolués vers les systèmes cryptographiques modernes, plus sûrs et bien mieux maitrisés. D’autres techniques très différentes ont aussi vu le jour, permettant aujourd’hui d’avoir une batterie d’outils cryptographiques permettant de répondre à la plupart des besoins en sécurité de notre quotidien. Pourtant, même si ces systèmes utilisent des mathématiques assez poussées, il est tout à fait possible de les expliquer très simplement. Ce projet consiste à créer un jeu web qui mettra en oeuvre les concepts de base de la cryptographie moderne, afin de les expliquer le plus simplement possible, pour que des collégiens puissent les comprendre, et soient capables de les manipuler. Le jeu pourra notamment reprendre les techniques cryptographiques suivantes :
  • méthode de la Scytale ;
  • méthode de César, cryptanalyse de César, méthodes de Vigenère et de Vernam ;
  • principe de l’échange de clé ;
  • machine Enigma ;
  • principe de base de la cryptographie à clé publique, attaque par l’homme du milieu, principe de certification.

Objectifs du projet :

  • Faire des recherches sur les méthodes cryptographiques anciennes (Scytale, César, Vigenère, Vernam) ou plus récentes telles que la machine Enigma, le concept de cryptographie à clé publique, le principe de la certification.
  • Trouver des façons ludiques d’expliquer ces différents concepts en créant des ateliers dédiés.
  • Imaginer un scénario permettant de mettre en oeuvre les concepts cryptographiques ci- dessus de façon amusante.
  • Créer un site web mettant en oeuvre le scénario créé à l’étape précédente.
  • Créer des versions web des ateliers définis préalablement afin de les insérer dans le jeu.

Logiciels requis:

  • Typescript
  • Programmation objet

Références bibliographiques:

CYBERCRYPT: Learn Basic Cryptographic Concepts while Playing, https://eprint.iacr.org/ 2021/063