토픽 24 / 210·암호학
SHA-3 / 스펀지 구조 (Sponge Construction)
SHA-3 / 스펀지 구조 (Sponge Construction)
NIST FIPS 202 (2015) 표준, Keccak 알고리즘 기반의 해시 함수로, SHA-2와 완전히 다른 스펀지 구조를 채택하여 동시 취약점 불가능
스펀지 구조 동작
- •흡수 (Absorb): 입력 블록을 내부 상태에 XOR → Keccak-f 순열 적용 → 반복
- •압착 (Squeeze): 내부 상태에서 해시값 추출 → 필요 시 순열 적용 후 추가 추출
내부 상태: 1600비트 (5x5x64 상태 배열), 24라운드의 Keccak-f[1600] 순열
변종: SHA3-224/256/384/512 (고정 출력), SHAKE128/256 (가변 출력/XOF, eXtendable Output Function)
장점: SHA-2와 다른 구조(동시 취약점 불가), 길이 확장 공격(Length Extension) 면역, 유연한 출력 길이(SHAKE)
단점: SHA-2 대비 소프트웨어 성능 느림 (하드웨어는 유사)
비교: SHA-2(Merkle-Damgard/길이 확장 취약/현행 표준) vs SHA-3(스펀지/길이 확장 면역/대안 표준) vs BLAKE3(Merkle Tree/최고 성능)
연관: 해시 함수, SHA-256, 전자서명, 블록체인, Keccak