머클-담고르 구조 Merkle–Damgård construction
이름 풀이: 머클(Merkle)과 담고르(Damgård) 두 사람의 이름을 딴 구조(construction)
긴 글을 정해진 크기의 블록으로 나눠, 앞 블록까지 섞은 중간 해시 값에 다음 블록을 압축 함수로 차례로 섞어 해시 값을 만드는 방식. SHA-1·SHA-256 이 이 방식이다.
해시 값은 블록을 차례로 압축 함수에 넣어 만든다
SHA-1·SHA-256 같은 해시 함수는 글을 64바이트씩 블록으로 자르고, 표준이 정해 둔 «처음 값» 에서 시작해 블록을 하나씩 섞어 넣습니다. 섞는 일을 맡은 부분이 압축 함수입니다. 블록 하나를 넣을 때마다 압축 함수가 내놓는 값이 중간 해시 값입니다. 중간 해시 값은 지금까지 넣은 블록을 모두 섞은 결과이고, 다음 블록은 이 중간 해시 값하고만 섞입니다. 마지막 블록까지 섞은 마지막 중간 해시 값이 해시 값입니다.
그래서 두 글이 어느 블록에서 같은 중간 해시 값에 이르면, 그 뒤로 같은 블록을 넣는 한 끝까지 같은 중간 해시 값이 되고 해시 값도 같아집니다. 이렇게 블록을 차례로 압축 함수에 넣어 이어 가는 방식을 머클-담고르 구조라고 합니다.
출처: NIST FIPS 180-4 Secure Hash Standard (§5·§6 — H(0)·H(i)·H(N), 512비트 블록) · Handbook of Applied Cryptography 9장 Algorithm 9.25 (Merkle-Damgård construction)
다른 이름: 머클-담고르 구성
관련 용어
이 말이 나오는 글
출처
- Menezes 외, Handbook of Applied Cryptography 9장 Algorithm 9.25 — «Merkle’s meta-method … (also called the Merkle-Damgård construction)»
- NIST FIPS 180-4 — SHA-1: 512비트 블록마다 앞의 중간 해시 값 H(i−1) 에 섞어 H(i)
상태: 조각 · 고친 날 2026-10-05