Bcrypt
bcrypt는 비밀번호를 안전하게 해시하기 위해 설계된 함수로, 몇 가지 중요한 특징이 있습니다.
- 적응형 함수
- bcrypt는 반복 횟수를 설정할 수 있어, 시간이 지남에 따라 컴퓨터 성능이 향상되더라도 반복 횟수를 조정하여 보안 수준을 유지할 수 있습니다.
- 솔트 포함:
- bcrypt는 자동으로 솔트를 생성하여 해시 값에 포함시킵니다.
- 이는 동일한 비밀번호라도 매번 다른 해시 값을 생성하도록 합니다.
- 고정된 해시 길이
- bcrypt로 생성된 해시 값은 항상 60자리를 차지합니다.
솔트(Salt)
솔트는 해시 과정에서 추가되는 무작위 데이터로, 동일한 비밀번호라도 다른 솔트 값을 사용하면 완전히 다른 해시 값을 생성하게 됩니다.
- 해시 값 고유성: 솔트를 사용하면 동일한 비밀번호라도 다른 해시 값을 생성하여, 레인보우 테이블 공격을 방지할 수 있습니다.
- 사전 공격 방지: 솔트를 사용하면 공격자가 사전 컴퓨팅된 해시 값으로 비밀번호를 추측하는 것을 어렵게 만듭니다.
- 무작위성: 각 비밀번호에 고유한 솔트 값을 추가하여 해시 값을 더욱 안전하게 만듭니다.
Share article