diff --git a/pom.xml b/pom.xml
index af0b331..6ae0290 100644
--- a/pom.xml
+++ b/pom.xml
@@ -8,6 +8,19 @@
1.0-SNAPSHOT
SAE 201
https://maven.apache.org
+
+
+
+ central
+ Maven Central
+ default
+ https://repo1.maven.org/maven2
+
+ false
+
+
+
+
UTF-8
17
@@ -20,6 +33,13 @@
+
+
+ de.mkammerer
+ argon2-jvm
+ 2.11
+
+
org.xerial
sqlite-jdbc
@@ -134,6 +154,12 @@
jakarta.activation-api
2.1.0
+
+ net.java.dev.jna
+ jna
+ 5.8.0
+ compile
+
diff --git a/src/main/java/fr/univ_amu/iut/secret/LocalSecretProvider.java b/src/main/java/fr/univ_amu/iut/secret/LocalSecretProvider.java
new file mode 100644
index 0000000..3614732
--- /dev/null
+++ b/src/main/java/fr/univ_amu/iut/secret/LocalSecretProvider.java
@@ -0,0 +1,16 @@
+package fr.univ_amu.iut.secret;
+
+import de.mkammerer.argon2.Argon2;
+import de.mkammerer.argon2.Argon2Factory;
+
+public class LocalSecretProvider implements SecretProvider {
+
+ private static String ARGON_HASH = "$argon2id$v=19$m=16,t=2,p=1$Tms1dkJYWEZ5OTdJTndVTg$+iBsHiILEshy1JLZsTfZFQ";
+ private static Argon2 argon2 = Argon2Factory.create(Argon2Factory.Argon2Types.ARGON2id);
+
+
+ @Override
+ public boolean isSecretValid(String secret) {
+ return argon2.verify(ARGON_HASH, secret.getBytes());
+ }
+}
diff --git a/src/main/java/fr/univ_amu/iut/secret/SecretProvider.java b/src/main/java/fr/univ_amu/iut/secret/SecretProvider.java
new file mode 100644
index 0000000..630e1e0
--- /dev/null
+++ b/src/main/java/fr/univ_amu/iut/secret/SecretProvider.java
@@ -0,0 +1,10 @@
+package fr.univ_amu.iut.secret;
+
+public interface SecretProvider {
+
+ static SecretProvider getInstance(){
+ return new LocalSecretProvider();
+ }
+
+ boolean isSecretValid(String secret);
+}
diff --git a/src/main/java/fr/univ_amu/iut/test/DAOUsageTest.java b/src/main/java/fr/univ_amu/iut/test/DAOUsageTest.java
index 6b77901..48405e2 100644
--- a/src/main/java/fr/univ_amu/iut/test/DAOUsageTest.java
+++ b/src/main/java/fr/univ_amu/iut/test/DAOUsageTest.java
@@ -14,8 +14,7 @@ public class DAOUsageTest implements DAOUsage{
@Override
public boolean delete(Usage obj) {
- // TODO Auto-generated method stub
- return false;
+ throw new UnsupportedOperationException();
}
@Override
diff --git a/src/main/java/module-info.java b/src/main/java/module-info.java
index f181730..9028ea3 100644
--- a/src/main/java/module-info.java
+++ b/src/main/java/module-info.java
@@ -7,6 +7,9 @@ open module francefx {
requires transitive org.kordamp.ikonli.materialdesign;
requires transitive org.kordamp.ikonli.core;
+ requires de.mkammerer.argon2.nolibs;
+ requires com.sun.jna;
+
requires jakarta.persistence;
exports fr.univ_amu.iut.view.map;