JP4806204B2 - 暗号化データ通信システム - Google Patents

暗号化データ通信システム Download PDF

Info

Publication number
JP4806204B2
JP4806204B2 JP2005097250A JP2005097250A JP4806204B2 JP 4806204 B2 JP4806204 B2 JP 4806204B2 JP 2005097250 A JP2005097250 A JP 2005097250A JP 2005097250 A JP2005097250 A JP 2005097250A JP 4806204 B2 JP4806204 B2 JP 4806204B2
Authority
JP
Japan
Prior art keywords
vop
encrypted
code
start code
data
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.)
Expired - Fee Related
Application number
JP2005097250A
Other languages
English (en)
Other versions
JP2006279665A (ja
Inventor
宗光 桑原
澄江 中林
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 JP2005097250A priority Critical patent/JP4806204B2/ja
Priority to US11/362,081 priority patent/US7668314B2/en
Publication of JP2006279665A publication Critical patent/JP2006279665A/ja
Application granted granted Critical
Publication of JP4806204B2 publication Critical patent/JP4806204B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/167Systems rendering the television signal unintelligible and subsequently intelligible
    • H04N7/1675Providing digital key or authorisation information for generation or regeneration of the scrambling sequence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/12Transmitting and receiving encryption devices synchronised or initially set up in a particular manner
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2389Multiplex stream processing, e.g. multiplex stream encrypting
    • H04N21/23895Multiplex stream processing, e.g. multiplex stream encrypting involving multiplex stream encryption
    • H04N21/23897Multiplex stream processing, e.g. multiplex stream encrypting involving multiplex stream encryption by partially encrypting, e.g. encrypting only the ending portion of a movie

Landscapes

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

Description

本発明は、暗号化データを通信する暗号化データ通信システムに関し、特に、暗号化データに含まれる擬似コードを本来の位置識別コード(例えば、スタートコードなど)であると誤検出することによる影響を抑制する技術に関する。
例えば、近年、映像をデジタル的に符号化(圧縮)して映像ストリームを生成し、これをサーバ装置から端末装置へ配信することが盛んに行われている。
また、映像ストリームを配信する際に、限られた端末装置にのみ限定的に映像を配信する方法として、映像ストリームの非ヘッダ部分を暗号化する方法が考えられる。この方法では、暗号鍵を有する端末装置では正しい映像の再生が可能であるが、暗号鍵を有さない端末装置では画質の劣化した映像しか得られない。
なお、上記従来技術は、発明者が既に知られていることと認識して記述したものであるが、適切な文献が見出せなかったので、従来技術文献情報の記載をしていない。
上記のような技術においては、送信側で非ヘッダ部分を暗号化した映像ストリーム(以下、暗号化ストリームとも言う)を、受信側のパーソナルコンピュータで再生するためには、暗号化ストリームの中からスタートコードを検出して、非ヘッダ部分を復号することが必要である。
しかしながら、スタートコードは、映像ストリームにおいてはユニークな値であるが、暗号化ストリームにおいてはユニークな値であるとは限らないため、暗号化ストリームからスタートコードを検出する時に、暗号化ストリームに含まれるスタートコードと同じ値のデータ(以下、擬似コードとも言う)を、本来のスタートコードであると誤検出する場合があった。この場合、送信側の乱数列と受信側の乱数列との同期が外れるため、受信側では、暗号化された非ヘッダ部分を正しく復号することができず、再生画像が正しく表示等されないといった問題があった。
ここで、MPEG−4のストリームの一例を示す。
このストリームは、[video_object_start_code]・・・[vop_start_code][数バイトのヘッダ][VOPデータ(Macroblock)][vop_start_code][数バイトのヘッダ][VOPデータ(Macroblock)]・・・[vop_start_code][数バイトのヘッダ][VOPデータ(Macroblock)][video_object_start_code]・・・といった構成を有する。
[video_object_start_code]や[vop_start_code]はスタートコードである。
[video_object_start_code]は、VO(Visual Object)Headerの構成要素であり、(00 00 01 01)hから成る4バイトのユニークコードである。VOHの構成要素は[video_object_start_code]のみであり、以下では、説明の便宜上から、[video_object_start_code]のことをVOHとも言う。
一般に、VOP(Video Object Plane)ヘッダは、[vop_start_code]と[数バイトのヘッダ]から構成される。[vop_start_code]は、VOPヘッダの先頭に位置する。
[vop_start_code]は、(00 00 01 B6)hから成る4バイトのユニークコードであり、以下では、説明の便宜上から、[vop_start_code]のことをVOPとも言う。
暗号化に際しては、[VOPデータ(Macroblock)]が暗号化される。
また、暗号化に際しては、[数バイトのヘッダ]については、暗号化されてもよく、或いは、暗号化されなくてもよく、或いは、その一部のみが暗号化されてもよい。
例えば、MPEG−4の場合、スタートコードは4バイトであり、暗号化ストリーム中の擬似コードを誤検出する確率は、例えば符号化レートが2Mbpsである時、約5時間に1回である。具体的には、符号化レートが2Mbpsである時、24×8(bit)/{2M(bit/sec)/8}=(232/250000)(sec)≒17180(sec)≒286(min)≒4.8(h)となり、4バイトの擬似コードが、約5時間に1回、暗号化ストリーム中に出現する。
ここで、図18(a)〜(e)及び図19(a)〜(c)を参照して、具体的に説明する。
図18(a)〜(e)には、映像ストリームの暗号化及び復号の態様例を示してある。
図18(a)には、送信側における暗号化前の映像ストリームの一例を示してある。この映像ストリームは、VOH(本例において、video_object_start_codeを示す)に続いて、VOP(本例において、vop_start_codeを示す)とデータの組が1組以上並んで構成されている。
図18(b)には、送信側において非ヘッダ部分を暗号化して生成される暗号化ストリームの一例を示してある。この暗号化ストリームでは、ヘッダではないデータの部分が暗号化されて暗号化データとなっている。また、本例では、VOPに続く[数バイトのヘッダ]も暗号化されている。
図18(c)には、受信側において暗号化ストリーム中からVOPを検出する様子の一例を示してある。
図18(d)には、受信側において暗号化ストリーム中から前記VOPに対して次の(隣りの)VOPを検出する様子の一例を示してある。
図18(e)には、受信側において検出した隣りの2個のVOPの間にある暗号化データを復号した様子の一例を示してある。
図19(a)〜(c)には、受信側において擬似コードを誤検出した場合の様子の一例を示してある。
図19(a)には、受信側において暗号化ストリーム中から擬似コードを誤検出する様子の一例を示してある。本例では、暗号化データの中にVOPと同一の値を有するビット列が含まれており、これがスタートコードであると誤って判定して検出している。
図19(b)には、受信側において暗号化ストリーム中から前記擬似コードに対して次の(隣りの)VOPを検出する様子の一例を示してある。
図19(c)には、受信側において検出した隣りの2個のVOP(本例では、1個は擬似コード)の間にある暗号化データを復号した様子の一例を示してある。
このように、受信側で擬似コードを誤検出してしまうと、暗号化データを正常に復号することができなくなってしまい、精度のよい画像を再生することができなくなってしまう。
本発明は、このような従来の事情に鑑み為されたもので、暗号化データを通信するに際して、暗号化データに含まれる擬似コードを本来の位置識別コード(例えば、スタートコードなど)であると誤検出することによる影響を抑制することができる暗号化データ通信システムを提供することを目的とする。
なお、誤検出することによる影響を抑制する態様としては、例えば、誤検出する確率を低下させる態様や、誤検出したままとすることを防いで無くす態様がある。
上記目的を達成するため、本発明に係る暗号化データ通信システムでは、データストリームを暗号化した暗号化ストリームを送信側装置から受信側装置へ通信するに際して、次のような処理を行う。
すなわち、前記送信側装置では、挿入手段が前記暗号化ストリームに含まれる位置識別コードの前又は後に所定の同期マーカを挿入し、送信手段が前記同期マーカが挿入された暗号化ストリームを送信する。
前記受信側装置では、受信手段が前記暗号化ストリームを受信し、検出手段が前記受信された暗号化ストリームに含まれる前記同期マーカと前記位置識別コードの並び又は前記位置識別コードと前記同期マーカの並びを検出し、復号手段が前記検出の結果に基づいて前記受信された暗号化ストリームを復号する。
従って、暗号化ストリームを復号するに際して、同期マーカと位置識別コードの並び又は位置識別コードと同期マーカの並びを検出して同期が取られるため、例えば位置識別コードのみを検出して同期が取られる場合と比べて、検出対象の量(例えば、ビット数)を多くすることができ、これにより、暗号化データを通信するに際して、暗号化データに含まれる擬似コード(本例では、前記の並びと擬似的に同一なもの)を本来の位置識別コード(本例では、前記の並び)であると誤検出することによる影響を抑制することができる。具体的には、誤検出する確率を低下させることができる。
ここで、送信側装置や受信側装置としては、それぞれ、例えば、送信機能と受信機能の両方を有する送受信装置(通信装置)が用いられてもよい。
また、データストリームとしては、種々なものが用いられてもよく、例えば、MPEG−4方式により圧縮された映像(画像)のデータストリームなどが用いられる。
また、データストリームには、例えば、位置識別コードやデータが含まれる。なお、位置識別コードがデータストリームに追加的に挿入されるような態様が用いられてもよい。
また、暗号化の方式としては、種々なものが用いられてもよい。
また、位置識別コードとしては、種々なものが用いられてもよく、例えば、video_object_start_codeやvop_start_codeのようなスタートコードや、他のコードを用いることができる。
また、位置識別コードの前に同期マーカが挿入される場合には同期マーカと位置識別コードの並びを検出することとなり、位置識別コードの後に同期マーカが挿入される場合には位置識別コードと同期マーカの並びを検出することとなる。
また、同期マーカとしては、種々なものが用いられてもよい。復号後に同期マーカを削除することが必要な場合には、受信側装置には、復号された同期マーカを削除する削除手段が備えられる。
本発明に係る暗号化データ通信システムでは、一構成例として、次のような構成とした。
すなわち、前記データストリームは、圧縮手段により圧縮されたものであり、また、前記復号により得られるデータストリームは、伸長手段により伸長される。そして、前記同期マーカとして、スタッフィングコードを用いた。
従って、同期マーカとしてスタッフィングコードが用いられ、伸長に際してはスタッフィングコードは無視されるため、復号の結果から同期マーカ(本例では、スタッフィングコード)を削除せずに残しておくことができ、復号処理を高速化することができる。
ここで、圧縮手段や伸長手段としては、種々なものが用いられてもよく、例えば、MPEG−4方式に対応したものなどが用いられる。
また、圧縮手段は、例えば、送信側装置、或いは他の装置に備えられる。
また、伸長手段は、例えば、受信側装置、或いは他の装置に備えられる。
また、スタッフィングコードとしては、例えば、MPEG−4方式におけるスタッフィングビットや、MPEG−2方式におけるスタッフィングバイトや、H.264方式におけるゼロバイト等を用いることができる。
本発明に係る暗号化データ通信システムでは、データストリームを暗号化した暗号化ストリームを送信側装置から受信側装置へ通信するに際して、次のような処理を行う。
すなわち、前記送信側装置では、暗号化手段が前記データストリームに含まれるデータと所定の判定用マーカの並びを暗号化し、送信手段が前記暗号化により得られた暗号化ストリームを送信する。
前記受信側装置では、受信手段が前記暗号化ストリームを受信し、検出手段が前記受信された暗号化ストリームに含まれる位置識別コードを検出し、復号手段が前記検出の結果に基づいて前記暗号化ストリームを復号し、そして、判定手段が、前記復号の結果に基づいて、前記データと前記判定用マーカの並びが復号されている場合には正しい位置識別コードが検出されたと判定する一方、他の場合には擬似コードが検出されたと判定する。
従って、暗号化ストリームの復号結果において、データと判定用マーカの並びが復号された場合つまりデータの後に判定用マーカが現れた場合には、正しい位置識別コードが検出されて復号されたことを把握することができる一方、データと判定用マーカの並びが復号されなかった場合つまりデータの後に判定用マーカが現れなかった場合には、擬似コードが誤って検出されて復号されたことを把握することができる。これにより、暗号化データを通信するに際して、暗号化データに含まれる擬似コードを本来の位置識別コードであると誤検出することによる影響を抑制することができる。具体的には、例えば、誤検出した場合には再び暗号化データへ戻して位置識別コードの検索を行うことにより、誤検出したままとすることを防いで無くすことができる。
ここで、所定の判定用マーカとしては、種々なものが用いられてもよく、例えば、データストリームにもともと含まれている位置識別コードなどが用いられてもよく、或いは、データストリームに判定用マーカが挿入されて用いられてもよい。また、所定の判定用マーカとしては、例えば、ストリームに対してユニークなものが用いられる。復号後に判定用マーカを削除することが必要な場合には、受信側装置には、復号された判定用マーカを削除する削除手段が備えられる。
また、データストリームには、例えば、スタートコードなどの位置識別コードや、データが含まれる。なお、スタートコードや同期マーカなどの位置識別コードが、データストリームに追加的に挿入されるような態様が用いられてもよい。
また、復号のために検出される位置識別コードとしては、例えば、データストリームにもともと含まれるものが用いられてもよく、或いは、データストリームに追加的に挿入されたものが用いられてもよい。
また、復号のために検出される位置識別コードとしては、例えば、スタートコードなどと同期マーカとの組み合わせが用いられてもよい。
本発明に係る暗号化データ通信システムでは、一構成例として、次のような構成とした。
すなわち、前記データストリームは、圧縮手段により圧縮されたものであり、また、前記復号により得られるデータストリームは、伸長手段により伸長される。そして、前記受信側装置では、変換手段が前記復号された判定用マーカをスタッフィングコードへ変換する。
従って、復号後に判定用マーカがスタッフィングコードへ置き換えられ、伸長に際してはスタッフィングコードは無視されるため、復号の結果から判定用マーカ(本例では、スタッフィングコード)を削除せずに残しておくことができ、復号処理を高速化することができる。
本発明に係る暗号化データ通信システムでは、一構成例として、次のような構成とした。
すなわち、前記送信側装置では、挿入手段が前記データストリームにもともと含まれる位置識別コードと同一の位置識別マーカを挿入する。そして、前記所定の判定用マーカとして、前記データストリームにもともと含まれる前記位置識別コード、或いは、前記データストリームに挿入された前記位置識別マーカが用いられる。
前記受信側装置では、削除手段が、前記復号の結果から、前記データストリームにもともと含まれる前記位置識別コード或いは前記データストリームに挿入された前記位置識別マーカの一方を削除する。
従って、送信側装置では、データストリームにもともと含まれる位置識別コードに対して前方或いは後方に位置識別マーカを挿入して、データと判定用マーカ(位置識別コード或いは位置識別マーカの一方で、前方(データ側)にあるもの)を暗号化し、受信側装置では、前記位置識別コード或いは前記位置識別マーカの他方(後方にあるもの)を検出して復号を行い、データと判定用マーカが復号されるか否かに基づいて、正しく復号されたか否かを判定することができる。これにより、擬似コードの誤検出を放置することを防止することができる。
また、受信側装置では、復号後に二重になる位置識別コード(ここでは、位置識別コードと位置識別マーカ)の一方を削除して、1つの位置識別コード(ここでは、位置識別コード或いは位置識別マーカ)を残すようにする。
なお、本例では、位置識別コードと同一の位置識別マーカを挿入して位置識別コード或いは位置識別マーカを判定用マーカとして用いる構成を示したが、例えば、挿入したマーカを復号後に削除するような場合や、挿入したマーカを復号後にスタッフィングコードへ変換するような場合で、挿入したマーカが位置識別コードと同一でなくともよい場合には、位置識別コードとは異なるマーカを挿入する構成を用いることも可能である。
本発明に係る暗号化データ通信システムでは、データストリームを暗号化した暗号化ストリームを送信側装置から受信側装置へ通信するに際して、次のような処理を行う。
すなわち、前記送信側装置では、生成手段がデータの後に所定の判定用マーカと所定の同期マーカと位置識別コードの並び或いは所定の判定用マーカと位置識別コードと所定の同期マーカの並びを有するデータストリームを生成し、暗号化手段が前記生成されたデータストリームに含まれる前記データと前記判定用マーカの並びを暗号化し、送信手段が前記暗号化により得られた暗号化ストリームを送信する。
前記受信側装置では、受信手段が前記暗号化ストリームを受信し、検出手段が前記受信された暗号化ストリームに含まれる前記同期マーカと前記位置識別コードの並び或いは前記位置識別コードと前記同期マーカの並びを検出し、復号手段が前記検出の結果に基づいて前記暗号化ストリームを復号し、そして、判定手段が、前記復号の結果に基づいて、前記データと前記判定用マーカの並びが復号されている場合には正しい前記同期マーカと前記位置識別コードの並び或いは前記位置識別コードと前記同期マーカの並びが検出されたと判定する一方、他の場合には擬似的な並びが検出されたと判定する。
従って、暗号化ストリームを復号するに際して、同期マーカと位置識別コードの並び又は位置識別コードと同期マーカの並びを検出して同期が取られるため、例えば位置識別コードのみを検出して同期が取られる場合と比べて、検出対象の量(例えば、ビット数)を多くすることができ、これにより、暗号化データを通信するに際して、暗号化データに含まれる擬似コード(本例では、前記の並びと擬似的に同一なもの)を本来の位置識別コード(本例では、前記の並び)であると誤検出することによる影響を抑制することができる。具体的には、誤検出する確率を低下させることができる。
これとともに、暗号化ストリームの復号結果において、データと判定用マーカの並びが復号された場合つまりデータの後に判定用マーカが現れた場合には、正しい位置識別コードが検出されて復号されたことを把握することができる一方、データと判定用マーカの並びが復号されなかった場合つまりデータの後に判定用マーカが現れなかった場合には、擬似コードが誤って検出されて復号されたことを把握することができる。これにより、暗号化データを通信するに際して、暗号化データに含まれる擬似コードを本来の位置識別コードであると誤検出することによる影響を抑制することができる。具体的には、例えば、誤検出した場合には再び暗号化データへ戻して位置識別コードの検索を行うことにより、誤検出したままとすることを防いで無くすことができる。
ここで、データストリームには、例えば、位置識別コードやデータが含まれる。なお、位置識別コードがデータストリームに追加的に挿入されるような態様が用いられてもよい。
また、データと判定用マーカと同期マーカと位置識別コードの並びが用いられる場合には、データと判定用マーカの並びが暗号化され、同期マーカと位置識別コードの並びが復号に際して検出される。また、データと判定用マーカと位置識別コードと同期マーカの並びが用いられる場合には、データと判定用マーカの並びが暗号化され、位置識別コードと同期マーカの並びが復号に際して検出される。
また、他の構成例として、データの後に判定用マーカと位置識別コードの並びを有するデータストリームを生成し、当該データと当該判定用マーカの並びを暗号化して暗号化ストリームを生成し、当該暗号化ストリームに含まれる前記位置識別コードの前又は後に同期マーカを挿入することにより、データと判定用マーカと同期マーカと位置識別コードの並び或いはデータと判定用マーカと位置識別コードと同期マーカの並びを生成することも可能である。
なお、本発明は、方法や、プログラムや、記録媒体などとして提供することも可能である。
本発明に係る方法では、システムや装置において各手段が各種の処理を実行する。
本発明に係るプログラムでは、システムや装置を構成するコンピュータに実行させるものであって、各種の機能を当該コンピュータにより実現する。
本発明に係る記録媒体では、システムや装置を構成するコンピュータに実行させるプログラムを当該コンピュータの入力手段により読み取り可能に記録したものであって、当該プログラムは各種の処理を当該コンピュータに実行させる。
以上説明したように、本発明に係る暗号化データ通信システムによると、暗号化ストリームの復号に際して同期マーカと位置識別コードとの組み合わせを検出するようにしたため、例えば位置識別コードのみを検出するような場合と比べて、擬似コードを誤検出してしまう確率を小さくすることができる。
また、本発明に係る暗号化データ通信システムによると、データと判定用マーカの並びを暗号化して、この並びが正しく復号されたか否かを判定するようにしたため、例えば、復号に際して擬似コードを誤検出してしまっても、それを把握して、訂正することが可能である。
また、本発明に係る暗号化データ通信システムによると、同期マーカと判定用マーカの両方を用いることにより、擬似コードの誤検出による影響を抑制することができ、これにより、復号の精度やデータ再生の精度などを向上させることができる。
また、本発明に係る暗号化データ通信システムによると、スタッフィングコードを用いることにより、復号処理の高速化などを図ることができる。
本発明に係る実施例を図面を参照して説明する。
図1には、本実施例に係る暗号化データ通信システムの一例を示してある。
本例の暗号化データ通信システムは、ネットワークカメラ1と、ネットワーク2と、端末装置3を有している。そして、ネットワークカメラ1からネットワーク2を介して端末装置3へ暗号化ストリームを配信する。
ネットワークカメラ1は、映像ストリームの非ヘッダ部分を暗号鍵で暗号化して、これをネットワーク2へ出力する。
端末装置3は、例えばクライアントとして機能するパーソナルコンピュータであり、ネットワークカメラ1で使用される暗号鍵に対応した鍵を記憶しており、この鍵を使用してネットワークカメラ1から受信した暗号化ストリームを復号することで、映像を視聴することができる。
図2には、暗号化データ通信システムの具体的な構成例を示してある。
本例の暗号化データ通信システムは、エンコーダ11及び暗号化部12を有する送信側の装置(送信側装置)と、ネットワーク13と、復号部14及びデコーダ15を有する受信側の装置(受信側装置)から構成されている。
暗号化部12は、初期ベクトル部21と、鍵部22と、乱数発生器23と、演算器24を備えている。
復号部14は、初期ベクトル部31と、鍵部32と、乱数発生器33と、演算器34を備えている。
また、送信側装置や、受信側装置は、それぞれ、各種のデータ処理や制御を行う制御部(図示せず)を備えている。
送信側装置の動作例を示す。
エンコーダ11は、送信対象となる映像ストリームをエンコード(本例では、MPEG−4方式による圧縮)して暗号化部12へ出力する。
暗号化部12では、初期ベクトル部21が初期ベクトルを出力し、鍵部22が鍵を出力し、乱数発生器23が初期ベクトル及び鍵を用いて乱数を発生させて出力し、演算器24がエンコーダ11から入力される映像ストリームと乱数発生器23から入力される乱数との排他的論理和を取ることで、暗号化ストリームを得る。そして、この暗号化ストリームをネットワーク13を介して受信側へ送る。
また、送信側装置では、制御部により、映像ストリームや暗号化ストリームに対して各種の加工処理を行うことができる。
受信側装置の動作例を示す。
復号部14では、初期ベクトル部31が初期ベクトルを出力し、鍵部32が鍵を出力し、乱数発生器33が初期ベクトル及び鍵を用いて乱数を発生させて出力し、演算器34がネットワーク13を介して入力される暗号化ストリームと乱数発生器33から入力される乱数との排他的論理和を取ることで、送信側から受信した暗号化ストリームを復号する。そして、これにより得られた元の映像ストリームをデコーダ15へ出力する。
デコーダ15は、復号部14から入力される映像ストリームをデコード(本例では、MPEG−4方式による圧縮に対する伸張)する。
なお、送信側の暗号化部12と受信側の復号部14とでは、例えば、初期ベクトルや鍵として互いに対応するものが用いられ、また、乱数のタイミングの同期が取られる。
また、受信側装置では、制御部により、暗号化ストリームや復号後の映像ストリームに対して各種の加工処理を行うことができる。
なお、本実施例に係る送信側装置は、例えば、映像を圧縮符号化する圧縮手段や、圧縮された映像ストリーム(データストリーム)を暗号化する暗号化手段や、データストリームや暗号化ストリームに対して同期マーカや判定用マーカ(本実施例では、例えば、スタートコード)などを挿入する挿入手段や、暗号化ストリームを送信する送信手段や、所定のデータストリームを生成する生成手段などの機能を有している。
また、本実施例に係る受信側装置では、暗号化ストリームを受信する受信手段や、スタートコードや同期マーカを検出する検出手段や、暗号化ストリームを復号する復号手段や、同期マーカや判定用マーカなどを削除する削除手段や、擬似コードの誤検出の有無を判定する判定手段や、判定用マーカをスタッフィングコード(本例では、スタッフィングビット)へ変換する変換手段や、データストリームを伸長する伸長手段などの機能を有する。
また、以下の実施例では、VOPヘッダに含まれる[数バイトのヘッダ]についても暗号化する場合を示すが、この[数バイトのヘッダ]については暗号化しない態様が用いられてもよく、或いは、この[数バイトのヘッダ]の一部のみを暗号化するような態様が用いられてもよい。
本発明の第1実施例を説明する。
(第1−1の例)
図3(a)〜(e)には、暗号化した非ヘッダ部分の後ろに同期マーカを付加する方式で、VOP単位で暗号化を行う態様例を示してある。本例では、同期マーカは、4バイトから成る。
なお、本例では、暗号化や復号に際してVOP(本例において、vop_start_codeを示す)を位置識別のためのコードとして使用する。
図3(a)には、送信側における暗号化前の映像ストリームの一例を示してある。この映像ストリームは、VOH(本例において、video_object_start_codeを示す)に続いて、VOPとデータの組が1組以上(本例では、3組)並んで構成されている。本例では、VOHは4バイトから成り、VOPは4バイトから成る。
図3(b)には、送信側において非ヘッダ部分を暗号化して生成される暗号化ストリームの一例を示してある。この暗号化ストリームでは、ヘッダではないデータの部分(非ヘッダ部分)が暗号化されて暗号化データとなっている。また、本例では、VOPに続く[数バイトのヘッダ]も暗号化されている。
図3(c)には、送信側において暗号化データの後ろに4バイトの同期マーカ(図では、“0xXX XX XX XX”と示したもの)を挿入した暗号化ストリームの一例を示してある。
図3(d)には、受信側において暗号化ストリーム中から同期マーカとVOPから成る8バイトを検出して、その前にある暗号化データを復号して元のストリーム中へ挿入したものの一例を示してある。
図3(e)には、受信側において暗号化ストリーム中から前記同期マーカを削除して、その後ろを前に詰めたものの一例を示してある。
送信側の動作例を示す。
送信側では、図3(a)に示される映像ストリームの中から、4バイトのVOHを検出し、次いで、4バイトのVOPを検出する。そして、次の4バイトのVOPを検出すると、図3(b)に示されるように、検出した隣りの2個のVOPの間のデータ(すなわち、VOPデータ及びVOPに続く[数バイトのヘッダ])を暗号鍵で暗号化する。次に、図3(c)に示されるように、暗号化した非ヘッダ部分(本例では、暗号化したVOPデータ)の後ろに同期マーカを付加して、ネットワーク2、13へ出力する。なお、VOPデータは、VOPヘッダ(vop_start_code及び[数バイトのヘッダ])に続いて配置されるデータのことを示す。
受信側の動作例を示す。
受信側では、暗号化ストリームの中から4バイトのVOHを検出し、次いで、4バイトのVOPを検出する。そして、次に計8バイトの(同期マーカ+VOP)を検出すると、図3(d)に示されるように、検出したVOPと隣りの(同期マーカ+VOP)との間のデータを暗号鍵で復号する。そして、図3(e)に示されるように、前記した4バイトの同期マーカを削除して、その後ろのストリームを前に詰める。以後、全ての暗号化データについて、同様な動作を繰り返して行う。
本例のように、受信側で(同期マーカ+VOP)の計8バイトを検出する構成では、例えば符号化レートが2Mbpsである時には、暗号化ストリーム中の擬似コードを誤検出する確率は約230万年に1回程度と低くなる。具体的には、符号化レートが2Mbpsである時、28×8(bit)/{2M(bit/sec)/8}=(264/250000)(sec)≒2339769(年)≒230万年となり、8バイトの擬似コードは、約230万年に1回、暗号化ストリーム中に出現する。
このように、映像ストリームの非ヘッダ部分を暗号化する際に、暗号化した非ヘッダ部分の後ろに同期マーカを付加することで、暗号化ストリーム中に含まれる擬似コードを本来のスタートコードであると誤検出する確率を下げることができる。
なお、本例では、暗号化した非ヘッダ部分の後ろ(VOPの前)に同期マーカを挿入する構成を示したが、同期マーカを挿入する位置としてはこれに限られず、例えば、VOPの後ろに同期マーカを挿入する構成を用いて、本例と同様な効果を得ることもできる。VOPの後ろに同期マーカを挿入すると、例えば、[暗号化されたVOPデータ][vop_start_code][同期マーカ][数バイトのヘッダ][暗号化されたVOPデータ]といった並びが生成される。
(第1−2の例)
図4(a)〜(e)には、暗号化した非ヘッダ部分(本例では、[数バイトのヘッダ]やVOPヘッダも含む)の後ろに同期マーカを付加する方式で、VOH単位で暗号化を行う態様例を示してある。本例では、同期マーカは、4バイトから成る。
なお、本例では、暗号化や復号に際してVOH(本例において、video_object_start_codeを示す)を位置識別のためのコードとして使用し、暗号化や復号に際してはVOPヘッダは非ヘッダ部分であるとみなす。
図4(a)には、送信側における暗号化前の映像ストリームの一例を示してある。
図4(b)には、送信側において非ヘッダ部分(本例では、[数バイトのヘッダ]やVOPヘッダも含む)を暗号化して生成される暗号化ストリームの一例を示してある。
図4(c)には、送信側において暗号化データの後ろに4バイトの同期マーカ(図では、“0xXX XX XX XX”と示したもの)を挿入した暗号化ストリームの一例を示してある。
図4(d)には、受信側において暗号化ストリーム中から同期マーカとVOHから成る8バイトを検出して、その前にある暗号化データを復号して元のストリーム中へ挿入したものの一例を示してある。
図4(e)には、受信側において暗号化ストリーム中から前記同期マーカを削除して、その後ろを前に詰めたものの一例を示してある。
送信側の動作例を示す。
送信側では、図4(a)に示される映像ストリームの中から、4バイトのVOHを検出し、次いで、4バイトのVOP(本例において、vop_start_codeを示す)を検出する。そして、次の4バイトのVOHを検出すると、図4(b)に示されるように、この間のデータすなわち最初のVOPデータから最後のVOPデータまでを暗号鍵で暗号化する。なお、本例では、最初のVOPに続く[数バイトのヘッダ]も暗号化されている。次に、図4(c)に示されるように、暗号化した非ヘッダ部分(本例では、最初のVOPデータから最後のVOPデータまでの部分で、最初のVOPに続く[数バイトのヘッダ]や他のVOPヘッダも含む)の後ろに同期マーカを付加して、ネットワーク2、13へ出力する。
受信側の動作例を示す。
受信側では、暗号化ストリームの中から4バイトのVOHを検出し、次いで、4バイトのVOPを検出する。そして、次に計8バイトの(同期マーカ+VOH)を検出すると、図4(d)に示されるように、検出したVOPと隣りの(同期マーカ+VOH)との間のデータを暗号鍵で復号する。そして、図4(e)に示されるように、前記した4バイトの同期マーカを削除して、その後ろのストリームを前に詰める。以後、全ての暗号化データについて、同様な動作を繰り返して行う。
このように、映像ストリームの非ヘッダ部分(本例では、[数バイトのヘッダ]やVOPヘッダも含む)を暗号化する際に、暗号化した非ヘッダ部分(本例では、[数バイトのヘッダ]やVOPヘッダも含む)の後ろに同期マーカを付加することで、暗号化ストリーム中に含まれる擬似コードを本来のスタートコードであると誤検出する確率を下げることができる。
なお、本例では、暗号化した非ヘッダ部分(本例では、[数バイトのヘッダ]やVOPヘッダも含む)の後ろ(VOHの前)に同期マーカを挿入する構成を示したが、同期マーカを挿入する位置としてはこれに限られず、例えば、暗号化した非ヘッダ部分(本例では、[数バイトのヘッダ]やVOPヘッダも含む)の前方(例えば、VOHの後ろ)に同期マーカを挿入する構成を用いて、本例と同様な効果を得ることもできる。
(第1−3の例)
図5(a)〜(e)には、暗号化した非ヘッダ部分の後ろに同期マーカとしてスタッフィングビット(stuffing bit)を付加する方式で、VOP単位で暗号化を行う態様例を示してある。本例では、スタッフィングビットは、4バイトから成る。
なお、本例では、暗号化や復号に際してVOP(本例において、vop_start_codeを示す)を位置識別のためのコードとして使用する。
ここで、スタッフィングビットは、「詰めもの」を表し、MPEG−4において、バイト・アライメント(データの始めをバイト(=8bit)の始めに合わせること)を行うために、映像ストリーム中に挿入される。つまり、映像ストリームの長さがバイト単位にならなかった時に、スタッフィングビットという「詰めもの」を映像ストリームの後ろに付加する。
このようなスタッフィングビットはその長さがわかるようにパターンが規定されており、デコーダ15で映像ストリームを伸長する際にはこのスタッフィングビットは無視される。具体的には、スタッフィングビットは、0、01、011、0111、・・・、01111111、・・・というパターンであり、逆方向から復号した時に、“0”を見つけることで区切りを検出することができるため、スタッフィングビットが付加された映像ストリームを伸長する場合にはスタッフィングビットを無視することが行われる。
このような特徴を有するスタッフィングビットを同期マーカとして用いると、受信側では同期マーカを削除してその後ろを前に詰める処理が不要となるため、高速な復号処理が可能となる。
図5(a)には、送信側における暗号化前の映像ストリームの一例を示してある。
図5(b)には、送信側において非ヘッダ部分を暗号化して生成される暗号化ストリームの一例を示してある。また、本例では、VOPに続く[数バイトのヘッダ]も暗号化されている。
図5(c)には、送信側において暗号化データの後ろに同期マーカとして4バイトのスタッフィングビット(図では、“0x7F FF FF FF”と示したもの)を挿入した暗号化ストリームの一例を示してある。
図5(d)には、受信側において暗号化ストリーム中から同期マーカとVOPから成る8バイトを検出して、その前にある暗号化データを復号して元のストリーム中へ挿入したものの一例を示してある。
図5(e)には、受信側において、同様にして、暗号化ストリーム中の暗号化データを順々に復号していく様子の一例を示してある。
送信側の動作例を示す。
送信側では、図5(a)に示される映像ストリームの中から、4バイトのVOH(本例において、video_object_start_codeを示す)を検出し、次いで、4バイトのVOPを検出する。そして、次の4バイトのVOPを検出すると、図5(b)に示されるように、検出した隣りの2個のVOPの間のデータ(すなわち、VOPに続く[数バイトのヘッダ]及びVOPデータ)を暗号鍵で暗号化する。次に、図5(c)に示されるように、暗号化した非ヘッダ部分(本例では、暗号化した[数バイトのヘッダ]及びVOPデータ)の後ろに同期マーカ(本例では、スタッフィングビット)を付加して、ネットワーク2、13へ出力する。
受信側の動作例を示す。
受信側では、暗号化ストリームの中から4バイトのVOHを検出し、次いで、4バイトのVOPを検出する。そして、次に計8バイトの(同期マーカ+VOP)を検出すると、図5(d)に示されるように、検出したVOPと隣りの(同期マーカ+VOP)との間のデータを暗号鍵で復号する。そして、図5(e)に示されるように、以後、全ての暗号化データについて、同様な動作を繰り返して行う。
このように、映像ストリームの非ヘッダ部分を暗号化する際に、暗号化した非ヘッダ部分の後ろに同期マーカとしてスタッフィングビットを付加することで、暗号化ストリーム中に含まれる擬似コードを本来のスタートコードであると誤検出する確率を下げることができ、且つ、高速な復号処理を実現することができる。
なお、本例では、例えばもともと送信側や受信側に備えられているスタッフィングビットの機能を利用するため、同期マーカとしてスタッフィングビットを挿入する位置としては、暗号化した非ヘッダ部分の後ろ(VOPの前)が用いられる。
(第1−4の例)
図6(a)〜(e)には、暗号化した非ヘッダ部分(本例では、[数バイトのヘッダ]やVOPヘッダも含む)の後ろに同期マーカとしてスタッフィングビット(stuffing bit)を付加する方式で、VOH単位で暗号化を行う態様例を示してある。本例では、スタッフィングビットは、4バイトから成る。
なお、本例では、暗号化や復号に際してVOH(本例において、video_object_start_codeを示す)を位置識別のためのコードとして使用し、暗号化や復号に際してはVOPヘッダは非ヘッダ部分であるとみなす。
図6(a)には、送信側における暗号化前の映像ストリームの一例を示してある。
図6(b)には、送信側において非ヘッダ部分(本例では、[数バイトのヘッダ]やVOPヘッダも含む)を暗号化して生成される暗号化ストリームの一例を示してある。
図6(c)には、送信側において暗号化データの後ろに同期マーカとして4バイトのスタッフィングビット(図では、“0x7F FF FF FF”と示したもの)を挿入した暗号化ストリームの一例を示してある。
図6(d)には、受信側において暗号化ストリーム中から同期マーカとVOHから成る8バイトを検出して、その前にある暗号化データを復号して元のストリーム中へ挿入したものの一例を示してある。
図6(e)には、受信側において、同様にして、暗号化ストリーム中の暗号化データを順々に復号していく様子の一例を示してある。
送信側の動作例を示す。
送信側では、図6(a)に示される映像ストリームの中から、4バイトのVOHを検出し、次いで、4バイトのVOP(本例において、vop_start_codeを示す)を検出する。そして、次の4バイトのVOHを検出すると、図6(b)に示されるように、この間のデータすなわち最初のVOPデータから最後のVOPデータまでを暗号鍵で暗号化する。なお、本例では、最初のVOPに続く[数バイトのヘッダ]も暗号化されている。次に、図6(c)に示されるように、暗号化した非ヘッダ部分(本例では、最初のVOPデータから最後のVOPデータまでの部分で、最初のVOPに続く[数バイトのヘッダ]や他のVOPヘッダも含む)の後ろに同期マーカとしてスタッフィングビットを付加して、ネットワーク2、13へ出力する。
受信側の動作例を示す。
受信側では、暗号化ストリームの中から4バイトのVOHを検出し、次いで、4バイトのVOPを検出する。そして、次に計8バイトの(同期マーカ+VOH)を検出すると、図6(d)に示されるように、検出したVOPと隣りの(同期マーカ+VOH)との間のデータを暗号鍵で復号する。そして、図6(e)に示されるように、以後、全ての暗号化データについて、同様な動作を繰り返して行う。
このように、映像ストリームの非ヘッダ部分(本例では、[数バイトのヘッダ]やVOPヘッダも含む)を暗号化する際に、暗号化した非ヘッダ部分(本例では、[数バイトのヘッダ]やVOPヘッダも含む)の後ろに同期マーカとしてスタッフィングビットを付加することで、暗号化ストリーム中に含まれる擬似コードを本来のスタートコードであると誤検出する確率を下げることができ、且つ、高速な復号処理を実現することができる。
なお、本例では、例えばもともと送信側や受信側に備えられているスタッフィングビットの機能を利用するため、同期マーカとしてスタッフィングビットを挿入する位置としては、暗号化した非ヘッダ部分(本例では、[数バイトのヘッダ]やVOPヘッダも含む)の後ろ(VOHの前)が用いられる。
以上の各例に示されるように、本例の暗号化データ通信システムでは、送信側において、映像ストリームの非ヘッダ部分(本例では、[数バイトのヘッダ]を含み、VOPヘッダを含む場合もある)を暗号化する際に、暗号化した非ヘッダ部分(本例では、[数バイトのヘッダ]を含み、VOPヘッダを含む場合もある)の後ろ或いは前などに同期マーカを付加する。これにより、例えば、ヘッダ長を4バイトから実質的に8バイトへ拡張して、非ヘッダ部分(本例では、[数バイトのヘッダ]を含み、VOPヘッダを含む場合もある)における擬似コードの検出の確率を低下させる。なお、非ヘッダ部分のデータとしては、例えば、可変長である映像の符号化データなどが用いられる。
また、本例の暗号化データ通信システムでは、受信側において、上記のようにして暗号化された映像ストリーム(暗号化ストリーム)の中から、同期マーカとスタートコードとの組み合わせの部分を検出して、暗号化された非ヘッダ部分(本例では、[数バイトのヘッダ]を含み、VOPヘッダを含む場合もある)を復号する。
また、本例の暗号化データ通信システムでは、受信側において、暗号化された映像ストリーム(暗号化ストリーム)の中から、同期マーカとスタートコードとの組み合わせの部分を検出して、暗号化された非ヘッダ部分(本例では、[数バイトのヘッダ]を含み、VOPヘッダを含む場合もある)を復号した後に、同期マーカを取り除いて、その後ろのデータを前に詰める。或いは、本例の暗号化データ通信システムでは、受信側において、同期マーカを削除しなくてもよいような場合には、上記のようにして暗号化された非ヘッダ部分(本例では、[数バイトのヘッダ]を含み、VOPヘッダを含む場合もある)を復号した時に、同期マーカを映像ストリームに残したままとする。
例えば、本例の暗号化データ通信システムでは、送信側において、暗号化した非ヘッダ部分(本例では、[数バイトのヘッダ]を含み、VOPヘッダを含む場合もある)の後ろに付加する同期マーカとしてスタッフィングビットを用いる。つまり、スタッフィングビット領域にデータを挿入することで、同期マーカとして活用する。また、このようにスタッフィングビットを用いる場合に、受信側において、暗号化された非ヘッダ部分(本例では、[数バイトのヘッダ]を含み、VOPヘッダを含む場合もある)を復号した時に、同期マーカであるスタッフィングビットを映像ストリームに残したままとする。
従って、本例の暗号化データ通信システムでは、上記のような同期マーカを設けてヘッダ長を実質的に長くすることにより、暗号化ストリーム中の非ヘッダ部分(本例では、[数バイトのヘッダ]を含み、VOPヘッダを含む場合もある)にそのときに使用するスタートコード部分(本例では、同期マーカとVOP又はVOHとの組み合わせ)と同一の値(擬似コード)が現れる確率を小さくすることができる。これにより、例えば、暗号化ストリームを受信側のパーソナルコンピュータで復号する際に、暗号化ストリーム中に含まれる擬似コードを本来のスタートコードであると誤検出する確率を小さくすることができ、画像の再生等の精度を向上させることができる。
本発明の第2実施例を説明する。
(第2−1の例)
図7(a)〜(g)及び図8(a)〜(e)には、非ヘッダ部分の後ろに(スタートコード+同期マーカ)を付加して、(非ヘッダ部分+スタートコード)を暗号化する方式で、VOP単位で暗号化を行う態様例を示してある。なお、同期マーカは、例えば、4バイトから成る。
ここで、本例では、非ヘッダ部分の後に付加する(スタートコード+同期マーカ)のスタートコードとして、VOP(本例において、vop_start_codeを示す)を一例として用いるが、他のパターンが用いられてもよい。他の例としては、MPEG−4の場合、VOH(本例において、video_object_start_codeを示す)や、VOL(Video Object Layer)ヘッダのスタートコード(“00 00 01 02h”)や、User data start code(“00 00 01 B2h”)や、GOV(Group Of Video)ヘッダのスタートコード(“00 00 01 B3h”)などのように、非ヘッダ部分の中に出現することが禁止されたビットパターンで構成されたユニークコードを用いることができる。
まず、図7(a)〜(g)を参照して、受信側が暗号化ストリーム中から(同期マーカ+VOP)を正しく検出する場合について説明する。
図7(a)には、送信側における暗号化前の映像ストリームの一例を示してある。
図7(b)には、送信側においてVOPデータの後ろにVOP及び同期マーカ(SYNC)を挿入した映像ストリームの一例を示してある。
図7(c)には、送信側においてデータ(非暗号化データ)及びVOPを暗号化したものの一例を示してある。この暗号化ストリームでは、データとそれに続くVOPの部分が暗号化されて、暗号化データとなっている。なお、本例では、左側に位置するVOPに続く[数バイトのヘッダ]も暗号化されている。
図7(d)には、受信側において暗号化ストリーム中からVOPを検出する様子の一例を示してある。
図7(e)には、受信側において同期マーカ及びVOPの組を検出する様子の一例を示してある。
図7(f)には、受信側においてVOPと同期マーカ及びVOPの組との間のデータを復号化したものの一例を示してある。
図7(g)には、受信側においてVOPデータの後にあるVOP及び同期マーカを削除したものの一例を示してある。
送信側の動作例を示す。
送信側では、図7(a)に示される映像ストリームの中から、4バイトのVOHを検出し、次いで、4バイトのVOPを検出する。そして、次の4バイトのVOPを検出すると、図7(b)に示されるように、この間のデータすなわちVOPデータの後に(VOP+同期マーカ)を挿入し、図7(c)に示されるように、(VOPデータ+VOP)の部分を暗号鍵で暗号化する。これにより得られた暗号化ストリームをネットワーク2、13へ出力する。
受信側の動作例を示す。
受信側では、暗号化ストリームの中から4バイトのVOHを検出し、次いで、図7(d)に示されるように、4バイトのVOPを検出する。そして、図7(e)に示されるように、次に計8バイトの(同期マーカ+VOP)を検出すると、図7(f)に示されるように、検出したVOPと隣りの(同期マーカ+VOP)との間のデータを暗号鍵で復号する。
ここで、復号されたデータの最後にスタートコード(本例では、VOP)が出現するか否かを調べる。非ヘッダ部分(本例では、[数バイトのヘッダ]やVOPデータ)の中にはスタートコード(本例では、VOP)と一致するビット列は出現しないため、復号されたデータの最後にスタートコードが出現すれば、このスタートコードは、送信側において非ヘッダ部分の後ろに挿入された前記(スタートコード+同期マーカ)のスタートコードであることが把握される。つまり、先に検出した(同期マーカ+スタートコード)は、暗号化データ中の擬似コードではなく、正しい(同期マーカ+スタートコード)であることを確認することができる。
そして、受信側では、図7(g)に示されるように、VOPデータの後にある(VOP+同期マーカ)を削除して、その後ろのストリームを前に詰める。以後、同様な動作を繰り返して行う。
このように、非ヘッダ部分の後ろに(スタートコード+同期マーカ)を付加して(非ヘッダ部分+スタートコード)を暗号化することで、暗号化ストリーム中に含まれる擬似コードを本来のスタートコードであると誤検出することを防ぐことができる。
なお、本例のように、受信側で(同期マーカ+VOP)の計8バイトを検出する構成では、例えば符号化レートが2Mbpsである時には、暗号化ストリーム中の擬似コードを誤検出する確率は約230万年に1回程度と低くなる。具体的には、符号化レートが2Mbpsである時、28×8(bit)/{2M(bit/sec)/8}=(264/250000)(sec)≒2339769(年)≒230万年となり、8バイトの擬似コードは、約230万年に1回、暗号化ストリーム中に出現する。
次に、図8(a)〜(e)を参照して、受信側が暗号化データ中から誤って擬似コードを検出した場合について説明する。
図8(a)には、受信側において暗号化データ中の擬似コードを検出する様子の一例を示してある。
図8(b)には、受信側においてVOPと擬似コードとの間のデータを復号したために、誤って復号されたデータが生成される様子の一例を示してある。本例では、暗号化データの一部のみが誤って復号されている。
図8(c)には、受信側において擬似コードが出現したことを検出する様子の一例を示してある。具体的には、非ヘッダ部分の中にはスタートコード(本例では、VOP)が存在しないことから、誤って復号されたデータの最後にはスタートコード(本例では、VOP)は出現しないため、暗号化データ中の擬似コードを誤って検出したことが判定される。
図8(d)には、受信側において誤って復号したデータを元の暗号化データへ戻す様子の一例を示してある。
図8(e)には、受信側において、再び、暗号化データの中から同期マーカ及びVOPの組を探す様子の一例を示してある。
受信側の動作例を示す。
受信側では、上記と同様にして暗号化ストリームの中から(同期マーカ+VOP)を検索するが、図8(a)に示されるように、これと同じ値である擬似コードを検出する。この場合、図8(b)に示されるように、VOPと擬似コードとの間のデータを暗号鍵で復号する。
ここで、復号されたデータの最後にVOPが出現するか否かを調べる。非ヘッダ部分(本例では、[数バイトのヘッダ]やVOPデータ)の中にはVOPと一致するビット列は出現しないため、もしも復号されたデータの最後にVOPが出現すれば、先に検出した(同期マーカ+VOP)は、暗号化データ中の擬似コードではなく、正しい(同期マーカ+VOP)であることが把握される。しかしながら、本例の場合には、図8(c)に示されるように、復号されたデータの最後にはVOPは出現しない。このため、暗号化データ中の擬似コードを誤って検出したことが判定される。
本例のように、誤って擬似コードを検出した場合には、受信側では、例えば、メモリに一時的に格納しておいた復号前の暗号化データを元の位置に挿入するなどの処理を行うことで、図8(d)に示されるように、誤って復号したデータを元の暗号化データへ戻す。そして、図8(e)に示されるように、誤って検出した擬似コード以降のデータの中から、再び、(同期マーカ+VOP)の計8バイトを探す処理を行う。
このように、本例では、送信側でVOPデータの後に(VOP+同期マーカ)を挿入して(VOPデータ+VOP)の暗号化を行い、受信側で、暗号化データの復号を行い、復号を行ったデータの最後にVOPが出現するか否かを確認することで、例え、擬似コードが出現したとしても、暗号化データを正しく復号することができないという事態を回避することができる。
(第2−2の例)
図9(a)〜(g)には、非ヘッダ部分の後ろに(スタートコード+同期マーカ)を付加して、(非ヘッダ部分+スタートコード)を暗号化する方式で、VOP単位で暗号化を行う態様例を示してある。なお、同期マーカは、例えば、4バイトから成る。
本例では、受信側において、受信ストリーム中のVOP(本例において、vop_start_codeを示す)の後にある(同期マーカ+VOP)を削除するため、送信側では、送信ストリーム中の非ヘッダ部分の後に付加する(スタートコード+同期マーカ)のスタートコードとしてVOPを用いる。
受信側が暗号化ストリーム中から(同期マーカ+VOP)を正しく検出する場合について説明する。
図9(a)には、送信側における暗号化前の映像ストリームの一例を示してある。
図9(b)には、送信側においてVOPデータの後ろにVOP及び同期マーカ(SYNC)を挿入した映像ストリームの一例を示してある。
図9(c)には、送信側においてデータ(非暗号化データ)及びVOPを暗号化したものの一例を示してある。この暗号化ストリームでは、データとそれに続くVOPの部分が暗号化されて、暗号化データとなっている。なお、本例では、左側に位置するVOPに続く[数バイトのヘッダ]も暗号化されている。
図9(d)には、受信側において暗号化ストリーム中からVOPを検出する様子の一例を示してある。
図9(e)には、受信側において同期マーカ及びVOPの組を検出する様子の一例を示してある。
図9(f)には、受信側においてVOPと同期マーカ及びVOPの組との間のデータを復号化したものの一例を示してある。
図9(g)には、受信側においてVOPの後にある同期マーカ及びVOPを削除したものの一例を示してある。
送信側の動作例を示す。
送信側では、図9(a)に示される映像ストリームの中から、4バイトのVOH(本例において、video_object_start_codeを示す)を検出し、次いで、4バイトのVOPを検出する。そして、次の4バイトのVOPを検出すると、図9(b)に示されるように、この間のデータすなわちVOPデータの後に(VOP+同期マーカ)を挿入し、図9(c)に示されるように、(VOPデータ+VOP)の部分を暗号鍵で暗号化する。これにより得られた暗号化ストリームをネットワーク2、13へ出力する。
受信側の動作例を示す。
受信側では、暗号化ストリームの中から4バイトのVOHを検出し、次いで、図9(d)に示されるように、4バイトのVOPを検出する。そして、図9(e)に示されるように、次に計8バイトの(同期マーカ+VOP)を検出すると、図9(f)に示されるように、検出したVOPと隣りの(同期マーカ+VOP)との間のデータを暗号鍵で復号する。
ここで、復号されたデータの最後にスタートコード(本例では、VOP)が出現するか否かを調べる。非ヘッダ部分(本例では、[数バイトのヘッダ]やVOPデータ)の中にはスタートコード(本例では、VOP)と一致するビット列は出現しないため、復号されたデータの最後にスタートコードが出現すれば、このスタートコードは、送信側において非ヘッダ部分の後ろに挿入された前記(スタートコード+同期マーカ)のスタートコードであることが把握される。つまり、先に検出した(同期マーカ+スタートコード)は、暗号化データ中の擬似コードではなく、正しい(同期マーカ+スタートコード)であることを確認することができる。
そして、受信側では、図9(g)に示されるように、VOPの後にある(同期マーカ+VOP)を削除して、その後ろのストリームを前に詰める。以後、同様な動作を繰り返して行う。
なお、受信側が暗号化データ中から誤って擬似コードを検出した場合については、例えば、図8(a)〜(e)を参照して説明されるのと同様である。
また、VOHが2回目以降に出現するところでは、上記とは異なる処理が行われ、具体的には、例えば、図9(b)においてVOHの前に(VOP+同期マーカ)を挿入し、図9(e)において(同期マーカ+VOH)を検出し、図9(g)においてVOPデータの後にある(VOP+同期マーカ)を削除する。
このように、非ヘッダ部分の後ろに(スタートコード+同期マーカ)を付加して(非ヘッダ部分+スタートコード)を暗号化することで、暗号化ストリーム中に含まれる擬似コードを本来のスタートコードであると誤検出することを防ぐことができる。
(第2−3の例)
図10(a)〜(g)には、スタートコード部分の後ろに(同期マーカ+スタートコード)を付加して、(非ヘッダ部分+スタートコード)を暗号化する方式で、VOP単位で暗号化を行う態様例を示してある。なお、同期マーカは、例えば、4バイトから成る。また、本例では、スタートコードとしてVOP(本例において、vop_start_codeを示す)が用いられるが、他の例として、VOH(本例において、video_object_start_codeを示す)や、VOLヘッダのスタートコードや、User data start codeや、GOVヘッダのスタートコードなど、他のヘッダのスタートコードなどが用いられてもよい。
なお、本例では、[vop_start_code][数バイトのヘッダ][VOPデータ]の並びに[同期マーカ][vop_start_code]を挿入して、[vop_start_code][同期マーカ][vop_start_code][数バイトのヘッダ][VOPデータ]という並びを生成するが、他の例として、[vop_start_code][数バイトのヘッダ][同期マーカ][vop_start_code][VOPデータ]という並びを生成することも可能である。
受信側が暗号化ストリーム中から(同期マーカ+VOP)を正しく検出する場合について説明する。
図10(a)には、送信側における暗号化前の映像ストリームの一例を示してある。
図10(b)には、送信側においてVOPの後ろに同期マーカ(SYNC)及びVOPを挿入した映像ストリームの一例を示してある。
図10(c)には、送信側においてデータ(非暗号化データ)及びVOPを暗号化したものの一例を示してある。この暗号化ストリームでは、データとそれに続くVOPの部分が暗号化されて、暗号化データとなっている。なお、本例では、左側に位置するVOPに続く[数バイトのヘッダ]も暗号化されている。
図10(d)には、受信側において暗号化ストリーム中からVOPを検出する様子の一例を示してある。
図10(e)には、受信側において同期マーカ及びVOPの組を検出する様子の一例を示してある。
図10(f)には、受信側においてVOPと同期マーカ及びVOPの組との間のデータを復号化したものの一例を示してある。
図10(g)には、受信側においてVOPの後にある同期マーカ及びVOPを削除したものの一例を示してある。
送信側の動作例を示す。
送信側では、図10(a)に示される映像ストリームの中から、4バイトのVOHを検出し、次いで、4バイトのVOPを検出する。そして、次の4バイトのVOPを検出すると、図10(b)に示されるように、このVOPの後に(同期マーカ+VOP)を挿入し、図10(c)に示されるように、(VOPデータ+VOP)の部分を暗号鍵で暗号化する。これにより得られた暗号化ストリームをネットワーク2、13へ出力する。
受信側の動作例を示す。
受信側では、暗号化ストリームの中から4バイトのVOHを検出し、次いで、図10(d)に示されるように、4バイトのVOPを検出する。そして、図10(e)に示されるように、次に計8バイトの(同期マーカ+VOP)を検出すると、図10(f)に示されるように、検出したVOPと隣りの(同期マーカ+VOP)との間のデータを暗号鍵で復号する。
ここで、復号されたデータの最後にスタートコード(本例では、VOP)が出現するか否かを調べる。非ヘッダ部分(本例では、[数バイトのヘッダ]やVOPデータ)の中にはスタートコード(本例では、VOP)と一致するビット列は出現しないため、復号されたデータの最後にスタートコードが出現すれば、このスタートコードは、送信側において非ヘッダ部分の後ろに存在していたスタートコードであることが把握される。つまり、先に検出した(同期マーカ+スタートコード)は、暗号化データ中の擬似コードではなく、正しい(同期マーカ+スタートコード)であることを確認することができる。
そして、受信側では、図10(g)に示されるように、VOPの後にある(同期マーカ+VOP)を削除して、その後ろのストリームを前に詰める。以後、同様な動作を繰り返して行う。
なお、受信側が暗号化データ中から誤って擬似コードを検出した場合については、例えば、図8(a)〜(e)を参照して説明されるのと同様である。
また、VOHが2回目以降に出現するところでは、上記とは異なる処理が行われ、具体的には、例えば、図10(b)においてVOHの後に(同期マーカ+VOP)を挿入し、図10(c)において(非暗号化データ+VOH)を暗号化し、図10(g)においてVOHの後にある(同期マーカ+VOP)を削除する。また、受信側では、暗号化データを復号した際に、復号されたデータの最後にVOHが出現するか否かを調べることとなる。
このように、スタートコードの後ろに(同期マーカ+スタートコード)を付加して(非ヘッダ部分+スタートコード)を暗号化することで、暗号化ストリーム中に含まれる擬似コードを本来のスタートコードであると誤検出することを防ぐことができる。
なお、本例では、8バイトの(同期マーカ+スタートコード)を付加する場合を示したが、例えば、この代わりに、8バイトの同期マーカを付加するような処理としても、正常な動作を行うことが可能である。
(第2−4の例)
図11(a)〜(g)には、スタートコード部分の後ろに(同期マーカ+スタートコード)を付加して、(非ヘッダ部分+スタートコード)を暗号化する方式で、VOP単位で暗号化を行う態様例を示してある。なお、同期マーカは、例えば、4バイトから成る。
本例では、受信側において、受信ストリーム中のVOPデータの後にある(VOP+同期マーカ)を削除するため、送信側では、送信ストリーム中のスタートコード部分の後に付加する(同期マーカ+スタートコード)のスタートコードとしてVOP(本例において、vop_start_codeを示す)を用いる。
なお、本例では、[vop_start_code][数バイトのヘッダ][VOPデータ]の並びに[同期マーカ][vop_start_code]を挿入して、[vop_start_code][同期マーカ][vop_start_code][数バイトのヘッダ][VOPデータ]という並びを生成する。
受信側が暗号化ストリーム中から(同期マーカ+VOP)を正しく検出する場合について説明する。
図11(a)には、送信側における暗号化前の映像ストリームの一例を示してある。
図11(b)には、送信側においてVOPの後ろに同期マーカ(SYNC)及びVOPを挿入した映像ストリームの一例を示してある。
図11(c)には、送信側においてデータ(非暗号化データ)及びVOPを暗号化したものの一例を示してある。この暗号化ストリームでは、データとそれに続くVOPの部分が暗号化されて、暗号化データとなっている。なお、本例では、左側に位置するVOPに続く[数バイトのヘッダ]も暗号化されている。
図11(d)には、受信側において暗号化ストリーム中からVOPを検出する様子の一例を示してある。
図11(e)には、受信側において同期マーカ及びVOPの組を検出する様子の一例を示してある。
図11(f)には、受信側においてVOPと同期マーカ及びVOPの組との間のデータを復号化したものの一例を示してある。
図11(g)には、受信側においてVOPデータの後にあるVOP及び同期マーカを削除したものの一例を示してある。
送信側の動作例を示す。
送信側では、図11(a)に示される映像ストリームの中から、4バイトのVOH(本例において、video_object_start_codeを示す)を検出し、次いで、4バイトのVOPを検出する。そして、次の4バイトのVOPを検出すると、図11(b)に示されるように、このVOPの後に(同期マーカ+VOP)を挿入し、図11(c)に示されるように、(VOPデータ+VOP)の部分を暗号鍵で暗号化する。これにより得られた暗号化ストリームをネットワーク2、13へ出力する。
受信側の動作例を示す。
受信側では、暗号化ストリームの中から4バイトのVOHを検出し、次いで、図11(d)に示されるように、4バイトのVOPを検出する。そして、図11(e)に示されるように、次に計8バイトの(同期マーカ+VOP)を検出すると、図11(f)に示されるように、検出したVOPと隣りの(同期マーカ+VOP)との間のデータを暗号鍵で復号する。
ここで、復号されたデータの最後にスタートコード(本例では、VOP)が出現するか否かを調べる。非ヘッダ部分(本例では、[数バイトのヘッダ]やVOPデータ)の中にはスタートコード(本例では、VOP)と一致するビット列は出現しないため、復号されたデータの最後にスタートコードが出現すれば、このスタートコードは、送信側において非ヘッダ部分の後ろに存在していたスタートコードであることが把握される。つまり、先に検出した(同期マーカ+スタートコード)は、暗号化データ中の擬似コードではなく、正しい(同期マーカ+スタートコード)であることを確認することができる。
そして、受信側では、図11(g)に示されるように、VOPデータの後にある(VOP+同期マーカ)を削除して、その後ろのストリームを前に詰める。以後、同様な動作を繰り返して行う。
なお、受信側が暗号化データ中から誤って擬似コードを検出した場合については、例えば、図8(a)〜(e)を参照して説明されるのと同様である。
また、VOHが2回目以降に出現するところでは、上記とは異なる処理が行われ、具体的には、例えば、図11(b)においてVOHの後に(同期マーカ+VOH)を挿入し、図11(c)において(非暗号化データ+VOH)を暗号化し、図11(e)において(同期マーカ+VOH)を検出し、図11(g)においてVOPデータの後にある(VOH+同期マーカ)を削除する。また、受信側では、暗号化データを復号した際に、復号されたデータの最後にVOHが出現するか否かを調べることとなる。
このように、スタートコードの後ろに(同期マーカ+スタートコード)を付加して(非ヘッダ部分+スタートコード)を暗号化することで、暗号化ストリーム中に含まれる擬似コードを本来のスタートコードであると誤検出することを防ぐことができる。
(第2−5の例)
図12(a)〜(g)には、非ヘッダ部分の後ろに(スタートコード+同期マーカ)を付加して、(非ヘッダ部分+スタートコード)を暗号化する方式で、VOP単位で暗号化を行う態様例を示してある。なお、同期マーカは、例えば、4バイトから成る。また、本例では、スタートコードとしてVOP(本例において、vop_start_codeを示す)が用いられるが、他の例として、VOH(本例において、video_object_start_codeを示す)や、VOLヘッダのスタートコードや、User data start codeや、GOVヘッダのスタートコードなど、他のヘッダのスタートコードなどが用いられてもよい。
受信側が暗号化ストリーム中から(同期マーカ+VOP)を正しく検出する場合について説明する。
図12(a)には、送信側における暗号化前の映像ストリームの一例を示してある。
図12(b)には、送信側においてVOPデータの後ろにVOP及び同期マーカ(SYNC)を挿入した映像ストリームの一例を示してある。
図12(c)には、送信側においてデータ(非暗号化データ)及びVOPを暗号化したものの一例を示してある。この暗号化ストリームでは、データとそれに続くVOPの部分が暗号化されて、暗号化データとなっている。なお、本例では、左側に位置するVOPに続く[数バイトのヘッダ]も暗号化されている。
図12(d)には、受信側において暗号化ストリーム中からVOPを検出する様子の一例を示してある。
図12(e)には、受信側において同期マーカ及びVOPの組を検出する様子の一例を示してある。
図12(f)には、受信側においてVOPと同期マーカ及びVOPの組との間のデータを復号化したものの一例を示してある。
図12(g)には、受信側においてVOPデータに続くVOPをスタッフィングビット(stuffig bit)へ変換したものの一例を示してある。
送信側の動作例を示す。
送信側では、図12(a)に示される映像ストリームの中から、4バイトのVOHを検出し、次いで、4バイトのVOPを検出する。そして、次の4バイトのVOPを検出すると、図12(b)に示されるように、この間のデータすなわちVOPデータの後に(VOP+同期マーカ)を挿入し、図12(c)に示されるように、(VOPデータ+VOP)の部分を暗号鍵で暗号化する。これにより得られた暗号化ストリームをネットワーク2、13へ出力する。
受信側の動作例を示す。
受信側では、暗号化ストリームの中から4バイトのVOHを検出し、次いで、図12(d)に示されるように、4バイトのVOPを検出する。そして、図12(e)に示されるように、次に計8バイトの(同期マーカ+VOP)を検出すると、図12(f)に示されるように、検出したVOPと隣りの(同期マーカ+VOP)との間のデータを暗号鍵で復号する。
ここで、復号されたデータの最後にスタートコード(本例では、VOP)が出現するか否かを調べる。非ヘッダ部分(本例では、[数バイトのヘッダ]やVOPデータ)の中にはスタートコード(本例では、VOP)と一致するビット列は出現しないため、復号されたデータの最後にスタートコードが出現すれば、このスタートコードは、送信側において非ヘッダ部分の後ろに挿入された前記(スタートコード+同期マーカ)のスタートコードであることが把握される。つまり、先に検出した(同期マーカ+スタートコード)は、暗号化データ中の擬似コードではなく、正しい(同期マーカ+スタートコード)であることを確認することができる。
そして、受信側では、図12(g)に示されるように、VOPデータの後にあるVOPをスタッフィングビットへ変換する。このようにスタッフィングビットへの変換を行うと、受信側では、付加したスタートコード(つまり、ここでは、スタッフィングビット)を削除してその後ろを前に詰める必要を無くすことが可能である。受信側では、以後、同様な動作を繰り返して行う。
ここで、スタッフィングビットは、0、01、011、0111、・・・、01111111、・・・というパターンであり、逆方向から復号した時に、“0”を見つけることで区切りを検出することができるため、スタッフィングビットが付加された映像ストリームを伸長する場合にはスタッフィングビットが無視される。
そこで、本例では、例えば、スタッフィングビットの値を0x7FFFFFFF(4バイト)とし、同期マーカの値を0xFFFFFFFF(4バイト)とすることで、(スタッフィングビット+同期マーカ)の値を0x7FFFFFFF FFFFFFFF(8バイト)とする。この場合、この(スタッフィングビット+同期マーカ)もスタッフィングビットとなり、その削除を不要とすることができる。
なお、受信側が暗号化データ中から誤って擬似コードを検出した場合については、例えば、図8(a)〜(e)を参照して説明されるのと同様である。
このように、非ヘッダ部分の後ろに(スタートコード+同期マーカ)を付加して(非ヘッダ部分+スタートコード)を暗号化することで、暗号化ストリーム中に含まれる擬似コードを本来のスタートコードであると誤検出することを防ぐことができる。
(第2−6の例)
図13(a)〜(g)には、スタートコード部分の後ろに(同期マーカ+スタートコード)を付加して、(非ヘッダ部分+スタートコード)を暗号化する方式で、VOP単位で暗号化を行う態様例を示してある。なお、同期マーカは、例えば、4バイトから成る。
本例では、受信側において、受信ストリーム中のVOPデータの後にあるVOP(本例において、vop_start_codeを示す)をスタッフィングビットへ変換するため、送信側では、送信ストリーム中のスタートコード部分の後に付加する(同期マーカ+スタートコード)のスタートコードとしてVOPを用いる。
なお、本例では、[vop_start_code][数バイトのヘッダ][VOPデータ]の並びに[同期マーカ][vop_start_code]を挿入して、[vop_start_code][同期マーカ][vop_start_code][数バイトのヘッダ][VOPデータ]という並びを生成する。
受信側が暗号化ストリーム中から(同期マーカ+VOP)を正しく検出する場合について説明する。
図13(a)には、送信側における暗号化前の映像ストリームの一例を示してある。
図13(b)には、送信側においてVOPの後ろに同期マーカ(SYNC)及びVOPを挿入した映像ストリームの一例を示してある。
図13(c)には、送信側においてデータ(非暗号化データ)及びVOPを暗号化したものの一例を示してある。この暗号化ストリームでは、データとそれに続くVOPの部分が暗号化されて、暗号化データとなっている。なお、本例では、左側に位置するVOPに続く[数バイトのヘッダ]も暗号化されている。
図13(d)には、受信側において暗号化ストリーム中からVOPを検出する様子の一例を示してある。
図13(e)には、受信側において同期マーカ及びVOPの組を検出する様子の一例を示してある。
図13(f)には、受信側においてVOPと同期マーカ及びVOPの組との間のデータを復号化したものの一例を示してある。
図13(g)には、受信側においてVOPデータに続くVOPをスタッフィングビット(stuffig bit)へ変換したものの一例を示してある。
送信側の動作例を示す。
送信側では、図13(a)に示される映像ストリームの中から、4バイトのVOH(本例において、video_object_start_codeを示す)を検出し、次いで、4バイトのVOPを検出する。そして、次の4バイトのVOPを検出すると、図13(b)に示されるように、このVOPの後に(同期マーカ+VOP)を挿入し、図13(c)に示されるように、(VOPデータ+VOP)の部分を暗号鍵で暗号化する。これにより得られた暗号化ストリームをネットワーク2、13へ出力する。
受信側の動作例を示す。
受信側では、暗号化ストリームの中から4バイトのVOHを検出し、次いで、図13(d)に示されるように、4バイトのVOPを検出する。そして、図13(e)に示されるように、次に計8バイトの(同期マーカ+VOP)を検出すると、図13(f)に示されるように、検出したVOPと隣りの(同期マーカ+VOP)との間のデータを暗号鍵で復号する。
ここで、復号されたデータの最後にスタートコード(本例では、VOP)が出現するか否かを調べる。非ヘッダ部分(本例では、[数バイトのヘッダ]やVOPデータ)の中にはスタートコード(本例では、VOP)と一致するビット列は出現しないため、復号されたデータの最後にスタートコードが出現すれば、このスタートコードは、送信側において非ヘッダ部分の後ろに存在していたスタートコードであることが把握される。つまり、先に検出した(同期マーカ+スタートコード)は、暗号化データ中の擬似コードではなく、正しい(同期マーカ+スタートコード)であることを確認することができる。
そして、受信側では、図13(g)に示されるように、VOPデータの後にあるVOPをスタッフィングビットへ変換する。このようにスタッフィングビットへの変換を行うと、受信側では、スタートコード(つまり、ここでは、スタッフィングビット)を削除してその後ろを前に詰める必要を無くすことが可能である。受信側では、以後、同様な動作を繰り返して行う。
なお、受信側が暗号化データ中から誤って擬似コードを検出した場合については、例えば、図8(a)〜(e)を参照して説明されるのと同様である。
また、VOHが2回目以降に出現するところでは、上記とは異なる処理が行われ、具体的には、例えば、図13(b)においてVOHの後に(同期マーカ+VOH)を挿入し、図13(c)において(非暗号化データ+VOH)を暗号化し、図13(e)において(同期マーカ+VOH)を検出し、図13(g)においてVOPデータの後にあるVOHをスタッフィングビットへ変更する。また、受信側では、暗号化データを復号した際に、復号されたデータの最後にVOHが出現するか否かを調べることとなる。
このように、スタートコードの後ろに(同期マーカ+スタートコード)を付加して(非ヘッダ部分+スタートコード)を暗号化することで、暗号化ストリーム中に含まれる擬似コードを本来のスタートコードであると誤検出することを防ぐことができる。
(第2−7の例)
例えば、上記した(第2−1の例)や(第2−2の例)や(第2−5の例)では、送信側において、VOPデータの後ろにVOPを挿入し、当該VOPデータ及び当該VOPを暗号化している。
本例では、このような処理を(例えば同期マーカとは無関係に)独立して行う構成とする。また、受信側において、このように挿入されたVOPをスタッフィングビットへ変換する構成とすることもできる。
本例のような構成においても、復号したデータの最後にVOPが現れるか否かを判定することにより、復号時に検出されたスタートコード部分が正しいものであるか或いは擬似コードであるかを判定することができる。
(第2−8の例)
例えば、上記した(第2−1の例)や(第2−5の例)や(第2−7の例)では、送信側において映像ストリームに挿入する同期マーカ及びスタートコード(或いは、(第2−7の例)では、挿入するスタートコード)の当該スタートコードとしてVOPを用いたが、このスタートコードとしては、その代わりに、他のユニークコードなどを用いることも可能である。
本例では、このスタートコードの代わりとして、VOP以外のデータを用いた構成とする。
本例のような構成においても、例えば、予め送信側と受信側にこのコードとして同一のコード(同一のデータ)が設定されることにより、このコードを使用して処理を行うことができる。
(動作処理の例)
図14を参照して、本例の暗号化データ通信システムにおいて行われる動作処理の一例を示す。
送信側の動作処理例を示す。
送信側では、エンコーダ処理T1により圧縮して出力される映像ストリームを、スタートコードと同期マーカの挿入処理T2へ送る。スタートコードと同期マーカの挿入処理T2においては、上記の各例に示されるように、映像ストリームの所定の位置にスタートコードや同期マーカを付加する。このようにしてスタートコードや同期マーカが付加された映像ストリームを、暗号処理T3へ送る。暗号処理T3においては、この映像ストリームに対して暗号化を行う。暗号化された映像ストリーム(暗号化ストリーム)は、ネットワーク処理T11を介して受信側へ送られる。
受信側の動作処理例を示す。
受信側では、受信した暗号化された映像ストリーム(暗号化ストリーム)を、スタートコード検出処理T21へ送る。スタートコード検出処理T21においては、暗号化ストリームの中から、VOHやVOPや(同期マーカ+VOP)を検出する。復号処理T22においては、暗号化ストリームに対して、VOPと(同期マーカ+VOP)との間のデータを復号する。判定処理T23においては、復号された映像ストリームにおいて、復号したデータの最後にVOPが出現するか否かを判定し、VOPが出現したことを判定した場合には、スタートコード検出処理T21において正しく(同期マーカ+VOP)を検出したと判断する。この場合、判定処理T23においては、復号された映像ストリームを、スタートコードと同期マーカの削除・置き換え処理T24へ送る。
一方、判定処理T23により、復号された映像ストリームにおいて、復号したデータの最後にVOPが出現しないことを判定した場合には、スタートコード検出処理T21において誤って擬似コードを検出したと判断し、スタートコード検出処理T21に対して、誤って復号したデータを元の暗号化データへ戻すように命令を送る。この場合、スタートコード検出処理T21においては、この命令を受信したことに応じて、例えばメモリ(図示せず)に格納しておいた復号前の暗号化データを元の位置に挿入し、誤って検出した擬似コード以降の映像ストリームの中から、VOHやVOPや(同期マーカ+VOP)を検出することを行う。
スタートコードと同期マーカの削除・置き換え処理T24においては、上記の各例に示されるように、復号された映像ストリームに対して、スタートコードと同期マーカの削除を行い、或いは、スタートコードをスタッフィングビットへ置き換えて、デコーダ処理T25へ送る。デコーダ処理T25においては、復号された映像ストリームを伸長する。
図15を参照して、送信側において行われる動作処理の手順の一例を示す。
本例では、図7(a)〜(g)及び図8(a)〜(e)に示される場合を例として示す。
なお、本例において、変数aは状態変数であり、この値に応じて動作が切り替わる。
まず、動作処理が開始(スタート)すると、状態変数aを0に初期化する(ステップS1)。次いで、映像ストリームに対するスタートコード検出処理を行う(ステップS2)。
図7(a)に示されるような映像ストリームの中からVOHを検出すると(ステップS3)、状態変数aの値を検査(チェック)する(ステップS4)。ここでは、a=0であるため、この値aを1にした後に(ステップS5)、再び映像ストリームに対するスタートコード検出処理を行う(ステップS2)。
次に、映像ストリームの中からVOPを検出(1回目のVOPを検出)すると(ステップS9)、状態変数aの値をチェックする(ステップS10)。ここでは、a=1であるため、この値aを2にした後に(ステップS14)、再び映像ストリームに対するスタートコード検出処理を行う(ステップS2)。
次に、映像ストリームの中からVOPを検出(2回目以降のVOPの検出)すると(ステップS9)、状態変数aの値をチェックする(ステップS10)。ここでは、a=2であるため、図7(b)に示されるように、映像ストリームにVOPと同期マーカを挿入する(ステップS11)。次に、図7(c)に示されるように、(VOPデータ+挿入したVOP)を暗号化する(ステップS12)。次に、この暗号化データを含む(VOHから同期マーカまでの映像ストリーム)をネットワークへ出力して(ステップS13)、再び映像ストリームに対するスタートコード検出処理を行う(ステップS2)。
これ以降、映像ストリームの中からVOPを検出すると(ステップS9)、状態変数aの値をチェックし(ステップS10)、ここではa=2であるため、映像ストリームにVOPと同期マーカを挿入して(ステップS11)、(VOPデータ+挿入したVOP)を暗号化して(ステップS12)、この暗号化データを含む(VOPから同期マーカまでの映像ストリーム)をネットワークへ出力して(ステップS13)、再び映像ストリームに対するスタートコード検出処理を行う(ステップS2)、ことを繰り返して実行する。
そして、映像ストリームの中からVOHを検出すると(ステップS3)、状態変数aの値をチェックする(ステップS4)。ここでは、a=2であるため、映像ストリームにVOPと同期マーカを挿入し(ステップS6)、(VOPデータ+挿入したVOP)を暗号化し(ステップS7)、この暗号化データを含む(VOPから同期マーカまでの映像ストリーム)をネットワークへ出力する(ステップS8)。その後、状態変数aを1にして(ステップS5)、再び映像ストリームに対するスタートコード検出処理を行う(ステップS2)。
以後、以上と同様な動作処理を繰り返して行う。
図16及び図17を参照して、受信側において行われる動作処理の手順の一例を示す。
本例では、図7(a)〜(g)及び図8(a)〜(e)に示される場合を例として示す。
なお、本例において、変数aは状態変数であり、この値に応じて動作が切り替わる。
受信側では、動作処理が開始(スタート)すると、状態変数aを0に初期化する(ステップS21)。次いで、暗号化された映像ストリーム(暗号化ストリーム)に対するスタートコード検出処理を行う(ステップS22)。図7(d)に示されるような暗号化ストリームの中からVOHを検出すると(ステップS23)、状態変数aの値をチェックする(ステップS24)。ここでは、a=0であるため、この値aを1にした後に(ステップS25)、再び暗号化ストリームに対するスタートコード検出処理を行う(ステップS22)。
次に、状態変数aの値が1である時に(ステップS27)、暗号化ストリームの中からVOPを検出(1回目のVOPを検出)すると(ステップS28)、状態変数aの値を2にした後に(ステップS29)、再び暗号化ストリームに対するスタートコード検出処理を行う(ステップS22)。
次に、状態変数aの値が2である時に(ステップS27)、図7(e)に示されるように、暗号化ストリームの中から(同期マーカ+VOP)を検出(2回目以降のVOPを検出)すると(ステップS30)、所定の処理Aを行う(ステップS31)。
処理Aにおいては、図7(f)に示されるように、VOPと(同期マーカ+VOP)との間のデータを復号し(ステップS41)、復号されたデータの最後がスタートコード(本例では、VOP)であれば(ステップS42)、正しく(同期マーカ+VOP)を検出したため、図7(g)に示されるように、映像ストリームから復号されたデータの最後にあるVOPと同期マーカを削除した後に(ステップS44)、(VOHからVOPデータまでの映像ストリーム)をデコーダ15へ送る(ステップS45)。なお、図12(a)〜(g)や図13(a)〜(g)に示される例では、復号されたデータの最後にあるVOPをスタッフィングビットへ置き換えることを行い(ステップS44)、(VOHから同期マーカまでの映像ストリーム)をデコーダ15へ送る(ステップS45)。一方、復号されたデータの最後がスタートコード(本例では、VOP)でなければ(ステップS42)、誤って擬似コードを検出したため、復号したデータを元の暗号化データへ戻す(ステップS43)
このような処理Aを行った後に、再び暗号化ストリームに対するスタートコード検出処理を行う(ステップS22)。
これ以降、暗号化ストリームの中から(同期マーカ+VOP)を検出すると(ステップS30)、処理Aを行う(ステップS31)。処理Aにおいては、上記と同様に、VOPと(同期マーカ+VOP)との間のデータを復号し(ステップS41)、復号されたデータの最後がスタートコード(本例では、VOP)であれば(ステップS42)、正しく(同期マーカ+VOP)を検出したため、映像ストリームから復号されたデータの最後にあるVOPと同期マーカを削除した後に(ステップS44)、(VOPからVOPデータまでの映像ストリーム)をデコーダ15へ送る(ステップS45)。なお、図12(a)〜(g)や図13(a)〜(g)に示される例では、復号されたデータの最後にあるVOPをスタッフィングビットへ置き換えることを行い(ステップS44)、(VOPから同期マーカまでの映像ストリーム)をデコーダ15へ送る(ステップS45)。
この後、再び暗号化ストリームに対するスタートコード検出処理を行う(ステップS22)。
次に、暗号化ストリームの中からVOHを検出すると(ステップS23)、状態変数aの値をチェックする(ステップS24)。ここでは、a=2であるため、上記と同様な処理A’を行う(ステップS26)。
処理A’においては、上記と同様に、VOPと(同期マーカ+VOH)との間のデータを復号し、復号されたデータの最後がスタートコード(本例では、VOP)であれば、正しく(同期マーカ+VOH)を検出したため、映像ストリームから復号されたデータの最後にあるVOPと同期マーカを削除した後に、(VOPからVOPデータまでの映像ストリーム)をデコーダ15へ送る。なお、図12(a)〜(g)や図13(a)〜(g)に示される例では、復号されたデータの最後にあるVOPをスタッフィングビットへ置き換えることを行い、(VOPから同期マーカまでの映像ストリーム)をデコーダ15へ送る。
この後、状態変数aを1にし(ステップS25)、再び暗号化ストリームに対するスタートコード検出処理を行う(ステップS22)。
以後、以上と同様な動作処理を繰り返して行う。
以上の各例に示されるように、本例の暗号化データ通信システムでは、送信側において、映像ストリームの非ヘッダ部分の後にスタートコード及び同期マーカ(或いは、スタートコードのみ)を挿入し、当該非ヘッダ部分及び当該スタートコードを暗号化する。或いは、本例の暗号化データ通信システムでは、送信側において、映像ストリームのスタートコード部分(ここで、スタートコード部分Pと言う)の後に同期マーカ及びスタートコードを挿入し、当該非ヘッダ部分及び当該スタートコード部分(スタートコード部分P)を暗号化する。なお、同期マーカとしては、例えば、4バイトのデータ(0xXX XX XX XX)が用いられ、一例として、スタッフィングビットを用いることも可能である。
また、本例の暗号化データ通信システムでは、受信側において、暗号化データを復号した時に、非ヘッダ部分の後にあるスタートコード及び同期マーカ(或いは、スタートコードのみ)を削除する。或いは、本例の暗号化データ通信システムでは、受信側において、暗号化データを復号した時に、スタートコードの後にある同期マーカ及びスタートコード(或いは、スタートコードのみ)を削除する。或いは、本例の暗号化データ通信システムでは、受信側において、暗号化データを復号した時に、非ヘッダ部分の後にあるスタートコードをスタッフィングビットへ置き換える。
また、本例の暗号化データ通信システムでは、受信側において、暗号化データを復号した時に、復号したデータの最後にスタートコードが現れた場合には、正しい同期マーカ及びスタートコードの組を検出して復号したと判定する一方、復号したデータの最後にスタートコードが現れない場合には、擬似コードを検出して復号したと判定して、当該復号したデータを元の暗号化データへ戻して、再び同期マーカ及びスタートコードの組を検索する。
従って、本例の暗号化データ通信システムでは、例えば、上記のような同期マーカを設けてスタートコード長を実質的に長くすることにより、暗号化ストリーム中の非ヘッダ部分(本例では、[数バイトのヘッダ]を含み、VOPヘッダを含む場合がある)にそのときに使用するスタートコード部分(本例では、同期マーカとVOPとの組み合わせ)と同一の値(擬似コード)が現れる確率を小さくすることができる。また、本例の暗号化データ通信システムでは、例えば、復号時に、正しい同期マーカ及びスタートコード(或いは、スタートコードのみ)を検出したか否かを判定することにより、擬似コードを誤検出したまま放置することを防ぐことができる。これにより、例えば、暗号化ストリームを受信側のパーソナルコンピュータで復号する際に、暗号化ストリーム中に含まれる擬似コードを本来のスタートコードであると誤検出することを防ぐことができ、画像の再生等の精度を向上させることができる。
なお、第2実施例では、主としてVOP単位で暗号化を行う場合を示したが、例えば、上記した第1実施例の場合と同様に、VOH単位で暗号化を行う態様に適用して実施することもできる。
また、第2実施例では、「判定用マーカ(本例では、スタートコード)と同期マーカとスタートコードの並び」を使用する場合を示したが、例えば、「判定用マーカ(例えば、スタートコード)とスタートコードと同期マーカの並び」を使用することもでき、つまり、同期マーカの挿入位置としては、スタートコードの前ばかりではなく、スタートコードの後ろでもよい。但し、図12や図13に示されるようにスタッフィングビットへの変換が行われる場合には、「判定用マーカ(本例では、スタートコードであり、スタッフィングビットへ変換される)と同期マーカとスタートコードの並び」を使用する。
ここで、本発明に係る暗号化データ通信システムや送信側装置や受信側装置などの構成としては、必ずしも以上に示したものに限られず、種々な構成が用いられてもよい。また、本発明は、例えば、本発明に係る処理を実行する方法或いは方式や、このような方法や方式を実現するためのプログラムや当該プログラムを記録する記録媒体などとして提供することも可能であり、また、種々な装置やシステムとして提供することも可能である。
また、本発明の適用分野としては、必ずしも以上に示したものに限られず、本発明は、種々な分野に適用することが可能なものである。例えば、本発明を映像の監視システムなどに適用することもできる。
また、以上では、MPEG−4の符号化方式に本発明を適用した場合を示したが、例えば、MPEG−2やH.264などの他の符号化方式に本発明を適用することも可能である。なお、MPEG−4におけるスタッフィングビットは、MPEG−2においてはスタッフィングバイトに相当し、H.264においては同様な機能としてゼロバイト等を用いることができる。
また、本発明に係る暗号化データ通信システムや送信側装置や受信側装置などにおいて行われる各種の処理としては、例えばプロセッサやメモリ等を備えたハードウエア資源においてプロセッサがROM(Read Only Memory)に格納された制御プログラムを実行することにより制御される構成が用いられてもよく、また、例えば当該処理を実行するための各機能手段が独立したハードウエア回路として構成されてもよい。
また、本発明は上記の制御プログラムを格納したフロッピー(登録商標)ディスクやCD(Compact Disc)−ROM等のコンピュータにより読み取り可能な記録媒体や当該プログラム(自体)として把握することもでき、当該制御プログラムを当該記録媒体からコンピュータに入力してプロセッサに実行させることにより、本発明に係る処理を遂行させることができる。
本発明の実施例に係る暗号化データ通信システムの一例を示す図である。 暗号化データ通信システムの構成例を示す図である。 VOP単位の暗号化において暗号化した非ヘッダ部分の後ろに同期マーカを付加する態様の一例を示す図である。 VOH単位の暗号化において暗号化した非ヘッダ部分の後ろに同期マーカを付加する態様の一例を示す図である。 VOP単位の暗号化において暗号化した非ヘッダ部分の後ろに同期マーカとしてスタッフィングビットを付加する態様の一例を示す図である。 VOH単位の暗号化において暗号化した非ヘッダ部分の後ろに同期マーカとしてスタッフィングビットを付加する態様の一例を示す図である。 VOP単位の暗号化において非ヘッダ部分の後ろにスタートコード及び同期マーカを付加して非ヘッダ部分及びスタートコードを暗号化する態様の一例を示す図である。 VOP単位の暗号化において非ヘッダ部分の後ろにスタートコード及び同期マーカを付加して非ヘッダ部分及びスタートコードを暗号化する態様の一例を示す図である。 VOP単位の暗号化において非ヘッダ部分の後ろにスタートコード及び同期マーカを付加して非ヘッダ部分及びスタートコードを暗号化する態様の他の一例を示す図である。 VOP単位の暗号化においてスタートコードの後ろに同期マーカ及びスタートコードを付加して非ヘッダ部分及びスタートコードを暗号化する態様の一例を示す図である。 VOP単位の暗号化においてスタートコードの後ろに同期マーカ及びスタートコードを付加して非ヘッダ部分及びスタートコードを暗号化する態様の他の一例を示す図である。 VOP単位の暗号化において非ヘッダ部分の後ろにスタートコード及び同期マーカを付加して非ヘッダ部分及びスタートコードを暗号化する態様の他の一例を示す図である。 VOP単位の暗号化においてスタートコードの後ろに同期マーカ及びスタートコードを付加して非ヘッダ部分及びスタートコードを暗号化する態様の他の一例を示す図である。 暗号化データ通信システムにより行われる動作処理の一例を示す図である。 送信側により行われる動作処理の手順の一例を示す図である。 受信側により行われる動作処理の手順の一例を示す図である。 受信側により行われる動作処理の手順の一例を示す図である。 映像ストリームの暗号化及び復号の態様例を示す図である。 暗号化ストリーム中の擬似コードの誤検出の態様例を示す図である。
符号の説明
1・・ネットワークカメラ、 2、13・・ネットワーク、 3・・端末装置、 11・・エンコーダ、 12・・暗号化部、 14・・復号部、 15・・デコーダ、 21、31・・初期ベクトル部、 22、32・・鍵部、 23、33・・乱数発生器、 24、34・・演算器、

Claims (7)

  1. ユニークなスタートコードを含む圧縮ビデオストリームを暗号化した暗号化ストリームを送信側装置から受信側装置へ通信する暗号化データ通信システムにおいて、
    前記送信側装置は、前記スタートコードを含むヘッダ部に対応する非ヘッダ部の後に所定の判定用マーカを挿入する判定用マーカ挿入手段と、
    前記非ヘッダ部と当該非ヘッダ部の後に挿入された前記判定用マーカとを、乱数との排他的論理和により暗号化する暗号処理手段と、
    前記暗号化された前記非ヘッダ部及び前記判定用マーカと、暗号化されていない前記スタートコードと、当該スタートコードの前に配置された同期マーカと、を含む暗号化ストリームを送信する送信手段と、を備え、
    前記受信側装置は、前記暗号化ストリームを受信する受信手段と、
    前記受信された暗号化ストリームから、前記同期マーカと前記スタートコードの並びを検出する検出手段と、
    前記受信された暗号化ストリームのうち、前記同期マーカと前記スタートコードの並びの検出位置に対応する部分を復号する復号手段と、
    前記復号手段により前記非ヘッダ部と前記判定用マーカの並びが復号されている場合には正しいスタートコードが検出されたと判定する一方、他の場合には擬似コードが検出されたと判定する判定手段と、
    前記判定手段により正しいスタートコードが検出されたと判定された場合に、前記非ヘッダ部と並んで復号された前記判定用マーカ及び当該判定用マーカに続く前記同期マーカの少なくとも一方を、削除又は前記圧縮ビデオストリームの伸張時に無視されるスタッフィングコードに置換する削除手段と、を備えた、
    ことを特徴とする暗号化データ通信システム。
  2. 請求項1に記載の暗号化データ通信システムにおいて、
    前記送信側装置は、暗号化する前の前記圧縮ビデオストリームの前記スタートコードの前に、前記同期マーカを挿入する同期マーカ挿入手段を備えた、
    ことを特徴とする暗号化データ通信システム。
  3. 請求項1に記載の暗号化データ通信システムにおいて、
    前記圧縮ビデオストリームは、MPEG方式で圧縮されたものであり、
    前記スタートコード及び前記判定用マーカはそれぞれ、前記MPEG方式の圧縮ビデオストリームの非ヘッダ部に出現することが禁止された、4バイトのビットパターンでそれぞれ構成され、
    前記同期マーカは、前記スタッフィングコードである、
    ことを特徴とする暗号化データ通信システム。
  4. 請求項1又は請求項2に記載の暗号化データ通信システムにおいて、
    前記削除手段は、前記判定用マーカ及び当該判定用マーカに続く前記同期マーカを一体として、前記スタッフィングコードに置換する、
    ことを特徴とする暗号化データ通信システム。
  5. 請求項3又は請求項4に記載の暗号化データ通信システムにおいて、
    前記圧縮ビデオストリームは、MPEG−4方式で圧縮されたものであり、
    前記スタートコード及び前記判定用マーカはそれぞれ、vop_start_code、video_object_start_code、VOLヘッダのスタートコード、或いはUser data start codeのいずれかである、
    ことを特徴とする暗号化データ通信システム。
  6. 請求項1乃至請求項5のいずれか1項に記載の暗号化データ通信システムにおいて、
    前記受信側装置は、前記判定手段により前記擬似コードが検出されたと判定された場合に、前記同期マーカと前記擬似コードの並びの検出位置に対応して復号された部分を復号前の状態に戻す復号取消手段を備え、
    前記検出手段は、前記暗号化ストリームのうち、前記復号前の状態に戻された部分以降から、前記同期マーカと前記スタートコードの並びを検出する、
    ことを特徴とする暗号化データ通信システム。
  7. ユニークなスタートコードを含むヘッダ部と当該ヘッダ部に対応する非ヘッダ部とを有する圧縮ビデオストリームを暗号化して、送信側装置から受信側装置へ通信する暗号化データ通信システムにおいて、
    前記送信側装置は、前記ビデオストリームにもともと含まれる前記スタートコードの後に、所定の同期マーカと、前記スタートコードと同じスタートコードとの並びを挿入するマーカ挿入手段と、
    前記圧縮ビデオストリームのうち、前記非ヘッダ部と、当該非ヘッダ部に続く前記もともと含まれるスタートコードとを、乱数との排他的論理和により暗号化する暗号処理手段と、
    前記暗号化された前記非ヘッダ部及び前記もともと含まれるスタートコードと、暗号化されない前記同期マーカ及び前記挿入されたスタートコードと、を含む暗号化ストリームを送信する送信手段と、を備え、
    前記受信側装置は、前記暗号化ストリームを受信する受信手段と、
    前記受信された暗号化ストリームから、前記同期マーカと前記スタートコードの並びを検出する検出手段と、
    前記受信された暗号化ストリームのうち、前記同期マーカと前記スタートコードの並びの検出位置に対応する部分を復号する復号手段と、
    前記復号手段により前記非ヘッダ部と前記スタートコードの並びが復号されている場合には正しいスタートコードが検出されたと判定する一方、他の場合には擬似コードが検出されたと判定する判定手段と、
    前記判定手段により正しいスタートコードが検出されたと判定された場合に、前記非ヘッダ部と並んで復号された前記もともと含まれるスタートコード及び当該スタートコードに続く前記同期マーカを、削除又は前記圧縮ビデオストリームの伸張時に無視されるスタッフィングコードに置換する削除手段と、を備えた
    ことを特徴とする暗号化データ通信システム。
JP2005097250A 2005-03-30 2005-03-30 暗号化データ通信システム Expired - Fee Related JP4806204B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005097250A JP4806204B2 (ja) 2005-03-30 2005-03-30 暗号化データ通信システム
US11/362,081 US7668314B2 (en) 2005-03-30 2006-02-27 System and method for communicating encrypted data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005097250A JP4806204B2 (ja) 2005-03-30 2005-03-30 暗号化データ通信システム

Publications (2)

Publication Number Publication Date
JP2006279665A JP2006279665A (ja) 2006-10-12
JP4806204B2 true JP4806204B2 (ja) 2011-11-02

Family

ID=37070514

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005097250A Expired - Fee Related JP4806204B2 (ja) 2005-03-30 2005-03-30 暗号化データ通信システム

Country Status (2)

Country Link
US (1) US7668314B2 (ja)
JP (1) JP4806204B2 (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8363161B2 (en) * 2006-05-26 2013-01-29 Broadcom Corporation Systems, methods, and apparatus for synchronization of audio and video signals
JP4410792B2 (ja) * 2006-12-21 2010-02-03 株式会社日立コミュニケーションテクノロジー 暗号化装置
US8256005B2 (en) * 2007-01-08 2012-08-28 Apple Inc. Protection of audio or video data in a playback device
US8200959B2 (en) 2007-06-28 2012-06-12 Cisco Technology, Inc. Verifying cryptographic identity during media session initialization
US8417942B2 (en) * 2007-08-31 2013-04-09 Cisco Technology, Inc. System and method for identifying encrypted conference media traffic
US20090169001A1 (en) * 2007-12-28 2009-07-02 Cisco Technology, Inc. System and Method for Encryption and Secure Transmission of Compressed Media
US8837598B2 (en) * 2007-12-28 2014-09-16 Cisco Technology, Inc. System and method for securely transmitting video over a network
JP2009200595A (ja) * 2008-02-19 2009-09-03 Fujitsu Ltd 署名管理プログラム、署名管理方法及び署名管理装置
IL199616A0 (en) 2009-06-28 2010-05-17 Chaim Shen Orr Pattern-free encryption
JP4861456B2 (ja) * 2009-07-15 2012-01-25 富士通株式会社 データレート調整装置、データ配信システム、及びプログラム
JP5163727B2 (ja) * 2010-10-12 2013-03-13 富士通株式会社 署名管理方法、署名管理システム
US9066117B2 (en) * 2012-02-08 2015-06-23 Vixs Systems, Inc Container agnostic encryption device and methods for use therewith
EP2815578B1 (en) * 2012-02-15 2019-01-16 Irdeto B.V. Generating content data for provision to receivers
US12028333B2 (en) * 2013-05-14 2024-07-02 Kara Partners Llc Systems and methods for variable-length encoding and decoding for enhancing computer systems
US11032058B2 (en) * 2016-10-17 2021-06-08 The Government Of The United States Of America, As Represented By The Secretary Of The Navy Controlled chaotic system for low probability of detection (LPD) communication
WO2020079676A1 (en) * 2018-10-18 2020-04-23 Sternum Ltd. Applying security mitigation measures for stack corruption exploitation in intermediate code files
GB2580706A (en) * 2019-01-28 2020-07-29 Sony Corp Video signal receiving apparatus, transmitting apparatus and methods
GB2580707A (en) * 2019-01-28 2020-07-29 Sony Corp Video signal receiving apparatus, transmitting apparatus and methods
CN114244597B (zh) * 2021-12-13 2024-05-24 西南技术物理研究所 一种加密通信装置及加密通信方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55148255U (ja) * 1979-04-11 1980-10-24
JPS62109446A (ja) * 1985-11-07 1987-05-20 Nec Corp デ−タ変換器
JPH0583696A (ja) * 1991-06-07 1993-04-02 Sony Corp 画像符号化装置
US5517502A (en) * 1995-03-02 1996-05-14 Zenith Electronics Corp. Upstream transmission using multiple transmission tags and downstream acknowledgements in conditional access packets
JP2004304851A (ja) * 1996-09-02 2004-10-28 Toshiba Corp 情報伝送システムにおける復号化装置
JPH1115642A (ja) * 1997-06-26 1999-01-22 Sony Corp スクランブル装置およびデスクランブル装置ならびにその方法
JP3814966B2 (ja) * 1997-08-14 2006-08-30 ソニー株式会社 記録媒体、データ伝送装置、データ受信装置及び光ディスク装置
JP2000092013A (ja) * 1998-09-08 2000-03-31 Hitachi Ltd 送信装置ならびに受信装置およびこれを用いたシステム
JP2001060254A (ja) * 1999-06-15 2001-03-06 Matsushita Electric Ind Co Ltd コンテンツデータ中の特定領域に対して暗号処理を施す暗号処理装置
JP2001086481A (ja) * 1999-07-13 2001-03-30 Matsushita Electric Ind Co Ltd パケット分離装置、ディジタル信号転送システム、暗号化装置、媒体、および情報集合体
US7089485B2 (en) * 2000-02-03 2006-08-08 Agere Systems Inc. Simple link protocol providing low overhead coding for LAN serial and WDM solutions
JP2002016919A (ja) * 2000-04-28 2002-01-18 Sony Corp 情報送信方法及び装置、情報受信方法及び装置、情報記録方法及び装置、並びに、情報記録再生方法及び装置
JP3370319B1 (ja) * 2000-09-01 2003-01-27 松下電器産業株式会社 光ディスク媒体ならびに光ディスク再生装置および記録装置
JP3937788B2 (ja) * 2001-04-19 2007-06-27 ソニー株式会社 データ記録方法及び装置、データ再生方法及び装置、データ編集方法及び装置
AU2002364752C1 (en) * 2001-12-19 2010-05-13 Irdeto Access B.V. Digital content distribution system
US20040085446A1 (en) * 2002-10-30 2004-05-06 Park Ho-Sang Method for secured video signal transmission for video surveillance system

Also Published As

Publication number Publication date
US20060222178A1 (en) 2006-10-05
JP2006279665A (ja) 2006-10-12
US7668314B2 (en) 2010-02-23

Similar Documents

Publication Publication Date Title
JP4806204B2 (ja) 暗号化データ通信システム
KR100734577B1 (ko) 암호화방법, 암호화장치, 데이터축적 전송장치 및 데이터 전송시스템
JP4188958B2 (ja) 暗号化方法及びデータ配信システム及び暗号化装置及びデータ蓄積配信装置
US9300465B2 (en) Method, system and program product for attaching a title key to encrypted content for synchronized transmission to a recipient
US7151832B1 (en) Dynamic encryption and decryption of a stream of data
JP5058997B2 (ja) コンテンツデータ、送信装置、受信装置および復号方法
US20020129243A1 (en) System for selective encryption of data packets
US7581094B1 (en) Cryptographic checksums enabling data manipulation and transcoding
US7706532B2 (en) Encryption/decryption device and method
KR101139580B1 (ko) 송신 장치 및 수신 장치, 및, 데이터 전송 시스템
EP2449719B1 (en) Pattern-free encryption
US4856063A (en) No-overhead synchronization for cryptographic systems
EP1407574B1 (en) Streamcipher synchronisation information which is redundant in next packet of encrypted frame
JP2005503714A (ja) 新しい暗号化キーのためのフィンガープリント、制御信号
JP4499631B2 (ja) 画像受信装置及びプログラム
JP4237131B2 (ja) 暗号化データ通信装置
JPH11225140A (ja) データ暗号化装置および復号装置と、そのプログラム記録媒体
JP2009213083A (ja) 画像圧縮方法及び画像圧縮装置
JP2002247542A (ja) 映像秘匿装置
KR20240022085A (ko) 영상 패킷의 암호화를 지원하는 네트워크 시스템, 장치 및 그 방법
JP2005318041A (ja) ストリームデータ送信装置、ストリームデータ受信装置、及びストリームデータ送受信システム
KR20070025470A (ko) 동기식 스트림 암호 통신을 위한 초기 동기 검출 방법
JP2006339963A (ja) 暗号通信システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070928

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20070928

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20071023

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101206

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20101226

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110111

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110308

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20110509

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110726

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110812

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4806204

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140819

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees