보안

[Forensics] SHA-1 충돌 현상과 해시함수 개념 정리

융서융서 2021. 4. 5. 17:04

암호화한 해시함수의 조건

A  B 이면 h(A) ≠ h(B) 
즉, 동일한 파일이라면 해시가 모두 같아야 하고, 다른 파일이라면 해시가 모두 달라야 한다.

'충돌'이란?

A  B 인데 h(A) = h(B) 인 사례가 발견되는 경우를 말한다.

 

안전하다고 여겨지던 SHA-1 함수의 충돌 현상을 2017년에 구글에서 찾아냈고 ,

이를 SHAttered 에 공개, 그리고 크롬과 여러 사이트에서 SHA-1의 지원을 중단하였다.

 

 

이와 관련하여, DFC 2020 (Digital Forensics Challenge) 에서는 SHA-1이 안전하지 않음을 깨닫게 하기 위한 문제로서 101번 "Same or Different?" 문제를 출제하였다. 해당 문제에 대한 풀이는 여기에서 볼 수 있다.

 

SHA-1 충돌 사례

위에서 설명한 SHA-1 함수의 충돌은 구글에서 밝혀냈고, 지금도 사례로서 인터넷에 제공하고 있다.

아래 페이지에서 pdf로 제공된 파일을 다운 받아 확인할 수 있다.

shattered.io/

 

SHAttered

Isn't SHA-1 deprecated? Today, many applications still rely on SHA-1, even though theoretical attacks have been known since 2005, and SHA-1 was officially deprecated by NIST in 2011. We hope our practical attack on SHA-1 will increase awareness and convinc

shattered.io


-"Same or Different?" 문제 알아보기

 

[Forensics] DFC 2020 101번 문제 풀이

문제 문제 해석 (checker.pyc 파일에 담긴 내용) : SHA1로 해싱했을 때는 같은 값이, SHA2로 해싱했을 땐 다른 값이 나오는 두 값을 찾아, 이 두 파일의 각 SHA3-256 값을 구해 XOR 연산하여라. 풀이 방법 1. c

ottl-seo.tistory.com