가공데이터 · 도서자료 기계독해

디지털 증거의 동일성 및 진정성 입증을 위한 핵심 기술로서 해시함수의 역할, 활용 범위, 법적 인정 현황 및 기술적 논의의 필요성 doc_id PCY_201810250544571971_1

주제 (main_topic)
디지털 증거의 동일성 및 진정성 입증을 위한 핵심 기술로서 해시함수의 역할, 활용 범위, 법적 인정 현황 및 기술적 논의의 필요성
답변 불가 (is_impossible)
False
문맥 (context)
해시함수는 1990년대 중후반부터 사이버수사와 디지털포렌식 분야에서 사용된 이래 지금까지 디지털증거의 동일성을 입증하는 수단으로 활용되고 있다. 2007년 대법원이 일심회 사건에서 증거능력의 인정요건으로 동일성을 제시하였고, 이어 왕재산 사건과 이석기 사건 등에서 해시값을 동일성 입증 수단으로 인정함에 따라 압수·수색 과정에서 많이 활용되고 있다. 특히, 2011년 형사소송법 개정(제106조 제3항)으로 디지털증거에 대한 출력·복제가 압수원칙이 되면서 동일성 입증을 위한 중요한 절차로 자리매김 하였다. 그런데 대법원은 해시함수를 동일성 입증의 중요한 수단으로 인정하면서도 해시함수의 안전성, 허용되는 기술규격, 기술적 한계에 대해서 충분한 논의하지 않았다. 대법원 판례에 따르면 증거능력이 부정될 가능성이 높은 경우 즉, 해시값이 기술적 이유로 변경되거나 원본이 실시간으로 변하여 해시값이 변경될 수밖에 없는 경우 그리고 해시값을 생성할 수 없는 경우 어떻게 평가해야하는지 모호하다. 과학적 증거의 논의가 주로 지문, 거짓말탐지기, DNA, 혈흔 등을 중심으로 이루어져 해시함수에 대한 학계의 관심도 부족했다. 나아가 해시함수가 동일성 입증에 관한 원칙으로 규정되는 것이 적절한지에 대한 의문도 있다. 해시함수(Hash function)는 주로 데이터 위·변조 검사, 데이터의 빠른 검색, 통신의 안전성 증명, 패스워드의 안전한 보관 등에 사용되었는데 최근에는 전자서명, 불법 저작물 차단, 홈페이지 해킹여부 판단, 암호화폐의 신뢰성 확보, 전자투표 등으로 활용범위가 확대되고 있다. 수사기관은 1990년대 중후반부터 사이버수사와 디지털포렌식 분야에서 해시함수를 사용하기 시작하였고, 2007년 대법원에서 처음으로 디지털증거의 증거능력 인정요건으로 동일성을 제시하면서 증거법 측면에서 주목받기 시작하였다. 이어 2011년 형사소송법에서 디지털증거에 대한 출력·복제를 압수원칙으로 규정(제106조 제3항)하면서 복제 사례가 증가하여 해시함수는 동일성 입증의 주요한 기술로 자리를 잡았다. 2005년 녹음테이프의 동일성 입증에 관하여 대법원은 “대화내용을 녹음한 원본이거나 혹은 원본으로부터 복사한 사본일 경우에는 복사과정에서 편집되는 등의 인위적 개작 없이 원본의 내용 그대로 복사된 사본임이 입증되어야만 하고, 그러한 입증이 없는 경우에는 쉽게 그 증거능력을 인정할 수 없다.”고 판결하였다. 동일성 입증이 없는 경우에 증거능력을 부정하는 것이 아니라 쉽게 인정할 수 없다고 판시한 것으로 보아 그 정황에 대하여 다양한 방법으로 입증할 수 있으면 증거능력을 인정할 여지가 있다는 취지로 해석된다. 이때는 녹음테이프가 아날로그 방식이기 때문에 동일성 입증 수단으로 해시함수를 사용하지 않았다. 그 후 해시함수는 2007년 일심회 사건에서 디지털증거의 증거능력 인정요건을 제시할 때 등장한다. 대법원은 저장매체를 봉인하여 수사관서로 반출한 다음 세계적으로 인정받는 포렌식 도구(EnCase)를 이용하여 이미징을 하고, 원본의 해시값과 복제본의 해시값이 동일하다는 근거를 들어 출력된 문건에 대한 동일성과 증거 능력을 인정하였다. 이어 왕재산 사건에서 대법원은 더 나아가 디지털증거의 동일성 입증 방법으로 해시함수를 원칙으로 규정하였다. 해시함수는 Ronald Rivest가 1989년에 MD2를 개발하고 1992년에 MD5를 개발하면서 활용되기 시작했다. 이어 1993년에 미국 국가안보국(NSA)이 SHA계열의 함수를 개발한 이래 수많은 해시함수가 소개되었고, 우리나라도 2014년에 국가보안기술연구소에서 LSH(Lightweight Secure Hash)를 개발하여 표준으로 채택하였다. 해시함수는 크게 암호학적 해시와 비암호학적 해시로 나눌 수 있는데 전자는 안전성을 검증하기 위해 일정한 특징을 요구하는 함수로 MD4, MD5, SHA-1, SHA-3, HAS-160 등이 대표적이고, 후자는 안전성 검증이 필요 없는 함수로 데이터베이스의 색인속도를 높이거나 전송오류 검사(Cyclic Redundancy Check, CRC)를 위해 사용되는데 CRC32가 대표적이다. 일반적으로 디지털포렌식에서 사용하는 해시함수는 암호학적 해시함수(Cryptographic Hash Function)를 말한다. 해시함수(Hash Function)는 임의의 비트열을 고정된 길이의 비트열로 변환시켜 주는 함수로 해시함수에 의한 결과값을 해시값(Hash value)이라고 한다. 해시값에 서 원래의 데이터를 찾아낼 수 없다고 하여 일방향 함수(One-way Function)라고 불리기도 한다. 해시값은 입력하는 데이터의 개수와 용량에 관계없이 그 해시함수가 정해 놓은 일정한 크기의 비트열로 표현된다. 예를 들어, 임의의 파일 1개를 해시함수인 MD5에 입력하면 해시값은 “2e9a3018f506f60e8d5faaaa6824ed7a”으로 32자리로 나타나고, SHA-1에 입력하면 “7f50ea679932a58d840083aac2ae2035e439ed6f”으로 40자리로 표현된다. 미국 연방증거규칙 제901(b)(4)는 증거의 진정을 인정할 수 있는 사유 중의 하나로 “독특한 특성과 이에 유사한 것(Distinctive Characteristics) - 모든 정황과 함께 채택된 외관, 내용, 실질, 내부적 패턴이나 다른 독특한 특성”을 규정하고, 여기에 해시값이 포함된다고 해석하였다. 폴 그림(Paul Grimm) 판사는 2007년 Lorraine v. Markel 사건에서 디지털증거의 증거능력 인정요건으로 ① 관련성(Relevant) ② 진정성(Authentic) ③ 전문증거가 아니거나 예외사유 ④ 원본이거나 복사본일 경우 추가적인 조치 필요(Original or Duplicate) ⑤ 부당한 편견의 부재(Unfair Prejudice)를 제시하였는데, 여기에서 ② 진정성(Authentic) 증명 방법으로 해시값과 메타데이터를 언급하였다. 미국 법무부의 컴퓨터 압수수색 매뉴얼에서도 해시값이나 이와 유사한 포렌식 식별자를 사용하여 원본을 포렌식적으로 의미 있게 복사(copy)한 경우 진정성을 인정할 수 있다고 설명하고 있다. 미국 법원은 디지털증거의 동일성 입증 수단으로 개별적 판결을 통해 MD5와 SHA-1 등을 인정하여 왔다. 법원에서 개별적인 해시함수에 대해서 심사하였다는 측면에서 우리나라보다 논의가 더 진행되었다고 볼 수 있다. 다수의 판결문에서 전문가의 증언을 인용하여 해시함수가 일치할 확률을 99.99××라고 표현하면서 중복될 가능성이 없다고 서술하고 있으나 이는 수학적 근거가 아닌 기술적으로 불가능하다는 사실을 은유적으로 표현한 것이다.44) 한편, 해시함수가 아동음란물 탐지에도 활용되었는데, 미국 제8항소법원은 스페인으로부터 미국 소재 피고인의 컴퓨터에 저장되어 있는 아동음란물의 해시값을 전달받아 이를 근거로 영장을 발부받아 영장을 집행한 사안에서 피고인 측이 해시함수가 수색영장 발부를 위한 상당한 근거가 될 수 없다고 주장하면서 다른 두 개의 파일이 충돌(collide)하거나 중복(override)되는 해시값을 가질 수 있다고 주장하였으나 법원은 이를 받아들이지 않았다.
지시문 (instruction)
다음 문맥을 읽고 질문에 답하시오.
질문 (question)
해시함수의 분류 중 안전성 검증을 위해 일정한 특징을 요구하는 함수는 무엇이며, 그 대표적인 예시들을 모두 나열하시오.
추론 과정 (compact_reasoning)
  1. 1과제 해석task_interpretation

    해시함수의 분류 체계에서 안전성 검증을 목적으로 하는 함수의 명칭과 해당되는 구체적인 예시들을 추출해야 한다.

  2. 2정보 추출information_extraction

    문맥에서 해시함수를 암호학적 해시와 비암호학적 해시로 분류하고 있음을 확인한다.

    • 해시함수는 크게 암호학적 해시와 비암호학적 해시로 나눌 수 있는데
  3. 3근거 선택evidence_selection

    안전성 검증을 위해 일정한 특징을 요구하는 함수의 정의와 예시가 포함된 문장을 선택한다.

    • 전자는 안전성을 검증하기 위해 일정한 특징을 요구하는 함수로 MD4, MD5, SHA-1, SHA-3, HAS-160 등이 대표적이고
  4. 4논리 통합logical_integration

    전자가 암호학적 해시임을 파악하고, 제시된 예시인 MD4, MD5, SHA-1, SHA-3, HAS-160을 결합한다.

    • 해시함수는 크게 암호학적 해시와 비암호학적 해시로 나눌 수 있는데 전자는 안전성을 검증하기 위해 일정한 특징을 요구하는 함수로
  5. 5결론 도출conclusion_formulation

    안전성 검증을 요구하는 함수는 암호학적 해시이며, 예시는 MD4, MD5, SHA-1, SHA-3, HAS-160이다.

  6. 6답변 생성answer_generation

    질문에 대한 최종 답변을 구성한다.

최종 답변 (final_answer)
안전성을 검증하기 위해 일정한 특징을 요구하는 함수는 암호학적 해시이며, 대표적인 예시는 MD4, MD5, SHA-1, SHA-3, HAS-160이다.
핵심 해석 (core_interpretation)
해시함수의 분류 중 안전성 검증을 목적으로 하는 '암호학적 해시'의 정의를 확인하고, 문맥에 명시된 구체적인 함수 예시들을 추출하여 답변을 도출한다.