티스토리 뷰
- CryptoUtils
public class CryptoUtils {
public static void main(String[] args) {
System.out.println(hashSha512("test1234"));
System.out.println(hashSha512("test124"));
}
public static String hashSha512(String input) {
try {
StringBuilder authTestBuilder = new StringBuilder();
MessageDigest te = MessageDigest.getInstance("SHA-512");
te.update(input.getBytes(StandardCharsets.UTF_8));
for (byte hashByte : te.digest()) {
authTestBuilder.append(String.format("%02x", hashByte));
}
return authTestBuilder.toString();
} catch (NoSuchAlgorithmException ignored) {
return null;
}
}
private CryptoUtils() {
}
// 1. hashSha512 메서드 로직 완성하기
// - input으로 "test1234"들어오면
//"42128a86a70f94b3cbdb1b1d350f543f549f3cdb221398345847979d51e0c68b7948da6e97e9194ec0589dd48e82b2db0e15cce3748e196eea6371e3e147b616" 반환되게
// - 이 메서드는 throws 시그니처를 사용하지 않음. 고로 NoSuchAlgorithmException 발생 시 null 반환 하도록 조치.
// 2. CryptoUtils 클래스 객체화 못하게 막기
}
- MemberService 추가
user.setPassword(CryptoUtils.hashSha512(user.getPassword()));
'웹 개발 > SpringBoot' 카테고리의 다른 글
| [Spirng Boot] Password Reset (0) | 2022.11.09 |
|---|---|
| [Spring Boot] 비밀번호 재 설정 시 이메일 존재 유무 확인 (5) | 2022.11.08 |
| [Spring Boot] 회원 가입 구현하기 문제 (0) | 2022.11.08 |
| [Spring Boot] 비밀번호 암호화 (0) | 2022.11.08 |
| [Spring Boot] 이메일 전송 (0) | 2022.11.07 |
댓글