(57)【要約】【課題】  乱数列を用いて暗号化されたデータのネットワーク伝送において、パケットロスが発生しても受信側と送信側との同期をとって復号化を継続させるようにする。【解決手段】  送信装置１１は、入力ストリームを複数のブロックデータに分割して各ブロックデータ毎にそのデータサイズに基づいた回数の乱数を発生させて暗号データを生成し、この暗号データと既に受信装置２１に送信し終えた送信データのデータサイズ累計とを１つのパケットデータに形成して送出し、受信装置２１は、ネットワーク３１を介して入力されたパケットデータ毎に暗号データとデータサイズ累計とを抽出し、このデータサイズ累計と乱数発生回数記憶部２６に記憶された乱数発生回数とを比較してパケットロス量を検出し、このロス量に応じて送信装置１１と受信装置２１との乱数発生の同期をとるように構成した。【選択図】      図１
2005318041.tif 000002
【特許請求の範囲】
【請求項１】
入力されたストリームをパケットデータに変換してネットワークに接続されたストリームデータ受信装置に送信するストリームデータ送信装置であって、
前記入力ストリームを複数のブロックデータに分割して、前記それぞれのブロックデータ毎に各ブロックのデータサイズに基づいた回数の乱数を発生させて暗号化処理を行う暗号化部と、
前記それぞれのブロックデータ毎に、前記暗号化部から得られた暗号データと既に前記ストリームデータ受信装置に送信し終えた送信データのデータサイズ累計情報とを１つのパケットデータに形成するパケット形成部とを具備するように構成したストリームデータ送信装置。
【請求項２】
ネットワークに接続されたストリームデータ送信装置から送信されたパケットデータを受信するストリームデータ受信装置であって、
受信した前記パケットデータ毎に暗号データとデータサイズ累計情報とを抽出するパケット分離部と、
前記抽出された暗号データを、この暗号データのデータサイズに基づいた回数の前記ストリームデータ送信装置にて発生させた乱数と同一の乱数を発生させて復号化処理を行う復号化部と、
前記抽出されたデータサイズ累計情報と前記復号化部で発生させた乱数の発生回数累計とを比較する比較部とを具備し、
前記比較部の比較結果により、前記データサイズ累計情報が前記乱数の発生回数累計よりも大きい場合は、パケットロスが発生したと判断して前記比較の差分値に基づいた回数分だけ前記復号化部の乱数を発生させて消費させるように構成したストリームデータ受信装置。
【請求項３】
入力されたストリームをパケットデータとしてネットワークに送出するストリームデータ送信装置と、前記送信されたパケットデータが供給されて前記ストリームを得るストリームデータ受信装置とからなるストリームデータ送受信システムであって、
前記ストリームデータ送信装置は、前記入力ストリームを複数のブロックデータに分割して、前記それぞれのブロックデータ毎に各ブロックのデータサイズに基づいた回数の乱数を発生させて暗号化処理を行う暗号化部と、
前記それぞれのブロックデータ毎に、前記暗号化部から得られた暗号データと既に前記ストリーム受信装置に送信し終えた送信データのデータサイズ累計情報とを１つのパケットデータに形成するパケット形成部とを具備し、
前記ストリームデータ受信装置は、受信した前記パケットデータ毎に前記暗号データと前記データサイズ累計情報とを抽出するパケット分離部と、
前記抽出された暗号データをこの暗号データのデータサイズに基づいた回数の前記暗号化部にて発生させた乱数と同一の乱数を発生させて復号化処理を行う復号化部と、
前記抽出されたデータサイズ累計情報と前記復号化部で発生させた乱数の発生回数累計とを比較する比較部とを具備すると共に、
前記比較部の比較結果により、前記データサイズ累計情報が前記乱数の発生回数累計よりも大きい場合は、パケットロスが発生したと判断して前記比較の差分値に基づいた回数分だけ前記復号化部の乱数を発生させて消費させるように構成したストリームデータ送受信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
乱数列を使用して暗号化された映像や音声等のストリームデータをネットワークを介して送受信するためのストリームデータ送信装置、ストリームデータ受信装置、及びストリームデータ送受信システムに関し、特にネットワーク伝送においてパケットロスが発生した場合でも、受信側のデータ復号化処理を断絶することなく処理させることが可能なストリームデータ送信装置、ストリームデータ受信装置、及びストリームデータ送受信システムに関する。
【背景技術】
【０００２】
近年の情報のデジタル化やネットワークの普及、特にブロードバンドネットワーク等の発達により、従来はアナログデータとして放送されていた映像情報や音声情報が、デジタル化されたストリームデータとしてネットワーク上を伝送されるようになってきた。
ところで、例えば光ファイバーやＡＤＳＬ等による広域ネットワークにストリームデータを伝送する場合、このネットワークにアクセス可能な誰もがストリームデータを取得できては困る場合がある。例えば、著作権で保護された映像情報や音声情報等のストリームデータが伝送された場合に、このストリームを視聴する権利を有さない第三者が勝手に取得し利用できるようであっては、正当権利者の利益を損なうため問題となる。
【０００３】
そこで、ネットワークを介したストリーム等伝送データの不正取得を防止するために、送信するデータを暗号化して伝送し、受信側で復号化して元データを復元させる技術が知られている。
【０００４】
ストリームデータを暗号化して送信し、この送信データを受信して復号化する具体的な例の１つとして、送信側ではストリームデータを所定の大きさに分割して送信すべきブロックデータとし、このブロックデータと乱数列とを排他的論理和（ＸＯＲ）演算させた結果を暗号データとして送信し、この暗号データを受信した受信側でも同一の乱数列を用いてこの受信データとＸＯＲ演算を行うことで復号データを得るという技術が知られている。
【０００５】
この乱数列を用いて暗号化されたストリームデータをネットワーク伝送させる従来のストリームデータ送受信システムの概略システム構成例を図４に示す。同図に示したように、従来のストリームデータ送受信システムは、送信装置４１と受信装置４２とがネットワーク４３を介してそれぞれ接続されたものである。送信装置４１は送信すべきストリームデータ（平文）と送信装置４１及び受信装置４２で共通に有する乱数列とをＸＯＲ演算したデータを暗号データとして第１のネットワークインターフェース（Ｉ／Ｆ）部を介してネットワーク４３に送出する。そして、受信装置４２はネットワーク４３を介して供給された暗号データを第２のネットワークＩ／Ｆ部を通じて入力し、前記暗号化処理で用いたのと同一の乱数列を用いてＸＯＲ演算処理することによって復号化して元の平文を得るものである。
【０００６】
ところで、ストリームデータをＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）パケット単位で伝送するネットワーク伝送においては、ネットワークのトラフィックの影響等によってパケットデータが欠落する等のパケットロスが発生することがある。例えば、映像データや音声データのストリームデータを暗号化せずに伝送した場合にこのパケットロスの問題が発生すると、受信側ではこのロスが発生している期間だけストリームデータを受け取ることができないため、再生した際に映像や音声が途切れてしまうこととなる。
【０００７】
一方、前述したようにストリームデータに乱数列を用いてＸＯＲ演算処理を施して送信したときにパケットロスが発生した場合、そのロスが発生した期間はストリームデータを受信することができないため、映像や音声を再生できなくなってしまうのはもちろんのこと、送信側と受信側とで用いる乱数列の同期がとれなくなってしまうため、パケットロスが発生しなくなっても受信側では正常なデータの復元ができなくなってしまい、映像や音声が正しく再生できない状態が継続してしまうという問題を有していた。
【０００８】
さらに、具体的に説明するために、従来のストリームデータ送受信システムを用いたネットワーク伝送中にパケットロスが発生した場合の様子を模式的に図５に示す。同図は、例えば送信装置４１がパケットＡ，Ｂ，Ｃ，Ｄ，及びＥをパケットＡを先頭とした順番でネットワーク４３を介して受信装置４２に送信したことを示したものである。このパケットデータ送信において、同図に示すようにパケットＢが伝送上のトラブル等の理由で欠落した場合、このパケットＢがパケットロスとなる。パケットＢが欠落すると、受信装置４２はパケットＡ，Ｃ，Ｄ，及びＥをパケットＡを先頭とした順番で受信するため次のような復号化処理が行われる。
パケットＡの処理：パケットＡ用の乱数列で復号化され元データが復元される。
パケットＢの処理：パケットロスが発生したため復号化できず元データは復元されない。
パケットＣの処理：パケットＢ用の乱数列で復号化され、元データが正しく復元されない。
パケットＤの処理：パケットＣ用の乱数列で復号化され、元データが正しく復元されない。
パケットＥの処理：パケットＤ用の乱数列で復号化され、元データが正しく復元されない。
このように、従来の共通鍵暗号方式によるストリーム送受信システムにおいては、１回でもパケットロスが発生すると送信側と受信側とで使用する乱数列の同期がとれなくなるため、同期乱れが発生した箇所以降の正常な復号化ができなくなりこの障害が永続してしまうということになる。
【０００９】
そこで、特許文献１には、ネットワークを介したデータ送受信処理において、パケットロスが検出された場合にロスしたパケット数分だけダミーパケットを生成させてロスが発生したと判断された位置に挿入することで、送信装置から送出したパケット数と受信装置で受信したパケット数とを同一に保たせることを可能にした発明が記載されている。この発明によれば、パケットロスが発生しても受信側の復号化が断絶することを防ぐことを可能としている。
【特許文献１】特開２００３−２８３５３９号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、特許文献１に記載された発明では、パケットロスが発生した位置にダミーパケットを挿入して送信側と受信側とのパケット数の同一を保たせるようにしているため、前述したように復号化の断絶を防止する効果はあるものの、ダミーパケット部の復号化が正しく行われずエラーが発生してしまう問題があった。
また、パケットロスが発生したと判断した位置にダミーパケットを挿入させるために、受信した複数のパケットデータを予め付与されたシーケンス番号順に並べ替える必要があり、受信端末側は複数のパケットデータを保存するための記憶領域を設けなければならず記憶容量を大きく確保しなければならなかった。
【００１１】
さらに、上記のようなパケットデータにシーケンス番号を付与して乱数列発生の同期をとるシステムにおいては、ロスパケット数だけでなくロスパケットサイズを知る必要があるため、パケットサイズは一定にしておく必要がある。よって、送信側のストリームデータの容量により前記一定のパケットサイズに満たないパケットが発生した場合、送信側はこのパケットにダミーデータを挿入する等してパケットサイズを一定に保つ必要が生じるため、無用なデータも送信しなければならずデータの伝送効率が悪くなるという問題があった。
【００１２】
そこで、本発明は上述した問題に鑑みてなされたものであり、乱数列を使用して暗号化されたデータをネットワークを介して伝送したときにパケットロスが発生したとしても、受信側ではダミーパケットを挿入することなく、また受信パケットの並べ替えを行うことなく、更に無駄なダミーデータを挿入することなく暗号データの受信と復号化を継続させることが可能なストリームデータ送信装置、ストリームデータ受信装置、及びストリームデータ送受信システムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明は、上述した課題を解決するために以下（１）乃至（３）の手段より構成したものである。
（１）入力されたストリームをパケットデータに変換してネットワークに接続されたストリームデータ受信装置に送信するストリームデータ送信装置であって、前記入力ストリームを複数のブロックデータに分割して、前記それぞれのブロックデータ毎に各ブロックのデータサイズに基づいた回数の乱数を発生させて暗号化処理を行う暗号化部と、前記それぞれのブロックデータ毎に、前記暗号化部から得られた暗号データと既に前記ストリームデータ受信装置に送信し終えた送信データのデータサイズ累計情報とを１つのパケットデータに形成するパケット形成部とを具備するように構成したストリームデータ送信装置。
【００１４】
（２）ネットワークに接続されたストリームデータ送信装置から送信されたパケットデータを受信するストリームデータ受信装置であって、受信した前記パケットデータ毎に暗号データとデータサイズ累計情報とを抽出するパケット分離部と、前記抽出された暗号データを、この暗号データのデータサイズに基づいた回数の前記ストリームデータ送信装置にて発生させた乱数と同一の乱数を発生させて復号化処理を行う復号化部と、前記抽出されたデータサイズ累計情報と前記復号化部で発生させた乱数の発生回数累計とを比較する比較部とを具備し、前記比較部の比較結果により、前記データサイズ累計情報が前記乱数の発生回数累計よりも大きい場合は、パケットロスが発生したと判断して前記比較の差分値に基づいた回数分だけ前記復号化部の乱数を発生させて消費させるように構成したストリームデータ受信装置。
【００１５】
（３）入力されたストリームをパケットデータとしてネットワークに送出するストリームデータ送信装置と、前記送信されたパケットデータが供給されて前記ストリームを得るストリームデータ受信装置とからなるストリームデータ送受信システムであって、前記ストリームデータ送信装置は、前記入力ストリームを複数のブロックデータに分割して、前記それぞれのブロックデータ毎に各ブロックのデータサイズに基づいた回数の乱数を発生させて暗号化処理を行う暗号化部と、前記それぞれのブロックデータ毎に、前記暗号化部から得られた暗号データと既に前記ストリーム受信装置に送信し終えた送信データのデータサイズ累計情報とを１つのパケットデータに形成するパケット形成部とを具備し、前記ストリームデータ受信装置は、受信した前記パケットデータ毎に前記暗号データと前記データサイズ累計情報とを抽出するパケット分離部と、前記抽出された暗号データをこの暗号データのデータサイズに基づいた回数の前記暗号化部にて発生させた乱数と同一の乱数を発生させて復号化処理を行う復号化部と、前記抽出されたデータサイズ累計情報と前記復号化部で発生させた乱数の発生回数累計とを比較する比較部とを具備すると共に、前記比較部の比較結果により、前記データサイズ累計情報が前記乱数の発生回数累計よりも大きい場合は、パケットロスが発生したと判断して前記比較の差分値に基づいた回数分だけ前記復号化部の乱数を発生させて消費させるように構成したストリームデータ送受信システム。
【発明の効果】
【００１６】
請求項３に記載された発明によれば、ストリームデータ送受信システムは、そのストリーム送信装置及びストリーム受信装置において同一の乱数を発生させて暗号化処理及び復号化処理を行うデータ送受信システムであるが、このストリーム送信装置は送信すべきストリームデータを任意のデータサイズに分割したブロックデータ単位で暗号化処理を行い、この暗号データと既に送信し終えた暗号データのデータサイズ累計情報とを１つのパケットに含めて送信し、このパケットデータを受信したストリーム受信装置は受信したパケットデータに含まれたデータサイズ累計情報とストリーム受信装置が記憶している乱数発生回数とを比較することにより、本ストリームデータ送受信システムによるパケットデータ伝送中において発生したパケットロスを容易に検出できるという特別な効果を有する。
【００１７】
また、特に請求項２及び３に記載された各ストリームデータ受信装置は、受信中のパケットロスを検出すると共にそのロスパケット量を取得することができるという格別な効果があり、そして、請求項１記載のストリームデータ送信装置と組み合わせて使用した場合には、ダミーパケットを発生させたり受信パケットの並べ替えを行うことなく、ロスパケット量に対応した回数分だけ受信側の乱数を消費させることで送受信の乱数発生の同期をとることができ、ダミーパケットを挿入したときのような復号化エラーを発生させることなく復号化処理を継続させることができるという格別な効果を有する。
【００１８】
また、特にストリームデータ受信装置の構成は、複雑な回路構成や並べ替えのためのバッファ記憶領域を確保する必要がないといった大きな効果も有する。
【００１９】
さらに、特に請求項１及び３に記載された各ストリームデータ送信装置は、出力パケットデータがそのパケットサイズを一定に固定する必要がないため、パケットサイズを一定に保つ場合に生じる端数データの扱い、すなわちダミーデータの挿入等を行う必要がなく、データ効率の優れたストリーム伝送を実現できるという特別な効果を有する。
【発明を実施するための最良の形態】
【００２０】
以下、本発明を実施するための最良の形態について図面を示して説明する。図１は、本発明に係るストリームデータ送受信システムの概略機能を示したブロック図の例である。同図において、送信装置１１はデジタルデータとして入力された映像データや音声データ等の入力ストリームを後述する暗号化処理によって暗号化してネットワーク３１に送出し、受信装置２１はネットワーク３１から入力した暗号データについて後述する復号化処理を行って元のストリームを復元する機能を有するものである。
ここに、ネットワーク３１はＩＰネットワーク網であり、その構成はＬＡＮや他のネットワーク網が不図示のルータやゲートウェイで接続された複合的なネットワーク網であってもよい。
【００２１】
次に、送信装置１１及び受信装置２１の各構成についてそれぞれ説明する。送信装置１１は、入力ストリームを後述する所定の大きさに分割（ブロックデータ化）して送信すべきデータのデータサイズを記憶するためのデータサイズ記憶部１２と、データサイズ記憶部１２に記憶されたデータサイズに基づき後述する所定の回数だけ乱数を発生するための第１の乱数発生部１３と、前記送信すべきデータと第１の乱数発生部１３から得た乱数とをＸＯＲ演算して暗号データを得るための第１のＸＯＲ演算部１４と、既に受信装置２１に送信し終えた送信データのデータサイズ累計を記憶するための第１のデータサイズ累計記憶部１５と、第１のＸＯＲ演算部１４の処理結果である暗号データと第１のデータサイズ累計記憶部１５に記憶されたデータサイズ累計とを後述する所定の形式で１つのデータ集合に形成するためのマルチプレクサ（ＭＵＸ）部１６と、ＭＵＸ部１６から得られたデータを１つのパケットデータに形成し、少なくとも後述する受信装置２１の識別子を前記１つのパケットデータに付加してネットワーク３１に出力するための第１のネットワークＩ／Ｆ部１７とから構成される。
【００２２】
また、受信装置２１は、予め付与された固有の前記識別子に基づき、ネットワーク３１から入来した１つ以上のパケットデータの中から受信すべきパケットデータを受信してマルチプレックスされた暗号データとデータサイズ累計とを抽出するための第２のネットワークＩ／Ｆ部２２と、第２のネットワークＩ／Ｆ部２２から供給されたマルチプレックスデータから暗号データとデータサイズ累計とを分離して取り出すためのデマルチプレックス（ＤＭＵＸ）部２３と、ＤＭＵＸ部２３から得られた暗号データのデータサイズを記憶するための暗号データサイズ記憶部２４と、ＤＭＵＸ部２３から得られたデータサイズ累計を記憶するための第２のデータサイズ累計記憶部２５と、後述する第２の乱数発生部２８で既に発生した乱数の発生回数を記憶するための乱数発生回数記憶部２６と、第２のデータサイズ累計記憶部２５に記憶されたデータサイズ累計と乱数発生回数記憶部２６に記憶された乱数発生回数との数値の大きさを比較判定するための数値比較部２７と、数値比較部２７の比較判定結果に基づいて暗号データサイズ記憶部２４に記憶された暗号データサイズに基づいた所定の回数だけ乱数を発生するための第２の乱数発生部２８と、ＤＭＵＸ部２３から得た暗号データと第２の乱数発生部２８から得た乱数とをＸＯＲ演算して復号データを得るための第２のＸＯＲ演算部２９とから構成される。
【００２３】
なお、本実施の形態例に係るストリームデータ送受信システムの暗号化方式においては、送信装置１１の第１の乱数発生部１３と受信装置２１の第２の乱数発生部２８とは同一のアルゴリズムによって同一の乱数を発生させるものである。
【００２４】
送信装置１１及び受信装置２１の具体的なハードウェア構成は、不図示のＣＰＵや記憶部、そしてネットワークＩ／Ｆ部を具備した情報端末で構成するものであり、例えば一般的なパーソナルコンピュータで構成してもよい。そして、送信装置１１は入力ストリームを暗号化してネットワーク３１に送出する処理を実行するための暗号化送信プログラムを有し、また受信装置２１は供給された暗号データを復号化して元のストリームを復元する処理を実行するための受信復号化プログラムを有し、各プログラムはそれぞれのＣＰＵによって制御される構成である。
【００２５】
次に、以上の構成による送信装置１１について、入力ストリームの暗号化処理を行ってネットワーク３１に送出する動作について、図２に示した送信装置１１の送信側処理フローチャートを併せ用いて説明する。まず、送信装置１１に入力されるソースは、映像データや音声データ等の非圧縮のデジタルデータであるか、ＭＰＥＧ方式やモーションＪＰＥＧ方式等によって高能率符号化されたデジタルデータであるとする。
【００２６】
ストリーム送信開始時に起動された前記暗号化送信プログラムは、送信装置１１のＣＰＵを制御して以下の処理を実行する。まず、入力ストリーム処理の前段階の処理として、第１のデータサイズ累計記憶部１５をクリアし（ステップＳ２１）、そして第１の乱数発生部１３を初期化する（ステップＳ２２）。
【００２７】
上記初期化処理の後、ストリームデータが送信装置１１に入力されると所定のサイズの送信すべきブロックデータを確保する（ステップＳ２３）。この所定のサイズは、後述する第１のネットワークＩ／Ｆ部１７でパケットデータ化される１パケットに含めることが可能な範囲でのデータサイズであるとし、入力ストリームから順次確保する際に常に一定量のサイズを毎回確保する必要はない。次に、送信すべきブロックデータがない場合（ステップＳ２４  Ｎｏ）は前述のステップＳ２３に移行する。ブロックデータがある場合（ステップＳ２４  Ｙｅｓ）は、前記確保したブロックデータの所定のサイズをデータサイズ記憶部１２に記憶させる（ステップＳ２５）。
【００２８】
次に、ブロックデータについて暗号化処理を行う（ステップＳ２６）。具体的には、例えばデータサイズ記憶部１２に記憶させたデータサイズが１２８バイトであり、第１の乱数発生部１３から発生させる乱数が１バイトであるとした場合に、ブロックデータ１２８バイトについて、順次１バイトデータづつとそれぞれ発生した１バイトの乱数とを第１のＸＯＲ演算部１４でＸＯＲ演算し、１２８バイトの暗号データを得るという処理である。
【００２９】
次に、第１のＸＯＲ演算部１４の演算により得られた暗号データと第１のデータサイズ累計記憶部１５に記憶された既送信データのデータサイズ累計とをＭＵＸ部１６に供給し、両データを合わせまとめる処理（マルチプレックス処理）を実行する（ステップＳ２７）。この処理は、暗号データとデータサイズ累計とが１つのまとまったデータに形成されればよいものでありその構成は問わない。例えば、暗号データとデータサイズ累計との間に予め決めておいた識別子を挿入して両者が区分されるようにしてもよい。
【００３０】
そして、マルチプレックスされたデータを第１のネットワークＩ／Ｆ部１７に供給して１つのパケットデータに形成し、少なくとも送信先の受信装置２１を示す識別子をヘッダとして付与してネットワーク３１に送出する（ステップＳ２８）。
【００３１】
そして次に、データサイズ記憶部１２に記憶されたブロックデータのデータサイズを第１のデータサイズ累計記憶部１５に加算し（ステップＳ２９）、次の送信すべきブロックデータの暗号化処理を実行すべく前述のステップＳ２３の処理に移行する。
【００３２】
次に、受信装置２１がネットワーク３１を介して送信装置１１から供給されたパケットデータを受信し復号化処理を行ってストリームを復元する動作について、図３に示した受信装置２１の受信側処理フローチャートを参照して説明する。パケットデータを受信するときに起動された前記受信復号化プログラムは、受信装置２１のＣＰＵを制御して以下の処理を実行する。まず、パケットデータを受信する前段階の処理として、乱数発生回数記憶部２６をクリアし（ステップＳ３１）、そして第２の乱数発生部２８を初期化する（ステップＳ３２）。
【００３３】
上記初期化処理の後、送信装置１１から送信されたパケットデータについてネットワーク３１を介して受信した受信装置２１は、第２のネットワークＩ／Ｆ部２２においてパケットデータに付属したヘッダから識別子を調べ、自身を送信先としたパケットデータであることを確認した後、受信したパケットデータからマルチプレックスデータを抽出する（ステップＳ３３）。次に、受信データがない場合は処理を前述のステップＳ３３に移行する（ステップＳ３４  Ｎｏ）。
【００３４】
そして、受信データがある場合（ステップＳ３４  Ｙｅｓ）は、抽出されたマルチプレックスデータをデマルチプレックス化して暗号データとデータサイズ累計とを抽出する（ステップＳ３５）。そして、抽出された暗号データのデータサイズを暗号データサイズ記憶部２４に記憶させ（ステップＳ３６）、データサイズ累計を第２のデータサイズ累計記憶部２５に記憶させる（ステップＳ３７）。
【００３５】
次に、数値比較部２７は、第２のデータサイズ累計記憶部２５に記憶されたデータサイズ累計と乱数発生回数記憶部２６に記憶された乱数発生回数との数値を比較する（ステップＳ３８）。そして、データサイズ累計が乱数発生回数よりも小さい場合は、何も処理を行うことなく次のパケットデータ受信のステップに移行する（ステップＳ３８  ａ＜ｂ）。また、データサイズ累計が乱数発生回数よりも大きい場合（ステップＳ３８  ａ＞ｂ）は、その差分の数だけ第２の乱数発生部２８で乱数を発生させる（ステップＳ３９）。但し、ステップＳ３９においては乱数を発生させるのみで何も処理をしない。そして、第２のデータサイズ累計記憶部２５に記憶されたデータサイズ累計を乱数発生回数記憶部２６に記憶させる（ステップＳ４０）。
【００３６】
そして次に、暗号データの復号化処理を行う（ステップＳ４１）。この復号化処理は、ステップＳ３８においてデータサイズ累計と乱数発生回数との数値が等しい場合（ステップＳ３８  ａ＝ｂ）にも実行される。暗号データの復号化処理は、具体的には送信装置１１の第１のＸＯＲ演算部１４の処理と同様であり、例えば暗号データサイズ記憶部２４に記憶させたデータサイズが１２８バイトであり、第２の乱数発生部２８から発生させる乱数が１バイトであるとした場合に、復号化すべきデータ１２８バイトについて、順次１バイトデータづつとそれぞれ発生した１バイトの乱数とを第２のＸＯＲ演算部２９でＸＯＲ演算し、１２８バイトの復号データを得るという処理である。
【００３７】
そして、第２のデータサイズ累計記憶部２５に記憶されたデータサイズ累計を乱数発生回数記憶部２６に加算し（ステップＳ４２）、次の受信したパケットデータの復号化処理を実行すべく前述のステップＳ３３に移行する。
【００３８】
以上詳述したように、本発明に係るストリームデータ送受信システムは、送信装置１１が送信すべきストリームデータを任意のデータサイズに分割したブロックデータ単位で暗号化処理を行い、この暗号化されたデータと既に送信し終えた暗号データのデータサイズ累計とを１つのパケットデータとして送信し、このパケットデータを受信した受信装置２１は受信したパケットデータに含まれたデータサイズ累計と乱数発生回数記憶部２６が記憶している乱数発生回数とを比較することにより、ネットワーク３１を介した伝送中に発生したパケットロスを検出することができる。
【００３９】
また、受信装置２１はパケットロスを検出すると共にロスパケット量を取得することができるため、ロスパケット量に対応した回数分だけ受信装置２１の乱数発生を消費させることで送受信の乱数発生の同期をとることができ、復号化エラーを発生させることなく復号化処理を継続させることができる。
【００４０】
さらに、送信装置１１で形成されて出力されるパケットデータは、そのパケットサイズを一定にする必要がないため、パケットサイズを一定に保つ場合に生じる端数データの扱い、すなわちダミーデータの挿入等を行う必要がなく、データ効率の優れたストリーム伝送を行うことができる。
【００４１】
なお、図１においては受信装置２１が１つのみ図示されているが、前述したとおり送信装置１１から送信されるパケットデータには送信先の受信装置２１を指し示す識別子が付加されるため、ネットワーク３１には予め固有の識別子がそれぞれ付与された複数の受信装置２１が接続されていてもよい。
さらに、同図においては送信装置１１が１つのみ図示されているが、送信装置１１に送信装置固有の識別子を予め付与しておき、第１のネットワークＩ／Ｆ部１７で送信先である受信装置２１の識別子のみならず送信装置１１固有の識別子を付加するように制御すれば、ネットワーク３１には予め固有の識別子がそれぞれ付与された複数の送信装置１１が接続されていてもよい。
【産業上の利用可能性】
【００４２】
本発明は、映像データや音声データ等のストリームデータであって、特に著作権の保護や商業的価値の保護が必要なデータを広域ネットワークを介して送受信するデータ送受信システムにおいて、暗号・復号化処理を行いデータ伝送効率の優れたデータ伝送を行う必要のあるストリームデータ送信装置、ストリームデータ受信装置、及びストリームデータ送受信システムに適用できる。
【図面の簡単な説明】
【００４３】
【図１】本発明に係るストリームデータ送受信システムの概略機能を示したブロック図の例である。
【図２】本発明に係る送信装置１１の送信側処理のフローチャート図である。
【図３】本発明に係る受信装置２１の受信側処理のフローチャート図である。
【図４】従来のストリームデータ送受信システムの概略システム構成図の例である。
【図５】従来のストリームデータ送受信システムを用いたネットワーク伝送中にパケットロスが発生した場合の様子を模式的に示した図である。
【符号の説明】
【００４４】
１１  送信装置
１２  データサイズ記憶部
１３  第１の乱数発生部
１４  第１のＸＯＲ演算部
１５  第１のデータサイズ累計記憶部
１６  ＭＵＸ部
１７  第１のネットワークＩ／Ｆ部
２１  受信装置
２２  第２のネットワークＩ／Ｆ部
２３  ＤＭＵＸ部
２４  暗号データサイズ記憶部
２５  第２のデータサイズ累計記憶部
２６  乱数発生回数記憶部
２７  数値比較部
２８  第２の乱数発生部
２９  第２のＸＯＲ演算部
３１  ネットワーク
【図１】
2005318041.tif 000003
【図２】
2005318041.tif 000004
【図３】
2005318041.tif 000005
【図４】
2005318041.tif 000006
【図５】
2005318041.tif 000007