이 포스트는 2020년 05월 26일에 작성되었습니다.
🥅 GOAL
- 💻
Portfolio
- My Page - 비밀번호 보안 기능 추가, 비밀번호 수정, 회원가입, 로그인 기능 수정
⚽️ Achieve
- 비밀번호 보안 기능 추가
- 회원가입 시 사용자로부터 입력받은 비밀번호(plain text)를 BCrypt 암호화 처리하여 DB에 저장
- 72byte의 길이를 가지고 있음
- 패스워드 저장목적으로 나온 해싱함수로써 단방향 암호화 방식으로 복호화가 불가능
- 비밀번호 수정, 회원가입, 로그인 기능 수정
- BCrypt 암호화처리로 인해 기존 sql문으로 아이디 비밀번호 검증방식을 하던 로직 모두 수정
- parameter로 받은 평문과 DB에 저장된 암호화값 비교해서 로직 수행
- 로그인 관련 쿠키 설정 로직 model 분리, 로그인 유효성 미검증 오류 수정
🗣 Comment
- 미루고 미뤄졌던 비밀번호 보안 방식을 알아보던중 단방향 해싱함수 MD-5, SHA-1, SHA-256 등등 중에 가장 빠르고 간편하게 프로젝트에 적용할 수 있는 방식 채택함. 무엇 보다도 salt값을 DB에 직접 저장하지 않는 강점이 있다. 암호학에서 말하듯이 이미 검증된 알고리즘이 존재하므로 개인이 따로 구현하는 것보다 이미 검증된 방식을 채택해서 적용하는게 낫다고 판단.