Skip to content
Snippets Groups Projects
Commit 14207c79 authored by zhengbo's avatar zhengbo
Browse files

change hash function

parent de12710d
Branches LoginPage
No related tags found
2 merge requests!27Sprint 1 done,!25Login page done
......@@ -8,7 +8,6 @@ import org.springframework.web.bind.annotation.*;
import vt.CS5934.SwitchRoom.models.ResponseModel;
import vt.CS5934.SwitchRoom.models.UserModel;
import vt.CS5934.SwitchRoom.services.UserService;
import vt.CS5934.SwitchRoom.hash.SHAModel;
import java.security.NoSuchAlgorithmException;
......@@ -40,10 +39,9 @@ public class UserController {
public ResponseModel handlePost(@RequestBody UserModel newUser) throws NoSuchAlgorithmException {
logger.info("You reached the handlePost() functions.");
ResponseModel response = new ResponseModel();
SHAModel hash = new SHAModel();
try{
UserModel userModel = userService.addUserToDB(newUser.getUsername(), hash.toHexString(hash.getSHA(newUser.getPassword())), newUser.getEmail(), newUser.getFirstname(), newUser.getLastname(), newUser.getGender());
UserModel userModel = userService.addUserToDB(newUser.getUsername(), userService.hashPassword(newUser.getPassword()), newUser.getEmail(), newUser.getFirstname(), newUser.getLastname(), newUser.getGender());
response.setMessage("Saved successfully");
response.setStatus(HttpStatus.OK);
response.setData(userModel);
......@@ -60,8 +58,8 @@ public class UserController {
public ResponseModel loginUser(@RequestBody UserModel user) throws NoSuchAlgorithmException {
logger.info("You reached the handlePost() functions.");
ResponseModel response = new ResponseModel();
SHAModel hash = new SHAModel();
String inputPassword = hash.get_SHA_1_SecurePassword(user.getPassword());
String inputPassword = userService.hashPassword(user.getPassword());
// hash.get_SHA_1_SecurePassword(user.getPassword());
try{
UserModel existUser = userService.loginUser(user.getUsername());
......
......@@ -4,11 +4,13 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import vt.CS5934.SwitchRoom.hash.SHAModel;
import vt.CS5934.SwitchRoom.models.ExampleModel;
import vt.CS5934.SwitchRoom.models.UserModel;
import vt.CS5934.SwitchRoom.repositories.UserRepository;
import javax.transaction.Transactional;
import java.security.NoSuchAlgorithmException;
import java.util.List;
@Service
......@@ -19,6 +21,8 @@ public class UserService {
*/
private final Logger logger = LoggerFactory.getLogger(UserService.class);
private SHAModel shaModel = new SHAModel();
/**
* Autowired is a Spring feature that it will create or looking for the existing object in memory.
* It usually uses on Repository class, Service class, or some globe object in the class.
......@@ -26,6 +30,9 @@ public class UserService {
@Autowired
UserRepository userRepository;
public UserService() throws NoSuchAlgorithmException {
}
public UserModel addUserToDB(String username, String password, String email, String firstname, String lastname, String gender){
logger.info("Reached addNewExampleModelToDB()");
UserModel newUser = new UserModel(username, password, email, firstname, lastname, gender);
......@@ -39,4 +46,12 @@ public class UserService {
return existUser;
}
public String hashPassword(String password) throws NoSuchAlgorithmException {
String result = "";
result = shaModel.toHexString(shaModel.getSHA(password));
return result;
}
}
......@@ -93,16 +93,16 @@
/>
<div class="form-border"></div>
<!-- Gender Choose -->
<label for="user-gender" style="padding-top: 13px">
&nbsp;Gender
</label>
<div class="mb-2 flex items-center text-sm">
<el-radio-group v-model="userInformation.gender" class="ml-4">
<el-radio label="Male" size="large">Male</el-radio>
<el-radio label="Female" size="large">Female</el-radio>
</el-radio-group>
</div>
<!-- &lt;!&ndash; Gender Choose &ndash;&gt;-->
<!-- <label for="user-gender" style="padding-top: 13px">-->
<!-- &nbsp;Gender-->
<!-- </label>-->
<!-- <div class="mb-2 flex items-center text-sm">-->
<!-- <el-radio-group v-model="userInformation.gender" class="ml-4">-->
<!-- <el-radio label="Male" size="large">Male</el-radio>-->
<!-- <el-radio label="Female" size="large">Female</el-radio>-->
<!-- </el-radio-group>-->
<!-- </div>-->
<!-- terms agreement -->
<div>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment