파일 해시 구하기

카테고리 : 웹툴/암호
문자열 해시 구하려면?


파일을 드래그앤드롭 (Drag & Drop Here)


암호화 방식 선택하기

대문자

소문자




파일 해시에 대해 알아보기 ...

파일 해시는 어떻게 구할까?

C언어를 조금(파일 입출력 까지) 배워본사람은 파일을 읽는 방법을 알것이다.

바이트단위로 읽어들이는 방법으로 01010110110100.... 읽게 된다.

 

이 값을 만약에 해시 함수에 넣게 된다면?

해시값이 나올것이다.

 

토픽 - sha1 충돌 문제

그런데 sha1에서 충돌을 발견하였다는 구글의 발표가 2017/02/23 에 있었다.

파일 1번 https://shattered.io/static/shattered-1.pdf

파일 2번 https://shattered.io/static/shattered-2.pdf

이 두개의 파일은 다른 파일이다 그러나 sha1해시 값은 38762CF7F55934B34D179AE6A4C80CADCCBB7F0A 로 동일하게 나온다.

해시값이 중복이 될수가 있는게 2^160승 이상의 다른값을 비교하다보면... 어마어마한 숫자다

그러나 GPU 연산을 통해 구할순 있었다.

또한 sha1의 취약점 때문에 10만배 이상 빠르게 유사하지만 해시값이 같은 파일을 생성할수 있다고 구글은 말했다.

이는 해커가 만약 이를 악용할경우 사용자들이 위험해질수 있다.

EXE 파일의 디지털 인증서, 구버전 tls 등의 분야에서 sha1이 자신이 진짜임을 입증하는데 쓰인다.

 

충돌방지를 위해 sha256 보다는 sha512를 추천한다. 값이 커질수록 중복값이 줄어들게 되므로

 

충돌이 왜 위험하냐? 는 질문이 있을수 있다.

왜 위험하냐하면 공식 프로그램을 배포할때 해당 프로그램이 맞음을 해시값도 같이 배포하여 증명한다.

그런데, 해커가 그 값을 따라 악성 프로그램을 배포하면??

백신이 진단 조차 안하는 경우도 발생한다.

이미 인증받은 프로그램이라고 인식하니..(싸구려 백신들의 경우)

 

내가 맞음을 증명을 하는데 같은 증명키를 가진 다른놈이 옆에 있다.

둘중에 누가 맞고 누가 조작된걸까?...



대/소문자 해시가 필요한 경우가 있어서 대/소문자 모두 지원하는 툴을 제작하였습니다.

오픈소스 참조 https://github.com/emn178

'웹툴 > 암호' 카테고리의 다른 글

문자열 해시 암호화 (주의 : 복호화 불가)  (0) 2019.04.10

 

저작권 보호안내
무단 전재, 재배포 행위는 금지됩니다. (글을 복사하여 게시금지)
본문의 일부(링크용 문장) 인용은 가능하지만, 출처와 링크(a 태그)를 남기셔야 됩니다.
(웹툴을 이용하고, 스크린샷/녹화하는것은 상관없습니다.)

예외적으로. 저에게 허락받은 경우에는 본문을 전재할 수 있습니다.

만약, 본문 공유를 원하신다면 링크 공유를 해주세요

저작권 정책 확인하기
링크 공유하기

 댓글