SHA-1 해시 생성기
Git를 구동하는 160비트 다이제스트 함수
SHA-1은 NSA가 설계한 암호학적 해시 함수로 160비트 다이제스트(16진수 40자)를 생성합니다. 2017년 실용적 충돌이 시연되었지만, SHA-1은 여전히 Git에서 커밋 식별에 사용됩니다.
SHA-1이란?
SHA-1은 데이터를 512비트 블록으로 80라운드의 비트별 논리 연산, 모듈러 덧셈, 순환 시프트로 처리합니다.
✅ 특징
- • Git VCS: Git 리포지토리의 모든 커밋과 객체 식별
- • 160비트 출력: 40자리 16진수 다이제스트
- • 광범위한 지원: 모든 프로그래밍 언어에서 보편적으로 사용 가능
- • 빠름: 하드웨어 지원으로 빠른 계산
📊 용도
- • Git: 커밋 식별, 브랜칭, 머징
- • 체크섬: 파일 무결성 검증
- • 레거시 시스템: 이전 SSL/TLS 인증서
- • 핑거프린팅: 콘텐츠 식별
⚠️ 폐기 경고
SHA-1은 암호학적으로 구식입니다. Google과 CWI Amsterdam이 2017년 실용적 충돌을 시연했습니다(SHAttered 공격). SHA-256을 사용하세요.
🔄 SHA-1 비교
🔵
MD5
128비트
깨짐 — 사용 금지
🟢
SHA-1
160비트
구식 — 충돌 알려짐
🟡
SHA-256
256비트
안전 — 권장
❓ 자주 묻는 질문
SHA-1은 아직 안전한가요?
아니요. 2017년 실용적 충돌이 시연되었습니다. SHA-1은 더 이상 디지털 서명에 허용되지 않습니다.
Git이 아직 SHA-1을 사용하는 이유는?
Git은 SHA-256으로 점진적 마이그레이션 중입니다. SHA-1의 속도와 Git에서의 비암호학적 사용이 마이그레이션을 덜 급하게 만들었습니다.
SHA-1 대신 무엇을 사용해야 하나요?
대부분의 애플리케이션에 SHA-256.