Ajouter la génération et la lecture de la clé utilisateur (.papillon_id)

This commit is contained in:
2025-10-23 23:42:25 +02:00
parent b5f63df5c4
commit 8e25bb44eb
7 changed files with 259 additions and 94 deletions
+51
View File
@@ -0,0 +1,51 @@
import java.io.*;
import java.util.UUID;
public class UserKey {
/**
Lit la clé stockée dans le fichier ~/.papillon_id
ou en génère une nouvelle si le fichier n'existe pas.
@return La clé utilisateur sous forme de chaîne de caractères
*/
public static String lireOuCreerCle() {
// Récupère le dossier personnel de lutilisateur
String home = System.getProperty("user.home");
File fichier = new File(home, ".papillon_id");
String cle = "";
try {
// Si le fichier existe déjà on lit son contenu
if (fichier.exists()) {
FileReader fr = new FileReader(fichier);
BufferedReader br = new BufferedReader(fr);
cle = br.readLine(); // lit la première ligne (la clé)
br.close();
fr.close();
System.out.println("Clé existante trouvée : " + cle);
}
// Sinon, on génère une nouvelle clé et on l’écrit dans le fichier
else {
cle = UUID.randomUUID().toString(); // Génère une clé unique
FileWriter fw = new FileWriter(fichier);
BufferedWriter bw = new BufferedWriter(fw);
bw.write(cle);
bw.newLine();
bw.close();
fw.close();
System.out.println("Nouvelle clé générée et enregistrée : " + cle);
}
} catch (IOException e) {
System.err.println("Erreur lors de la lecture/écriture du fichier de clé : " + e.getMessage());
}
return cle;
}
}