bcrypt cost ์ค์ ๊ฐ์ด๋ ์ฌ์ฉ๋ฒ
์ง๊ธ ์ฐ๋ cost ์ ๊ทธ๋ ์ธก์ ํ ํด์ 1ํ ์๊ฐ์ ๋ฃ๊ณ ๋ชฉํ ์ง์ฐ์ ์ ์ผ๋ฉด, cost ๋ฅผ ๋ฐ๊ฟ ๋์ ์์ ์๊ฐ๊ณผ ๋ชฉํ๋ฅผ ์งํค๋ ์ต๋ cost ๋ฅผ ๋ณด์ฌ์ค๋๋ค. bcrypt ๋ cost ๊ฐ 1 ์ค๋ฅผ ๋๋ง๋ค ๋ฐ๋ณต ํ์๊ฐ 2๋ฐฐ๊ฐ ๋๋ฏ๋ก ํ ์ง์ ๋ง ์ธก์ ํด๋ ๋๋จธ์ง๋ฅผ ํ์ฐํ ์ ์์ต๋๋ค. ํผํฌ ์ด๋น ๋ก๊ทธ์ธ ์๋ฅผ ๋ฃ์ผ๋ฉด ํ์ํ CPU ์ฝ์ด ์๋ ๋์ต๋๋ค.
๊ณ์ฐ ๋ฐฉ์๊ณผ ๊ทผ๊ฑฐ
์์ ์๊ฐ์ ์ธก์ ๊ฐ ร 2^(๋ชฉํ cost โ ์ธก์ cost) ์ด๋ฉฐ ํ๋์จ์ด๋ณ ๋ฒค์น๋งํฌ ํ๋ ์ฐ์ง ์์ต๋๋ค. ๊ถ๊ณ ๊ธฐ์ค์ OWASP Password Storage Cheat Sheet (2026๋ 10์ ํ์ธ) ๋ก, ์ ๊ท ์์คํ ์๋ Argon2id, bcrypt ๋ ๋ ๊ฑฐ์์ฉ์ด๋ฉฐ work factor 10 ์ด์, ํด์ 1ํ๋ 1์ด ๋ฏธ๋ง์ ์ ์ํ๊ณ ์ด์์ ์ธ ๊ฐ์ ํฉ๊ธ๋ฅ ์ ์๋ค๊ณ ๋ฐํ๋๋ค.
ํ๊ณ์ ์ฃผ์์ฌํญ
์ด ๋๊ตฌ๋ ํด์๋ฅผ ์ค์ ๋ก ๋๋ฆฌ์ง ์์ผ๋ฏ๋ก ์ธก์ ๊ฐ์ด ๋ถ์ ํํ๋ฉด ๊ฒฐ๊ณผ๋ ์ด๊ธ๋ฉ๋๋ค. ์ด์๊ณผ ๊ฐ์ CPU ์์ ์ธก์ ํ์ธ์. cost ๋ฅผ ๊ณผํ๊ฒ ์ฌ๋ฆฌ๋ฉด ๋ก๊ทธ์ธ ํญ์ฃผ ์ ์๊ฐ DoS ๊ฐ ๋๋ ํผํฌ ๋ถํ ๊ธฐ์ค์ผ๋ก ํ๋จํด์ผ ํฉ๋๋ค. ๋น๋ฐ๋ฒํธ ์นธ์ 72๋ฐ์ดํธ ์ ํ ํ์ธ์ฉ์ด๋ฏ๋ก ์ค์ ๋น๋ฐ๋ฒํธ๋ฅผ ๋ฃ์ง ๋ง์ธ์.
์์ฃผ ๋ฌป๋ ์ง๋ฌธ
OWASP ๋ ์ด์์ ์ธ work factor ์ ํฉ๊ธ๋ฅ ์ด ์๋ค๊ณ ๋ชป ๋ฐ์ต๋๋ค. ์๋ฒ ์ฑ๋ฅ๊ณผ ๋ก๊ทธ์ธ ๋ถํ์ ๋ฌ๋ ค ์์ด์, ๋ณธ์ธ ์๋ฒ์์ ์ธก์ ํ ์๊ฐ์ ๋ฃ๊ณ ๋ชฉํ ์ง์ฐ ์์ ๋ค์ด์ค๋ ์ต๋๊ฐ์ ์ฐ๋ ๊ฒ์ด ํ์ค์ ์ ๋๋ค.
ํด์ 1ํ ๋น์ฉ์ด ์ฌ๋ผ๊ฐ๋ ๋งํผ ๋ก๊ทธ์ธ ํญ์ฃผ ์ CPU ๊ฐ ๋จผ์ ๊ณ ๊ฐ๋ฉ๋๋ค. ๊ณต๊ฒฉ์๊ฐ ๋ก๊ทธ์ธ ์์ฒญ๋ง ์์๋ ์๋น์ค๊ฐ ๋ฉ์ถ๋ ์๊ฐ DoS ๊ฐ ๋ ์ ์์ด, 1ํ 1์ด ๋ฏธ๋ง์ด ์ผ๋ฐ์ ์ธ ์ง์นจ์ ๋๋ค.
OWASP ๋ ์ ๊ท ์์คํ ์ Argon2id ๋ฅผ ๊ถ์ฅํ๊ณ bcrypt ๋ ๋ ๊ฑฐ์์ฉ์ผ๋ก ๋๋ฉฐ work factor 10 ์ด์์ ์ ์ํฉ๋๋ค. ์ด๋ฏธ bcrypt ๋ฅผ ์ฐ๋ ๊ณณ์ cost ์กฐ์ ์ ์ด ๋๊ตฌ๋ฅผ ์ฐ์ธ์.