bcrypt.hash() 함수 사용 시 salt 관련
안녕하세요! 좋은 강의 잘 듣고 있습니다.
다름이 아니라 강의에서 사용하신 bcrypt 라이브러리를 더 공부하고 싶어 문서를 보다가 궁금한 점이 있어 두 가지 질문드립니다.
먼저 bcrypt.hash() 함수의 두 번째 매개변수로는 salt가 들어가야하지 않나요? 강의에서는 10을 round의 의미로 사용하시던데 이를 위해선 bcrypt.genSalt(10)과 같이 salt 생성 메서드를 사용해야 하는 것으로 보입니다.
그리고 동일하게 10이라는 값을 salt로 사용했는데 hash값이 달라진건 bcrypt 라이브러리 내부적으로 다른 로직이 있기 때문일까요?
답변 1
2
공식문서에 보시면 hash의 두번째 인자로 number 혹은 string을 받을 수 있도록 되어 있어요. number를 입력하면 bcrypt.getSalt 이 부분을 자동으로 해주게 됩니다. 그래서 직접 salt를 생성해줄 필요가 없어요.

보안상 hash를 할 때마다 새로운(랜덤한) salt가 생성됩니다. 매번 새로운 salt가 생성되면 비밀번호 해시를 어떻게 대조하느냐라고 생각할 수 있는데요. 해시 값에 salt가 포함되어 있습니다. 그래서 compare함수로 대조할 때 salt를 따로 입력하지 않는거에요. 해시처리 되기전 비밀번호와 디비에 저장되어 있던 해시비밀번호만 받도록 되어 있죠. compare하수가 내부적으로 해시비밀번호에서 salt를 추출하고 해당 salt로 비밀번호를 해시해서 해시비밀번호와 대조하게 됩니다.
Router.use 두번째 파라미터 ImageRouter : undefined 전달 오류
0
124
2
소스코드 요청
0
164
1
프록시 관련 질문
0
167
1
Presigned URL 사용시 데이터베이스 저장 시점
0
335
1
이미지 등록시 자동 등록 오류
0
218
1
강의에 사용된 코드 다운 받는 사이트 주소 있나요?
0
389
2
axios 이용해서 백엔드로 이미지 전송 중 새로고침
0
476
1
ImageList 컴포넌트에서 업로드 한 사진을 리스트에서 바로 보기 위해 이 방법도 괜찮나요??
0
386
1
이미지 처음 올릴 때만 나타나는 오류
0
255
1
es6 스타일로 Import 할때 동작하지 않습니다.
0
393
1
이미지 업로드시
0
367
1
node js를 이용하고 mysql에 이미지 경로 저장
2
1263
1
선생님 cloudFront를 사용하게되면 S3는 private으로 사용하는게 좋을까요
0
545
1
선생님 aws-sdk 모듈을 찾을 수 없다고 합니다.
0
666
1
new aws.S3 version 확인
2
509
1
react-router-dom v6 useHistory 이슈
7
641
0
람다에서 시간 초과 에러가 뜹니다!
0
318
1
첫 로드시 동일한 이미지 두번호출
2
492
1
이미지 업로드 시 배열로
2
531
1
Promise.all에 대한 질문
0
431
1
세션에 관한 질문이 있습니다.
0
434
1
Promise.all관련 질문 ("여러 이미지 미리보기" 중...)
0
312
1
cdn 주소
0
510
1
특정 user 페이지 가져오기 질문있습니다.
0
296
1





