반응형
소금을 비크립트에 보관해야 하나요?
bCrypt의 javadoc에는 비밀번호 암호화 방법에 대한 다음 코드가 있습니다.
String pw_hash = BCrypt.hashpw(plain_password, BCrypt.gensalt());
평문 비밀번호가 이전에 해시된 비밀번호와 일치하는지 여부를 확인하려면 checkpw 방법을 사용합니다.
if (BCrypt.checkpw(candidate_password, stored_hash))
System.out.println("It matches");
else
System.out.println("It does not match");
이 코드 조각들은 무작위로 생성된 소금이 버려지는 것을 암시합니다.이것은 사실입니까, 아니면 단지 오해의 소지가 있는 코드 조각입니까?
salt는 해시(base64 스타일 포맷으로 인코딩됨)에 통합됩니다.
예를 들어 기존 Unix 비밀번호에서는 salt는 비밀번호의 처음 두 글자로 저장되었습니다.나머지 문자는 해시 값을 나타냅니다.체커 함수는 이를 인식하고 해시를 분리하여 소금을 다시 꺼냅니다.
언급URL : https://stackoverflow.com/questions/277044/do-i-need-to-store-the-salt-with-bcrypt
반응형
'programing' 카테고리의 다른 글
C에 문자열을 연결하는 방법 중 어떤 방법이 더 효율적입니까? (0) | 2022.07.10 |
---|---|
Vuexfire bindFirebaseRef(페이지 지정 무한 스크롤 포함) (0) | 2022.07.10 |
Vuetify - 폼 규칙에서 데이터에 액세스하는 방법 (0) | 2022.07.10 |
Java에서 "final" 키워드는 어떻게 작동합니까?(오브젝트를 변경할 수 있습니다. (0) | 2022.07.10 |
Java에서 파일에서 줄 바꿈을 제거하려면 어떻게 해야 합니까? (0) | 2022.07.10 |