KR102008424B1 - 프레임 선별적 동영상 암호화 방법 - Google Patents

프레임 선별적 동영상 암호화 방법 Download PDF

Info

Publication number
KR102008424B1
KR102008424B1 KR1020170125433A KR20170125433A KR102008424B1 KR 102008424 B1 KR102008424 B1 KR 102008424B1 KR 1020170125433 A KR1020170125433 A KR 1020170125433A KR 20170125433 A KR20170125433 A KR 20170125433A KR 102008424 B1 KR102008424 B1 KR 102008424B1
Authority
KR
South Korea
Prior art keywords
frame
image
encryption
shuffling
video
Prior art date
Application number
KR1020170125433A
Other languages
English (en)
Other versions
KR20190036328A (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 KR1020170125433A priority Critical patent/KR102008424B1/ko
Publication of KR20190036328A publication Critical patent/KR20190036328A/ko
Application granted granted Critical
Publication of KR102008424B1 publication Critical patent/KR102008424B1/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

본 발명은 압축 코딩하여 I 프레임, P 프레임 및 B 프레임을 갖는 동영상에 대해서, I 프레임만을 암호화 대상으로 선별하여 이미지 퍼즐화 방식으로 암호화하되, P 프레임 및 B 프레임의 데이터량에 적응하며 I 프레임의 암호화 정도를 탄력적으로 조절하는 프레임 선별적 동영상 암호화 방법에 관한 것으로서, 암호화 소요 시간을 적절하게 조절하도록 이미지 조각의 크기 및 셔플링 횟수를 설정한 이후, I 프레임의 암호화 정도를 I 프레임에 종속적인 P 프레임 및 B 프레임의 합산 정보량에 따라 추가로 조절한다.

Description

프레임 선별적 동영상 암호화 방법{FRAME SELECTIVE ENCRYPTION METHOD FOR VIDEO DATA}
본 발명은 압축 코딩하여 I 프레임, P 프레임 및 B 프레임을 갖는 동영상에 대해서, I 프레임만을 암호화 대상으로 선별하여 이미지 퍼즐화 방식으로 암호화하되, P 프레임 및 B 프레임의 데이터량에 적응하며 I 프레임의 암호화 정도를 탄력적으로 조절하는 프레임 선별적 동영상 암호화 방법에 관한 것이다.
이미지를 비롯한 다양한 형식의 데이터를 암호화하는 방식으로서, 행렬 형태의 배열을 갖거나 또는 행렬 형태의 배열을 갖게 재열한 데이터를 복수의 서브블록으로 분할한 후 서브블록의 배열 위치를 랜덤하게 변경하여 암호화하는 기술이 있다.
본 발명의 발명자는 이러한 퍼즐화 방식의 암호화 기술을 개량하기 위해서 서브블록의 크기 및 서블블록의 위치 변경 횟수(즉, 셔플링 횟수)를 사용자가 임의로 변경하게 하여서 보안을 강화한 기술을 창안하였고, 등록특허 제10-1112157호로 특허 등록을 받았다.
그런데, 이러한 암호화 기술은 서브블록의 크기 및 셔플링 횟수를 적절하게 선정하여야만 보안을 강화할 수 있는 데, 이미지 프레임의 연속적인 연결에 의해 구현되는 동영상 데이터(즉, 비디오 데이터)에 적용하는 경우, 암호화에 소요되는 시간이 문제가 될 수 있다.
즉, 예를 들어 HD, FULL HD, UHD 등의 서로 다른 해상도 및 15, 20, 30, 60 등의 서로 다른 프레임 레이트를 갖고 있어서 지원하는 화질의 차이가 있는 동영상 데이터에 대해서 서브블록의 크기 및 셔플링 횟수를 일률적인 값으로 선정 사용하거나, 임의적으로 선정 사용하면, 동영상을 신호처리하는 데 암호화 소요 시간만큼 지연되고, 예를 들어 실시간 스트리밍 서비스를 제공할 시에 문제가 될 수 있다.
한편, 동영상 데이터는 통상적으로 I 프레임, P 프레임 및 B 프레임으로 갖게 압축 코딩하여 사용하며, 이때, I 프레임만 온전한 이미지를 갖고 있다.
등록특허 제10-0732056호에 따르면, 이러한 압축 코딩 구조를 고려하여, I 프레임만을 암호화한다. 이에 따라, 암호화 소요 시간을 단축할 수 있고, 오버헤드(overhead)도 감소시킬 수 있다.
그렇지만, 동영상 데이터가 지원하는 화질의 차이에 따라 암호화 소요 시간의 편차가 심하게 나타나고, 적절한 암호화를 보장하기도 어려우며, 동영상 처리를 안정적으로 처리하지 못하는 경우도 발생할 수 있다.
KR 10-1112157 B1 2012.01.27. KR 10-0732056 B1 2007.06.19.
따라서, 본 발명은 지원하는 화질의 차이가 있는 동영상에 대해서도 암호화 과정을 탄력으로 가변 운용하되, 암호화 정도를 데이터량에 따라 조절하여 보안성을 강화한 프레임 선별적 동영상 암호화 방법을 제공하는 데 목적을 둔다.
상기 목적을 달성하기 위해 본 발명은 암호화장치(10)가 입력받는 동영상의 프레임 이미지를 복수의 이미지 조각으로 분할한 이후, 2개의 이미지 조각을 랜덤하게 선택하여 위치 교환하는 셔플링(shuffling) 과정의 반복에 의해 암호화된 동영상으로 출력시키는 프레임 선별적 동영상 암호화 방법에 있어서, 이미지 조각의 크기 및 셔플링 횟수를 설정하는 동작 조건 설정 단계(S20); 동영상에서 I, P, B 프레임 중에 I 프레임을 추출하고, P 프레임 및 B 프레임에 대해서는 데이터량을 획득하여 P 프레임과 B 프레임의 합산 데이터량에 따라 셔플링 횟수를 증가되게 재설정하는 I 프레임 추출 단계(S30); 추출한 I 프레임의 이미지를 설정한 이미지 조각의 크기 및 재설정한 셔플링 횟수에 따라 암호화한 퍼즐화 I 프레임을 생성하는 암호화 단계(S40); 및 퍼즐화 I 프레임을 동영상에 삽입 대치하여 출력하는 I 프레임 대치 단계(S50);을 포함한다.
본 발명의 상기 I 프레임 추출 단계(S30)에서 셔플링 횟수의 재설정은 P 프레임과 B 프레임의 합산 데이터량이 많을수록 셔플링 횟수의 증가 횟수를 많게 한다.
본 발명의 상기 I 프레임 추출 단계(S30)에서 셔플링 횟수의 재설정은 P 프레임과 B 프레임의 합산 데이터량에 따른 셔플링 횟수의 증가 횟수를 미리 정한 상한선을 넘지 아니하도록 제한한다.
아울러 상기 동작 조건 설정 단계(S20)는 암호화할 동영상의 I 프레임 이미지 픽셀수 및 프레임 레이트에 따라 이미지 조각의 크기 및 셔플링 횟수를 가변하여 암호화 소요 시간을 조절한다.
상기한 바와 같이 이루어지는 본 발명은 P 프레임 및 B 프레임의 정보량에 따라 I 프레임의 보안성을 강화함으로써, 정보량이 많은 GOP일수록 보안성을 높일 수 있고, 일률적으로 보안성을 높이는 경우보다 암호화 소요 시간을 줄일 수 있다.
도 1은 본 발명의 실시 예에 따른 프레임 선별적 동영상 암호화 방법을 적용한 동영상 송수신 시스템의 구성도.
도 2는 본 발명의 실시 예에 따른 프레임 선별적 동영상 암호화 방법의 순서도.
도 3은 프레임 선별적 동영상 암호화 방법을 도식적으로 보여주는 도면.
도 4는 셔플링(shuffling)을 반복함에 따라 변동하는 이미지를 보여주는 이미지 도면.
본 발명에 따른 프레임 선별적 동영상 암호화 방법은 I 프레임, P 프레임 및 B 프레임으로 구성된 코딩(coding) 구조를 갖는 동영상을 입력받아 I 프레임만 암호화하여 대치한 후 출력한다.
여기서, 암호화는 프레임의 데이터 영역에 있는 이미지를 복수의 이미지 조각으로 분할하고, 2개의 이미지 조각을 랜덤(random)하게 선택하여 2개 이미지 조각의 위치를 교환하는 셔플링(shuffing) 과정을 소정 횟수 반복하여서 퍼즐화된 이미지를 갖게 함으로써, 분할한 이미지 조각의 크기, 랜덤 시퀀스 및 셔플링 횟수를 알아야만 원 이미지로 복원할 수 있는 암호화를 실현한다.
본 발명에 따르면, P 프레임과 B 프레임의 합산 데이터량에 따라 셔플링 횟수의 횟수 증가량을 가감함으로써, 정보량이 많은 GOP(Group of Picture)일수록 보안을 강화한다.
본 발명의 일 실시 예에 따르면, 암호화 소요 시간을 좌우하는 이미지 조각의 크기 및 셔플링 횟수를 I 프레임의 픽셀수에 따라 가변적으로 설정 사용함으로써, 해상도(resolution)가 상이한 동영상에 대해서 암호화 소요 시간의 차이가 나지 않거나 또는 그 차이를 줄일 수 있다.
본 발명의 일 실시 예에 따르면, 동영상의 프레임 레이트(frame rate)에 따라 이미지 조각의 크기 및 셔플링 횟수를 재설정 사용함으로써, 프레임 레이트가 상이한 동영상에 대해서 암호화 소요 시간의 차이가 나지 않거나 또는 그 차이를 줄일 수 있다.
이하, 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 당해 분야에 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 설명한다. 본 발명의 실시 예를 설명함에 있어서, 관련된 공지의 기능 또는 공지의 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다.
도 1은 본 발명의 실시 예에 따른 프레임 선별적 동영상 암호화 방법을 적용하여 실시하기 위한 동영상 송수신 시스템의 구성도이다.
도 2는 본 발명의 실시 예에 따른 프레임 선별적 동영상 암호화 방법의 순서도이다.
도 1을 참조하면, I(Intra) 프레임, P(Predictive) 프레임 및 B(Bi-directionary predictive)으로 구분되는 프레임을 갖도록 코딩된 동영상을 통신모듈(1a)을 통해 전송하는 제1 단말(1) 내에 암호화 장치(10)를 설치 운용함으로써, 본 발명의 실시 예에 따른 프레임 선별적 동영상 암호화 방법에 의해 암호화된 동영상을 전송할 수 있다.
여기서, I 프레임, P 프레임 및 B 프레임은 연속적인 각 프레임이 정지동영상 이미지로 된 동영상 데이터에 대해 GOP(Group of Picture) 단위로 압축하여 얻는 프레임으로서, 공지의 압축 코딩 기술에 의해 얻어지므로, 상세한 설명은 생략하고 본 발명의 이해를 위해서 도 3에 도시한 동영상 데이터의 코딩 구조를 참조하며 간략하게 설명한다.
I 프레임은 코딩 이전 GOP에서 취하여 얻는 프레임으로서, 일반 이미지처럼 취한 프레임 내의 모든 이미지 데이터를 그대로 갖고 있는 독립적인 프레임이 되며, GOP 내에서 기준 프레임이 된다. 이러한 I 프레임은 정지영상처럼 예를 들어 DCT 변환하여 압축 사용할 수 있다.
P 프레임과 B 프레임은 I 프레임을 참조하여 모션 벡터라는 변환값을 갖는 프레임으로서, I 프레임에 종속적이다.
구분하여 설명하면, P 프레임은 기준이 되는 I 프레임과의 차이점만을 보충하여 재생할 수 있게 코딩한 프레임으로써, 그 다음에 재생할 P 프레임의 기준이 되기도 한다.
B 프레임은 앞 프레임, 뒷 프레임 또는 앞뒤 프레임 모두를 참조하여 코딩한 프레임으로서, I 프레임과 P 프레임의 사이, 또는 P 프레임과 다음 P 프레임 사이에 배치된다.
또한, I, P, B 프레임은 적어도 프레임 종류를 식별하기 위한 코드를 기록하는 헤더(header)를 갖고 있다.
따라서, I, P, B 프레임 중에 I 프레임이 가장 많은 데이터량을 갖게 되고, 온전한 이미지를 갖고 있어서, 보안을 위해 I 프레임만을 암호화하더라도, I 프레임에 종속적인 P 프레임 및 B 프레임만으로는 동영상 복원이 거의 불가능하다.
이러한 이유로, I, P, B 프레임을 헤더로 구분하여 식별한 후 I 프레임만을 암호화함으로써, 암호화 소요 시간을 단축하고 암호화장치를 효율적으로 운용할 수 있다.
도 2를 참조하면, 본 발명에 따른 프레임 선별적 동영상 암호화 방법은 I 프레임만을 암호화하기 위해서 I 프레임 추출 단계(S30), 암호화 단계(S40), 및 I 프레임 대치 단계(S50)를 수행하고, 이를 위한 암호화 장치(10)에는 암호화부(11)를 구비하지만, 동영상의 화질 또는 P 프레임 및 B 프레임의 데이터량에 따라 적응적으로 암호화하여 탄력적으로 운용하기 위해서, 암호화 여건 획득 단계(S10) 및 동작 조건 설정 단계(S20)를 먼저 수행하고, 이를 위해서 암호화 장치(10)에는 암호화 여건 획득부(12) 및 동작 조건 설정부(13)를 더욱 구비한다.
또한, 암호화부(11)에 의해 수행되는 암호화 단계(S40)는 암호화 수준이 조절 가능한 이미지 퍼즐화 방식으로 암호화하기 위해서, 동영상에서 I 프레임만을 추출한 후 I 프레임 이미지를 복수의 이미지 조각으로 분할하며, 2개 이미지 조각을 랜덤하게 선택하고 2개 이미지 조각을 자리 바꿈(즉, 위치 교환)하는 셔플링(shuffling) 과정을 반복함으로써, 이미지 조각의 배열 변경에 의해 퍼즐화된 이미지로 암호화한다.
프레임 선별적 동영상 암호화 방법의 순서도를 도시한 도 2와, 동영상 데이터의 구조 및 예시적 이미지를 첨부하여 프레임 선별적 동영상 암호화 방법을 도식적으로 보여주는 도 3과, 셔플링(shuffling)을 반복함에 따라 변동하는 이미지를 보여주는 도 4를 참조하여 구체적으로 설명한다.
상기 암호화 여건 획득 단계(S10)는 암호화하려는 동영상에서 화질에 관련된 정보를 미리 획득한다.
본 발명의 실시 예에 따르면, 획득하는 화질 관련 정보는 동영상의 해상도를 나타내는 I 프레임 이미지의 픽셀수와, 1초당 프레임 개수를 나타내는 프레임 레이트(frame rate)이다.
여기서, I 프레임 이미지의 픽셀수는 암호화 소요 시간을 좌우하고, 프레임 레이트는 암호화하는 데 허용되는 시간에 영향을 주므로, 암호화하기 이전에 암호화 여건으로서 획득하여서, 하기의 동작 조건 설정부(12)에서 암호화 동작 조건에 반영하는 것이다.
상기 동작 조건 설정 단계(20)는 상기 암호화 여건 획득 단계(S10)에서 획득한 I 프레임 이미지의 픽셀수 및 프레임 레이트(frame rate)에 따라 이미지 조각의 크기 및 셔플링 횟수를 가변적으로 설정한다.
이미지 조각의 크기 및 셔플링 횟수는 상호 상관성을 가질 뿐만 아니라, I 프레임의 암호화에 소요되는 시간을 좌우하며, 이에, 암호화 소요 시간을 적정 수준으로 맞추기 위해서 I 프레임 이미지의 픽셀수 및 프레임 레이트(frame rate)에 따라 가변적으로 설정하는 것이다.
도 3에 도시한 I 프레임 이미지를 참조하며 설명하면, 동영상에서 추출한 I 프레임 이미지를 a X b 픽셀 크기를 갖는 이미지 조각으로 분할한 후, 2개 이미지 조각을 랜덤하게 선택하여 셔플링하는 과정을 반복할 시에, 셔플링 횟수를 충분히 하여야만 가시적으로서 어떤 이미지인지 알아볼 수 없게 하고, 데이터로서 원 이미지 데이터로 복원하기 어렵게 한다.
그런데, 이미지 조각의 크기를 작게 할수록 분할하여 얻는 이미지 조각의 개수는 많아지고, 이미지 조각의 개수가 많아지면 셔플링 횟수도 많아져야 한다.
본 발명의 발명자는 이미지 개수와 적정 셔플링 횟수 사이의 상관관계를 나타내는 아래의 수학식1의 결과를 확률에 대한 수학적 이론을 이용하여 얻을 수 있었고, 분할 이미지 조각의 개수 N을 달리하며 퍼즐화하여 얻는 이미지로부터 상관관계를 검증하였다. 그리고, 수학식의 결과를 적절하게 가감하여 이미지 조각의 개수가 많을수록 셔플링 횟수를 많아지게 하는 규칙 또는 데이터테이블을 마련함으로써 이미지 크기에 따라 적정 셔플링 횟수를 설정할 수 있었다.
Figure 112017094796906-pat00001
수학식 1에서, k는 적정 셔플링 회수이고, N은 분할 이미지 조각의 개수이고, β는 셔플링 과정을 반복함에 따라 어느 하나의 특정 이미지 조각이 확률적으로 분할 위치에 관계없이 균일 확률로 존재할 수 있는 정상 분포(stationary distribution)로의 수렴도(convergence rate)이다.
또한, 암호화 단계(S40)를 수행하기 위한 프로그램의 수행 시간을 보면, 이미지 조각의 크기가 클수록 분할 이미지 조각의 개수는 적어져서, 1회 셔플링에 소요되는 시간은 길어지는 반면에 셔플링 횟수를 줄여도 되어 셔플링 횟수의 감소에 따른 시간 절약은 가능하다.
즉, 이미지 조각의 크기에 따른 소요 시간은 증가 요인뿐만 아니라 감소 요인도 있다.
그런데, 분할 이미지 조각의 크기를 작게 하여 1회 셔플링의 수행 시간은 상대적으로 짧아지게 하고, 대응되는 셔플링 횟수는 상대적으로 많게 하는 것이 분할 이미지 조각의 크기를 크게 하여 1회 셔플링의 수행 시간은 상대적으로 길어지게 하고, 대응되는 셔플링 횟수는 상대적으로 적게 하는 것보다 퍼즐화(암호화) 소요 시간을 줄일 수 있다.
이는, 상대적으로 큰 분할 이미지 조각을 위치 교환하는 데 필요한 프로그램 코드의 실행이 퍼즐화 소요 시간에 더욱 큰 영향을 주는 것을 의미하며, 본 발명의 발명자가 암호화 프로그램을 작성하여 이미지 조각의 크기를 가변하면서 이미지 조각의 크기에 대해 적절한 셔플링 횟수를 적용하여 암호화 프로그램을 실행시킨 결과, 이미지 크기를 작게 할수록 I 프레임 이미지의 퍼즐화, 즉 암호화에 소요되는 시간이 줄어듬을 확인할 수 있었다.
물론, 프로그램을 작성한 결과, 이미지 조각의 크기를 크게 하여 셔플링 횟수를 줄이는 경우에 암호화 소요 시간을 줄일 수 있다면, 암호화 소요 시간을 줄이기 위해서 이미지 조각의 크기를 키우고, 대신에 이미지 조각의 크기에 대해 상한선을 두면 되지만, 본 발명의 출원인이 확인한 프로그램에 의하면, 이미지 조각의 크기를 작게 할수록 암호화 소요 시간이 줄어든다.
이에, 본 발명의 실시 예에서는 I 프레임 이미지의 픽셀수가 많을수록 증가하는 암호화(퍼즐화) 소요 시간을 줄이기 위해서, I 프레임의 픽셀수가 많을수록 픽셀수가 적은 이미지 조각의 크기를 갖게 설정하는 규칙 또는 룩업테이블을 마련하여 적용하였다. 규칙에 대한 예를 들면, 분할 이미지 조각의 크기는 I 프레임 픽셀수에 반비례하는 규칙을 이용할 수 있다.
그런데, 분할 이미지 조각의 개수가 지나치게 많으면 그만큼 필요한 의사 난수(pseudo random number)도 지나치게 많아져서, 의사 난수 발생기의 성능 및 동작 시간에 의해 영향을 크게 받는다. 그리고, 이미지 조각의 크기가 너무 크면 퍼즐화 과정을 모르는 상황에서도 역퍼즐화가 가능할 수 있다.
이에, 이미지 조각의 개수에 상한을 두어서 이미지 조각의 크기에 대해 최소치를 정하고, 이미지 조각의 크기에 대해 최대치는 역퍼즐화의 어려움 정도에 따라 적절하게 정하며, 정한 범위 내에서 이미지 조각의 크기를 설정하도록 규칙 또는 룩업테이블을 결정하는 것이 좋다.
또한, 상기 동작 조건 설정 단계(S20)는 I 프레임 이미지의 픽셀수에 따라 설정한 이미지 조각의 크기를 프레임 레이트(frame rate)에 따라 재설정한다.
재설정 방식은 프레임 레이트가 클수록 이미지 조각의 크기를 작게 하는 방식이며, 이에 따라, 프레임 레이트가 상이하더라도 암호화 소요 시간의 차이를 줄일 수 있다.
물론, 이미지 조각의 크기를 재설정하면, 재설정한 이미지 조각의 크기에 대응되는 분할 이미지 조각의 개수도 변경되므로, 셔플링 횟수도 그에 맞게 재설정한다.
한편, 일반적으로 사용하는 동영상에 따르면, I 프레임 이미지의 전체 픽셀수(또는 화소수) 및 프레임 레이트가 한정되어 있으므로, I 프레임 이미지의 전체 픽셀수 및 프레임 레이트에 대응되는 이미지 조각의 크기 및 셔플링 횟수를 룩업테이블로 작성하여 사용하는 방식도 좋다.
이와 같이 설정 완료된 이후에는 암호화부(11)에서 동영상 데이터를 입력받으며 I 프레임 추출 단계(S30), 암호화 단계(S40) 및 I 프레임 대치 단계(S50)를 수행하고, 수행 결과에 따라 암호화한 동영상 데이터로 출력시킨다.
상기 I 프레임 추출 단계(S30)는 도 3에 도시한 바와 같이 I 프레임을 추출하고, 추출하는 I 프레임에 종속적인 P 프레임 및 B 프레임에 대해서는 각각 데이터량을 추출한 후 P 프레임 및 B 프레임의 합산 데이터량을 얻는다.
도 3에는 GOP 내의 프레임에 한정하여 압축 인코딩함으로써 I, P, B 프레임을 생성한 closed GOP를 예시하였으므로, 추출한 I 프레임에 이어지면서 GOP 내에 존재하는 P, B 프레임의 데이터량을 추출한다. 그렇지만, open GOP도 지원하게 할 경우에는 추출한 I 프레임 이전에 나타나는 프레임을 포함하도록 범위 조절하며, 다만 open GOP 내에 존재하는 P, B 프레임에 한정하면 된다.
그리고, 상기 I 프레임 추출 단계(S30)는 P, B 프레임의 합산 데이터량에 따라 셔플링 횟수를 증가시켜 셔플링 횟수를 재설정한다(S31).
여기서의 셔플링 횟수 재설정은 P, B 프레임의 합산 데이터량이 많을수록 셔플링 횟수의 증가 횟수를 많게 하는 방식으로서, 동상영의 각 GOP에 적응적하여 재설정하는 것이라 하겠다.
이는, 상기한 바와 같이 분할 이미지 조각의 크기에 따라 셔플링 횟수를 정하였더라도, P, B 프레임의 데이터량이 크면 클수록 셔플링 횟수의 증가량을 더욱 크게 하여서, I 프레임에 대한 보안을 강화하기 위함이다.
물론, 셔플링 횟수를 직접 조절하였으므로, 설정한 분할 이미지 조각의 크기에 대해서는 수정하지 아니한다.
한편, 셔플링 횟수가 많을수록 암호화 소요 시간이 길어지므로, 셔플링 횟수의 증가 횟수를 미리 정한 상한선을 넘지 아니하도록 제한한다.
또한, 반복적인 GOP 내에서 P, B 프레임 정보량에 적응하며 I 프레임의 암호화시에 셔플링 횟수를 늘리므로, 늘린 횟수만큼 지연 시간이 늘어난다. 이에, 상기 동작 조건 설정 단계(S20)에서 설정하는 셔플링 횟수는 셔플링 횟수의 재설정을 감안하여 수학식 1에 따라 정해지는 값보다 약간 낮춰 설정하는 것이 좋다.
상기 암호화 단계(S40)는 도 3에 도시한 바와 같이 추출한 I 프레임을 퍼즐화방식으로 암호화한 퍼즐화 I 프레임을 생성하는 단계로서, 추출한 I 프레임의 데이터 영역에 있는 I 프레임 이미지를 얻어 설정한 분할 이미지 조각의 크기에 따라 격자 형태로 분할한 후 각 이미지 조각에 번호를 매기는 이미지 분할 단계(S41), 매긴 번호를 랜덤하게 선택하여 난수 수열을 생성하되 시이드(seed)에 따라 난수 수열이 결정되는 의사 난수 발생기(pseudo random number generator)를 이용하여 설정 셔플링 횟수의 2배수 난수 수열을 생성하는 난수 생성 단계(S42), 난수 수열의 순서에 따라 2개씩 난수를 취하여 2개의 난수 번호가 매겨져 있는 이미지 조각을 위치 교환하는 셔플링(shuffling) 과정을 설정한 셔플링 횟수만큼 반복하는 퍼즐화 단계(S43), 및 퍼즐화 단계(S43)에 의해 얻은 퍼즐화 I 프레임 이미지를 I 프레임의 데이터 영역에 넣어 퍼즐화 이전 이미지를 대치하게 하고, 시이드 값, 이미지 조각의 크기 및 셔플링 횟수를 I 프레임의 헤더(header)에 기록함으로써 복호화 시에 사용하게 하는 퍼즐화 I 프레임 생성단계(S44)를 포함한다.
여기서, I 프레임의 헤더(header)에 기록하는 시이드 값, 이미지 조각의 크기 및 셔플링 횟수는 수신측 제2 단말(2)에 설치한 복호화 장치(20)와의 사전 약속에 따라 암호화한 설정값 코드로 기록하는 것이 바람직하다.
분할 이미지 조각의 개수를 63개로 가정하여 예시적으로 도시한 도 4를 참조하여 상기 퍼즐화 단계(S43)에 대해 설명하면, 퍼즐화 이전 I 프레임 이미지(A)를 분할 이미지 조각63개의 이미지 조각으로 분할한 후 각 이미지 조각에 a01, a02, ..., a63의 순번을 매긴 후 셔플링을 반복 수행한다.
셔플링을 할 시에는 2개 이미지 조각을 랜덤하게 선택한 후 위치 교환하며, 이에 따라 셔플링의 반복 횟수가 증가할수록 원 위치에서 다른 위치로 이동하는 이미지 조각의 개수도 증가한다.
그리고, 매회 셔플링할 때마다 이미지 조각을 랜덤하게 선택하므로, 셔플링을 반복함에 따라 각 이미지 조각 또는 어느 하나의 특정 이미지 조각이 각 분할 위치에 존재할 수 있는 확률 분포는 분할 위치에 관계없이 균일 확률로 존재할 수 있는 정상 분포(stationary distribution)로 수렴(convergence)하게 된다. 이에, 수학식 1의 수렴도를 적절하게 선택하여, 분할 이미지 조각의 개수에 대응되는 적정 셔플링 횟수를 미리 설정함으로써, 적절하게 퍼즐화할 정도만 셔플링을 반복하게 한다. 물론, 수학식 1을 그대로 적용하는 것보다는 이미지 크기, 분할 개수 등을 상이하게 하며 퍼즐화한 후, 적절한 셔플링 횟수를 갖게 수정 사용하는 것이 좋다.
상기 I 프레임 대치 단계(S50)는 생성한 퍼즐화 I 프레임을 동영상 데이터에 삽입하여 퍼즐화 이전 I 프레임을 대치함으로써, I프레임을 암호화한 동영상 데이터를 출력되게 한다.
그리고, 동영상 데이터에서 다음 순서의 I 프레임을 암호화하기 위해 상기 I 프레임 추출 단계(S30)로 넘어간다.
본 발명의 실시 예 설명에서는 동영상 데이터를 제1 단말(1)에서 통신망의 통신 경로(3)을 통해 제2 단말(2)에 전송하는 동영상 송수신 시스템에 적용하기 위해서, 암호화 장치(10)를 제1 단말(1)에 설치하는 것으로 하였으므로, I 프레임 대치 단계(S50)에 의해 출력되는 암호화 동영상 데이터는 제1 단말(1)의 통신모듈(1a)에 의해 제2 단말(2)에 전송된다.
그리고, 제2 단말(2)은 통신 경로(3)를 통해 전송되는 암호화 동영상 데이터를 통신모듈(2a)로 수신한 후 복호화하기 위한 복호화 장치(20)를 구비한다.
복호화 장치(20)는 I 프레임만을 추출한 후 헤더에 기록된 시이드 값, 분할 이미지 조각의 크기 및 셔플링 횟수에 따라 I 프레임의 데이터 영역에 있는 퍼즐화 I 프레이미 이미지를 복호화하고, 복호화한 I 프레임을 동영상 데이터에 대치함으로써, 암호화 이전 동영상 데이터를 복원한다.
퍼즐화 I 프레임 이미지의 복호화는 암호화 단계(S40)의 순서를 따르되, 퍼즐화 단계(S43) 대신에 역퍼즐화 단계를 수행하는 차이가 있다.
우선, 분할 이미지 조각의 크기에 따라 퍼즐화 I 프레임 이미지를 격자 형태로 분할한 후 각 이미지 조각에 번호를 매기고, 셔플링 횟수의 2배수 난수 수열을 시이드 값에 따라 생성한다.
다음으로, 난수 수열에서 역순으로서 2개씩 난수를 취하여 2개 난수 번호가 매겨져 있는 이미지 조각을 위치 교환하는 셔플링 과정을 셔플링 횟수만큼 반복함으로써 역퍼즐화한 I 프레임 이미지를 얻는다.
다음으로, 역퍼즐화 I 프레임 이미지를 I 프레임의 데이터 영역에 넣어 퍼즐화 I 프레임 이미지를 대치한 복원한 I 프레임을 얻는다.
다음으로, 복원한 I 프레임을 수신 동영상 데이터에 대치하여서, 동영상 데이터를 복원한다.
한편, 본 발명은 동영상 데이터를 암호화하여 저장 매체에 저장하는 단말, 또는 유무선 통신망을 통해 다른 단말에 전송하는 단말 등 다양한 단말에도 적용할 수 있음은 당연하다고 하겠다.
또한, 암호화 시에 사용한 이미지 조각의 크기, 셔플링 횟수 및 시이드 값은 I 프레임의 헤더에 기록하지 아니하고, 동영상 데이터의 헤더에 기록하거나 또는 별도의 데이터 패킷으로 전송하게 하여도 좋다.
이상에서 본 발명의 기술적 사상을 예시하기 위해 구체적인 실시 예로 도시하고 설명하였으나, 본 발명은 상기와 같이 구체적인 실시 예와 동일한 구성 및 작용에만 국한되지 않고, 여러가지 변형이 본 발명의 범위를 벗어나지 않는 한도 내에서 실시될 수 있다. 따라서, 그와 같은 변형도 본 발명의 범위에 속하는 것으로 간주해야 하며, 본 발명의 범위는 후술하는 특허청구범위에 의해 결정되어야 한다.
1 : 제1 단말 1b : 통신모듈
2 : 제2 단말 2b : 통신모듈
3 : 통신 경로
10 : 암호화 장치 11 : 암호화부
12 : 암호화 여건 획득부 13 : 동작 조건 설정부
20 : 복호화 장치

Claims (4)

  1. 암호화장치(10)가 입력받는 동영상의 프레임 이미지를 복수의 이미지 조각으로 분할한 이후, 2개의 이미지 조각을 랜덤하게 선택하여 위치 교환하는 셔플링(shuffling) 과정의 반복에 의해 암호화된 동영상으로 출력시키는 프레임 선별적 동영상 암호화 방법에 있어서,
    이미지 조각의 크기 및 셔플링 횟수를 설정하는 동작 조건 설정 단계(S20);
    동영상에서 I 프레임을 추출하고, 추출한 I 프레임의 GOP(Group of Picture)에 속하여 추출한 I 프레임에 종속적인 P 프레임 및 B 프레임의 데이터량을 획득하여, 추출한 I 프레임의 암호화에 적용할 셔플링 횟수를 추출한 I 프레임에 종속적인 P 프레임과 B 프레임의 합산 데이터량에 따라 증가되게 재설정하는 I 프레임 추출 단계(S30);
    추출한 I 프레임의 이미지를 설정한 이미지 조각의 크기 및 재설정한 셔플링 횟수에 따라 암호화한 퍼즐화 I 프레임을 생성하는 암호화 단계(S40); 및
    퍼즐화 I 프레임을 동영상에 삽입 대치하여 암호화된 동영상을 출력하는 I 프레임 대치 단계(S50);를 포함하는
    프레임 선별적 동영상 암호화 방법.
  2. 제 1항에 있어서,
    상기 I 프레임 추출 단계(S30)에서 셔플링 횟수의 재설정은 P 프레임과 B 프레임의 합산 데이터량이 많을수록 셔플링 횟수의 증가 횟수를 많게 하는 프레임 선별적 동영상 암호화 방법.
  3. 제 2항에 있어서,
    상기 I 프레임 추출 단계(S30)에서 셔플링 횟수의 재설정은 P 프레임과 B 프레임의 합산 데이터량에 따른 셔플링 횟수의 증가 횟수를 미리 정한 상한선을 넘지 아니하도록 제한하는 프레임 선별적 동영상 암호화 방법.
  4. 제 3항에 있어서,
    상기 동작 조건 설정 단계(S20)는 암호화할 동영상의 I 프레임 이미지 픽셀수 및 프레임 레이트에 따라 이미지 조각의 크기 및 셔플링 횟수를 가변하여 암호화 소요 시간을 조절하는
    프레임 선별적 동영상 암호화 방법.
KR1020170125433A 2017-09-27 2017-09-27 프레임 선별적 동영상 암호화 방법 KR102008424B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170125433A KR102008424B1 (ko) 2017-09-27 2017-09-27 프레임 선별적 동영상 암호화 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170125433A KR102008424B1 (ko) 2017-09-27 2017-09-27 프레임 선별적 동영상 암호화 방법

Publications (2)

Publication Number Publication Date
KR20190036328A KR20190036328A (ko) 2019-04-04
KR102008424B1 true KR102008424B1 (ko) 2019-08-08

Family

ID=66105627

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170125433A KR102008424B1 (ko) 2017-09-27 2017-09-27 프레임 선별적 동영상 암호화 방법

Country Status (1)

Country Link
KR (1) KR102008424B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102528336B1 (ko) 2022-07-22 2023-05-03 주식회사 라이펙스 이미지셔플링과 3d-lea 블록 암호로 이루어진 라이펙스형 이중암호화 앱 모듈장치 및 방법

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102241294B1 (ko) * 2019-12-04 2021-04-16 주식회사 위즈브레인 실시간 스트리밍 영상의 유출 방지장치 및 방법
CN111586442B (zh) * 2020-04-23 2022-05-20 深圳奇迹智慧网络有限公司 流媒体加密方法、装置、计算机设备和存储介质
CN111698534B (zh) * 2020-06-10 2022-07-08 北京奇艺世纪科技有限公司 视频处理方法、装置、电子设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008118406A (ja) * 2006-11-06 2008-05-22 Dainippon Printing Co Ltd コンテンツ暗号方法、コンテンツ暗号装置及びコンピュータプログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100732056B1 (ko) 2005-09-14 2007-06-27 엘지전자 주식회사 디지털 컨텐츠 암호화 및 복호화 방법 및 장치
KR101112157B1 (ko) * 2010-01-25 2012-02-22 주식회사 인쿠시스 데이터 암호화 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008118406A (ja) * 2006-11-06 2008-05-22 Dainippon Printing Co Ltd コンテンツ暗号方法、コンテンツ暗号装置及びコンピュータプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
이지범, and 고형화. '인터리빙과 랜덤 셔플링을 이용한 디지털 영상의 암호화 방법.' 한국통신학회논문지 31.5C (2006): 497-502. (2006.05.31.)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102528336B1 (ko) 2022-07-22 2023-05-03 주식회사 라이펙스 이미지셔플링과 3d-lea 블록 암호로 이루어진 라이펙스형 이중암호화 앱 모듈장치 및 방법

Also Published As

Publication number Publication date
KR20190036328A (ko) 2019-04-04

Similar Documents

Publication Publication Date Title
KR102008424B1 (ko) 프레임 선별적 동영상 암호화 방법
US6674796B1 (en) Statistical multiplexed video encoding for diverse video formats
CN114631320A (zh) 对图像执行人工智能(ai)编码和ai解码的设备和方法
JP4819361B2 (ja) データ圧縮および解凍におけるパラメーター選択
TWI511544B (zh) 用於可調適視訊串流之技術
US9565439B2 (en) System and method for enhancing data compression using dynamic learning and control
CN101080929B (zh) 图像处理装置与图像处理方法
JPH08228342A (ja) 圧縮方法及びコンテキスト・モデラー
JP2013141253A (ja) ビットストリームを選択的にスクランブルする方法
CN108111532A (zh) 视频流数据的播放控制方法及装置、存储介质、终端
JP2016063481A (ja) エンコード装置、デコード装置、ストリーミングシステム、および、ストリーミング方法
CN112868230A (zh) 内容自适应量化强度和位速率建模
CN115398481A (zh) 对图像执行人工智能编码和人工智能解码的设备和方法
CN114631315A (zh) 图像编码方法和设备以及图像解码方法和设备
KR101899554B1 (ko) 동영상 보안 전송 시스템
US20160156970A1 (en) Fast processing and encryption method and system for compressed video
US10848777B2 (en) Interleaved watermarking
KR101997136B1 (ko) 동영상 암호화 방법
CN108347607B (zh) 固定码率且基于行的嵌入式视频压缩方法和图像处理设备
US8798379B2 (en) Image processing method, encoding device, decoding device, and image processing apparatus
KR101757559B1 (ko) 압축 영상의 고속 처리 및 암호화 방법 및 시스템
CN102577412B (zh) 一种图像编码方法和装置
JP2017060004A (ja) エンコード装置、デコード装置、エンコードプログラム、デコードプログラム及びストリーミングシステム
JP2019176500A (ja) エンコード装置、エンコードプログラム、及びストリーミングシステム
CN115834926B (zh) 基于h.265熵编码二值化的视频加密方法

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