용어와 정의
영문 또는 원어: Cryptographic hash function
한글명: 암호학적 해시 함수
암호학적 해시 함수는 입력 데이터를 정해진 길이의 값으로 변환하며 보안 목적에 필요한 역상 저항성과 충돌 저항성 등을 고려한 함수입니다.
정확한 의미와 원리
입력이 조금만 바뀌어도 결과가 달라지도록 설계합니다. 서로 다른 입력이 같은 결과를 가질 가능성은 존재하므로 어떤 공격을 어렵게 하는지 구분해서 사용합니다.
쉽게 이해하는 사용 예시
신뢰할 수 있는 배포처가 제공한 해시와 다운로드 파일의 해시를 비교해 파일이 달라졌는지 확인할 수 있습니다.
종류와 관련 개념의 차이
SHA-2와 SHA-3는 서로 다른 설계 계열입니다. SHA-256은 SHA-2의 한 종류이며 MD5와 SHA-1은 충돌 저항성이 필요한 새 보안 용도에 적합한 선택으로 보지 않습니다.
적용 조건과 오해하기 쉬운 점
일반 해시를 비밀번호에 한 번 적용하는 것과 느리게 계산하도록 설계한 비밀번호 유도 함수를 쓰는 것은 다릅니다. 파일과 해시가 함께 변조될 수 있는 경로도 고려해야 합니다.
SHA-1 SHA-1 해시
이 절의 용어: SHA-1 / SHA-1 해시
SHA-1은 160비트 결과를 만드는 암호학적 해시 알고리즘입니다. 충돌 저항성 문제가 알려져 있어 충돌 저항성이 필요한 새 보안 용도의 권장 선택으로 취급하지 않습니다. 과거 데이터의 식별이나 검증을 읽는 것과 새 서명 및 인증 설계에서 채택하는 것은 구분합니다.
SHA-2 SHA-2 해시 계열
이 절의 용어: SHA-2 / SHA-2 해시 계열
SHA-2는 SHA-256과 SHA-512 등을 포함하는 해시 알고리즘 계열입니다. 결과 길이와 내부 처리 구조가 다른 종류가 있으므로 SHA-2라는 계열명만으로 세부 방식을 확정하지 않습니다. 일반 해시와 비밀번호 저장용 키 유도 함수도 구분해야 합니다.
SHA-3 SHA-3 해시 계열
이 절의 용어: SHA-3 / SHA-3 해시 계열
SHA-3는 SHA-2와 다른 내부 구조를 사용하는 해시 계열입니다. SHA3-256 같은 고정 길이 함수와 관련 표준의 확장 출력 함수는 사용 방식이 다릅니다. SHA-3가 존재한다는 이유만으로 모든 SHA-2 사용이 취약해졌다고 해석하지 않습니다.
MD5 MD5 해시
이 절의 용어: MD5 / MD5 해시
MD5는 128비트 해시 값을 만드는 과거의 알고리즘입니다. 충돌을 어렵게 해야 하는 보안 목적에 적합하지 않으므로 새 서명이나 무결성 보안 설계의 기준으로 삼지 않습니다. 파일 분류에 남아 있는 값과 공격자의 변조를 막는 검증 수단을 구분해야 합니다.
관련 용어와 글
함께 이해할 기준 개념
함께 비교할 용어
- Symmetric encryption 대칭키 암호화
- Asymmetric cryptography 비대칭키 암호
- HMAC 키 기반 해시 메시지 인증 코드
- Digital signature 디지털 서명
- PKI 공개키 기반 구조
- Digital certificate 디지털 인증서
- Encryption key 암호화 키
- KDF 키 유도 함수
- Salt 솔트
- HSM 하드웨어 보안 모듈
- TPM 신뢰 플랫폼 모듈
- Secure Boot 보안 부팅
- AES-128 128비트 키 AES
- AES-192 192비트 키 AES
- AES-256 256비트 키 AES
- GCM 인증 기능을 제공하는 카운터 모드
- CBC 암호 블록 연결 모드
- RSA RSA 공개키 암호 계열
- ECC 타원곡선 암호
- ECDH 타원곡선 디피 헬먼 키 합의
- SHA-1 SHA-1 해시
- SHA-2 SHA-2 해시 계열
- SHA-3 SHA-3 해시 계열
- MD5 MD5 해시
- ECDSA 타원곡선 디지털 서명 알고리즘
- EdDSA 에드워즈 곡선 디지털 서명 알고리즘
- Root CA 루트 인증기관
- Intermediate CA 중간 인증기관
- CRL 인증서 폐기 목록
- PBKDF2 비밀번호 기반 키 유도 함수 2
- Argon2id Argon2 혼합 방식
- TPM 1.2 TPM 버전 1.2
- TPM 2.0 TPM 버전 2.0
- Measured Boot 측정 부팅
- SBOM 소프트웨어 자재 명세서
- VEX 취약점 활용 가능성 정보
- DevSecOps 개발과 보안 및 운영의 통합
- Vulnerability 취약점