Skip to content
Snippets Groups Projects
Commit 79ccbce6 authored by Nora Roxette Rydding's avatar Nora Roxette Rydding
Browse files
parents 46233d2c 02a8a6f8
No related branches found
No related tags found
No related merge requests found
Pipeline #72177 passed
...@@ -183,7 +183,16 @@ public class UserDAO { ...@@ -183,7 +183,16 @@ public class UserDAO {
* @return a random salt * @return a random salt
*/ */
public byte[] generateSalt() { public byte[] generateSalt() {
return null; byte[] bytes = new byte[16];
try{
SecureRandom random = SecureRandom.getInstance("SHA1PRNG");
random.nextBytes(bytes);
}
catch (NoSuchAlgorithmException e){
e.printStackTrace();
}
return bytes;
} }
/** /**
...@@ -193,7 +202,25 @@ public class UserDAO { ...@@ -193,7 +202,25 @@ public class UserDAO {
* @return hashedPassword, null if unsuccessful * @return hashedPassword, null if unsuccessful
*/ */
public String hashPassword(String password, byte[] salt) { public String hashPassword(String password, byte[] salt) {
return null;
String hashedPassword = null;
try {
MessageDigest md = MessageDigest.getInstance("SHA-256"); //lager et objekt av messageDigest
//bruker alogritmen SHA-256 siden den er lenger, mer kompleks og dermed tryggere.
md.update(salt); //gjør passordet om til bytes.
byte[] bytes = md.digest(password.getBytes());
StringBuilder stringBuilder = new StringBuilder(); //lager et objekt av klassen stringbuilder
for (int i = 0; i < bytes.length; i++) { // gjør salt(bytes) om til string
stringBuilder.append(Integer.toString((bytes[i] & 0xff) + 0x100,
16).substring(1));
}
hashedPassword = stringBuilder.toString();
}
catch (NoSuchAlgorithmException e){
e.printStackTrace();
}
return hashedPassword;
} }
/** /**
......
...@@ -5,6 +5,7 @@ import data.User; ...@@ -5,6 +5,7 @@ import data.User;
import javax.ws.rs.*; import javax.ws.rs.*;
import javax.ws.rs.core.MediaType; import javax.ws.rs.core.MediaType;
import java.security.NoSuchAlgorithmException;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
......
...@@ -44,6 +44,4 @@ function loadApplication(user) { ...@@ -44,6 +44,4 @@ function loadApplication(user) {
sessionStorage.setItem("username", user.username); sessionStorage.setItem("username", user.username);
window.location.href = "../app.html" window.location.href = "../app.html"
}ion.href = "../app.html"
} }
\ No newline at end of file
...@@ -132,6 +132,7 @@ public class UserDAOTest extends JerseyTest { ...@@ -132,6 +132,7 @@ public class UserDAOTest extends JerseyTest {
} }
} }
@After @After
public void tearDown () { public void tearDown () {
try { try {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment