구글은 최근 네덜란드 암스테르담 국립수학전산학연구소(CWI)와 함께 SHA-1으로 검증한 값이 똑같은 PDF파일 두 개를 만들었다. SHA-1이 더 이상 안전한 해시 알고리즘으로 생명을 다할 수 없다는 의미다.

우리가 평상시 사용하는 문서 압축 프로그램(Zip, 알집 등)은 비밀번호를 넣으면 압축이 풀리는 양방향 방식이다. 이와 달리 SHA-1은 일방향 암호알고리즘이다. 특정 문서를 압축해 해시 값을 만드는 데 풀리지는 않는다.

공격자는 이런 충돌 현상을 이용해 시스템을 속일 수 있다. 완전히 다른 두 개 보험 계약을 바꿔치기하는 식이다. A계약서를 B로 압축해 DB에 넣어뒀는데 해커가 C계약서로 바꿔치기 하는 식이다. 해시 값이 같아 시스템은 알아채지 못한다. 해커가 악성코드를 SHA-1으로 압축한 후 정상 프로그램으로 바꿔치기 하는 방법도 가능하다. SHA-1은 전자서명, HTTP인증, 버전 관리, 백업 시스템 등에 쓰인다.
미국 국가안보국(NSA)은 1995년 SHA-1을 만들었다. SHA-1은 TLS/SSL(Transport Layer Security/Secure sokect Layer), IPSec 등 많은 보안 프로토콜과 프로그램에 사용된다.
구글은 클라우드에 있는 컴퓨터를 동원해 922경3372조368억5475만번 이상 연산을 수행해 SHA-1 충돌을 규명했다. 컴퓨팅 파워 증가로 각종 암호 알고리즘 수명은 점점 단축된다.
중국 산동대 암호학자 왕 시아오윤(Wang Xiaoyun) 교수팀은 2005년 8월 이론적으로 SHA-1 위험성을 지적했다. 미국 정부는 2001년과 2015년에 각각 새로운 표준인 SHA-2와 SHA-3를 만들어 사용을 권고했다.
김승주 고려대 정보보호대학원 교수는 “최근 컴퓨터 속도가 빠르게 발전해 기존 암호 알고리즘이 설계 당시 예측과 다르게 신속하게 해독된다”면서 “양자컴퓨터까지 현실화된다면 이런 현상은 더욱 두드러질 것”이라고 말했다. 김 교수는 “우리나라도 암호안전성 분석기술에 보다 많은 투자해 취약점을 미리 파악하고 대비해야 한다”고 강조했다.

저작권자 © PRESS9 무단전재 및 재배포 금지