BCRIPT 암호화하기

암호화할 string+유니크한 sort값(그냥 진짜 랜덤한 스트링) 이용해서 해시값으로 맹금

이렇게 저장한 비번을 로그인떄 bcrpyt.compare해서 찾음

→ hashed 값에서 real_salt를 추출하여 plaintext와 real_salt값으로 다시 해싱해서 비교

[사용법]

  1. npm install bcryptjs —save —force(계속 포쓰중 ㅜ)
  2. repository에 import
  3. 넣을떄 password+salt 해시 함수로 넣고
  4. 비교할때는 compare함수에 plaintext, db데이터 넣으면됨 신기

그럼 데이터베이스의 해시가 달라지는데 어떻게 비밀번호가 일치하는지 확인할 수 있을까?

대신 사용자가 입력한 비밀번호와 데이터베이스에 저장된 해시 둘에,

어떤 해싱(로직?)을 적용해서 비교한다고 한다.

이것이 가능한 이유는 저장된 해시 앞부분에 솔트 정보가 들어 있고

이를 추론해서 사용자가 입력한 비밀번호의 해시와 비교할 수 있기 때문인 것

JWT

: 정보를안전하게 전할떄나 유저 권한 체크할떄 사용하는 유저 고유의 토큰값 생성시에도 사용하는 유용한 모듈

  1. header(토큰에 대한 메타 데이터)