KR20180042145A - A method for determining forgeries of media files - Google Patents

A method for determining forgeries of media files Download PDF

Info

Publication number
KR20180042145A
KR20180042145A KR1020170181736A KR20170181736A KR20180042145A KR 20180042145 A KR20180042145 A KR 20180042145A KR 1020170181736 A KR1020170181736 A KR 1020170181736A KR 20170181736 A KR20170181736 A KR 20170181736A KR 20180042145 A KR20180042145 A KR 20180042145A
Authority
KR
South Korea
Prior art keywords
media file
hash
hash value
data
tree
Prior art date
Application number
KR1020170181736A
Other languages
Korean (ko)
Other versions
KR101855442B1 (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 KR1020170181736A priority Critical patent/KR101855442B1/en
Publication of KR20180042145A publication Critical patent/KR20180042145A/en
Application granted granted Critical
Publication of KR101855442B1 publication Critical patent/KR101855442B1/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
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC

Abstract

The present invention relates to a method for verifying forgery of a media file. According to an embodiment of the present invention, the method for verifying forgery of a media file comprises: a step of constructing section data (1); a step of generating a hash value (2); a step of lifting the hash value and adding the same to a hash tree (3); and a step of generating a final hash tree (4). The method for verifying forgery of a media file of the present invention can effectively confirm the forgery of the media file.

Description

미디어 파일 위변조 검증 방법{A METHOD FOR DETERMINING FORGERIES OF MEDIA FILES} FIELD OF THE INVENTION [0001] The present invention relates to a method for verifying a media file,

개시된 내용은 미디어 파일 위변조 검증 방법에 관한 것으로서, 보다 구체적으로는 해시 트리를 생성하고 루트 해시값을 블록체인에 게재하여 미디어 파일의 위변조 여부를 검증하는 블록체인을 이용한 미디어 파일 위변조 검증 방법에 관한 것이다.The present invention relates to a media file forgery verification method, and more particularly, to a media file forgery verification method using a block chain for generating a hash tree and verifying whether a media file is forged or falsified by placing a root hash value in a block chain .

종래에는 서로 다툼이 있을 수 있는 사항 또는 당사자 간 중요한 사항에 관해 약정할 때, 자필로 문서를 작성하는 경우가 많았다. 설혹 자필로 작성하지 않은 출력 문서라고 하더라도 문서 작성자의 서명, 날인 등으로 해당 문서 내용의 진정성을 담보하곤 하였다.In many cases, documents were written in a handwritten manner when a contract was made with respect to matters that may have a conflict with each other or important matters between the parties. Even if the output document was not handwritten, it would guarantee the authenticity of the document by the signature of the author of the document and the seal.

최근 정보통신기술이 비약적으로 발전하면서 컴퓨터, CCTV 및 블랙박스 등 전자기기 내부의 저장장치, 외장형 하드디스크 등 전자기적 저장매체를 이용한 정보 저장이 일상화되었다. 또한, 파기나 훼손이 용이한 종이 문서와 달리 전자기적 저장매체를 이용한 디지털 파일들의 경우 삭제한 자료 등도 복원이 가능한 경우가 많아, 각종 디지털 파일들이 법정 등에서 증거로서 결정적인 역할을 하는 경우가 많아지고 있다.Recently, as information and communication technology has developed remarkably, information storage using an electromagnetic storage medium such as a storage device in an electronic device such as a computer, a CCTV and a black box, and an external hard disk has become commonplace. In addition, unlike paper documents that are easily destroyed or damaged, digital files using an electromagnetic storage medium can often be restored, and various digital files are often played a decisive role in evidence in court and the like .

이러한 시대적 흐름에 발맞추어, 2016년 05월 19일 이메일, 컴퓨터 문서 파일 등 디지털 파일의 증거 능력을 인정하는 내용의 '형사소송법'이 개정되어 시행 중에 있다. 이에 수사기관에서는 통화기록, CCTV 영상, 블랙박스 영상 및 이메일 등 디지털 파일 형태의 정보를 수집하고 분석하는 디지털 포렌식 수사기법을 널리 활용하고 있다.In keeping with this trend, the 'Criminal Procedure Act', which recognizes the ability of digital files such as e-mails and computer document files, has been revised and implemented on May 19, 2016. Therefore, the investigation agency widely uses digital forensic investigation technique to collect and analyze digital file information such as call log, CCTV image, black box image and e-mail.

그러나 지금까지는 디지털 파일 형태의 정보 중 CCTV, 블랙박스 등에서 촬영한 영상 파일 등 미디어 파일의 경우, 수사기관의 요청에 의해 채증을 할 때에서야 미디어 파일 각각에 대해 각각의 해시값을 생성하여 해당 해시값을 추후에 상호 대비하는 방식으로 각각의 미디어 파일에 대한 위변조 검증을 하였다. 여기서 해시값은 미디어 파일 데이터에 해시 함수를 적용하여 출력한 값이다. 해시 함수는 입력되는 데이터에 따라 다른 해시값이 나오는 것이 특징이다. 따라서 입력 데이터의 일부만 변경이 되어도 전혀 다른 해시값이 나온다. 해시 함수는 출력된 해시값을 가지고 역으로 입력 데이터를 유추하기 어렵다는 특징이 있다. 이러한 방식으로 해시 함수를 사용하면 채증 이후 시점의 미디어 파일의 위변조 여부를 알 수 있다. 다만, 수사기관 채증 전 시점에 누군가의 미디어 파일에 대한 위변조 행위가 있었는지 여부를 확인하기 곤란하다는 문제점이 있다.However, up to now, in the case of media files such as image files photographed in CCTV, black box, etc. among the digital file information, each hash value is generated for each media file only when requested by the investigation agency, And then forgery verification of each media file was performed in a manner to be mutually prepared. Here, the hash value is a value obtained by applying a hash function to the media file data. The hash function is characterized by a different hash value depending on the input data. Therefore, even if only a part of the input data is changed, a completely different hash value is obtained. The hash function is characterized in that it is difficult to infer the input data with the output hash value. By using the hash function in this way, it is possible to know whether or not the media file is forged or modified after the saving time. However, there is a problem that it is difficult to confirm whether or not there has been a forgery or falsification of a media file of someone at the time of the investigation of the investigation agency.

또한, 미디어 파일 원본 전부가 아닌 미디어 파일 원본의 일부 시간에 해당하는 일부분만이 증거 자료로 필요한 경우에 미디어 파일의 일부만을 미디어 파일 원본으로부터 분리해낼 경우, 분리된 미디어 파일의 해시값은 미디어 파일 원본의 해시값과 서로 달라지게 된다. 이는 입력 데이터의 값이 변경됨에 따라 다른 해시값이 출력되기 때문이다. 따라서 미디어 파일 원본의 일부만을 분리해낼 경우 해당 부분 미디어 파일의 위변조 검증이 어려워지는 문제점이 있다.In addition, if only a portion of the media file source, not all of the media file source, is needed as proof, only the portion of the media file is detached from the media file source, the hash value of the detached media file is And the hash value of the hash value. This is because another hash value is output as the value of the input data is changed. Therefore, if only a part of the original of the media file is separated, there is a problem that it is difficult to verify forgery of the corresponding partial media file.

이외에도, 미디어 파일 각각에 대해 별도로 해시값을 텍스트(Text) 파일 형태 등으로 저장/보관하고 있기 때문에 해당 해시값 자체의 분실 위험이 있다는 한계점이 있었다. 만약 비트코인에 적용되는 기술인 P2P 네트워트를 이용한 블록체인을 활용하여 미디어 파일 각각에 대한 해시값을 저장할 경우, 중앙 집중화 데이터 저장 방식에 비해 해시값 등 데이터 분실의 위험이 낮아질 수 있다. 그리고 중앙 집중화 데이터 저장 방식에서는 관리자의 권한으로 저장된 데이터의 위변조가 가능할 수 있으나, 블록체인을 활용할 경우 데이터 위변조의 위험이 상대적으로 낮아질 수 있을 것이다. In addition, since the hash value is separately stored in the form of a text file for each media file, there is a risk that the hash value itself is lost. If a hash value for each media file is stored using a block chain using a P2P network, which is a technology applied to bit coin, the risk of data loss such as hash value may be lower than the centralized data storage method. In the centralized data storage method, the stored data can be forged or modified by the administrator's authority. However, if the block chain is used, the risk of data forgery can be relatively reduced.

대한민국 등록특허공보 제10-1746074호 "디지털 동영상 위변조 분석시스템 및 그 방법"Korean Patent Registration No. 10-1746074 "Digital Video Forgery Analysis System and Method Thereof"

미디어 파일 생성 단계에서 미디어 파일의 해시값을 생성하여 미디어 파일에 호환되는 객체로서 미디어 파일 내에 보관함으로써, 미디어 파일 생성 시부터 미디어 파일의 위변조가 되었는지 여부를 검증할 수 있는, 미디어 파일 위변조 검증 방법을 제공하고자 한다.A hash value of the media file is generated in the media file creation step and is stored in the media file as a compatible object in the media file to verify whether or not the media file has been tampered with from the generation of the media file, .

또한, 미디어 파일 생성 이후 그 일부인 특정 시간 부분을 부분 미디어 파일로 잘라 분리하여도, 상기 부분 미디어 파일이 상기 미디어 파일의 일부로서 위변조가 되었는지 여부를 검증할 수 있는, 미디어 파일 위변조 검증 방법을 제공하고자 한다.Also, there is provided a method for verifying a forgery of a media file, which can verify whether the partial media file is forged or altered as a part of the media file even if a specific time portion, which is a part of the media file, do.

실시예에 따른 미디어 파일 위변조 검증 방법은, 해시 트리를 생성하여 미디어 파일의 위변조 여부를 검증하는 미디어 파일 위변조 검증 방법에 있어서:A method for verifying a media file forgery verification according to an embodiment includes: generating a hash tree to verify whether a media file is falsified or not, the method comprising:

(1) 상기 미디어 파일에 포함된 각각의 트랙에 대해 상기 트랙의 각각의 표현 시간이 동기화된 구간 데이터를 구성하는 단계;(1) constructing interval data in which each presentation time of each of the tracks is synchronized with respect to each of the tracks included in the media file;

(2) 상기 단계 (1)에서 구성한 상기 구간 데이터 중 하나의 구간 데이터에 대해 해시값을 생성하는 단계;(2) generating a hash value for one of the interval data constructed in the step (1);

(3) 상기 단계 (2)에서 생성한 상기 해시값을 리프로 하여 상기 해시 트리에 추가하는 단계; 및(3) adding the hash value generated in the step (2) to the hash tree as a leaf; And

(4) 상기 단계 (1)에서 구성한 각각의 상기 구간 데이터에 대해 상기 단계 (2) 및 (3)을 반복하여 최종 해시 트리를 생성하는 단계; 를 포함할 수 있다.(4) generating a final hash tree by repeating the steps (2) and (3) with respect to each of the section data configured in the step (1); . ≪ / RTI >

바람직하게는, 상기 미디어 파일 위변조 검증 방법은,Preferably, the media file forgery verification method further comprises:

상기 최종 해시 트리의 루트 해시값을 블록체인에 게재하는 단계; 를 더 포함하는 것을 특징으로 할 수 있다.Placing a root hash value of the last hash tree in a block chain; And further comprising:

바람직하게는, 상기 단계 (4)는, Preferably, the step (4)

상기 해시 트리에서 서로 인접한 리프 해시값을 이용하여 생성한 노드 해시값 및 최종 하나의 해시값인 루트 해시값을 상기 해시 트리에 추가하여 상기 최종 해시 트리를 생성하는 것을 특징으로 할 수 있다.And the final hash tree is generated by adding the node hash value generated using the leaf hash values adjacent to each other in the hash tree and the root hash value, which is the last hash value, to the hash tree.

바람직하게는, 상기 단계 (4)는,Preferably, the step (4)

메타 데이터에 대해 해시값을 생성하고, 상기 해시값을 리프로 하여 상기 해시 트리에 추가함으로써 상기 최종 해시 트리를 생성하는 것을 특징으로 할 수 있다.Generating the hash value for the metadata, adding the hash value to the hash tree, and creating the final hash tree.

더욱 바람직하게는, 상기 단계 (5)의 상기 루트 해시값은,More preferably, the root hash value of step (5)

상기 미디어 파일이 복수개인 경우, 상기 미디어 파일 각각에 대한 상기 루트 해시값을 리프로 하여 상기 해시 트리를 생성하여 도출되는 루트 해시값인 것을 특징으로 할 수 있다.And a root hash value derived by generating the hash tree by reefing the root hash value for each of the media files when the media files are plural.

바람직하게는, 상기 미디어 파일 위변조 검증 방법은,Preferably, the media file forgery verification method further comprises:

블록체인에 루트 해시값이 게재되어 있음을 확인하는 검증 단계; 를 더 포함하는 것을 특징으로 할 수 있다.A verification step of confirming that a root hash value is placed in a block chain; And further comprising:

또한, 실시예에 따른 미디어 파일 위변조 검증 방법은,According to another aspect of the present invention, there is provided a media file forgery verification method,

해시 트리를 생성하여 미디어 파일의 위변조 여부를 검증하는 미디어 파일 위변조 검증 방법에 있어서:A media file forgery verification method for generating a hash tree to verify whether a media file is falsified or not, the method comprising:

(1) 상기 미디어 파일에 포함된 각각의 트랙에 대해 상기 트랙의 각각의 표현 시간이 동기화된 구간 데이터를 구성하는 단계;(1) constructing interval data in which each presentation time of each of the tracks is synchronized with respect to each of the tracks included in the media file;

(2) 상기 단계 (1)에서 구성한 각각의 상기 구간 데이터에 대해 해시값을 생성하는 단계;(2) generating a hash value for each of the interval data configured in the step (1);

(3) 상기 단계 (2)에서 생성한 상기 해시값을 리프로 하여 상기 해시 트리에 추가하는 단계;(3) adding the hash value generated in the step (2) to the hash tree as a leaf;

(4) 상기 단계 (1)에서 구성한 각각의 상기 구간 데이터에 대해 상기 단계 (2) 및 (3)을 반복하여 최종 해시 트리를 생성하는 단계;(4) generating a final hash tree by repeating the steps (2) and (3) with respect to each of the section data configured in the step (1);

(5) 상기 미디어 파일의 전체 시간 구간 중 일부 시간 구간을 포함하는 연속하는 시간의 상기 구간 데이터의 집합인 구간 데이터 집합을 선택하는 단계; (5) selecting an interval data set that is a set of the interval data of consecutive times including a certain time interval of the entire time interval of the media file;

(6) 상기 최종 해시 트리에서 상기 구간 데이터 집합 중에서 가장 선행 시간의 상기 구간 데이터와 가장 후행 시간의 상기 구간 데이터에 대해 부가 정보 노드의 집합인 해시 체인을 선택하는 단계;(6) selecting a hash chain that is a set of additional information nodes for the interval data of the earliest preceding time and the interval data of the latest time in the last hash tree;

(7) 상기 구간 데이터 집합을 상기 부분 미디어 파일로 생성하는 단계; 및(7) generating the partial data file as the partial data file; And

(8) 상기 부분 미디어 파일에 상기 해시 체인을 포함한 데이터를 추가하는 단계; 를 포함할 수 있다.(8) adding data including the hash chain to the partial media file; . ≪ / RTI >

바람직하게는, 상기 미디어 파일 위변조 검증 방법은,Preferably, the media file forgery verification method further comprises:

상기 해시 체인과 상기 부분 미디어 파일을 이용하여 상기 미디어 파일과 동일한 루트 해시값을 생성하는 단계; 를 더 포함하는 것을 특징으로 할 수 있다.Generating a root hash value identical to the media file using the hash chain and the partial media file; And further comprising:

개시된 내용에 따른 미디어 파일 위변조 검증 방법은, 미디어 파일 생성 단계에서 해시 트리를 생성하고 루트 해시값을 블록체인에 게재함으로써, 블록체인에 게재된 루트 해시값은 현실적으로 위변조의 가능성이 거의 없는 점에서, 미디어 파일 생성 시부터 미디어 파일의 위변조 여부를 효과적으로 확실하게 검증할 수 있다.In the media file forgery verification method according to the disclosure, since the hash tree is generated in the media file creation step and the root hash value is placed in the block chain, the root hash value displayed in the block chain is practically unlikely to be falsified, From the generation of the media file, it is possible to effectively and surely verify whether the media file is forged or not.

루트 해시값 생성에 필요한 부가 정보 노드의 집합인 해시 체인을 포함한 데이터는 미디어 파일에 호환되는 객체로서 미디어 파일 내에 보관하므로, 해시 체인을 포함한 데이터를 별도의 파일로 따로 보관하거나 또는 별도의 보관 수단을 이용할 필요가 없으며, 해시 체인을 포함한 데이터의 손실 위험이 낮아진다.Since the data including the hash chain, which is a set of additional information nodes necessary for generating the root hash value, is stored in the media file as a compatible object in the media file, the data including the hash chain may be separately stored in a separate file, The risk of loss of data including hash chains is reduced.

또한, 개시된 내용에 따른 미디어 파일 위변조 검증 방법은, 미디어 파일의 특정 부분을 부분 미디어 파일로 잘라 분리하여도 기존의 원본 미디어 파일에서 생성한 해시 트리의 루트 해시값의 재현이 용이하게 가능하여, 부분 미디어 파일이 위변조되었는지 여부를 안정적, 효과적으로 검증할 수 있다.The method of verifying the forgery of the media file according to the disclosed contents can easily reproduce the root hash value of the hash tree generated in the existing original media file even if the specific part of the media file is cut and separated into the partial media file, It is possible to reliably and effectively verify whether or not the media file is forged or altered.

도 1은 일 실시예에 따른 미디어 파일 위변조 검증 방법을 도시한 도면.
도 2는 일 실시예에 따른 미디어 파일에서 구간 데이터를 구분하는 부분을 도시한 도면.
도 3은 일 실시예에 따른 해시 트리를 도시한 도면.
도 4는 일 실시예에 따른 경로 노드와 부가 정보 노드를 해시 트리에서 구분하여 도시한 도면.
도 5는 일 실시예에 따른 해시 트리 중 경로 노드와 부가 정보 노드만을 분리하여 도시한 도면.
도 6은 일 실시예에 따른 해시 트리를 생성하여 미디어 파일의 위변조 여부를 검증하는 미디어 파일 위변조 검증 방법을 도시한 도면.
도 7은 일 실시예에 따른 구간 데이터의 리프 해시값을 기반으로 해시 트리를 생성하는 과정을 도시한 도면.
도 8은 일 실시예에 따른 구간 데이터의 리프 해시값에 메타 데이터의 리프 해시값이 더 포함되어 해시 트리를 생성하는 과정을 도시한 도면.
도 9는 일 실시예에 따른 구간 데이터의 리프 해시값에 구간 데이터마다의 메타 데이터의 리프 해시값이 더 포함되어 해시 트리를 생성하는 과정을 도시한 도면.
도 10은 일 실시예에 따른 부분 미디어 파일을 생성함에 있어서 미디어 파일 위변조 검증 방법을 도시한 도면.
도 11은 일 실시예에 따른 부분 미디어 파일을 생성하는 과정에서 미디어 파일의 해시 트리에서 부분 미디어 파일에 해당하는 해시값과 해시 체인을 도시한 도면.
도 12는 일 실시예에 따른 해시 체인을 포함한 데이터를 도시한 도면.
1 illustrates a method for verifying a forgery of a media file according to an exemplary embodiment;
FIG. 2 is a diagram illustrating a section for distinguishing interval data in a media file according to an exemplary embodiment; FIG.
3 illustrates a hash tree according to one embodiment;
4 is a diagram illustrating a path node and an additional information node according to an embodiment in a hash tree.
FIG. 5 is a diagram illustrating only a path node and an additional information node among the hash trees according to an exemplary embodiment; FIG.
FIG. 6 illustrates a method of verifying a forgery of a media file by generating a hash tree according to an exemplary embodiment of the present invention. FIG.
FIG. 7 illustrates a process of generating a hash tree based on a leaf hash value of interval data according to an exemplary embodiment; FIG.
FIG. 8 illustrates a process of generating a hash tree by further including a leaf hash value of metadata in a leaf hash value of interval data according to an exemplary embodiment. FIG.
9 is a diagram illustrating a process of generating a hash tree by further including a leaf hash value of meta data for each section data in a leaf hash value of interval data according to an embodiment.
10 is a diagram illustrating a method of verifying a forgery of a media file in generating a partial media file according to an exemplary embodiment;
11 is a view showing a hash value and a hash chain corresponding to a partial media file in a hash tree of a media file in the process of generating a partial media file according to an exemplary embodiment;
12 illustrates data including a hash chain according to one embodiment;

개시된 실시예들을 설명함에 있어서, 공지된 기능 또는 구성이 이 기술분야의 기술자에게 자명한 사항에 해당하고, 개시된 실시예들의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다.In the following description of the disclosed embodiments, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the disclosed embodiments unnecessarily obscure.

그러나, 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있다. 단지 개시된 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.However, the present invention is not limited to the embodiments described below, but may be embodied in various forms. It is to be understood that the disclosed embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art to which the invention pertains. Only. Therefore, the definition should be based on the contents throughout this specification.

도 1은 일 실시예에 따른 미디어 파일 위변조 검증 방법(100)을 도시한 도면이다. 일 실시예에 따른 미디어 파일 위변조 검증 방법(100)에 의하면, 영상 촬영 기기(110)에서 촬영한 영상을 녹화하여 생성된 미디어 파일(300)에 대해 루트 해시값(230)을 생성하고, 서버(120)를 경유하여 블록체인에 루트 해시값(230)을 게재한다. 상기 미디어 파일(300)의 루트 해시값(230)이 블록체인에 게재된 이후에 배포되는 미디어 파일(300)에 대해 루트 해시값(230)을 생성한 뒤, 상기 블록체인에 동일한 루트 해시값(230)이 게재되어 있음을 확인하는 방식으로 배포된 미디어 파일(300)에 대한 위변조를 검증할 수 있다. 미디어 파일 위변조 검증 방법(100)에서 미디어 파일(300)에 대해 루트 해시값(230)을 생성하는 단계에 대해서는 도 6과 관련하여 이하에서 구체적으로 설명한다.1 is a diagram illustrating a media file forgery verification method 100 according to an exemplary embodiment of the present invention. According to the media file forgery verification method 100 according to an exemplary embodiment of the present invention, a route hash value 230 is generated for a media file 300 generated by recording an image photographed by the image photographing apparatus 110, 120 to place the root hash value 230 in the block chain. After creating the root hash value 230 for the media file 300 distributed after the root hash value 230 of the media file 300 has been posted in the block chain, 230) is displayed on the media file (300). The step of generating the root hash value 230 for the media file 300 in the media file forgery verification method 100 will be described in detail below with reference to FIG.

미디어 파일(300)이란, 음성 및 영상 중 적어도 어느 하나를 객체로 하는 파일일 수 있다. 자막이나 실시간 대화형 통신을 위한 부가 정보 등도 객체로 포함할 수 있다. 미디어 파일(300)은 KS X ISO/IEC 14496-12 에서 정의하는 ISO 기반 미디어 파일(MPEG-4), Microsoft 사에서 정의하는 AVI 파일 또는 Apple 사에서 정의하는 MOV 파일 등을 포괄적으로 지칭할 수 있다. 미디어 파일(300)은 음성만 담겨 있는 MPEG-3/FLAC/AAC 등과 같은 형식의 파일이나, 영상만 담겨 있는 FLV 같은 형식의 파일도 포함할 수 있다.The media file 300 may be a file having at least one of audio and video as objects. Subtitles and additional information for real-time interactive communication can also be included as objects. The media file 300 may refer to an ISO based media file (MPEG-4) defined in ISO / IEC 14496-12, an AVI file defined by Microsoft Corporation, or an MOV file defined by Apple Inc. . The media file 300 may include a file format such as MPEG-3 / FLAC / AAC, which contains only audio, or a file format such as FLV, which contains only video.

미디어 파일(300)은 복수개의 트랙을 포함할 수 있다. 미디어 파일(300)의 비디오 트랙은 비디오의 각 장면을 특정 시간에 표시하기 위한 장면, 프레임 등의 샘플에 대한 정보와 시간에 대한 정보를 포함할 수 있다. 비디오 샘플의 효율적인 저장을 위해 최근의 비디오 코덱은 키프레임과 같은 특정 샘플을 기준으로 하여 키프레임 전 또는 후의 샘플과의 연관성을 수학적으로 계산하여 그 차이만을 기록하는 방식을 이용하는 경우가 많다. 이러한 방식에 의할 때, 키프레임이나 키프레임 전 또는 후의 샘플과 연관성을 갖는 샘플은 독립적으로 처리할 수가 없다. 따라서 샘플의 재현에 있어서 상호 의존적으로 처리해야 하는 샘플의 집합이 존재하게 된다. 이러한 샘플의 집합에서 해당 집합에 속하는 샘플 데이터 및 해당 샘플 집합이 재현되어야 하는 시간에 대한 표현 시간 데이터를 포함하여 구간 데이터(310)로 지칭할 수 있다.The media file 300 may include a plurality of tracks. The video track of the media file 300 may include information on a sample such as a scene, a frame, and the like for displaying each scene of the video at a specific time and time. In order to efficiently store video samples, a recent video codec often uses a method of mathematically computing the association with a sample before or after a key frame based on a specific sample such as a key frame, and recording only the difference. With this approach, samples that have relevance to a keyframe or a keyframe before or after a keyframe can not be handled independently. Thus, there is a set of samples that must be processed in an interdependent manner in the reproduction of the sample. In this set of samples, it may be referred to as interval data 310 including the sample data belonging to the set and the expression time data about the time during which the sample set is to be reproduced.

구간 데이터(310)와 관련하여 각각의 샘플에 대한 정보를 독립적으로 기록하는 방식도 존재한다. 그러한 경우에는 가장 작은 단위의 각각의 샘플이 구간 데이터(310)가 될 수 있다.There is also a method of independently recording the information of each sample with respect to the interval data 310. [ In such a case, each sample of the smallest unit may be interval data 310.

구간 데이터(310)는 반드시 하나의 구간 데이터(310)로 처리될 필요는 없다. 필요한 경우에는 여러 개의 연속한 구간 데이터(310)를 결합한 구분 데이터(310)의 결합을 하나의 구분 데이터로 간주하여 구분할 수도 있다. 그리고 각 구간 데이터(310) 별로 부가 정보인 메타 데이터를 포함할 수 있다. 상기 메타 데이터에는 미디어 파일(300)이 생성된 카메라 등 영상 촬영 기기(110)의 시리얼 번호, 위치에 대한 고유 번호, 워터마크, 각각의 구간 데이터(310)의 디코딩 타임스탬프(Decoding Timestamp) 및 프리젠테이션 타임스탬프(Presentation Timestamp) 시간 정보 등이 포함될 수 있다.The interval data 310 need not necessarily be processed as one interval data 310. [ If necessary, a combination of the division data 310 in which a plurality of consecutive section data 310 is combined may be regarded as one division data and may be classified. And metadata including additional information for each section data 310. The metadata includes a serial number of the camera and the like of the camera such as the media file 300, a unique number for the position, a watermark, a decoding timestamp of each interval data 310, A presentation timestamp time information, and the like.

도 2는 일 실시예에 따른 미디어 파일(300)에서 구간 데이터(310)를 구분하는 부분을 도시한 도면이다. 도 2는 일 실시예에 따른 미디어 파일(300)에 2개의 트랙이 있는 경우를 상정하였다. 좌에서 우로 향하는 화살표 모양의 트랙 1의 시간축을 따라 트랙 1의 시간축과 수직한 방향의 각각의 트랙 1 표현시간(330)이 표시되어 있다. 마찬가지로 좌에서 우로 향하는 화살표 모양의 트랙 2의 시간축을 따라 트랙 2의 시간축과 수직한 방향의 각각의 트랙 2 표현시간(340)이 표시되어 있다. 구간 데이터(310)는 좌우에 구간 데이터 경계(320)를 가지게 될 수 있다. 구간 데이터(310)는 해당 시간의 구간 데이터 경계(320) 안에 표현시간이 포함되는 각각의 트랙의 모든 샘플로 구성될 수 있다. 구간 데이터 경계(320)는 연관성 내지 의존성을 갖는 샘플 집합을 기준으로 구분될 수 있다.FIG. 2 is a diagram illustrating a section for separating interval data 310 in the media file 300 according to an exemplary embodiment. FIG. 2 assumes that there are two tracks in the media file 300 according to one embodiment. The respective track 1 presentation times 330 in the direction perpendicular to the time axis of the track 1 along the time axis of the arrow-shaped track 1 from left to right are displayed. Similarly, the track 2 presentation time 340 in the direction perpendicular to the time axis of the track 2 along the time axis of the arrow-shaped track 2 from left to right is displayed. The interval data 310 may have interval data boundaries 320 on the left and right sides. The interval data 310 may be composed of all the samples of each track including the presentation time within the interval data boundary 320 of the corresponding time. The interval data boundary 320 may be distinguished based on a set of samples having an association or a dependency.

도 3은 일 실시예에 따른 해시 트리(200)를 도시한 도면이다. 일 실시예에 따른 해시 트리(200)는 각각의 노드를 해시값으로 하는 이진 트리의 자료 구조일 수 있다. 부모 노드는 연접한 자식 노드들과 필요한 경우 부가 정보를 포함한 값의 해시값일 수 있다. 도 2에서 원형의 도형은 리프 해시값(210), 육각형 도형은 노드 해시값(220), 삼각형 도형은 루트 해시값(230)으로 할 수 있다. 리프 해시값(210)과 노드 해시값(220)의 개수는 상황에 따라 달라질 수 있다. 다만 루트 해시값(230)은 하나의 값이다.FIG. 3 is a diagram illustrating a hash tree 200 according to one embodiment. The hash tree 200 according to an exemplary embodiment may be a data structure of a binary tree having each node as a hash value. The parent node may be a hash value of the value including the associated child nodes and, if necessary, side information. In FIG. 2, the leaf shape has a leaf hash value 210, the hexagonal shape has a node hash value 220, and the triangular shape has a root hash value 230. The number of leaf hash values 210 and node hash values 220 may vary depending on the situation. However, the root hash value 230 is a single value.

도 4는 일 실시예에 따른 경로 노드(240)와 부가 정보 노드(250)를 해시 트리(200)에서 구분하여 도시한 도면이다. 도 4에서도 도 3과 마찬가지로, 원형의 도형은 리프 해시값(210), 육각형 도형은 노드 해시값(220), 삼각형 도형은 루트 해시값(230)으로 할 수 있다. 해시 트리(200)의 일부분으로서 경로 노드(240)는 도 4의 맨 하단 왼쪽에서 세번째 리프 해시값(210)에 해당하는 숫자 0에서 경로를 따라 루트 해시값(230)에 해당하는 숫자 3까지 0-1-2-3 으로 이어지는 부분을 가리킬 수 있다. 해시 트리(200)의 일부분으로서 부가 정보 노드(250)는 경로 노드(240)의 경로에서 루트 해시값(230)을 구하기 위한 부가 정보 노드(250)의 집합인 도 4의 맨 하단 왼쪽에서 4번째 리프 해시값(210) A, 왼쪽에서 첫번째 노드 해시값(220) B, 루트 해시값(230)과 연접한 오른쪽 하단의 노드 해시값(220) C를 포함할 수 있다. 검증의 관점에서 부가 정보 노드(250)의 집합인 A, B 및 C를 해시 체인으로 부를 수 있다.FIG. 4 is a diagram illustrating the path node 240 and the additional information node 250 in the hash tree 200 according to an exemplary embodiment of the present invention. 4, the leaf shape has a leaf hash value 210, the hexagonal shape has a node hash value 220, and the triangular shape has a root hash value 230, as in FIG. As part of the hash tree 200, the path node 240 is arranged in a path from the number 0 corresponding to the third leaf hash value 210 at the bottom left of FIG. 4 to the number 3 corresponding to the root hash value 230 -1-2-3. ≪ / RTI > The supplementary information node 250 as a part of the hash tree 200 is a fourth set of the additional information nodes 250 from the bottom left of FIG. 4, which is a set of additional information nodes 250 for obtaining the root hash value 230 in the path of the path node 240. [ A leaf hash value 210 A, a first node hash value 220 on the left side, and a node hash value 220 C on the lower right side concatenated with the root hash value 230. From the viewpoint of verification, the sets A, B, and C of the additional information node 250 may be referred to as a hash chain.

도 5는 일 실시예에 따른 도 3의 해시 트리(200) 중 경로 노드(240)와 부가 정보 노드(250)만을 분리하여 도시한 도면이다. 해시 트리(200)의 일부분으로서 경로 노드(240)는 0-1-2-3 으로 이어지는 도 5의 직사각형 부분을 가리킬 수 있다. 해시 트리(200)의 일부분으로서 부가 정보 노드(250)는 리프 해시값(210) A, 노드 해시값(220) B 및 노드 해시값(220) C를 포함할 수 있다. 검증의 관점에서 부가 정보 노드(250)의 집합인 A, B 및 C를 해시 체인으로 부를 수 있다.FIG. 5 is a diagram illustrating only the path node 240 and the additional information node 250 among the hash tree 200 of FIG. 3 according to an embodiment of the present invention. As part of the hash tree 200, the path node 240 may point to the rectangular portion of Figure 5 leading to 0-1-2-3. As part of the hash tree 200, the additional information node 250 may include a leaf hash value 210, a node hash value 220, and a node hash value 220, C. From the viewpoint of verification, the sets A, B, and C of the additional information node 250 may be referred to as a hash chain.

도 6은 일 실시예에 따른 해시 트리(200)를 생성하여 미디어 파일(300)의 위변조 여부를 검증하는 미디어 파일 위변조 검증 방법(100)을 도시한 도면이다. 일 실시예에 따른 미디어 파일 위변조 검증 방법(100)은, 해시 트리(200)를 생성하여 미디어 파일(300)의 위변조 여부를 검증하는 미디어 파일 위변조 검증 방법(100)에 있어서, (1) 상기 미디어 파일(300)에 포함된 각각의 트랙에 대해 상기 트랙의 각각의 표현 시간이 동기화된 구간 데이터(310)를 구성하는 단계(S100), (2) 상기 단계 (1)에서 구성한 구간 데이터(310) 중 하나의 구간 데이터(310)에 대해 해시값을 생성하는 단계(S200), (3) 상기 단계 (2)에서 생성한 상기 해시값을 리프로 하여 상기 해시 트리(200)에 추가하는 단계(S300), (4) 상기 단계 (1)에서 구성한 각각의 구간 데이터(310)에 대해 상기 단계 (2) 및 (3)을 반복하여 최종 해시 트리를 생성하는 단계(S400) 및 (5) 상기 최종 해시 트리의 루트 해시값(230)을 블록체인에 게재하는 단계(S500)를 포함할 수 있다. FIG. 6 is a diagram illustrating a media file forgery verification method 100 for generating a hash tree 200 according to an embodiment and verifying whether a media file 300 is falsified or not. A method for verifying a forgery of a media file 100 according to an exemplary embodiment of the present invention is a method 100 for verifying a forgery or falsification of a media file 300 by generating a hash tree 200, (S100) constituting interval data 310 in which the respective presentation times of the tracks are synchronized with respect to each of the tracks included in the file 300, (2) configuring the interval data 310 formed in the step (1) (S300) of adding the hash value generated in the step (2) to the hash tree 200 by adding the hash value to the hash tree 200 (S300) (4) generating (S400) and (5) a final hash tree by repeating the steps (2) and (3) for each section data 310 constructed in the step (1) (S500) of placing the root hash value (230) of the tree in the block chain.

단계 S100은, 미디어 파일(300)에 포함된 하나 또는 복수의 트랙 각각에 대해 상기 트랙의 각각의 표현 시간이 동기화된 구간 데이터(310)를 구성할 수 있다. 구간 데이터 경계(320)는 연관성 내지 의존성을 갖는 샘플 집합을 기준으로 구분될 수 있다. 또한 구간 데이터(310)는 반드시 하나의 구간 데이터(310)로 처리될 필요는 없다. 필요한 경우에는 여러 개의 연속한 구간 데이터(310)를 결합한 구분 데이터(310)의 결합을 하나의 구분 데이터(310)로 간주하여 구분할 수도 있다.Step S100 may constitute interval data 310 in which the respective presentation times of the tracks are synchronized with respect to each of the one or a plurality of tracks included in the media file 300. [ The interval data boundary 320 may be distinguished based on a set of samples having an association or a dependency. Also, the interval data 310 need not necessarily be processed as one interval data 310. [ If necessary, a combination of the division data 310 combining a plurality of consecutive section data 310 may be regarded as one division data 310 and classified.

단계 S200은, 단계 (1)에서 구성한 구간 데이터(310) 중 하나의 구간 데이터(310)에 대해 해시값을 생성할 수 있다. 구간 데이터(310)에 대해 직접적으로 생성한 해시값을 리프 해시값(210)으로 할 수 있다. In step S200, a hash value may be generated for one of the interval data 310 of the interval data 310 constructed in the step (1). The hash value directly generated for the interval data 310 can be used as the leaf hash value 210. [

단계 S300은, 단계 (2)에서 생성한 상기 해시값을 리프로 하여 상기 해시 트리(200)에 추가할 수 있다. 따라서 구간 데이터(310)의 개수가 많아지면 해시 트리(200)에 추가되는 리프 해시값(210)의 개수가 증가하게 될 수 있다. In step S300, the hash value generated in step (2) may be added to the hash tree 200 by making the hash value as a leaf. Therefore, if the number of interval data 310 increases, the number of leaf hash values 210 added to the hash tree 200 may increase.

단계 S400은, 단계 (1)에서 구성한 각각의 구간 데이터(310)에 대해 상기 단계 (2) 및 (3)을 반복하여 최종 해시 트리를 생성할 수 있다. 구간 데이터(310)에 대해 직접적으로 생성된 해시값을 리프 해시값(210)으로 하되, 인접한 리프 해시값(210)을 이용하여 새로운 해시값인 노드 해시값(220)을 생성할 수 있다. 또한 종국적으로는 해시 트리(200)를 생성하는 과정에서 최종적으로 생성되는 루트 해시값(230)을 생성하면서 최종 해시 트리를 생성할 수 있다.In step S400, the final hash tree can be generated by repeating the above steps (2) and (3) for each section data 310 constructed in step (1). A hash value directly generated for the interval data 310 is set as a leaf hash value 210 and a new hash value 220 that is a new hash value can be generated using an adjacent leaf hash value 210. [ Finally, the final hash tree 230 can be generated while generating the root hash value 230 finally generated in the process of generating the hash tree 200.

또한, 미디어 파일 위변조 검증 방법(100)은 상기 미디어 파일(300)에 상기 루트 해시값(230)과 상기 루트 해시값(230)에 대한 메타 데이터를 추가하는 단계를 더 포함할 수 있다. The media file forgery verification method 100 may further include adding metadata for the root hash value 230 and the root hash value 230 to the media file 300. [

단계 S500은, 최종 해시 트리의 루트 해시값(230)을 블록체인에 게재할 수 있다. 도 1에서 영상 촬영 기기(110)에서 촬영한 영상을 녹화하여 생성된 미디어 파일(300)에 대해 루트 해시값(230)을 생성하고, 상기 루트 해시값을 블록체인에 게재하기 위해 서버(120)로 전송할 수 있다. 서버(120)에서는 전송 받은 루트 해시값(230)을 블록체인에 게재할 수 있다. Step S500 can place the root hash value 230 of the last hash tree in the block chain. 1, a root hash value 230 is generated for a media file 300 generated by recording an image photographed by the video imaging device 110, and the server 120 transmits the root hash value to a block chain, Lt; / RTI > The server 120 can place the received route hash value 230 in the block chain.

바람직하게는, 미디어 파일(300)의 개수가 많아 서버(120)에서 전송 받은 루트 해시값(230)이 많을 경우에는, 효율적으로 블록체인에 게재하기 위해, 미디어 파일 각각에 대해 전송 받은 루트 해시값(230)을 리프로 하여 해시 트리(200)를 생성하였을 때 생성되는 루트 해시값(230)을 블록체인에 게재할 수 있다.Preferably, when the number of media files 300 is large and the number of root hash values 230 received from the server 120 is large, the root hash value The root hash value 230 generated when the hash tree 200 is created with the leaf 230 as a leaf can be placed in the block chain.

도 7은 일 실시예에 따른 구간 데이터(310)의 리프 해시값(210)을 기반으로 해시 트리(200)를 생성하는 과정을 도시한 도면이다. 구간 데이터(310)의 개수는 가변적이나 도 7의 경우 구간 데이터(310)가 4개 있는 경우를 상정하였다. 도 7을 참조하면, 4개의 구간 데이터(310)가 있는 경우 각각의 구간 데이터(310)에 대해 H1, H2, H4, H5에 해당하는 리프 해시값(210) 4개를 생성할 수 있다. 인접한 리프 해시값(210)인 H1, H2와 H4, H5를 이용하여 새로운 해시값인 노드 해시값(220) H3, H6를 생성할 수 있다. 그리고 노드 해시값(220) H3, H6를 이용하여 루트 해시값(230) H7을 생성하면서 최종적으로 해시 트리(200)를 생성할 수 있다.7 is a diagram illustrating a process of generating a hash tree 200 based on a leaf hash value 210 of the interval data 310 according to an embodiment. It is assumed that the number of interval data 310 is variable, but in the case of FIG. 7, there are four interval data 310. Referring to FIG. 7, if there are four interval data 310, four leaf hash values 210 corresponding to H1, H2, H4, and H5 can be generated for each interval data 310. FIG. H3 and H6, which are new hash values, can be generated by using H1, H2, H4, and H5 which are adjacent leaf hash values 210. [ Finally, the hash tree 200 can be generated while generating the root hash value 230 using the node hash values 220 H3 and H6.

도 8은 일 실시예에 따른 구간 데이터(310)의 리프 해시값(210)에 메타 데이터의 리프 해시값(210)이 더 포함되어 해시 트리(200)를 생성하는 과정을 도시한 도면이다. 각각의 구간 데이터(310)에 대해 H1, H2, H4, H5에 해당하는 리프 해시값(210) 4개가 생성될 수 있고, 구간 데이터(310) 자체가 아닌 구간 데이터(310)에 대한 부가 정보인 메타 데이터를 기반으로 한 리프 해시값(210) H8을 생성하는 경우를 상정하였다. 인접한 리프 해시값(210)인 H1, H2와 H4, H5를 이용하여 새로운 해시값인 노드 해시값(220) H3, H6를 생성할 수 있다. 그리고 노드 해시값(220) H3, H6를 이용하여 노드 해시값(220) H7을 생성할 수 있다. 노드 해시값(220) H7과 메타 데이터를 기반으로 한 리프 해시값(210) H8을 이용하여 루트 해시값(230) H9을 생성하면서 최종적으로 해시 트리(200)를 생성할 수 있다.8 is a diagram illustrating a process of generating a hash tree 200 by further including a leaf hash value 210 of metadata in a leaf hash value 210 of the interval data 310 according to an embodiment. Four leaf hash values 210 corresponding to H1, H2, H4 and H5 can be generated for each interval data 310 and four pieces of leaf hash values 210 corresponding to the interval data 310, The leaf hash value 210 based on the metadata is generated. H3 and H6, which are new hash values, can be generated by using H1, H2, H4, and H5 which are adjacent leaf hash values 210. [ And, the node hash value 220 H3 and H6 can be used to generate the node hash value 220 H7. The hash tree 200 can be finally generated while generating the root hash value 230 using the node hash value 220 and the leaf hash value 210 based on the metadata.

도 9는 일 실시예에 따른 구간 데이터(310)의 리프 해시값(210)에 구간 데이터(310)마다의 메타 데이터의 리프 해시값(210)이 더 포함되어 해시 트리(200)를 생성하는 과정을 도시한 도면이다. 각각의 구간 데이터(310)에 대해 H1, H4, H8, H11에 해당하는 리프 해시값(210) 4개가 생성될 수 있고, 구간 데이터(310) 각각에 대한 부가 정보인 메타 데이터 1 내지 4를 기반으로 한 리프 해시값(210) H2, H5, H9, H12를 생성하는 경우를 상정하였다. 인접한 리프 해시값(210)을 이용하여 새로운 해시값인 노드 해시값(220) H3, H6, H10, H13을 생성할 수 있다. 그리고 노드 해시값(220) H3, H6, H10, H13을 이용하여 노드 해시값(220) H7, H14를 생성할 수 있다. 노드 해시값(220) H7, H14를 이용하여 루트 해시값(230) H15를 생성하면서 최종적으로 해시 트리(200)를 생성할 수 있다. 9 is a flowchart illustrating a process of generating a hash tree 200 by further including a leaf hash value 210 of meta data for each interval data 310 in a leaf hash value 210 of the interval data 310 according to an embodiment Fig. Four leaf hash values 210 corresponding to H1, H4, H8 and H11 can be generated for each section data 310 and metadata 1 to 4, which are additional information for each section data 310, The leaf hash values 210, H2, H5, H9 and H12 are generated. The node hash values 220 H3, H6, H10, and H13, which are new hash values, can be generated by using the adjacent leaf hash values 210. [ The node hash values 220 H7, H14 can be generated using the node hash values 220, H3, H6, H10, and H13. The hash tree 200 can be finally generated while generating the root hash value 230 H15 using the node hash values 220 and H14.

또한, 도 8 및 도 9의 실시예 외에도 구간 데이터(310)의 개수와 메타 데이터의 개수가 상이한 경우에 해시 트리(200)를 생성하는 경우도 상정할 수 있다. 이외에도 해시 트리(200)를 생성하여 루트 해시값(230)을 생성하는 방법은 상황에 따라 적절하게 상정할 수 있을 것이다.It is also possible to generate the hash tree 200 when the number of interval data 310 and the number of meta data are different, in addition to the embodiments of FIGS. 8 and 9. In addition, the method of generating the hash tree 200 to generate the root hash value 230 may be appropriately assumed depending on the situation.

바람직하게는, 영상 촬영 기기(110)에서 촬영한 영상을 녹화하여 생성된 미디어 파일(300)에 대해 루트 해시값(230)을 생성하고, 서버(120)를 경유하여 블록체인에 루트 해시값(230)을 게재한다. 블록체인에 루트 해시값(230)이 게재되어 있음을 확인하는 검증 단계를 포함할 수 있다.Preferably, the root hash value 230 is generated for the media file 300 generated by recording the image photographed by the image capturing apparatus 110, and the root hash value 230 is added to the block chain via the server 120 230). And verifying that the root hash value 230 is posted in the block chain.

또한, 미디어 파일(300)의 위변조 여부에 대한 검증을 원하는 요청자에게 루트 해시값(230)이 블록체인에 게재되어 있음을 확인할 수 있는 트랙잭션 고유번호 또는 블록체인에 게재되어 있는 트랙잭션 데이터 등을 전송할 수 있다. 그 이후 미디어 파일(300)의 위변조 여부에 대한 검증을 원하는 요청자는 루트 해시값(230)을 확인할 수 있다. Also, it is possible to transmit a transaction specific number or transaction data placed in a block chain to the requester who wants to verify whether the media file 300 is falsified or not, in order to confirm that the root hash value 230 is placed in the block chain have. A requestor that wishes to verify whether the media file 300 has been tampered with can then identify the root hash value 230.

도 10은 일 실시예에 따른 부분 미디어 파일(360)을 생성함에 있어서 미디어 파일 위변조 검증 방법(100)을 도시한 도면이다. 일 실시예에 따른 미디어 파일 위변조 검증 방법(100)은, 해시 트리(200)를 생성하여 미디어 파일(300)의 위변조 여부를 검증하는 미디어 파일 위변조 검증 방법(100)에 있어서, (1) 상기 미디어 파일(300)에 포함된 각각의 트랙에 대해 상기 트랙의 각각의 표현 시간이 동기화된 구간 데이터(310)를 구성하는 단계(S100), (2) 상기 단계 (1)에서 구성한 구간 데이터(310) 중 하나의 구간 데이터(310)에 대해 해시값을 생성하는 단계(S200), (3) 상기 단계 (2)에서 생성한 상기 해시값을 리프로 하여 상기 해시 트리(200)에 추가하는 단계(S300), (4) 상기 단계 (1)에서 구성한 각각의 구간 데이터(310)에 대해 상기 단계 (2) 및 (3)을 반복하여 최종 해시 트리를 생성하는 단계(S400) (5) 상기 미디어 파일(300)의 전체 시간 구간 중 일부 시간 구간을 포함하는 연속하는 시간의 상기 구간 데이터(310)의 집합인 구간 데이터 집합을 선택하는 단계(S600), (6) 상기 최종 해시 트리에서 상기 구간 데이터 집합 중 가장 선행 시간의 구간 데이터(310)와 가장 후행 시간의 구간 데이터(310)에 대해 부가 정보 노드(250)의 집합인 해시 체인을 선택하는 단계(S700), (7) 상기 구간 데이터 집합을 부분 미디어 파일(360)로 생성하는 단계(S800) 및 (8) 상기 부분 미디어 파일(360)에 상기 해시 체인을 포함한 데이터(350)를 추가하는 단계(S900)를 포함할 수 있다.10 is a diagram illustrating a media file forgery verification method 100 in generating a partial media file 360 according to an embodiment. A method for verifying a forgery of a media file 100 according to an exemplary embodiment of the present invention is a method 100 for verifying a forgery or falsification of a media file 300 by generating a hash tree 200, (S100) constituting interval data 310 in which the respective presentation times of the tracks are synchronized with respect to each of the tracks included in the file 300, (2) configuring the interval data 310 formed in the step (1) (S300) of adding the hash value generated in the step (2) to the hash tree 200 by adding the hash value to the hash tree 200 (S300) (4) repeating the steps (2) and (3) for each section data 310 formed in the step (1) to generate a final hash tree (S400) 300) of the continuous time including a partial time period of the entire time period (S600); (6) In the final hash tree, the interval data 310 of the most preceding time and the interval data 310 of the most trailing time in the interval data set are selected (S700), (7) generating the partial data file as a partial media file 360 (S800), and (8) selecting the hash chain as a partial media file 360 may include adding the data 350 including the hash chain (S900).

단계 S100은, 미디어 파일(300)에 포함된 하나 또는 복수의 트랙 각각에 대해 상기 트랙의 각각의 표현 시간이 동기화된 구간 데이터(310)를 구성할 수 있다. 구간 데이터 경계(320)는 연관성 내지 의존성을 갖는 샘플 집합을 기준으로 구분될 수 있다. 또한 구간 데이터(310)는 반드시 하나의 구간 데이터(310)로 처리될 필요는 없다. 필요한 경우에는 여러 개의 연속한 구간 데이터(310)를 결합한 구분 데이터(310)의 결합을 하나의 구분 데이터(310)로 간주하여 구분할 수도 있다.Step S100 may constitute interval data 310 in which the respective presentation times of the tracks are synchronized with respect to each of the one or a plurality of tracks included in the media file 300. [ The interval data boundary 320 may be distinguished based on a set of samples having an association or a dependency. Also, the interval data 310 need not necessarily be processed as one interval data 310. [ If necessary, a combination of the division data 310 combining a plurality of consecutive section data 310 may be regarded as one division data 310 and classified.

단계 S200은, 단계 (1)에서 구성한 구간 데이터(310) 중 하나의 구간 데이터(310)에 대해 해시값을 생성할 수 있다. 구간 데이터(310)에 대해 직접적으로 생성한 해시값을 리프 해시값(210)으로 할 수 있다. In step S200, a hash value may be generated for one of the interval data 310 of the interval data 310 constructed in the step (1). The hash value directly generated for the interval data 310 can be used as the leaf hash value 210. [

단계 S300은, 단계 (2)에서 생성한 상기 해시값을 리프로 하여 상기 해시 트리(200)에 추가할 수 있다. 따라서 구간 데이터(310)의 개수가 많아지면 해시 트리(200)에 추가되는 리프 해시값(210)의 개수가 증가하게 될 수 있다. In step S300, the hash value generated in step (2) may be added to the hash tree 200 by making the hash value as a leaf. Therefore, if the number of interval data 310 increases, the number of leaf hash values 210 added to the hash tree 200 may increase.

단계 S400은, 단계 (1)에서 구성한 각각의 구간 데이터(310)에 대해 상기 단계 (2) 및 (3)을 반복하여 최종 해시 트리를 생성할 수 있다. 구간 데이터(310)에 대해 직접적으로 생성된 해시값을 리프 해시값(210)으로 하되, 인접한 리프 해시값(210)을 이용하여 새로운 해시값인 노드 해시값(220)을 생성할 수 있다. 또한 종국적으로는 해시 트리(200)를 생성하는 과정에서 최종적으로 생성되는 루트 해시값(230)을 생성하면서 최종 해시 트리를 생성할 수 있다.In step S400, the final hash tree can be generated by repeating the above steps (2) and (3) for each section data 310 constructed in step (1). A hash value directly generated for the interval data 310 is set as a leaf hash value 210 and a new hash value 220 that is a new hash value can be generated using an adjacent leaf hash value 210. [ Finally, the final hash tree 230 can be generated while generating the root hash value 230 finally generated in the process of generating the hash tree 200.

단계 S600은, 미디어 파일(300)의 전체 시간 구간 중 일부 시간 구간을 포함하는 연속하는 시간의 상기 구간 데이터(310)의 집합인 구간 데이터 집합을 선택할 수 있다. 예를 들어, 재생시간이 14분 30초인 미디어 파일(300) 중 5분부터 10분까지의 부분만이 법원에 증거 자료로 제출이 필요한 경우에, 미디어 파일(300)의 전체 재생시간 14분 30초 중 5분부터 10분까지의 연속된 5분 동안의 구간을 포함하는 구간 데이터(310)의 집합을 구간 데이터 집합으로 선택할 수 있다.The step S600 may select a set of interval data that is a set of the interval data 310 of consecutive times including some time intervals of the entire time interval of the media file 300. [ For example, if only 5 to 10 minutes of the media file 300 having a playback time of 14 minutes and 30 seconds is required to be presented to the court as evidence, the total playing time of the media file 300 is 14 minutes 30 minutes The set of interval data 310 including the interval of 5 minutes to 10 minutes of consecutive 5 minutes may be selected as the interval data set.

단계 S700은, 최종 해시 트리에서 상기 구간 데이터 집합 중 가장 선행 시간의 구간 데이터(310)와 가장 후행 시간의 구간 데이터(310)에 대해 부가 정보 노드(250)의 집합인 해시 체인을 선택할 수 있다. 예를 들어, 재생시간이 14분 30초인 미디어 파일(300) 중 5분부터 10분까지의 부분만이 법원에 증거 자료로 제출이 필요한 경우에, 미디어 파일(300)의 전체 재생시간 14분 30초 중 5분부터 10분까지의 연속된 5분 동안의 구간을 포함하는 구간 데이터(310)의 리프 해시값(210)을 기반으로 하는 경로 노드(240)와 관련된 부가 정보 노드(250)의 집합인 해시 체인을 선택할 수 있다.In step S700, the hash chain, which is a set of the additional information nodes 250, can be selected for the interval data 310 of the most preceding time and the interval data 310 of the most trailing time in the last hash tree. For example, if only 5 to 10 minutes of the media file 300 having a playback time of 14 minutes and 30 seconds is required to be presented to the court as evidence, the total playing time of the media file 300 is 14 minutes 30 minutes The set of additional information nodes 250 associated with the path node 240 based on the leaf hash value 210 of the interval data 310 including the interval for 5 consecutive minutes from 5 minutes to 10 minutes, Can be selected.

단계 S800은, 구간 데이터 집합을 부분 미디어 파일(360)로 생성할 수 있다. 부분 미디어 파일(360)은 미디어 파일(300)의 일부분에 해당하나 부분 미디어 파일(360)과 미디어 파일(300)로 생성한 루트 해시값(230)이 동일하다는 특징을 가질 수 있다.Step S800 may generate the section data set as the partial media file 360. [ The partial media file 360 corresponds to a part of the media file 300 but may have a feature that the partial media file 360 and the root hash value 230 generated by the media file 300 are the same.

단계 S900은, 부분 미디어 파일(360)에 상기 해시 체인을 포함한 데이터(350)를 추가할 수 있다. 부분 미디어 파일(360)은 미디어 파일(300)의 구간 데이터(310)들 중 일부 구간 데이터(310)의 집합으로서, 영상 촬영 기기(110)에서 촬영한 영상을 녹화하여 최초로 생성된 미디어 파일(300)을 필요한 부분만 잘라내어 분리하여도 부분 미디어 파일(360)이 미디어 파일(300)과 여전히 동일한 루트 해시값(230)을 가지게 할 수 있다. 따라서 미디어 파일(300)이 최초로 생성된 이후 어느 시점에서나 미디어 파일 위변조 검증을 안정적이고 효과적으로 할 수 있다. 다만, 부분 미디어 파일(360)이 미디어 파일(300)과 여전히 동일한 루트 해시값(230)을 가지는지 여부를 확인하려면 미디어 파일(300)의 구간 데이터(310)들 중 일부 구간 데이터(310)들의 집합인 부분 미디어 파일(360)에 더하여 상기 해시 체인을 포함한 데이터(350)가 필요한 경우가 있을 수 있다.Step S900 may add the data 350 including the hash chain to the partial media file 360. [ The partial media file 360 is a set of partial data 310 of the interval data 310 of the media file 300 and records the video image taken by the video camera 110 to generate the first generated media file 300 Can be made to have the same root hash value 230 as the media file 300, even if only the required portion is cut off and separated. Therefore, the media file forgery verification can be stably and effectively performed at any time after the media file 300 is first generated. In order to check whether the partial media file 360 has the same root hash value 230 as the media file 300, it is necessary to check whether some partial data 310 of the section data 310 of the media file 300 The data 350 including the hash chain may be required in addition to the partial media file 360 as the set.

바람직하게는, 상기 해시 체인과 상기 부분 미디어 파일(360)을 이용하여 상기 미디어 파일(300)과 동일한 루트 해시값(230)을 생성할 수 있다. 부분 미디어 파일(360)은 미디어 파일(300)의 일부분에 해당하나 부분 미디어 파일(360)과 미디어 파일(300)로 생성한 루트 해시값(230)이 동일하다는 특징을 가질 수 있다. 다만, 부분 미디어 파일(360)과 미디어 파일(300)이 동일한 루트 해시값(230)을 생성하기 위해서는 구간 데이터(310)의 리프 해시값(210)을 기반으로 하는 경로 노드(240)와 관련된 부가 정보 노드(250)의 집합인 해시 체인이 필요할 것이다. 부분 미디어 파일(360)과 미디어 파일(300)이 동일한 루트 해시값(230)을 가진다는 특징은, 미디어 파일(300)의 부분만이 필요한 경우에 부분 미디어 파일(360)의 위변조 검증을 안정적이고 효과적으로 할 수 있다는 실제 이용상의 장점을 제공할 수 있다.Preferably, the hash chain and the partial media file 360 may be used to generate the same root hash value 230 as the media file 300. The partial media file 360 corresponds to a part of the media file 300 but may have a feature that the partial media file 360 and the root hash value 230 generated by the media file 300 are the same. However, in order for the partial media file 360 and the media file 300 to generate the same root hash value 230, the path has to be added to the path node 240 based on the leaf hash value 210 of the interval data 310 A hash chain that is a collection of information nodes 250 will be needed. The feature that the partial media file 360 and the media file 300 have the same root hash value 230 is that the forgery verification of the partial media file 360 is stable when only the portion of the media file 300 is needed It can provide an advantage in practical use that it can be effectively used.

도 11은 일 실시예에 따른 부분 미디어 파일(360)을 생성하는 과정에서 미디어 파일(300)의 해시 트리(200)에서 부분 미디어 파일(360)에 해당하는 해시값과 해시 체인을 도시한 도면이다. 도 11의 경우, 부분 미디어 파일(360) 해당 부분은 3개의 구간 데이터(310)의 집합으로 3개의 리프 해시값(210)을 결과물로 생성할 수 있다. 해당 3개의 리프 해시값(210)은 점선의 경로를 따라 노드 해시값(220) 4개와 루트 해시값(230) 1개로 구성된 경로 노드(240)을 구성할 수 있다. 그리고 해당 경로 노드(240)에 대응하는 부가 정보 노드(250) 4개가 해시 체인을 구성할 수 있다. 부분 미디어 파일(360) 해당 부분은 3개의 구간 데이터(310)의 집합으로 3개의 리프 해시값(210)을 결과물로 생성할 수 있으나, 미디어 파일(300)의 루트 해시값(230)과 동일한 부분 미디어 파일(360)의 루트 해시값(230)을 추후에 다시 생성하여 부분 미디어 파일(360)의 위변조 검증을 하기 위해서는, 상기 경로 노드(240)에 대응하는 부가 정보 노드(250) 4개에 해당하는 해시 체인이 있어야만 가능할 것이다. 11 is a diagram showing a hash value and a hash chain corresponding to a partial media file 360 in a hash tree 200 of a media file 300 in the process of generating a partial media file 360 according to an embodiment . 11, the corresponding part of the partial media file 360 can be generated as a result of three leaf hash values 210 as a set of three interval data 310. [ The three leaf hash values 210 can constitute a path node 240 composed of four node hash values 220 and one root hash value 230 along a path of a dotted line. And four additional information nodes 250 corresponding to the corresponding path node 240 may constitute a hash chain. The corresponding portion of the partial media file 360 can be generated as a result of the three leaf hash values 210 as a set of three section data 310. However, In order to re-generate the root hash value 230 of the media file 360 in order to perform the forgery verification of the partial media file 360, it is required that four additional information nodes 250 corresponding to the path node 240 It is only necessary to have a hash chain.

도 12는 일 실시예에 따른 해시 체인을 포함한 데이터(350)를 도시한 도면이다. 해시 체인을 포함한 데이터(350)는 루트 해시값(230), 메타 데이터 길이, 메타 데이터 정보, 부분 미디어 파일(360) 시작시간, 미디어 파일(300)의 구간 데이터(310) 개수, 해시 체인 높이 및 해시 체인 등의 정보로 구성될 수 있다. 해시 체인을 포함한 데이터(350)의 각각의 구성 정보는 저장 공간의 효율적인 활용을 위해 경우에 따라 생략 될 수 있다. 또한, 각각의 구성 정보는 각각의 구성 정보의 유무에 따라 생략 될 수 있다. 예를 들어, 카메라의 고유 번호에 해당하는 메타 데이터가 존재하지 않을 경우에 메타 데이터 길이, 메타 데이터 정보는 생략 될 수 있다. 12 is a diagram illustrating data 350 including a hash chain according to one embodiment. The data 350 including the hash chain includes the root hash value 230, the metadata length, the metadata information, the start time of the partial media file 360, the number of interval data 310 of the media file 300, A hash chain, and the like. The respective configuration information of the data 350 including the hash chain may be omitted in some cases for efficient utilization of the storage space. Further, the respective pieces of configuration information may be omitted depending on the presence or absence of the respective pieces of configuration information. For example, when there is no metadata corresponding to the camera's unique number, the metadata length and metadata information may be omitted.

개시된 내용에 따른 미디어 파일 위변조 검증 방법(100)은, 미디어 파일(300) 생성 단계에서 해시 트리(200)를 생성하고 루트 해시값(230)을 블록체인에 게재함으로써, 블록체인에 게재된 루트 해시값(230)은 현실적으로 위변조의 가능성이 거의 없는 점에서, 미디어 파일(300) 생성 시부터 미디어 파일(300)의 위변조 여부를 효과적으로 확실하게 검증할 수 있다.The media file forgery verification method 100 according to the disclosed contents generates a hash tree 200 in the media file generation step 300 and displays the root hash value 230 in the block chain so that the root hash Since the value 230 is practically unlikely to be forged or falsified, it is possible to reliably verify whether the media file 300 is fake or not from the generation of the media file 300.

루트 해시값(230) 생성에 필요한 부가 정보 노드의 집합인 해시 체인을 포함한 데이터(350)는 미디어 파일(300)에 호환되는 객체로서 미디어 파일(300) 내에 보관하므로, 해시 체인을 포함한 데이터(350)를 별도의 파일로 따로 보관하거나 또는 별도의 보관 수단을 이용할 필요가 없으며, 해시 체인을 포함한 데이터(350)의 손실 위험이 낮아진다.The data 350 including the hash chain, which is a set of additional information nodes necessary for generating the root hash value 230, is stored in the media file 300 as a compatible object in the media file 300, ) In a separate file or use separate storage means, and the risk of loss of the data 350 including the hash chain is lowered.

또한, 개시된 내용에 따른 미디어 파일 위변조 검증 방법(100)은, 미디어 파일(300)의 특정 부분을 부분 미디어 파일(360)로 잘라 분리하여도 기존의 원본 미디어 파일(300)에서 생성한 해시 트리(200)의 루트 해시값(230)의 재현이 용이하게 가능하여, 부분 미디어 파일(360)이 위변조되었는지 여부를 안정적, 효과적으로 검증할 수 있다.The method for verifying the forgery of a media file according to the disclosed contents may further include extracting a hash tree generated from an existing original media file (300) by separating a specific portion of the media file (300) It is possible to easily reproduce the root hash value 230 of the partial media file 200 so that it can be stably and effectively verified whether or not the partial media file 360 has been tampered with.

100 : 미디어 파일 위변조 검증 방법
110 : 영상 촬영 기기
120 : 서버
200 : 해시 트리
210 : 리프 해시값
220 : 노드 해시값
230 : 루트 해시값
240 : 경로 노드
250 : 부가 정보 노드
300 : 미디어 파일
310 : 구간 데이터
320 : 구간 데이터 경계
330 : 트랙 1 표현시간
340 : 트랙 2 표현시간
350 : 해시 체인을 포함한 데이터
360 : 부분 미디어 파일
S100 : 미디어 파일에 포함된 각각의 트랙에 대해 각각의 표현 시간이 동기화된 구간 데이터를 구성하는 단계
S200 : 구간 데이터 중 하나의 구간 데이터에 대해 해시값을 생성하는 단계
S300 : 해시값을 리프로 하여 해시 트리에 추가하는 단계
S400 : 각각의 구간 데이터에 대해 해시값 생성과 해당 해시값을 리프로 하여 해시 트리에 추가하는 단계을 반복하여 최종 해시 트리를 생성하는 단계
S500 : 최종 해시 트리의 루트 해시값을 블록체인에 게재하는 단계
S600 : 미디어 파일의 전체 시간 구간 중 일부 시간 구간을 포함하는 연속하는 시간의 구간 데이터의 집합인 구간 데이터 집합을 선택하는 단계
S700 : 최종 해시 트리에서 구간 데이터 집합 중 가장 선행 시간의 구간 데이터와 가장 후행 시간의 구간 데이터에 대해 부가 정보 노드의 집합인 해시 체인을 선택하는 단계
S800 : 구간 데이터 집합을 부분 미디어 파일로 생성하는 단계
S900 : 부분 미디어 파일에 해시 체인을 포함한 데이터를 추가하는 단계
100: How to verify forgery of media files
110: Video shooting device
120: Server
200: Hash tree
210: leaf hash value
220: Node hash value
230: root hash value
240: Path node
250: additional information node
300: Media file
310: interval data
320: interval data boundary
330: Track 1 presentation time
340: Track 2 presentation time
350: Data including hash chain
360: Partial media file
S100: constituting section data in which the presentation time of each track included in the media file is synchronized
S200: a step of generating a hash value for one piece of interval data
S300: Steps to add a hash value to the hash tree
S400: Creating a final hash tree by repeating the steps of generating a hash value for each section data and adding the hash value to the hash tree as a leaf
S500: Placing the root hash value of the last hash tree in the block chain
S600: selecting an interval data set that is a set of interval data of continuous time including a certain time interval of the entire time interval of the media file
S700: a step of selecting a hash chain, which is a set of additional information nodes, with respect to interval data of the earliest preceding time and interval data of the latest time in the last hash tree
S800: Steps to Generate Interval Data Set as Partial Media File
S900: Adding data to a partial media file, including hash chain

Claims (8)

해시 트리를 생성하여 미디어 파일의 위변조 여부를 검증하는 미디어 파일 위변조 검증 방법에 있어서:
(1) 상기 미디어 파일에 포함된 각각의 트랙에 대해 상기 트랙의 각각의 표현 시간이 동기화된 구간 데이터를 구성하는 단계;
(2) 상기 단계 (1)에서 구성한 상기 구간 데이터 중에서 하나의 구간 데이터에 대해 해시값을 생성하는 단계;
(3) 상기 단계 (2)에서 생성한 상기 해시값을 리프로 하여 상기 해시 트리에 추가하는 단계; 및
(4) 상기 단계 (1)에서 구성한 각각의 상기 구간 데이터에 대해 상기 단계 (2) 및 (3)을 반복하여 최종 해시 트리를 생성하는 단계; 를 포함하는, 미디어 파일 위변조 검증 방법
A media file forgery verification method for generating a hash tree to verify whether a media file is falsified or not, the method comprising:
(1) constructing interval data in which each presentation time of each of the tracks is synchronized with respect to each of the tracks included in the media file;
(2) generating a hash value for one piece of section data out of the section data constructed in the step (1);
(3) adding the hash value generated in the step (2) to the hash tree as a leaf; And
(4) generating a final hash tree by repeating the steps (2) and (3) with respect to each of the section data configured in the step (1); A media file forgery verification method
제1항에 있어서,
상기 최종 해시 트리의 루트 해시값을 블록체인에 게재하는 단계; 를 더 포함하는 것을 특징으로 하는, 미디어 파일 위변조 검증 방법
The method according to claim 1,
Placing a root hash value of the last hash tree in a block chain; Further comprising: a media file forgery verification method
제1항에 있어서, 상기 단계 (4)는,
상기 해시 트리에서 서로 인접한 리프 해시값을 이용하여 생성한 노드 해시값 및 최종 하나의 해시값인 루트 해시값을 상기 해시 트리에 추가하여 상기 최종 해시 트리를 생성하는 것을 특징으로 하는, 미디어 파일 위변조 검증 방법
2. The method of claim 1, wherein step (4)
Wherein the final hash tree is generated by adding a node hash value generated using leaf hash values adjacent to each other in the hash tree and a root hash value that is a final hash value to the hash tree, Way
제1항에 있어서, 상기 단계 (4)는,
메타 데이터에 대해 해시값을 생성하고, 상기 해시값을 리프로 하여 상기 해시 트리에 추가함으로써 상기 최종 해시 트리를 생성하는 것을 특징으로 하는, 미디어 파일 위변조 검증 방법
2. The method of claim 1, wherein step (4)
And generating the hash value for the metadata, and adding the hash value to the hash tree by creating the final hash tree.
제2항에 있어서, 상기 루트 해시값은,
상기 미디어 파일이 복수개인 경우, 상기 미디어 파일 각각에 대한 상기 루트 해시값을 리프로 하여 상기 해시 트리를 생성하여 도출되는 루트 해시값인 것을 특징으로 하는, 미디어 파일 위변조 검증 방법
3. The method of claim 2,
And a root hash value obtained by creating the hash tree by re-establishing the root hash value for each of the media files when the media file is a plurality of media files.
제1항에 있어서,
블록체인에 루트 해시값이 게재되어 있음을 확인하는 검증 단계; 를 더 포함하는 것을 특징으로 하는, 미디어 파일 위변조 검증 방법
The method according to claim 1,
A verification step of confirming that a root hash value is placed in a block chain; Further comprising: a media file forgery verification method
해시 트리를 생성하여 부분 미디어 파일의 위변조 여부를 검증하는 미디어 파일 위변조 검증 방법에 있어서:
(1) 상기 미디어 파일에 포함된 각각의 트랙에 대해 상기 트랙의 각각의 표현 시간이 동기화된 구간 데이터를 구성하는 단계;
(2) 상기 단계 (1)에서 구성한 각각의 상기 구간 데이터에 대해 해시값을 생성하는 단계;
(3) 상기 단계 (2)에서 생성한 상기 해시값을 리프로 하여 상기 해시 트리에 추가하는 단계;
(4) 상기 단계 (1)에서 구성한 각각의 상기 구간 데이터에 대해 상기 단계 (2) 및 (3)을 반복하여 최종 해시 트리를 생성하는 단계;
(5) 상기 미디어 파일의 전체 시간 구간 중 일부 시간 구간을 포함하는 연속하는 시간의 상기 구간 데이터의 집합인 구간 데이터 집합을 선택하는 단계;
(6) 상기 최종 해시 트리에서 상기 구간 데이터 집합 중에서 가장 선행 시간의 상기 구간 데이터와 가장 후행 시간의 상기 구간 데이터에 대해 부가 정보 노드의 집합인 해시 체인을 선택하는 단계;
(7) 상기 구간 데이터 집합을 상기 부분 미디어 파일로 생성하는 단계; 및
(8) 상기 부분 미디어 파일에 상기 해시 체인을 포함한 데이터를 추가하는 단계; 를 포함하는, 미디어 파일 위변조 검증 방법
A media file forgery verification method for generating a hash tree to verify whether a partial media file is falsified or not, the method comprising:
(1) constructing interval data in which each presentation time of each of the tracks is synchronized with respect to each of the tracks included in the media file;
(2) generating a hash value for each of the interval data configured in the step (1);
(3) adding the hash value generated in the step (2) to the hash tree as a leaf;
(4) generating a final hash tree by repeating the steps (2) and (3) with respect to each of the section data configured in the step (1);
(5) selecting an interval data set that is a set of the interval data of consecutive times including a certain time interval of the entire time interval of the media file;
(6) selecting a hash chain that is a set of additional information nodes for the interval data of the earliest preceding time and the interval data of the latest time in the last hash tree;
(7) generating the partial data file as the partial data file; And
(8) adding data including the hash chain to the partial media file; A media file forgery verification method
제7항에 있어서,
상기 해시 체인과 상기 부분 미디어 파일을 이용하여 상기 미디어 파일과 동일한 루트 해시값을 생성하는 단계; 를 더 포함하는 것을 특징으로 하는, 미디어 파일 위변조 검증 방법


8. The method of claim 7,
Generating a root hash value identical to the media file using the hash chain and the partial media file; Further comprising: a media file forgery verification method


KR1020170181736A 2017-12-28 2017-12-28 A method for determining forgeries of media files KR101855442B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170181736A KR101855442B1 (en) 2017-12-28 2017-12-28 A method for determining forgeries of media files

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170181736A KR101855442B1 (en) 2017-12-28 2017-12-28 A method for determining forgeries of media files

Publications (2)

Publication Number Publication Date
KR20180042145A true KR20180042145A (en) 2018-04-25
KR101855442B1 KR101855442B1 (en) 2018-05-09

Family

ID=62088639

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170181736A KR101855442B1 (en) 2017-12-28 2017-12-28 A method for determining forgeries of media files

Country Status (1)

Country Link
KR (1) KR101855442B1 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109034807A (en) * 2018-08-15 2018-12-18 杭州复杂美科技有限公司 A kind of block chain method of data synchronization
CN109756589A (en) * 2019-02-20 2019-05-14 中国互联网络信息中心 A kind of domain-name information maintenance system controlled altogether in many ways based on block chain
WO2020050447A1 (en) * 2018-09-07 2020-03-12 주식회사 비지트 System and method for managing watermark of vr content by means of blockchain
KR102100178B1 (en) * 2019-01-21 2020-05-15 퓨렌스 주식회사 System for check falsify recording file based on block chain and method performing thereof
KR20210007452A (en) * 2019-07-11 2021-01-20 제주대학교 산학협력단 Method for preventing video falsification and apparatus therefor
WO2022191380A1 (en) * 2021-03-10 2022-09-15 숭실대학교 산학협력단 Blockchain-based image forgery and falsification preventing system and method, and computer program therefor

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55150295A (en) * 1979-05-14 1980-11-22 Toyo Giken Kogyo Kk Method and device for plating through hole of printed circuit board
JPS6163369A (en) * 1984-09-04 1986-04-01 Daihen Corp Separation type arc welding machine
JP2004364263A (en) * 2003-05-14 2004-12-24 Matsushita Electric Ind Co Ltd Information embedding apparatus and method, tampering detecting apparatus and method, and recording medium
GB0317571D0 (en) * 2003-07-26 2003-08-27 Koninkl Philips Electronics Nv Content identification for broadcast media
KR101452299B1 (en) * 2012-11-14 2014-10-21 주식회사 예티소프트 Security metohd and server using program code guaranteed integrity
KR101628005B1 (en) * 2015-02-05 2016-06-13 주식회사 코인플러그 Copyright detection system that is based on the block chain
KR101786006B1 (en) * 2016-01-29 2017-10-17 한국과학기술원 Method And Apparatus for Memory Integrity Verification Based on Merkle Tree
KR101701131B1 (en) * 2016-04-28 2017-02-13 주식회사 라피 Data recording and validation methods and systems using the connecting of blockchain between different type

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109034807A (en) * 2018-08-15 2018-12-18 杭州复杂美科技有限公司 A kind of block chain method of data synchronization
CN109034807B (en) * 2018-08-15 2021-07-06 杭州复杂美科技有限公司 Block chain data synchronization method
WO2020050447A1 (en) * 2018-09-07 2020-03-12 주식회사 비지트 System and method for managing watermark of vr content by means of blockchain
KR20200028760A (en) * 2018-09-07 2020-03-17 주식회사 비지트 System and method for managing watermark in virtual reality contents using blockchain network
KR102100178B1 (en) * 2019-01-21 2020-05-15 퓨렌스 주식회사 System for check falsify recording file based on block chain and method performing thereof
KR102125784B1 (en) * 2019-01-21 2020-06-23 퓨렌스 주식회사 Verification method of voice recording data using blockchain
CN109756589A (en) * 2019-02-20 2019-05-14 中国互联网络信息中心 A kind of domain-name information maintenance system controlled altogether in many ways based on block chain
KR20210007452A (en) * 2019-07-11 2021-01-20 제주대학교 산학협력단 Method for preventing video falsification and apparatus therefor
WO2022191380A1 (en) * 2021-03-10 2022-09-15 숭실대학교 산학협력단 Blockchain-based image forgery and falsification preventing system and method, and computer program therefor

Also Published As

Publication number Publication date
KR101855442B1 (en) 2018-05-09

Similar Documents

Publication Publication Date Title
KR101855442B1 (en) A method for determining forgeries of media files
US20200097733A1 (en) Securely Authenticating a Recording File from Initial Collection Through Post-Production and Distribution
US20200117911A1 (en) Systems and methods for generating bookmark video fingerprint
US11899653B2 (en) Digital content integrity verification systems and methods
US8121342B2 (en) Associating metadata with media signals, and searching for media signals using metadata
Ho et al. Handbook of digital forensics of multimedia data and devices
US7346472B1 (en) Method and device for monitoring and analyzing signals
US20050177738A1 (en) Watermark embedding and retrieval
US10951958B1 (en) Authenticity assessment of modified content
US9792390B2 (en) Metadata/content re-association system and method
KR100565069B1 (en) Reproducing method of multimedia data using MusicPhotoVideo profiles and reproducing apparatus thereof
ITTO20091055A1 (en) "PROCEDURE AND DEVICES FOR THE DISTRIBUTION OF MEDIAL CONTENT AND ITS COMPUTER PRODUCT"
WO2006016282A3 (en) Media indexer
MXPA04007314A (en) Image file container.
Wright Preserving moving pictures and sound
Sawant et al. A review of video forgery and its detection
CN112685794A (en) Online evidence obtaining method, evidence obtaining and right maintaining method, system and computer equipment
CN101410832B (en) Systems and methods of extracting and identifying DVD optical disc fingerprint
JP6716663B2 (en) Encoding method, device and equipment using moving image gene
Koukopoulos et al. Security in collaborative multimedia web-based art projects
US20070112779A1 (en) Distributed processing with metadata placeholders
Le Meur et al. The obsolescence of information and information systems CERN digital memory project
Dang-Nguyen et al. Practical analyses of how common social media platforms and photo storage services handle uploaded images
US7979568B2 (en) Method and apparatus for creating last uniform resource identifier, and recording medium storing program for executing the method
JP2010086615A (en) Multiplexing device, program, and multiplexing method

Legal Events

Date Code Title Description
G15R Request for early opening
E701 Decision to grant or registration of patent right