KR20230045208A - Device and method for collecting digital evidence - Google Patents

Device and method for collecting digital evidence Download PDF

Info

Publication number
KR20230045208A
KR20230045208A KR1020210127781A KR20210127781A KR20230045208A KR 20230045208 A KR20230045208 A KR 20230045208A KR 1020210127781 A KR1020210127781 A KR 1020210127781A KR 20210127781 A KR20210127781 A KR 20210127781A KR 20230045208 A KR20230045208 A KR 20230045208A
Authority
KR
South Korea
Prior art keywords
file
dwt
digital evidence
hash value
digital
Prior art date
Application number
KR1020210127781A
Other languages
Korean (ko)
Other versions
KR102539735B1 (en
Inventor
이영석
문현수
Original Assignee
충남대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 충남대학교산학협력단 filed Critical 충남대학교산학협력단
Priority to KR1020210127781A priority Critical patent/KR102539735B1/en
Publication of KR20230045208A publication Critical patent/KR20230045208A/en
Application granted granted Critical
Publication of KR102539735B1 publication Critical patent/KR102539735B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • G06F16/1834Distributed file systems implemented based on peer-to-peer networks, e.g. gnutella
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • G06F8/427Parsing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Computer Hardware Design (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Various embodiments of the present disclosure relate to a device and method for collecting digital evidence using blockchain to secure the evidentiary ability of digital evidence. By removing the dynamic content of illegal web pages, reliability is ensured so that the same content can be obtained from any web collection node, and the integrity and identity of the digital evidence can be guaranteed by storing the obtained digital evidence in the blockchain. Various other embodiments are possible.

Description

디지털 증거 수집 장치 및 방법{DEVICE AND METHOD FOR COLLECTING DIGITAL EVIDENCE}Digital evidence collection device and method {DEVICE AND METHOD FOR COLLECTING DIGITAL EVIDENCE}

본 개시의 다양한 실시예들은 블록체인 기술을 기반으로 디지털 증거를 수집하는 장치 및 방법에 관한 것이다.Various embodiments of the present disclosure relate to an apparatus and method for collecting digital evidence based on blockchain technology.

대다수의 웹페이지는 정적 콘텐츠와 동적 콘텐츠를 함께 사용하고 있다. 상기 정적 콘텐츠는 누가 언제 서버에 요청하더라도 동일하게 내용을 보여주는 데이터를 말한다. 상기 동적 콘텐츠는 누가 언제 어떻게 서버에 요청했는지에 따라 화면에 보여지는 웹페이지가 달라지는 데이터를 말한다. 상기 동적 콘텐츠는, 예를 들어, 사용 패턴에 따라 추천하는 광고, 맞춤 채널, 어느 장소에서 접속했는지에 따라 달라지는 인터넷 지도와 같이 사용자별 맞춤 정보일 수 있다. Most web pages use a combination of static and dynamic content. The static content refers to data that shows the same content regardless of who requests the server at any time. The dynamic content refers to data in which a web page displayed on a screen changes depending on who requests the server when and how. The dynamic content may be, for example, customized information for each user, such as an advertisement recommended according to a usage pattern, a customized channel, and an internet map that changes depending on a location from which the user accesses the dynamic content.

블록체인 기술은 정보를 수정할 수 없도록 데이터를 블록으로 만들고 각 블록을 체인으로 연결한 분산 컴퓨팅 기술로, 데이터를 안전하게 저장하고 관리할 수 있는 기술 중 하나이다. 상기 블록체인 기술을 위한 기본 구조는 블록을 순차적으로 연결한 블록 모음의 형태로, P2P (peer to peer) 네트워크를 기반으로 한다. 네트워크 참여자는 일정 시간 동안 거래 정보를 서로 교환, 확인 및/또는 검증하는 과정을 거쳐, 서로 동의한 거래 정보들만 하나의 블록으로 만들 수 있다. 상기 네트워크 참여자는 새로 만들어진 블록을 이전 블록체인에 연결하고, 그 사본을 만들어 각 네트워크 참여자의 디지털 장비에 분산하여 저장할 수 있다. 상기 네트워크 참여자는 안전한 거래 정보 교환을 위해, 해시 함수, 디지털 서명 또는 합의 알고리즘과 같은 기술을 사용할 수 있다. 특정되지 않은 다양한 길이의 데이터는 해시 함수를 거치면 일정한 길이의 문자열로 변환될 수 있다. 상기 해시 함수의 입력이 되는 원본 데이터는 조금의 수정으로도 해시 값이 완전히 달라지므로, 위조 또는 변조 판별이 용이할 수 있다. 상기 해시 함수는 단방향 변환이기 때문에, 해시 함수의 결과물인 해시 값을 이용해서 입력 값인 원본 데이터를 복원할 수 없다. 블록체인 기술은 해시 값을 이용해서 블록에 서명하고, 이전 블록의 해시 값을 다음 블록에 기록함으로써, 체인 형태의 연결 리스트를 유지할 수 있다. 상기 블록체인 기술을 기반으로 만들어진 특정 블록은 다른 블록들에 연결되어 있어, 위조 또는 변조가 용이하지 않다. 이러한 이유로, 블록체인 기술은 데이터 원본에 대한 무결성 증명이 요구되는 다양한 공공 영역 및 민간 영역에 활용될 수 있다.Blockchain technology is a distributed computing technology that makes data into blocks and connects each block with a chain so that information cannot be modified. It is one of the technologies that can safely store and manage data. The basic structure for the blockchain technology is in the form of a block collection in which blocks are sequentially connected, and is based on a peer to peer (P2P) network. Network participants go through a process of exchanging, verifying, and/or validating transaction information for a certain period of time, and only transaction information that has been mutually agreed upon can be made into one block. The network participant can connect the newly created block to the previous block chain, make a copy of it, and distribute and store it in the digital equipment of each network participant. The network participants may use technologies such as hash functions, digital signatures, or consensus algorithms for secure transaction information exchange. Data of various lengths that are not specified may be converted into strings of a certain length by passing through a hash function. Since the hash value of the original data, which is the input of the hash function, is completely changed even with a slight modification, forgery or falsification can be easily determined. Since the hash function is a one-way conversion, original data, which is an input value, cannot be restored using a hash value that is a result of the hash function. Blockchain technology can maintain a linked list in the form of a chain by signing a block using a hash value and recording the hash value of the previous block in the next block. Since a specific block made based on the blockchain technology is connected to other blocks, it is not easy to forge or falsify. For this reason, blockchain technology can be used in various public and private areas that require proof of integrity for data sources.

디지털 증거는 디지털 형태로 저장되거나 전송되는 증거로서 가치를 가지는 정보이다. 물리적 증거와는 달리 눈에 보이지 않지만 전자 장치에 저장되어 있는 파일, 이미지, 영상, 음향 등과 네트워크를 통해 교환되는 네트워크 패킷 등이 있다. Digital evidence is information that has value as evidence stored or transmitted in digital form. Unlike physical evidence, there are files, images, videos, sounds, and network packets exchanged through networks that are invisible but stored in electronic devices.

디지털 증거는 다른 증거와 달리 삭제와 변경이 용이하다. 파일을 열어보는 것만으로도 의도하지 않았지만 파일의 속성이 변경되어, 디지털 증거로서 동일성과 무결성이 훼손될 수 있다. 특히 웹페이지에 삽입된 동적 콘텐츠로 인해, 동일한 웹페이지에서 입수한 디지털 증거라 하더라도 접속시마다 화면에 보여지는 내용이 상이해질 수 있으므로, 입수한 디지털 증거의 진본성이 의심될 수 있다. 즉 불법 콘텐츠의 본질적 내용은 바뀌지 않았음에도 사소한 변화로 인해 위조 또는 변조된 것으로 간주될 수 있다.Unlike other evidence, digital evidence is easy to delete and change. Just opening a file can unintentionally change the properties of a file, compromising its identity and integrity as digital evidence. In particular, due to the dynamic content inserted into the web page, even if the digital evidence is obtained from the same web page, the contents shown on the screen may be different each time access is made, so the authenticity of the obtained digital evidence may be questioned. In other words, even though the essential content of illegal content has not changed, it can be regarded as forged or altered due to minor changes.

또한 디지털 증거는 증거 대상 획득에서 분석, 파기의 모든 단계에서 신뢰할 수 있어야 하는데, 모든 과정에서 사용되는 하드웨어 및 소프트웨어의 신뢰가 우선 이루어져야 한다. In addition, digital evidence must be reliable in all stages of evidence acquisition, analysis, and destruction, and trust in hardware and software used in all processes must be prioritized.

본 개시의 다양한 실시 예들은, 증거 능력을 인정받을 수 있도록 디지털 정보를 수집하는 디지털 증거 수집 장치 및 방법을 제공할 수 있다.Various embodiments of the present disclosure may provide a digital evidence collection apparatus and method for collecting digital information so that evidence capability can be recognized.

본 개시의 다양한 실시 예들은, 불법 웹페이지에 포함된 동적 콘텐츠를 제거한 후, 블록체인 기술을 사용하여 디지털 증거를 수집하는 디지털 증거 수집 장치 및 방법을 제공한다.Various embodiments of the present disclosure provide a digital evidence collection apparatus and method for collecting digital evidence using blockchain technology after removing dynamic content included in an illegal webpage.

다양한 실시 예들은, 디지털 정보를 블록체인에 기록함에 있어서, 웹 수집 노드 중 과반수 이상의 수집 노드에서 동일한 디지털 정보를 수집할 수 있도록 하는 디지털 증거 수집 장치 및 방법을 제공한다. Various embodiments provide a digital evidence collection device and method that enables the same digital information to be collected from more than half of web collection nodes in recording digital information in a blockchain.

본 개시의 일 실시예에 따르면 디지털 증거 수집 장치는, 웹서버로부터 적어도 하나의 웹페이지를 화면에 표시하기 위한 제1 웹페이지 데이터를 수집하고, 상기 제1 웹페이지 데이터에 포함된 동적 콘텐츠 데이터를 제거하는 파싱(parsing)을 수행하여 제1 디지털 증거 파일을 획득하며, 상기 제1 디지털 증거 파일 및 상기 제1 디지털 증거 파일을 획득하기 위해 고려된 참조 정보를 포함하도록 심층 웹 포맷 (DWT: Deep Web Tar) 파일을 생성하도록 구성된, 적어도 하나의 DWT 생성 노드와 상기 DWT 파일에 포함된 상기 참조 정보 중 하나인 접속 정보를 사용하여 상기 웹서버로부터 제2 웹페이지 데이터를 수집하고, 상기 참조 정보 중 하나인 파싱룰 파일을 기반으로 상기 제2 웹페이지 데이터에 포함된 동적 콘텐츠 데이터를 제거하는 파싱을 수행하여 동적 콘텐츠가 제거된 하이퍼텍스트 마크업 언어 (HTML: HyperText Markup Language) 파일을 획득하며, 상기 HTML 파일을 기반으로 상기 DWT 파일에 포함된 상기 제1 디지털 증거 파일의 위조 또는 변조 여부를 검사하고, 상기 검사 결과를 기반으로, 상기 DWT 파일의 위조 또는 변조 여부를 검증하도록 구성된 복수의 수집 노드들 및 상기 DWT 파일 중 상기 복수의 수집 노드들에 의해 위조 또는 변조되지 않았음이 검증된 DWT 파일 또는 상기 검증된 DWT 파일의 해시 값 중 적어도 하나를 블록체인 기술을 사용한 블록화에 의해 만들어진 블록에 저장하도록 구성된 블록 생성 노드를 포함하며, 여기서, 상기 DWT 파일에 포함된 상기 참조 정보는, 상기 적어도 하나의 웹페이지에 존재하는 정적 파일을 포함하는 제2 디지털 증거 파일, 상기 적어도 하나의 웹페이지에 포함된 동적 콘텐츠를 제거하도록 구성된 상기 파싱룰 파일 및 상기 적어도 하나의 웹페이지에 대한 메타데이터를 포함하고, 상기 메타데이터는, 상기 제1 디지털 증거 파일의 해시 값, 상기 제2 디지털 증거 파일에 포함된 상기 정적 파일의 해시 값, 상기 파싱룰 파일의 해시 값, 상기 제1 디지털 증거 파일의 생성 시간 정보 및 상기 적어도 하나의 웹페이지의 접속 주소인 상기 접속 정보를 포함한다.According to an embodiment of the present disclosure, a digital evidence collection device collects first webpage data for displaying at least one webpage on a screen from a web server, and collects dynamic content data included in the first webpage data. A deep web format (DWT: Deep Web Tar) collects second web page data from the web server using at least one DWT generation node configured to generate a file and access information that is one of the reference information included in the DWT file, and one of the reference information Based on the parsing rule file, parsing is performed to remove dynamic content data included in the second web page data to obtain a HyperText Markup Language (HTML) file from which dynamic content is removed, and the HTML A plurality of collecting nodes configured to inspect whether the first digital evidence file included in the DWT file is forged or falsified based on a file, and verify whether the DWT file is falsified or tampered with based on the inspection result; and configured to store at least one of a DWT file verified that it has not been forged or tampered with by the plurality of collection nodes among the DWT files or a hash value of the verified DWT file in a block created by blockization using blockchain technology and a block generating node, wherein the reference information included in the DWT file includes a second digital evidence file including a static file existing in the at least one webpage, and a dynamic file included in the at least one webpage. metadata for the at least one webpage and the parsing rule file configured to remove content, the metadata including: a hash value of the first digital evidence file; and the hash value of the file, the hash value of the parsing rule file, creation time information of the first digital evidence file, and the access information that is the access address of the at least one web page.

또한, 본 개시의 일 실시예에 따르면 장치가 디지털 증거를 수집하는 방법은, 웹서버로부터 수집한 적어도 하나의 웹페이지를 화면에 표시하기 위한 제1 웹페이지 데이터가 포함하고 있는 동적 콘텐츠 데이터를 제거하는 파싱(parsing)을 수행하여, 제1 디지털 증거 파일을 획득하는 동작, 상기 제1 디지털 증거 파일 및 상기 제1 디지털 증거 파일을 획득하기 위해 고려된 참조 정보를 포함하도록 심층 웹 포맷 (DWT: Deep Web Tar) 파일을 생성하는 동작, 상기 생성된 DWT 파일에 포함된 상기 참조 정보 중 하나인 접속 정보를 사용하여 상기 웹서버로부터 제2 웹페이지 데이터를 수집하는 동작, 상기 수집한 제2 웹페이지 데이터에 포함된 동적 콘텐츠 데이터를 제거하는 파싱을 상기 참조 정보 중 하나인 파싱룰 파일을 기반으로 수행하여, 동적 콘텐츠가 제거된 하이퍼텍스트 마크업 언어 (HTML: HyperText Markup Language) 파일을 획득하는 동작, 상기 HTML 파일을 기반으로 상기 DWT 파일에 포함된 상기 제1 디지털 증거 파일의 위조 또는 변조 여부를 검사하는 동작, 상기 검사 결과를 기반으로, 상기 DWT 파일의 위조 또는 변조 여부를 검증하는 동작, 상기 DWT 파일 중 상기 위조 또는 상기 변조되지 않았음이 검증된 DWT 파일 또는 상기 검증된 DWT 파일의 해시 값 중 적어도 하나를 블록체인 기술을 사용한 블록화에 의해 만들어진 블록에 저장하는 동작을 포함하며, 여기서, 상기 DWT 파일에 포함된 상기 참조 정보는, 상기 적어도 하나의 웹페이지에 존재하는 정적 파일을 포함하는 제2 디지털 증거 파일, 상기 적어도 하나의 웹페이지에 포함된 동적 콘텐츠를 제거하도록 구성된 상기 파싱룰 파일 및 상기 적어도 하나의 웹페이지에 대한 메타데이터를 포함하고, 상기 메타데이터는, 상기 제1 디지털 증거 파일의 해시 값, 상기 제2 디지털 증거 파일에 포함된 상기 정적 파일의 해시 값, 상기 파싱룰 파일의 해시 값, 상기 제1 디지털 증거 파일의 생성 시간 정보 및 상기 적어도 하나의 웹페이지의 접속 주소인 상기 접속 정보를 포함한다.In addition, according to an embodiment of the present disclosure, a method for collecting digital evidence by a device removes dynamic content data included in first webpage data for displaying at least one webpage collected from a web server on a screen. An operation of obtaining a first digital evidence file by performing parsing to include the first digital evidence file and reference information considered for obtaining the first digital evidence file in a deep web format (DWT: Deep Web Tar) file, collecting second web page data from the web server using access information, which is one of the reference information included in the generated DWT file, and collecting the second web page data An operation of obtaining a HyperText Markup Language (HTML) file from which dynamic content is removed by performing parsing to remove dynamic content data included in the reference information based on a parsing rule file, which is one of the reference information; An operation of checking whether the first digital evidence file included in the DWT file is forged or falsified based on an HTML file, an operation of verifying whether or not the DWT file is forged or falsified based on the inspection result, and the DWT file and storing at least one of a DWT file verified to have not been forged or tampered with or a hash value of the verified DWT file in a block created by blockization using blockchain technology, wherein the DWT file The reference information included in the second digital evidence file including a static file existing in the at least one webpage, the parsing rule file configured to remove dynamic content included in the at least one webpage, and the at least one It includes metadata about one web page, wherein the metadata includes a hash value of the first digital evidence file, a hash value of the static file included in the second digital evidence file, and a hash value of the parsing rule file. , the creation time information of the first digital evidence file and the access information that is the access address of the at least one web page.

본 개시에서 제안된 다양한 실시예에 따라서, 블록체인 기술을 적용하여 동적 콘텐츠를 제거한 디지털 정보를 디지털 증거로 수집함으로써, 증거로의 신뢰성을 확보할 수 있을 뿐만 아니라, 증거로의 무결성 또는 동일성을 보장할 수 있다.According to various embodiments proposed in the present disclosure, by collecting digital information from which dynamic content is removed by applying block chain technology as digital evidence, it is possible to secure reliability as evidence, as well as ensure integrity or identity of evidence. can do.

도 1은 본 개시의 다양한 실시예에 따른 디지털 증거 수집 장치의 전체 구성을 도시한다.
도 2는 본 개시의 다양한 실시예에 따른 심층 웹 포맷 (DWT: Deep Web Tar) 파일의 구조이다.
도 3은 본 개시의 다양한 실시예에 따라 DWT 파일의 예시를 도시한다.
도 4는 본 개시의 다양한 실시예에 따라, 웹페이지에서 동적 콘텐츠를 제거한 결과를 도시한다.
도 5는 본 개시의 다양한 실시예에 따라, 디지털 증거를 수집하고 검증하여 블록체인에 저장하는 과정을 대략적으로 나타내는 흐름도이다.
도 6a와 도 6b는 본 개시의 다양한 실시예에 따라, 수집 노드가 DWT 파일의 무결성을 검증하는 동작을 설명하는 흐름도이다.
도 7은 본 개시의 다양한 실시예에 따라 블록 생성 과정을 나타내는 흐름도이다.
도 8은 본 개시의 다양한 실시예에 따른 블록 구조이다.
도 9는 본 개시의 다양한 실시예에 따른 블록 구조 예시이다.
1 illustrates the overall configuration of a digital evidence collection device according to various embodiments of the present disclosure.
2 is a structure of a Deep Web Tar (DWT) file according to various embodiments of the present disclosure.
3 illustrates an example DWT file according to various embodiments of the present disclosure.
4 illustrates a result of removing dynamic content from a webpage according to various embodiments of the present disclosure.
5 is a flowchart schematically illustrating a process of collecting, verifying, and storing digital evidence in a blockchain according to various embodiments of the present disclosure.
6A and 6B are flowcharts illustrating operations of verifying integrity of a DWT file by an ingestion node according to various embodiments of the present disclosure.
7 is a flowchart illustrating a block generation process according to various embodiments of the present disclosure.
8 is a block structure according to various embodiments of the present disclosure.
9 is an example of a block structure according to various embodiments of the present disclosure.

이하 첨부된 도면을 참고하여 다양한 실시예들을 상세히 설명한다. 후술될 설명에서, 상세한 구성 및 구성 요소와 같은 특정 세부 사항은 단지 본 개시의 실시예들에 대한 전반적인 이해를 돕기 위해 제공될 것이다. 따라서, 본 명세서에 설명된 실시예들의 다양한 변경 및 수정이 본 개시의 범위 및 사상을 벗어나지 않고 이루어질 수 있음이 당업자에게 명백해야 할 것이다. 또한, 잘 알려진 기능 및 구성에 대한 설명은 명확성과 간결성을 위해 생략될 수 있다.Hereinafter, various embodiments will be described in detail with reference to the accompanying drawings. In the following description, specific details such as detailed configurations and elements are provided merely to facilitate a general understanding of embodiments of the present disclosure. Accordingly, it should be apparent to those skilled in the art that various changes and modifications of the embodiments described herein may be made without departing from the scope and spirit of the present disclosure. Also, descriptions of well-known functions and structures may be omitted for clarity and conciseness.

도 1은 본 개시의 다양한 실시예에 따른 디지털 증거 수집 장치의 전체 구성을 도시한다.1 illustrates the overall configuration of a digital evidence collection device according to various embodiments of the present disclosure.

도 1을 참조하면, 일 실시예에 따른, 디지털 증거 수집 장치(100)는 적어도 하나의 DWT(Deep Web Tar) 생성 노드(110), 복수의 수집 노드(120) 및 적어도 하나의 블록 생성 노드(130)를 포함할 수 있다. Referring to FIG. 1, according to an embodiment, a digital evidence collection apparatus 100 includes at least one deep web tar (DWT) generation node 110, a plurality of collection nodes 120, and at least one block generation node ( 130) may be included.

일 실시예에 의하면, DWT 생성 노드(110), 수집 노드(120), 블록 생성 노드(130)는 P2P 네트워크(140)의 피어(Peer)일 수 있다. 상기 P2P 네트워크(140)는 집중화된 서비스 개념 없이, 분산 자원의 공유를 목적으로 동등한 자격을 가진 자율적 객체로 이루어진 자율 구성 시스템이다.According to an embodiment, the DWT generation node 110 , the collection node 120 , and the block generation node 130 may be peers of the P2P network 140 . The P2P network 140 is a self-organizing system composed of autonomous entities having equal qualifications for the purpose of sharing distributed resources without a centralized service concept.

일 실시예에 의하면, DWT 생성 노드(110)와 수집 노드(120)는 블록 생성 노드(130)와 다른 네트워크에서 동작할 수 있다. 상기 블록 생성 노드(130)는 블록체인 안에 포함될 수 있다. 상기 DWT 생성 노드(110)와 상기 수집 노드(120)는 블록체인 바깥에 있는 별도의 레이어(Layer)에서 DWT 파일을 생성하고, 검증한 뒤, 그 결과를 상기 블록체인에 기록하는 방식으로 동작하여 속도와 확장성을 개선할 수 있다.According to one embodiment, the DWT generation node 110 and the collection node 120 may operate in a different network from the block generation node 130. The block generating node 130 may be included in a blockchain. The DWT creation node 110 and the collection node 120 operate in such a way that a DWT file is created in a separate layer outside the blockchain, verified, and the result is recorded in the blockchain. Speed and scalability can be improved.

일 실시예에 의하면, DWT 생성 노드(110)는 수집 노드(120)와 블록 생성 노드(130)가 속한 네트워크와 다른 네트워크에서 동작할 수 있다.According to an embodiment, the DWT generation node 110 may operate in a network different from a network to which the collection node 120 and the block generation node 130 belong.

일 실시예에 따르면, P2P 네트워크(140)는 WiFi(Wireless Fidelity), LAN(Local Area Network), WAN(Wide Area Network), 인터넷과 같은 네트워크 중 하나일 수 있으나, 본 개시의 범위가 이에 한정되는 것은 아니다. 상기 P2P 네트워크(140)는 이더넷, GSM(Global System for Mobile Communications), EDGE(Enhanced Data GSM Environment), CDMA(Code Division Multiple Access), TDMA(Time Division Multiplexing Access), 5G, LTE(LTE Advanced), LTE-A(LTE Advance), 블루투스, VoIP, WiMAX, WiBro(Wireless Broadband)와 같은 임의의 다양한 유선 또는 무선 통신 프로토콜을 이용하여 구현될 수 있다. 상기 P2P 네트워크(140)는 허브, 브리지, 라우터, 스위치 또는 게이트웨이와 같은 네트워크 요소들의 연결을 포함할 수 있다. 상기 P2P 네트워크(140)는 인터넷과 같은 공용 네트워크 및 안전한 기업 사설 네트워크와 같은 사설 네트워크를 비롯한 하나 이상의 연결된 네트워크들, 예컨대 다중 네트워크 환경을 포함할 수 있다. 상기 P2P 네트워크(140)에서의 액세스는 하나 이상의 유선 또는 무선 액세스 네트워크들을 통해 제공될 수 있다. 더 나아가 상기 P2P 네트워크(140)는 사물 등 분산된 구성 요소들 간에 정보를 주고받아 처리하는 IoT(Internet of Things, 사물인터넷) 망을 지원할 수 있다.According to an embodiment, the P2P network 140 may be one of networks such as WiFi (Wireless Fidelity), LAN (Local Area Network), WAN (Wide Area Network), and the Internet, but the scope of the present disclosure is limited thereto. It is not. The P2P network 140 includes Ethernet, Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), Code Division Multiple Access (CDMA), Time Division Multiplexing Access (TDMA), 5G, LTE Advanced (LTE), It may be implemented using any of various wired or wireless communication protocols such as LTE Advance (LTE-A), Bluetooth, VoIP, WiMAX, and Wireless Broadband (WiBro). The P2P network 140 may include a connection of network elements such as hubs, bridges, routers, switches, or gateways. The P2P network 140 may include one or more connected networks, eg, a multi-network environment, including a public network such as the Internet and a private network such as a secure corporate private network. Access in the P2P network 140 may be provided through one or more wired or wireless access networks. Furthermore, the P2P network 140 may support an Internet of Things (IoT) network that exchanges and processes information between distributed components such as things.

일 실시예에 의하면, DWT 생성 노드(110), 수집 노드(120), 블록 생성 노드(130)는 물리적으로 같은 전자 기기에서 동작할 수 있다. 예를 들어, DWT 생성 노드(110a)와 수집 노드(120a)가 물리적으로 같은 전자 기기에서 동작할 수 있고, 수집 노드(120b)와 블록 생성 노드(130b)가 물리적으로 같은 전자 기기에서 동작할 수 있다. 예를 들어, DWT 생성 노드(110c), 수집 노드(120c) 및 블록 생성 노드(130c)가 물리적으로 같은 전자 기기에서 동작할 수 있다. 상기 전자 기기는 다양한 형태의 컴퓨팅 및 통신 기능 등을 수행할 수 있는 기기를 포함할 수 있다. 상기 전자 기기는, 예를 들어, 데스크 탑 컴퓨터, 스마트 폰, 태블릿 PC(personal computer), 랩-탑(laptop), PDA(personal digital assistants) 또는 웨어러블 장치(wearable device)일 수 있다.According to an embodiment, the DWT generation node 110, the collection node 120, and the block generation node 130 may physically operate in the same electronic device. For example, the DWT generation node 110a and the collection node 120a can physically operate in the same electronic device, and the collection node 120b and the block generation node 130b can physically operate in the same electronic device. there is. For example, the DWT generation node 110c, the collection node 120c, and the block generation node 130c may physically operate in the same electronic device. The electronic devices may include devices capable of performing various types of computing and communication functions. The electronic device may be, for example, a desktop computer, a smart phone, a tablet PC (personal computer), a laptop, a PDA (personal digital assistants), or a wearable device.

일 실시예에 의하면, DWT 생성 노드(110)는 소정의 이벤트가 발생하는 경우, 동작을 개시할 수 있다. 상기 소정의 이벤트는, 예를 들어, 수사관/수사기관 또는 자연인 또는 불법 콘텐츠 식별기에 의한, 불법 콘텐츠에 대한 제보일 수 있다. 상기 DWT 생성 노드(110)는 이와 같은 이벤트를 수신하여 불법 콘텐츠 수집을 시작할 수 있다. According to one embodiment, the DWT creation node 110 may initiate an operation when a predetermined event occurs. The predetermined event may be, for example, a report on illegal content by an investigator/investigation agency or a natural person or an illegal content identifier. The DWT creation node 110 may start collecting illegal contents upon receiving such an event.

일 실시예에 의하면, DWT 생성 노드(110)는 사용자 입력을 획득할 수 있다. 상기 DWT 생성 노드(110)는 사용자 입력에 기초하여, 불법 콘텐츠가 게재된 웹페이지에 대한 정보를 획득하고, 상기 불법 콘텐츠가 게재된 웹페이지의 인터넷 주소에 접근하여, DWT 파일을 만드는데 필요한 작업을 수행할 수 있다. 상기 DWT 파일의 구조는 도 2를 참조하여 하기에서 후술될 것이다.According to one embodiment, the DWT generation node 110 may obtain user input. Based on user input, the DWT creation node 110 obtains information about a web page on which illegal content is posted, accesses the Internet address of the web page on which illegal content is posted, and performs operations required to create a DWT file. can be done The structure of the DWT file will be described below with reference to FIG. 2 .

일 실시예에 의하면, DWT 파일은, 블록 생성 및 검증을 위하여 P2P 네트워크(140)를 통하여 전파될 수 있다.According to one embodiment, the DWT file may be propagated through the P2P network 140 for block generation and verification.

일 실시예에 의하면, DWT 파일은 가십 프로토콜(Gossip Protocol)을 사용하여 전파될 수 있다. 상기 가십 프로토콜은 소문이 확산되는 방식을 기반으로 하는데, 네트워크의 한 노드가 이웃 노드로 정보(가십)를 전달하는 방식이다. 일부 분산 시스템은 데이터가 P2P 네트워크(140) 모든 구성원에게 배포되도록 가십 프로토콜을 사용한다. According to one embodiment, DWT files may be propagated using the Gossip Protocol. The gossip protocol is based on a rumor spreading method, in which one node of a network transmits information (gossip) to a neighboring node. Some distributed systems use gossip protocols so that data is distributed to all members of the peer-to-peer network 140.

일 실시예에 의하면, 수집 노드(120)는 가십 프로토콜을 사용하여 DWT 파일을 획득할 수 있다.According to one embodiment, the aggregation node 120 may obtain the DWT file using a gossip protocol.

일 실시예에 의하면, DWT 생성 노드(110)는 DWT 파일의 용량을 고려하여, 상기 DWT 파일 대신 상기 DWT 파일을 다운로드 받을 수 있는 링크 정보를 배포할 수 있다.According to an embodiment, the DWT creation node 110 may distribute link information for downloading the DWT file instead of the DWT file in consideration of the capacity of the DWT file.

일 실시예에 의하면, 수집 노드(120)는 DWT 파일을 압축 해제하여, 상기 DWT 파일내에 묶여 있는 제1 디지털 증거 파일, 제2 디지털 증거 파일, 파싱룰 파일, DWT 메타데이터를 추출할 수 있다. According to an embodiment, the collection node 120 may extract a first digital evidence file, a second digital evidence file, a parsing rule file, and DWT metadata bundled in the DWT file by decompressing the DWT file.

일 실시예에 의하면, 수집 노드(120)는 DWT 메타데이터로부터 불법 콘텐츠가 게재된 웹페이지의 인터넷 주소를 획득할 수 있다. 상기 수집 노드(120)는 상기 획득한 인터넷 주소에 접근하여, 불법 콘텐츠를 수집할 수 있다.According to one embodiment, the collection node 120 may obtain the Internet address of a web page on which illegal content is posted from DWT metadata. The collecting node 120 may collect illegal contents by accessing the obtained Internet address.

일 실시예에 의하면, 수집 노드(120)는 불법 콘텐츠를 수집하는데 있어서, 특수 브라우저를 사용할 수 있다. 많은 불법 웹사이트는 익명성이 높고, 일반 검색 엔진으로는 접근하지 못하는 다크 웹(Dark Web) 또는 딥 웹(Deep Web)을 통해 서비스되고 있다. 상기 다크 웹이나 상기 딥 웹은 전용 브라우저, 예컨대 TOR (The Onion Router) 브라우저를 통해서 접근이 가능하다. 일반 웹(Surface Web)에서의 응답 속도와 비교하면, 상기 다크 웹의 응답 속도는 상대적으로 느리다. 상기 다크 웹의 느린 응답 속도는 상기 다크 웹에 접근하기 위하여 필수적으로 사용해야 하는 어니언 라우팅(Onion Routing) 때문이다. 상기 어니언 라우팅에서는 클라이언트가 서버와 직접 통신하지 않고, 다른 클라이언트를 터널링(Tunneling)하여 통신한다.According to one embodiment, the collection node 120 may use a special browser to collect illegal content. Many illegal websites are highly anonymous and are served through the Dark Web or the Deep Web, which are not accessible by general search engines. The dark web or the deep web can be accessed through a dedicated browser, for example, a TOR (The Onion Router) browser. Compared to the response speed of the normal web (Surface Web), the response speed of the dark web is relatively slow. The slow response speed of the dark web is due to onion routing, which must be used in order to access the dark web. In the onion routing, a client does not directly communicate with a server, but communicates with another client through tunneling.

일 실시예에 의하면, 수집 노드(120)는 불법 콘텐츠를 수집할 때 사용하는 웹 브라우저의 세션 타임 아웃 시간을 기본값보다 상대적으로 짧게 설정할 수 있다. 불법 웹페이지들은 추적을 피하기 위해, 일정 기간만 서비스를 하거나, 비정기적으로 서비스를 하고, 인터넷 주소를 수시로 변경하는 특성이 있다. 이러한 특성상 이미 입수한 불법 콘텐츠의 인터넷 주소에 맞는 서버를 찾지 못하는 경우가 발생할 수 있는데, 이 때도 상기 수집 노드(120)의 웹 브라우저는 세션 타임 아웃의 기본값으로 설정된 시간이 경과할 때까지 해당 서버로부터의 응답을 기다리게 된다. 상기 수집 노드(120)의 웹 브라우저의 응답 대기 시간을 단축하여 설정해 놓으면, 접근 가능한 주소와 불가능한 주소를 신속히 판단하여, 수집 속도를 단축시킬 수 있다.According to one embodiment, the collection node 120 may set a session timeout time of a web browser used to collect illegal content relatively shorter than a default value. In order to avoid tracking, illegal web pages have the characteristics of providing services only for a certain period of time, providing services irregularly, and changing Internet addresses from time to time. Due to this characteristic, there may be a case in which a server matching the Internet address of the already acquired illegal content may not be found. Even in this case, the web browser of the collection node 120 does not return from the server until the time set as the default value of the session timeout elapses. will wait for a response from If the response waiting time of the web browser of the collection node 120 is shortened and set, the collection speed can be shortened by quickly determining accessible addresses and non-accessible addresses.

일 실시예에 의하면, 수집 노드(120)는 DWT 메타데이터에서 획득한 불법 웹페이지의 인터넷 주소에 접근하여, 상기 불법 웹페이지를 다운로드하고, 상기 다운로드한 불법 웹페이지에 DWT 파일에 포함되어 있는 파싱룰 파일을 적용하여, 동적 콘텐트가 제거된 HTML 파일을 생성할 수 있다. According to an embodiment, the collection node 120 accesses the Internet address of an illegal webpage obtained from DWT metadata, downloads the illegal webpage, and parses the downloaded illegal webpage included in the DWT file. A rule file can be applied to create an HTML file from which dynamic content is removed.

일 실시예에 의하면, 수집 노드(120)는 동적 콘텐츠가 제거된 HTML 파일의 해시 값과 DWT 파일에 포함되어 있는 제1 디지털 증거 파일의 해시 값을 각각 산출할 수 있다. 상기 수집 노드(120)는 상기 동적 콘텐츠가 제거된 HTML 파일의 해시 값, 상기 DWT 파일에 포함되어 있는 제1 디지털 증거 파일의 해시 값 및 DWT 메타데이터에서 획득한 “HTMLHash”속성 값을 비교하여 세개의 해시 값들이 일치하지 않으면, DWT 파일이 가용하지 않다고 판단할 수 있다. 상기 수집 노드(120)는 불법 웹페이지에서 수집한 정적 파일의 해시 값과 상기 DWT 메타데이터에서 획득한 “StaticHash”속성 값을 비교하여 일치하지 않으면, 상기 DWT 파일이 가용하지 않다고 판단할 수 있다. 상기 수집 노드(120)는 상기 DWT 파일에 포함되어 있는 파싱룰 파일의 해시 값을 산출하여, 상기 DWT 메타데이터에서 획득한 “ParseHash”속성 값과 비교하여 일치하지 않으면, 상기 DWT 파일이 가용하지 않다고 판단할 수 있다. According to an embodiment, the collecting node 120 may calculate the hash value of the HTML file from which the dynamic content is removed and the hash value of the first digital evidence file included in the DWT file, respectively. The collection node 120 compares the hash value of the HTML file from which the dynamic content is removed, the hash value of the first digital evidence file included in the DWT file, and the "HTMLHash" attribute value obtained from DWT metadata, and obtains three values. If the hash values of do not match, it can be determined that the DWT file is not available. The collection node 120 compares the hash value of the static file collected from the illegal web page with the “StaticHash” attribute value obtained from the DWT metadata, and if they do not match, it may be determined that the DWT file is not available. The collection node 120 calculates the hash value of the parsing rule file included in the DWT file, compares it with the “ParseHash” attribute value obtained from the DWT metadata, and if it does not match, the DWT file is not available can judge

상기 수집 노드(120)는 상기 DWT 파일에 포함되어 있는 제1 디지털 증거 파일의 생성 시간을 획득하여 상기 DWT 메타데이터에서 획득한 “Datetime”속성 값과 비교하여 일치하지 않으면, 상기 DWT 파일이 가용하지 않다고 판단할 수 있다. The collecting node 120 acquires the creation time of the first digital evidence file included in the DWT file, compares it with the "Datetime" attribute value obtained from the DWT metadata, and if it does not match, the DWT file is not available. It can be judged that it is not.

일 실시예에 의하면, 수집 노드(120)는 일정 시간 동안 P2P 네트워크(140)에 기여한 수집 노드(120)를 검증 노드로 승격하거나, 또는 관리자를 검증 노드로 지정하여 DWT 파일을 검증할 수 있다.According to an embodiment, the aggregation node 120 may promote the aggregation node 120 that has contributed to the P2P network 140 for a certain period of time to a verification node, or designate a manager as a verification node to verify the DWT file.

자세한 검증 절차에 대하여는 이하 도 6a와 도 6b를 참조하여 개념적으로 후술한다.A detailed verification procedure will be conceptually described below with reference to FIGS. 6A and 6B.

일 실시예에 의하면, 블록 생성 노드(130)는 블록체인 시스템에 노드(node)로서 참여할 수 있다.According to one embodiment, the block generating node 130 may participate as a node in a blockchain system.

일 실시예에 의하면, DWT 생성 노드(110)와 수집 노드(120)도 블록체인 시스템에 노드(node)로서 참여할 수 있다.According to one embodiment, the DWT generation node 110 and the collection node 120 may also participate as nodes in the blockchain system.

일 실시예에 의하면, 블록체인 시스템은 수사를 위한 허가형(Permissioned) 블록체인일 수 있다. 상기 블록체인 시스템은 블록체인에 참여하는 노드의 참여 제한 여부에 따라 비허가형(Permissionless) 블록체인과 허가형(Permissioned) 블록체인으로 나눌 수 있다. 상기 비허가형 블록체인은 퍼블릭(Public) 블록체인으로 불릴 수 있다. 상기 허가형 블록체인은 운영 방법에 따라 프라이빗(Private) 블록체인 또는 컨소시움(Consortium) 블록체인으로 구분될 수 있다. 상기 비허가형 블록체인에서는 보상(Incentive)을 받고자 다수의 노드가 블록을 생성하기 위해 서로 경쟁하고, 상기 생성된 블록에 대하여 작업 증명 기반의 합의 알고리즘을 사용할 수 있다. 상기 허가형 블록체인에서는 비허가형 블록체인 시스템에서 사용되는 합의 알고리즘과 성격이 다른 합의 알고리즘이 적용될 수 있다. 상기 허가형 블록체인에서는 블록을 생성할 수 있는 자격을 가진 노드를 미리 정하여 놓고, 그 노드들로 구성된 위원회를 구성하여, 그 위원회의 멤버들 간의 합의를 통해 하나의 합의된 블록을 생성하고, 이를 다른 노드로 전파하는 방식을 사용하는 것도 가능하다.According to one embodiment, the blockchain system may be a permissioned blockchain for investigation. The blockchain system can be divided into a permissionless blockchain and a permissioned blockchain depending on whether or not the participation of nodes participating in the blockchain is restricted. The permissionless blockchain may be called a public blockchain. The permissioned blockchain may be classified as a private blockchain or a consortium blockchain according to an operating method. In the permissionless blockchain, a plurality of nodes may compete with each other to generate a block in order to receive an incentive, and a proof-of-work based consensus algorithm may be used for the generated block. In the permissioned blockchain, a consensus algorithm different in nature from that used in the non-permissioned blockchain system may be applied. In the permissioned blockchain, a node with the qualification to create a block is pre-determined, a committee composed of the nodes is formed, and a consensus block is created through an agreement between the members of the committee. It is also possible to use a method of propagating to other nodes.

일 실시예에 의하면, 블록 생성 노드(130)는 블록체인 노드들 간의 네트워크를 모니터링하고, DWT 파일이 가용한 것으로 합의되면, 상기 DWT 파일을 기존 블록에 추가하거나, 새로운 블록을 생성하고, 상기 생성한 블록을 블록체인에 결합하여 저장하고, 적어도 하나의 타 블록체인 노드와 상기 블록 데이터를 공유할 수 있다. 다른 실시예에 의하면 네트워크 블록 생성 노드(130)는 네트워크 과부하를 고려하여 DWT 파일 대신 DWT 파일의 해시 값 및/또는 DWT 파일의 링크 정보를 블록데이터로 저장할 수 있다.According to one embodiment, the block generation node 130 monitors the network between blockchain nodes, and if it is agreed that the DWT file is available, the DWT file is added to an existing block or a new block is created, and the creation A block can be combined and stored in a block chain, and the block data can be shared with at least one other block chain node. According to another embodiment, the network block generation node 130 may store the hash value of the DWT file and/or the link information of the DWT file as block data instead of the DWT file in consideration of network overload.

도 2는 본 개시의 다양한 실시예에 따른 DWT 파일의 구조이다.2 is a structure of a DWT file according to various embodiments of the present disclosure.

도 2를 참조하면, 일 실시예에 따른, DWT 파일(200)은 제1 디지털 증거 파일(210), 제2 디지털 증거 파일(220), 파싱룰 파일(230) 및/또는 DWT 메타데이터(240)를 포함할 수 있다. Referring to FIG. 2 , according to an embodiment, a DWT file 200 includes a first digital evidence file 210, a second digital evidence file 220, a parsing rule file 230, and/or DWT metadata 240. ) may be included.

일 실시예에 의하면, DWT 생성 노드(110)는 제1 디지털 증거 파일(210), 제2 디지털 증거 파일(220), 파싱룰 파일(230) 및/또는 DWT 메타데이터(240)를 명령어 tar를 이용하여 하나의 파일로 묶을 수 있다.According to one embodiment, the DWT creation node 110 converts the first digital evidence file 210, the second digital evidence file 220, the parsing rule file 230 and/or the DWT metadata 240 to the tar command. can be combined into a single file.

일 실시예에 의하면, 제1 디지털 증거 파일(210)은 불법 콘텐츠가 게재된 웹페이지의 HTML 파일에서 동적 콘텐츠를 제거한 결과물일 수 있다. 상기 동적 콘텐츠란 웹페이지에 접속한 사용자의 위치, 디바이스, 시간 또는 무작위로, 화면에 보여지는 웹페이지의 내용이 변경되는 데이터를 말한다. 불법 웹페이지의 동적 콘텐츠를 제거하지 않으면, 복수의 수집 노드(120, 120a, 120b, 120c)가 불법 콘텐츠를 수집하고자 동일한 인터넷 주소에 접근하여도, 각 수집 노드에 의해 수집된 결과물들이 서로 상이할 수 있다.According to an embodiment, the first digital evidence file 210 may be a result of removing dynamic content from an HTML file of a web page on which illegal content is displayed. The dynamic content refers to data in which the contents of a webpage displayed on a screen are changed at random, by a user's location, device, or time accessing the webpage. If the dynamic content of illegal web pages is not removed, even if the plurality of collection nodes 120, 120a, 120b, 120c access the same Internet address to collect illegal content, the results collected by each collection node will be different. can

일 실시예에 의하면, 제2 디지털 증거 파일(220)은 불법 콘텐츠가 게재된 웹페이지에 포함되어 있는 정적 파일일 수 있다. 상기 정적 파일이란 누가 언제 웹페이지에 접속하더라도 모든 사용자의 화면에 보여지는 내용이 동일한 데이터를 말한다. 상기 정적 파일은, 예를 들어, 이미지 파일, 비디오 파일, 자바스크립트(Java Script) 또는 CSS(Cascading Style Sheets)일 수 있다.According to one embodiment, the second digital evidence file 220 may be a static file included in a web page on which illegal content is displayed. The static file refers to data that shows the same contents on the screens of all users regardless of who accesses the web page at any time. The static file may be, for example, an image file, a video file, JavaScript, or Cascading Style Sheets (CSS).

일 실시예에 의하면, DWT 생성 노드(110)는 명령어 tar를 이용하여 복수의 정적 파일을 하나의 제2 디지털 증거 파일(220)로 구성할 수 있다. According to an embodiment, the DWT creation node 110 may configure a plurality of static files into one second digital evidence file 220 using the tar command.

일 실시예에 의하면, 파싱룰 파일(230)은 웹페이지에서 동적 콘텐츠를 제거하기 위한 규칙을 정의해 놓은 파일일 수 있다. According to one embodiment, the parsing rule file 230 may be a file defining rules for removing dynamic content from a web page.

일 실시예에 의하면, 파싱룰 파일(230)은 제1 디지털 증거 파일(210)에 포함되어야 할 내용과 포함되지 않아야 할 내용을 분류하는 규칙을 기술함에 있어서, 사용자 입력을 받아 정의할 수 있다. 다른 실시예에 의하면, 파싱룰 파일(230)은 규칙을 기술함에 있어서, 구문 패턴을 분석함으로써 사용자 입력 없이, 자동으로 생성될 수 있다.According to one embodiment, the parsing rule file 230 may be defined by receiving a user input in describing rules for classifying content to be included in the first digital evidence file 210 and content not to be included in the first digital evidence file 210 . According to another embodiment, the parsing rule file 230 may be automatically generated without user input by analyzing a syntax pattern in describing rules.

일 실시예에 의하면, 파싱룰 파일(230)은 규칙을 기술함에 있어서, 속성-값의 쌍 (Attribute-Value Pairs) 형태의 데이터 포맷을 사용할 수 있다. 상기 파싱룰 파일(230)은, 예를 들어, JSON((JavaScript Object Notation)을 사용할 수 있다. 상기 JSON은 웹과 컴퓨터 프로그램에서 데이터 객체를 속성-값의 쌍 형태로 표현하는 형식이다. 상기 JSON은 자바스크립트(JavaScript)를 토대로 개발되었으며, 언어 독립적이라서 여러 프로그래밍 언어에 사용할 수 있다. 상기 JSON은 텍스트 기반이므로 작성하기 쉽고, 가독성이 좋다는 장점이 있다. 상기 JSON은 웹 브라우저와 웹 서버간 데이터 교환에 주로 사용된다According to an embodiment, the parsing rule file 230 may use a data format in the form of attribute-value pairs in describing rules. The parsing rule file 230 may use, for example, JSON ((JavaScript Object Notation). The JSON is a format that expresses data objects in the form of attribute-value pairs on the web and in computer programs. The JSON is developed based on JavaScript, and can be used in multiple programming languages because it is language-independent.The JSON is text-based, so it is easy to write and has good readability.The JSON is data exchange between a web browser and a web server is mainly used in

일 실시예에 의하면, DWT 메타데이터(240)는 제1 디지털 증거 파일(210)의 원본이 되는 웹페이지의 인터넷 주소를 포함할 수 있다.According to one embodiment, the DWT metadata 240 may include the Internet address of the original web page of the first digital evidence file 210 .

일 실시예에 의하면, DWT 메타데이터(240)는 DWT 파일(200)에 포함된 파일들에 대한 해시 값을 포함할 수 있다. 예를 들어, DWT 메타데이터(240)는 제1 디지털 증거 파일(210)에 대한 해시 값, 제2 디지털 증거 파일(220)에 포함된 정적 파일들에 대한 해시 값들, 파싱룰 파일(230)에 대한 해시 값을 포함할 수 있다.According to one embodiment, the DWT metadata 240 may include hash values for files included in the DWT file 200 . For example, the DWT metadata 240 includes hash values for the first digital evidence file 210, hash values for static files included in the second digital evidence file 220, and parsing rule file 230. It may contain a hash value for

일 실시예에 의하면, DWT 메타데이터(240)는 제1 디지털 증거 파일(210)이 생성된 시간 정보를 포함할 수 있다. 상기 시간 정보는 상기 시간 정보 속성의 값으로 기술된 그 시각에, 생성해 놓은 제1 디지털 증거 파일(210)이 존재했음을 증명하는 정보일 수 있다.According to one embodiment, the DWT metadata 240 may include time information when the first digital evidence file 210 was created. The time information may be information proving that the created first digital evidence file 210 existed at the time described as the value of the time information attribute.

일 실시예에 의하면, DWT 메타데이터(240)에 포함되는 하나 이상의 해시 값과 제1 디지털 증거 파일(210)이 생성된 시간 정보는 DWT 파일(200)의 제1 디지털 증거 파일(210), 제2 디지털 증거 파일(220), 파싱룰 파일(230)의 위조 또는 변조를 감지하기 위한 도구일 수 있으며, 도 6a와 도 6b를 참조하여 후술할 DWT 파일(200)의 무결성 검증에 사용될 수 있다.According to one embodiment, the one or more hash values included in the DWT metadata 240 and the time information when the first digital evidence file 210 was created are the first digital evidence file 210 of the DWT file 200, the second 2 It may be a tool for detecting forgery or falsification of the digital evidence file 220 and the parsing rule file 230, and may be used to verify the integrity of the DWT file 200 to be described later with reference to FIGS. 6A and 6B.

도 3은 본 개시의 다양한 실시예에 따라 DWT 파일의 예시를 도시한다.3 illustrates an example DWT file according to various embodiments of the present disclosure.

도 3을 참조하면, 예시로 도시된 DWT 파일(300)의 이름은 “2021-04-20T05:11:42Z_SHA256.DWT”이다. 상기 DWT 파일(300)의 확장자는 DWT일 수 있다. 하지만, 도 2를 참조하여 설명했듯이 DWT 파일(200)은 명령어 tar를 사용한 결과물일 수 있으므로, 상기 DWT 파일(300)의 파일 매직 넘버(File Magic Number)는 tar의 파일 매직 넘버와 동일할 수 있다.Referring to FIG. 3 , the name of the DWT file 300 shown as an example is “2021-04-20T05:11:42Z_SHA256.DWT”. The extension of the DWT file 300 may be DWT. However, as described with reference to FIG. 2 , since the DWT file 200 may be a result of using the command tar, the file magic number of the DWT file 300 may be the same as the file magic number of tar. .

상기 DWT 파일(300)은 제1 디지털 증거 파일(310), 제2 디지털 증거 파일(320), 파싱룰 파일(330) 및/또는 DWT 메타데이터(340) 중 적어도 하나를 포함할 수 있다. 상기 파싱룰 파일(330)과 상기 DWT 메타데이터(340)는 JSON으로 구현될 수 있다. 상기 JSON은 IETF RFC 7159(The JavaScript Object Notation(JSON) Data Interchange Format) 표준과 ECMA-404(The JSON Data Interchange Syntax) 표준으로 제정되어 있다. 대부분의 웹 기반 애플리케이션에서 데이터 교환 형식으로, 메시지 크기가 커지는 문제가 있는 XML 대신 상기 JSON을 사용할 수 있다. 상기 JSON은 자바스크립트의 구문 형식을 따르지만, C, C++, C#, 자바(Java), 파이선(Python)과 같은 프로그램 언어와도 함께 사용되어 플랫폼과 프로그래밍 언어 면에서 독립적인 언어로 사용될 수 있다. 데이터 구조는 속성(name)과 값(value) 한 쌍으로 구성되며, “속성: 값” 형식으로 데이터 객체를 표현한다. 상기 속성(name)의 자료형으로 문자열(string)이 지원되고, 상기 값(value)의 자료형으로 수(number), 문자열(string), 객체(object), 배열(array), 참/거짓(boolean), 또는 빈값(null)이 지원된다. 배열(array)은 대괄호([ ])를 사용하여 표현하고, 객체는 속성·값 쌍의 집합으로 중괄호({ })를 사용하여 표현하며, 객체 간의 구분은 쉼표(,)를 사용하여 표현할 수 있다. The DWT file 300 may include at least one of a first digital evidence file 310, a second digital evidence file 320, a parsing rule file 330, and/or DWT metadata 340. The parsing rule file 330 and the DWT metadata 340 may be implemented as JSON. The JSON is established as the IETF "RFC 7159 (The "JavaScript Object Notation (JSON) Data Interchange Format) standard and the "ECMA-404 (The "JSON" Data Interchange Syntax) standard. As a data exchange format in most web-based applications, the above JSON can be used instead of XML, which has the problem of increasing message size. The JSON follows the syntax format of JavaScript, but is also used with programming languages such as C, C++, C#, Java, and Python, so that it can be used as an independent language in terms of platform and programming language. The data structure is composed of a pair of a property (name) and a value (value), and expresses a data object in the form of “property: value”. String is supported as the data type of the property (name), and number, string, object, array, and boolean are supported as the data type of the value. , or an empty value (null) is supported. An array is expressed using square brackets ([ ]), an object is expressed using braces ({ }) as a set of property/value pairs, and a comma (,) is used to separate objects. .

상기 DWT 메타데이터(340)는 불법 웹페이지의 인터넷 주소를 “Address”라는 속성과 “example.onion”라는 값 형식으로 표현하였다.The DWT metadata 340 expresses the Internet address of the illegal web page in the form of an attribute called “Address” and a value called “example.onion”.

상기 제1 디지털 증거 파일(310)은 “example.onion”에 접근하여 다운로드한 HTML 문서에 파싱룰 파일(330)을 적용한 결과로서, HTML 형식이다.The first digital evidence file 310 is a result of applying the parsing rule file 330 to an HTML document downloaded by accessing “example.onion”, and is in HTML format.

상기 제2 디지털 증거 파일(320)은 “example.onion”에 존재하는 정적 파일들을 다운로드하여, 명령어 tar를 이용하여 하나로 묶은 파일이다.The second digital evidence file 320 is a file that downloads static files existing in “example.onion” and bundles them into one using the tar command.

상기 파싱룰 파일(330)은 HTML 문서 전체를 스크래핑(Scraping)한 결과 중 원하는 부분만 취사 선택하기 위해 파이선(Python)의 라이브러리 BeautifuleSoup을 이용하였다. 상기 파싱룰 파일(330)을 보면, “example.onion”에서 제1 디지털 증거 파일(310)에 포함되어야 할 요소는 “IncludeRules”로 정의해 놓았으며, 제거해야 할 요소는 “ExcludeRules”로 정의해 놓았다. 제거해야 할 요소는 주로 광고나 배너 등이다. 상위 HTML 트리 노드가 “ExcludeRules”속성 값으로 제거되는 경우, 상기 제거된 HTML 트리 노드의 하위 노드 중에 제1 디지털 증거 파일에 꼭 포함되어야 할 HTML 트리 노드가 존재한다면, 상기 HTML 트리 노드는 “IncludeRules”속성 값을 이용하여 존속될 수 있다.For the parsing rule file 330, BeautifuleSoup, a Python library, was used to select only desired parts from the result of scraping the entire HTML document. Looking at the parsing rule file 330, elements to be included in the first digital evidence file 310 in “example.onion” are defined as “IncludeRules”, and elements to be removed are defined as “ExcludeRules” put Elements to be removed are mainly advertisements and banners. When an upper HTML tree node is removed with an attribute value of “ExcludeRules”, and there is an HTML tree node that must be included in the first digital evidence file among lower nodes of the removed HTML tree node, the HTML tree node is “IncludeRules” It can be persisted using attribute values.

상기 DWT 메타데이터(340)의 “Datetime” 속성 값은 상기 제1 디지털 증거 파일(310)이 생성된 시간을 나타낸다.The “Datetime” attribute value of the DWT metadata 340 represents the time when the first digital evidence file 310 was created.

상기 DWT 메타데이터(340)의 “” 속성 값은 상기 제1 디지털 증거 파일(310)을 입력으로 하여, 산출된 해시 값이다. The “” attribute value of the DWT metadata 340 is a hash value calculated by taking the first digital evidence file 310 as an input.

상기 DWT 메타데이터(340)의 “StaticHash”속성 값은 상기 제2 디지털 증거 파일(320)에 포함되어 있는 정적 파일들에 대한 해시 값으로, 상기 정적 파일 개수만큼의 배열 크기로 나열될 수 있다.The “StaticHash” attribute value of the DWT metadata 340 is a hash value for static files included in the second digital evidence file 320, and may be listed in an array size equal to the number of the static files.

상기 DWT 메타데이터(340)의 “ParseHash” 속성 값은 상기 파싱룰 파일(330)의 해시 값이다.The “ParseHash” attribute value of the DWT metadata 340 is a hash value of the parsing rule file 330.

도 4는 본 개시의 다양한 실시예에 따라, 웹페이지에서 동적 콘텐츠를 제거한 결과를 도시한다.4 illustrates a result of removing dynamic content from a webpage according to various embodiments of the present disclosure.

도 4를 참조하면, 파싱룰 파일(330)을 사용하여 불법 웹페이지에 포함된 동적 콘텐츠를 제거할 수 있다. Referring to FIG. 4 , dynamic content included in an illegal web page may be removed using a parsing rule file 330 .

일 실시예에 의하면, 400a는 수집 노드1(120a)이 보는 화면이고, 400b는 수집 노드2(120b)가 보는 화면이고, 400c는 수집 노드3(120c)이 보는 화면일 수 있다.According to an embodiment, 400a may be a screen viewed by collection node 1 (120a), 400b may be a screen viewed by collection node 2 (120b), and 400c may be a screen viewed by collection node 3 (120c).

일 실시예에 의하면, 수집 노드1(120a), 수집 노드2(120b) 및 수집 노드3(120c)은 동일한 인터넷 주소로 접근하여 웹페이지를 수집할 수 있다.According to an embodiment, collection node 1 (120a), collection node 2 (120b), and collection node 3 (120c) may collect web pages by accessing the same Internet address.

일 실시예에 의하면, 수집 노드1(120a)이 수집한 원본 HTML(410a)은 광고(411a)를 포함할 수 있다. 수집 노드2(120b)가 수집한 원본 HTML(410b)은 광고(411b)를 포함할 수 있다. 수집 노드3(120c)이 수집한 원본 HTML(410c)은 광고(411c)를 포함할 수 있다. 상기 광고들(411a ~ 411c)은 상이할 수 있으며, 따라서 수집 노드들에 출력되는 화면들도 상이할 수 있다.According to an embodiment, the original HTML 410a collected by the collection node 1 120a may include an advertisement 411a. The original HTML 410b collected by the collecting node 2 120b may include an advertisement 411b. The original HTML 410c collected by the collecting node 3 120c may include an advertisement 411c. The advertisements 411a to 411c may be different, and accordingly, the screens output to collection nodes may also be different.

일 실시예에 의하면, 수집 노드1(120a)은 원본 HTML(410a)에 파싱룰 파일(330)을 적용하여 동적 콘텐츠가 제거된 HTML(420a)을 획득할 수 있다. 수집 노드2(120b)는 원본 HTML(410b)에 파싱룰 파일(330)을 적용하여 동적 콘텐츠가 제거된 HTML(420b)을 획득할 수 있다. 수집 노드3(120c)은 원본 HTML(410c)에 파싱룰 파일(330)을 적용하여 동적 콘텐츠가 제거된 HTML(420c)을 획득할 수 있다.According to an embodiment, the collection node 1 120a may acquire HTML 420a from which dynamic content is removed by applying the parsing rule file 330 to original HTML 410a. The collection node 2 120b may obtain HTML 420b from which dynamic content is removed by applying the parsing rule file 330 to the original HTML 410b. The collection node 3 120c may obtain HTML 420c from which dynamic content is removed by applying the parsing rule file 330 to the original HTML 410c.

일 실시예에 의하면, 원본 HTML(410a ~ 410c)은 상이하지만, 동일한 파싱룰 파일(330)을 적용한 결과, 동적 콘텐츠가 제거된 HTML(420a ~ 420c)은 모두 동일할 수 있다. According to an embodiment, although the original HTMLs 410a to 410c are different, as a result of applying the same parsing rule file 330 , the HTMLs 420a to 420c from which dynamic content is removed may be the same.

도 5는 본 개시의 다양한 실시예에 따라, 디지털 증거를 수집하고 검증하여 블록체인에 저장하는 과정을 대략적으로 나타내는 흐름도이다.5 is a flowchart schematically illustrating a process of collecting, verifying, and storing digital evidence in a blockchain according to various embodiments of the present disclosure.

도 5를 참조하면, 일 실시예에 따른 동작 501에서, DWT 생성 노드(110)는 웹페이지를 수집하여, 상기 웹페이지가 포함하고 있는 동적 콘텐츠를 제거한 제1 디지털 증거 파일을 획득할 수 있다. Referring to FIG. 5 , in operation 501 according to an embodiment, the DWT creation node 110 may collect a webpage and obtain a first digital evidence file from which dynamic content included in the webpage is removed.

일 실시예에 따른 동작 503에서, DWT 생성 노드(110)는 제1 디지털 증거 파일과 상기 제1 디지털 증거 파일을 획득하기 위해 고려된 참조 정보를 포함하도록 DWT 파일(200)을 생성할 수 있다. 상기 참조 정보에는 웹페이지가 포함하고 있는 정적 파일을 포함하는 제2 디지털 증거 파일, 상기 웹페이지가 포함하고 있는 동적 콘텐츠를 제거하기 위해 사용한 파싱룰 파일, 상기 DWT 파일(200)에 대한 DWT 메타데이터를 포함할 수 있다. 상기 DWT 메타데이터는 상기 웹페이지의 접속 주소를 포함하는 접속 정보, 상기 제1 디지털 증거 파일이 생성된 시간 정보, 상기 제1 디지털 증거 파일의 해시 값, 상기 제2 디지털 증거 파일에 포함된 정적 파일의 해시 값, 상기 파싱룰 파일의 해시 값을 포함할 수 있다.In operation 503 according to an embodiment, the DWT generation node 110 may generate the DWT file 200 to include a first digital evidence file and reference information considered for obtaining the first digital evidence file. The reference information includes a second digital evidence file including a static file included in a web page, a parsing rule file used to remove dynamic content included in the web page, and DWT metadata for the DWT file 200. can include The DWT metadata includes access information including the access address of the web page, time information when the first digital evidence file was created, a hash value of the first digital evidence file, and a static file included in the second digital evidence file. It may include a hash value of, and a hash value of the parsing rule file.

일 실시예에 따른 동작 505에서, 수집 노드(120)는 새로 생성된 DWT 파일(200)을 입수할 수 있다. 상기 수집 노드(120)는 상기 DWT 파일(200)의 DWT 메타데이터에 기술된 웹페이지의 접속 주소에 접근하여, 상기 웹페이지를 수집할 수 있다.At operation 505 according to one embodiment, the aggregation node 120 may obtain the newly created DWT file 200 . The collecting node 120 may collect the webpage by accessing the access address of the webpage described in the DWT metadata of the DWT file 200 .

일 실시예에 따른 동작 507에서, 수집 노드(120)는 수집한 웹페이지에 DWT 파일(200)에 포함된 파싱룰 파일(230)을 적용하여, 동적 콘텐츠가 제거된 HTML 파일을 생성할 수 있다.In operation 507 according to an embodiment, the collection node 120 applies the parsing rule file 230 included in the DWT file 200 to the collected webpage to generate an HTML file from which dynamic content is removed. .

일 실시예에 따른 동작 509에서, 수집 노드(120)는 동작 507에서 생성한 HTML 파일과 DWT 파일(200)에 포함된 제1 디지털 증거 파일을 비교하여 상기 DWT 파일(200)에 포함된 제1 디지털 증거 파일의 위조 또는 변조 여부를 검사할 수 있다. 이 때, 상기 제1 디지털 증거 파일의 해시 값과 생성된 시간 정보가 이용될 수 있다.In operation 509 according to an embodiment, the collection node 120 compares the HTML file generated in operation 507 with the first digital evidence file included in the DWT file 200, and the first digital evidence file included in the DWT file 200. Digital evidence files can be checked for forgery or alteration. At this time, the hash value of the first digital evidence file and generated time information may be used.

일 실시예에 따른 동작 511에서, 수집 노드(120)는 DWT 파일(200)의 위조 또는 변조 여부를 검증할 수 있다. 상기 검증 절차에 관한 세부적인 설명은 도 6a와 도 6b를 참조하여 후술한다.In operation 511 according to an embodiment, the collection node 120 may verify whether the DWT file 200 is forged or tampered with. A detailed description of the verification procedure will be described later with reference to FIGS. 6A and 6B.

일 실시예에 따른 동작 513에서, 블록 생성 노드(130)는 DWT 파일(200)에 대한 검증 작업에 참여한 복수의 수집 노드(120)로부터의 검증 결과를 종합하여, 상기 DWT 파일(200)이 위조 또는 변조되지 않았음이 검증되면, 상기 DWT 파일(200) 또는 상기 DWT 파일(200)의 해시 값 중 적어도 하나를 블록체인 기술을 사용한 블록화에 의해 만들어진 블록에 저장할 수 있다. In operation 513 according to an embodiment, the block generation node 130 aggregates the verification results from the plurality of collecting nodes 120 participating in the verification task for the DWT file 200, and the DWT file 200 is counterfeit. Alternatively, if it is verified that it has not been tampered with, at least one of the DWT file 200 or the hash value of the DWT file 200 may be stored in a block created by blockization using blockchain technology.

도 6a와 도 6b는 본 개시의 다양한 실시예에 따라, 수집 노드가 DWT 파일의 무결성을 검증하는 동작을 설명하는 흐름도이다.6A and 6B are flowcharts illustrating operations of verifying integrity of a DWT file by an ingestion node according to various embodiments of the present disclosure.

도 6a와 도 6b를 참조하면, 일 실시예에 따른 동작 601에서, 수집 노드(120)는 새로운 DWT 파일(200)이 생성되었음을 공지 받을 수 있다. Referring to FIGS. 6A and 6B , in operation 601 according to an embodiment, the collecting node 120 may be notified that a new DWT file 200 has been created.

일 실시예에 따른 동작 603에서, 수집 노드(120)는 생성된 DWT 파일(200)을 입수할 수 있다.At operation 603 according to one embodiment, the aggregation node 120 may obtain the generated DWT file 200 .

일 실시예에 따른 동작 605에서, 수집 노드(120)는 입수한 DWT 파일(200)을 압축 해제할 수 있다.In operation 605 according to an embodiment, the collection node 120 may decompress the obtained DWT file 200 .

일 실시예에 따른 동작 607에서, 수집 노드(120)는 제1 디지털 증거 파일(210), 제2 디지털 증거 파일(220), 파싱룰 파일(230) 및/또는 DWT 메타데이터(240)를 획득할 수 있다.In operation 607 according to an embodiment, the collection node 120 obtains the first digital evidence file 210, the second digital evidence file 220, the parsing rules file 230 and/or the DWT metadata 240. can do.

일 실시예에 따른 동작 609에서, 수집 노드(120)는 DWT 메타데이터(240)에서 제1 디지털 증거 파일(210)의 원본이 되는 웹페이지의 인터넷 주소를 획득할 수 있다.In operation 609 according to an embodiment, the collection node 120 may obtain the Internet address of the original webpage of the first digital evidence file 210 from the DWT metadata 240 .

일 실시예에 따른 동작 611에서, 수집 노드(120)는 획득한 인터넷 주소에 접근할 수 있다.In operation 611 according to an embodiment, the aggregation node 120 may access the obtained Internet address.

일 실시예에 따른 동작 613에서, 수집 노드(120)는 접근한 인터넷 주소에서 웹페이지를 수집할 수 있다.In operation 613 according to an embodiment, the collection node 120 may collect web pages from the accessed Internet address.

일 실시예에 따른 동작 615에서, 수집 노드(120)는 수집한 웹페이지에 파싱룰 파일(230)을 적용하여, 동적 콘텐츠가 제거된 HTML 파일을 생성할 수 있다.In operation 615 according to an embodiment, the collection node 120 may generate an HTML file from which dynamic content is removed by applying the parsing rule file 230 to the collected webpage.

일 실시예에 따른 동작 617에서, 수집 노드(120)는 동작 615에서 생성한 HTML 파일에 대한 해시 값을 산출할 수 있다.In operation 617 according to an embodiment, the collection node 120 may calculate a hash value for the HTML file generated in operation 615 .

일 실시예에 따른 동작 619에서, 수집 노드(120)는 DWT 파일(200)의 제1 디지털 증거 파일(210)에 대한 해시 값을 산출할 수 있다.In operation 619 according to an embodiment, the collection node 120 may calculate a hash value for the first digital evidence file 210 of the DWT file 200 .

일 실시예에 따른 동작 621에서, 수집 노드(120)는 DWT 메타데이터(240)에 기술되어 있는 “HTMLHash” 속성 값을 획득할 수 있다.In operation 621 according to an embodiment, the collection node 120 may acquire the “HTMLHash” attribute value described in the DWT metadata 240 .

다양한 실시 예에 따르면, 해시 값을 획득하는 일련의 동작(617 ~ 621)들의 순서는 제한하지 않을 수 있다. 예를 들어, 동작 621은 동작 617 또는 동작 619 이전에 수행될 수 있으며, 동작 619는 동작 617 이전에 수행될 수 있다.According to various embodiments, the order of a series of operations 617 to 621 for obtaining a hash value may not be limited. For example, operation 621 may be performed before operation 617 or operation 619, and operation 619 may be performed before operation 617.

일 실시예에 따른 동작 623에서, 수집 노드(120)는 동작 617에서 산출한 HTML 해시 값과 동작 619에서 산출한 제1 디지털 증거 파일(210)의 해시 값과, 동작 621에서 획득한 “HTMLHash” 속성 값을 비교하여, 세개의 해시 값들이 일치하면 동작 625를 수행할 수 있다. 상기 세개의 해시 값들이 일치하지 않으면, 상기 수집 노드(120)는 상기 제1 디지털 증거 파일(210) 또는 DWT 메타데이터(240)중 적어도 하나가 위조 또는 변조되었다고 판단하여 동작 645를 수행할 수 있다.In operation 623 according to an embodiment, the collection node 120 includes the HTML hash value calculated in operation 617, the hash value of the first digital evidence file 210 calculated in operation 619, and “HTMLHash” obtained in operation 621. By comparing the attribute values, if the three hash values match, operation 625 may be performed. If the three hash values do not match, the collection node 120 determines that at least one of the first digital evidence file 210 or the DWT metadata 240 is forged or tampered with and performs operation 645. .

일 실시예에 따른 동작 625에서, 수집 노드(120)는 동작 613에서 수집한 정적 파일의 해시 값을 산출할 수 있다. 예를 들어, 상기 정적 파일이 복수개인 경우, 상기 수집 노드(120)는 상기 정적 파일에 상응하는 해시 값을 상기 정적 파일의 개수만큼 산출할 수 있다.In operation 625 according to an embodiment, the collection node 120 may calculate a hash value of the static file collected in operation 613 . For example, when there are a plurality of static files, the collection node 120 may calculate hash values corresponding to the static files as many as the number of static files.

일 실시예에 따른 동작 627에서, 수집 노드(120)는 DWT 메타데이터(240)에 기술되어 있는 “StaticHash” 속성 값을 획득할 수 있다. 상기 “StaticHash”는 DWT 파일(200)의 제2 디지털 증거 파일(220)에 포함된 정적 파일에 대한 해시 값을 의미한다.In operation 627 according to an embodiment, the collection node 120 may obtain a “StaticHash” attribute value described in the DWT metadata 240 . The “StaticHash” means a hash value for a static file included in the second digital evidence file 220 of the DWT file 200.

일 실시예에 따른 동작 629에서, 수집 노드(120)는 동작 625에서 산출한 해시 값과 동작 627에서 획득한 “StaticHash” 속성 값을 비교하여, 일치하면 동작 631을 수행할 수 있고, 일치하지 않으면 동작 645를 수행할 수 있다. 예를 들어, 상기 수집 노드(120)가 비교해야 할 해시 값이 복수개인 경우, 상기 해시 값이 하나라도 일치하지 않으면, 상기 수집 노드(120)는 DWT 메타데이터(240) 또는 적어도 한 개 이상의 정적 파일이 위조 또는 변조되었다고 판단하고, 동작 645를 수행할 수 있다.In operation 629 according to an embodiment, the collection node 120 compares the hash value calculated in operation 625 with the “StaticHash” attribute value obtained in operation 627, and if they match, operation 631 may be performed. Operation 645 may be performed. For example, when there are a plurality of hash values to be compared by the collection node 120, and even one of the hash values does not match, the collection node 120 generates the DWT metadata 240 or at least one static value. Upon determining that the file has been forged or tampered with, operation 645 may be performed.

다양한 실시예에 따르면, 동작 629에 앞서 수집 노드(120)는 DWT 파일(200)에서 획득한 제2 디지털 증거 파일(220)에 포함된 정적 파일에 대한 해시 값을 직접 산출하여, 동작 625에서 산출한 해시 값과 비교하는 단계를 추가할 수 있다.According to various embodiments, prior to operation 629, the collection node 120 directly calculates a hash value for a static file included in the second digital evidence file 220 acquired from the DWT file 200, and calculates it in operation 625. You can add a step to compare with one hash value.

일 실시예에 따른 동작 631에서, 수집 노드(120)는 파싱룰 파일(230)의 해시 값을 산출할 수 있다.In operation 631 according to an embodiment, the collection node 120 may calculate a hash value of the parsing rule file 230 .

일 실시예에 따른 동작 633에서, 수집 노드(120)는 DWT 메타데이터(240)에 기술되어 있는 “ParseHash” 속성 값을 획득할 수 있다.In operation 633 according to an embodiment, the collection node 120 may obtain a “ParseHash” attribute value described in the DWT metadata 240 .

일 실시예에 따른 동작 635에서, 수집 노드(120)는 동작 631에서 산출한 파싱룰 파일(230)의 해시 값과 동작 633에서 획득한 “ParseHash” 속성 값을 비교하여, 일치하면 동작 637을 수행할 수 있다. 상기 해시 값이 일치하지 않으면, 상기 수집 노드(120)는 상기 파싱룰 파일(230) 또는 DWT 메타데이터(240)중 적어도 하나가 위조 또는 변조되었다고 판단하고, 동작 645를 수행할 수 있다.In operation 635 according to an embodiment, the collection node 120 compares the hash value of the parsing rule file 230 calculated in operation 631 with the “ParseHash” attribute value obtained in operation 633, and if they match, operation 637 is performed. can do. If the hash values do not match, the collection node 120 may determine that at least one of the parsing rule file 230 and the DWT metadata 240 is forged or tampered with, and may perform operation 645 .

일 실시예에 따른 동작 637에서, 수집 노드(120)는 제1 디지털 증거 파일(210)의 파일 생성 시간을 획득할 수 있다. inode는 파일 자신에 대한 정보를 담는 구조체로서, 파일의 크기, 파일의 링크 수, 파일의 크기, 파일의 생성 시간, 파일의 최근 사용 시간, 파일의 최근 수정 시간, 파일의 소유권 정보를 포함하고 있다. 상기 수집 노드(120)는 상기 inode 구조체를 이용하여, 상기 제1 디지털 증거 파일(210)의 파일 생성 시간을 획득할 수 있다.In operation 637 according to an embodiment, the collection node 120 may obtain a file creation time of the first digital evidence file 210 . The inode is a structure that contains information about the file itself, including the size of the file, the number of links to the file, the size of the file, the creation time of the file, the time of the last use of the file, the time of the last modification of the file, and the ownership information of the file. . The collection node 120 may obtain a file creation time of the first digital evidence file 210 using the inode structure.

일 실시예에 따른 동작 639에서, 수집 노드(120)는 DWT 메타데이터(240)에 기술되어 있는 “Datetime” 속성 값을 획득할 수 있다. In operation 639 according to an embodiment, the collection node 120 may acquire a “Datetime” attribute value described in the DWT metadata 240 .

일 실시예에 따른 동작 641에서, 수집 노드(120)는 동작 637에서 획득한 제1 디지털 증거 파일(210)의 파일 생성 시간과 동작 639에서 획득한 “Datetime” 속성 값을 비교하여, 일치하면 동작 643을 수행할 수 있다. 상기 파일 생성 시간 정보가 일치하지 않으면, 상기 수집 노드(120)는 상기 제1 디지털 증거 파일(210) 또는 DWT 메타데이터(240)중 적어도 하나가 위조 또는 변조되었다고 판단하고, 동작 645를 수행할 수 있다.In operation 641 according to an embodiment, the collection node 120 compares the file creation time of the first digital evidence file 210 obtained in operation 637 with the “Datetime” attribute value obtained in operation 639, and if they match, the operation 643 can be performed. If the file creation time information does not match, the collection node 120 may determine that at least one of the first digital evidence file 210 or the DWT metadata 240 is forged or tampered with, and perform operation 645. there is.

일 실시예에 따른 동작 643에서, 수집 노드(120)는 DWT 파일(200)이 디지털 증거로서 가용(Valid)하다고 판단할 수 있다. 상기 DWT 파일(200)은 동작 623, 동작 629, 동작 635, 동작 641의 검증을 모두 통과했으므로, 상기 수집 노드(120)는 상기 DWT 파일(200)이 위조 또는 변조되지 않았다고 판단할 수 있다.In operation 643 according to an embodiment, the collection node 120 may determine that the DWT file 200 is valid as digital evidence. Since the DWT file 200 has passed the verifications of operations 623, 629, 635, and 641, the collection node 120 may determine that the DWT file 200 is not forged or tampered with.

일 실시예에 따른 동작 645에서, 수집 노드(120)는 DWT 파일(200)이 동작 623, 동작 629, 동작 635, 동작 641중 적어도 하나의 검증 단계를 통과하지 못했으므로, 디지털 증거로서 비가용(Invalid)하다고 판단할 수 있다.In operation 645 according to an embodiment, the collection node 120 determines that the DWT file 200 is unavailable as digital evidence ( Invalid) can be determined.

일 실시예에 의하면, 수집 노드(120)가 제1 디지털 증거 파일(210)의 해시 값 검증 단계, 제2 디지털 증거 파일(220)의 해시 값 검증 단계, 파싱룰 파일(230)의 해시 값 검증 단계, 상기 제1 디지털 증거 파일(210)의 파일 생성 시간 검증 단계의 순서로 DWT 파일(200)의 검증을 수행하였으나, 다양한 실시예에 따르면, 상기 수집 노드(120)는 상기 순서와 다른 순서로 검증을 진행할 수 있다. 예를 들어, 상기 수집 노드(120)는 파싱룰 파일(230)의 해시 값 검증 단계를 상기 제1 디지털 증거 파일(210)의 해시 값 검증 단계에 우선하여 진행할 수 있다.According to an embodiment, the collection node 120 performs the step of verifying the hash value of the first digital evidence file 210, the step of verifying the hash value of the second digital evidence file 220, and the step of verifying the hash value of the parsing rule file 230. Although the verification of the DWT file 200 is performed in the order of the first digital evidence file 210 and the verification of the file generation time of the first digital evidence file 210, according to various embodiments, the collection node 120 performs a different order from the above order. verification can proceed. For example, the collection node 120 may prioritize the hash value verification step of the parsing rule file 230 to the hash value verification step of the first digital evidence file 210 .

일 실시예에 의하면, 수집 노드(120)에는 본 개시에서 설명한 DWT 파일(200)에 대한 검증 기능을 수행하기 위한 클라이언트 프로그램이 설치될 수 있다.According to one embodiment, the collection node 120 may be installed with a client program for performing a verification function on the DWT file 200 described in this disclosure.

도 7은 본 개시의 다양한 실시예에 따라 블록 생성 과정을 나타내는 흐름도이다.7 is a flowchart illustrating a block generation process according to various embodiments of the present disclosure.

도 7을 참조하면, 일 실시예에 따라 불법 콘텐츠를 발견(701)하는 이벤트가 발생하면, DWT 생성 노드(710)는 새로운 DWT 파일(715)을 생성할 수 있다.Referring to FIG. 7 , when an event of discovering illegal content 701 occurs according to an embodiment, a DWT creation node 710 may create a new DWT file 715 .

일 실시예에 의하면, 수집 노드(720a ~ 720c)는 생성된 DWT 파일(715)을 입수하고 이를 이용하여 상기 DWT 파일(715)에 대한 무결성 검증을 수행할 수 있다. 상기 무결성 검증 절차(721a ~ 721c)는 도 6a와 도 6b에서 전술한 바와 같다.According to an embodiment, the collection nodes 720a to 720c may obtain the generated DWT file 715 and perform integrity verification on the DWT file 715 using it. The integrity verification procedures 721a to 721c are the same as those described above with reference to FIGS. 6A and 6B.

일 실시예에 의하면, 동작 723a에서, 수집 노드(720a)는 검증 수행(721a) 결과, DWT 파일(715)을 가용으로 판단할 수 있다.According to an embodiment, in operation 723a, as a result of performing verification 721a, the collection node 720a may determine that the DWT file 715 is available.

일 실시예에 의하면, 동작 723b에서, 수집 노드(720b)는 검증 수행(721b) 결과, DWT 파일(715)을 비가용으로 판단할 수 있다.According to an embodiment, in operation 723b, the collection node 720b may determine that the DWT file 715 is unavailable as a result of the verification operation 721b.

일 실시예에 의하면, 동작 723c에서, 수집 노드(720c)는 검증 수행(721c) 결과, DWT 파일(715)을 가용으로 판단할 수 있다.According to an embodiment, in operation 723c, as a result of performing verification 721c, the collection node 720c may determine that the DWT file 715 is available.

일 실시예에 의하면, 수집 노드(720a ~ 720c)는 검증 결과를 P2P 네트워크(140)에 공개할 수 있다.According to an embodiment, the aggregation nodes 720a to 720c may disclose verification results to the P2P network 140 .

일 실시예에 의하면, 블록 생성 노드(730)는 P2P 네트워크(140)를 모니터링하면서 DWT 파일(715)이 가용한 것으로 합의되었는지에 기반하여 상기 DWT 파일(715)을 블록 데이터에 저장할지 결정할 수 있다.According to an embodiment, the block generation node 730 may determine whether to store the DWT file 715 in block data based on whether the DWT file 715 is agreed to be available while monitoring the P2P network 140. .

일 실시예에 따른 동작 731에서, 블록 생성 노드(730)는 다수의 합의를 반영하는 데 있어서, 비잔티움 장애 허용(Byzantine Fault Tolerance)을 사용할 수 있다. 상기 블록 생성 노드(730)는 검증에 참여한 수집 노드(720a ~ 720c)의 2/3 이상이 가용(Valid)으로 판정한 경우에 동작 733을 수행할 수 있고, 그렇지 않은 경우에 동작 735를 수행하여 DWT 파일(715)을 폐기할 수 있다. 다른 실시예에 있어서, 블록 생성 노드(730)는 검증에 참여한 수집 노드(720a ~ 720c)의 과반 이상이 가용(Valid)으로 판정한 경우에 동작 733을 수행할 수 있고, 그렇지 않은 경우에 동작 735를 수행할 수 있다.In operation 731 according to an embodiment, the block generation node 730 may use Byzantine Fault Tolerance in reflecting multiple consensus. The block generation node 730 may perform operation 733 when more than 2/3 of the collection nodes 720a to 720c participating in the verification are determined to be valid, and otherwise perform operation 735 to The DWT file 715 can be discarded. In another embodiment, the block generation node 730 may perform operation 733 when more than half of the collection nodes 720a to 720c participating in the verification are determined to be valid, and otherwise, operation 735 can be performed.

일 실시예에 따른 동작 733에서, 블록 생성 노드(730)는 DWT 파일(715)을 블록체인 기술을 사용한 블록화에 의해 만들어진 블록에 저장할 수 있다.In operation 733 according to an embodiment, the block generation node 730 may store the DWT file 715 in a block created by blockization using blockchain technology.

도 8은 본 개시의 다양한 실시예에 따른 블록 구조이다.8 is a block structure according to various embodiments of the present disclosure.

도 8을 참조하면, 일 실시예에 따라 블록 생성 노드(130)에 의해 생성된 블록(800)의 구조는 일반적인 블록체인에 사용되는 블록 구조와 동일할 수 있다.Referring to FIG. 8 , the structure of a block 800 generated by the block generation node 130 according to an embodiment may be the same as a block structure used in a general blockchain.

일 실시예에 의하면, 매직 넘버(801)는 네트워크 식별자로 고정 값일 수 있다. 블록 사이즈(803)는 블록의 크기일 수 있다. 블록 헤더는 6가지 항목으로 구성될 수 있다. 버전(805)은 소프트웨어의 버전일 수 있다. 이전 블록 해시(807)는 체인으로 연결된 이전 블록 헤더의 SHA256 해시일 수 있다. 루트 해시(809)는 블록(800)에 저장되어 있는 모든 DWT 해시 값을 2진 트리 형태로 구성할 때(809a~809g) 트리의 루트(809g)에 위치하는 해시 값일 수 있다. 상기 루트 해시(809)는 블록데이터가 추가될 때 마다 업데이트 될 수 있다.According to one embodiment, the magic number 801 may be a fixed value as a network identifier. The block size 803 may be the size of a block. A block header can consist of 6 items. Version 805 may be a version of software. The previous block hash 807 may be the SHA256 hash of the chained previous block header. The root hash 809 may be a hash value located at the root 809g of the tree when all DWT hash values stored in the block 800 are configured in the form of a binary tree (809a to 809g). The root hash 809 may be updated whenever block data is added.

타임(811)은 UTC 1970-01-01 이후로 경과한 초(second)의 값으로, 몇 초마다 업데이트 될 수 있다.The time 811 is a value of seconds that have elapsed since UTC 1970-01-01, and may be updated every few seconds.

난이도(813)는 블록체인의 작업 증명을 하는데 사용되는 난이도 목표일 수 있다.Difficulty 813 may be a difficulty target used for proof-of-work of the blockchain.

논스(815)는 블록 생성 과정에서 찾아내는 임의의 수이며, 이 숫자를 바꿔가면서 난이도 목표를 충족하는 해시 값이 계산되도록 하는 것이 블록 채굴이다.The nonce 815 is a random number found in the block generation process, and block mining is to change this number so that a hash value that meets the difficulty target is calculated.

일 실시예에 의하면, DWT File Counter(817)는 블록데이터에 저장되는 DWT 파일(200)의 해시 값의 개수 또는 DWT 파일(200)의 개수일 수 있다.According to an embodiment, the DWT File Counter 817 may be the number of hash values of DWT files 200 or the number of DWT files 200 stored in block data.

일 실시예에 의하면, 일반적인 블록체인에서는 거래 정보가 저장되는 블록데이터(819~825)에, 거래 정보 대신 DWT 파일(200)의 해시 값이 저장될 수 있다.According to one embodiment, in a general blockchain, the hash value of the DWT file 200 may be stored instead of the transaction information in block data 819 to 825 in which transaction information is stored.

일 실시예에 의하면, 블록(800) 하나에 복수의 DWT 파일(200)이 저장될 수 있다. 예를 들어, 수사 기관의 추적을 피하고자 인터넷 주소를 수시로 변경하는 불법 웹사이트의 특성으로 인해, 디지털 증거의 증거력이 최대한 신속히 확보되어야 하는 경우에는, 블록(800)이 빠르게 생성되어야 하므로, 블록(800) 하나에 상대적으로 적은 수의 DWT 파일(200)이 저장될 수 있다. According to one embodiment, a plurality of DWT files 200 may be stored in one block 800 . For example, due to the nature of illegal websites that frequently change Internet addresses to avoid tracking by investigative agencies, when the evidence of digital evidence must be secured as quickly as possible, the block 800 must be generated quickly, so the block ( 800), a relatively small number of DWT files 200 may be stored in one.

도 9는 본 개시의 다양한 실시예에 따른 블록 구조 예시이다.9 is an example of a block structure according to various embodiments of the present disclosure.

도 9를 참조하면, 일 실시예에 따라 블록 생성 노드(130)에 의해 생성된 블록(900a ~ 900c)의 블록 헤더(801 ~ 815) 및 DWT File Counter(817)는 도 8의 블록 헤더와 (801 ~ 815)및 DWT File Counter(817)와 동일할 수 있다.Referring to FIG. 9, block headers 801 to 815 and DWT File Counter 817 of blocks 900a to 900c generated by the block generation node 130 according to an embodiment are the same as the block header of FIG. 8 ( 801 to 815) and DWT File Counter (817).

일 실시예에 의하면, P2P 네트워크(140)의 파일 전송 공유 환경에 따라 블록데이터(901 ~ 907, 911 ~ 917, 921 ~ 927)에 저장되는 대상이 달라질 수 있다. According to an embodiment, objects stored in the block data 901 to 907, 911 to 917, and 921 to 927 may vary according to the file transfer sharing environment of the P2P network 140.

P2P 네트워크(140)가, 예를 들어, 토렌트(Torrent)같은 파일 공유 프로그램을 사용한다면, 블록 생성 노드(130)는 블록데이터(901~907)에 DWT 파일(200)의 해시 정보와 상기 DWT 파일(200)의 마그넷 링크 주소를 저장하여 블록(900a)을 생성할 수 있다.If the P2P network 140 uses, for example, a file sharing program such as Torrent, the block generating node 130 adds the hash information of the DWT file 200 to the block data 901 to 907 and the DWT file. The block 900a may be created by storing the magnet link address of 200.

일 실시예에 의하면, DWT 파일의 용량으로 인한 P2P 네트워크(140)의 부하를 고려하지 않는 경우, 블록 생성 노드(130)는 블록데이터(911~917)에 상기 DWT 파일(200)의 해시 정보와 상기 DWT 파일(200)을 그대로 저장하여 블록(900b)을 생성할 수 있다. 다른 실시예에 의하면, 블록 생성 노드(130)는 블록데이터(921~927)에 상기 DWT 파일(200)을 그대로 저장하여 블록(900c)을 생성할 수 있다.According to an embodiment, when the load of the P2P network 140 due to the capacity of the DWT file is not considered, the block generating node 130 includes the hash information of the DWT file 200 and the block data 911 to 917. The block 900b may be created by storing the DWT file 200 as it is. According to another embodiment, the block generation node 130 may generate the block 900c by storing the DWT file 200 as it is in the block data 921 to 927 .

본 개시 내용이 특정 실시 양태를 참조하여 특히 도시되고 설명되었지만, 첨부된 청구범위 및 그 균등물에 의해 정의된 바와 같이 개시 내용의 사상 및 범위를 벗어나지 않고 형태 및 세부 사항에 있어서 다양한 변형이 이루어질 수 있다는 것이 당업자에 의해 이해될 것이다.Although this disclosure has been particularly shown and described with reference to particular embodiments, various changes may be made in form and detail without departing from the spirit and scope of the disclosure as defined by the appended claims and equivalents thereto. It will be understood by those skilled in the art.

본 문서에 개시된 다양한 실시예들에 따른 전자 장치는 다양한 형태의 장치가 될 수 있다. 전자 장치는, 예를 들면, 휴대용 통신 장치(예: 스마트폰), 컴퓨터 장치, 휴대용 멀티미디어 장치, 휴대용 의료 기기, 카메라, 웨어러블 장치, 또는 가전 장치를 포함할 수 있다. 본 문서의 실시예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다.Electronic devices according to various embodiments disclosed in this document may be devices of various types. The electronic device may include, for example, a portable communication device (eg, a smart phone), a computer device, a portable multimedia device, a portable medical device, a camera, a wearable device, or a home appliance. An electronic device according to an embodiment of the present document is not limited to the aforementioned devices.

본 문서의 다양한 실시예들 및 이에 사용된 용어들은 본 문서에 기재된 기술적 특징들을 특정한 실시예들로 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 또는 관련된 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 아이템에 대응하는 명사의 단수 형은 관련된 문맥상 명백하게 다르게 지시하지 않는 한, 상기 아이템 한 개 또는 복수 개를 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나", "A 또는 B 중 적어도 하나", "A, B 또는 C", "A, B 및 C 중 적어도 하나", 및 "A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들 중 어느 하나, 또는 그들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", 또는 "첫째" 또는 "둘째"와 같은 용어들은 단순히 해당 구성요소를 다른 해당 구성요소와 구분하기 위해 사용될 수 있으며, 해당 구성요소들을 다른 측면(예: 중요성 또는 순서)에서 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에, "기능적으로" 또는 "통신적으로"라는 용어와 함께 또는 이런 용어 없이, "커플드" 또는 "커넥티드"라고 언급된 경우, 그것은 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로(예: 유선으로), 무선으로, 또는 제 3 구성요소를 통하여 연결될 수 있다는 것을 의미한다.Various embodiments of this document and terms used therein are not intended to limit the technical features described in this document to specific embodiments, but should be understood to include various modifications, equivalents, or substitutes of the embodiments. In connection with the description of the drawings, like reference numbers may be used for like or related elements. The singular form of a noun corresponding to an item may include one item or a plurality of items, unless the relevant context clearly dictates otherwise. In this document, "A or B", "at least one of A and B", "at least one of A or B", "A, B or C", "at least one of A, B and C", and "A Each of the phrases such as "at least one of , B, or C" may include any one of the items listed together in that phrase, or all possible combinations thereof. Terms such as "first", "second", or "first" or "secondary" may simply be used to distinguish a given component from other corresponding components, and may be used to refer to a given component in another aspect (eg, importance or order) is not limited. A (e.g., first) component is said to be "coupled" or "connected" to another (e.g., second) component, with or without the terms "functionally" or "communicatively." When mentioned, it means that the certain component may be connected to the other component directly (eg by wire), wirelessly, or through a third component.

본 문서의 다양한 실시예들에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구현된 유닛을 포함할 수 있으며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로와 같은 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는, 상기 부품의 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 일실시예에 따르면, 모듈은 ASIC(application-specific integrated circuit)의 형태로 구현될 수 있다. The term "module" used in various embodiments of this document may include a unit implemented in hardware, software, or firmware, and is interchangeable with terms such as, for example, logic, logical blocks, parts, or circuits. can be used as A module may be an integrally constructed component or a minimal unit of components or a portion thereof that performs one or more functions. For example, according to one embodiment, the module may be implemented in the form of an application-specific integrated circuit (ASIC).

본 문서의 다양한 실시예들은 기기(machine)(예: 전자 장치)에 의해 읽을 수 있는 저장 매체(storage medium)(예: 내장 메모리(또는 외장 메모리)에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어(예: 프로그램)로서 구현될 수 있다. 예를 들면, 기기(예: 전자 장치)의 프로세서는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장 매체는, 비일시적(non-transitory) 저장 매체의 형태로 제공될 수 있다. 여기서, ‘비일시적’은 저장 매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장 매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.Various embodiments of this document describe software (eg, software including one or more instructions stored in a storage medium (eg, internal memory (or external memory)) readable by a machine (eg, an electronic device)). program). For example, a processor of a device (eg, an electronic device) may call at least one command among one or more commands stored from a storage medium and execute it. This means that the device may call the call The one or more instructions may include code generated by a compiler or code executable by an interpreter. A storage medium with a storage medium may be provided in the form of a non-transitory storage medium, where 'non-transitory' is a device in which the storage medium is tangible and transmits a signal (e.g., electromagnetic wave). This term does not distinguish between the case where data is semi-permanently stored in the storage medium and the case where it is temporarily stored.

일실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory(CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두 개의 사용자 장치들(예: 스마트 폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.According to one embodiment, the method according to various embodiments disclosed in this document may be included and provided in a computer program product. Computer program products may be traded between sellers and buyers as commodities. A computer program product is distributed in the form of a device-readable storage medium (e.g. compact disc read only memory (CD-ROM)), or through an application store (e.g. Play Store™) or on two user devices (e.g. It can be distributed (eg downloaded or uploaded) online, directly between smart phones. In the case of online distribution, at least part of the computer program product may be temporarily stored or temporarily created in a device-readable storage medium such as a manufacturer's server, an application store server, or a relay server's memory.

다양한 실시예들에 따르면, 상기 기술한 구성요소들의 각각의 구성요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체를 포함할 수 있으며, 복수의 개체 중 일부는 다른 구성요소에 분리 배치될 수도 있다. 다양한 실시예들에 따르면, 전술한 해당 구성요소들 중 하나 이상의 구성요소들 또는 동작들이 생략되거나, 또는 하나 이상의 다른 구성요소들 또는 동작들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성요소들(예: 모듈 또는 프로그램)은 하나의 구성요소로 통합될 수 있다. 이런 경우, 통합된 구성요소는 상기 복수의 구성요소들 각각의 구성요소의 하나 이상의 기능들을 상기 통합 이전에 상기 복수의 구성요소들 중 해당 구성요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따르면, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 상기 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다.According to various embodiments, each component (eg, module or program) of the above-described components may include a single object or a plurality of entities, and some of the plurality of entities may be separately disposed in other components. there is. According to various embodiments, one or more components or operations among the aforementioned corresponding components may be omitted, or one or more other components or operations may be added. Alternatively or additionally, a plurality of components (eg modules or programs) may be integrated into a single component. In this case, the integrated component may perform one or more functions of each of the plurality of components identically or similarly to those performed by a corresponding component of the plurality of components prior to the integration. . According to various embodiments, the actions performed by a module, program, or other component are executed sequentially, in parallel, iteratively, or heuristically, or one or more of the actions are executed in a different order, or omitted. or one or more other actions may be added.

Claims (20)

디지털 증거 수집 장치에 있어서,
웹서버로부터 적어도 하나의 웹페이지를 화면에 표시하기 위한 제1 웹페이지 데이터를 수집하고, 상기 제1 웹페이지 데이터에 포함된 동적 콘텐츠 데이터를 제거하는 파싱(parsing)을 수행하여 제1 디지털 증거 파일을 획득하며, 상기 제1 디지털 증거 파일 및 상기 제1 디지털 증거 파일을 획득하기 위해 고려된 참조 정보를 포함하도록 심층 웹 포맷 (DWT: Deep Web Tar) 파일을 생성하도록 구성된, 적어도 하나의 DWT 생성 노드;
상기 DWT 파일에 포함된 상기 참조 정보 중 하나인 접속 정보를 사용하여 상기 웹서버로부터 제2 웹페이지 데이터를 수집하고, 상기 참조 정보 중 하나인 파싱룰 파일을 기반으로 상기 제2 웹페이지 데이터에 포함된 동적 콘텐츠 데이터를 제거하는 파싱을 수행하여 동적 콘텐츠가 제거된 하이퍼텍스트 마크업 언어 (HTML: HyperText Markup Language) 파일을 획득하며, 상기 HTML 파일을 기반으로 상기 DWT 파일에 포함된 상기 제1 디지털 증거 파일의 위조 또는 변조 여부를 검사하고, 상기 검사 결과를 기반으로, 상기 DWT 파일의 위조 또는 변조 여부를 검증하도록 구성된 복수의 수집 노드들; 및
상기 DWT 파일 중 상기 복수의 수집 노드들에 의해 위조 또는 변조되지 않았음이 검증된 DWT 파일 또는 상기 검증된 DWT 파일의 해시 값 중 적어도 하나를 블록체인 기술을 사용한 블록화에 의해 만들어진 블록에 저장하도록 구성된 블록 생성 노드를 포함하며,
여기서, 상기 DWT 파일에 포함된 상기 참조 정보는, 상기 적어도 하나의 웹페이지에 존재하는 정적 파일을 포함하는 제2 디지털 증거 파일, 상기 적어도 하나의 웹페이지에 포함된 동적 콘텐츠를 제거하도록 구성된 상기 파싱룰 파일 및 상기 적어도 하나의 웹페이지에 대한 메타데이터를 포함하고,
상기 메타데이터는, 상기 제1 디지털 증거 파일의 해시 값, 상기 제2 디지털 증거 파일에 포함된 상기 정적 파일의 해시 값, 상기 파싱룰 파일의 해시 값, 상기 제1 디지털 증거 파일의 생성 시간 정보 및 상기 적어도 하나의 웹페이지의 접속 주소인 상기 접속 정보를 포함하는, 디지털 증거 수집 장치.
In the digital evidence collection device,
A first digital evidence file is obtained by collecting first webpage data for displaying at least one webpage on a screen from a web server and performing parsing to remove dynamic content data included in the first webpage data. At least one DWT generating node configured to obtain a deep web format (DWT) file to include the first digital evidence file and reference information considered for obtaining the first digital evidence file. ;
Second webpage data is collected from the web server using access information, which is one of the reference information included in the DWT file, and included in the second webpage data based on a parsing rule file, which is one of the reference information. A hypertext markup language (HTML) file from which dynamic content is removed is obtained by parsing to remove the dynamic content data, and the first digital evidence included in the DWT file based on the HTML file. a plurality of collecting nodes configured to inspect whether a file is forged or falsified, and to verify whether the DWT file is forged or tampered with based on the inspection result; and
configured to store at least one of a DWT file verified that it has not been forged or tampered with by the plurality of collection nodes among the DWT files or a hash value of the verified DWT file in a block created by blockization using blockchain technology Includes a block generation node,
Here, the reference information included in the DWT file is a second digital evidence file including a static file existing in the at least one webpage, and the parsing configured to remove dynamic content included in the at least one webpage. Includes a rule file and metadata about the at least one web page,
The metadata may include a hash value of the first digital evidence file, a hash value of the static file included in the second digital evidence file, a hash value of the parsing rule file, creation time information of the first digital evidence file, and The digital evidence collection device comprising the access information that is the access address of the at least one web page.
제1항에 있어서,
상기 복수의 수집 노드들이 상기 제1 디지털 증거 파일의 위조 또는 변조 여부를 검사할 때, 상기 제1 디지털 증거 파일의 해시 값인 제1 해시 값을 산출하고, 상기 동적 콘텐츠가 제거된 HTML 파일의 해시 값인 제2 해시 값을 산출하여, 상기 제1 해시 값 및 상기 제2 해시 값과 상기 메타데이터에 포함되어 있는, 상기 제1 디지털 증거 파일의 해시 값인 제3 해시 값을 비교하여, 상기 제1 해시 값과 상기 제2 해시 값과 상기 제3 해시 값이 모두 일치하면, 상기 제1 디지털 증거 파일을 포함하고 있는 상기 DWT 파일이 디지털 증거로서 유효하다고 판단하는, 디지털 증거 수집 장치.
According to claim 1,
When the plurality of collection nodes examine whether the first digital evidence file is forged or tampered with, a first hash value that is a hash value of the first digital evidence file is calculated, and a hash value that is a hash value of the HTML file from which the dynamic content is removed. A second hash value is calculated, the first hash value and the second hash value are compared with a third hash value included in the metadata, which is the hash value of the first digital evidence file, and the first hash value is calculated. and the second hash value and the third hash value all match, determining that the DWT file including the first digital evidence file is valid as digital evidence.
제1항에 있어서,
상기 복수의 수집 노드들이 상기 제1 디지털 증거 파일의 위조 또는 변조 여부를 검사할 때, 상기 제1 디지털 증거 파일의 생성 시간을 획득하여, 상기 메타데이터에 포함되어 있는, 상기 제1 디지털 증거 파일의 생성 시간 정보와 비교하여 일치하면, 상기 제1 디지털 증거 파일을 포함하고 있는 상기 DWT 파일이 디지털 증거로서 유효하다고 판단하는, 디지털 증거 수집 장치.
According to claim 1,
When the plurality of collecting nodes examine whether the first digital evidence file is forged or tampered with, a creation time of the first digital evidence file is obtained, and the first digital evidence file, which is included in the metadata, is checked. and determining that the DWT file including the first digital evidence file is valid as a digital evidence when compared with the creation time information and matching the first digital evidence file.
제1항에 있어서,
상기 복수의 수집 노드들이 상기 DWT 파일의 위조 또는 변조 여부를 검증할 때, 상기 제2 웹페이지 데이터에 포함된 정적 파일의 해시 값을 산출하여, 상기 메타데이터에 포함되어 있는 해시 값들 중에서 상기 제2 디지털 증거 파일에 포함된 정적 파일의 해시 값과 비교하여 일치하면, 상기 제2 디지털 증거 파일을 포함하고 있는 상기 DWT 파일이 디지털 증거로서 유효하다고 판단하는, 디지털 증거 수집 장치.
According to claim 1,
When the plurality of collection nodes verify whether the DWT file is forged or tampered with, a hash value of a static file included in the second web page data is calculated, and among hash values included in the metadata, the second and determining that the DWT file including the second digital evidence file is valid as digital evidence when the hash value of a static file included in the digital evidence file is matched.
제1항에 있어서,
상기 복수의 수집 노드들이 상기 DWT 파일의 위조 또는 변조 여부를 검증할 때, 상기 파싱룰 파일의 해시 값을 산출하여, 상기 메타데이터에 포함되어 있는 해시 값들 중에서 상기 파싱룰 파일의 해시 값과 비교하여 일치하면, 상기 제1 디지털 증거 파일을 포함하고 있는 상기 DWT 파일이 디지털 증거로서 유효하다고 판단하는, 디지털 증거 수집 장치.
According to claim 1,
When the plurality of collection nodes verify whether the DWT file is forged or tampered with, a hash value of the parsing rule file is calculated and compared with the hash value of the parsing rule file among hash values included in the metadata. If matched, determine that the DWT file including the first digital evidence file is valid as digital evidence.
제1항에 있어서,
상기 블록 생성 노드는, 블록체인의 네트워크의 부하를 고려하여 상기 블록화에 의해 만들어진 상기 블록에 검증된 DWT 파일 대신, 상기 검증된 DWT 파일을 입수할 수 있는 파일 공유 주소의 링크 정보를 저장하는, 디지털 증거 수집 장치.
According to claim 1,
The block generating node stores the link information of the file sharing address where the verified DWT file can be obtained instead of the verified DWT file in the block created by the block chain considering the load of the block chain network. evidence collection device.
제1항에 있어서,
상기 블록 생성 노드는, 상기 DWT 파일의 검증에 참여한 모든 수집 노드의 일정 비율 이상의 수집 노드가, 디지털 증거로서 유효하다고 판정한 DWT 파일을, 상기 블록화에 의해 만들어진 상기 블록에 저장하는, 디지털 증거 수집 장치.
According to claim 1,
The block generating node stores a DWT file, which is determined to be valid as digital evidence by a collection node of at least a certain percentage of all collection nodes participating in the verification of the DWT file, in the block created by the blockization, a digital evidence collection device. .
제1항에 있어서,
상기 적어도 하나의 DWT 생성 노드가 상기 파싱룰 파일을 생성할 때, 상기 제1 디지털 증거 파일에 포함되어야 할 요소와 포함되지 않아야 할 요소에 대한 규칙을 사용자 입력없이, 자동적으로 생성하는, 디지털 증거 수집 장치.
According to claim 1,
When the at least one DWT generation node creates the parsing rule file, rules for elements to be included and not to be included in the first digital evidence file are automatically generated without user input, digital evidence collection Device.
제1항에 있어서,
상기 복수의 수집 노드들은, 불법 웹페이지의 특성상 인터넷 주소의 변동성이 큰 점을 고려하여, 웹 브라우저의 세션 타임 아웃 시간을 기본값보다 상대적으로 짧게 설정한, 디지털 증거 수집 장치.
According to claim 1,
The plurality of collection nodes set the session timeout time of the web browser relatively shorter than the default value in consideration of the high variability of Internet addresses due to the nature of illegal webpages.
제1항에 있어서,
상기 적어도 하나의 DWT 생성 노드, 상기 복수의 수집 노드들 및/또는 상기 블록 생성 노드는 물리적으로 동일 기기에서 동작할 수 있는, 디지털 증거 수집 장치.
According to claim 1,
The at least one DWT generation node, the plurality of collection nodes, and/or the block generation node may physically operate in the same device.
디지털 증거 수집 방법에 있어서,
웹서버로부터 수집한 적어도 하나의 웹페이지를 화면에 표시하기 위한 제1 웹페이지 데이터가 포함하고 있는 동적 콘텐츠 데이터를 제거하는 파싱(parsing)을 수행하여, 제1 디지털 증거 파일을 획득하는 동작;
상기 제1 디지털 증거 파일 및 상기 제1 디지털 증거 파일을 획득하기 위해 고려된 참조 정보를 포함하도록 심층 웹 포맷 (DWT: Deep Web Tar) 파일을 생성하는 동작;
상기 생성된 DWT 파일에 포함된 상기 참조 정보 중 하나인 접속 정보를 사용하여 상기 웹서버로부터 제2 웹페이지 데이터를 수집하는 동작;
상기 수집한 제2 웹페이지 데이터에 포함된 동적 콘텐츠 데이터를 제거하는 파싱을 상기 참조 정보 중 하나인 파싱룰 파일을 기반으로 수행하여, 동적 콘텐츠가 제거된 하이퍼텍스트 마크업 언어 (HTML: HyperText Markup Language) 파일을 획득하는 동작;
상기 HTML 파일을 기반으로 상기 DWT 파일에 포함된 상기 제1 디지털 증거 파일의 위조 또는 변조 여부를 검사하는 동작;
상기 검사 결과를 기반으로, 상기 DWT 파일의 위조 또는 변조 여부를 검증하는 동작;
상기 DWT 파일 중 위조 또는 변조되지 않았음이 검증된 DWT 파일 또는 상기 검증된 DWT 파일의 해시 값 중 적어도 하나를 블록체인 기술을 사용한 블록화에 의해 만들어진 블록에 저장하는 동작을 포함하며,
여기서, 상기 DWT 파일에 포함된 상기 참조 정보는, 상기 적어도 하나의 웹페이지에 존재하는 정적 파일을 포함하는 제2 디지털 증거 파일, 상기 적어도 하나의 웹페이지에 포함된 동적 콘텐츠를 제거하도록 구성된 상기 파싱룰 파일 및 상기 적어도 하나의 웹페이지에 대한 메타데이터를 포함하고,
상기 메타데이터는, 상기 제1 디지털 증거 파일의 해시 값, 상기 제2 디지털 증거 파일에 포함된 상기 정적 파일의 해시 값, 상기 파싱룰 파일의 해시 값, 상기 제1 디지털 증거 파일의 생성 시간 정보 및 상기 적어도 하나의 웹페이지의 접속 주소인 상기 접속 정보를 포함하는, 디지털 증거 수집 방법.
In the digital evidence collection method,
obtaining a first digital evidence file by performing parsing to remove dynamic content data included in first webpage data for displaying at least one webpage collected from a web server on a screen;
generating a Deep Web Tar (DWT) file to include the first digital evidence file and reference information considered for obtaining the first digital evidence file;
collecting second web page data from the web server using access information that is one of the reference information included in the generated DWT file;
Parsing to remove the dynamic content data included in the collected second web page data is performed based on a parsing rule file, which is one of the reference information, to remove the dynamic content. HyperText Markup Language (HTML) ) operation of acquiring a file;
checking whether the first digital evidence file included in the DWT file is forged or altered based on the HTML file;
verifying whether the DWT file is forged or tampered with based on the inspection result;
Storing at least one of a DWT file verified that it has not been forged or tampered with among the DWT files or a hash value of the verified DWT file in a block created by blockization using blockchain technology,
Here, the reference information included in the DWT file is a second digital evidence file including a static file existing in the at least one webpage, and the parsing configured to remove dynamic content included in the at least one webpage. Includes a rule file and metadata about the at least one web page,
The metadata may include a hash value of the first digital evidence file, a hash value of the static file included in the second digital evidence file, a hash value of the parsing rule file, creation time information of the first digital evidence file, and The digital evidence collection method comprising the access information that is the access address of the at least one web page.
제11항에 있어서,
상기 제1 디지털 증거 파일의 위조 또는 변조 여부를 검사하는 동작은,
상기 제1 디지털 증거 파일의 해시 값인 제1 해시 값을 산출하고, 상기 동적 콘텐츠가 제거된 HTML 파일의 해시 값인 제2 해시 값을 산출하여, 상기 제1 해시 값 및 상기 제2 해시 값과 상기 메타데이터에 포함되어 있는, 상기 제1 디지털 증거 파일의 해시 값인 제3 해시 값을 비교하여, 상기 제1 해시 값과 상기 제2 해시 값과 상기 제3 해시 값이 모두 일치하면, 상기 제1 디지털 증거 파일을 포함하고 있는 상기 DWT 파일이 디지털 증거로서 유효하다고 판단하는 동작을 포함하는, 디지털 증거 수집 방법.
According to claim 11,
The operation of checking whether the first digital evidence file is forged or tampered with,
A first hash value, which is the hash value of the first digital evidence file, is calculated, and a second hash value, which is the hash value of the HTML file from which the dynamic content is removed, is calculated, and the first hash value and the second hash value are combined with the meta A third hash value included in the data, which is a hash value of the first digital evidence file, is compared, and if the first hash value, the second hash value, and the third hash value all match, the first digital evidence file. and determining that the DWT file including the file is valid as digital evidence.
제11항에 있어서,
상기 제1 디지털 증거 파일의 위조 또는 변조 여부를 검사하는 동작은,
상기 제1 디지털 증거 파일의 생성 시간을 획득하여, 상기 메타데이터에 포함되어 있는, 상기 제1 디지털 증거 파일의 생성 시간 정보와 비교하여 일치하면, 상기 제1 디지털 증거 파일을 포함하고 있는 상기 DWT 파일이 디지털 증거로서 유효하다고 판단하는 동작을 더 포함하는, 디지털 증거 수집 방법.
According to claim 11,
The operation of checking whether the first digital evidence file is forged or tampered with,
The creation time of the first digital evidence file is acquired, compared with the creation time information of the first digital evidence file included in the metadata, and if the same, the DWT file including the first digital evidence file. A method for collecting digital evidence, further comprising an operation of determining that the digital evidence is valid.
제11항에 있어서,
상기 DWT 파일의 위조 또는 변조 여부를 검증하는 동작은,
상기 제2 웹페이지 데이터에 포함된 정적 파일의 해시 값을 산출하여, 상기 메타데이터에 포함되어 있는 해시 값들 중에서 상기 제2 디지털 증거 파일에 포함된 정적 파일의 해시 값과 비교하여 일치하면, 상기 제2 디지털 증거 파일을 포함하고 있는 상기 DWT 파일이 디지털 증거로서 유효하다고 판단하는 동작을 포함하는, 디지털 증거 수집 방법.
According to claim 11,
The operation of verifying whether the DWT file is forged or tampered with,
The hash value of the static file included in the second web page data is calculated, compared with the hash value of the static file included in the second digital evidence file among the hash values included in the metadata, and if the hash value of the static file included in the second digital evidence file matches, the 2. A digital evidence collection method comprising determining that the DWT file including the digital evidence file is valid as digital evidence.
제11항에 있어서,
상기 DWT 파일의 위조 또는 변조 여부를 검증하는 동작은,
상기 파싱룰 파일의 해시 값을 산출하여, 상기 메타데이터에 포함되어 있는 해시 값들 중에서 상기 파싱룰 파일의 해시 값과 비교하여 일치하면, 상기 제1 디지털 증거 파일을 포함하고 있는 상기 DWT 파일이 디지털 증거로서 유효하다고 판단하는 동작을 더 포함하는, 디지털 증거 수집 방법.
According to claim 11,
The operation of verifying whether the DWT file is forged or tampered with,
The hash value of the parsing rule file is calculated, compared with the hash value of the parsing rule file among hash values included in the metadata, and if the same, the DWT file including the first digital evidence file is a digital evidence. A method for collecting digital evidence, further comprising an operation of determining that it is valid as
제11항에 있어서,
블록체인의 네트워크의 부하를 고려하여 상기 블록화에 의해 만들어진 상기 블록에 검증된 DWT 파일 대신, 상기 검증된 DWT 파일을 입수할 수 있는 파일 공유 주소의 링크 정보를 저장하는 동작을 더 포함하는, 디지털 증거 수집 방법.
According to claim 11,
Digital evidence further comprising an operation of storing link information of a file sharing address where the verified DWT file can be obtained instead of the verified DWT file in the block created by the block chain considering the load of the blockchain network. collection method.
제11항에 있어서,
상기 저장하는 동작은,
상기 DWT 파일의 검증에 참여한 모든 수집 노드의 일정 비율 이상의 수집 노드가, 디지털 증거로서 유효하다고 판정한 DWT 파일을, 상기 블록화에 의해 만들어진 상기 블록에 저장하는 동작을 포함하는, 디지털 증거 수집 방법.
According to claim 11,
The saving operation is
and storing a DWT file, which is determined to be valid as a digital evidence, by collection nodes of at least a certain percentage of all collection nodes participating in the verification of the DWT file, in the block created by the blockization.
제11항에 있어서,
상기 파싱룰 파일을 생성할 때, 상기 제1 디지털 증거 파일에 포함되어야 할 요소와 포함되지 않아야 할 요소에 대한 규칙을 사용자 입력없이, 자동적으로 생성하는 동작을 더 포함하는, 디지털 증거 수집 방법.
According to claim 11,
The digital evidence collection method of claim 1, further comprising automatically generating rules for elements to be included and not to be included in the first digital evidence file when generating the parsing rule file, without user input.
제11항에 있어서,
불법 웹페이지의 특성상 인터넷 주소의 변동성이 큰 점을 고려하여, 브라우저의 세션 타임 아웃 시간을 기본값보다 상대적으로 짧게 설정하는, 디지털 증거 수집 방법.
According to claim 11,
A digital evidence collection method that sets the browser's session timeout relatively shorter than the default value, considering the high variability of Internet addresses due to the nature of illegal webpages.
제11항에 있어서,
상기 DWT 파일을 생성하도록 구성된 적어도 하나의 DWT 생성 노드, 상기 DWT 파일의 위조 또는 변조 여부를 검증하도록 구성된 복수의 수집 노드들 및/또는 상기 블록화에 의해 만들어진 상기 블록을 저장하도록 구성된 블록 생성 노드는 물리적으로 동일 기기에서 동작할 수 있는, 디지털 증거 수집 방법.
According to claim 11,
At least one DWT generation node configured to generate the DWT file, a plurality of collection nodes configured to verify whether the DWT file is forged or tampered with, and/or a block generation node configured to store the block created by the blockization are physically A digital evidence collection method that can operate on the same device as
KR1020210127781A 2021-09-28 2021-09-28 Device and method for collecting digital evidence KR102539735B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210127781A KR102539735B1 (en) 2021-09-28 2021-09-28 Device and method for collecting digital evidence

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210127781A KR102539735B1 (en) 2021-09-28 2021-09-28 Device and method for collecting digital evidence

Publications (2)

Publication Number Publication Date
KR20230045208A true KR20230045208A (en) 2023-04-04
KR102539735B1 KR102539735B1 (en) 2023-06-02

Family

ID=85928564

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210127781A KR102539735B1 (en) 2021-09-28 2021-09-28 Device and method for collecting digital evidence

Country Status (1)

Country Link
KR (1) KR102539735B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102238784B1 (en) * 2020-12-18 2021-04-16 주식회사 에이아이디비 Method and system for storing and verifying web pages using a blockchain network
KR20210098401A (en) * 2020-07-22 2021-08-10 바이두 온라인 네트웍 테크놀러지 (베이징) 캄파니 리미티드 Method and apparatus of processing deposit, device and storage medium

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210098401A (en) * 2020-07-22 2021-08-10 바이두 온라인 네트웍 테크놀러지 (베이징) 캄파니 리미티드 Method and apparatus of processing deposit, device and storage medium
KR102238784B1 (en) * 2020-12-18 2021-04-16 주식회사 에이아이디비 Method and system for storing and verifying web pages using a blockchain network

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
노아영 외 2인, '토르(Tor) 기반 딥웹(Deep Web) 주소 가용성 검사 방법', 2021년 한국컴퓨터종합학술대회 논문집, 2021.06.23. *
문현수 외 2인, '웹 브라우저 렌더링 및 스크립팅 작업 제거를 통한 토르(Tor) 기반 다크 웹(Dark Web) 수집 성능 개선', 정보과학회논문지 제47권 제10호, 2020.10. *

Also Published As

Publication number Publication date
KR102539735B1 (en) 2023-06-02

Similar Documents

Publication Publication Date Title
WO2021143497A1 (en) Infringement evidence storage method, apparatus, and device based on evidence storage blockchain
US10691763B2 (en) Trustable web searching verification in a blockchain
US10402545B2 (en) Systems and methods for managing data assets associated with peer-to-peer networks
Yuan et al. Improved trust-aware recommender system using small-worldness of trust networks
CN109643319A (en) The system and method for matching content for identification
US20090083442A1 (en) Tracking Identifier Synchronization
CN108667770B (en) Website vulnerability testing method, server and system
CN106462611A (en) Web access performance enhancement
US9348927B2 (en) Systems and methods for detecting, identifying and categorizing intermediate nodes
CN103581133B (en) Web server sends the method and system of response to access request
CN108683668A (en) Resource checksum method, apparatus, storage medium and equipment in content distributing network
JP2006285962A (en) System and method using targeted variant input for testing data format
Dahlberg et al. Verifiable light-weight monitoring for certificate transparency logs
KR20200087467A (en) System and method for detecting malicious links using block chain and computer program for the same
KR102539735B1 (en) Device and method for collecting digital evidence
US20150331917A1 (en) Recording medium having stored therein transmission order determination program, transmission order determination device, and transmission order determination method
Shirazi Free and Open Source Software versus Internet content filtering and censorship: A case study
CN116127945A (en) Network link processing method and device, electronic equipment and storage medium
Cap et al. Ensuring resource trust and integrity in web browsers using blockchain technology
Mandavilli et al. Detection of natural disaster affected areas using R
Tang et al. An IOTA-Based Service Discovery Framework for Fog Computing
Morales et al. Analyzing temporal graphs of malware distribution networks
Brunelle Scripts in a frame: A framework for archiving deferred representations
CN110427379A (en) The cochain method and device thereof of user's search associated data
Shen et al. Freeweb: P2p-assisted collaborative censorship-resistant web browsing

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant