JP2006279244A - Data transmission apparatus - Google Patents

Data transmission apparatus Download PDF

Info

Publication number
JP2006279244A
JP2006279244A JP2005091960A JP2005091960A JP2006279244A JP 2006279244 A JP2006279244 A JP 2006279244A JP 2005091960 A JP2005091960 A JP 2005091960A JP 2005091960 A JP2005091960 A JP 2005091960A JP 2006279244 A JP2006279244 A JP 2006279244A
Authority
JP
Japan
Prior art keywords
encrypted
data
header
stream
header part
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2005091960A
Other languages
Japanese (ja)
Inventor
Munemitsu Kuwabara
宗光 桑原
Hirotake Usami
裕丈 宇佐美
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Kokusai Electric Inc
Original Assignee
Hitachi Kokusai Electric Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Kokusai Electric Inc filed Critical Hitachi Kokusai Electric Inc
Priority to JP2005091960A priority Critical patent/JP2006279244A/en
Publication of JP2006279244A publication Critical patent/JP2006279244A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To shorten a processing time required for encrypting a data stream. <P>SOLUTION: A header detection section 38 detects a header part from the data stream captured in a buffer 37 under the control of a control section 31 of the data transmission apparatus 3. When the header part is detected, the control section 31 allows a random number generator 33 to select an encryption key from a key storage section 35 and the random number generator 33 generates a random number by using an initial vector generated by an initial vector generating section 36 and the selected encryption key. Then an arithmetic unit 34 uses the produced random number to encrypt the detected header part and a communication I/F 32 transmits the encrypted header part. On the other hand, when the header detection section 38 detects a non-header part, the communication I/F 32 transmits the detected non-header part without executing the encryption processing. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

この発明は、例えば、ネットワークカメラ等により撮像された映像データを通信ネットワークを介して接続されるデータ受信装置に送信するデータ送信装置に関する。   The present invention relates to a data transmission device that transmits video data captured by a network camera or the like to a data reception device connected via a communication network, for example.

近年、映像をデジタル的に符号化(圧縮)して映像ストリームを作成し、作成された映像ストリームをサーバから端末装置に向けて配信するシステムが広く提供されている。さらに、映像ストリームを配信する際、限られた端末にのみ限定的に映像を配信する部分視聴が行われている。この部分視聴を実現するために、映像ストリームの非ヘッダ部分(つまり、データ部分)を暗号鍵により暗号化する方法がある(例えば、特許文献1を参照)。これにより、暗号鍵を有する端末装置においては元の映像の再生が可能であり、暗号鍵を持たない端末装置においては、映像の部分的な再生あるいは画質の劣化した映像が再生される。   2. Description of the Related Art In recent years, systems are widely provided in which video is digitally encoded (compressed) to create a video stream, and the created video stream is distributed from a server to a terminal device. Furthermore, when the video stream is distributed, partial viewing is performed in which the video is distributed only to a limited number of terminals. In order to realize this partial viewing, there is a method of encrypting a non-header portion (that is, a data portion) of a video stream with an encryption key (see, for example, Patent Document 1). As a result, the terminal device having the encryption key can reproduce the original video, and the terminal device not having the encryption key can reproduce a partial video or a video with degraded image quality.

特開2004−138933号公報JP 2004-138933 A

ところが、上記従来技術において、映像の部分視聴を行う際、暗号鍵で映像ストリームの非ヘッダ部分を全て暗号化しなければならないため、暗号化処理に時間を要していた。また、従来のように、単に非ヘッダ部分のみが暗号化されたデータストリームを配信する場合には、暗号鍵が漏洩して解読されるおそれがある。   However, in the above-described prior art, when performing partial viewing of a video, all the non-header portions of the video stream must be encrypted with the encryption key, so that the encryption process takes time. In addition, when a data stream in which only the non-header part is encrypted is distributed as in the past, the encryption key may be leaked and decrypted.

そこで、この発明は上記事情に着目してなされたもので、第1の目的とするところは、データストリームの暗号化に要する処理時間を短縮するデータ送信装置を提供することにある。また、第2の目的は、配信されるデータストリームの秘匿性の向上を可能にするデータ送信装置を提供することにある。   Accordingly, the present invention has been made paying attention to the above circumstances, and a first object thereof is to provide a data transmission apparatus that shortens the processing time required for encryption of a data stream. A second object is to provide a data transmission device that can improve the confidentiality of a distributed data stream.

上記目的を達成するためにこの発明に係わるデータ送信装置は、ヘッダ部を有するデータストリームを取得する手段と、複数の暗号鍵を記憶する手段とを備える。このデータストリームから上記ヘッダ部を検出すると共に、上記複数の暗号鍵の中から暗号鍵を選択し、選択された暗号鍵により上記検出されたヘッダ部を暗号化する。そして、上記データストリームに含まれるヘッダ部を上記暗号化されたヘッダ部に置き換えて暗号化データストリームを生成し、生成された暗号化データストリームを送信するようにしたものである。
これにより、従来のように非ヘッダ部(つまり、データ部)を暗号化する場合に比べ、暗号化処理を行うデータ量が減少するため、暗号化処理に要する時間を短縮することができる。
In order to achieve the above object, a data transmitting apparatus according to the present invention comprises means for obtaining a data stream having a header portion and means for storing a plurality of encryption keys. The header portion is detected from the data stream, an encryption key is selected from the plurality of encryption keys, and the detected header portion is encrypted with the selected encryption key. Then, the header part included in the data stream is replaced with the encrypted header part to generate an encrypted data stream, and the generated encrypted data stream is transmitted.
Thereby, compared with the conventional case where the non-header part (that is, the data part) is encrypted, the amount of data to be encrypted is reduced, so that the time required for the encryption process can be shortened.

また、この発明は、次のような構成を備えることも特徴とする。
初期ベクトルを生成する手段と、上記初期ベクトルを用いて鍵ストリームを生成する手段と、上記鍵ストリームによりデータストリームに含まれる非ヘッダ部を暗号化する手段とを備える。さらに、複数の暗号鍵を記憶する手段と、上記複数の暗号鍵の中から暗号鍵を選択する手段とを備え、上記選択された暗号鍵により上記初期ベクトルを暗号化し、この暗号化された初期ベクトルを上記非ヘッダ部が暗号化されたデータストリームに付加する。そして、暗号化された初期ベクトルが付加されたデータストリームを送信するようにする。
The present invention is also characterized by having the following configuration.
Means for generating an initial vector, means for generating a key stream using the initial vector, and means for encrypting a non-header part included in the data stream by the key stream. And a means for storing a plurality of encryption keys and a means for selecting an encryption key from among the plurality of encryption keys. The initial vector is encrypted with the selected encryption key, and the encrypted initial The vector is added to the data stream in which the non-header part is encrypted. Then, the data stream to which the encrypted initial vector is added is transmitted.

このように構成すると、上記送信されたデータストリームを復元する場合に、初期ベクトルの復号と非ヘッダ部(すなわち、データ部)の復元と二重に復元処理を行う必要があるため、これにより、配信されるデータストリームの秘匿性を向上させることができる。   With this configuration, when restoring the transmitted data stream, it is necessary to perform a restoration process in duplicate with the decoding of the initial vector and the restoration of the non-header part (that is, the data part). The confidentiality of the distributed data stream can be improved.

したがってこの発明によれば、データストリームの暗号化に要する処理時間を短縮することを可能にするデータ送信装置、及び配信されるデータストリームの秘匿性の向上を可能にするデータ送信装置を提供することができる。   Therefore, according to the present invention, it is possible to provide a data transmitting apparatus that can shorten the processing time required for encrypting a data stream, and a data transmitting apparatus that can improve the confidentiality of a distributed data stream. Can do.

図1は、この発明の一実施形態に係わるデータ送信装置を備えたネットワークカメラを利用した映像配信システムの概略構成図である。
この映像配信システムは、通信ネットワークNWを介して、ネットワークカメラ100とユーザが使用する端末装置TA,TB,TCとの間を接続可能としたものである。通信ネットワークNWは、例えばインターネットを含むWAN(Wide Area Network)により構成される。端末装置TA,TB,TCは、例えば、デコーダを備えたパーソナル・コンピュータにより構成される。
FIG. 1 is a schematic configuration diagram of a video distribution system using a network camera provided with a data transmission apparatus according to an embodiment of the present invention.
This video distribution system enables connection between the network camera 100 and terminal devices TA, TB, and TC used by a user via a communication network NW. The communication network NW is configured by, for example, a WAN (Wide Area Network) including the Internet. The terminal devices TA, TB, and TC are configured by, for example, a personal computer provided with a decoder.

ネットワークカメラ100は、例えば、監視用に設置されたウェブカメラにより構成され、撮像された映像ストリームを暗号鍵1〜N(Nは2以上の自然数)を選択的に用いて暗号化し、この暗号化ストリームを端末装置TA,TB,TCにそれぞれ配信している。端末装置TAは、暗号鍵1〜Nを有するため、ネットワークカメラ100が配信するすべての暗号化ストリームを復号することができる。一方、端末装置TBは、暗号鍵1と暗号鍵2とを有し、端末装置TCは、暗号鍵1のみを有する。このため、端末装置TB及び端末装置TCにおいては、ネットワークカメラ100が配信する暗号化ストリームのうち、それぞれが保持する暗号鍵に該当する一部分のみを復元(つまり、部分視聴)できる。   The network camera 100 is configured by, for example, a web camera installed for monitoring, and the captured video stream is encrypted by selectively using encryption keys 1 to N (N is a natural number of 2 or more). Streams are distributed to the terminal devices TA, TB, and TC, respectively. Since the terminal apparatus TA has the encryption keys 1 to N, all the encrypted streams distributed by the network camera 100 can be decrypted. On the other hand, the terminal device TB has the encryption key 1 and the encryption key 2, and the terminal device TC has only the encryption key 1. Therefore, in the terminal device TB and the terminal device TC, only a part corresponding to the encryption key held by each of the encrypted streams distributed by the network camera 100 can be restored (that is, partial viewing).

図2は、この映像配信システムの機能構成を示すブロック図である。なお、端末装置TB,TCは、端末装置TAと同一の構成であるため説明を省略し、同図では、端末装置TAについて説明を行う。
ネットワークカメラ100は、撮像ユニット1と、エンコーダ2と、データ送信装置3とを備える。撮像ユニット1は、例えば、撮像素子としてのCCD(Charge Coupled Devices)から構成される。エンコーダ2は、撮像ユニット1から出力された映像信号を圧縮符号化してストリームを生成する。圧縮符号化方式としては、例えばM−JPEG(Motion-Joint Photographic Experts Group)やMPEG(Motion Picture Experts Group)などが使用可能である。
FIG. 2 is a block diagram showing a functional configuration of this video distribution system. Since the terminal devices TB and TC have the same configuration as the terminal device TA, the description thereof will be omitted, and the terminal device TA will be described with reference to FIG.
The network camera 100 includes an imaging unit 1, an encoder 2, and a data transmission device 3. The imaging unit 1 is composed of, for example, a CCD (Charge Coupled Devices) as an imaging device. The encoder 2 compresses and encodes the video signal output from the imaging unit 1 to generate a stream. For example, M-JPEG (Motion-Joint Photographic Experts Group) or MPEG (Motion Picture Experts Group) can be used as the compression encoding method.

データ送信装置3は、制御部31と通信インタフェース(通信I/F)32とを備える。制御部31は、例えば、中央処理ユニット(CPU:Central Processing Unit)から構成され、各部を制御する。通信I/F32は、制御部31の制御の下、端末装置TAと間でデータの送受信を行う。さらに、データ送信装置3は、暗号化処理を実現するために、乱数発生器33と、演算器34と、鍵格納部35と、初期ベクトル生成部36と、バッファ37と、ヘッダ検出部38とを備える。   The data transmission device 3 includes a control unit 31 and a communication interface (communication I / F) 32. The control part 31 is comprised from a central processing unit (CPU: Central Processing Unit), for example, and controls each part. The communication I / F 32 transmits / receives data to / from the terminal device TA under the control of the control unit 31. Further, the data transmission device 3 includes a random number generator 33, a calculator 34, a key storage unit 35, an initial vector generation unit 36, a buffer 37, a header detection unit 38, Is provided.

バッファ37は、RAM等の記憶装置で構成され、エンコーダ2が出力する映像ストリームが記憶される。ヘッダ検出部38は、上記制御部31の制御の下、バッファ37に記憶された映像ストリームからヘッダ部を検出する。また、鍵格納部35は、ストリームの暗号化に用いられる複数の暗号鍵を格納する。初期ベクトル生成部36は、毎回異なる初期ベクトルの値を生成して出力する。乱数発生器33は、初期ベクトル生成部36において出力された初期ベクトル値と鍵格納部35から選択した暗号鍵とを用いて乱数(鍵ストリーム)を発生させる。演算器34は、検出されたヘッダ部と乱数発生器33が出力する乱数との排他的論理和を算出し、上記ヘッダ部を暗号化する。   The buffer 37 is configured by a storage device such as a RAM, and stores a video stream output from the encoder 2. The header detection unit 38 detects the header part from the video stream stored in the buffer 37 under the control of the control unit 31. The key storage unit 35 stores a plurality of encryption keys used for stream encryption. The initial vector generation unit 36 generates and outputs different initial vector values each time. The random number generator 33 generates a random number (key stream) using the initial vector value output from the initial vector generation unit 36 and the encryption key selected from the key storage unit 35. The computing unit 34 calculates an exclusive OR of the detected header part and the random number output from the random number generator 33, and encrypts the header part.

一方、端末装置TAは、データ受信装置4と、デコーダ5と、表示装置6とを備える。データ受信装置4は、通信ネットワークNWを介して受信される暗号化ストリームを復号して、復号化されたストリームをデコーダ5に出力する。デコーダ5は、データ受信装置4から出力されるストリームを伸張して映像信号を生成して表示装置6に出力する。表示装置6は、例えば、液晶表示器(LCD)や、テレビジョンモニタが用いられ、上記デコーダ5から出力される映像信号をもとに映像を表示する。   On the other hand, the terminal device TA includes a data receiving device 4, a decoder 5, and a display device 6. The data receiving device 4 decrypts the encrypted stream received via the communication network NW, and outputs the decrypted stream to the decoder 5. The decoder 5 decompresses the stream output from the data receiving device 4 to generate a video signal and outputs it to the display device 6. As the display device 6, for example, a liquid crystal display (LCD) or a television monitor is used, and an image is displayed based on a video signal output from the decoder 5.

データ受信装置4は、制御部41と通信インタフェース(通信I/F)42と、乱数発生器43と、演算器44と、鍵格納部45と、初期ベクトル格納部46と、バッファ47,48と、ヘッダ判定部49とを備える。制御部41は、CPUから構成され、各部を制御する。通信I/F42は、制御部41の制御の下、ネットワークカメラ100と間でデータの送受信を行う。   The data receiving device 4 includes a control unit 41, a communication interface (communication I / F) 42, a random number generator 43, a computing unit 44, a key storage unit 45, an initial vector storage unit 46, buffers 47 and 48, The header determination unit 49 is provided. The control part 41 is comprised from CPU and controls each part. The communication I / F 42 transmits / receives data to / from the network camera 100 under the control of the control unit 41.

バッファ47には、通信I/F42により受信された暗号化ストリームが格納される。制御部41は、バッファ47に格納される暗号化ストリームから初期ベクトルを読み出し、読み出された初期ベクトルを初期ベクトル格納部46に格納する。また、乱数発生部43は、鍵格納部45に格納される暗号鍵と上記初期ベクトルとを用いて乱数を発生する。そして、制御部41は、演算部44において、上記発生された乱数により暗号化ストリームのヘッダ部を復号し、この復号されたヘッダ部はバッファ48に記憶される。ヘッダ判定部49は、制御部41の制御のもと、上記バッファ48に記憶される復号されたヘッダ部が、元のヘッダ部に復元されたか否かの判定を行う。   The buffer 47 stores the encrypted stream received by the communication I / F 42. The control unit 41 reads an initial vector from the encrypted stream stored in the buffer 47 and stores the read initial vector in the initial vector storage unit 46. The random number generation unit 43 generates a random number using the encryption key stored in the key storage unit 45 and the initial vector. Then, the control unit 41 decrypts the header part of the encrypted stream with the generated random number in the arithmetic unit 44, and the decrypted header part is stored in the buffer 48. Under the control of the control unit 41, the header determination unit 49 determines whether the decoded header unit stored in the buffer 48 has been restored to the original header unit.

次に、このように構成された映像配信システムの動作について説明する。図3は、データ送信装置3における暗号化処理の手順とその内容を示すフローチャートである。図4は、データ受信装置4における復号化処理の手順とその内容を示すフローチャートである。また、図5は、この映像配信システムで扱うストリームのデータ構造の一例を示す図である。図5に示すように、ストリームは、ヘッダ部と、GOV(Group Of VOP)と、ユーザデータ領域と、複数のVOP(Video Object Plane)とからなるデータ単位の集まりで構成される。ユーザデータ領域は、GOVに後続する、ユーザにより指定された任意のデータを格納する領域であり、VOPは、ストリームにおけるデータ部分を格納する領域である。データ送信装置3は、このように構成されたストリームのヘッダ部をそれぞれ異なる暗号鍵を用いて暗号化するものである。   Next, the operation of the video distribution system configured as described above will be described. FIG. 3 is a flowchart showing the procedure of the encryption process in the data transmission device 3 and its contents. FIG. 4 is a flowchart showing the procedure of the decryption process in the data receiving apparatus 4 and its contents. FIG. 5 is a diagram showing an example of the data structure of a stream handled by this video distribution system. As shown in FIG. 5, the stream is composed of a collection of data units including a header part, a GOV (Group Of VOP), a user data area, and a plurality of VOPs (Video Object Planes). The user data area is an area for storing arbitrary data designated by the user following the GOV, and the VOP is an area for storing a data portion in the stream. The data transmission device 3 encrypts the header portion of the stream configured in this manner using different encryption keys.

すなわち、データ送信装置3の制御部31は、ステップS3aにおいて、エンコーダ2から入力されたストリームをバッファ37に読み込む。そして、ステップS3bにおいて、制御部31は、ヘッダ検出部38により、バッファ37に読み込まれたストリームにおいてヘッダ部の検出を行う。ステップS3bにおいてヘッダ部が検出された場合は、ステップS3cに移行して、制御部31は、乱数発生器33に対して、使用する暗号鍵を鍵格納部35から選択させる。   That is, the control unit 31 of the data transmission device 3 reads the stream input from the encoder 2 into the buffer 37 in step S3a. In step S <b> 3 b, the control unit 31 detects the header part in the stream read into the buffer 37 by the header detection unit 38. When the header part is detected in step S3b, the process proceeds to step S3c, and the control unit 31 causes the random number generator 33 to select the encryption key to be used from the key storage unit 35.

次に、制御部31は、ステップS3dにおいて、乱数発生器33により、初期ベクトル生成部36において生成される初期ベクトルと、上記選択された暗号鍵とを用いて乱数を発生させる。ステップS3eにおいて、制御部31は、演算器34に対して、乱数発生器33により発生された乱数を用いて排他的論理和を算出させて、上記検出されたヘッダ部を暗号化する。そして、ステップS3fにより、制御部31は、上記暗号化されたヘッダ部を通信I/F32により端末装置TAに送信する。   Next, in step S3d, the control unit 31 causes the random number generator 33 to generate a random number using the initial vector generated by the initial vector generation unit 36 and the selected encryption key. In step S3e, the control unit 31 causes the computing unit 34 to calculate an exclusive OR using the random number generated by the random number generator 33, and encrypts the detected header part. And by step S3f, the control part 31 transmits the said encrypted header part to the terminal device TA by communication I / F32.

一方、上記ステップS3bにおいて、ヘッダ検出部38により非ヘッダ部が検出された場合は、制御部31は、乱数発生器33を停止し、演算器34による暗号化処理は行わない。その後、ステップS3fに移行し、制御部31は、通信I/F32により、暗号化処理が行われていない非ヘッダ部を端末装置TAに向けて送信する。   On the other hand, when the non-header part is detected by the header detection unit 38 in step S3b, the control unit 31 stops the random number generator 33 and does not perform the encryption process by the computing unit 34. Thereafter, the process proceeds to step S3f, and the control unit 31 transmits a non-header part that has not been subjected to encryption processing to the terminal device TA by the communication I / F 32.

かくして、データ送信装置3の制御部31は、ヘッダ部のみが暗号化された暗号化ストリームを通信I/F32により端末装置TAに向け送信する。なお、上記ステップS3cにおいて、鍵格納部35には、複数の暗号鍵が記憶されており、例えば、図5に示すように、乱数発生器33は、ヘッダ部ごとに別の暗号鍵を選択し、この選択された暗号鍵を用いて暗号化を行う。   Thus, the control unit 31 of the data transmission device 3 transmits the encrypted stream in which only the header portion is encrypted to the terminal device TA by the communication I / F 32. In step S3c, a plurality of encryption keys are stored in the key storage unit 35. For example, as shown in FIG. 5, the random number generator 33 selects a different encryption key for each header portion. Then, encryption is performed using the selected encryption key.

次に、図4を参照して、データ受信装置4における暗号化ストリームの復号化処理について説明する。データ受信装置4の制御部41は、データ送信装置100から送信される暗号化ストリームを通信I/F42により通信ネットワークNWを介して受信している。制御部41は、ステップS4aにおいて、通信I/F42により受信された暗号化ストリームをバッファ47に読み込む。   Next, decryption processing of the encrypted stream in the data reception device 4 will be described with reference to FIG. The control unit 41 of the data receiving device 4 receives the encrypted stream transmitted from the data transmitting device 100 by the communication I / F 42 via the communication network NW. In step S4a, the control unit 41 reads the encrypted stream received by the communication I / F 42 into the buffer 47.

先ず、ステップS4bにおいて、制御部41は、乱数発生器33に対して暗号鍵格納部45から暗号鍵(例えば、暗号鍵1)を選択させる。また、バッファ47から初期ベクトルを検出して初期ベクトル格納部46に格納する。次に、ステップS4cにおいて、制御部41は、乱数発生器33により上記初期ベクトル格納部46に格納された初期ベクトルと上記選択された暗号鍵とを用いて乱数を発生させる。そして、ステップS4dにおいて、制御部41は、演算器44により、この発生された乱数を用いてバッファ47に格納されたヘッダ部を復号化してバッファ48に格納する。   First, in step S4b, the control unit 41 causes the random number generator 33 to select an encryption key (for example, encryption key 1) from the encryption key storage unit 45. Further, the initial vector is detected from the buffer 47 and stored in the initial vector storage unit 46. Next, in step S4c, the control unit 41 generates a random number using the initial vector stored in the initial vector storage unit 46 by the random number generator 33 and the selected encryption key. In step S <b> 4 d, the control unit 41 uses the arithmetic unit 44 to decode the header portion stored in the buffer 47 using the generated random number and store the decrypted header portion in the buffer 48.

そして、ステップS4eにおいて、制御部41は、ヘッダ判定部49によりバッファ48に格納されたヘッダ部が元のヘッダ部に復元できたか否かを判定する。この判定は、例えば、ヘッダ部のスタートコードを利用して行われる。このスタートコードは、例えば、(00000101)hのような固定値であるため、復元できたか否かを判定することができる。上記ステップS4eの判定によりヘッダ部が復元できた場合は、ステップS4gに移行して、制御部41は、バッファ48から復元されたヘッダ部をデコーダ5に出力する。   In step S4e, the control unit 41 determines whether the header determination unit 49 has restored the header stored in the buffer 48 to the original header. This determination is performed, for example, using a start code in the header part. Since this start code is a fixed value such as (00000101) h, for example, it can be determined whether or not the restoration is possible. When the header part can be restored by the determination in step S4e, the control unit 41 outputs the header part restored from the buffer 48 to the decoder 5 in step S4g.

一方、ステップS4eの判定によりヘッダ部が復元できない場合は、ステップS4fに移行して、制御部41は、鍵格納部45に格納される暗号鍵をすべて選択したか否かを判定する。この例では、端末装置TAは、暗号鍵1〜Nを鍵格納部45に格納するため、ステップS4bに移行して、乱数発生器43に別の暗号鍵(例えば、暗号鍵2)を選択させて、上記復号化処理を行う。ステップS4fの判定において、すべての暗号鍵を用いても復元できなかった場合は、ヘッダ部をデコーダ5に出力せずに処理を終了する。   On the other hand, when the header part cannot be restored by the determination in step S4e, the process proceeds to step S4f, and the control unit 41 determines whether or not all the encryption keys stored in the key storage unit 45 have been selected. In this example, since the terminal device TA stores the encryption keys 1 to N in the key storage unit 45, the terminal device TA shifts to step S4b and causes the random number generator 43 to select another encryption key (for example, encryption key 2). Thus, the decoding process is performed. In the determination in step S4f, if restoration cannot be performed even if all the encryption keys are used, the process is terminated without outputting the header part to the decoder 5.

また、ステップS4gにおいて、復元されたヘッダ部がデコーダ5から出力された場合は、制御部41は、乱数発生器43を停止し、上記ヘッダ部に関連する非ヘッダ部(データ部)を復号化処理を行わずに、デコーダ5に出力する。かくして、デコーダ5は、上記入力された復元されたストリームを映像信号に変換し、変換された映像信号を表示装置6に出力する。表示装置6には、この映像信号をもとに映像が表示される。   In step S4g, when the restored header part is output from the decoder 5, the control part 41 stops the random number generator 43 and decrypts the non-header part (data part) related to the header part. The data is output to the decoder 5 without performing processing. Thus, the decoder 5 converts the input restored stream into a video signal and outputs the converted video signal to the display device 6. A video is displayed on the display device 6 based on this video signal.

以上述べたように、データ送信装置3の制御部31は、ヘッダ検出部38により、バッファ37に取り込まれたストリームからヘッダ部を検出する。そして、ヘッダ部が検出されると、制御部31は、乱数発生器33により鍵格納部35から暗号鍵を選択させ、初期ベクトル生成部36により生成された初期ベクトルと上記選択された暗号鍵とを用いて乱数を発生させる。そして、演算器34は、上記発生された乱数により、上記検出されたヘッダ部を暗号化して、この暗号化されたヘッダ部を通信I/F32により送信する。一方、ヘッダ検出部38において、非ヘッダ部が検出された場合は、上記暗号化処理を行わずに通信I/F32により検出された非ヘッダ部を送信するものである。   As described above, the control unit 31 of the data transmission device 3 detects the header part from the stream taken into the buffer 37 by the header detection unit 38. When the header portion is detected, the control unit 31 causes the random number generator 33 to select an encryption key from the key storage unit 35, and the initial vector generated by the initial vector generation unit 36 and the selected encryption key Generate random numbers using. Then, the computing unit 34 encrypts the detected header part with the generated random number, and transmits the encrypted header part via the communication I / F 32. On the other hand, when the header detection unit 38 detects a non-header part, the non-header part detected by the communication I / F 32 is transmitted without performing the encryption process.

したがって、この上記実施形態により、従来のように非ヘッダ部(つまり、データ部)を暗号化する場合に比べ、暗号化処理を行うデータ量が減少するため、暗号化処理に要する時間を短縮することができる。例えば、ネットワークカメラ100のエンコーダにより、図7に示すようなストリームが入力され、このストリームの部分視聴を行うものとする。また、同図において、ヘッダ部をVOH、データ部分をVOPとそれぞれ表す。図8には、上記図7に示すストリームを上記実施形態のデータ送信装置3により暗号化した例を示す。図9は、従来技術による部分視聴を行う場合の非ヘッダ部が暗号化された映像ストリームのデータ構成を示す図である。   Therefore, according to this embodiment, since the amount of data to be encrypted is reduced as compared with the conventional case where the non-header part (that is, the data part) is encrypted, the time required for the encryption process is shortened. be able to. For example, it is assumed that a stream as shown in FIG. 7 is input by the encoder of the network camera 100 and that this stream is partially viewed. In the figure, the header portion is represented as VOH and the data portion is represented as VOP. FIG. 8 shows an example in which the stream shown in FIG. 7 is encrypted by the data transmission device 3 of the above embodiment. FIG. 9 is a diagram illustrating a data configuration of a video stream in which a non-header part is encrypted when partial viewing is performed according to the conventional technology.

図8では、VOHヘッダがそれぞれ異なる暗号鍵で暗号化されているために、クライアントAは、全ての暗号鍵を有する端末装置TAにおいて、全てのVOPデータを視聴することができる。一方、クライアントBは、暗号鍵1,2を有する端末装置TBにおいて、それぞれの暗号鍵で暗号化されたVOHヘッダに属するVOPデータを視聴することができる。クライアントCは、暗号鍵1のみを有する端末装置TCにおいて、暗号鍵1で暗号化されたVOHヘッダに属するVOPデータのみを視聴することができる。このように、データ送信装置3が、各端末装置が有する属性情報(暗号鍵情報を含む)を取得し、この属性情報に応じてデータストリームを暗号化するようにする。これにより、同一の暗号化データストリームを送信することによって、複数のクライアントの有する視聴権限に応じた部分視聴を行うことができる。   In FIG. 8, since the VOH header is encrypted with different encryption keys, the client A can view all the VOP data in the terminal device TA having all the encryption keys. On the other hand, the client B can view the VOP data belonging to the VOH header encrypted with the respective encryption keys at the terminal device TB having the encryption keys 1 and 2. The client C can view only the VOP data belonging to the VOH header encrypted with the encryption key 1 in the terminal device TC having only the encryption key 1. In this way, the data transmission device 3 acquires attribute information (including encryption key information) possessed by each terminal device, and encrypts the data stream according to the attribute information. As a result, by transmitting the same encrypted data stream, it is possible to perform partial viewing according to the viewing authority possessed by a plurality of clients.

これに対し、従来技術では、図9のように、映像の部分視聴を行う際、それぞれの暗号鍵でVOPデータをまとめて暗号化していた。図8及び図9から、VOPのデータ量に比べると、VOHのデータ量は小さいため、この発明の上記実施形態により、暗号化処理に要する時間を短縮できることがわかる。   On the other hand, in the prior art, as shown in FIG. 9, when partial viewing of video is performed, VOP data is collectively encrypted with each encryption key. 8 and 9, it can be seen that the amount of VOH data is smaller than the amount of VOP data, so that the time required for the encryption process can be shortened according to the embodiment of the present invention.

なお、この発明は、上記実施形態に限定されるものではない。例えば、上記実施形態では、初期ベクトル生成部36により生成された初期ベクトルと鍵格納部35から選択された暗号鍵とを用いて暗号化するように構成したが、初期ベクトル生成部36を削除して構成することもできる。この場合は、鍵格納部35から選択された暗号鍵のみを使用してヘッダ部を暗号化するようにする。   The present invention is not limited to the above embodiment. For example, in the above embodiment, the encryption is performed using the initial vector generated by the initial vector generation unit 36 and the encryption key selected from the key storage unit 35, but the initial vector generation unit 36 is deleted. It can also be configured. In this case, the header portion is encrypted using only the encryption key selected from the key storage portion 35.

また、上記実施形態では、ヘッダ部をすべて暗号化するように構成したが、これに限らず、暗号鍵を有する端末装置のみがデータ部を復元できるように構成すればよく、例えば、ヘッダ部の一部分を暗号化するように構成してもよい。また、他にも、次のような構成も可能である。データ送信装置3において、端末装置が共有する鍵と初期ベクトルとを用いて、データ部(VOP)を暗号化して暗号化ストリームを生成する。また、更に、上記初期ベクトルを暗号鍵1〜Nにより暗号化して、上記暗号化ストリームのヘッダ部に暗号化された初期ベクトルを格納して端末装置に送るようにする。   Moreover, in the said embodiment, although comprised so that all the header parts were encrypted, it is not restricted to this, What is necessary is just to comprise so that only the terminal device which has an encryption key can decompress | restore a data part. You may comprise so that a part may be encrypted. In addition, the following configuration is also possible. In the data transmitting device 3, the data portion (VOP) is encrypted by using the key and the initial vector shared by the terminal device, and an encrypted stream is generated. Further, the initial vector is encrypted with the encryption keys 1 to N, the encrypted initial vector is stored in the header portion of the encrypted stream, and is sent to the terminal device.

このように、初期ベクトルを暗号化した例を図6に示す。初期ベクトルは、暗号化/復号化のために、例えば、ユーザデータ領域に挿入される、各ヘッダ毎に異なる値である。データ部(VOP)をある鍵(暗号化ストリームを配信される人が保持する共通の鍵)を用いて暗号化する際に初期ベクトルが用いられる場合、初期ベクトルを前述した共通鍵ではなく暗号鍵1〜Nを用いて暗号化することで、該当する暗号鍵を有する端末装置のみが初期ベクトルを復号できると共にデータ部を復元できるようになる。このように構成しても、映像の部分視聴を実現することができる。また、単にデータ部(VOP)を暗号化して配信する場合に比べると、データ送信装置3において初期ベクトルの復号とデータ部(VOP)の復元と二重に復元処理を行う必要があるため、配信されるデータストリームの秘匿性を向上させることができる。   An example of encrypting the initial vector in this way is shown in FIG. The initial vector is a value that is different for each header, for example, inserted into the user data area for encryption / decryption. When the initial vector is used when encrypting the data part (VOP) using a certain key (a common key held by the person to whom the encrypted stream is distributed), the initial vector is not the common key described above but the encryption key. By encrypting using 1 to N, only the terminal device having the corresponding encryption key can decrypt the initial vector and restore the data part. Even with this configuration, partial viewing of the video can be realized. Compared to the case where the data part (VOP) is simply encrypted and distributed, the data transmission apparatus 3 needs to perform the restoration process twice, ie, the initial vector decryption and the data part (VOP) restoration. The confidentiality of the data stream to be transmitted can be improved.

また、上記実施形態では、データ受信装置4の復号化処理において、端末装置が有する暗号鍵により順に試行するように構成したが、データ送信装置3において暗号鍵情報を付加した暗号化ストリームをデータ受信装置4に送信するようにしてもよい。例えば、各暗号鍵にインデックスを付与し、データ送信装置3は、このインデックスを暗号化ストリームに付加して端末装置に送信する。そして、端末装置では受信した暗号化ストリームから抽出したインデックスに基づいて暗号鍵を選択して復号処理を行う。   In the above embodiment, the decryption process of the data reception device 4 is configured to try in order using the encryption key of the terminal device. However, the data transmission device 3 receives the encrypted stream to which the encryption key information is added. You may make it transmit to the apparatus 4. For example, an index is assigned to each encryption key, and the data transmission device 3 adds this index to the encrypted stream and transmits it to the terminal device. Then, the terminal device selects the encryption key based on the index extracted from the received encrypted stream and performs the decryption process.

また、この発明で用いられるストリームは、映像ストリームに限らず、例えば、音声ストリーム、画像ストリーム、又はこれらが多重化されたストリームでも構わない。また、この発明のデータ送信装置3は、上記実施形態のようにネットワークカメラ100の内部に配置されてもよいし、その他にも、例えば、データベース装置の内部に配置され、データベースに記憶されるストリームに対して暗号化を行うことも可能である。その他、データ送信装置3の構成や、各部の処理手順とその処理内容についても、この発明の要旨を逸脱しない範囲で種々変形して実施できる。   The stream used in the present invention is not limited to a video stream, and may be, for example, an audio stream, an image stream, or a stream in which these are multiplexed. In addition, the data transmission device 3 of the present invention may be arranged inside the network camera 100 as in the above embodiment, or in addition, for example, a stream arranged inside the database device and stored in the database Can also be encrypted. In addition, the configuration of the data transmission device 3, the processing procedure of each unit, and the processing content thereof can be variously modified and implemented without departing from the gist of the present invention.

要するにこの発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。   In short, the present invention is not limited to the above-described embodiment as it is, and can be embodied by modifying the constituent elements without departing from the scope of the invention in the implementation stage. Further, various inventions can be formed by appropriately combining a plurality of constituent elements disclosed in the embodiment. For example, some components may be deleted from all the components shown in the embodiment. Furthermore, you may combine suitably the component covering different embodiment.

この発明の一実施形態に係わるデータ送信装置を備えたネットワークカメラを利用した映像配信システムの概略図。1 is a schematic diagram of a video distribution system using a network camera equipped with a data transmission apparatus according to an embodiment of the present invention. 図1に示す映像配信システムの機能構成を示すブロック図。The block diagram which shows the function structure of the video delivery system shown in FIG. 図2に示すデータ送信装置の暗号化処理の手順とその内容を示すフローチャート。The flowchart which shows the procedure and the content of the encryption process of the data transmitter shown in FIG. 図2に示すデータ受信装置の復号化処理の手順とその内容を示すフローチャート。The flowchart which shows the procedure of the decoding process of the data receiver shown in FIG. 2, and its content. ヘッダ部を暗号化する様子を示すデータ構成図。The data block diagram which shows a mode that a header part is encrypted. 初期ベクトルを暗号化する様子を示すデータ構成図。The data block diagram which shows a mode that an initial vector is encrypted. 一般的な映像ストリームのデータ構成を示す図。The figure which shows the data structure of a general video stream. ヘッダ部が暗号化された映像ストリームのデータ構成を示す図。The figure which shows the data structure of the video stream by which the header part was encrypted. 非ヘッダ部が暗号化された映像ストリームのデータ構成を示す図。The figure which shows the data structure of the video stream by which the non-header part was encrypted.

符号の説明Explanation of symbols

100…ネットワークカメラ、TA,TB,TC…端末装置、NW…通信ネットワーク、1…撮像ユニット、2…エンコーダ、3…データ送信装置、4…データ受信装置、5…デコーダ、6…表示装置、31…制御部、32…通信I/F、33…乱数発生器、34…演算器、35…鍵格納部、36…初期ベクトル生成部、37…バッファ、38…ヘッダ検出部、41…制御部、42…通信I/F、43…乱数発生器、44…演算器、45…鍵格納部、46…初期ベクトル格納部、47,48…バッファ、49…ヘッダ判定部。   DESCRIPTION OF SYMBOLS 100 ... Network camera, TA, TB, TC ... Terminal device, NW ... Communication network, 1 ... Imaging unit, 2 ... Encoder, 3 ... Data transmission device, 4 ... Data reception device, 5 ... Decoder, 6 ... Display device, 31 ... Control unit, 32 ... Communication I / F, 33 ... Random number generator, 34 ... Calculator, 35 ... Key storage unit, 36 ... Initial vector generation unit, 37 ... Buffer, 38 ... Header detection unit, 41 ... Control unit, 42 ... Communication I / F, 43 ... Random number generator, 44 ... Calculator, 45 ... Key storage unit, 46 ... Initial vector storage unit, 47, 48 ... Buffer, 49 ... Header determination unit.

Claims (2)

ヘッダ部を有するデータストリームを取得する手段と、
複数の暗号鍵を記憶する手段と、
前記データストリームから前記ヘッダ部を検出する手段と、
前記複数の暗号鍵の中から暗号鍵を選択する手段と、
前記選択された暗号鍵により前記検出されたヘッダ部を暗号化する手段と、
前記データストリームに含まれる前記ヘッダ部を前記暗号化されたヘッダ部に置き換えて暗号化データストリームを生成する手段と、
前記生成された暗号化データストリームを送信する手段と
を具備することを特徴とするデータ送信装置。
Means for obtaining a data stream having a header portion;
Means for storing a plurality of encryption keys;
Means for detecting the header portion from the data stream;
Means for selecting an encryption key from the plurality of encryption keys;
Means for encrypting the detected header portion with the selected encryption key;
Means for generating an encrypted data stream by replacing the header part included in the data stream with the encrypted header part;
Means for transmitting the generated encrypted data stream.
初期ベクトルを生成する手段と、
前記初期ベクトルを用いて鍵ストリームを生成する手段と、
前記鍵ストリームによりデータストリームに含まれる非ヘッダ部を暗号化する手段と、
複数の暗号鍵を記憶する手段と、
前記複数の暗号鍵の中から暗号鍵を選択する手段と、
前記選択された暗号鍵により前記初期ベクトルを暗号化する手段と、
前記暗号化された初期ベクトルを前記非ヘッダ部が暗号化されたデータストリームに付加する手段と、
前記暗号化された初期ベクトルが付加されたデータストリームを送信する手段と
を具備することを特徴とするデータ送信装置。
Means for generating an initial vector;
Means for generating a key stream using the initial vector;
Means for encrypting a non-header part included in a data stream by the key stream;
Means for storing a plurality of encryption keys;
Means for selecting an encryption key from the plurality of encryption keys;
Means for encrypting the initial vector with the selected encryption key;
Means for appending the encrypted initial vector to the data stream with the non-header portion encrypted;
Means for transmitting a data stream to which the encrypted initial vector is added.
JP2005091960A 2005-03-28 2005-03-28 Data transmission apparatus Pending JP2006279244A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005091960A JP2006279244A (en) 2005-03-28 2005-03-28 Data transmission apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005091960A JP2006279244A (en) 2005-03-28 2005-03-28 Data transmission apparatus

Publications (1)

Publication Number Publication Date
JP2006279244A true JP2006279244A (en) 2006-10-12

Family

ID=37213568

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005091960A Pending JP2006279244A (en) 2005-03-28 2005-03-28 Data transmission apparatus

Country Status (1)

Country Link
JP (1) JP2006279244A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008286964A (en) * 2007-05-17 2008-11-27 Kddi Corp Encryption apparatus, decryption apparatus, encryption method, decryption method and program for stream encryption
KR101145782B1 (en) * 2010-10-11 2012-05-16 경희대학교 산학협력단 Method for lightweight video contents encryption and decryption to provide mobile contents service

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008286964A (en) * 2007-05-17 2008-11-27 Kddi Corp Encryption apparatus, decryption apparatus, encryption method, decryption method and program for stream encryption
KR101145782B1 (en) * 2010-10-11 2012-05-16 경희대학교 산학협력단 Method for lightweight video contents encryption and decryption to provide mobile contents service

Similar Documents

Publication Publication Date Title
US5907619A (en) Secure compressed imaging
CN102804766B (en) Partial encryption using variable block-size parameters
KR100812909B1 (en) Media data decoding device
KR100805604B1 (en) Methods for scaling encoded data without requiring knowledge of the encoding scheme
CN101534433B (en) Streaming media encryption method
JP4188958B2 (en) ENCRYPTION METHOD, DATA DISTRIBUTION SYSTEM, ENCRYPTION DEVICE, AND DATA STORAGE / DISTRIBUTION DEVICE
KR19990006449A (en) Methods, devices and computer program products for protecting copyright data in computer systems
JP6608436B2 (en) Encoder, decoder and method using partial data encryption
KR101139580B1 (en) Transmitting apparatus, receiving apparatus, and data transmitting system
JP5437073B2 (en) Method and apparatus for managing keys and method and apparatus for acquiring keys
US7212636B2 (en) Encryption of a compressed video stream
US20100017498A1 (en) Process and device for securing the transmission, recording and viewing of digital audiovisual packetized streams
US8948384B2 (en) Image encrypting/decrypting system and method
US11405684B1 (en) Distributed media player for digital cinema
US7567670B2 (en) Verification information for digital video signal
JP6090972B2 (en) ENCRYPTION DEVICE, DECRYPTION DEVICE, ENCRYPTION PROGRAM, AND DECRYPTION PROGRAM
JP2007174491A (en) Video image information encryption device, decryption key information preparation device, video image information decryption device, video reproducing device, and network system
US8989432B2 (en) System and method of adding a watermark to a JPEG image file
CN101800878B (en) System and method for encrypting and decrypting MPEG (Moving Picture Experts Group) video based on position files
JP2006279244A (en) Data transmission apparatus
Aly et al. A light-weight encrypting for real time video transmission
JP6155165B2 (en) ENCRYPTION DEVICE, DECRYPTION DEVICE, ENCRYPTION PROGRAM, AND DECRYPTION PROGRAM
JP2013150147A (en) Encryption device, decryption device, encryption program, and decryption program
JP2005160018A (en) Image protection system and method
JP2006279143A (en) Mpeg stream processing method and mpeg stream processor