스프링 비밀번호 암호화/복호화?
JAVA/Spring 2022. 6. 6. 01:17

1. 암호에 대한 기본 설명 스프링에서는 passwordEncoder로 DB에 비밀번호를 저장할때 관리자도 비밀번호를 알 수 없도록 비밀번호 암호화를 지원한다. 해시함수를 이용해서 암호화를 하게 되는데 암호화 된 비밀번호는 사람이 알아보기 어려운 형태를 띤다. 예를 들어 비밀번호가 1234 라면 암호화되었을때는 → '$2$17a$L3kE8oeG...' 암호학의 어떠한 수학 공식을 이용해서 사람이 알아보기 힘들게 저장 된다. 암호학에 관련된 영역까지는 모르니 넘어가고 이렇게 암호화 된 비밀번호와 내가 로그인 할때 입력한 비밀번호는 당연히 다를 수 밖에 없는데 어떻게 로그인이 되는 것일까? 아! 나는 바로 생각해낼 수 있었다. 옛날에 군대에서 파일을 암호화해서 송/수신하고 송수신 된 파일을 보기 위해서 복호..