MD 192: 수정된 메시지 확장으로 강화된 192비트 해시 함수
초록
본 논문은 SHA‑1 구조를 기반으로 192비트 출력과 6개의 체이닝 변수, 그리고 기존 메시지 스케줄을 개선한 새로운 메시지 확장 방식을 도입한 MD‑192 해시 함수를 제안한다. 설계 목표는 충돌·프리이미지 저항성을 강화하고, SHA‑1 대비 보안성을 높이는 것이다. 실험 결과는 SHA‑1보다 연산 시간이 다소 늘었지만, 출력 길이가 길어 충돌 복잡도가 2⁹⁶ 비트로 향상된다고 주장한다.
상세 분석
본 논문이 제안하는 MD‑192은 SHA‑1과 거의 동일한 블록 구조(512 비트)와 라운드 수(80)를 유지하면서, 체이닝 변수의 개수를 다섯 개에서 여섯 개로 확대하고, 초기값을 임의의 32 비트 상수들로 설정한다. 가장 큰 차별점은 메시지 스케줄링 단계에서 기존 SHA‑1의 단순 XOR‑ROT 연산을 확장하여, 16 ~ 19 라운드와 20 ~ 63 라운드, 64 ~ 79 라운드마다 서로 다른 회전량(1비트, 13비트 등)을 적용한다. 이는 “유사 단어 간 최소 거리”를 늘려 차분 공격에 대한 저항성을 높이려는 시도이다. 또한 라운드 내부에서 변수 F를 추가하고, D 레지스터에 15비트 좌측 회전을 적용함으로써 비트 혼합을 강화한다.
하지만 논문은 이러한 설계가 실제로 차분 경로를 차단하는지에 대한 정량적 증명을 제공하지 않는다. 기존 SHA‑1에 대한 Wang의 차분 공격은 메시지 스케줄의 선형성에 크게 의존하는데, 제안된 확장은 선형성을 일부 감소시키지만, 여전히 32 비트 워드 단위의 XOR와 회전 연산에 기반하고 있어 고차 차분 분석이 가능할 여지가 있다. 특히, 새로운 라운드 상수 Kₜ와 함수 F1이 기존 SHA‑1과 동일한 논리 연산(IF, XOR, MAJ)을 사용하므로, 전체 구조적 취약점이 크게 변하지 않는다.
성능 측면에서는 6번째 체이닝 변수를 추가함에 따라 내부 상태 업데이트가 1 워드 늘어나고, 메시지 확장 단계가 복잡해져 연산 사이클이 증가한다. 실험 결과는 Pentium IV 환경에서 SHA‑1 대비 약 10 %~15 % 정도의 속도 저하를 보였다고 보고하지만, 구체적인 벤치마크 방법론이나 비교 대상 구현(예: 최적화된 SHA‑1) 제시가 부족하다. 또한, 192 비트 출력이 충돌 복잡도를 2⁹⁶으로 만든다는 주장은 “출력 비트 수 = 보안 수준”이라는 단순 가정에 의존하며, 실제 충돌 공격 비용은 구조적 약점에 따라 크게 달라질 수 있다.
보안 평가에서는 프리이미지와 두 번째 프리이미지 저항성을 언급하지만, 이에 대한 실험적 혹은 이론적 분석이 전혀 없으며, 단순히 “2^m 연산 필요”라는 이상적 모델만 제시한다. 따라서 MD‑192이 SHA‑1보다 실질적으로 더 안전하다고 결론짓기에는 증거가 부족하다.
요약하면, MD‑192은 기존 SHA‑1에 몇 가지 구조적 변형을 가한 설계이며, 출력 길이 확대와 메시지 스케줄 복잡도 증가를 통해 표면적인 보안 향상을 주장한다. 그러나 차분 공격에 대한 구체적 저항성 증명, 효율성 비교, 그리고 표준화된 보안 분석이 부재한 점이 큰 약점으로 남는다.
댓글 및 학술 토론
Loading comments...
의견 남기기