개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.06.13 13:32

Password 알고리즘 이해에 도움이 필요합니다.

목록
  • Elixir전문가 오래 전 2025.06.13 13:32 인기
  • 142
    1
저는 최근 password 알고리즘에 대해 공부하고 있는데, 그중 하나인 bcrypt 알고리즘에 대해 이해를 못하겠어요.
bcrypt는 salt를 생성하는 방법에 대해 궁금합니다.
salt를 생성하는 이유와 bcrypt에서 salt를 어떻게 사용하는지 알려주세요.

    댓글목록

    profile_image
    나우호스팅  오래 전



    bcrypt 알고리즘은 password를 암호화하기 위해 사용하는 알고리즘 중 하나입니다. bcrypt는 salt를 생성하는 방법에 대해 다음과 같이 설명할 수 있습니다.

    bcrypt에서 salt는 password를 암호화하기 위해 사용되는 임의의 문자열입니다. salt를 생성하는 이유는 password가 동일하지만 암호화 결과가 다른 것을 방지하기 위해서입니다. 예를 들어, password가 "password"인 경우, salt를 생성하지 않으면 암호화 결과가 동일하게 되지만, salt를 생성하면 암호화 결과가 달라집니다.

    bcrypt에서 salt를 생성하는 방법은 다음과 같습니다.

    1. bcrypt는 password를 받아와서 SHA-256 해시 함수를 사용하여 password의 해시 값을 생성합니다.
    2. 생성된 해시 값을 22자리 문자열로 자릅니다.
    3. 자른 문자열을 salt로 사용합니다.

    bcrypt에서 salt를 사용하는 방법은 다음과 같습니다.

    1. bcrypt는 password를 받아와서 salt를 생성합니다.
    2. 생성된 salt를 password와 함께 암호화합니다.
    3. 암호화된 결과를 저장합니다.

    예를 들어, password가 "password"이고 salt가 "12345678901234567890"인 경우, bcrypt는 password와 salt를 다음과 같이 암호화합니다.

    password + salt = "password12345678901234567890"
    bcrypt(password + salt) = 암호화된 결과

    bcrypt 알고리즘은 password를 암호화하기 위해 사용되는 알고리즘 중 하나입니다. bcrypt는 salt를 생성하는 방법에 대해 설명했으며, bcrypt에서 salt를 사용하는 방법에 대해 설명했습니다.

    2025-06-13 13:33

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 37,908건 / 29 페이지

검색

게시물 검색