KR102275868B1 - 비디오 데이터의 위/변조 방지 장치 및 방법 - Google Patents

비디오 데이터의 위/변조 방지 장치 및 방법 Download PDF

Info

Publication number
KR102275868B1
KR102275868B1 KR1020170147083A KR20170147083A KR102275868B1 KR 102275868 B1 KR102275868 B1 KR 102275868B1 KR 1020170147083 A KR1020170147083 A KR 1020170147083A KR 20170147083 A KR20170147083 A KR 20170147083A KR 102275868 B1 KR102275868 B1 KR 102275868B1
Authority
KR
South Korea
Prior art keywords
frame
hash value
value
video
data
Prior art date
Application number
KR1020170147083A
Other languages
English (en)
Other versions
KR20190051430A (ko
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 KR1020170147083A priority Critical patent/KR102275868B1/ko
Priority to PCT/KR2017/013005 priority patent/WO2019093561A1/ko
Publication of KR20190051430A publication Critical patent/KR20190051430A/ko
Application granted granted Critical
Publication of KR102275868B1 publication Critical patent/KR102275868B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2347Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption
    • 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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing 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/2389Multiplex stream processing, e.g. multiplex stream encrypting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
    • H04N21/4385Multiplex stream processing, e.g. multiplex stream decrypting

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Power Engineering (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

비디오 데이터의 위변조 방지 방법이 개시된다. 이 방법은, 비디오 프레임의 메타 정보를 파싱하여 N번째 프레임의 비디오 프레임에 대한 비디오 프레임 데이터를 획득하는 단계; 상기 비디오 프레임 데이터, 키(Key)값 및 N-1번째 프레임의 해시값을 해시함수로 연산하여 해시값(H)을 생성하는 단계; 및 상기 해시값(H)을 상기 N번째 프레임의 비디오 프레임과 N+1번째 프레임의 비디오 프레임 사이에 삽입하는 단계를 포함한다.

Description

비디오 데이터의 위/변조 방지 장치 및 방법{Apparatus and Method for Falsification Protection of Video Data}
본 발명은 비디오 데이터의 위/변조 방지 장치 및 그 방법에 관한 것으로, 상세하게는, 동영상에 포함된 비디오 데이터의 위/변조를 방지하는 기술에 관한 것이다.
최근, 차량충돌, 폭행 등과 같은 사건/사고 발생시, CCTV, 블랙박스, 휴대폰과 같은 기기에서 촬영된 동영상은 사건/사고의 경위를 파악하는 데 중요한 자료로 활용되고 있다. 때때로, 이러한 자료들은 증거자료로 이용될 수 있기 때문에, 그 동영상의 위조/변조 여부를 확인하는 것은 매우 중요하다.
비디오 데이터 및 오디오 데이터로 이루어진 동영상에서 비디오 데이터의 위조/변조 여부를 판별하는 경우, 종래에는 비디오 전문가의 소견에 따라 비디오 데이터의 위조/변조 여부를 판별하거나, 연속적인 비디오 프레임 간의 노이즈 변화, 비디오 데이터에 존재하는 객체의 연속성 등과 같은 비디오 데이터의 특징을 알고리즘을 이용하여 비디오 데이터의 위/변조 여부를 판별하는 방법들이 사용되었다.
그러나 비디오 전문가의 소견은 객관성이 떨어지기 때문에, 비디오 전문가의 소견에 따라 위조/변조 여부를 판별하는 것은 법적 분쟁을 유발할 수 있으며, 비디오 데이터의 특징을 알고리즘을 이용하여 분석하는 방법에서는 비디오 데이터의 조작이 정밀한 경우 그 위조/변조 여부를 판별할 수 없는 단점이 있다.
상술한 문제점을 해소하기 위해, 본 발명에서 해결하고자 하는 과제는 비디오 데이터의 위변조를 방지하는 데이터의 위변조 방지 장치 및 그 방법에 관한 것이다.
상술한 목적을 달성하기 위한 본 발명의 일면에 따른 비디오 데이터의 위변조 방지 방법은, 비디오 프레임의 메타 정보를 파싱하여 N번째 프레임의 비디오 프레임에 대한 비디오 프레임 데이터를 획득하는 단계; 상기 비디오 프레임 데이터, 키(Key)값 및 N-1번째 프레임의 해시값을 해시함수로 연산하여 해시값(H)을 생성하는 단계; 및 상기 해시값(H)을 상기 N번째 프레임의 비디오 프레임과 N+1번째 프레임의 비디오 프레임 사이에 삽입하는 단계;를 포함한다.
본 발명의 다른 일면에 따른 데이터의 위변조 방지 장치는, N번째 프레임의 비디오 프레임에 대한 비디오 프레임 데이터를 획득하도록 비디오 프레임의 메타 정보를 파싱하는 파싱부; 상기 비디오 프레임 데이터, 키(Key)값 및 N-1번째 프레임의 해시값을 해시함수로 연산하여 해시값(H)을 생성하는 해시값 생성부; 및
상기 해시값(H)을 상기 N번째 프레임의 비디오 프레임과 N+1번째 프레임의 비디오 프레임 사이에 삽입하는 삽입부를 포함한다.
본 발명에 따르면, 비디오 데이터에 위변조 방지를 위한 부가데이터를 삽입한 후, 비디오 데이터의 위변조 검증이 필요한 경우, 삽입된 부가데이터를 이용하여 위변조 여부를 검증함으로써, 악의적인 제3자에 의해 위/변조된 비디오 데이터를 정확하게 검증할 수 있다.
도 1은 본 발명의 일 실시 예에 따른 데이터의 위변조 방지 장치의 내부 구성을 개략적으로 도시한 블록도이다.
도 2는 도 1에 도시한 해시값 생성부에서 제2 해시값을 생성하는 과정을 도식적으로 나타낸 도면이다.
도 3은 본 발명의 일 실시 예에 따른 비디오 데이터의 위/변조 방지 방법을 나타내는 흐름도이다.
도 4는 본 발명의 일 실시 예에 따른 비디오 데이터의 위변 검증 과정을 나타내는 흐름도이다.
본 발명은 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 이하의 실시 예들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 목적, 구성 및 효과를 용이하게 알려주기 위해 제공되는 것일 뿐으로서, 본 발명의 권리범위는 청구항의 기재에 의해 정의된다. 한편, 본 명세서에서 사용된 용어는 실시 예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성소자, 단계, 동작 및/또는 소자가 하나 이상의 다른 구성소자, 단계, 동작 및/또는 소자의 존재 또는 추가됨을 배제하지 않는다.
도 1은 본 발명의 일 실시 예에 따른 데이터의 위변조 방지 장치의 내부 구성을 개략적으로 도시한 블록도이다.
도 1을 참조하면, 본 발명의 일 실시 예에 따른 데이터의 위변조 방지 장치(100)는, 데이터의 위변조를 방지하기 위해, 데이터의 위변조를 검증할 수 있는 부가 데이터를 생성하고, 생성된 부가 데이터를 데이터에 삽입하는 처리를 수행할 수 있다.
본 명세서에서 부가 데이터가 삽입되는 데이터는 차량충돌, 폭행 등과 같은 사건/사고 발생시에 사건/사고의 경위를 파악하는데 활용될 수 있는 데이터로 정의한다. 특별히 한정하는 것은 아니지만, 설명의 편의를 위해, 데이터는 비디오 데이터로 한정한다.
비디오 데이터의 위변조를 방지하기 위한 본 발명의 일 실시 예에 따른 데이터의 위변조 방지 장치(100)는 컴퓨터 프로세서를 포함하는 전자 장치일 수 있다. 전자 장치는, 예를 들면, CCTV, 블랙박스, 스마트폰 등일 수 있으며, 이에 한정하지 않고, 영상을 촬영할 수 있는 장치라면, 그 종류에 제한이 없다. 또한, 전자 장치는, 통신 기능을 가지며, 네트워크(200)에 접속 가능한 외부 전자장치(300)와 통신할 수 있는 장치일 수 있다. 따라서, 본 발명의 일 실시 예에 따른 비디오 데이터의 위변조 방지 장치(100)는 부가 데이터가 삽입된 비디오 데이터를 외부 전자장치(300)에 송신할 수 있으며, 외부 전자장치(300)는 비디오 데이터에 삽입된 부가 데이터를 검증하여 비디오 데이터의 위/변조 여부를 판별할 수 있다.
구체적으로, 본 발명의 일 실시 예에 따른 비디오 데이터의 위변조 방지 장치(100)는 저장부(110), 파싱부(120), 해시값 생성부(130), 메모리(140), 삽입부(150) 및 통신부(160)를 포함할 수 있다.
파싱부(120), 해시값 생성부(130) 및 삽입부(150)는 각각 소프트웨어 모듈 또는 하드웨어 모듈로 구현될 수 있다. 소프트웨어 모듈은 다수의 연산코드와 함수로 이루어진 '프로그램'으로 지칭될 수 있다. 프로그램으로 지칭될 수 있는 소프웨어 모듈은 저장부(150)에 저장될 수 있고, 컴퓨터 프로세서의 명령에 따라, 메모리(130)의 실행 공간으로 이동하여 실행될 수 있다.
소프트웨어 모듈 또는 하드웨어 모듈로 구현될 수 있는 파싱부(110), 해시값 생성부(120) 및 삽입부(140)는 하나의 모듈로 통합될 수 있다. 하나의 모듈은 범용의 컴퓨터 프로세서이거나 범용의 컴퓨터 프로세서 내에 내장될 수 있다. 범용의 컴퓨터 프로세서는 그래픽 프로세서일 수 있다.
저장부(110)는 동영상 파일을 저장하고, 파싱부(120)의 요청에 따라, 동영상 파일을 파싱부(120)로 출력한다. 동영상 파일은 비디오 데이터, 오디오 데이터 및 이들의 메타 정보를 포함한다.
비디오 데이터는 프레임 단위로 연속되는 다수의 비디오 프레임을 포함할 수 있다. 오디오 데이터는 마찬가지로 프레임 단위로 구분되는 연속된 다수의 오디오 프레임을 포함한다. 메타 정보는 비디오 데이터를 설명하는 메타 정보와 오디오 데이터를 설명하는 메타 정보를 포함한다.
동영상 파일이 'AVI 파일'인 경우, 비디오 데이터를 설명하는 메타 정보는 AVI Index 리스트 정보를 포함할 수 있다. 동영상 파일이 'MP4'인 경우, 비디오 데이터를 설명하는 메타 정보는 stsc 테이블, stco 테이블 및 stsz 테이블 정보를 포함할 수 있다.
파싱부(120)는 동영상 파일에 포함된 비디오 데이터에 대한 메타 정보를 파싱(Parsing)하여, 다수의 비디오 프레임 각각에 대한 비디오 프레임 데이터를 프레임 단위로 획득한다. 파싱부(120)는 프레임 단위로 획득한 비디오 프레임 데이터를 해시값 생성부(130)로 순차적으로 출력한다.
비디오 프레임 데이터는, 예를 들면, 부가 데이터가 삽입될 전체 비디오 프레임의 개수값, 각 비디오 프레임의 오프셋값, 각 비디오 프레임의 데이터 크기값 등을 포함할 수 있다. 여기서, 비디오 프레임의 오프셋값은 동영상 파일 내에서 각 비디오 프레임의 위치값을 바이트(Bytes) 단위로 나타낸 정보로 정의할 수 있다. 비디오 프레임의 데이터 크기값도 바이트(Bytes) 단위로 나타낸 정보일 수 있다.
해시값 생성부(130)는 파싱부(130)로부터 출력되는 비디오 프레임 데이터, 키(Key)값 및 이전 프레임의 해시값(h n-1 )을 해시함수(hash function)로 연산하여 현재 프레임의 해시값(H n )을 부가 데이터로서 생성한다.
이를 위해, 해시값 생성부(130)는 제1 해시값 생성부(132)와 제2 해시값 생성부(134)를 포함할 수 있다.
제1 해시값 생성부(132)는 파싱부(130)로부터 출력되는 현재 프레임의 비디오 프레임 데이터와 키(Key)값을 결합하고, 결합된 현재 프레임의 비디오 프레임 데이터와 키(Key)값을 해시함수로 연산하여 현재 프레임(n)의 제1 해시값(h n )을 생성하고, 이를 제2 해시값 생성부(134)로 출력하고, 동시에 메모리(140)에 저장할 수 있다. 해시함수는, 예를 들면, 암호화 해시함수의 일종인 MD5(Message-Digest algorithm 5), SHA(Secure Hash Algorithm) 등을 포함할 수 있다. 해시함수에 대한 설명은 본 발명의 요지를 벗어나는 것이므로, 이에 대한 상세 설명은 생략한다.
제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)로 출력할 수 있다.
메모리(140)는 제1 해시값 생성부(132)에서 생성한 각 프레임의 제1 해시값을 저장하고, 현재 프레임의 제1 해시값(h n )에 응답하여 이전 프레임에서 저장한 제1 해시값(h n-1 )을 출력하는 저장 매체로서, 휘발성 및 비휘발성 메모리를 포함할 수 있다.
삽입부(150)는 제2 해시값 생성부(134)로부터의 부가 데이터, 즉, 현재 프레임의 제2 해시값(H n )을 현재 프레임과 다음 프레임 사이에 삽입한다.
파싱부(120)에서 수행되는 파싱 과정부터 삽입부(150)에서 수행되는 삽입 과정에 이르는 처리 과정은 마지막 프레임까지 반복적으로 수행된다. 따라서, 현재 프레임이 마지막 프레임인 경우, 마지막 프레임의 제2 해시값을 마지막 비디오 프레임의 뒤에 삽입하는 과정으로 비디오 데이터에 부가 데이터를 삽입하는 일련의 과정은 종료될 수 있다.
한편, 비디오 프레임들 사이에 부가 데이터, 즉, 제2 해시값(H n )이 삽입되었으므로, 기존의 각 비디오 프레임의 오프셋값을 제2 해시값(H n )의 삽입에 따라 변경된 오프셋값으로 갱신하고, 갱신한 오프세값은 저장부(110)에 저장될 수 있다.
도 2는 도 1에 도시한 해시값 생성부에서 제2 해시값을 생성하는 과정을 도식적으로 나타낸 도면이다.
도 2에서, 비디오 데이터가 3개의 비디오 프레임으로 구성된 경우에서 제2 해시값 생성과정의 예를 도시한 것으로서, 이는 설명의 간략화를 위하여 과장된 예를 도시한 것이다.
먼저, 첫 번째 프레임의 제2 해시값(H 1 )을 생성하기 위해, 첫 번째 프레임의 비디오 프레임에 대한 파싱 과정으로부터 획득한 첫 번째 프레임의 비디오 프레임 데이터(F(1))와 키(Key)값이 결합되고, 해시 함수가 상기 결합된 첫 번째 프레임의 비디오 프레임 데이터(F(1))와 키(Key)값에 대해 해시 연산을 수행하여 첫 번째 프레임의 제1 해시값(h 1 )을 생성한다. 이후, 해시 함수가 첫 번째 프레임의 제1 해시값(h 1 )과 키(Key)값을 결합하고, 결합한 첫 번째 프레임의 제1 해시값(h 1 )과 키(Key)값에 대해 해시 연산을 다시 수행하여 첫 번째 프레임의 제2 해시값(H 1 ), 즉, 첫 번째 비디오 프레임과 두 번째 비디오 프레임 사이에 삽입되는 부가 데이터가 생성된다.
두 번째 프레임의 제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 ), 즉, 두 번째 비디오 프레임과 세 번째 비디오 프레임 사이에 삽입되는 부가 데이터가 생성된다.
세 번째 프레임의 제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 ), 즉, 세 번째 비디오 프레임의 뒤에 삽입되는 부가 데이터가 생성된다.
도 3은 본 발명의 일 실시 예에 따른 비디오 데이터의 위/변조 방지 방법을 나타내는 흐름도이다.
도 3을 참조하면, 먼저, 단계 S310에서, 비디오 데이터의 메타 정보를 파싱하여 N번째 프레임의 비디오 프레임에 대한 비디오 프레임 데이터를 획득하는 과정이 수행된다.
이어, 단계 S320에서, N번째 프레임의 비디오 프레임 데이터와 키값을 조합하고, 그 조합 결과를 해시함수로 연산하여 제1 해시값을 생성하는 과정이 수행된다.
이어, 단계 S330에서, N번째 프레임의 제1 해시값, 키값 및 N-1번째 프레임의 제1 해시값을 조합하고, 그 조합 결과를 해시함수로 연산하여 제2 해시값을 생성하는 과정이 수행된다.
이어, 단계 S340에서, 상기 제2 해시값을 N번째 프레임의 비디오 프레임의 뒤에 삽입하는 과정이 수행된다.
이어, 단계 S350에서, N번째 프레임이 마지막 프레임인지를 판별하는 과정이 수행된다. N번째 프레임이 마지막 프레임이 아닌 경우, 단계 S310 내지 S340을 재수행한다.
N번째 프레임이 마지막 프레임인 경우, 단계 S360에서, 각 비디오 프레임의 비디오 프레임 데이터에 포함된 오프셋 값을 갱신하고, 갱신된 오프셋 값을 이용하여 비디오 데이터의 메타 정보를 재 구성한 후, 저장부에 저장된 기존의 메타 정보를 갱신한다. 이러한 갱신 과정을 끝으로, 비디오 데이터의 위/변조 방지하기 위해, 비디오 데이터에 부가 데이터(또는 제2 해시값)를 삽입하는 일련 모든 과정이 종료된다.
도 4는 본 발명의 일 실시 예에 따른 비디오 데이터의 위변 검증 과정을 나타내는 흐름도이다.
도 4를 참조하면, 본 발명의 일 실시 예에 따른 비디오 데이터의 위변 검증 과정은 비디오 데이터를 구성하는 연속된 비디오 프레임 사이에 삽입된 부가 데이터를 기반으로 비디오 데이터의 위변조 여부를 검증하는 과정이다.
비디오 데이터의 위변 검증 과정은 별도의 검증 장치에서 수행될 수 있다. 검증 장치는 유무선 통신 기능을 갖는 통신 장치 및 데이터 검증과 관련된 프로그램을 실행할 수 있는 컴퓨터 프로세서를 구비한 전자 장치일 수 있다. 즉, 검증 장치는 도 1에서 참조번호 300이 지시하는 외부 전자장치일 수 있다.
검증 장치는 유무선 통신 기능을 이용해 위변조 방지 장치(100)로부터 부가 데이터가 삽입된 비디오 데이터를 수신하고, 수신된 비디오 데이터에 삽입된 부가 데이터를 기반으로 비디오 데이터의 위변조 여부를 검증할 수 있다.
구체적으로, 단계 S410에서, 검증 장치는, 위변조 방지 장치(100) 또는 위변조 방지 장치(100)가 탑재된 다른 장치로부터 비디오 데이터를 수신하고, 수신된 비디오 데이터를 구성하는 연속된 비디오 프레임 사이에 삽입된 부가 데이터, 즉, 제2 해시값을 추출하는 과정을 수행한다. 제2 해시값을 추출하는 방법은 데이터 위변조 방지 장치로부터 수신된 메타 정보를 파싱하고, 그 파싱 결과를 이용하여 연속된 비디오 프레임 사이에 삽입된 부가 데이터, 즉, 제2 해시값을 추출할 수 있다.
이어, 단계 S420에서, 도 3에 도시한 단계 S310, S320 및 S330과 동일한 과정을 수행하여 비디오 프레임의 제2 해시값을 생성하는 과정이 수행된다. 이러한 과정을 수행하기 위해, 검증 장치는, 도 1에 도시한 파싱부(120) 및 해시값 생성부(130)와 동일한 기능을 갖는 소프트웨어 모듈 또는 하드웨어 모듈을 포함하도록 구성된 컴퓨터 프로세서를 구비한 장치일 수 있다.
이어, 단계 S430에서, 단계 S410에서 추출된 부가 데이터(제2 해시값)와 단계 S420에서 생성한 제2 해시값을 프레임 단위로 비교하는 과정이 수행된다.
이어, 특정 프레임에서 단계 S410에서 추출된 제2 해시값과 단계 S420에서 생성한 제2 해시값이 동일한 경우, 단계 S440에서 특정 프레임의 비디오 프레임을 위·변조 되지 않은 무결성 프레임으로 판별하고, 반대의 경우, 단계 S450에서 특정 프레임의 비디오 프레임을 위변조된 프레임으로 판별한다.
이상에서 본 발명에 대하여 실시 예를 중심으로 설명하였으나 이는 단지 예시일 뿐 본 발명을 한정하는 것이 아니며, 본 발명이 속하는 분야의 통상의 지식을 가진 자라면 본 발명의 본질적인 특성을 벗어나지 않는 범위에서 이상에 예시되지 않은 여러 가지의 변형과 응용이 가능함을 알 수 있을 것이다. 예를 들어, 본 발명의 실시예에 구체적으로 나타난 각 구성 요소는 변형하여 실시할 수 있는 것이다. 그리고 이러한 변형과 응용에 관계된 차이점들은 첨부된 청구 범위에서 규정하는 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (7)

  1. 비디오 프레임의 메타 정보를 파싱하여 N번째 프레임의 비디오 프레임에 대한 비디오 프레임 데이터를 획득하는 단계;
    상기 비디오 프레임 데이터, 키(Key)값 및 N-1번째 프레임의 해시값을 해시함수로 연산하여 해시값(H)을 생성하는 단계; 및
    상기 해시값(H)을 상기 N번째 프레임의 비디오 프레임과 N+1번째 프레임의 비디오 프레임 사이에 삽입하는 단계를 포함하고,
    상기 비디오 프레임 데이터는 각 비디오 프레임의 위치값을 나타내는 오프셋값을 포함하고,
    상기 삽입하는 단계 이후, 기존의 오프셋값을 상기 해시값(H)의 삽입에 따라 변경된 오프셋값으로 갱신하는 단계를 더 포함하는 비디오 데이터의 위변조 방지 방법.
  2. 제1항에서, 상기 해시값(H)을 생성하는 단계는,
    상기 비디오 프레임 데이터와 상기 키(Key)값을 조합하는 단계;
    상기 조합된 비디오 프레임 데이터와 키(Key)값을 해시함수로 연산하여 제1 해시값(h)을 생성하는 단계; 및
    상기 제1 해시값, 상기 키(Key)값 및 상기 N-1번째 프레임의 해시값을 조합하는 단계; 및
    상기 조합된 제1 해시값, 키(Key)값 및 N-1번째 프레임의 해시값을 해시함수로 연산하여 제2 해시값을 상기 해시값(H)으로서 생성하는 단계
    를 포함하는 비디오 데이터의 위변조 방지 방법.
  3. 삭제
  4. 제1항에서, 상기 삽입하는 단계 이후,
    상기 N번째 프레임이 마지막 프레임인지 확인하는 단계;
    상기 N번째 프레임이 마지막 프레임이 아닌 경우, 상기 N+1번째 프레임의 비디오 프레임에 대해 상기 획득하는 단계, 상기 생성하는 단계 및 상기 삽입하는 단계를 수행하는 단계; 및
    상기 N번째 프레임이 마지막 프레임인 경우, 상기 해시값(H)을 상기 N번째 프레임의 비디오 프레임의 뒤에 삽입하는 과정을 끝으로 모든 과정을 종료하는 단계
    를 포함하는 것인 비디오 데이터의 위변조 방지 방법.
  5. 컴퓨터 프로세서를 구비한 비디오 데이터의 위변조 방지 장치에서,
    N번째 프레임의 비디오 프레임에 대한 비디오 프레임 데이터를 획득하도록 비디오 프레임의 메타 정보를 파싱하는 파싱부;
    상기 비디오 프레임 데이터, 키(Key)값 및 N-1번째 프레임의 해시값을 해시함수로 연산하여 해시값(H)을 생성하는 해시값 생성부; 및
    상기 해시값(H)을 상기 N번째 프레임의 비디오 프레임과 N+1번째 프레임의 비디오 프레임 사이에 삽입하는 삽입부를 포함하고,
    상기 비디오 프레임 데이터는 각 비디오 프레임의 위치값을 나타내는 오프셋값을 포함하고,
    상기 컴퓨터 프로세서는,
    기존의 오프셋값을 상기 해시값(H)의 삽입에 따라 변경된 오프셋값으로 갱신하는 것인 비디오 데이터의 위변조 방지 장치.
  6. 제5항에서, 상기 해시값 생성부는,
    상기 비디오 프레임 데이터와 상기 키(Key)값을 조합하고, 조합된 비디오 프레임 데이터와 키(Key)값을 해시함수로 연산하여 제1 해시값(h)을 생성하는 제1 해시값 생성부; 및
    상기 제1 해시값, 상기 키(Key)값 및 상기 N-1번째 프레임의 해시값을 조합하고, 조합된 제1 해시값, 키(Key)값 및 N-1번째 프레임의 해시값을 해시함수로 연산하여 제2 해시값을 상기 해시값(H)으로서 생성하는 제2 해시값 생성부
    를 포함하는 것인 비디오 데이터의 위변조 방지 장치.
  7. 삭제
KR1020170147083A 2017-11-07 2017-11-07 비디오 데이터의 위/변조 방지 장치 및 방법 KR102275868B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020170147083A KR102275868B1 (ko) 2017-11-07 2017-11-07 비디오 데이터의 위/변조 방지 장치 및 방법
PCT/KR2017/013005 WO2019093561A1 (ko) 2017-11-07 2017-11-16 비디오 데이터의 위/변조 방지 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170147083A KR102275868B1 (ko) 2017-11-07 2017-11-07 비디오 데이터의 위/변조 방지 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20190051430A KR20190051430A (ko) 2019-05-15
KR102275868B1 true KR102275868B1 (ko) 2021-07-12

Family

ID=66438521

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170147083A KR102275868B1 (ko) 2017-11-07 2017-11-07 비디오 데이터의 위/변조 방지 장치 및 방법

Country Status (2)

Country Link
KR (1) KR102275868B1 (ko)
WO (1) WO2019093561A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102516548B1 (ko) * 2021-03-10 2023-03-31 숭실대학교 산학협력단 블록체인 기반의 영상 위변조 방지 시스템 및 방법과 이를 위한 컴퓨터 프로그램

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007232754A (ja) 2006-02-27 2007-09-13 Toshiba Corp ハッシュ値生成装置及びハッシュ値生成方法
JP2008011535A (ja) 2006-06-29 2008-01-17 Samsung Electronics Co Ltd 完全性を保障するビデオストリームを提供する装置および方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
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
KR100538414B1 (ko) * 2004-05-12 2005-12-22 (주)펜타마이크로 디씨티 기반의 영상 압축 시스템을 위한 데이터 위변조방지 방법
KR100858425B1 (ko) * 2006-01-05 2008-09-17 (주)아이디스 해시 함수를 이용하는 데이터 처리 장치 및 데이터 처리방법
KR20090000228A (ko) * 2007-02-05 2009-01-07 삼성전자주식회사 무결성 검증이 가능한 컨텐츠 제공 방법 및 컨텐츠 이용방법과 그 장치
KR20080094341A (ko) * 2007-04-20 2008-10-23 삼성전자주식회사 디지털 워터마킹 방법 및 장치
TWI501580B (zh) * 2009-08-07 2015-09-21 Dolby Int Ab 資料串流的鑑別
KR101286649B1 (ko) * 2009-12-11 2013-07-16 한국전자통신연구원 워터마크를 이용한 키 분배 및 변경 방법
US8989376B2 (en) * 2012-03-29 2015-03-24 Alcatel Lucent Method and apparatus for authenticating video content
KR20160046630A (ko) * 2014-10-21 2016-04-29 숭실대학교산학협력단 해싱 기법을 통한 실시간 모바일 응용 프로그램 위변조 탐지 장치 및 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007232754A (ja) 2006-02-27 2007-09-13 Toshiba Corp ハッシュ値生成装置及びハッシュ値生成方法
JP2008011535A (ja) 2006-06-29 2008-01-17 Samsung Electronics Co Ltd 完全性を保障するビデオストリームを提供する装置および方法

Also Published As

Publication number Publication date
KR20190051430A (ko) 2019-05-15
WO2019093561A1 (ko) 2019-05-16

Similar Documents

Publication Publication Date Title
US7639818B2 (en) Structured document signature device, structured document adaptation device and structured document verification device
US8977860B2 (en) Method and apparatus for tamper proof camera logs
EP3031005B1 (en) Method for creating signals for time-stamping of documents and method for time-stamping of documents
US8904184B2 (en) Certification of authenticity of media signals
US20120096564A1 (en) Data integrity protecting and verifying methods, apparatuses and systems
CN113065169B (zh) 一种文件存证方法、装置及设备
US8683219B2 (en) Method and apparatus for checking the integrity of data stored in a predetermined memory area of a memory
CN110061843B (zh) 一种链式账本中的块高创建方法、装置及设备
CN106548092A (zh) 一种文件处理方法及装置
CN110647759B (zh) 数据记录方法、节点、设备、存储介质及区块链系统
CN112003888B (zh) 基于区块链的证件照管理方法、装置、设备及可读介质
CN103646375A (zh) 智能移动终端拍照的照片原始性可认证方法
CN114301602B (zh) 一种基于区块链的视频保护方法及装置
US11330345B2 (en) Verification code generation method, data verification method and electronic device
CN110347678B (zh) 一种金融数据的存储方法、系统、装置及设备
KR102275868B1 (ko) 비디오 데이터의 위/변조 방지 장치 및 방법
JP2009128956A (ja) データ処理装置及びデータ処理方法及びプログラム
US20210099772A1 (en) System and method for verification of video integrity based on blockchain
US20160294561A1 (en) Method and apparatus for digitally signing a file
CN110992219A (zh) 一种基于区块链技术的知识产权保护方法、系统
KR20220153505A (ko) 하나 이상의 화상 집합을 포함하는 비디오 세그먼트를 서명하는 장치 및 그 방법
US11599570B2 (en) Device and method to render multimedia data stream tamper-proof based on block chain recording
US20110208969A1 (en) Method and apparatus for providing authenticity and integrity to stored data
CN109509095B (zh) 一种结合区块链的视频主动识别方法
KR101609846B1 (ko) 블랙박스 영상에 대한 적정성 관리 방법 및 이를 위한 컴퓨터로 판독가능한 기록매체

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