I2L 2025 Groupe10

De wiki-se.plil.fr
Aller à la navigation Aller à la recherche

Proposition de système (étudiants)

Logo de l'entreprise locale BiniouKey.
BiniouKey, bien plus qu'une clé de sécurité.

Notre système est une clé de sécurité, capable de sauvegarder et de générer des mots de passe TRNG (True RNG), c.-à.-d. des mots de passe réellement aléatoire, et non pseudo-aléatoires.

Plusieurs méthodes différentes sont identifiées pour générer des nombres vraiment aléatoires :

  • La méthode "simple", qui va consister à mesurer la tension d'une broche analogique flottante, correspondante au bruit électrique présent aux alentours de la clé.
  • La méthode "complexe", qui va consister à utiliser un circuit spécialisé de génération de bruit, composé d'un thermistor, d'un amplificateur et de condensateurs, afin de capter le bruit thermique du thermistor.

La clé de sécurité va proposer plusieurs fonctionnalités, accessibles via un petit écran type SSD1306 et une croix directionnelle.

La première fonctionnalité va être de simplement pouvoir générer des mots de passe aléatoires d'une longueur voulue.

Le seconde fonctionnalité va être de pouvoir protéger un ordinateur grâce à la clé et à la communication USB entre la clé et l'ordinateur. Lors de la configuration de l'ordinateur, ce dernier va demander ses identifiants à la clé, qui va générer une paire identifiant/mot de passe qu'elle va stocker en ROM, et les transmettre à l'ordinateur. Ensuite, lorsque l'on voudra déverrouiller l'ordinateur, il faudra, sur la clé, s'authentifier en sélectionnant l'identifiant de l'ordinateur. La clé enverra alors le mot de passe à l'ordinateur, qui pourra se déverrouiller.

Les différentes fonctionnalités seront accessibles via un menu affiché sur l'écran, et navigable grâce à la croix directionnelle.

Ci-dessous deux schémas montrant la configuration du mot de passe et l'authentification :

Les différentes étapes lors de la configuration du mot de passe entre l'ordinateur et la clé
Schéma montrant la procédure d'authentification entre l'utilisateur, son ordinateur et la clé de sécurité.

Contre-proposition (intervenant)

OK pour la proposition.

Une bibliothèque pour gérer le contrôleur graphique SDD1306 est disponible [1].

Proposition définitive (étudiants)

Répartition du travail (étudiants)

Carte

Schéma initial (étudiants)

Schéma de la carte

Carte routée (intervenant)

Vous utiliserez la carte avec l'écran OLED.

Composants (intervenant)

Carte réalisée (intervenant)

Photo de la carte

La carte est entiérement soudée à l'exception de la thermistance.

Travaux (étudiants)

  • 13/10/2025. A ce jour, nous avons pu tester l'allumage et l'extinction d'une DEL à intervalles réguliers. Egalement, nous avons conditionné l'allumage et l'extinction des DELs selon le bruit électrique capté par le thermistor et l'antenne.
  • 16/10/2025. Pendant ces deux séances, nous avons réussi à afficher sur l'écran une chaîne de 16 caractères générés suite à la captation du bruit électronique. Cependant, le programme plante aléatoirement (freeze de l'écran et de la DEL clignotante).. Nous avons également réussi à enregistrer la BiniouKey en tant que périphérique USB appartenant à la S.A.R.L. BigoudenCrypt. Il ne reste qu'à inclure cet enregistrement au reste de notre programme pour que tout fonctionne ensemble.
  • 25/10/2025.
    • BiniouKey (microcontrôleur) : intégration de la bibliothèque LUFA avec du code qui permet de récupérer des données envoyées depuis l'ordinateur. On a donc un périphérique USB enregistré en tant que tel, avec du code qui fonctionne 🎉
    • Ordinateur : programme C avec libusb qui permet de rechercher la BiniouKey (routine de recherche, puis pause du programme tant qu'elle n'a pas été trouvée), puis qui envoie une chaîne de caractère sur l'endpoint OUT (type BULK) au périphérique pour afficher ce message sur l'écran. Malheureusement, pas encore possible de tester le bon fonctionnement de la fonctionnalité de bout en bout car le noyau tient toujours l'interface de la BiniouKey et je n'arrive pas à le détacher (macOS qui j'avoue sur ce coup là est pas pratique).
      Fonctionnement du programme avec l'antenne comme source d'entropie.
      La BinouKey affiche des chaînes de 16 caractères à partir du bruit électronique capté.

Extraits significatifs de code (étudiants)

Rendus (étudiants)

Projet KiCAD : Fichier:I2L-2025-Carte-G10-final.zip

Programmes :