KR20190051430A - Apparatus and Method for Falsification Protection of Video Data - Google Patents
Apparatus and Method for Falsification Protection of Video Data Download PDFInfo
- Publication number
- KR20190051430A KR20190051430A KR1020170147083A KR20170147083A KR20190051430A KR 20190051430 A KR20190051430 A KR 20190051430A KR 1020170147083 A KR1020170147083 A KR 1020170147083A KR 20170147083 A KR20170147083 A KR 20170147083A KR 20190051430 A KR20190051430 A KR 20190051430A
- Authority
- KR
- South Korea
- Prior art keywords
- frame
- hash value
- video
- data
- value
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
- H04N21/2347—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving video stream encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
- H04N21/2389—Multiplex stream processing, e.g. multiplex stream encrypting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/438—Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving MPEG packets from an IP network
- H04N21/4385—Multiplex stream processing, e.g. multiplex stream decrypting
Abstract
Description
본 발명은 비디오 데이터의 위/변조 방지 장치 및 그 방법에 관한 것으로, 상세하게는, 동영상에 포함된 비디오 데이터의 위/변조를 방지하는 기술에 관한 것이다. TECHNICAL FIELD The present invention relates to an apparatus and method for preventing video data from being strayed / modulated, and more particularly, to a technique for preventing stray / modulated video data included in moving images.
최근, 차량충돌, 폭행 등과 같은 사건/사고 발생시, CCTV, 블랙박스, 휴대폰과 같은 기기에서 촬영된 동영상은 사건/사고의 경위를 파악하는 데 중요한 자료로 활용되고 있다. 때때로, 이러한 자료들은 증거자료로 이용될 수 있기 때문에, 그 동영상의 위조/변조 여부를 확인하는 것은 매우 중요하다.In recent years, video clips taken from devices such as CCTV, black box, and mobile phone have been used as important data for detecting incidents / accidents in the event of an accident or an accident such as a vehicle collision or assault. Sometimes, these data can be used as evidence, so it is very important to check the video for counterfeit / tampering.
비디오 데이터 및 오디오 데이터로 이루어진 동영상에서 비디오 데이터의 위조/변조 여부를 판별하는 경우, 종래에는 비디오 전문가의 소견에 따라 비디오 데이터의 위조/변조 여부를 판별하거나, 연속적인 비디오 프레임 간의 노이즈 변화, 비디오 데이터에 존재하는 객체의 연속성 등과 같은 비디오 데이터의 특징을 알고리즘을 이용하여 비디오 데이터의 위/변조 여부를 판별하는 방법들이 사용되었다.In the case of judging whether or not video data is falsified / altered in a moving picture composed of video data and audio data, conventionally, it is determined whether to falsify / modulate video data according to the findings of a video expert, The continuity of objects existing in the video data, and the like are used to determine whether video data is up / modulated by using an algorithm.
그러나 비디오 전문가의 소견은 객관성이 떨어지기 때문에, 비디오 전문가의 소견에 따라 위조/변조 여부를 판별하는 것은 법적 분쟁을 유발할 수 있으며, 비디오 데이터의 특징을 알고리즘을 이용하여 분석하는 방법에서는 비디오 데이터의 조작이 정밀한 경우 그 위조/변조 여부를 판별할 수 없는 단점이 있다.However, since the findings of the video experts are inferior in objectivity, discrimination of forgery / alteration according to the findings of the video experts may cause legal disputes. In the method of analyzing the characteristics of the video data using algorithms, There is a disadvantage in that it can not be determined whether or not it is falsified / altered.
상술한 문제점을 해소하기 위해, 본 발명에서 해결하고자 하는 과제는 비디오 데이터의 위변조를 방지하는 데이터의 위변조 방지 장치 및 그 방법에 관한 것이다.In order to solve the above problems, a problem to be solved by the present invention relates to an apparatus and method for preventing forgery and falsification of data that prevents forgery and falsification of video data.
상술한 목적을 달성하기 위한 본 발명의 일면에 따른 비디오 데이터의 위변조 방지 방법은, 비디오 프레임의 메타 정보를 파싱하여 N번째 프레임의 비디오 프레임에 대한 비디오 프레임 데이터를 획득하는 단계; 상기 비디오 프레임 데이터, 키(Key)값 및 N-1번째 프레임의 해시값을 해시함수로 연산하여 해시값(H)을 생성하는 단계; 및 상기 해시값(H)을 상기 N번째 프레임의 비디오 프레임과 N+1번째 프레임의 비디오 프레임 사이에 삽입하는 단계;를 포함한다.According to another aspect of the present invention, there is provided a method for preventing forgery and corruption of video data, the method comprising: parsing meta information of a video frame to obtain video frame data for a video frame of an Nth frame; Generating a hash value ( H ) by calculating the video frame data, the key value, and the hash value of the (N-1) th frame using a hash function; And inserting the hash value ( H ) between a video frame of the N-th frame and a video frame of the (N + 1) -th frame.
본 발명의 다른 일면에 따른 데이터의 위변조 방지 장치는, N번째 프레임의 비디오 프레임에 대한 비디오 프레임 데이터를 획득하도록 비디오 프레임의 메타 정보를 파싱하는 파싱부; 상기 비디오 프레임 데이터, 키(Key)값 및 N-1번째 프레임의 해시값을 해시함수로 연산하여 해시값(H)을 생성하는 해시값 생성부; 및According to another aspect of the present invention, there is provided an apparatus for preventing forgery and falsification of data, comprising: a parser for parsing meta information of a video frame to obtain video frame data of a video frame of an Nth frame; A hash value generating unit for generating the hash value ( H ) by calculating the video frame data, the key value and the hash value of the (N-1) th frame using a hash function; And
상기 해시값(H)을 상기 N번째 프레임의 비디오 프레임과 N+1번째 프레임의 비디오 프레임 사이에 삽입하는 삽입부를 포함한다.And an insertion unit for inserting the hash value ( H ) between the video frame of the Nth frame and the video frame of the (N + 1) th frame.
본 발명에 따르면, 비디오 데이터에 위변조 방지를 위한 부가데이터를 삽입한 후, 비디오 데이터의 위변조 검증이 필요한 경우, 삽입된 부가데이터를 이용하여 위변조 여부를 검증함으로써, 악의적인 제3자에 의해 위/변조된 비디오 데이터를 정확하게 검증할 수 있다.According to the present invention, if forgery verification of video data is required after inserting the additional data for forgery prevention to the video data, it is verified whether the forgery or falsification is performed using the inserted additional data, The modulated video data can be accurately verified.
도 1은 본 발명의 일 실시 예에 따른 데이터의 위변조 방지 장치의 내부 구성을 개략적으로 도시한 블록도이다.
도 2는 도 1에 도시한 해시값 생성부에서 제2 해시값을 생성하는 과정을 도식적으로 나타낸 도면이다.
도 3은 본 발명의 일 실시 예에 따른 비디오 데이터의 위/변조 방지 방법을 나타내는 흐름도이다.
도 4는 본 발명의 일 실시 예에 따른 비디오 데이터의 위변 검증 과정을 나타내는 흐름도이다.1 is a block diagram schematically illustrating an internal configuration of an apparatus for preventing forgery and falsification of data according to an embodiment of the present invention.
2 is a diagram schematically illustrating a process of generating a second hash value in the hash value generator shown in FIG.
FIG. 3 is a flowchart illustrating a method of preventing the up / down of video data according to an embodiment of the present invention.
4 is a flowchart illustrating a procedure of verifying a video data according to an exemplary embodiment of the present invention.
본 발명은 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 이하의 실시 예들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 목적, 구성 및 효과를 용이하게 알려주기 위해 제공되는 것일 뿐으로서, 본 발명의 권리범위는 청구항의 기재에 의해 정의된다. 한편, 본 명세서에서 사용된 용어는 실시 예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성소자, 단계, 동작 및/또는 소자가 하나 이상의 다른 구성소자, 단계, 동작 및/또는 소자의 존재 또는 추가됨을 배제하지 않는다.It will be understood by those skilled in the art that the present invention may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. And the scope of the present invention is defined by the description of the claims. It is to be understood that the terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. In the present specification, the singular form includes plural forms unless otherwise specified in the specification. &Quot; comprises " and / or " comprising ", as used herein, unless the recited component, step, operation, and / Or added.
도 1은 본 발명의 일 실시 예에 따른 데이터의 위변조 방지 장치의 내부 구성을 개략적으로 도시한 블록도이다.1 is a block diagram schematically illustrating an internal configuration of an apparatus for preventing forgery and falsification of data according to an embodiment of the present invention.
도 1을 참조하면, 본 발명의 일 실시 예에 따른 데이터의 위변조 방지 장치(100)는, 데이터의 위변조를 방지하기 위해, 데이터의 위변조를 검증할 수 있는 부가 데이터를 생성하고, 생성된 부가 데이터를 데이터에 삽입하는 처리를 수행할 수 있다. Referring to FIG. 1, an
본 명세서에서 부가 데이터가 삽입되는 데이터는 차량충돌, 폭행 등과 같은 사건/사고 발생시에 사건/사고의 경위를 파악하는데 활용될 수 있는 데이터로 정의한다. 특별히 한정하는 것은 아니지만, 설명의 편의를 위해, 데이터는 비디오 데이터로 한정한다.In the present specification, the data into which the additional data is inserted is defined as data that can be utilized to identify the event / accident occurrence in the event / accident such as a vehicle collision, assault, or the like. For convenience of explanation, the data is limited to video data.
비디오 데이터의 위변조를 방지하기 위한 본 발명의 일 실시 예에 따른 데이터의 위변조 방지 장치(100)는 컴퓨터 프로세서를 포함하는 전자 장치일 수 있다. 전자 장치는, 예를 들면, CCTV, 블랙박스, 스마트폰 등일 수 있으며, 이에 한정하지 않고, 영상을 촬영할 수 있는 장치라면, 그 종류에 제한이 없다. 또한, 전자 장치는, 통신 기능을 가지며, 네트워크(200)에 접속 가능한 외부 전자장치(300)와 통신할 수 있는 장치일 수 있다. 따라서, 본 발명의 일 실시 예에 따른 비디오 데이터의 위변조 방지 장치(100)는 부가 데이터가 삽입된 비디오 데이터를 외부 전자장치(300)에 송신할 수 있으며, 외부 전자장치(300)는 비디오 데이터에 삽입된 부가 데이터를 검증하여 비디오 데이터의 위/변조 여부를 판별할 수 있다.The data
구체적으로, 본 발명의 일 실시 예에 따른 비디오 데이터의 위변조 방지 장치(100)는 저장부(110), 파싱부(120), 해시값 생성부(130), 메모리(140), 삽입부(150) 및 통신부(160)를 포함할 수 있다.In more detail, the video data
파싱부(120), 해시값 생성부(130) 및 삽입부(150)는 각각 소프트웨어 모듈 또는 하드웨어 모듈로 구현될 수 있다. 소프트웨어 모듈은 다수의 연산코드와 함수로 이루어진 '프로그램'으로 지칭될 수 있다. 프로그램으로 지칭될 수 있는 소프웨어 모듈은 저장부(150)에 저장될 수 있고, 컴퓨터 프로세서의 명령에 따라, 메모리(130)의 실행 공간으로 이동하여 실행될 수 있다.The
소프트웨어 모듈 또는 하드웨어 모듈로 구현될 수 있는 파싱부(110), 해시값 생성부(120) 및 삽입부(140)는 하나의 모듈로 통합될 수 있다. 하나의 모듈은 범용의 컴퓨터 프로세서이거나 범용의 컴퓨터 프로세서 내에 내장될 수 있다. 범용의 컴퓨터 프로세서는 그래픽 프로세서일 수 있다. The
저장부(110)는 동영상 파일을 저장하고, 파싱부(120)의 요청에 따라, 동영상 파일을 파싱부(120)로 출력한다. 동영상 파일은 비디오 데이터, 오디오 데이터 및 이들의 메타 정보를 포함한다. The
비디오 데이터는 프레임 단위로 연속되는 다수의 비디오 프레임을 포함할 수 있다. 오디오 데이터는 마찬가지로 프레임 단위로 구분되는 연속된 다수의 오디오 프레임을 포함한다. 메타 정보는 비디오 데이터를 설명하는 메타 정보와 오디오 데이터를 설명하는 메타 정보를 포함한다.The video data may include a plurality of video frames that are consecutive on a frame basis. The audio data likewise includes a plurality of consecutive audio frames, which are divided into frames. The meta information includes meta information describing the video data and meta information describing the audio data.
동영상 파일이 'AVI 파일'인 경우, 비디오 데이터를 설명하는 메타 정보는 AVI Index 리스트 정보를 포함할 수 있다. 동영상 파일이 'MP4'인 경우, 비디오 데이터를 설명하는 메타 정보는 stsc 테이블, stco 테이블 및 stsz 테이블 정보를 포함할 수 있다.If the video file is an AVI file, the meta information describing the video data may include AVI Index list information. If the video file is 'MP4', the meta information describing the video data may include stsc table, stco table, and stsz table information.
파싱부(120)는 동영상 파일에 포함된 비디오 데이터에 대한 메타 정보를 파싱(Parsing)하여, 다수의 비디오 프레임 각각에 대한 비디오 프레임 데이터를 프레임 단위로 획득한다. 파싱부(120)는 프레임 단위로 획득한 비디오 프레임 데이터를 해시값 생성부(130)로 순차적으로 출력한다.The
비디오 프레임 데이터는, 예를 들면, 부가 데이터가 삽입될 전체 비디오 프레임의 개수값, 각 비디오 프레임의 오프셋값, 각 비디오 프레임의 데이터 크기값 등을 포함할 수 있다. 여기서, 비디오 프레임의 오프셋값은 동영상 파일 내에서 각 비디오 프레임의 위치값을 바이트(Bytes) 단위로 나타낸 정보로 정의할 수 있다. 비디오 프레임의 데이터 크기값도 바이트(Bytes) 단위로 나타낸 정보일 수 있다.The video frame data may include, for example, the number of total video frames to which the additional data is to be inserted, the offset value of each video frame, the data size value of each video frame, and the like. Here, the offset value of the video frame may be defined as information indicating the position value of each video frame in the moving image file in units of bytes. The data size value of the video frame may also be information expressed in bytes.
해시값 생성부(130)는 파싱부(130)로부터 출력되는 비디오 프레임 데이터, 키(Key)값 및 이전 프레임의 해시값(h n-1 )을 해시함수(hash function)로 연산하여 현재 프레임의 해시값(H n )을 부가 데이터로서 생성한다.The hash
이를 위해, 해시값 생성부(130)는 제1 해시값 생성부(132)와 제2 해시값 생성부(134)를 포함할 수 있다.For this purpose, the
제1 해시값 생성부(132)는 파싱부(130)로부터 출력되는 현재 프레임의 비디오 프레임 데이터와 키(Key)값을 결합하고, 결합된 현재 프레임의 비디오 프레임 데이터와 키(Key)값을 해시함수로 연산하여 현재 프레임(n)의 제1 해시값(h n )을 생성하고, 이를 제2 해시값 생성부(134)로 출력하고, 동시에 메모리(140)에 저장할 수 있다. 해시함수는, 예를 들면, 암호화 해시함수의 일종인 MD5(Message-Digest algorithm 5), SHA(Secure Hash Algorithm) 등을 포함할 수 있다. 해시함수에 대한 설명은 본 발명의 요지를 벗어나는 것이므로, 이에 대한 상세 설명은 생략한다.The first
제2 해시값 생성부(134)는 제1 해시값 생성부(132)로부터의 현재 프레임의 제1 해시값(h n ), 제1 해시값 생성부(134)에서 사용한 키(Key)값 및 메모리(140)부터 출력되는 이전 프레임의 제1 해시값(h n-1 )을 결합하고, 결합된 현재 프레임의 제1 해시값(h n ), 키(Key)값 및 이전 프레임의 제1 해시값(h n-1 )을 해시함수로 연산하여 현재 프레임의 제2 해시값(H n )을 부가 데이터로서 생성할 수 있다. 제2 해시값 생성부(134)는 생성된 부가 데이터, 즉, 현재 프레임의 제2 해시값(H n )을 삽입부(150)로 출력할 수 있다.The second
메모리(140)는 제1 해시값 생성부(132)에서 생성한 각 프레임의 제1 해시값을 저장하고, 현재 프레임의 제1 해시값(h n )에 응답하여 이전 프레임에서 저장한 제1 해시값(h n-1 )을 출력하는 저장 매체로서, 휘발성 및 비휘발성 메모리를 포함할 수 있다.The
삽입부(150)는 제2 해시값 생성부(134)로부터의 부가 데이터, 즉, 현재 프레임의 제2 해시값(H n )을 현재 프레임과 다음 프레임 사이에 삽입한다.The
파싱부(120)에서 수행되는 파싱 과정부터 삽입부(150)에서 수행되는 삽입 과정에 이르는 처리 과정은 마지막 프레임까지 반복적으로 수행된다. 따라서, 현재 프레임이 마지막 프레임인 경우, 마지막 프레임의 제2 해시값을 마지막 비디오 프레임의 뒤에 삽입하는 과정으로 비디오 데이터에 부가 데이터를 삽입하는 일련의 과정은 종료될 수 있다.The process from parsing performed by the
한편, 비디오 프레임들 사이에 부가 데이터, 즉, 제2 해시값(H n )이 삽입되었으므로, 기존의 각 비디오 프레임의 오프셋값을 제2 해시값(H n )의 삽입에 따라 변경된 오프셋값으로 갱신하고, 갱신한 오프세값은 저장부(110)에 저장될 수 있다.Since the additional data, i.e., the second hash value H n , is inserted between the video frames, the offset value of each existing video frame is updated to the changed offset value according to the insertion of the second hash value H n And the updated offset value may be stored in the
도 2는 도 1에 도시한 해시값 생성부에서 제2 해시값을 생성하는 과정을 도식적으로 나타낸 도면이다.2 is a diagram schematically illustrating a process of generating a second hash value in the hash value generator shown in FIG.
도 2에서, 비디오 데이터가 3개의 비디오 프레임으로 구성된 경우에서 제2 해시값 생성과정의 예를 도시한 것으로서, 이는 설명의 간략화를 위하여 과장된 예를 도시한 것이다.FIG. 2 shows an example of a second hash value generation process in the case where the video data is composed of three video frames, which shows an exaggerated example in order to simplify the description.
먼저, 첫 번째 프레임의 제2 해시값(H 1 )을 생성하기 위해, 첫 번째 프레임의 비디오 프레임에 대한 파싱 과정으로부터 획득한 첫 번째 프레임의 비디오 프레임 데이터(F(1))와 키(Key)값이 결합되고, 해시 함수가 상기 결합된 첫 번째 프레임의 비디오 프레임 데이터(F(1))와 키(Key)값에 대해 해시 연산을 수행하여 첫 번째 프레임의 제1 해시값(h 1 )을 생성한다. 이후, 해시 함수가 첫 번째 프레임의 제1 해시값(h 1 )과 키(Key)값을 결합하고, 결합한 첫 번째 프레임의 제1 해시값(h 1 )과 키(Key)값에 대해 해시 연산을 다시 수행하여 첫 번째 프레임의 제2 해시값(H 1 ), 즉, 첫 번째 비디오 프레임과 두 번째 비디오 프레임 사이에 삽입되는 부가 데이터가 생성된다.In order to generate the second hash value H 1 of the first frame, the video frame data F (1 ) and the key of the first frame obtained from the parsing process for the video frame of the first frame are generated, Values are combined and the hash function performs a hash operation on the video frame data F (1 ) and the key value of the combined first frame to obtain a first hash value h 1 of the first frame . Then, the hash function is a first hash value (h 1) and key (Key) combine the values, and the first hash value for the first frame combination (h 1) and a hash operation on the values Key (Key) of the first frame The additional data inserted between the first video frame and the second video frame is generated by performing the second hash value H 1 of the first frame again.
두 번째 프레임의 제2 해시값(H 2 )을 생성하기 위해, 두 번째 프레임의 비디오 프레임에 대한 파싱 과정으로부터 획득한 두 번째 프레임의 비디오 프레임 데이터(F(2))와 키(Key)값이 결합되고, 해시 함수가 상기 결합된 두 번째 프레임의 비디오 프레임 데이터(F(2))와 키(Key)값에 대해 해시 연산을 수행하여 두 번째 프레임의 제2 해시값(h 2 )을 생성한다. 이후, 해시 함수가 두 번째 프레임의 제1 해시값(h 2 ), 키(Key)값 및 첫 번째 프레임에서 생성된 제1 해시값(h 1 )을 결합하고, 결합한 두 번째 프레임의 제1 해시값(h 2 ), 키(Key)값 및 첫 번째 프레임에서 생성된 제1 해시값(h 1 )에 대해 해시 연산을 다시 수행하여 두 번째 프레임의 제2 해시값(H 2 ), 즉, 두 번째 비디오 프레임과 세 번째 비디오 프레임 사이에 삽입되는 부가 데이터가 생성된다.In order to generate the second hash value ( H 2 ) of the second frame, the video frame data F (2 ) and the key value of the second frame obtained from the parsing process for the video frame of the second frame And a hash function performs a hash operation on the video frame data F (2 ) and the key value of the combined second frame to generate a second hash value h 2 of the second frame . Then, the hash function combines the first hash value ( h 2 ), the key value of the second frame and the first hash value ( h 1 ) generated in the first frame, and combines the first hash value value (h 2), key (key) value and the first to again perform a hash operation on the first hash value (h 1) generated by the second frame both the second hash value of the second frame (H 2), that is, two The additional data inserted between the first video frame and the third video frame is generated.
세 번째 프레임의 제2 해시값(H 3 )을 생성하기 위해, 세 번째 프레임의 비디오 프레임에 대한 파싱 과정으로부터 획득한 세 번째 프레임의 비디오 프레임 데이터(F(3))와 키(Key)값이 결합되고, 해시 함수가 상기 결합된 세 번째 프레임의 비디오 프레임 데이터(F(3))와 키(Key)값에 대해 해시 연산을 수행하여 세 번째 프레임의 제2 해시값(h 3 )을 생성한다. 이후, 해시 함수가 세 번째 프레임의 제1 해시값(h 3 ), 키(Key)값 및 두 번째 프레임에서 생성된 제1 해시값(h 2 )을 결합하고, 상기 결합한 세 번째 프레임의 제1 해시값(h 3 ), 키(Key)값 및 두 번째 프레임에서 생성된 제1 해시값(h 2 )에 대해 해시 연산을 다시 수행하여 세 번째 프레임의 제2 해시값(H 2 ), 즉, 세 번째 비디오 프레임의 뒤에 삽입되는 부가 데이터가 생성된다.In order to generate the second hash value ( H 3 ) of the third frame, the video frame data F (3 ) and the key value of the third frame obtained from the parsing process for the video frame of the third frame And a hash function performs a hash operation on the video frame data F (3 ) and the key value of the combined third frame to generate a second hash value h 3 of the third frame . Then, the first hash value of the third frame is a hash function (h 3), Key (Key) values, and both the first hash value generated by the second frame (h 2) the coupling, and the first of the third frame which combines the The second hash value ( H 2 ) of the third frame, that is, the hash value ( h 3 ), the key value and the first hash value ( h 2 ) generated in the second frame, Additional data inserted after the third video frame is generated.
도 3은 본 발명의 일 실시 예에 따른 비디오 데이터의 위/변조 방지 방법을 나타내는 흐름도이다.FIG. 3 is a flowchart illustrating a method of preventing the up / down of video data according to an embodiment of the present invention.
도 3을 참조하면, 먼저, 단계 S310에서, 비디오 데이터의 메타 정보를 파싱하여 N번째 프레임의 비디오 프레임에 대한 비디오 프레임 데이터를 획득하는 과정이 수행된다.Referring to FIG. 3, in step S310, a process of parsing meta information of video data to acquire video frame data of a video frame of an Nth frame is performed.
이어, 단계 S320에서, N번째 프레임의 비디오 프레임 데이터와 키값을 조합하고, 그 조합 결과를 해시함수로 연산하여 제1 해시값을 생성하는 과정이 수행된다.Next, in step S320, the process of combining the video frame data of the Nth frame and the key value and calculating the combination result using the hash function to generate the first hash value is performed.
이어, 단계 S330에서, N번째 프레임의 제1 해시값, 키값 및 N-1번째 프레임의 제1 해시값을 조합하고, 그 조합 결과를 해시함수로 연산하여 제2 해시값을 생성하는 과정이 수행된다.Next, in step S330, a process of combining the first hash value of the Nth frame, the key value, and the first hash value of the (N-1) th frame is performed, and the result of the combination is computed by the hash function to generate the second hash value do.
이어, 단계 S340에서, 상기 제2 해시값을 N번째 프레임의 비디오 프레임의 뒤에 삽입하는 과정이 수행된다.In step S340, a process of inserting the second hash value after the video frame of the Nth frame is performed.
이어, 단계 S350에서, N번째 프레임이 마지막 프레임인지를 판별하는 과정이 수행된다. N번째 프레임이 마지막 프레임이 아닌 경우, 단계 S310 내지 S340을 재수행한다. In step S350, a process of determining whether the Nth frame is the last frame is performed. If the N-th frame is not the last frame, steps S310 to S340 are performed again.
N번째 프레임이 마지막 프레임인 경우, 단계 S360에서, 각 비디오 프레임의 비디오 프레임 데이터에 포함된 오프셋 값을 갱신하고, 갱신된 오프셋 값을 이용하여 비디오 데이터의 메타 정보를 재 구성한 후, 저장부에 저장된 기존의 메타 정보를 갱신한다. 이러한 갱신 과정을 끝으로, 비디오 데이터의 위/변조 방지하기 위해, 비디오 데이터에 부가 데이터(또는 제2 해시값)를 삽입하는 일련 모든 과정이 종료된다.If the Nth frame is the last frame, in step S360, the offset value included in the video frame data of each video frame is updated, the meta information of the video data is reconstructed using the updated offset value, Update the existing meta information. At the end of this updating process, all the processes of inserting the additional data (or the second hash value) into the video data are ended in order to prevent the video data from being struck / tampered.
도 4는 본 발명의 일 실시 예에 따른 비디오 데이터의 위변 검증 과정을 나타내는 흐름도이다.4 is a flowchart illustrating a procedure of verifying a video data according to an exemplary embodiment of the present invention.
도 4를 참조하면, 본 발명의 일 실시 예에 따른 비디오 데이터의 위변 검증 과정은 비디오 데이터를 구성하는 연속된 비디오 프레임 사이에 삽입된 부가 데이터를 기반으로 비디오 데이터의 위변조 여부를 검증하는 과정이다.Referring to FIG. 4, the process of verifying the side of video data according to an embodiment of the present invention is a process of verifying whether video data is forged or modified based on additional data inserted between consecutive video frames constituting the video data.
비디오 데이터의 위변 검증 과정은 별도의 검증 장치에서 수행될 수 있다. 검증 장치는 유무선 통신 기능을 갖는 통신 장치 및 데이터 검증과 관련된 프로그램을 실행할 수 있는 컴퓨터 프로세서를 구비한 전자 장치일 수 있다. 즉, 검증 장치는 도 1에서 참조번호 300이 지시하는 외부 전자장치일 수 있다.The process of verifying the sub-side of the video data may be performed in a separate verification apparatus. The verification device may be an electronic device having a communication device having a wired / wireless communication function and a computer processor capable of executing a program related to data verification. That is, the verification device may be an external electronic device indicated by
검증 장치는 유무선 통신 기능을 이용해 위변조 방지 장치(100)로부터 부가 데이터가 삽입된 비디오 데이터를 수신하고, 수신된 비디오 데이터에 삽입된 부가 데이터를 기반으로 비디오 데이터의 위변조 여부를 검증할 수 있다.The verification apparatus can receive the video data in which the additional data is inserted from the
구체적으로, 단계 S410에서, 검증 장치는, 위변조 방지 장치(100) 또는 위변조 방지 장치(100)가 탑재된 다른 장치로부터 비디오 데이터를 수신하고, 수신된 비디오 데이터를 구성하는 연속된 비디오 프레임 사이에 삽입된 부가 데이터, 즉, 제2 해시값을 추출하는 과정을 수행한다. 제2 해시값을 추출하는 방법은 데이터 위변조 방지 장치로부터 수신된 메타 정보를 파싱하고, 그 파싱 결과를 이용하여 연속된 비디오 프레임 사이에 삽입된 부가 데이터, 즉, 제2 해시값을 추출할 수 있다.Specifically, in step S410, the verifying device receives video data from the
이어, 단계 S420에서, 도 3에 도시한 단계 S310, S320 및 S330과 동일한 과정을 수행하여 비디오 프레임의 제2 해시값을 생성하는 과정이 수행된다. 이러한 과정을 수행하기 위해, 검증 장치는, 도 1에 도시한 파싱부(120) 및 해시값 생성부(130)와 동일한 기능을 갖는 소프트웨어 모듈 또는 하드웨어 모듈을 포함하도록 구성된 컴퓨터 프로세서를 구비한 장치일 수 있다.In step S420, the same process as steps S310, S320, and S330 shown in FIG. 3 is performed to generate a second hash value of the video frame. In order to perform this process, the verification apparatus is a device having a computer processor configured to include a software module or a hardware module having the same function as the
이어, 단계 S430에서, 단계 S410에서 추출된 부가 데이터(제2 해시값)와 단계 S420에서 생성한 제2 해시값을 프레임 단위로 비교하는 과정이 수행된다.Next, in step S430, the process of comparing the additional data (second hash value) extracted in step S410 and the second hash value generated in step S420 on a frame-by-frame basis is performed.
이어, 특정 프레임에서 단계 S410에서 추출된 제2 해시값과 단계 S420에서 생성한 제2 해시값이 동일한 경우, 단계 S440에서 특정 프레임의 비디오 프레임을 위·변조 되지 않은 무결성 프레임으로 판별하고, 반대의 경우, 단계 S450에서 특정 프레임의 비디오 프레임을 위변조된 프레임으로 판별한다.If the second hash value extracted in step S410 and the second hash value generated in step S420 are identical to each other in step S410, the video frame of the specific frame is determined as a non-modulated integrity frame in step S440, , The video frame of the specific frame is determined as a forged frame in step S450.
이상에서 본 발명에 대하여 실시 예를 중심으로 설명하였으나 이는 단지 예시일 뿐 본 발명을 한정하는 것이 아니며, 본 발명이 속하는 분야의 통상의 지식을 가진 자라면 본 발명의 본질적인 특성을 벗어나지 않는 범위에서 이상에 예시되지 않은 여러 가지의 변형과 응용이 가능함을 알 수 있을 것이다. 예를 들어, 본 발명의 실시예에 구체적으로 나타난 각 구성 요소는 변형하여 실시할 수 있는 것이다. 그리고 이러한 변형과 응용에 관계된 차이점들은 첨부된 청구 범위에서 규정하는 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, but, on the contrary, It will be understood that various modifications and applications not illustrated in the drawings are possible. For example, each component specifically shown in the embodiments of the present invention can be modified and implemented. It is to be understood that all changes and modifications that come within the meaning and range of equivalency of the claims are therefore intended to be embraced therein.
Claims (7)
상기 비디오 프레임 데이터, 키(Key)값 및 N-1번째 프레임의 해시값을 해시함수로 연산하여 해시값(H)을 생성하는 단계; 및
상기 해시값(H)을 상기 N번째 프레임의 비디오 프레임과 N+1번째 프레임의 비디오 프레임 사이에 삽입하는 단계;
를 포함하는 비디오 데이터의 위변조 방지 방법.
Parsing meta information of a video frame to obtain video frame data for a video frame of an Nth frame;
Generating a hash value ( H ) by calculating the video frame data, the key value, and the hash value of the (N-1) th frame using a hash function; And
Inserting the hash value ( H ) between a video frame of the Nth frame and a video frame of the (N + 1) th frame;
And forgery prevention of video data.
상기 비디오 프레임 데이터와 상기 키(Key)값을 조합하는 단계;
상기 조합된 비디오 프레임 데이터와 키(Key)값을 해시함수로 연산하여 제1 해시값(h)을 생성하는 단계; 및
상기 제1 해시값, 상기 키(Key)값 및 상기 N-1번째 프레임의 해시값을 조합하는 단계; 및
상기 조합된 제1 해시값, 키(Key)값 및 N-1번째 프레임의 해시값을 해시함수로 연산하여 제2 해시값을 상기 해시값(H)으로서 생성하는 단계
를 포함하는 비디오 데이터의 위변조 방지 방법.
2. The method of claim 1, wherein generating the hash value ( H )
Combining the video frame data and the key value;
Generating a first hash value ( h ) by operating the combined video frame data and a key value with a hash function; And
Combining the first hash value, the key value, and the hash value of the (N-1) th frame; And
Generating the combined hash value, the key value, and the hash value of the (N-1) th frame with a hash function to generate a second hash value as the hash value ( H )
And forgery prevention of video data.
상기 삽입하는 단계 이후, 기존의 오프셋값을 상기 해시값(H)의 삽입에 따라 변경된 오프셋값으로 갱신하는 단계
를 더 포함하는 것인 비디오 데이터의 위변조 방지 방법.
2. The method of claim 1, wherein the video frame data includes an offset value indicating a position value of each video frame,
After the inserting step, the existing offset value is updated with the changed offset value according to the insertion of the hash value ( H )
Wherein the video data is forgery-inhibited.
상기 N번째 프레임이 마지막 프레임인지 확인하는 단계;
상기 N번째 프레임이 마지막 프레임이 아닌 경우, 상기 N+1번째 프레임의 비디오 프레임에 대해 상기 획득하는 단계, 상기 생성하는 단계 및 상기 삽입하는 단계를 수행하는 단계; 및
상기 N번째 프레임이 마지막 프레임인 경우, 상기 해시값(H)을 상기 N번째 프레임의 비디오 프레임의 뒤에 삽입하는 과정을 끝으로 모든 과정을 종료하는 단계
를 포함하는 것인 비디오 데이터의 위변조 방지 방법.
2. The method of claim 1,
Determining whether the Nth frame is the last frame;
Performing the step of acquiring, generating and inserting the video frame of the (N + 1) th frame if the Nth frame is not the last frame; And
If the Nth frame is the last frame, inserting the hash value ( H ) after the video frame of the Nth frame ends the entire process
And forcibly preventing the video data from being forgery-inhibited.
N번째 프레임의 비디오 프레임에 대한 비디오 프레임 데이터를 획득하도록 비디오 프레임의 메타 정보를 파싱하는 파싱부;
상기 비디오 프레임 데이터, 키(Key)값 및 N-1번째 프레임의 해시값을 해시함수로 연산하여 해시값(H)을 생성하는 해시값 생성부; 및
상기 해시값(H)을 상기 N번째 프레임의 비디오 프레임과 N+1번째 프레임의 비디오 프레임 사이에 삽입하는 삽입부
를 포함하는 비디오 데이터의 위변조 방지 장치.
In a video data forgery prevention apparatus having a computer processor,
A parser for parsing meta information of a video frame to obtain video frame data for a video frame of an Nth frame;
A hash value generating unit for generating the hash value ( H ) by calculating the video frame data, the key value and the hash value of the (N-1) th frame using a hash function; And
And an insertion unit for inserting the hash value ( H ) between the video frame of the N-th frame and the video frame of the (N + 1)
And forcibly preventing the video data from being forgery-inhibited.
상기 비디오 프레임 데이터와 상기 키(Key)값을 조합하고, 조합된 비디오 프레임 데이터와 키(Key)값을 해시함수로 연산하여 제1 해시값(h)을 생성하는 제1 해시값 생성부; 및
상기 제1 해시값, 상기 키(Key)값 및 상기 N-1번째 프레임의 해시값을 조합하고, 조합된 제1 해시값, 키(Key)값 및 N-1번째 프레임의 해시값을 해시함수로 연산하여 제2 해시값을 상기 해시값(H)으로서 생성하는 제2 해시값 생성부
를 포함하는 것인 비디오 데이터의 위변조 방지 장치.
6. The apparatus of claim 5,
A first hash value generation unit that combines the video frame data and the key value and generates a first hash value h by operating the combined video frame data and the key value with a hash function; And
(N-1) -th frame is obtained by combining the first hash value, the key value, and the hash value of the (N-1) To generate a second hash value as the hash value ( H )
And forcibly preventing the video data from being forgery-inhibited.
상기 컴퓨터 프로세서는,
기존의 오프셋값을 상기 해시값(H)의 삽입에 따라 변경된 오프셋값으로 갱신하는 것인 비디오 데이터의 위변조 방지 장치.6. The method of claim 5, wherein the video frame data includes an offset value indicating a position value of each video frame,
The computer processor comprising:
And updates an existing offset value to a changed offset value in accordance with insertion of the hash value ( H ).
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170147083A KR102275868B1 (en) | 2017-11-07 | 2017-11-07 | Apparatus and Method for Falsification Protection of Video Data |
PCT/KR2017/013005 WO2019093561A1 (en) | 2017-11-07 | 2017-11-16 | Apparatus and method for preventing forgery/falsification of video data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170147083A KR102275868B1 (en) | 2017-11-07 | 2017-11-07 | Apparatus and Method for Falsification Protection of Video Data |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190051430A true KR20190051430A (en) | 2019-05-15 |
KR102275868B1 KR102275868B1 (en) | 2021-07-12 |
Family
ID=66438521
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170147083A KR102275868B1 (en) | 2017-11-07 | 2017-11-07 | Apparatus and Method for Falsification Protection of Video Data |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR102275868B1 (en) |
WO (1) | WO2019093561A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102516548B1 (en) * | 2021-03-10 | 2023-03-31 | 숭실대학교 산학협력단 | System and method for preventing forgery of video based on blockchain and computer program for the same |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050108515A (en) * | 2004-05-12 | 2005-11-17 | (주)펜타마이크로 | Method of protection of dct image data against forgery |
KR20070073465A (en) * | 2006-01-05 | 2007-07-10 | (주)아이디스 | Data processing device of using hash function and data processing method of using the same |
JP2007232754A (en) * | 2006-02-27 | 2007-09-13 | Toshiba Corp | Hash value generating device and method |
JP2008011535A (en) * | 2006-06-29 | 2008-01-17 | Samsung Electronics Co Ltd | Device and method for providing video stream having integrity |
KR20080094341A (en) * | 2007-04-20 | 2008-10-23 | 삼성전자주식회사 | Method and apparatus for digital wartermarking |
KR20110066707A (en) * | 2009-12-11 | 2011-06-17 | 한국전자통신연구원 | Method for implementing key sharing and update mechanism utilizing watermark |
KR20160046630A (en) * | 2014-10-21 | 2016-04-29 | 숭실대학교산학협력단 | Apparatus and method for tamper detection of mobile apps using real time hashing technique attestation |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6975743B2 (en) * | 2001-04-24 | 2005-12-13 | Microsoft Corporation | Robust and stealthy video watermarking into regions of successive frames |
KR20090000228A (en) * | 2007-02-05 | 2009-01-07 | 삼성전자주식회사 | Method of providing and using contents enabled to verify integrity and apparatus thereof |
AR077680A1 (en) * | 2009-08-07 | 2011-09-14 | Dolby Int Ab | DATA FLOW AUTHENTICATION |
US8989376B2 (en) * | 2012-03-29 | 2015-03-24 | Alcatel Lucent | Method and apparatus for authenticating video content |
-
2017
- 2017-11-07 KR KR1020170147083A patent/KR102275868B1/en active IP Right Grant
- 2017-11-16 WO PCT/KR2017/013005 patent/WO2019093561A1/en active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050108515A (en) * | 2004-05-12 | 2005-11-17 | (주)펜타마이크로 | Method of protection of dct image data against forgery |
KR20070073465A (en) * | 2006-01-05 | 2007-07-10 | (주)아이디스 | Data processing device of using hash function and data processing method of using the same |
JP2007232754A (en) * | 2006-02-27 | 2007-09-13 | Toshiba Corp | Hash value generating device and method |
JP2008011535A (en) * | 2006-06-29 | 2008-01-17 | Samsung Electronics Co Ltd | Device and method for providing video stream having integrity |
KR20080094341A (en) * | 2007-04-20 | 2008-10-23 | 삼성전자주식회사 | Method and apparatus for digital wartermarking |
KR20110066707A (en) * | 2009-12-11 | 2011-06-17 | 한국전자통신연구원 | Method for implementing key sharing and update mechanism utilizing watermark |
KR20160046630A (en) * | 2014-10-21 | 2016-04-29 | 숭실대학교산학협력단 | Apparatus and method for tamper detection of mobile apps using real time hashing technique attestation |
Also Published As
Publication number | Publication date |
---|---|
KR102275868B1 (en) | 2021-07-12 |
WO2019093561A1 (en) | 2019-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8904184B2 (en) | Certification of authenticity of media signals | |
US7639818B2 (en) | Structured document signature device, structured document adaptation device and structured document verification device | |
US20180249190A1 (en) | Method and apparatus for cloud storage and cloud download of multimedia data | |
KR20040098025A (en) | Watermaking a digital object with a digital signature | |
CN106548092A (en) | File processing method and device | |
US20120078864A1 (en) | Electronic data integrity protection device and method and data monitoring system | |
CN113065169B (en) | File storage method, device and equipment | |
US20230074748A1 (en) | Digital forensic image verification system | |
CN110800312B (en) | Media channel monitoring for attesting to content presentation | |
CN106797497A (en) | Alleviate the collusion attack to watermark content | |
CN110022355B (en) | Storage method, verification method and equipment of environment data in specific scene | |
CN106982372B (en) | Image processing method and apparatus | |
KR101677110B1 (en) | Watermark extracting and insertion apparatus for video forgery detection and prevention based zero-knowledge and the method thereof | |
CN110929230B (en) | Work management method, device, equipment and storage medium | |
US20140294229A1 (en) | Method and Device for Watermarking a Sequence of Images, Method and Device for Authenticating a Sequence of Watermarked Images and Corresponding Computer Program | |
CN107171808A (en) | A kind of verification method and device of electronic record authenticity | |
KR20050013620A (en) | Robust signature for signal authentication | |
KR20190051430A (en) | Apparatus and Method for Falsification Protection of Video Data | |
JP2009128956A (en) | Data processor, data processing method and program | |
JP2004364263A (en) | Information embedding apparatus and method, tampering detecting apparatus and method, and recording medium | |
KR20210035757A (en) | System and method for verification of video integrity based on blockchain | |
CN111860726B (en) | Two-dimensional code display method, verification method, device and computer readable storage medium | |
CN109509095B (en) | Video active identification method combined with block chain | |
US20110208969A1 (en) | Method and apparatus for providing authenticity and integrity to stored data | |
CN117113439B (en) | Safe anti-tampering storage method and system for data of automobile data recorder |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |