KR101837188B1 - Video protection system - Google Patents
Video protection system Download PDFInfo
- Publication number
- KR101837188B1 KR101837188B1 KR1020180004922A KR20180004922A KR101837188B1 KR 101837188 B1 KR101837188 B1 KR 101837188B1 KR 1020180004922 A KR1020180004922 A KR 1020180004922A KR 20180004922 A KR20180004922 A KR 20180004922A KR 101837188 B1 KR101837188 B1 KR 101837188B1
- Authority
- KR
- South Korea
- Prior art keywords
- video
- local key
- nvr
- key
- lks
- Prior art date
Links
- 238000000034 method Methods 0.000 claims abstract description 16
- 238000013475 authorization Methods 0.000 claims description 27
- 238000003384 imaging method Methods 0.000 claims description 8
- 238000004891 communication Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 abstract description 10
- 238000007726 management method Methods 0.000 description 99
- 238000005516 engineering process Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 238000009434 installation Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000009897 systematic effect Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 125000002066 L-histidyl group Chemical group [H]N1C([H])=NC(C([H])([H])[C@](C(=O)[*])([H])N([H])[H])=C1[H] 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000013011 mating Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- 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 or manipulating encoded video stream scene graphs
- H04N21/2347—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
-
- 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/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/765—Interface circuits between an apparatus for recording and another apparatus
- H04N5/77—Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television camera
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
- H04N7/181—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a plurality of remote sources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/60—Digital content management, e.g. content distribution
- H04L2209/603—Digital right managament [DRM]
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
Description
본 발명은, 시스템 내의 비디오의 유출 및 오용을 방지하는 비디오 보호 시스템에 관한 것이다.The present invention relates to a video protection system for preventing leakage and misuse of video in a system.
<비디오 보호 시스템의 정의><Definition of Video Protection System>
비디오 보호 시스템(VPS)(Video Protection System)은, 비디오 관련 시스템 내에서 생성되고 유통되는 모든 비디오 및 디지털 데이터를 보호하기 위한 보안 시스템을 말한다. 여기서, 데이터의 생성은, 예컨대, CCTV 또는 비디오 감시 시스템(VSS)(Video Surveillance System)의 카메라(CAM)를 통해서 이루어질 수 있다.A video protection system (VPS) is a security system for protecting all video and digital data generated and distributed within a video related system. Here, the generation of the data may be performed, for example, through a camera (CAM) of CCTV or Video Surveillance System (VSS).
비디오 보호 시스템(VPS)은, 카메라(CAM)에서의 데이터의 생성단계(예컨대 생성시 리얼타임 암호화), 카메라(CAM)와 네트워크 비디오 레코더(NVR)(Network Video Recorder) 사이의 데이터 송수신 단계(예컨대 통신채널을 암호화함으로써 영상 바꿔치기나 영상 유출을 방지), 네트워크 비디오 레코더(NVR)에서의 저장단계(예컨대 저장되는 모든 파일을 암호화함으로써 유출시 무용화), 네트워크 비디오 레코더(NVR)에서 외부 데이터 송신단계(예컨대 나가는 모든 파일의 암호화 상태를 유지하고 인증을 통한 접근 제어 실행)에서 작용될 수 있다.The video protection system (VPS) includes a data transmission / reception step between the camera (CAM) and the network video recorder (NVR) (e.g., (E.g., encrypting the communication channel to prevent image swapping or image leakage), a storage step in the network video recorder (NVR) (E.g., maintaining the encryption state of all outgoing files and performing access control via authentication).
<CCTV 기술 및 시장의 특성><Characteristics of CCTV technology and market>
본 발명의 비디오 보호 시스템(VPS)은, 비디오 관련 시스템에 모두 적용될 수 있지만, 이하에서는 CCTV 시스템을 주된 예로 들어서 설명한다.The video protection system (VPS) of the present invention can be applied to all video related systems, but the CCTV system will be described below as a main example.
일반적으로, CCTV 시스템의 기본 기능은, 업체별로 큰 차이가 없다. 그리고 대개는, 업체별로 독자적인 비디오 파일 포맷을 사용하지만, 리얼타임 전송 프로토콜(RTP, Real-time Transportation Protocol)이나 mp4 같은 표준 기술을 이용하기도 한다. 코덱(codec)은 H.264와 H.265를 주로 사용하고, 네트워크 비디오 레코더(NVR)의 파일은, 크기나 시간을 기준으로 분할되어 저장되기도 하고 별도의 독자적인 파일시스템에 저장되는 경우도 있다.In general, the basic functions of a CCTV system do not differ greatly from one manufacturer to another. Typically, vendors use proprietary video file formats, but they also use standard technologies such as Real-time Transportation Protocol (RTP) or mp4. The codec is mainly used for H.264 and H.265, and the files of the network video recorder (NVR) may be divided in size or time and stored in a separate file system.
IP 카메라(CAM)에는 백업 용도의 SD 카드 슬롯이 구비되어 있고, 네트워크 비디오 레코더(NVR)는 카메라(CAM)와 IP 망으로 연결된다. 그러나 네트워크 비디오 레코더(NVR) 중에는 인터넷에는 연결되지 않는, 소위 아이솔레이티드(Isolated) 네트워크 비디오 레코더(NVR)가 많다.The IP camera (CAM) is provided with an SD card slot for backup purposes, and the network video recorder (NVR) is connected to the camera (CAM) via the IP network. However, among network video recorders (NVRs), there are many so-called isolated network video recorders (NVRs) that are not connected to the Internet.
비디오의 플레이 면에서는, 브라우저에서 비디오 플레이를 하는 경우도 있지만, 전용 앱(app, application, 응용프로그램)도 많이 사용된다. 다만, HTML5 브라우저에 대한 지원은 아직 많지 않다.On the playing side of video, there are some cases where you play video in the browser, but a lot of dedicated apps (apps, applications, applications) are also used. However, there is not much support for the HTML5 browser yet.
하나의 카메라(CAM)에 대해 여러 채널로부터의 동시 요청이 가능하고, 하나의 카메라(CAM)에서 둘 이상의 비디오 스트림 생성이 가능하다. 이때, 풀(Full) HD인 프라이머리(primary) 비디오의 비트 레이트(bit rate)는 2~5 Mbps 정도이고, 라이브 디스플레이 목적의 비디오는 해상도(resolution)나 비트 레이트가 더 낮아진다.Simultaneous requests from multiple channels for a single camera (CAM) are possible, and more than one video stream can be generated from a single camera (CAM). At this time, the bit rate of the primary video which is full HD is about 2 to 5 Mbps, and the resolution and the bit rate of the video for the live display are lowered.
네트워크 비디오 레코더(NVR)로 전달된 비디오는, 파일 형태로 저장되거나, 화면에 출력되거나, 외부로 실시간 전송되거나, USB 등의 디바이스로 백업될 수 있다. 하나의 네트워크 비디오 레코더(NVR)가 최대 처리 가능한 채널 수는 128채널 정도이다. 이 경우에는 라이브 스트림을 CIF 정도의 해상도로 보내서 화면에 표시되도록 한다.The video delivered to the network video recorder (NVR) can be stored in a file form, output to the screen, transmitted to the outside in real time, or backed up to a USB device. The maximum number of channels that can be processed by one network video recorder (NVR) is about 128 channels. In this case, the live stream is sent in the resolution of CIF and displayed on the screen.
<배경기술>BACKGROUND ART [0002]
종래에 특허문헌에 의하면, 카메라(100) 및 영상 관리 서버(200)를 포함하는 CCTV 영상 보안 관리 시스템이 개시되어 있다. 특허문헌의 도 2에 도시된 바와 같이 이 CCTV 영상 보안 관리 시스템은 영상 관리 서버(200)가 카메라(100)에 영상의 제공을 요청하면, 카메라(100)가 부호화된 영상을 영상 관리 서버(200)에 송신하고, 영상 관리 서버(200)는 상기 부호화된 영상을 원상복원하고, 추가적으로 프라이버시 제공 영상으로 변환하여 저장(단락 [28])한다.Conventionally, according to the patent document, a CCTV image security management system including a camera 100 and a video management server 200 is disclosed. As shown in FIG. 2 of the patent document, when the video management server 200 requests the camera 100 to provide an image, the CCTV image security management system transmits the encoded image to the video management server 200 , And the video management server 200 restores the encoded image to the original state and further converts it into a privacy-providing image and stores it (paragraph [28]).
여기서, 영상 관리 서버(200)는 영상 관리 서버(200)에 연결된 카메라(100) 전체의 식별 정보 및 패스워드를 저장하고, 카메라(100)는 카메라 자신의 식별 정보 및 패스워드를 저장할 수 있다. 상기 식별 정보는, 예를 들어 고유의 아이디(ID)일 수 있다. 영상 관리 서버(200)는 카메라(100)에 촬영 영상 제공 요청을 송신할 수 있다. 일 실시예에 따르면, 영상 관리 서버(200)가 상기 촬영 영상 제공 요청을 카메라(100)에 송신하지 않더라도, 카메라(100)가 촬영 영상을 제공(단락 [33], [34])할 수 있다.Here, the image management server 200 stores the identification information and the password of the entire camera 100 connected to the video management server 200, and the camera 100 can store the identification information and the password of the camera itself. The identification information may be, for example, a unique ID. The video management server 200 may transmit a photographic image providing request to the camera 100. [ According to an embodiment, the camera 100 may provide an image (paragraph [33], [34]) even if the image management server 200 does not transmit the captured image providing request to the camera 100 .
카메라(100)는 타임스탬프를 생성하고, 상기 카메라의 패스워드와 상기 타임스탬프를 제1 일방향 함수에 입력하여 부호화 키를 생성하며, 상기 부호화 키를 이용하여 촬영 영상을 대칭형 부호화하여 부호화 영상 데이터를 생성하고, 상기 부호화 영상 데이터, 상기 타임스탬프 및 상기 카메라의 식별정보를 영상 관리 서버에 송신(단락 [35])한다.The camera 100 generates a time stamp, generates a coding key by inputting the password of the camera and the time stamp into a first one-way function, and symmetrically codes the captured image using the coding key to generate encoded video data And transmits the encoded image data, the time stamp, and the identification information of the camera to the video management server (paragraph [35]).
영상 관리 서버(200)는 상기 수신된 카메라의 식별정보에 대응하는 패스워드를 기 저장된 카메라 정보에서 조회하여 카메라 패스워드를 얻는다. 또한, 영상 관리 서버(200)는 상기 카메라 패스워드 및 상기 수신된 타임스탬프를 상기 카메라와 공유된 소정의 일방향 함수에 입력하여 부호화 키를 생성한다. 예를 들어, 상기 부호화 키는 상기 카메라 패스워드 및 상기 타임스탬프 값을 입력 파라미터로 하는 제1 해쉬 함수의 해쉬 값일 수 있다. 또한, 영상 관리 서버(200)는 상기 수신된 부호화 영상 데이터를 상기 부호화 키를 이용하여 원상복원(단락 [38]~[40])한다.The video management server 200 retrieves the password corresponding to the received camera identification information from the pre-stored camera information to obtain the camera password. Also, the video management server 200 generates the encoding key by inputting the camera password and the received time stamp into a predetermined one-way function shared with the camera. For example, the encoding key may be a hash value of the first hash function using the camera password and the time stamp value as input parameters. In addition, the video management server 200 reconstructs the received encoded image data using the encoding key (paragraph [38] to [40]).
이 특허문헌의 CCTV 영상 보안 관리 시스템은 카메라(100)의 패스워드를 알지 못하면, 부호화 키를 얻을 수 없으므로 부호화 영상 데이터를 원상복원할 수 없고, 따라서, 카메라(100)가 영상 관리 서버(200)에 송신하는 데이터가 중간에 유출되더라도 원본 영상이 유출되는 것은 막을 수 있는 효과(단락 [41])가 있다.If the password of the camera 100 is not known, the CCTV video security management system of this patent document can not obtain the encoding key, and thus the encoded video data can not be restored to the original state. Therefore, the camera 100 can not restore the encoded video data to the video management server 200 There is an effect (paragraph [41]) that can prevent the original image from being leaked even if the data to be transmitted is leaked in the middle.
<보안공격 모델-문제점><Security attack model - Problem>
그런데 이러한 종래의 일반적인 CCTV 시스템에 있어서는, 기본적으로 ID와 패스워드(password)에 의존하는 취약한 보안이 문제된다.However, in such a conventional general CCTV system, weak security that depends on an ID and a password is basically problematic.
먼저, 시스템 사용자가 자신의 ID와 패스워드를 타인과 공유할 수 있다. 그리고 모든 네트워크와 I/O 채널에서 중개자 공격(man-in-the-middle attack)이 발생할 수 있다. 또한, 시스템 내의 모든 통신 메시지에 대한 재전송(replay) 공격이 가능하다. 그리고 바이너리로 제공되는 에이전트 라이브러리(agent library)에 대한 리버스 엔지니어링 공격이 가능하다. 또한, 파일 형태로 저장되는 모든 데이터에 대해 변경, 복사, 삭제 등이 가능하다.First, the system user can share his / her ID and password with others. And a man-in-the-middle attack can occur on all networks and I / O channels. In addition, a replay attack is possible for all communication messages in the system. It is also possible to reverse-engineer attacks against the binary agent library. In addition, all data stored in a file format can be changed, copied, deleted, and so on.
그리고 키의 생성 제공부, 예컨대 특허문헌의 카메라(100)에 대해, 또는 카메라에 연결된 장치에 직접 연결 설치되는 로컬 키 생성 제공부에 대해 제거, 변경 등의 공격이 가능하다. 그리고 로컬 키 서버(LKS)에 대해 랜덤 메시지 공격이 가능하다. 그리고 로컬 키 서버(LKS) 내부 저장장치에 대한 접근 공격이 가능하다. 또는 키의 외부 생성 제공부인 액세스 승인 서버(AAS)(Access Authrization Server)에 대한 침입 공격이 가능하다. 그리고 액세스 승인 서버(AAS)에 대한 DDOS 공격이 가능하다.It is also possible to attack the camera 100 of the key creation device, for example, the patent document, or to remove, change, or the like to the local key generating device installed directly to the device connected to the camera. And a random message attack against the local key server (LKS) is possible. And an access attack against the internal storage device of the local key server (LKS) is possible. Or an intrusion attack against an Access Authorization Server (AAS) (Access Authization Server), which is an external generation providing key. And DDOS attacks against the Access Authorization Server (AAS) are possible.
<요구사항-과제><Requirement - Assignment>
상기 문제를 해소하기 위해, 본 발명은, CCTV 시스템을 통해서 유통되는 비디오 파일을 전 과정에 걸쳐 보호하는 비디오 보호 시스템을 제공하고자 한다.In order to solve the above problem, the present invention provides a video protection system that protects a video file distributed through a CCTV system over the entire process.
또한, 카메라(CAM), 네트워크 비디오 레코더(NVR), 로컬 비디오 플레이어(LVP)(Local Video Player), 리모트 비디오 플레이어(RVP)(Remote Video Player) 등 전체에 필요한 인증과 암호화 및 복호화를 수행하는 비디오 보호 시스템을 제공하고자 한다.In addition, a video which performs authentication, encryption, and decryption necessary for the whole of a camera (CAM), a network video recorder (NVR), a local video player (LVP), a remote video player Protection system.
그리고 DRM 기술을 기반으로 한 비디오 보호 시스템을 구현하여 제공하고자 한다.And we implement and implement a video protection system based on DRM technology.
그리고 인터넷이 없는 아이솔레이티드(isolated) 환경에도 적용이 가능한 보안 메커니즘을 고안하여 구현된 비디오 보호 시스템을 제공하고자 한다.And we are trying to provide a video protection system by devising a security mechanism that can be applied to an isolated environment without the Internet.
그리고 가능한 한 다양한 CCTV 시스템의 동작 모델을 지원할 수 있도록 포괄적인 시스템 구성이 가능한 비디오 보호 시스템을 제공하고자 한다.And to provide a comprehensive system configurable video protection system to support as many CCTV system operation models as possible.
그리고 최강의 보안성을 추구하기보다는 비용 대비 효용성이 있는 보안 기술을 기반으로 하는 비디오 보호 시스템을 제공하고자 한다.Rather than seeking the best security, we want to provide a video protection system based on cost-effective security technology.
그리고 복수의 네트워크 비디오 레코더(NVR)가 구비된 멀티 네트워크 비디오 레코더(NVR) 환경에 있어서, 그 중의 어느 하나가 프라이머리 네트워크 비디오 레코더(NVR)로 설정되고, 나머지는 세컨더리 네트워크 비디오 레코더(NVR)로 설정되어, 프라이머리 네트워크 비디오 레코더(NVR)은 세컨더리 네트워크 비디오 레코더(NVR)의 인증 및 플레이 키(PK) 발급에 이용됨으로써, 체계적인 인증 및 플레이 키 관리가 가능한 비디오 보호 시스템을 제공하고자 한다.In a multi-network video recorder (NVR) environment equipped with a plurality of network video recorders (NVR), one of them is set as a primary network video recorder (NVR) and the other is set as a secondary network video recorder , And the primary network video recorder (NVR) is used for authentication and play key (PK) issuance of the secondary network video recorder (NVR), thereby providing a video protection system capable of systematic authentication and play key management.
상기 과제를 달성하기 위한 본 발명의 비디오 보호 시스템은, 촬상된 비디오 데이터가 암호화된 암호화 비디오 데이터를 출력하는 카메라(CAM), 및 상기 카메라(CAM)로부터 상기 암호화 비디오 데이터를 받아 저장하는 네트워크 비디오 레코더(NVR)가 포함되어 이루어지는 비디오 보호 시스템에 있어서, 상기 카메라(CAM)에는, 상기 암호화 비디오 데이터를 생성하는 비디오 암호화 에이전트( VEA )가 구비되고, 상기 네트워크 비디오 레코더(NVR)에는, 상기 암호화 비디오 데이터를 관리하는 비디오 관리 에이전트( VMA )가 구비되며, 상기 네트워크 비디오 레코더(NVR)에 착탈 가능하게 접속되어, 로컬 키(LK)를 제공하는 로컬 키 서버( LKS )가 구비되고, 상기 네트워크 비디오 레코더(NVR)로부터 상기 암호화 비디오 데이터를 받아 플레이하는 로컬 비디오 플레이어(LVP)가 구비되며, 상기 로컬 비디오 플레이어(LVP)에는, 상기 암호화 비디오 데이터를 복호화하는 비디오 복호화 에이전트( VDA )가 구비되고, 상기 로컬 키(LK)의 생성 시에 있어서, 상기 비디오 관리 에이전트(VMA)는, 상기 로컬 키 서버(LKS)에 상기 로컬 키(LK)의 생성을 요청하고, 상기 로컬 키 서버(LKS)는, 상기 요청에 따라 비로소 상기 로컬 키(LK)를 신규 생성하고 상기 비디오 관리 에이전트(VMA)에 전송하며, 상기 암호화 데이터의 생성 전에 있어서, 상기 네트워크 비디오 레코더(NVR)는, 상기 비디오 관리 에이전트(VMA)를 호출하고, 상기 비디오 관리 에이전트(VMA)는, 신규 생성된 상기 로컬 키(LK)를 상기 비디오 암호화 에이전트(VEA)에 전송하며, 상기 암호화 데이터의 생성 시에 있어서, 상기 카메라(CAM)는, 상기 비디오 데이터의 촬상 후에 상기 비디오 암호화 에이전트(VEA)를 호출하고, 상기 비디오 암호화 에이전트(VEA)는, 상기 로컬 키(LK)를 이용하여 상기 비디오 데이터를 암호화하여 상기 암호화 비디오 데이터를 생성하며, 상기 암호화 비디오 데이터의 복호화 시에, 상기 비디오 복호화 에이전트(VDA)는, 상기 로컬 키 서버(LKS)에 상기 로컬 키(LK)를 요청하고, 상기 로컬 키 서버(LKS)는, 상기 로컬 키(LK)를 상기 비디오 복호화 에이전트(VDA)에 전송하며, 상기 비디오 복호화 에이전트(VDA)는, 상기 로컬 키(LK)로 상기 암호화 비디오 데이터를 복호화함을 특징으로 한다.According to an aspect of the present invention, there is provided a video protection system including a camera (CAM) for outputting encrypted video data encrypted with captured video data, and a network video recorder for receiving and storing the encrypted video data from the camera (NVR) , wherein the camera (CAM ) is provided with a video encryption agent ( VEA ) for generating the encrypted video data, and the network video recorder (NVR) And a local key server ( LKS ), which is detachably connected to the network video recorder (NVR) and provides a local key (LK), is provided with a video management agent ( VMA ) A local video player < RTI ID = 0.0 > (LVP) , wherein the local video player (LVP) is provided with a video decryption agent ( VDA ) for decrypting the encrypted video data, and in generating the local key (LK), the video management agent VMA) requests the local key server (LKS) to generate the local key (LK), and the local key server (LKS) generates the new local key (LK) Wherein the network video recorder (NVR) calls the video management agent (VMA) before generating the encrypted data, and the video management agent (VMA) (CAM) transmits the local key (LK) to the video encryption agent (VEA) when generating the encrypted data, wherein the camera (VEA), the video encryption agent (VEA) encrypts the video data using the local key (LK) to generate the encrypted video data, and when decrypting the encrypted video data, The video decryption agent VDA requests the local key server LKS for the local key LK and the local key server LKS sends the local key LK to the video decryption agent VDA And the video decoding agent (VDA) decrypts the encrypted video data with the local key (LK).
여기서, 상기 로컬 비디오 플레이어(LVP)는, 상기 비디오 관리 에이전트(VMA)를 통하여 상기 로컬 키 서버(LKS)에서 사용자 인증을 받음이 바람직하다.Here, the local video player (LVP) preferably receives user authentication from the local key server (LKS) through the video management agent (VMA).
한편, 본 발명의 비디오 보호 시스템은, 촬상된 비디오 데이터가 암호화된 암호화 비디오 데이터를 출력하는 카메라(CAM), 및 상기 카메라(CAM)로부터 상기 암호화 비디오 데이터를 받아 저장하는 네트워크 비디오 레코더(NVR)가 포함되어 이루어지는 비디오 보호 시스템에 있어서, 상기 카메라(CAM)에는, 상기 암호화 비디오 데이터를 생성하는 비디오 암호화 에이전트( VEA )가 구비되고, 상기 네트워크 비디오 레코더(NVR)에는, 상기 암호화 비디오 데이터를 관리하는 비디오 관리 에이전트(VMA)가 구비되며, 상기 네트워크 비디오 레코더(NVR)에 착탈 가능하게 접속되어, 로컬 키(LK)를 제공하는 로컬 키 서버( LKS )가 구비되고, 상기 네트워크 비디오 레코더(NVR)로부터 키 블럭(key block)이 추가된 상기 암호화 비디오 데이터를 받아 플레이하는 리모트 비디오 플레이어(RVP)가 구비되며, 상기 리모트 비디오 플레이어(RVP)에는, 상기 키 블럭이 추가된 상기 암호화 비디오 데이터를 복호화하는 비디오 복호화 에이전트( VDA )가 구비되고, 상기 로컬 키(LK)의 생성 시에 있어서, 상기 비디오 관리 에이전트(VMA)는, 상기 로컬 키 서버(LKS)에 상기 로컬 키(LK)의 생성을 요청하고, 상기 로컬 키 서버(LKS)는, 상기 요청에 따라 비로소 상기 로컬 키(LK)를 신규 생성하고 상기 비디오 관리 에이전트(VMA)에 전송하며, 상기 암호화 데이터의 생성 전에 있어서, 상기 네트워크 비디오 레코더(NVR)는, 상기 비디오 관리 에이전트(VMA)를 호출하고, 상기 비디오 관리 에이전트(VMA)는, 신규 생성된 상기 로컬 키(LK)를 상기 비디오 암호화 에이전트(VEA)에 전송하며, 상기 암호화 데이터의 생성 시에 있어서, 상기 카메라(CAM)는, 상기 비디오 데이터의 촬상 후에 상기 비디오 암호화 에이전트(VEA)를 호출하고, 상기 비디오 암호화 에이전트(VEA)는, 상기 로컬 키(LK)를 이용하여 상기 비디오 데이터를 암호화하여 상기 암호화 비디오 데이터를 생성하며, 상기 키 블럭의 생성 시에, 상기 비디오 관리 에이전트(VMA)는, 암호화에 사용된 상기 로컬 키(LK)에 대한 상기 키 블럭을 상기 로컬 키 서버(LKS)에 요청하고, 상기 로컬 키 서버(LKS)는, 저장된 플레이 키(PK)로 상기 로컬 키(LK)를 암호화한 것과, 상기 플레이 키(PK)에 해당되는 플레이 키 ID(PKID)가 적어도 포함되도록 상기 키 블럭을 생성하며, 상기 암호화 비디오 데이터의 복호화 시에, 상기 비디오 복호화 에이전트(VDA)는, 상기 키 블럭의 상기 플레이 키 ID(PKID)를 이용해 상기 로컬 키 서버(LKS)로부터 얻은 상기 플레이 키(PK)로 복호화한 상기 로컬 키(LK)로 상기 암호화 비디오 데이터를 복호화함을 특징으로 한다.On the other hand, the video protection system of the present invention includes a camera (CAM) for outputting encrypted video data in which captured video data is encrypted, and a network video recorder (NVR) for receiving and storing the encrypted video data from the camera Wherein the camera (CAM) is provided with a video encryption agent ( VEA ) for generating the encrypted video data, and the network video recorder (NVR) is provided with a video And a local key server ( LKS ) provided with a management agent (VMA) and detachably connected to the network video recorder (NVR) for providing a local key (LK) block (block key) is added to the encrypted remote playing the video data received video player Following is equipped with a (RVP), the remote video player (RVP), the is provided a video decoding agent (VDA) for decoding the encoded video data, wherein the key block is added upon creation of the local key (LK) Wherein the video management agent VMA requests the local key server LKS to generate the local key LK and the local key server LKS transmits the local key LK (NVR) invokes the video management agent (VMA), and the video management agent (VMA) creates a new video management agent ) Transmits the newly generated local key (LK) to the video encryption agent (VEA), and in generating the encrypted data, the camera (CAM) The video encryption agent VEA calls the video encryption agent VEA after imaging and the video encryption agent VEA encrypts the video data using the local key LK to generate the encrypted video data, , The video management agent (VMA) requests the local key server (LKS) for the key block for the local key (LK) used for encryption, and the local key server (LKS) Generates the key block so that at least the local key (LK) encrypted with the key (PK) and the play key ID (PKID) corresponding to the play key (PK) are included at least in decoding the encrypted video data , The video decoding agent VDA uses the play key ID PKID of the key block to decrypt the local key LK decrypted with the play key PK obtained from the local key server LKS It characterized in that the decoding of video data expensive.
여기서, 상기 로컬 키(LK)의 생성 시에 있어서, 상기 로컬 키 서버(LKS)는, 상기 로컬 키(LK)와 함께 로컬 키 ID(LKID)를 상기 비디오 관리 에이전트(VMA)에 전송하고, 상기 키 블럭의 생성 시에 있어서, 상기 비디오 관리 에이전트(VMA)는, 상기 로컬 키 서버(LKS)로부터 받았던 상기 로컬 키 ID(LKID)를 상기 로컬 키 서버(LKS)에 제공하면서 상기 키 블럭을 요청하고, 상기 로컬 키 서버(LKS)는, 상기 로컬 키 ID(LKID)에 해당되는 상기 로컬 키(LK)를 대상으로 상기 키 블럭을 생성함이 바람직하다.Here, in generating the local key LK, the local key server LKS transmits a local key ID (LKID) together with the local key LK to the video management agent (VMA) In generating the key block, the video management agent (VMA) requests the key block while providing the local key ID (LKID) received from the local key server (LKS) to the local key server (LKS) , The local key server LKS generates the key block for the local key LK corresponding to the local key ID LKID.
또한, 상기 로컬 키 서버(LKS)가 응답하지 않는 경우, 상기 비디오 관리 에이전트(VMA)는, 임시 생성한 플레이 키(PK)를 이용하여 상기 로컬 키(LK)를 암호화하여 임시 키 블럭을 생성하고, 상기 로컬 키 서버(LKS)가 복구된 후에, 상기 비디오 관리 에이전트(VMA)는, 상기 임시 플레이 키(PK)를 사용한 파일들에 대해, 상기 임시 키 블럭을 상기 로컬 키 서버(LKS)의 플레이 키(PK)로 재암호화하여 새로 키 블럭을 생성함이 바람직하다.If the local key server LKS does not respond, the video management agent VMA encrypts the local key LK using the temporarily generated play key PK to generate a temporary key block , After the local key server (LKS) is restored, the video management agent (VMA) transmits the temporary key block to the local key server (LKS) for files using the temporary play key (PK) It is preferable to re-encrypt the key block PK to generate a new key block.
또한, 상기 네트워크 비디오 레코더(NVR)가 복수 구비된 멀티 네트워크 비디오 레코더(NVR) 환경에 있어서, 어느 하나의 네트워크 비디오 레코더(NVR)가 프라이머리 네트워크 비디오 레코더(NVR)로 설정되고, 나머지의 네트워크 비디오 레코더(NVR)가 세컨더리 네트워크 비디오 레코더(NVR)로 설정되며, 상기 프라이머리 네트워크 비디오 레코더(NVR)에는 액세스 승인 서버(AAS)의 모듈이 탑재되고, 상기 세컨더리 네트워크 비디오 레코더(NVR)에는 액세스 승인 에이전트(AAA)의 모듈이 탑재되며, 상기 액세스 승인 서버(AAS)의 모듈은, 상기 액세스 승인 에이전트(AAA)의 모듈들과 통신을 통해 해당 세컨더리 네트워크 비디오 레코더(NVR)에 대한 인증을 수행하도록 구성됨이 바람직하다.In a multi-network video recorder (NVR) environment in which a plurality of network video recorders (NVRs) are provided, one of the network video recorders (NVR) is set as a primary network video recorder (NVR) (NVR) is set as a secondary network video recorder (NVR), the primary network video recorder (NVR) is equipped with a module of an access authorization server (AAS), the secondary network video recorder Wherein the module of the Access Authorization Agent (AAA) is configured to authenticate the corresponding secondary network video recorder (NVR) through communication with the modules of the Access Authorization Agent (AAA) desirable.
또한, 상기 네트워크 비디오 레코더(NVR)가 복수 구비된 멀티 네트워크 비디오 레코더(NVR) 환경에 있어서, 어느 하나의 네트워크 비디오 레코더(NVR)가 프라이머리 네트워크 비디오 레코더(NVR)로 설정되고, 나머지의 네트워크 비디오 레코더(NVR)가 세컨더리 네트워크 비디오 레코더(NVR)로 설정되며, 상기 프라이머리 네트워크 비디오 레코더(NVR)에는 액세스 승인 서버(AAS)의 모듈이 탑재되고, 상기 세컨더리 네트워크 비디오 레코더(NVR)에는 액세스 승인 에이전트(AAA)의 모듈이 탑재되며, 상기 세컨더리 네트워크 비디오 레코더(NVR)는, 상기 액세스 승인 에이전트(AAA)를 통해 상기 프라이머리 네트워크 비디오 레코더(NVR)의 상기 액세스 승인 서버(AAS)에 상기 플레이 키(PK)의 발급을 요청하고, 상기 프라이머리 네트워크 비디오 레코더(NVR)는, 접속되어 있는 상기 로컬 키 서버(LKS)로부터 상기 플레이 키(PK)를 발급받아, 상기 액세스 승인 서버(AAS)를 통해 상기 액세스 승인 에이전트(AAA)에 전달하도록 구성됨이 바람직하다.In a multi-network video recorder (NVR) environment in which a plurality of network video recorders (NVRs) are provided, one of the network video recorders (NVR) is set as a primary network video recorder (NVR) (NVR) is set as a secondary network video recorder (NVR), the primary network video recorder (NVR) is equipped with a module of an access authorization server (AAS), the secondary network video recorder Wherein the secondary network video recorder NVR is equipped with a module of the primary network video recorder NVR via the access authorization agent AAA to the access authorization server AAS of the primary network video recorder NVR, PK), and the primary network video recorder (NVR) And is configured to issue the play key (PK) from the local key server (LKS) and deliver it to the access authorization agent (AAA) through the access authorization server (AAS).
한편, 본 발명의 비디오 보호 시스템은, 촬상된 비디오 데이터가 암호화된 암호화 비디오 데이터를 출력하는 카메라(CAM), 및 상기 카메라(CAM)로부터 상기 암호화 비디오 데이터를 받아 저장하는 네트워크 비디오 레코더(NVR)가 포함되어 이루어지는 비디오 보호 시스템에 있어서, 상기 카메라(CAM)에는, 상기 암호화 비디오 데이터를 생성하는 비디오 암호화 에이전트( VEA )가 구비되고, 상기 네트워크 비디오 레코더(NVR)에는, 상기 암호화 비디오 데이터를 관리하는 비디오 관리 에이전트(VMA)가 구비되며, 상기 네트워크 비디오 레코더(NVR)에 착탈 가능하게 접속되어, 로컬 키(LK)를 제공하는 로컬 키 서버( LKS )가 구비되고, 상기 로컬 키(LK)의 생성 시에 있어서, 상기 비디오 관리 에이전트(VMA)는, 상기 로컬 키 서버(LKS)에 상기 로컬 키(LK)의 생성을 요청하고, 상기 로컬 키 서버(LKS)는, 상기 요청에 따라 비로소 상기 로컬 키(LK)를 신규 생성하고 상기 비디오 관리 에이전트(VMA)에 전송하며, 상기 암호화 데이터의 생성 전에 있어서, 상기 네트워크 비디오 레코더(NVR)는, 상기 비디오 관리 에이전트(VMA)를 호출하고, 상기 비디오 관리 에이전트(VMA)는, 신규 생성된 상기 로컬 키(LK)를 상기 비디오 암호화 에이전트(VEA)에 전송하며, 상기 암호화 데이터의 생성 시에 있어서, 상기 카메라(CAM)는, 상기 비디오 데이터의 촬상 후에 상기 비디오 암호화 에이전트(VEA)를 호출하고, 상기 비디오 암호화 에이전트(VEA)는, 상기 로컬 키(LK)를 이용하여 상기 비디오 데이터를 암호화하여 상기 암호화 비디오 데이터를 생성하며, 상기 로컬 키 서버(LKS)가 응답하지 않는 경우, 상기 비디오 관리 에이전트(VMA)는, 상기 로컬 키(LK)를 자체 생성해서 사용함을 특징으로 한다.On the other hand, the video protection system of the present invention includes a camera (CAM) for outputting encrypted video data in which captured video data is encrypted, and a network video recorder (NVR) for receiving and storing the encrypted video data from the camera Wherein the camera (CAM) is provided with a video encryption agent ( VEA ) for generating the encrypted video data, and the network video recorder (NVR) is provided with a video is equipped with a management agent (VMA), the network is detachably connected to the video recorder (NVR), it is provided with a local key, the server (LKS) to provide a local key (LK), in the generation of the local key (LK) , The video management agent (VMA) requests the local key server (LKS) to generate the local key (LK) The local key server LKS generates the new local key LK and transmits it to the video management agent VMA in response to the request, and before generating the encrypted data, the network video recorder (NVR) (VMA), the video management agent (VMA) sends the newly generated local key (LK) to the video encryption agent (VEA), and upon generation of the encrypted data (CAM) calls the video encryption agent (VEA) after imaging the video data, and the video encryption agent (VEA) encrypts the video data using the local key (LK) The video management agent (VMA) generates the encrypted video data, and if the local key server (LKS) does not respond, the video management agent (VMA) Characterized by using the property.
본 발명에 의하면, CCTV 시스템을 통해서 유통되는 비디오 파일을 전 과정에 걸쳐 보호하는 비디오 보호 시스템이 제공된다.According to the present invention, a video protection system that protects a video file distributed through a CCTV system over the entire process is provided.
또한, 카메라(CAM), 네트워크 비디오 레코더(NVR), 로컬 비디오 플레이어(LVP)(Local Video Player), 리모트 비디오 플레이어(RVP)(Remote Video Player) 등 전체에 필요한 인증과 암호화 및 복호화를 수행하는 비디오 보호 시스템이 제공된다.In addition, a video which performs authentication, encryption, and decryption necessary for the whole of a camera (CAM), a network video recorder (NVR), a local video player (LVP), a remote video player A protection system is provided.
그리고 DRM 기술을 기반으로 한 비디오 보호 시스템이 제공된다.And a video protection system based on DRM technology is provided.
그리고 인터넷이 없는 아이솔레이티드(isolated) 환경에도 적용이 가능한 보안 메커니즘을 고안하여 구현된 비디오 보호 시스템이 제공된다.Also, a video protection system implemented by devising a security mechanism applicable to an isolated environment without the Internet is provided.
그리고 가능한 한 다양한 CCTV 시스템의 동작 모델을 지원할 수 있도록 포괄적인 시스템 구성이 가능한 비디오 보호 시스템이 제공된다.A comprehensive system configurable video protection system is provided to support as many CCTV system operation models as possible.
그리고 최강의 보안성을 추구하기보다는 비용 대비 효용성이 있는 보안 기술을 기반으로 하는 비디오 보호 시스템이 제공된다.Rather than seeking the ultimate in security, video protection systems based on cost-effective security technologies are provided.
그리고 복수의 네트워크 비디오 레코더(NVR)가 구비된 멀티 네트워크 비디오 레코더(NVR) 환경에 있어서, 그 중의 어느 하나가 프라이머리 네트워크 비디오 레코더(NVR)로 설정되고, 나머지는 세컨더리 네트워크 비디오 레코더(NVR)로 설정되어, 프라이머리 네트워크 비디오 레코더(NVR)은 세컨더리 네트워크 비디오 레코더(NVR)의 인증 및 플레이 키(PK) 발급에 이용됨으로써, 체계적인 인증 및 플레이 키 관리가 가능한 비디오 보호 시스템이 제공된다.In a multi-network video recorder (NVR) environment equipped with a plurality of network video recorders (NVR), one of them is set as a primary network video recorder (NVR) and the other is set as a secondary network video recorder , And the primary network video recorder (NVR) is used for authentication and play key (PK) issuance of the secondary network video recorder (NVR), thereby providing a video protection system capable of systematic authentication and play key management.
도 1은, 본 발명의 비디오 보호 시스템의 일실시예의 구성을 나타내는 개략 블럭도로서, a)는 복수의 네트워크 비디오 레코더(NVR)들이 서로 연결되지 않고 독자적으로 인증 및 키 관리를 행하는 형태를 나타내고, b)는 복수의 네트워크 비디오 레코더(NVR)들이 서로 연결되어 체계적으로 인증 및 키 관리를 행하는 형태를 나타낸다.
도 2는, 본 발명의 비디오 보호 시스템의 구성요소인 카메라(CAM), 네트워크 비디오 레코더(NVR) 및 로컬 키 서버(LKS) 사이의 데이터 흐름을 나타내는 시퀀스다이어그램이다.
도 3은, 로컬 비디오 플레이어(LVP)에서의 재생시에, 본 발명의 비디오 보호 시스템의 구성요소인 네트워크 비디오 레코더(NVR)/로컬 비디오 플레이어(LVP) 및 로컬 키 서버(LKS) 사이의 데이터 흐름을 나타내는 시퀀스다이어그램이다.
도 4는, 리모트 비디오 플레이어(RVP)에서의 재생시에, 본 발명의 비디오 보호 시스템의 구성요소인 리모트 비디오 플레이어(RVP), 네트워크 비디오 레코더(NVR) 및 로컬 키 서버(LKS) 사이의 데이터 흐름을 나타내는 시퀀스다이어그램이다.FIG. 1 is a schematic block diagram showing the configuration of an embodiment of the video protection system of the present invention. FIG. 1 (a) shows a configuration in which a plurality of network video recorders (NVRs) independently perform authentication and key management, b) shows a form in which a plurality of network video recorders (NVRs) are connected to each other to systematically perform authentication and key management.
2 is a sequence diagram illustrating data flow between a camera (CAM), a network video recorder (NVR), and a local key server (LKS) that are components of the video protection system of the present invention.
3 shows the data flow between the network video recorder (NVR) / local video player (LVP) and the local key server (LKS), which are components of the video protection system of the present invention, at the time of playback in the local video player Fig.
4 shows the data flow between the remote video player RVP, the network video recorder NVR and the local key server LKS, which are components of the video protection system of the present invention, at the time of playback in the remote video player RVP Fig.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라, 서로 다른 다양한 형태로 구현될 수 있고, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention, and how to achieve them, will become apparent with reference to the embodiments described in detail below with reference to the accompanying drawings. It should be understood, however, that the invention is not limited to the disclosed embodiments, but may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein, It is intended that the disclosure of the present invention be limited only by the terms of the appended claims. Like reference numerals refer to like elements throughout the specification.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은, 명백하게 특별히 정의되지 않는 한, 이상적으로 또는 과도하게 해석되지 않는다.Unless defined otherwise, all terms (including technical and scientific terms) used herein may be used in a sense commonly understood by one of ordinary skill in the art to which this invention belongs. In addition, commonly used predefined terms are not ideally or excessively interpreted unless expressly defined otherwise.
<전체 시스템 구성><Overall system configuration>
도 1 (a)에 도시된 바와 같이, 상기 과제를 달성하기 위한 본 발명의 비디오 보호 시스템은, 네트워크 비디오 레코더(NVR) 자체의 플레이어가 구비된 구성에서는, 촬상된 비디오 데이터가 암호화된 암호화 비디오 데이터를 출력하는 카메라(CAM)(10), 및 상기 카메라(CAM)(10)로부터 상기 암호화 비디오 데이터를 받아 저장하는 네트워크 비디오 레코더(NVR)(20)가 포함되어 이루어지는 비디오 보호 시스템에 있어서, 상기 카메라(CAM)(10)에는, 상기 암호화 비디오 데이터를 생성하는 비디오 암호화 에이전트( VEA )가 구비되고, 상기 네트워크 비디오 레코더(NVR)(20)에는, 상기 암호화 비디오 데이터를 관리하는 비디오 관리 에이전트(VMA)가 구비되며, 상기 네트워크 비디오 레코더(NVR)(20)에 착탈 가능하게 접속되어, 로컬 키(LK)를 제공하는 로컬 키 서버( LKS )( 40)가 구비되고, 상기 네트워크 비디오 레코더(NVR)(20)로부터 상기 암호화 비디오 데이터를 받아 플레이하는 로컬 비디오 플레이어(LVP)가 구비되며, 상기 로컬 비디오 플레이어(LVP)에는, 상기 암호화 비디오 데이터를 복호화하는 비디오 복호화 에이전트( VDA )가 구비되는 구성으로 구현될 수 있다.As shown in Fig. 1 (a), in the video protection system according to the present invention for achieving the above object, in a configuration in which a player of the network video recorder (NVR) itself is provided, according to the camera (CAM) (10), and a video protection system comprising includes a network video recorder (NVR) (20) for receiving and storing the encrypted video data from the camera (CAM) (10) for outputting, the camera (CAM) 10 is provided with a video encryption agent ( VEA ) for generating the encrypted video data, and the network video recorder (NVR) 20 is provided with a video management agent (VMA) that is provided, it is detachably connected to the network video recorder (NVR) (20), the local key, the server (LKS) (40) providing a local key (LK) sphere And, the network video recorder (NVR), and a local video player (LVP) to play receive the encrypted video data provided from the 20, the local video player (LVP), the video decoding agents for decrypting the encrypted video data ( VDA ) may be provided.
여기서, 상기 로컬 키(LK)의 생성 시에 있어서, 상기 비디오 관리 에이전트(VMA)는, 상기 로컬 키 서버(LKS)(40)에 상기 로컬 키(LK)의 생성을 요청하고, 상기 로컬 키 서버(LKS)는, 상기 요청에 따라 비로소 상기 로컬 키(LK)를 신규 생성하고 상기 비디오 관리 에이전트(VMA)에 전송한다.When generating the local key LK, the video management agent VMA requests the local
그리고 상기 암호화 데이터의 생성 전에 있어서, 상기 네트워크 비디오 레코더(NVR)(20)는, 상기 비디오 관리 에이전트(VMA)를 호출하고, 상기 비디오 관리 에이전트(VMA)는, 신규 생성된 상기 로컬 키(LK)를 상기 비디오 암호화 에이전트(VEA)에 전송한다.(NVR) 20 calls the video management agent (VMA), and the video management agent (VMA) calls the newly created local key (LK) To the video encryption agent (VEA).
그리고 상기 암호화 데이터의 생성 시에 있어서, 상기 카메라(CAM)(10)는, 상기 비디오 데이터의 촬상 후에 상기 비디오 암호화 에이전트(VEA)를 호출하고, 상기 비디오 암호화 에이전트(VEA)는, 상기 로컬 키(LK)를 이용하여 상기 비디오 데이터를 암호화하여 상기 암호화 비디오 데이터를 생성한다.(CAM) (10) calls the video encryption agent (VEA) after imaging of the video data, and the video encryption agent (VEA), when generating the encrypted data, LK) to encrypt the video data to generate the encrypted video data.
그리고 상기 암호화 비디오 데이터의 복호화 시에, 상기 비디오 복호화 에이전트(VDA)는, 상기 로컬 키 서버(LKS)(40)에 상기 로컬 키(LK)를 요청하고, 상기 로컬 키 서버(LKS)(40)는, 상기 로컬 키(LK)를 상기 비디오 복호화 에이전트(VDA)에 전송하며, 상기 비디오 복호화 에이전트(VDA)는, 상기 로컬 키(LK)로 상기 암호화 비디오 데이터를 복호화한다.When decrypting the encrypted video data, the video decoding agent VDA requests the local
여기서, 상기 로컬 비디오 플레이어(LVP)는, 상기 비디오 관리 에이전트(VMA)를 통하여 상기 로컬 키 서버(LKS)(40)에서 사용자 인증을 받음이 바람직하다.Here, the local video player (LVP) preferably receives user authentication from the local key server (LKS) 40 through the video management agent (VMA).
한편, PC나 스마트폰 등의 네트워크 비디오 레코더(NVR)와 원격에 엔드유저의 리모트 비디오 플레이어(RVP)가 구비되는 구성에 있어서는, 본 발명의 비디오 보호 시스템은, 촬상된 비디오 데이터가 암호화된 암호화 비디오 데이터를 출력하는 카메라(CAM)(10), 및 상기 카메라(CAM)(10)로부터 상기 암호화 비디오 데이터를 받아 저장하는 네트워크 비디오 레코더(NVR)(20)가 포함되어 이루어지는 비디오 보호 시스템에 있어서, 상기 카메라(CAM)(10)에는, 상기 암호화 비디오 데이터를 생성하는 비디오 암호화 에이전트( VEA )가 구비되고, 상기 네트워크 비디오 레코더(NVR)(20)에는, 상기 암호화 비디오 데이터를 관리하는 비디오 관리 에이전트( VMA )가 구비되며, 상기 네트워크 비디오 레코더(NVR)(20)에 착탈 가능하게 접속되어, 로컬 키(LK)를 제공하는 로컬 키 서버( LKS )( 40)가 구비되고, 상기 네트워크 비디오 레코더(NVR)(20)로부터 키 블럭(key block)이 추가된 상기 암호화 비디오 데이터를 받아 플레이하는 리모트 비디오 플레이어(RVP)(30)가 구비되며, 상기 리모트 비디오 플레이어(RVP)(30)에는, 상기 키 블럭이 추가된 상기 암호화 비디오 데이터를 복호화하는 비디오 복호화 에이전트( VDA )가 구비된다.On the other hand, in a configuration in which a network video recorder (NVR) such as a PC or a smart phone and a remote video player (RVP) of an end user are provided remotely, the video protection system of the present invention can prevent the captured video data from being encrypted (CAM) 10 for outputting data and a network video recorder (NVR) 20 for receiving and storing the encrypted video data from the camera (CAM) 10, the video protection system comprising: (CAM) 10 is provided with a video encryption agent ( VEA ) for generating the encrypted video data, and the network video recorder (NVR) 20 is provided with a video management agent ( VMA And a local key server ( LKS ) 20, which is detachably connected to the network video recorder (NVR) 20 and provides the local key LK, ) 40 is provided, is provided by the network video recorder (NVR), (20), the key blocks (key block), a remote video player (RVP) (30 to play receive the encrypted video data added from a), the The remote video player (RVP) 30 is provided with a video decryption agent ( VDA ) for decrypting the encrypted video data to which the key block is added.
그리고 상기 로컬 키(LK)의 생성 시에 있어서, 상기 비디오 관리 에이전트(VMA)는, 상기 로컬 키 서버(LKS)(40)에 상기 로컬 키(LK)의 생성을 요청하고, 상기 로컬 키 서버(LKS)(40)는, 상기 요청에 따라 비로소 상기 로컬 키(LK)를 신규 생성하고 상기 비디오 관리 에이전트(VMA)에 전송한다.When generating the local key LK, the video management agent VMA requests the local
그리고 상기 암호화 데이터의 생성 전에 있어서, 상기 네트워크 비디오 레코더(NVR)(20)는, 상기 비디오 관리 에이전트(VMA)를 호출하고, 상기 비디오 관리 에이전트(VMA)는, 신규 생성된 상기 로컬 키(LK)를 상기 비디오 암호화 에이전트(VEA)에 전송한다.(NVR) 20 calls the video management agent (VMA), and the video management agent (VMA) calls the newly created local key (LK) To the video encryption agent (VEA).
그리고 상기 암호화 데이터의 생성 시에 있어서, 상기 카메라(CAM)(10)는, 상기 비디오 데이터의 촬상 후에 상기 비디오 암호화 에이전트(VEA)를 호출하고, 상기 비디오 암호화 에이전트(VEA)는, 상기 로컬 키(LK)를 이용하여 상기 비디오 데이터를 암호화하여 상기 암호화 비디오 데이터를 생성한다.(CAM) (10) calls the video encryption agent (VEA) after imaging of the video data, and the video encryption agent (VEA), when generating the encrypted data, LK) to encrypt the video data to generate the encrypted video data.
그리고 상기 키 블럭의 생성 시에, 상기 비디오 관리 에이전트(VMA)는, 암호화에 사용된 상기 로컬 키(LK)에 대한 상기 키 블럭을 상기 로컬 키 서버(LKS)(40)에 요청하고, 상기 로컬 키 서버(LKS)(40)는, 저장된 플레이 키(PK)로 상기 로컬 키(LK)를 암호화한 것과, 상기 플레이 키(PK)에 해당되는 플레이 키 ID(PKID)가 적어도 포함되도록 상기 키 블럭을 생성한다.(VMA) requests the local key server (LKS) 40 for the key block for the local key (LK) used for encryption when generating the key block, and the video management agent The
그리고 상기 암호화 비디오 데이터의 복호화 시에, 상기 비디오 복호화 에이전트(VDA)는, 상기 키 블럭의 상기 플레이 키 ID(PKID)를 이용해 상기 로컬 키 서버(LKS)(40)로부터 얻은 상기 플레이 키(PK)로 복호화한 상기 로컬 키(LK)로 상기 암호화 비디오 데이터를 복호화함을 특징으로 한다.When decrypting the encrypted video data, the video decryption agent VDA encrypts the play key PK obtained from the local key server (LKS) 40 using the play key ID PKID of the key block, And decrypts the encrypted video data with the local key (LK) decrypted with the local key (LK).
<로컬 키 ID에 의한 키블럭 생성><Generation of key block by local key ID>
여기서, 상기 로컬 키(LK)의 생성 시에 있어서, 상기 로컬 키 서버(LKS)(40)는, 상기 로컬 키(LK)와 함께 로컬 키 ID(LKID)를 상기 비디오 관리 에이전트(VMA)에 전송한다.When generating the local key LK, the local
그리고 상기 키 블럭의 생성 시에 있어서, 상기 비디오 관리 에이전트(VMA)는, 상기 로컬 키 서버(LKS)(40)로부터 받았던 상기 로컬 키 ID(LKID)를 상기 로컬 키 서버(LKS)(40)에 제공하면서 상기 키 블럭을 요청하고, 상기 로컬 키 서버(LKS)(40)는, 상기 로컬 키 ID(LKID)에 해당되는 상기 로컬 키(LK)를 대상으로 상기 키 블럭을 생성함이 바람직하다.When generating the key block, the video management agent (VMA) sends the local key ID (LKID) received from the local key server (LKS) 40 to the local key server (LKS) 40 , And the local key server (LKS) 40 generates the key block for the local key (LK) corresponding to the local key ID (LKID).
<로컬 키 서버 무응답시의 대응구성>≪ Response configuration at the time of non-response of the local key server >
또한, 상기 로컬 키 서버(LKS)(40)가 응답하지 않는 경우, 상기 비디오 관리 에이전트(VMA)는, 임시 생성한 플레이 키(PK)를 이용하여 상기 로컬 키(LK)를 암호화하여 임시 키 블럭을 생성하고, 상기 로컬 키 서버(LKS)(40)가 복구된 후에, 상기 비디오 관리 에이전트(VMA)는, 상기 임시 플레이 키(PK)를 사용한 파일들에 대해, 상기 임시 키 블럭을 상기 로컬 키 서버(LKS)(40)의 플레이 키(PK)로 재암호화하여 새로 키 블럭을 생성함이 바람직하다.When the local key server (LKS) 40 does not respond, the video management agent (VMA) encrypts the local key (LK) using the temporarily generated play key (PK) And after the local key server (LKS) 40 is recovered, the video management agent (VMA), for the files using the temporary play key (PK), sends the temporary key block to the local key It is preferable to newly encrypt the key block with the play key PK of the server (LKS) 40 to generate a new key block.
<멀티 네트워크 비디오 레코더 환경><Multi Network Video Recorder Environment>
또한, 도 1 (b)와 같이, 상기 네트워크 비디오 레코더(NVR)(20)가 복수 구비된 멀티 네트워크 비디오 레코더(NVR) 환경이 구비될 수 있다. 멀티 네트워크 비디오 레코더(NVR) 환경은, 도 1 (a)에서 겹쳐 도시한 다수의 네트워크 비디오 레코더(NVR)들을 펼쳐 나타낸 것이다. 이런 멀티 네트워크 비디오 레코더(NVR) 환경에 있어서, 어느 하나의 네트워크 비디오 레코더(NVR)(20)가 프라이머리 네트워크 비디오 레코더(NVR)(20')로 설정되고, 나머지의 네트워크 비디오 레코더(NVR)(20)가 세컨더리 네트워크 비디오 레코더(NVR)(20)로 설정되도록 구성될 수 있다. 여기서, 상기 프라이머리 네트워크 비디오 레코더(NVR)(20')에는 액세스 승인 서버(AAS)의 모듈(또는 프로그램)이 탑재되고, 상기 세컨더리 네트워크 비디오 레코더(NVR)(20)에는 액세스 승인 에이전트(AAA)의 모듈(또는 프로그램)이 탑재된다.Also, as shown in FIG. 1 (b), a multi-network video recorder (NVR) environment in which the network video recorder (NVR) 20 is provided may be provided. The multi-network video recorder (NVR) environment is an expansion of a plurality of network video recorders (NVRs) shown in FIG. 1 (a). In this multi-network video recorder (NVR) environment, any one network video recorder (NVR) 20 is set as the primary network video recorder (NVR) 20 'and the remaining
그리고 상기 액세스 승인 서버(AAS)의 모듈은, 상기 액세스 승인 에이전트(AAA)의 모듈들과의 통신을 통해, 해당 세컨더리 네트워크 비디오 레코더(NVR)(20)들에 대한 인증(디바이스 ID 검증)을 수행하도록 구성됨이 바람직하다.The module of the access authorization server AAS performs authentication (device ID verification) with respect to the corresponding secondary network video recorders (NVR) 20 through communication with the modules of the access authorization agent (AAA) .
또한, 상기 멀티 네트워크 비디오 레코더(NVR) 환경에 있어서, 상기 세컨더리 네트워크 비디오 레코더(NVR)(20)들은, 상기 액세스 승인 에이전트(AAA)들을 통해 상기 프라이머리 네트워크 비디오 레코더(NVR)(20')의 상기 액세스 승인 서버(AAS)에 상기 플레이 키(PK)의 발급을 요청하고, 상기 프라이머리 네트워크 비디오 레코더(NVR)(20')는, 접속되어 있는 자신의 상기 로컬 키 서버(LKS)(40')로부터 상기 플레이 키(PK)를 발급받아, 상기 액세스 승인 서버(AAS)를 통해 상기 액세스 승인 에이전트(AAA)에 전달하도록 구성됨이 바람직하다.In addition, in the multi-network video recorder (NVR) environment, the secondary network video recorders (NVRs) 20 are connected to the primary network video recorder (NVR) 20 ' (NVR) 20 'requests issuance of the play key (PK) to the access authorization server (AAS), and the primary network video recorder (NVR) 20' (PK) to the access authorization agent (AAA) through the access authorization server (AAS).
다만, 후술하는 바와 같이, 상기 액세스 승인 서버(AAS)의 모듈과 상기 액세스 승인 에이전트(AAA) 모듈들이, 네트워크 비디오 레코더(NVR)에 구비되지 않고, 상기 로컬 키 서버(LKS)(40)에 구비되도록 구현되어도 좋다. 이 경우에, 상기 액세스 승인 서버(AAS)의 모듈이 구비된 로컬 키 서버(LKS)(40)가 프라이머리 로컬 키 서버(LKS)(40')가 되고, 상기 액세스 승인 에이전트(AAA) 모듈들이 구비된 로컬 키 서버(LKS)(40)가 세컨더리 로컬 키 서버(LKS)(40)가 된다.However, the access authorization server (AAS) module and the access authorization agent (AAA) modules are not provided in the network video recorder (NVR) but are provided in the local key server (LKS) . In this case, the local key server (LKS) 40 with the module of the access authorization server (AAS) becomes the primary local key server (LKS) 40 ', and the access authorization agent The provided local key server (LKS) 40 becomes the secondary local key server (LKS) 40.
<비디오 관리 에이전트의 로컬 키 서버 대행><Local management of the video management agent>
한편, 본 발명의 비디오 보호 시스템은, 촬상된 비디오 데이터가 암호화된 암호화 비디오 데이터를 출력하는 카메라(CAM)(10), 및 상기 카메라(CAM)(10)로부터 상기 암호화 비디오 데이터를 받아 저장하는 네트워크 비디오 레코더(NVR)(20)가 포함되어 이루어지는 비디오 보호 시스템에 있어서, 상기 카메라(CAM)(10)에는, 상기 암호화 비디오 데이터를 생성하는 비디오 암호화 에이전트( VEA )가 구비되고, 상기 네트워크 비디오 레코더(NVR)(20)에는, 상기 암호화 비디오 데이터를 관리하는 비디오 관리 에이전트( VMA )가 구비되며, 상기 네트워크 비디오 레코더(NVR)에 착탈 가능하게 접속되어, 로컬 키(LK)를 제공하는 로컬 키 서버( LKS )( 40)가 구비될 수 있다.On the other hand, the video protection system of the present invention includes a camera (CAM) 10 for outputting encrypted video data in which captured video data is encrypted, and a
그리고 상기 로컬 키(LK)의 생성 시에 있어서, 상기 비디오 관리 에이전트(VMA)는, 상기 로컬 키 서버(LKS)(40)에 상기 로컬 키(LK)의 생성을 요청하고, 상기 로컬 키 서버(LKS)(40)는, 상기 요청에 따라 비로소 상기 로컬 키(LK)를 신규 생성하고 상기 비디오 관리 에이전트(VMA)에 전송한다.When generating the local key LK, the video management agent VMA requests the local
그리고 상기 암호화 데이터의 생성 전에 있어서, 상기 네트워크 비디오 레코더(NVR)(20)는, 상기 비디오 관리 에이전트(VMA)를 호출하고, 상기 비디오 관리 에이전트(VMA)는, 신규 생성된 상기 로컬 키(LK)를 상기 비디오 암호화 에이전트(VEA)에 전송한다.(NVR) 20 calls the video management agent (VMA), and the video management agent (VMA) calls the newly created local key (LK) To the video encryption agent (VEA).
그리고 상기 암호화 데이터의 생성 시에 있어서, 상기 카메라(CAM)(10)는, 상기 비디오 데이터의 촬상 후에 상기 비디오 암호화 에이전트(VEA)를 호출하고, 상기 비디오 암호화 에이전트(VEA)는, 상기 로컬 키(LK)를 이용하여 상기 비디오 데이터를 암호화하여 상기 암호화 비디오 데이터를 생성한다.(CAM) (10) calls the video encryption agent (VEA) after imaging of the video data, and the video encryption agent (VEA), when generating the encrypted data, LK) to encrypt the video data to generate the encrypted video data.
여기서, 상기 로컬 키 서버(LKS)(40)가 응답하지 않는 경우, 상기 비디오 관리 에이전트(VMA)는, 상기 로컬 키(LK)를 자체 생성해서 사용함을 특징으로 한다.Here, when the local key server (LKS) 40 does not respond, the video management agent (VMA) generates and uses the local key LK itself.
이하, 상술한다.Hereinafter, it will be described in detail.
<카메라(CAM) 전송 비디오의 암호화><Encryption of camera (CAM) transmission video>
카메라(CAM)(10)는, 부팅시에 비디오 암호화 에이전트(VEA)(Video Encryption Agent)의 초기화 루틴을 호출한다. 비디오 암호화 에이전트(VEA)는, 미리 정의된 URL에 대기하고 있는 예컨대 http 데몬을 생성한다. 네트워크 비디오 레코더(NVR)(20)의 비디오 관리 에이전트(VMA)(Video Management Agent)가 이 데몬을 통해 비디오 암호화 에이전트(VEA)와 보안 세션(secure session)을 생성한다.The camera (CAM) 10 calls an initialization routine of the video encryption agent (VEA) (Video Encryption Agent) at boot time. The video encryption agent (VEA) creates, for example, an http daemon that is waiting in a predefined URL. A video management agent (VMA) of the network video recorder (NVR) 20 creates a secure session with a video encryption agent (VEA) through this daemon.
이를 위해, 예컨대 키 교환 프로토콜을 이용하여 세션 키(SK)(Session Key)를 교환하고, 세션 시퀀스 번호(sequential number)를 설정한다.To do this, for example, a session key (SK) is exchanged using a key exchange protocol, and a session sequence number is set.
비디오 관리 에이전트(VMA)는, 카메라(CAM)(10)의 예컨대 ID와 MAC 주소를 이용하여 카메라(CAM)(10)를 인증한다. 이를 위해, 설치 후 최초 접속 시에, 비디오 관리 에이전트(VMA)는, 카메라(CAM)(10) IP 주소와 ID, MAC 주소를 조회하여 저장한다.The video management agent (VMA) authenticates the camera (CAM) 10 using, for example, the ID and the MAC address of the camera (CAM) To this end, upon initial connection after installation, the video management agent (VMA) inquires and stores the IP address, ID, and MAC address of the camera (CAM) 10.
카메라(CAM)(10)는, 비디오 전송 바로 직전에 비디오 암호화 에이전트(VEA) API를 호출하여 비디오 데이터에 대한 암호화를 요청한다. 이 암호화를 위해, 비디오 관리 에이전트(VMA)가 각 카메라(CAM)(10)별로 별도의 키를 생성하여 미리 전송해 놓아야 한다. 그리고 비디오 암호화 에이전트(VEA)는, 암호화를 수행하기 위해, 예컨대 H.264/H.265 NAL 유닛 시퀀스를 추출한다. 다만, 전체 영역을 암호화하지 않고, 중요 데이터 부분만 암호화하도록 해서, 기존 네트워크 비디오 레코더(NVR)(20) 프로그램의 동작이나 성능에 영향이 없도록 함이 바람직하다. 예컨대 CoreCrypt(등록상표)의 패키징 알고리즘을 이용할 수 있다.The camera (CAM) 10 calls the Video Encryption Agent (VEA) API just before the video transmission to request encryption of the video data. For this encryption, a video management agent (VMA) must generate a separate key for each camera (CAM) 10 and transmit it beforehand. The video encryption agent (VEA) then extracts, for example, the H.264 / H.265 NAL unit sequence to perform encryption. However, it is preferable to encrypt only the important data portion without encrypting the entire area, so that the operation and performance of the existing network video recorder (NVR) 20 program are not affected. For example, a packaging algorithm of CoreCrypt (registered trademark) can be used.
다중 스트림을 전송하는 경우에는, 모든 스트림을 동일한 키로 암호화할 수 있다. 그리고 네트워크 비디오 레코더(NVR)(20)로 전송된 비디오 데이터는, 복호화되지 않은 채로 바로 저장된다.When transmitting multiple streams, all streams can be encrypted with the same key. The video data transmitted to the network video recorder (NVR) 20 is immediately stored without being decoded.
네트워크 비디오 레코더(NVR)(20)는, 각 카메라(CAM)(10)의 비디오를 크기나 시간 기준에 의해 별도의 파일로 분할하여 순차적으로 저장한다. 이때, 보안성을 높이기 위해 다른 파일에 대해 상이한 키가 사용되도록 할 수 있다.The network video recorder (NVR) 20 divides the video of each camera (CAM) 10 into separate files according to size and time reference, and sequentially stores them. At this time, different keys may be used for different files in order to increase security.
비디오 관리 에이전트(VMA)는, 순차적으로 생성되는 키에 대해 짝수 번째 키와 홀수 번째 키를 구분한다. 비디오 관리 에이전트(VMA)는, 처음 시작할 때, 2개의 키를 비디오 암호화 에이전트(VEA)에게 미리 보내 놓는다. 따라서, 비디오 암호화 에이전트(VEA)는 항상, 짝(even)-홀(odd)이나 홀-짝의 순서로, 두 개의 키를 갖고 있다.The video management agent (VMA) distinguishes an even-numbered key from an odd-numbered key for a sequentially generated key. The video management agent (VMA) sends two keys to the video encryption agent (VEA) in advance when it first starts. Thus, the video encryption agent VEA always has two keys in the order of even-odd or even-paired.
비디오 관리 에이전트(VMA)는, 저장 파일이 바뀌는 시점에 새로운 키를 하나 할당해, 비디오 암호화 에이전트(VEA)에 보낸다. 예를 들어, 비디오 암호화 에이전트(VEA)가 현재 짝 키와 홀 키를 갖고 있다면, 새로 전송된 키는 짝 키가 되고, 암호화에 사용되는 키를 현재의 짝 키에서 홀 키로 바꾼다. 따라서, 비디오 암호화 에이전트(VEA)는, 홀 키와 신규 짝 키를 갖게 되고, 이 과정은 순차적으로 반복된다.The video management agent (VMA) allocates a new key at the time the storage file is changed and sends it to the video encryption agent (VEA). For example, if the Video Encryption Agent (VEA) currently has a pair key and a hole key, the newly transmitted key becomes a pair key, and the key used for encryption is changed from the current pair key to the hole key. Thus, the video encryption agent (VEA) has a hole key and a new mating key, and this process is repeated in sequence.
현재 암호화에 사용되는 키가 짝인지 홀인지 여부가, 전송 패킷에 기록되어야 한다. MPEG2-TS나 리얼타임 전송 프로토콜 등의 표준 프로토콜인 경우에는, 해당 필드(field)를 찾아서 기록해야 한다.Whether the key used for the current encryption is paired or not is to be recorded in the transmission packet. In the case of a standard protocol such as MPEG2-TS or real time transmission protocol, the corresponding field must be found and recorded.
비디오 관리 에이전트(VMA)와 비디오 암호화 에이전트(VEA)가 비동기적으로 동작하기 때문에, 저장되는 파일이 바뀐 후에도, 이전 키에 의해 암호화된 패킷들이 있을 수 있다. 이 키 정렬(alignment) 문제는, 비디오 관리 에이전트(VMA)가 해결해야 한다.Since the video management agent (VMA) and the video encryption agent (VEA) operate asynchronously, there may be packets encrypted by the previous key even after the file being stored is changed. This key alignment problem must be solved by the video management agent (VMA).
단순 모드에 대한 고려도 필요하다. 벤더에 따라서는, 짝, 홀 구분이 불가능한 경우도 있을 수 있다. 이 경우에는, 암호화 키를 변경하지 않고, 동일한 키를 계속 사용하고, 시스템이 리셋되는 경우에만, 키 변경이 가능하다.Consideration also needs to be given to the simple mode. Depending on the vendor, it may not be possible to distinguish pairs and holes. In this case, the key can be changed only when the same key is continuously used without changing the encryption key, and the system is reset.
<네트워크 비디오 레코더(NVR)의 암호화 파일 저장><Encrypted file storage of network video recorder (NVR)>
네트워크 비디오 레코더(NVR)(20)는, 부팅 시에 비디오 관리 에이전트(VMA)의 초기화 루틴을 호출한다. 비디오 관리 에이전트(VMA)는, 라이브 비디오 스트림에 대한 키를 제공하기 위한 http 데몬을 생성하고, 네트워크 비디오 레코더(NVR)(20)에 연결된 각 카메라(CAM)(10)의 비디오 암호화 에이전트(VEA)의 URL을 확인하여, 보안 세션을 생성한다. 그리고 로컬 키 서버(LKS)(40)와 보안 세션을 생성하고 인증을 받은 후, 각 카메라(CAM)(10)에 대해 로컬 키(LK) 2개를 발급받아서, 짝 키와 홀 키로 전송해 놓는다.The network video recorder (NVR) 20 calls the initialization routine of the video management agent (VMA) at boot time. The video management agent (VMA) creates an http daemon to provide a key for a live video stream and creates a video encryption agent (VEA) of each camera (CAM) 10 connected to a network video recorder (NVR) And creates a secure session. After generating a security session with the local key server (LKS) 40 and authenticating, two local keys (LK) are issued to each camera (CAM) 10 and transmitted to the corresponding key and the hall key .
네트워크 비디오 레코더(NVR)(20)는, 카메라(CAM)(10)로부터 도착한 모든 패킷에 대해 비디오 관리 에이전트(VMA)의 키 정렬 API를 호출한다. 비디오 관리 에이전트(VMA)는, 비디오 암호화 에이전트(VEA)가 현재 암호화를 위해 사용 중인 키가 어떤 것인지 알 수 있다. 예를 들어, 비디오 암호화 에이전트(VEA)가 짝과 홀 키를 가지고 있고, 짝 키로 암호화를 진행 중일 때에 파일이 바뀌어서 새 짝 키를 보내면, 홀 키로 암호화 키가 바뀐다.The network video recorder (NVR) 20 calls the key arrangement API of the video management agent (VMA) for all packets arriving from the camera (CAM) The video management agent (VMA) can know which key the video encryption agent (VEA) is currently using for encryption. For example, if the Video Encryption Agent (VEA) has a pair and a hole key, and the file is changed to send a new pair key while the encryption is in progress with the pair key, the encryption key is changed to the hole key.
다만, 새 키의 전달 시간이 걸릴 수 있기 때문에, 그동안의 일부 패킷은 올드 짝 키로 계속 암호화된다. 비디오 관리 에이전트(VMA)는, 올드 짝 키로 암호화된 패킷인 경우, 복호화를 수행하고 홀 키로 재암호화를 수행한다. 비디오 관리 에이전트(VMA)는, 재암호화가 필요 없는 경우에는 원본 패킷을 그대로 리턴한다.However, since the delivery of new keys may take some time, some packets in the meantime are still encrypted with the old mapped key. The video management agent (VMA) performs decryption and re-encryption with a hole key if it is a packet encrypted with the old pair key. When the re-encryption is not required, the video management agent (VMA) returns the original packet as it is.
카메라(CAM)(10)가 단순 방식의 암호화만을 수행하는 경우에는, 키 정렬 API에서 복호화를 수행하고, 다른 로컬 키(LK)를 할당받아 재암호화를 실행할 수 있다.In the case where the camera (CAM) 10 performs only the simple encryption, the key alignment API can perform decryption and re-encryption by allocating another local key (LK).
네트워크 비디오 레코더(NVR)(20)는, 각 파일 저장을 마무리할 때에 비디오 관리 에이전트(VMA)에게 키 블럭(block)을 요청하고, 그 데이터를 파일의 끝에 붙여서 저장한다. 이 키 블럭은, 암호화에 사용된 로컬 키(LK)를 포함한다.The network video recorder (NVR) 20 requests a video management agent (VMA) for a key block at the end of each file storage and attaches the data to the end of the file and stores it. This key block includes a local key (LK) used for encryption.
로컬 키 서버(LKS)(40)가 응답하지 않는 경우에, 아이솔레이티드 네트워크 비디오 레코더(NVR)(20)의 비디오 관리 에이전트(VMA)는, 로컬 키(LK)를 자체 생성해서 사용하고, 임시 생성한 플레이 키(PK)를 이용하여 로컬 키(LK)를 암호화한다. 그리고 로컬 키 서버(LKS)(40)가 복구된 후에, 이 플레이 키(PK)를 사용한 파일들에 대해, 키 블럭을 로컬 키 서버(LKS)(40)의 플레이 키(PK)로 재암호화한다.When the local key server (LKS) 40 does not respond, the video management agent (VMA) of the isolated network video recorder (NVR) 20 generates and uses the local key LK itself, And encrypts the local key LK using the generated play key PK. After the local key server (LKS) 40 is restored, the key block is re-encrypted with the play key PK of the local key server (LKS) 40 for files using this play key PK .
<로컬 키 서버(LKS)><Local Key Server (LKS)>
로컬 키 서버(LKS)(40)는, 네트워크 비디오 레코더(NVR)(20)와 통신을 하면서 키 발급 등의 요청을 처리해 주는, 예컨대 USB 동글 형태의 컴퓨터이다. 이 로컬 키 서버(LKS)(40)는, 개발된 프로그램의 설치 및 실행이 가능해야 한다. 그리고 자체 클럭을 가지고 있어야 한다. 또한, 동작의 안정성 및 시스템 수명이 일반 컴퓨터와 동일한 수준이어야 한다.The local key server (LKS) 40 is, for example, a USB dongle type computer that processes a request for key issuance or the like while communicating with a network video recorder (NVR) The local key server (LKS) 40 must be able to install and execute the developed program. It should have its own clock. Also, stability of operation and system life should be the same level as general computer.
로컬 키 서버(LKS)(40)는, 키 페어(pair)를 내부 생성, 저장하고, 암호화 작업을 실행할 수 있는 암복호화 기능을 수행하는 칩을 포함하고 있다. CCTV 시스템 설치 고객을 식별하기 위한 네트워크 비디오 레코더(NVR)의 사이트(Site) ID(SID)(NVR SID)와 네트워크 비디오 레코더(NVR)의 ID(NVR ID) 및 자신의 식별자인 로컬 키 서버 ID(LKS ID)를 저장하고 있다.The local key server (LKS) 40 includes a chip for internally generating, storing a key pair, and performing an encryption / decryption function capable of performing a cryptographic operation. (NVR ID) of the network video recorder (NVR) and the local key server ID (NVR ID) of the network video recorder (NVR) of the network video recorder (NVR) LKS ID).
설치 후 최초 접속 시에, 비디오 관리 에이전트(VMA)는, 자신의 네트워크 비디오 레코더(NVR)(20)의 사이트 ID(NVR SID)와 네트워크 비디오 레코더(NVR) ID(NVR ID)를 포함하는 식별 정보를 제공해서, 추후 접속 시 로컬 키 서버(LKS)(40)가 인증할 수 있도록 해야 한다. 이를 통해, 로컬 키 서버(LKS)(40)는, 처음 연결된 네트워크 비디오 레코더(NVR)(20)와 디바이스 페어링된다. 식별 정보로는, MAC 주소나 HDD ID 등이 활용될 수 있다. 로컬 키 서버(LKS)(40)에 대한 비디오 관리 에이전트(VMA)의 인증은, 로컬 키 서버(LKS)(40)가 프로토콜 시퀀스를 위배하지 않는 한, 통과된 것으로 볼 수 있다.At the initial connection after installation, the video management agent (VMA) acquires identification information including the site ID (NVR SID) of its network video recorder (NVR) 20 and the network video recorder (NVR ID) So that the local key server (LKS) 40 can authenticate at a later time. In this way, the local key server (LKS) 40 is paired with the first connected network video recorder (NVR) 20. As the identification information, a MAC address or an HDD ID may be utilized. Authentication of the video management agent (VMA) to the local key server (LKS) 40 may be seen as passed unless the local key server (LKS) 40 violates the protocol sequence.
로컬 키 서버(LKS)(40)는, 암호화를 위한 로컬 키(LK) 생성 기능을 수행한다. 네트워크 비디오 레코더(NVR)(20)의 비디오 관리 에이전트(VMA)의 요청에 따라, 랜덤 로컬 키(LK)와 로컬 키 ID (LKID)를 생성해서 발급한다. 키 전송 채널의 해킹을 막기 위해, 비디오 관리 에이전트(VMA)는, 예컨대 키 교환 프로토콜을 이용해, 로컬 키 서버(LKS)(40)와 보안 세션을 생성한다.The local key server (LKS) 40 performs a function of generating a local key (LK) for encryption. Generates and issues a random local key (LK) and a local key ID (LKID) at the request of the video management agent (VMA) of the network video recorder (NVR) To prevent hacking of the key transport channel, the video management agent (VMA) creates a secure session with the local key server (LKS) 40, e.g., using a key exchange protocol.
로컬 키 서버(LKS)(40)는, 키 블럭 제공 기능을 수행한다. 비디오 관리 에이전트(VMA)가 로컬 키 ID(LKID)로 요청을 하면, 그 해당 로컬 키(LK)를 포함하는 키 블럭을 생성해서 전송한다. 이 키 블럭 내에 플레이 키(PK)에 의해 암호화된 로컬 키(LK)가 포함되며, 이 플레이 키(PK)는, 키 ID(KID)와 함께 로컬 키 서버(LKS)(40)에 의해 발급된다. 네트워크 비디오 레코더 사이트 ID(NVR SID), 키 ID(PKID), 암호화된 로컬 키, 생성시간, 액세스 승인 서버 URL(AAS URL) 등이 키 블럭에 포함될 수 있다.The local key server (LKS) 40 performs a key block providing function. When the video management agent (VMA) makes a request with a local key ID (LKID), a key block including the corresponding local key (LK) is generated and transmitted. The local key LK encrypted by the play key PK is included in this key block and this play key PK is issued by the local key server (LKS) 40 together with the key ID (KID) . The key block may include a network video recorder site ID (NVR SID), a key ID (PKID), an encrypted local key, a generation time, an access authorization server URL (AAS URL)
로컬 키 서버(LKS)(40)는, 네트워크 비디오 레코더(NVR)(20)의 주기적 플레이 키(PK)를 업데이트한다. 로컬 키 서버(LKS)(40)는, 비디오 관리 에이전트(VMA)를 통해 주기적으로 플레이 키(PK)를 업데이트할 수 있다.The local key server (LKS) 40 updates the periodic play key (PK) of the network video recorder (NVR) The local key server (LKS) 40 can update the play key (PK) periodically via the video management agent (VMA).
로컬 키 서버(LKS)(40)는, 아이솔레이티드 네트워크 비디오 레코더(NVR)(20)의 플레이 키(PK)를 업데이트한다. 아이솔레이티드 네트워크 비디오 레코더(NVR)(20)의 로컬 키 서버(LKS)(40)는, 초기 설정 시에, 발급된 플레이 키(PK)를 변경 없이 계속 사용한다. 이는, 키의 보안 수준은 떨어지지만, 인터넷에 연결되지 않은 상태에서 동작이 가능한 방식이다. 수동으로 인터넷 접속 후, 업데이트하는 것은 가능하다.The local key server (LKS) 40 updates the play key (PK) of the isolated network video recorder (NVR) The local key server (LKS) 40 of the isolated network video recorder (NVR) 20 continues to use the issued play key PK without change, at the time of initial setting. This is a way that the key can be operated without being connected to the Internet even though the security level is low. It is possible to update after manually connecting to the Internet.
다만, 키 업데이트가 이루어져도, 이전 플레이 키(PK)는 로컬 키 서버(LKS)(40) 내에 계속 저장되어 있어야 하고, 관련 파일이 모두 삭제될 때까지 유지되어야 한다.However, even if the key update is performed, the previous play key PK must be continuously stored in the local key server (LKS) 40 and maintained until all related files are deleted.
로컬 키 서버(LKS)(40)를 초기 설정하기 위해서는, 배포하기 전에 로컬 키 서버(LKS)(40) 초기 설정 과정을 실행한다. 로컬 키 서버(LKS)(40)는 키 페어를 생성하고, 자신의 유니크 로컬 키 서버 ID(LKS ID), 공개키, 인증용 토큰을 리턴한다. 로컬 키 서버(LKS)(40)는 또한, 첫 번째 플레이 키(PK)나 반출 키로 사용할 키와 키 ID(PKID, XKID)를 생성해서, 자기 DB에 기록한다.In order to initialize the local key server (LKS) 40, the initial setting process of the local key server (LKS) 40 is performed before distribution. The local key server (LKS) 40 generates a key pair, returns its own local key server ID (LKS ID), a public key, and an authentication token. The local key server (LKS) 40 also generates a key and a key ID (PKID, XKID) to be used as a first play key (PK) or an export key, and records the key and the key ID in the self DB.
<로컬 비디오 플레이어(LVP)에 의한 비디오 복호화>≪ Video Decoding by Local Video Player (LVP) >
로컬 비디오 플레이어(LVP)를 사용하기 위해, 네트워크 비디오 레코더(NVR)(20)는, 로컬 키 서버(LKS)(40)로부터 사용자 인증을 받는다. 로컬 비디오 플레이어(LVP)는, 파일 비디오나 라이브 비디오를 플레이할 수 있다.To use the local video player (LVP), the network video recorder (NVR) 20 receives user authentication from the local key server (LKS) The local video player (LVP) can play file video or live video.
저장돼 있는 파일 비디오를 플레이하기 위해, 네트워크 비디오 레코더(NVR)(20)는, 비디오 관리 에이전트(VMA)에게 복호화를 요청한다. 먼저, 그 파일의 끝에서 키 블럭을 읽어서, 비디오 관리 에이전트(VMA)에게 전달한다. 비디오 관리 에이전트(VMA)는, 보안 세션을 통해 로컬 키 서버(LKS)(40)에게 키 블럭을 전송한다. 로컬 키 서버(LKS)(40)는, 자신이 저장하고 있는 플레이 키(PK)를 이용하여, 로컬 키(LK)를 구하고, 리플라이(reply)한다. 비디오 관리 에이전트(VMA)는, 이 로컬 키(LK)를 이용하여, 네트워크 비디오 레코더(NVR)(20)가 요청한 비디오 데이터를 복호화한다.To play the stored file video, the network video recorder (NVR) 20 requests decryption from the video management agent (VMA). First, the key block is read at the end of the file, and the key block is transferred to the video management agent (VMA). The video management agent (VMA) sends the key block to the local key server (LKS) 40 via a secure session. The local key server (LKS) 40 obtains the local key LK and replies using the play key PK stored therein. The video management agent (VMA) uses the local key (LK) to decrypt the video data requested by the network video recorder (NVR) (20).
카메라(CAM)(10)로부터 실시간 전송되는 라이브 비디오를 플레이하기 위해, 네트워크 비디오 레코더(NVR)(20)는, 수신된 패킷을 바로 복호화하도록 비디오 관리 에이전트(VMA)에게 요청한다. 비디오 관리 에이전트(VMA)는, 현재 복호화를 위해 어떤 키를 사용해야 하는지 알 수 있다. 예를 들어, 현재 키가 홀 키일 때, 요청받은 패킷이 짝으로 설정돼 있다면, 그 패킷은 올드 짝 키로 암호화돼 있는 것이다. 따라서, 비디오 관리 에이전트(VMA)는, 현재 키와 바로 이전 키, 그리고 다음 키를 모두 저장하고 있어야 한다.In order to play live video transmitted in real time from the camera (CAM) 10, the network video recorder (NVR) 20 requests the video management agent (VMA) to decode the received packets immediately. The video management agent (VMA) can know which key to use for the current decoding. For example, if the current key is a hole key and the requested packet is set to a pair, then the packet is encrypted with the old pair key. Thus, the video management agent (VMA) must store both the current key, the immediately preceding key, and the next key.
<리모트 비디오 플레이어(RVP)의 비디오 복호화>≪ Video decoding of remote video player (RVP) >
리모트 비디오 플레이어(RVP)(30)는, 네트워크 비디오 레코더(NVR)(20)에 저장된 파일 비디오나 실시간으로 전송되는 라이브 비디오를 외부 장치에서 플레이할 수 있는, CCTV 벤더의 프로그램이다. 이 프로그램은, 예컨대 PC(윈도우즈(Windows), 리눅스(Linux))나 스마트 폰(안드로이드(Android), iOS)에서 동작한다.The remote video player (RVP) 30 is a program of a CCTV vendor capable of playing file video stored in a network video recorder (NVR) 20 or live video transmitted in real time on an external device. This program runs on, for example, a PC (Windows, Linux) or a smartphone (Android, iOS).
파일 비디오는, 스트림 형태로 전송될 수도 있다. 스트리밍에 의해 비디오 데이터를 전송하는 경우에는, 키 블럭을 먼저 전송하도록 한다.The file video may be transmitted in stream form. When video data is transmitted by streaming, the key block is transmitted first.
플레이어는, 비디오 데이터를 처리하기 전에 비디오 복호화 에이전트(VDA)를 호출하여, 복호화 과정을 수행해야 한다. 비디오 복호화 에이전트(VDA)는, 예컨대 네트워크 비디오 레코더(NVR)(20)의 벤더가 제공하는 예컨대 NAL 유닛 액세스 SDK를 이용하여, 예컨대 H.264/H.265 NAL 유닛 시퀀스를 추출해서, 복호화한다.The player must call a video decoding agent (VDA) before processing the video data to perform the decoding process. The video decoding agent (VDA) extracts and decodes, for example, an H.264 / H.265 NAL unit sequence using, for example, the NAL unit access SDK provided by the vendor of the network video recorder (NVR)
네트워크 비디오 레코더(NVR)(20) 외부의 리모트 비디오 플레이어(RVP)(30)는, 인터넷을 통해 항상 로컬 키 서버(LKS)(40)에 접근 가능해야 한다. 리모트 비디오 플레이어(RVP)(30)의 비디오 복호화 에이전트(VDA)(Video Decryption Agent)의 초기화 루틴은, 로컬 키 서버(LKS)(40)와 보안 세션을 생성하고, 자신을 인증받아야 한다. 이를 위해, 설치 후 최초 접속 시에, MAC 주소 등의 자기 식별 정보를 등록해야 한다. 로컬 키 서버(LKS)(40)는, 이 정보를 이용하여, 사용자 당 플레이 가능한 리모트 비디오 플레이어(RVP)(30) 디바이스의 허용 개수를 관리할 수도 있다. 사용자는, 리모트 비디오 플레이어(RVP)(30)를 사용하기 위해, 로컬 키 서버(LKS)(40)로부터 사용자 인증을 받아야 한다.The remote video player (RVP) 30 outside the network video recorder (NVR) 20 must always be accessible to the local key server (LKS) 40 via the Internet. The initialization routine of the video decryption agent (VDA) of the remote video player (RVP) 30 must generate a secure session with the local key server (LKS) 40 and authenticate itself. For this purpose, it is necessary to register the self-identification information such as the MAC address at the first connection after the installation. The local key server (LKS) 40 may use this information to manage the allowable number of remote video player (RVP) 30 devices that can be played per user. The user must receive user authentication from the local key server (LKS) 40 in order to use the remote video player (RVP)
파일 비디오를 복호화하기 위해, 비디오 복호화 에이전트(VDA)는, 로컬 키 서버(LKS)(40)로 키 ID(PKID)를 전송한다. 로컬 키 서버(LKS)(40)는, 해당되는 플레이 키(PK)를 찾아서 리플라이한다. 비디오 복호화 에이전트(VDA)는, 플레이 키(PK)를 이용하여, 키 블럭을 복호화하고, 비디오 데이터를 복호화할 로컬 키(LK)를 구한다. 이 키를 이용하여, 현재 요청되는 스트림이나 파일 비디오 데이터에 대한 복호화를 수행한다.To decrypt the file video, the video decryption agent (VDA) sends the key ID (PKID) to the local key server (LKS) The local key server (LKS) 40 finds and replies to the corresponding play key PK. The video decryption agent (VDA) decrypts the key block using the play key (PK), and obtains a local key (LK) for decrypting the video data. This key is used to decode the currently requested stream or file video data.
<로컬 키 서버(LKS)를 통한 사용자 인증 방안><User authentication method through local key server (LKS)>
네트워크 비디오 레코더(NVR)(20) 내부의 로컬 비디오 플레이어(LVP), 및 외부의 리모트 비디오 플레이어(RVP)(30)는, 동작을 위해 각각 비디오 관리 에이전트(VMA), 및 비디오 복호화 에이전트(VDA)를 통해, 로컬 키 서버(LKS)(40)로부터 사용자 인증을 받아야 한다.A local video player LVP in the
스마트 폰 앱에서 생성되는 OTP(One Time Password, 일회용 패스워드)를 이용해서, 기존의 ID/패스워드 이외에 추가적인 인증을 진행한다.The OTP (One Time Password) generated from the smartphone app is used to perform additional authentication in addition to the existing ID / password.
OTP 생성 앱에 있어서, 스마트 폰에 앱을 설치한 후, 접속할 로컬 키 서버(LKS)(40)의 URL과 네트워크 비디오 레코더 사이트 ID(NVR SID)를 등록하면, 앱은 사용자 ID와 전화번호, IMSI 같은 식별 정보와 함께, 로컬 키 서버(LKS)(40)에 앱 사용 승인 요청을 전송한다. 로컬 키 서버(LKS)(40)의 관리자는, 예컨대 직접적인 확인 과정을 거쳐, 요청 폰을 수동으로 승인 처리한다. 로컬 키 서버(LKS)(40)는, 앱 사용자가 새 OTP를 요청할 때마다, 난수를 생성해서 전송하고 기록한다. 새로운 OTP를 요청할 때마다, 그 이전 OTP는 바로 무효화된다. 그리고 1분 정도 사용을 하지 않아도 바로 무효화된다.In the OTP generation application, after the application is installed in the smartphone, if the URL of the local key server (LKS) 40 to be connected and the network video recorder site ID (NVR SID) are registered, the app stores the user ID, (LKS) 40 to the local key server (LKS) 40 together with the same identification information. The administrator of the local key server (LKS) 40 manually accepts the request phone, for example, through a direct confirmation process. Each time the app user requests a new OTP, the local key server (LKS) 40 generates, transmits, and records a random number. Each time a new OTP is requested, the old OTP is immediately invalidated. And it is invalidated without using for about 1 minute.
로컬 비디오 플레이어(LVP), 및 리모트 비디오 플레이어(RVP)(30)는, 사용자 ID와 패스워드 이외에 OTP를 입력받아야 한다. 비디오 관리 에이전트(VMA), 및 비디오 복호화 에이전트(VDA)는, 자신의 네트워크 비디오 레코더 사이트 ID(NVR SID)와 사용자 ID, OTP를 로컬 키 서버(LKS)(40)에 전송한다. 로컬 키 서버(LKS)(40)는, 사용자의 식별 정보와 저장돼 있는 난수를 해시하여 사용자 인증을 행한다.The local video player (LVP), and the remote video player (RVP) (30) must receive the OTP in addition to the user ID and password. The video management agent (VMA) and the video decryption agent (VDA) transmit their network video recorder site ID (NVR SID) and user ID, OTP to the local key server (LKS) The local key server (LKS) 40 performs user authentication by hashing the identification information of the user and the stored random number.
사용자 인증은, 로컬 키 서버(LKS)(40)와의 세션이 유지되는 동안 유효하다. 프로그램 인스턴스(instance)가 유지되는 동안은, 사용자 인증을 다시 진행할 필요가 없다.User authentication is valid while a session with the local key server (LKS) 40 is maintained. While the program instance is being maintained, there is no need to re-authenticate the user.
<로컬 키 서버(LKS)를 통한 사용자 인증 방안 다른 예><Another example of user authentication through local key server (LKS)>
네트워크 비디오 레코더(NVR)(20)의 로컬 비디오 플레이어(LVP)는, 인터넷 접속이 안 될 때, 로컬 키 서버(LKS)(40)를 통해서 사용자 인증을 진행하는 것이 가능하다. 아이솔레이티드 모드로 동작하는 시스템 뿐만 아니라, 일시적 인터넷 접속 장애를 갖는 시스템에서도 이 형태의 사용자 인증이 가능하다.The local video player (LVP) of the network video recorder (NVR) 20 is able to proceed with user authentication through the local key server (LKS) 40 when no Internet connection is available. This type of user authentication is possible not only in a system operating in an isolated mode but also in a system having a temporary Internet connection failure.
이를 위해, 스마트 폰의 OTP 생성 앱을 로컬 모드로 실행해야 한다. 로컬 모드로 실행되는 앱은, 로컬 키 서버(LKS)(40)와 시간 동기화가 돼 있어야 한다. OTP를 생성하기 위해, 환경 변수와 사용자 정보를 이용하여 예컨대 6자리 OTP를 생성한다. 로컬 비디오 플레이어(LVP)는, 로그인 창을 통해 ID/패스워드 및 OTP를 입력받아, 로컬 키 서버(LKS)(40)에 전달한다. 로컬 키 서버(LKS)(40)는, 환경 변수와 사용자 정보를 이용하여, OTP에 대한 검증을 진행한다.To do this, you need to run the OTP generation app on your smartphone in local mode. An app running in local mode must be time synchronized with the local key server (LKS) 40. To create an OTP, for example, a 6-digit OTP is generated using an environment variable and user information. The local video player LVP receives the ID / password and the OTP through the login window, and transfers the ID / password and the OTP to the local key server (LKS) 40. The local key server (LKS) 40 performs verification of the OTP using the environment variables and the user information.
<프라이머리 로컬 키 서버(LKS)><Primary Local Key Server (LKS)>
프라이머리 로컬 키 서버(LKS)의 주요 기능은 다음과 같다.The primary functions of the primary local key server (LKS) are as follows.
- 네트워크 비디오 레코더(NVR)(20) 사이트에 배포되는 세컨더리 로컬 키 서버(LKS)(40)의 초기 등록 과정을 실행한다. 이때, 세컨더리 로컬 키 서버(LKS)(40)의 백업 과정을 실행한다.- The initial registration process of the secondary local key server (LKS) 40 distributed to the network video recorder (NVR) 20 site is executed. At this time, the backup process of the secondary local key server (LKS) 40 is executed.
- 플레이 키(PK)를 생성 발급하고, DB에 생성시간과 함께 기록한다.- generates and issues a play key (PK), and records it in the DB together with the generation time.
- 네트워크 비디오 레코더 사이트 ID(NVR SID)를 생성하고 등록한다.- Create and register the network video recorder site ID (NVR SID).
- 네트워크 비디오 레코더(NVR)(20) ID(NVR ID)를 생성하고 등록한다.- Create and register a network video recorder (NVR) 20 ID (NVR ID).
- 비디오 복호화 에이전트(VDA)를 인증하고 요청받은 플레이 키(PK)를 제공한다.- Authenticates the video decryption agent (VDA) and provides the requested play key (PK).
- OTP를 발급받을 스마트 폰의 등록을 처리한다.- Handles the registration of smartphone to receive OTP.
- OTP 생성 앱의 요청에 따라 OTP를 발급한다.- OTP generation OTP is issued at the request of the app.
- 자신의 키 페어를 저장하고, 전자서명을 수행한다.- Save your key pair and perform digital signature.
로컬 키 서버(LKS)는 기본적으로, 네트워크 비디오 레코더(NVR)(20) 사이트에 한 대 설치되어 운영된다. 여러 대의 네트워크 비디오 레코더(NVR)(20)를 동시에 지원하는 것이 가능하다.The local key server LKS is basically installed and operated in the network video recorder (NVR) 20 site. It is possible to support several network video recorders (NVR) 20 at the same time.
<기능><Function>
본 발명에 의하면, CCTV 시스템을 통해 유통되는 비디오 파일에 대해 엔드 투 엔드(end-to-end) 보호를 제공한다.The present invention provides end-to-end protection for video files distributed through a CCTV system.
DRM 기술을 기반으로, 가볍지만 높은 수준의 보안 성능을 제공한다.Based on DRM technology, it provides a light but high level of security.
아이솔레이티드 네트워크 비디오 레코더(NVR)(20)에 보관되는 파일에 대해서도 암호화가 가능하고, 인터넷이 연결돼 있는 어떤 시스템에서도 이 파일에 대한 플레이가 가능하다.It is also possible to encrypt files stored in an isolated network video recorder (NVR) 20 and play them on any system connected to the Internet.
기존 CCTV 시스템과의 정합 지점 수 및 정합 작업을 최소화해, 단기간 내에 시스템 배치(deployment)가 가능하다.It minimizes the number of matching points and matching operation with existing CCTV system and enables system deployment in a short period of time.
소규모부터 대규모까지, 복잡하고 다양한 CCTV 시스템 구성 및 동작 모델을 지원할 수 있다.It can support complex and diverse CCTV system configuration and operation models, from small to large.
최적의 가격 대비 성능 비를 제공한다.It provides optimal price / performance ratio.
일시적 인터넷 단절 상태에서도, 네트워크 비디오 레코더(NVR)(20)는, 정상 동작이 가능하다.Even in the temporary interruption of the Internet, the network video recorder (NVR) 20 can operate normally.
<네트워크 비디오 레코더(NVR)가 DB 형태로 비디오 데이터를 저장하는 경우><When the network video recorder (NVR) stores video data in DB format>
이 경우에 대해 카메라(CAM)(10)와 네트워크 비디오 레코더(NVR)(20) 사이의 전송을 암호화하는 것을, 본 발명에서 관여할 수 있는데, 이 경우, 키가 변경되지 않는 구조를 상정한다.In this case, encrypting the transmission between the camera (CAM) 10 and the network video recorder (NVR) 20 can be involved in the present invention. In this case, it is assumed that the key is unchanged.
스트림 프로그램이 DB에서 데이터를 읽어 외부의 리모트 비디오 플레이어(RVP)(30)로 전송하는 부분을 암호화하도록 한다. 로컬 키 서버(LKS)(40)에서 로컬 키(LK)를 발급받아 암호화 키로 사용한다. 사용 세션이 유지되는 동안에는, 키를 바꾸지 않는다. 리모트 비디오 플레이어(RVP)(30)는, 비디오 관리 에이전트(VMA)로부터 이 키를 조회한다.The stream program reads the data from the DB and encrypts the portion to be transmitted to the external remote video player (RVP) 30. The local key server (LKS) 40 issues a local key (LK) and uses it as an encryption key. While the usage session is being held, the keys are not changed. The remote video player (RVP) 30 queries this key from the video management agent (VMA).
파일 저장 프로그램이 DB 데이터를 파일로 저장하는 경우에, 암호화를 하도록 한다. 비디오 관리 에이전트(VMA)가, 로컬 키(LK)를 발급받고, 암호화하는 기능을 수행하고, 키 블럭을 첨부한다.When the file storage program stores the DB data as a file, the encryption is performed. A video management agent (VMA) performs a function of issuing and encrypting a local key (LK), and attaches a key block.
실제 암호화가 이루어지는 시점과 위치만 다를 뿐, 로컬 키 서버(LKS)(40)의 기능은 그대로 유지된다.The function of the local key server (LKS) 40 is maintained as it is only at the time and position where the actual encryption is performed.
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.While the present invention has been described in connection with what is presently considered to be practical exemplary embodiments, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, You will understand. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive.
본 발명은, 시스템 내의 비디오의 유출 및 오용을 방지하는 비디오 보호 시스템에 관련된 산업에 이용될 수 있다.The present invention can be used in industries related to video protection systems to prevent leakage and misuse of video in the system.
10: 카메라(CAM)
20: 네트워크 비디오 레코더(NVR)(Network Video Recorder)
30: 리모트 비디오 플레이어(RVP)(Remote Video Player)
40: 로컬 키 서버(LKS)(Local Key Server)10: Camera (CAM)
20: Network Video Recorder (NVR) (Network Video Recorder)
30: Remote Video Player (RVP) (Remote Video Player)
40: Local Key Server (LKS)
Claims (8)
상기 카메라(CAM)에는, 상기 암호화 비디오 데이터를 생성하는 비디오 암호화 에이전트( VEA )가 구비되고,
상기 네트워크 비디오 레코더(NVR)에는, 상기 암호화 비디오 데이터를 관리하는 비디오 관리 에이전트( VMA )가 구비되며,
상기 네트워크 비디오 레코더(NVR)에 착탈 가능하게 접속되어, 로컬 키(LK)를 제공하는 로컬 키 서버(LKS)가 구비되고,
상기 네트워크 비디오 레코더(NVR)로부터 상기 암호화 비디오 데이터를 받아 플레이하는 로컬 비디오 플레이어(LVP)가 구비되며,
상기 로컬 비디오 플레이어(LVP)에는, 상기 암호화 비디오 데이터를 복호화하는 비디오 복호화 에이전트( VDA )가 구비되고,
상기 로컬 키(LK)의 생성 시에 있어서,
상기 비디오 관리 에이전트(VMA)는, 상기 로컬 키 서버(LKS)에 상기 로컬 키(LK)의 생성을 요청하고,
상기 로컬 키 서버(LKS)는, 상기 요청에 따라 비로소 상기 로컬 키(LK)를 신규 생성하고 상기 비디오 관리 에이전트(VMA)에 전송하며,
상기 암호화 비디오 데이터의 생성 전에 있어서,
상기 네트워크 비디오 레코더(NVR)는, 상기 비디오 관리 에이전트(VMA)를 호출하고,
상기 비디오 관리 에이전트(VMA)는, 신규 생성된 상기 로컬 키(LK)를 상기 비디오 암호화 에이전트(VEA)에 전송하며,
상기 암호화 비디오 데이터의 생성 시에 있어서,
상기 카메라(CAM)는, 상기 비디오 데이터의 촬상 후에 상기 비디오 암호화 에이전트(VEA)를 호출하고,
상기 비디오 암호화 에이전트(VEA)는, 상기 로컬 키(LK)를 이용하여 상기 비디오 데이터를 암호화하여 상기 암호화 비디오 데이터를 생성하며,
상기 암호화 비디오 데이터의 복호화 시에,
상기 비디오 복호화 에이전트(VDA)는, 상기 로컬 키 서버(LKS)에 상기 로컬 키(LK)를 요청하고,
상기 로컬 키 서버(LKS)는, 상기 로컬 키(LK)를 상기 비디오 복호화 에이전트(VDA)에 전송하며,
상기 비디오 복호화 에이전트(VDA)는, 상기 로컬 키(LK)로 상기 암호화 비디오 데이터를 복호화함
을 특징으로 하는 비디오 보호 시스템.A video protection system comprising a camera (CAM) for outputting encrypted video data encrypted with captured video data, and a network video recorder (NVR) for receiving and storing the encrypted video data from the camera (CAM)
The camera (CAM ) is provided with a video encryption agent ( VEA ) for generating the encrypted video data,
The network video recorder (NVR ) is provided with a video management agent ( VMA ) for managing the encrypted video data,
A local key server (LKS) detachably connected to the network video recorder (NVR) and providing a local key (LK)
A local video player (LVP) for receiving and playing the encrypted video data from the network video recorder (NVR)
The local video player (LVP ) is provided with a video decoding agent ( VDA ) for decoding the encrypted video data,
Upon generation of the local key (LK)
The video management agent (VMA) requests the local key server (LKS) to generate the local key (LK)
The local key server (LKS) generates the new local key (LK) and sends it to the video management agent (VMA) according to the request,
Before the generation of the encrypted video data,
Wherein the network video recorder (NVR) calls the video management agent (VMA)
The video management agent (VMA) transmits the newly generated local key (LK) to the video encryption agent (VEA)
Upon generation of the encrypted video data,
The camera (CAM) calls the video encryption agent (VEA) after imaging of the video data,
Wherein the video encryption agent VEA encrypts the video data using the local key LK to generate the encrypted video data,
Upon decoding the encrypted video data,
The video decryption agent VDA requests the local key LKS from the local key server LKS,
The local key server (LKS) transmits the local key (LK) to the video decryption agent (VDA)
The video decryption agent (VDA) decrypts the encrypted video data with the local key (LK)
The video protection system comprising:
상기 로컬 비디오 플레이어(LVP)는, 상기 비디오 관리 에이전트(VMA)를 통하여 상기 로컬 키 서버(LKS)에서 사용자 인증을 받음
을 특징으로 하는 비디오 보호 시스템.The method according to claim 1,
The local video player (LVP) receives user authentication from the local key server (LKS) through the video management agent (VMA)
The video protection system comprising:
상기 카메라(CAM)에는, 상기 암호화 비디오 데이터를 생성하는 비디오 암호화 에이전트( VEA )가 구비되고,
상기 네트워크 비디오 레코더(NVR)에는, 상기 암호화 비디오 데이터를 관리하는 비디오 관리 에이전트( VMA )가 구비되며,
상기 네트워크 비디오 레코더(NVR)에 착탈 가능하게 접속되어, 로컬 키(LK)를 제공하는 로컬 키 서버(LKS)가 구비되고,
상기 네트워크 비디오 레코더(NVR)로부터 키 블럭(key block)이 추가된 상기 암호화 비디오 데이터를 받아 플레이하는 리모트 비디오 플레이어(RVP)가 구비되며,
상기 리모트 비디오 플레이어(RVP)에는, 상기 키 블럭이 추가된 상기 암호화 비디오 데이터를 복호화하는 비디오 복호화 에이전트(VDA)가 구비되고,
상기 로컬 키(LK)의 생성 시에 있어서,
상기 비디오 관리 에이전트(VMA)는, 상기 로컬 키 서버(LKS)에 상기 로컬 키(LK)의 생성을 요청하고,
상기 로컬 키 서버(LKS)는, 상기 요청에 따라 비로소 상기 로컬 키(LK)를 신규 생성하고 상기 비디오 관리 에이전트(VMA)에 전송하며,
상기 암호화 비디오 데이터의 생성 전에 있어서,
상기 네트워크 비디오 레코더(NVR)는, 상기 비디오 관리 에이전트(VMA)를 호출하고,
상기 비디오 관리 에이전트(VMA)는, 신규 생성된 상기 로컬 키(LK)를 상기 비디오 암호화 에이전트(VEA)에 전송하며,
상기 암호화 비디오 데이터의 생성 시에 있어서,
상기 카메라(CAM)는, 상기 비디오 데이터의 촬상 후에 상기 비디오 암호화 에이전트(VEA)를 호출하고,
상기 비디오 암호화 에이전트(VEA)는, 상기 로컬 키(LK)를 이용하여 상기 비디오 데이터를 암호화하여 상기 암호화 비디오 데이터를 생성하며,
상기 키 블럭의 생성 시에,
상기 비디오 관리 에이전트(VMA)는, 암호화에 사용된 상기 로컬 키(LK)에 대한 상기 키 블럭을 상기 로컬 키 서버(LKS)에 요청하고,
상기 로컬 키 서버(LKS)는, 저장된 플레이 키(PK)로 상기 로컬 키(LK)를 암호화한 것과, 상기 플레이 키(PK)에 해당되는 플레이 키 ID(PKID)가 적어도 포함되도록 상기 키 블럭을 생성하며,
상기 암호화 비디오 데이터의 복호화 시에,
상기 비디오 복호화 에이전트(VDA)는, 상기 키 블럭의 상기 플레이 키 ID(PKID)를 이용해 상기 로컬 키 서버(LKS)로부터 얻은 상기 플레이 키(PK)로 복호화한 상기 로컬 키(LK)로 상기 암호화 비디오 데이터를 복호화함
을 특징으로 하는 비디오 보호 시스템.A video protection system comprising a camera (CAM) for outputting encrypted video data encrypted with captured video data, and a network video recorder (NVR) for receiving and storing the encrypted video data from the camera (CAM)
The camera (CAM ) is provided with a video encryption agent ( VEA ) for generating the encrypted video data,
The network video recorder (NVR ) is provided with a video management agent ( VMA ) for managing the encrypted video data,
A local key server (LKS) detachably connected to the network video recorder (NVR) and providing a local key (LK)
A remote video player (RVP) for receiving and playing the encrypted video data to which a key block is added from the network video recorder (NVR)
The remote video player (RVP ) is provided with a video decoding agent (VDA) for decoding the encrypted video data to which the key block is added,
Upon generation of the local key (LK)
The video management agent (VMA) requests the local key server (LKS) to generate the local key (LK)
The local key server (LKS) generates the new local key (LK) and sends it to the video management agent (VMA) according to the request,
Before the generation of the encrypted video data,
Wherein the network video recorder (NVR) calls the video management agent (VMA)
The video management agent (VMA) transmits the newly generated local key (LK) to the video encryption agent (VEA)
Upon generation of the encrypted video data,
The camera (CAM) calls the video encryption agent (VEA) after imaging of the video data,
Wherein the video encryption agent VEA encrypts the video data using the local key LK to generate the encrypted video data,
Upon creation of the key block,
The video management agent (VMA) requests the local key server (LKS) for the key block for the local key (LK) used for encryption,
The local key server LKS encrypts the local key LK with the stored play key PK and the key block corresponding to the play key PK corresponding to the play key PK ≪ / RTI &
Upon decoding the encrypted video data,
The video decryption agent VDA encrypts the encrypted video LK with the local key LK decrypted with the play key PK obtained from the local key server LKS using the play key ID PKID of the key block LK, Decrypts the data
The video protection system comprising:
상기 로컬 키(LK)의 생성 시에 있어서,
상기 로컬 키 서버(LKS)는, 상기 로컬 키(LK)와 함께 로컬 키 ID(LKID)를 상기 비디오 관리 에이전트(VMA)에 전송하고,
상기 키 블럭의 생성 시에 있어서,
상기 비디오 관리 에이전트(VMA)는, 상기 로컬 키 서버(LKS)로부터 받았던 상기 로컬 키 ID(LKID)를 상기 로컬 키 서버(LKS)에 제공하면서 상기 키 블럭을 요청하고,
상기 로컬 키 서버(LKS)는, 상기 로컬 키 ID(LKID)에 해당되는 상기 로컬 키(LK)를 대상으로 상기 키 블럭을 생성함
을 특징으로 하는 비디오 보호 시스템.The method of claim 3,
Upon generation of the local key (LK)
The local key server (LKS) sends a local key ID (LKID) to the video management agent (VMA) together with the local key (LK)
Upon generation of the key block,
The video management agent (VMA) requests the key block while providing the local key ID (LKID) received from the local key server (LKS) to the local key server (LKS)
The local key server LKS generates the key block for the local key LK corresponding to the local key ID LKID
The video protection system comprising:
상기 로컬 키 서버(LKS)가 응답하지 않는 경우,
상기 비디오 관리 에이전트(VMA)는, 임시 생성한 플레이 키(PK)를 이용하여 상기 로컬 키(LK)를 암호화하여 임시 키 블럭을 생성하고,
상기 로컬 키 서버(LKS)가 복구된 후에,
상기 비디오 관리 에이전트(VMA)는, 상기 임시 생성한 플레이 키(PK)를 사용한 파일들에 대해, 상기 임시 키 블럭을 상기 로컬 키 서버(LKS)의 플레이 키(PK)로 재암호화하여 새로 키 블럭을 생성함
을 특징으로 하는 비디오 보호 시스템.The method of claim 3,
If the local key server LKS does not respond,
The video management agent (VMA) encrypts the local key (LK) using the temporarily generated play key (PK) to generate a temporary key block,
After the local key server (LKS) is recovered,
The video management agent (VMA) re-encrypts the temporary key block with the play key (PK) of the local key server (LKS) for files using the temporarily generated play key (PK) Created
The video protection system comprising:
상기 네트워크 비디오 레코더(NVR)가 복수 구비된 멀티 네트워크 비디오 레코더(NVR) 환경에 있어서,
어느 하나의 네트워크 비디오 레코더(NVR)가 프라이머리 네트워크 비디오 레코더(NVR)로 설정되고,
나머지의 네트워크 비디오 레코더(NVR)가 세컨더리 네트워크 비디오 레코더(NVR)로 설정되며,
상기 프라이머리 네트워크 비디오 레코더(NVR)에는 액세스 승인 서버(AAS)의 모듈이 탑재되고,
상기 세컨더리 네트워크 비디오 레코더(NVR)에는 액세스 승인 에이전트(AAA)의 모듈이 탑재되며,
상기 액세스 승인 서버(AAS)의 모듈은, 상기 액세스 승인 에이전트(AAA)의 모듈들과 통신을 통해 해당 세컨더리 네트워크 비디오 레코더(NVR)에 대한 인증을 수행하도록 구성됨
을 특징으로 하는 비디오 보호 시스템.The method of claim 3,
In a multi-network video recorder (NVR) environment having a plurality of network video recorders (NVR)
One of the network video recorders (NVR) is set as the primary network video recorder (NVR)
The remaining network video recorder NVR is set as the secondary network video recorder NVR,
The primary network video recorder (NVR) is equipped with a module of an access approval server (AAS)
The secondary network video recorder (NVR) is equipped with a module of an access authorization agent (AAA)
Wherein the module of the Access Authorization Server (AAS) is configured to perform authentication for a corresponding secondary network video recorder (NVR) through communication with modules of the access authorization agent (AAA)
The video protection system comprising:
상기 네트워크 비디오 레코더(NVR)가 복수 구비된 멀티 네트워크 비디오 레코더(NVR) 환경에 있어서,
어느 하나의 네트워크 비디오 레코더(NVR)가 프라이머리 네트워크 비디오 레코더(NVR)로 설정되고,
나머지의 네트워크 비디오 레코더(NVR)가 세컨더리 네트워크 비디오 레코더(NVR)로 설정되며,
상기 프라이머리 네트워크 비디오 레코더(NVR)에는 액세스 승인 서버(AAS)의 모듈이 탑재되고,
상기 세컨더리 네트워크 비디오 레코더(NVR)에는 액세스 승인 에이전트(AAA)의 모듈이 탑재되며,
상기 세컨더리 네트워크 비디오 레코더(NVR)는, 상기 액세스 승인 에이전트(AAA)를 통해 상기 프라이머리 네트워크 비디오 레코더(NVR)의 상기 액세스 승인 서버(AAS)에 상기 플레이 키(PK)의 발급을 요청하고,
상기 프라이머리 네트워크 비디오 레코더(NVR)는, 접속되어 있는 상기 로컬 키 서버(LKS)로부터 상기 플레이 키(PK)를 발급받아, 상기 액세스 승인 서버(AAS)를 통해 상기 액세스 승인 에이전트(AAA)에 전달하도록 구성됨
을 특징으로 하는 비디오 보호 시스템.The method of claim 3,
In a multi-network video recorder (NVR) environment having a plurality of network video recorders (NVR)
One of the network video recorders (NVR) is set as the primary network video recorder (NVR)
The remaining network video recorder NVR is set as the secondary network video recorder NVR,
The primary network video recorder (NVR) is equipped with a module of an access approval server (AAS)
The secondary network video recorder (NVR) is equipped with a module of an access authorization agent (AAA)
Wherein the secondary network video recorder NVR requests issuance of the play key PK to the access authorization server AAS of the primary network video recorder NVR via the access grant agent AAA,
The primary network video recorder NVR issues the play key PK from the connected local key server LKS to the access authorization agent AAA via the access authorization server AAS. Configured to
The video protection system comprising:
상기 카메라(CAM)에는, 상기 암호화 비디오 데이터를 생성하는 비디오 암호화 에이전트( VEA )가 구비되고,
상기 네트워크 비디오 레코더(NVR)에는, 상기 암호화 비디오 데이터를 관리하는 비디오 관리 에이전트( VMA )가 구비되며,
상기 네트워크 비디오 레코더(NVR)에 착탈 가능하게 접속되어, 로컬 키(LK)를 제공하는 로컬 키 서버(LKS)가 구비되고,
상기 로컬 키(LK)의 생성 시에 있어서,
상기 비디오 관리 에이전트(VMA)는, 상기 로컬 키 서버(LKS)에 상기 로컬 키(LK)의 생성을 요청하고,
상기 로컬 키 서버(LKS)는, 상기 요청에 따라 비로소 상기 로컬 키(LK)를 신규 생성하고 상기 비디오 관리 에이전트(VMA)에 전송하며,
상기 암호화 비디오 데이터의 생성 전에 있어서,
상기 네트워크 비디오 레코더(NVR)는, 상기 비디오 관리 에이전트(VMA)를 호출하고,
상기 비디오 관리 에이전트(VMA)는, 신규 생성된 상기 로컬 키(LK)를 상기 비디오 암호화 에이전트(VEA)에 전송하며,
상기 암호화 비디오 데이터의 생성 시에 있어서,
상기 카메라(CAM)는, 상기 비디오 데이터의 촬상 후에 상기 비디오 암호화 에이전트(VEA)를 호출하고,
상기 비디오 암호화 에이전트(VEA)는, 상기 로컬 키(LK)를 이용하여 상기 비디오 데이터를 암호화하여 상기 암호화 비디오 데이터를 생성하며,
상기 로컬 키 서버(LKS)가 응답하지 않는 경우,
상기 비디오 관리 에이전트(VMA)는, 상기 로컬 키(LK)를 자체 생성해서 사용함
을 특징으로 하는 비디오 보호 시스템.A video protection system comprising a camera (CAM) for outputting encrypted video data encrypted with captured video data, and a network video recorder (NVR) for receiving and storing the encrypted video data from the camera (CAM)
The camera (CAM ) is provided with a video encryption agent ( VEA ) for generating the encrypted video data,
The network video recorder (NVR ) is provided with a video management agent ( VMA ) for managing the encrypted video data,
A local key server (LKS) detachably connected to the network video recorder (NVR) and providing a local key (LK)
Upon generation of the local key (LK)
The video management agent (VMA) requests the local key server (LKS) to generate the local key (LK)
The local key server (LKS) generates the new local key (LK) and sends it to the video management agent (VMA) according to the request,
Before the generation of the encrypted video data,
Wherein the network video recorder (NVR) calls the video management agent (VMA)
The video management agent (VMA) transmits the newly generated local key (LK) to the video encryption agent (VEA)
Upon generation of the encrypted video data,
The camera (CAM) calls the video encryption agent (VEA) after imaging of the video data,
Wherein the video encryption agent VEA encrypts the video data using the local key LK to generate the encrypted video data,
If the local key server LKS does not respond,
The video management agent (VMA) generates and uses the local key (LK)
The video protection system comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180004922A KR101837188B1 (en) | 2018-01-15 | 2018-01-15 | Video protection system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180004922A KR101837188B1 (en) | 2018-01-15 | 2018-01-15 | Video protection system |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170065029 Division | 2017-05-26 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101837188B1 true KR101837188B1 (en) | 2018-04-19 |
Family
ID=62087950
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180004922A KR101837188B1 (en) | 2018-01-15 | 2018-01-15 | Video protection system |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101837188B1 (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109218677A (en) * | 2018-09-30 | 2019-01-15 | 天津天地伟业电子工业制造有限公司 | A kind of multistage inquiry and method for down loading of recording a video |
CN110913174A (en) * | 2019-11-11 | 2020-03-24 | 国网浙江武义县供电有限公司 | Engineering site intelligent management and control system and method |
EP3691257A1 (en) * | 2019-01-29 | 2020-08-05 | Idis Co., Ltd. | Internet protocol camera security system allowing secure encryption information to be transmitted |
CN115811625A (en) * | 2021-09-14 | 2023-03-17 | 果核数位股份有限公司 | Streaming media service method and system for customizing information security level |
EP4179953A1 (en) * | 2021-11-11 | 2023-05-17 | Idis Co., Ltd. | Video playback system based on approval of playback approver |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101352860B1 (en) | 2013-10-08 | 2014-01-20 | 파인트론 주식회사 | Multi stream system and multi stream display method thereof |
KR101388685B1 (en) | 2012-11-09 | 2014-04-24 | 주식회사 윈포넷 | System for managing a carried out closed-circuit television image and method for managing a carried out closed-circuit television image using the same |
KR101738334B1 (en) | 2016-10-12 | 2017-05-22 | 주식회사에스에이티 | Apparatus for security surveillance in closed circuit television using cloud computing environment and method by using the same |
-
2018
- 2018-01-15 KR KR1020180004922A patent/KR101837188B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101388685B1 (en) | 2012-11-09 | 2014-04-24 | 주식회사 윈포넷 | System for managing a carried out closed-circuit television image and method for managing a carried out closed-circuit television image using the same |
KR101352860B1 (en) | 2013-10-08 | 2014-01-20 | 파인트론 주식회사 | Multi stream system and multi stream display method thereof |
KR101738334B1 (en) | 2016-10-12 | 2017-05-22 | 주식회사에스에이티 | Apparatus for security surveillance in closed circuit television using cloud computing environment and method by using the same |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109218677A (en) * | 2018-09-30 | 2019-01-15 | 天津天地伟业电子工业制造有限公司 | A kind of multistage inquiry and method for down loading of recording a video |
EP3691257A1 (en) * | 2019-01-29 | 2020-08-05 | Idis Co., Ltd. | Internet protocol camera security system allowing secure encryption information to be transmitted |
US10957172B2 (en) | 2019-01-29 | 2021-03-23 | Idis Co., Ltd. | Internet protocol camera security system allowing secure encryption information to be transmitted |
CN110913174A (en) * | 2019-11-11 | 2020-03-24 | 国网浙江武义县供电有限公司 | Engineering site intelligent management and control system and method |
CN115811625A (en) * | 2021-09-14 | 2023-03-17 | 果核数位股份有限公司 | Streaming media service method and system for customizing information security level |
CN115811625B (en) * | 2021-09-14 | 2024-10-18 | 果核数位股份有限公司 | Method and system for customizing streaming media service with information security level |
EP4179953A1 (en) * | 2021-11-11 | 2023-05-17 | Idis Co., Ltd. | Video playback system based on approval of playback approver |
US11825166B2 (en) | 2021-11-11 | 2023-11-21 | Idis Co., Ltd. | Video playback system based on approval of playback approver |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101837188B1 (en) | Video protection system | |
JP6170208B2 (en) | Method and system for building a hardware root of trust and providing protected content processing within an open computing platform | |
US7549056B2 (en) | System and method for processing and protecting content | |
KR101172093B1 (en) | Digital audio/video data processing unit and method for controlling access to said data | |
KR101192007B1 (en) | Method for transmitting digital data in a local network | |
EP3105882B1 (en) | Method, apparatus and computer readable medium for securing content keys delivered in manifest files | |
JP4698106B2 (en) | System and method for copy protection of transmitted information | |
US10055553B2 (en) | PC secure video path | |
US20080267399A1 (en) | Method and Apparatus for Secure Content Recording | |
KR20040108533A (en) | Contents transmitter, contents receiver, and contents transfer method | |
EP3691257B1 (en) | Internet protocol camera security system allowing secure encryption information to be transmitted | |
US20110113443A1 (en) | IP TV With DRM | |
KR101810904B1 (en) | Video protection system | |
JP2008028575A (en) | Receiver | |
JP4447908B2 (en) | Local digital network and method for introducing new apparatus, and data broadcasting and receiving method in the network | |
JP2001251290A (en) | Data transmission system and method for distributing and storing and reproducing contents | |
GB2575021A (en) | Security device for networked camera system | |
JP2008017140A (en) | Monitoring data transmission system | |
WO2007049128A2 (en) | An authentication token which implements drm functionality with a double key arrangement |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GRNT | Written decision to grant |