This commit is contained in:
2026-06-22 23:39:36 +03:30
parent 00f990c653
commit 5ea8a95fe7
22 changed files with 779 additions and 253 deletions
+28 -5
View File
@@ -1,23 +1,46 @@
package dev.service;
import dev.dao.UserDao;
import dev.model.User;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Base64;
public class AuthService {
private final UserDao userDao = new UserDao();
public boolean register(String username, String password, String email) {
if (userDao.findByUsername(username) != null) {
return false;
}
// TODO:
// Validate and register user
User user = new User();
user.setUsername(username);
user.setPassword(hashPassword(password));
user.setEmail(email);
return false;
return userDao.save(user);
}
public User login(String username, String password) {
User user = userDao.findByUsername(username);
// TODO:
// Authenticate user
if (user != null && user.getPassword().equals(hashPassword(password))) {
return user;
}
return null;
}
private String hashPassword(String password) {
try {
MessageDigest md = MessageDigest.getInstance("SHA-256");
byte[] hash = md.digest(password.getBytes());
return Base64.getEncoder().encodeToString(hash);
} catch (NoSuchAlgorithmException e) {
throw new RuntimeException("Error hashing password", e);
}
}
}