License

[정보보안기사 필기 요약] 해시함수

prinha 2025. 5. 20. 18:56
728x90
반응형

해시함수와 응용


1) 일방향 해시함수

- One-Wayness-Function으로 무결성체크에 이용되며, 주로 포렌식에 사용
- 임의의 길이를 갖는 메시지를 고정된 길이의 해시값, 또는 해시함수로 출력하는 함수
고정 길이, 고속 계산
- 메시지가 다르면 해시값 다름

12345/6789 = 1.18...XXXX -> 앞에 버리고 XXXX만 사용
12348/6789 = 1.18...XXXX -> 앞에 버리고 XXXX만 사용
→ 앞의 내용을 버리기때문에 역방향 계산 불가, 복호화 불가능


2) 해시함수의 보안 요구사항 ★5

 

  프리이미지 저항성
(역상 저항성)
제2프리이미지 저항성
(두번째 역상 저항성, 약한 충돌 내성)
충돌 저항성
(강한 충돌 내성)
설명 y=h(x)를 만족하는 x값을 찾는 것이 계산적으로 불가능 h(x1) = h(x2), x1 != x2를 만족하는 다른 입력 값 x2를 찾는것이 계산적으로 불가능 h(x1) = h(x2)을 만족하는 임의의 두 입력값 x1, x2를 찾는 것이 계산적으로 불가능
공격 난이도 2 2 2 (n/2)승

 

-> 두번째 역상 저항성을 깨는 방법 : 무차별 공격
-> 충돌 저항성을 깨는 방법 : 생일 공격 (생일이 동일한 두명이 50%인 확률은 최소 23명이 필요함)

 


3) 주요 해시 알고리즘

  MD5 SHA-1 RIPEMD-160
MD길이 128bit 160bit 160bit
블록크기 512bit 512bit 512bit
단계수 64(16*4) 80(20*4) 16(16*5병행라운드)
최대 메세지 길이 무한 (2의 64승)-1bit (2의 64승)-1bit



4) SHA 해시 알고리즘

  SHA-1 SHA-224 SHA-256 SHA-384 SHA-512
MD길이 160 224 256 384 512
최대 메시지 길이 (2의 64승)-1bit (2의 64승)-1bit (2의 64승)-1bit (2의 128승)-1bit (2의 128승)-1bit
블록크기 512 512 512 1024 1024
워드길이 32 32 32 64 64
단계 수 80 64 64 80 80



SHA-1,2 : 반복 구조
SHA-3 : 스펀지 구조+듀플렉스 구조 
(AES와 같은 경쟁방식의 표준화)

 

5) 변경 감지 코드 (MDC, Modification Detection Code) ★5


6) 메시지 인증 코드 (MAC, Message Authentication Code) ★5

 

7) MDC, MAC, 전자서명 비교

[MAC, MDC, 전자서명] 비교

MDC 해시함수 무결성
MAC 해시함수 + 대칭키 무결성 + 인증
전자서명 해시함수 + 비대칭키 무결성 + 인증 + 부인방지



8) MAC의 종류 ★5

MAC의 종류

축소 MAC

    해시가 두 단계로 이루어짐 

    1단계 : 키에 메시지를 이어 붙이고 해시하여 중단 단계의 다이제스트 생성

    2단계 : 키의 중간단계 다이제스트를 이어붙이고 최종적인 다이제스트 생성

HMAC

    SHA-1과 같은 일방향 해시함수를 이용하여 메시지 인증코드를 구성하는 방법

    TLS, IPSec, SET 프로토콜에서 사용

CBC-MAC -> 블록암호

     대칭키 암호시스템에 대한 암호 블록체인(CBC)모드와 유사

     대칭키 암호를 N번 사용하여 N개의 평문 블록에서 하나의 MAC생성

 

MAC에 대한 공격 -> 복사한 값은 구별하기 힘들다

① 재전송 공격

    공격자가 메시지와 메시지 인증코드를 스니핑하여 수신자에게 전달하더라도 수신자는 이를 구분할 수 없음

    막을 수 있는 방법 : 순서번호, 타임스탬프, 비표(난수), 시도/응답(비동기식)

② 제3자에 대한 증명

     MAC은 공유키(대칭키)를 사용하기에 MAC값을 계산한 것은 서로 상대방이라고 말할 수 있음

     제 3자에게 MAC값을 계산한 것은 자신이 아니라고 증명할 방법이 없음

     증명할 수 있는 방법 : 전자서명

③ 부인 방지

     MAC에서는 송수신자 중 어느 쪽 주장이 맞는지를 판단할 수 없음

     증명할 수 있는 방법 : 전자서명

 

 

728x90
반응형