TECH 으로 돌아가기
TECH HACKER NEWS 1주 전 2분 읽기 59 READS

비밀번호는 어떻게 지켜지나: 해시 함수 한 편으로 끝내기

해시 함수는 임의 길이의 데이터를 고정 길이의 '지문'으로 잘게 다져(Chopped) 한 방향으로만 변환합니다. 핵심은 세 가지 성질입니다. 같은 입력은 항상 같은 출력을 내지만 출력에서 입력을 거꾸로 복원할 수 없는 역상 저항성, 같은 출력을 내는 다른 입력을 찾기 어려운 충돌 저항성, 그리고 입력이 한 비트만 바뀌어도 출력이 완전히 달라지는 눈사태 효과죠. 비둘기집 원리상 충돌은 수학적으로 반드시 존재하지만, 좋은 해시는 그 충돌을 '계산적으로 불가능'하게 만듭니다. 특히 생일 역설 때문에 충돌 공격은 우리 직관보다 훨씬 빨리 가능해지며, 이 때문에 MD5와 SHA-1은 이미 깨졌습니다. 실무 교훈은 분명합니다. 무결성 검증엔 SHA-256/SHA-3을 쓰고, 비밀번호 저장에는 반드시 솔트를 더한 bcrypt·argon2 같은 '느린' 해시를 사용해야 평문 노출과 레인보우 테이블 공격을 막을 수 있습니다.

SOURCE · HACKER NEWS
원문 전체 보기 → https://0xkrt26.github.io/math_behind_security/2026/06/09/th...
SHARE
처리 중...