• 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    미해결

bcrypt 질문입니다

21.12.03 00:09 작성 조회수 122

0

저번 해시 암호화 강의를 열심히 듣고 단방향 암호화와 쏠트 원리를 공부하고 실제로 crypto pbkdf2로 로그인 로직을 구현해보기도 하였습니다.

근데 bcrypt문법보니 현타오네요.
이렇게 간단하고 sha알고리즘 gpu문제도 해결하고요.

대신에 음청 느리다고 배웠습니다.

거두절미하고, 
pbkdf2를 쓸때는 db테이블에 쏠트라는 필드를 만들어 거기에 각 개인마다 할당되는 랜덤 쏠트값을 저장하여,
로그인 비교할때 꺼내서 비교하였습니다.

하지만 bcrypt는 그냥 compare()하고 끝이던데, 이놈 쏠트 원리는 어떻게 되는지 간단히 설명해 주실수 있나요? 

답변 1

답변을 작성해보세요.

0

https://codingdog.tistory.com/entry/bcrypt%EB%8A%94-salt%EA%B0%80-%EB%A7%A4%EB%B2%88-%EB%8B%AC%EB%9D%BC%EC%A7%80%EB%8A%94%EB%8D%B0-match%EB%A5%BC-%EC%96%B4%EB%96%BB%EA%B2%8C-%EC%9E%98-%EC%8B%9C%ED%82%AC%EA%B9%8C%EC%9A%94

자문자답 합니다.

bcrypt는 salt 값을 스스로 암호화 시킨 문자열에서 일부 가져와 쓴다고 하네요.

즉, crypto모듈은 개발자가 랜덤 쏠트값을 만들어서 돌린다면,
bcrypt는 지가 스스로 랜덤 쏠트값을 뽑아서 돌린다.