動画ファイルの暗号化方法及びそれを利用したデジタル著作権の管理方法
本発明は、動画ファイルの暗号化方法及びそれを利用したデジタル著作権の管理方法を提供する。本発明は、動画ファイルのメタデータからリアルタイムストリーミングの単位となるビデオサンプルの位置情報を抽出し、各ビデオサンプルの位置情報に基づいてビデオサンプルを抽出し、抽出された各ビデオサンプルのビデオサンプルヘッダ内のスタートコードを除いた残りの部分に対して、あらかじめ決定された暗号化情報に基づいて暗号化し、暗号化したビデオサンプルを再度組合わせることによって、復号化した動画ファイルを生成する。これにより、MPEG4ファイルのフォーマットを維持しつつVOP単位でファイルを暗号化するため、完成した形態のファイルフォーマットに容易に適用可能であると共にストリーミングサービスが可能である。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、動画ファイルの暗号化方法及びそれを利用したデジタル著作権の管理方法に係り、さらに詳細には、動画ファイルのフォーマットを維持しつつファイルを暗号化することによって、デジタル著作権の管理下でストリーミングサービスを可能にする暗号化方法及びデジタル著作権の管理方法に関する。
【背景技術】
【0002】
現在、マルチメディアデータは、ダウンロードサービスまたはストリーミングサービスの形態でサービスの提供者からユーザに提供されている。ダウンロードサービスは、再生の単位となる完全なマルチメディアファイルをサービス提供者のコンピュータからユーザのコンピュータに完全にダウンロードした後に再生することであり、ストリーミングサービスは、サービス提供者が、再生の単位となるファイルをリアルタイムで再生可能な部分に分割してユーザに伝送した後、ユーザは、前記伝送された部分をリアルタイムで再生するサービスをいう。
【0003】
サービス提供者が、このうちいかなる形態を使用しても、ユーザは、該当マルチメディアデータに対する適法な権利を取得する過程が先行されねばならない。このための先行条件として、正当な権利を取得していないユーザの該当ファイルに対するアクセスを防止せねばならず、このためにマルチメディアファイルは暗号化される。
【0004】
デジタル著作権管理(Digital Right Management:DRM)は、正当な権利を有するユーザのみを暗号化されたデータにアクセスさせるあらゆる構造のソリューションとして定義される。一般的に、このようなデジタル著作権管理システムは、コンテンツ提供者、ユーザ及びデジタル著作権管理サーバなどを含み、電子支払い手続き、ユーザ認証手続き及び共用キー構造(Public Key Infrastructure:PKI)を含みうる。
【0005】
最も一般的に使用されるデジタル著作権管理の方法は、MPEGファイル自体を暗号化してユーザに伝送した後、暗号化したファイルを復号できるキーを、ユーザ認証手続を通じて正当な権利を有するユーザに提供することである。ユーザ認証手続は、電子支払い手続きを含み、キーの伝送には、共用キー構造が使用されうる。
【0006】
しかし、このような暗号化方法は、ストリーミングサービスでは使用されえない。なぜなら、復号化は、ファイル全体をダウンロードした後になって初めて可能であるためである。すなわち、ユーザキーは、DRMサーバから伝送されても、暗号化の対象となるファイル全体をダウンロードされる以前には、該当映像を再生できない。
【0007】
また、暗号化方法の他の方法として、動画ファイルのコーディング過程で離散コサイン変換の係数、すなわち、AC値またはDC値を暗号化する方法がある。
【0008】
しかし、この方法は、完成した動画ファイルを暗号化するものではなく、動画ファイルのエンコーディング過程に暗号化過程を追加せねばならないので、完成したMPEGファイルに対しては容易に適用できない。また、コンテンツ提供者が、動画ファイルの生成過程に自身に特定された暗号化アルゴリズムを適用する必要がある場合、コンテンツ提供者は、動画ファイルの提供者に従属されてサービスを提供しなければならないので、事業過程で不利益をもたらす。これは、オンラインコンテンツ事業を妨げる。
【発明の開示】
【発明が解決しようとする課題】
【0009】
したがって、本発明は、前記課題を解決するためになされたものであって、ストリーミングサービスに適用可能であると共に、動画ファイルの生成過程に関係なく完成した動画ファイルに容易に適用可能な暗号化方法及びそれを利用したデジタル著作権の管理方法を提供することを目的とする。
【課題を解決するための手段】
【0010】
前記課題を解決するための本発明は、メディアデータ領域及びメタデータ領域を含む動画ファイルの暗号化方法であって、動画ファイルのメタデータからリアルタイムストリーミングの単位となるビデオサンプルの位置情報を抽出するステップと、前記各ビデオサンプルの位置情報に基づいて前記ビデオサンプルを抽出するステップと、前記抽出された各ビデオサンプルのビデオサンプルヘッダ内のスタートコードを除いた残りの部分に対して、あらかじめ決定された暗号化情報に基づいて暗号化するステップと、前記暗号化したビデオサンプルを再度組合わせることによって、復号化した動画ファイルを生成するステップと、を含む。
【0011】
また、本発明において、前記オフセットを抽出するステップは、前記ムーブアトム内の下位アトムのうち、ビデオメディア情報アトムの存否を検査するステップと、前記ビデオメディア情報アトムが存在する場合に、前記ムーブアトム内の下位アトムのうちサンプルテーブルアトム内のチャンクサイズのアトム、チャンクオフセットアトム及びサンプルサイズアトムからチャンクサイズ、チャンクオフセット及びサンプルサイズを抽出するステップと、前記抽出されたチャンクサイズ、チャンクオフセット及びサンプルサイズに基づいて、各VOPのオフセットを計算するステップと、を含む。
【0012】
また、本発明は、所定の暗号化情報に基づいてVOP単位で暗号化されたMPEG4ファイルを復号化する方法であって、前記MPEG4ファイル内の各VOPのスタートコードを検出するステップと、前記スタートコードを基準に各VOPを抽出するステップと、前記暗号化情報に基づいて、前記抽出されたVOPのうち暗号化されたVOPを抽出するステップと、前記暗号化情報に対応する復号化情報に基づいて、前記暗号化されたVOPを復号化するステップと、前記復号化されたVOPを再度組合わせることによって、復号化されたMPEG4ファイルを生成するステップと、を含み、前記暗号化情報は、復号化キー、暗号化方式、暗号化モード及びVOP IDを含む。
【0013】
また、本発明は、デジタル著作権の管理方法であって、コンテンツサーバ及びコンテンツクライアントが、DRMサーバを通じて所定のMPEG4ファイルに対するユーザ認証過程を行うことによって暗号化情報及び復号化情報を受信するステップと、前記コンテンツサーバが、前記暗号化情報に基づいて該当MPEG4ファイルをVOP単位で暗号化するステップと、前記暗号化されたMPEG4ファイルのVOPを含むパケットを、ストリーミングサーバを通じて前記コンテンツクライアントに伝送するステップと、前記コンテンツクライアントが、前記パケットから暗号化されたVOPを抽出するステップと、前記抽出されたVOPを、前記復号化情報を利用して復号化するステップと、前記復号化されたVOPを再度組合わせることによって、復号化されたMPEG4ファイルをリアルタイムで再生するステップと、を含む。
【発明を実施するための最良の形態】
【0014】
以下、添付された図面を参照して、本発明に係る望ましい一実施例を詳細に説明する。 図1は、動画ファイルフォーマットを示す図面である。 動画ファイルは、MPEG1、MPEG2及びMPEG4ファイルフォーマットを含む。各動画ファイルは、ユーザデータが含まれるメディアデータ領域と、ユーザデータに関する位置及び大きさ、その他の再生に必要なメタデータを保存するメタデータ領域とに分けられる。以下では、MPEG4ファイルフォーマットについて本発明を適用する概念を説明する。
【0015】
MPEG4ファイル10は、複数のアトム20、21、22、30、31、32を含む。各アトムは、下位のアトムを有することによって階層的な構造を形成する。このとき、上位アトムをコンテナアトム、下位アトムをリーフアトムという。最も上位のアトムは、2個のアトムであり、ムーブアトム及びメディアデータアトムアトムである。メディアデータアトム30は、MPEGファイル内に保存されるユーザメディアデータ、すなわち、オーディオまたはビデオデータなどが保存される空間であり、ムーブアトム20は、メディアデータに関する情報、すなわち、メタデータが保存される空間である。メディアデータアトム30は、複数のビデオオブジェクトプレーン31、32、・・・及び複数のオーディオデータを備える。
【0016】
図2は、本発明に係るデジタル著作権管理の概要図である。デジタル著作権管理のための解決策は、コンテンツサーバ200、コンテンツクライアント300及びDRMサーバ100を備える。コンテンツサーバ200は、メディアデータをユーザに提供し、DRMサーバモジュール210、コンテンツデータベース220、コンテンツ暗号化部230及びストリーミングモジュール240を備える。コンテンツクライアント300は、コンテンツサーバからコンテンツを伝送されて再生し、DRMクライアントモジュール310、パケット受信部320、コンテンツ復号化部330及びメディア再生部340を備える。
【0017】
DRMサーバ100は、コンテンツサーバ200とクライアント300との間のユーザ認証を通じたキー伝送を行う。コンテンツクライアント300内のDRMクライアントモジュール310が、ユーザ認証要請101をDRMサーバ100に送れば、DRMサーバ100は、電子支払システム(図示せず)を利用してユーザ認証手続を行う。ユーザ認証が完了すれば、DRMサーバ100は、ユーザ認証と関連したユーザ情報などを利用してDRM認証情報102を生成し、生成されたDRM認証情報をコンテンツサーバ200に伝送する。
【0018】
コンテンツサーバ200内のDRMサーバモジュール210は、コンテンツサーバ200から伝送されたDRM認証情報102から暗号化キーを生成し、生成された暗号化キー及びユーザ入力による暗号化オプション情報213を、暗号化情報211として暗号化部230に伝送する。暗号化オプション情報213は、暗号化方式の類型、暗号化対象VOP ID及び暗号化モードの類型に関する情報などを含む。
【0019】
コンテンツサーバ200内のDRMサーバモジュール210及びコンテンツクライアント300内のDRMクライアントモジュール310は、DRMサーバ100とユーザ認証動作を行う。DRMサーバモジュール210は、DRMサーバ100からDRM認証情報102を受信し、これを利用して暗号化キーを生成する。また、DRMサーバモジュール210は、暗号化キー及びユーザ入力による暗号化オプション情報213を含む暗号化情報211を暗号化部230に伝送する。また、DRMサーバモジュール210は、暗号化情報211及びDRMサービスに必要なその他の情報などを利用してDRM暗号化情報103を生成し、DRMサーバ100に伝送する。
【0020】
DRMサーバ100は、DRMサーバモジュール210からDRM暗号化情報103を受信して、ユーザ認証を通じた多様な情報を含めてDRM復号化情報104を生成し、これをDRMクライアントモジュール310に伝送する。もし、DRMサービスが対称キーの構造を使用すれば、DRM暗号化情報103に含まれた暗号化キーとDRM復号化情報104内に含まれた復号化キーとが同じであるが、DRMサービスが非対称キーの構造を使用すれば、暗号化キーと復号化キーとは相異なるので、DRM暗号化情報103とDRM復号化情報104とが有する内容は相異なる。
【0021】
DRMクライアントモジュール310は、DRMサーバ100からDRM復号化情報104を受信して復号化情報311を抽出し、DRM復号化330は、復号化情報311を利用して、受信した動画ファイルを復号化する。
【0022】
図2で、コンテンツサーバ200内の暗号化部230は、コンテンツデータベース220からコンテンツ221を伝送されて、これを暗号化することによって暗号化したコンテンツ231を生成する。本発明の特徴によって、コンテンツ221及び暗号化したコンテンツ231は、図1に示すものと同じMPEG4ファイルのフォーマットを有する。
【0023】
図3は、本発明に係るMPEG4ファイルの暗号化方法を示すフローチャートである。本発明は、MPEG4ファイルをファイル全体ではなく、VOP単位で暗号化することを特徴とする。暗号化されるVOPは、暗号化オプション情報213により選択可能である。暗号化方式は、データ暗号化標準(Data Encryption Standard:DES)または128ビット方式の韓国標準暗号化アルゴリズム(SEED)のようなブロック暗号化方式を使用する。このような暗号化方式は、ブロック暗号化方式であるので、既存のMPEG4ファイルの大きさ及び形式を変化させない。したがって、暗号化以後のMPEG4ファイルと暗号化以前のMPEG4ファイルとは、大きさ及びフォーマットが変わらないので、既存のMPEG4ファイルの再生アルゴリズムの修正なしに適用可能である。また、暗号化は、VOP単位で行われるが、各VOPの最初の4バイトは暗号化しない。最初の4バイトは、スタートコードであって、コンテンツクライアント側からVOPの抽出に使用されるためである。
【0024】
コンテンツDBから受信されたMPEG4ファイルのムーブアトムから各VOPのオフセットを抽出する(ステップ301)。VOPのオフセットとは、MPEG4ファイル内での各VOPの位置情報をいう。各VOPのオフセットに基づいて、暗号化オプション情報213により選択されたVOPを抽出する(ステップ302)。抽出されたVOPを、DESまたはSEEDを利用して暗号化する(ステップ303)。暗号化したVOPを暗号化していないVOPと再度組合わせることによって、暗号化されたMPEG4ファイルを生成する(ステップ304)。
【0025】
以下、図4ないし図6を参照して、MPEG4ファイルの各VOPのオフセットを抽出する過程を説明する。
【0026】
図4は、MPEG4ファイルのメディアデータアトムの構成を示す図面である。MPEG4ファイルフォーマットによって、メディアデータアトムは、実際のメディアデータが存在する部分であるチャンクと、メディアデータが存在していない部分である未使用部分と、を含む。チャンクは、ビデオチャンク及びオーディオチャンクを含み、各チャンクは、複数のサンプルに分けられる。チャンクの内部に含まれたメディアデータがビデオデータである場合、サンプルは、VOPである。
【0027】
図5Aは、MPEG4ファイルのムーブアトムの構成を示す図面である。ムーブアトム510は、下位アトムとして複数のトラックアトム(track1)520を含み、各トラックアトム520は、下位アトムとしてメディアアトム530を含み、メディアアトム530は、下位アトムとしてメディア情報アトム540を含み、メディア情報アトム540は、下位アトムとしてサンプルテーブルアトム550を含む。
【0028】
各アトムの最初の4バイトは、アトムのサイズ情報を有し、その次の4バイトは、アトムの類型情報を有し、残りの領域は、各アトムが表すメタデータ情報を有する。メディア情報アトム540は、下位アトムとしてビデオ情報アトム541を有する。ビデオ情報アトム541は、該当メディアデータがビデオデータであることを表す。サンプルテーブルアトム550は、下位アトムとしてチャンクサイズのアトム551、サンプル数アトム552及びサンプルサイズアトム553を有する。
【0029】
図5Bは、チャンクサイズのアトム、サンプル数アトム及びサンプルサイズアトムの内部構成を示す図面である。
【0030】
図5Bの最初の図面で、チャンクサイズのアトム551は、メタデータ領域に各チャンクが有するサンプルの数に関する情報を含む。第1チャンク611及び第4のチャンク612は、14個のビデオサンプルを有し、第10のチャンク613は、13個のビデオサンプルを有するということが分かる。図5Bの二番目の図面で、チャンク位置アトム552は、メタデータ領域に各チャンクの位置情報を含む。1番目のチャンク614は、40番目のビットから表され、10番目のチャンク615は、607848ビットから表されるということが分かる。図5Bの三番目の図面で、サンプルサイズアトム553は、各サンプルの大きさに関する情報を表す。1番目のサンプル617は、12604ビットの大きさを有するということが分かる。
【0031】
MPEG4ファイル内の各VOPのオフセットを抽出する過程は、各メタデータのパーシングを通じて行われる。まず、メディア情報アトム540内にビデオメディア情報アトム541が存在しているかを検査することによって、該当メディアデータがビデオデータであるか否かを確認する。もし、ビデオデータであれば、次の下位アトムであるサンプルテーブルアトム550にパーシングしてメタデータを抽出する。
【0032】
前記三つのアトムに保存された情報の組合わせからサンプル、すなわち、VOPのオフセットに関する情報を抽出できる。図5Bの1番目の図面で、1番目のチャンクの大きさ、すなわち1番目のチャンクに含まれたサンプル数は14個であり、二番目の図面で、1番目のチャンクのオフセットは40ビットであり、1番目のサンプルの大きさは、12604ビットである。したがって、二番目のサンプルのオフセットは、40+12604=12644ビットである。このような方式で、あらゆるサンプル、すなわち、VOPのオフセットを抽出できる。
【0033】
図6Aないし図6Cは、多様な方式で暗号化した暗号化されたMPEGファイルの再生画面を示す。
【0034】
暗号化されるVOPは、暗号化オプション情報により選択可能である。暗号化オプション情報は、ユーザによりDRMサーバモジュールに入力され、暗号化キーと共に暗号化部に伝送されて暗号化に使用される。
【0035】
暗号化されるVOPの選択は、暗号化モードの選択または暗号化IDの選択により行われる。暗号化モードは、あらゆるI−VOPを暗号化する第1モード、あらゆるB−VOP及びP−VOPを暗号化する第2モード、及びあらゆるI、B、P−VOPを暗号化する第3モードに分けられる。暗号化IDの選択は、暗号化オプション情報として入力された暗号化番号に該当するVOPのみを暗号化する。この時、暗号化されるVOPは、種類に関係なく選択される。
【0036】
図6Aで、左側映像は、暗号化以前の映像であり、右側映像は、第1モードで暗号化した後のMPEG映像である。I−VOPは、イントラコーディングされたVOPであるので、マクロブロック内にあらゆる映像情報が含まれている。したがって、イントラブロック情報が完全に喪失されたということが分かる。また、I、P、B−VOPの参照位置が変わるので、原本ファイルとは全く異なる映像を再生する。
【0037】
図6Bで、左側映像は、暗号化以前の原本映像であり、右側映像は、第2モードで暗号化したMPEG映像である。B−VOP及びP−VOPは、イントラコーディングされたマクロブロック及びモーションベクトルに関する情報が共存する。したがって、第1モードに比べて映像客体の確認がさらに可能になるということが分かる。これは、P−VOP内部のモーションベクトルは暗号化されたが、I−VOP内部のイントラブロックの影響によって、連続するフレームの中間画面に時々完全な画面が発生可能である。但し、モーションベクトルが暗号化されるので、各客体の移動経路は不規則になるということが分かる。
【0038】
図6Cで、右側映像は、第3モードで暗号化したMPEG映像を表す。第3モードは、あらゆるVOPを暗号化するので、最も完全に暗号化された映像を生成する。暗号化するVOPの数が多くなるほど、暗号化の性能は向上するが、復号化にさらに多くの資源を使用する。
【0039】
暗号化が行われれば、暗号化されたVOPを再度組合わせることによって、暗号化された新たなMPEGファイルが生成される。生成された暗号化MPEG4ファイルは、ストリーミングモジュールによりコンデンツクライアント300にストリーミングされる。ストリーミングのためにMPEG4ファイルはパケット化されねばならない。
【0040】
図7は、ストリーミングモジュールによりパケット化された伝送パケットの内部構造を示す図面である。また、図2で、ストリーミングモジュール240は、暗号化されたMPEG4ファイルを伝送されて、パケット化することによって伝送パケット241を生成する。図7で、経時的に伝送される4個の伝送パケットが表されている。各伝送パケット710、720、730、740は、伝送プロトコルヘッダ711、712、721、722、731、732、741、742及び伝送データ713、724、733、743、744を含む。伝送プロトコルヘッダは、伝送経路によって異なり、一般的に、リアルタイム伝送プロトコル712及びユーザデータグラムプロトコル711が使用される。
【0041】
1番目の伝送パケット710は、伝送データとして1番目のVOPの一部713を含み、二番目の伝送パケット720は、伝送データとして1番目のVOPの残りの一部723及び二番目のVOPの一部724を含む。三番目の伝送パケット730は、二番目VOPの他の一部733を含み、四番目の伝送パケット740は、二番目のVOPの残りの一部743及び三番目のVOPの一部744を含む。各伝送パケットがVOPの一部を伝送データとして有する理由は、VOPの大きさが相異なり、伝送パケットの長さと伝送されるVOPの大きさとが一致していないためである。図7で、斜線のVOPの一部724、733、743は、暗号化されたVOPを表す。
【0042】
ストリーミングモジュール240は、コンテンツサーバ内になく、独立的なサーバとしても具現可能である。この場合には、暗号化部230からストリーミングサーバ234へのMPEG4ファイルの伝送は、インターネットのような通信網を通じて行われる。
【0043】
図8は、コンテンツクライアント300が伝送パケット241を受信してMPEG4ファイルを再生する方法を表すフローチャートである。
【0044】
コンテンツクライアント300内のパケット受信部320は、コンテンツサーバ200から伝送パケット241を受信してVOPを抽出する。VOP抽出過程は、パケット受信部320内のバッファに入るパケットを監視することによって行われる。まず、パケット受信部320は、伝送パケット241を伝送されて、パケットの伝送プロトコルヘッダ711、712などを除去することによってデカプセル化を行う(ステップ801)。その後、各VOPのVOPヘッダ内に存在するスタートコードが受信されるか否かを検出する(ステップ802)。
【0045】
図9は、伝送されたVOPの内部構造を示す図面である。各VOP910、920、・・・は、VOPヘッダ911及びVOPデータ912を含み、各VOPヘッダ911の最初の4バイトとしてスタートコード913を有する。
【0046】
スタートコードは、各VOPの最初の4バイトであって、あらかじめ決定された値を有する。後続するVOPのスタートコードが発見されれば、現在のVOPは抽出されて、復号化部330に伝送される(ステップ803)。
【0047】
復号化部330は、コンテンツサーバ200からDRMサーバ100を通じて伝送されたDRM復号化情報311を利用して、該当VOPを復号化する(ステップ804)。DRM暗号化情報311は、暗号化方式、暗号化したVOP ID、暗号化モードに関する情報及び暗号化キーを含み、DRMサーバモジュール210、DRMサーバ100、DRMクライアントモジュール310を通じて復号化部330に伝送される。
【0048】
メディア再生部340は、復号化部330から復号化されたVOPを受信して、それらを組合わせることによって復号化されたMPEG4ファイルを生成し、これを再生する(ステップ805)。
【0049】
図10は、本発明の他の実施例に係るデジタル著作権管理アトムの内部構成を示す図面である。本発明の他の実施例で、既存のMPEG4ファイルのメタデータとして新たなアトムが追加される。図2で、暗号化情報211は、DRM暗号化情報103に含まれてDRMサーバ100を通じて伝送されたが、本実施例では、DRMアトム1000の内部に暗号化情報211が含まれる。暗号化情報211は、暗号化キー、暗号化方式、暗号化モード及び暗号化されたVOP IDを含みうる。
【0050】
図10に示すDRMアトムは、アトム大きさ1010及びアトム類型1020以外に、暗号化モード1030、暗号化フラッグ1040、エントリー数1050及びエントリーテーブル1060を備える。暗号化フラッグ1040が1に設定されれば、あらゆるVOPを暗号化したことを意味し、暗号化フラッグ1040が0に設定されれば、一部のVOPのみが暗号化されたことを意味する。暗号化された一部のVOPのVOP IDは、エントリーテーブル1060に保存され、暗号化されたVOP数は、エントリー数1050に保存される。
【0051】
既存のMPEG4ファイルのフォーマットに影響を与えないために、DRMアトム1000は、ムーブアトムの下位アトムのうち最上位アトムに位置する。もし、DRMアトム1000が他の下位アトムに位置すれば、DRMアトムの上位アトムの大きさは何れも修正されねばならないためである。
【0052】
本実施例で、暗号化情報211は、MPEG4ファイルの内部に伝送されるため、コンテンツクライアント300は、暗号化情報に対応する復号化情報311に対する別途のファイルシステムを管理する必要がないという効果がある。
【0053】
図11は、アトムを生成する例示的なAPI(Application Program Interface)コードを表す。アップル社では、MPEG4ファイルフォーマットのアトムを生成するためのAPIとして‘QuickTime’を提供しており、図10は、QuickTimeで作成したアトム生成の例である。図10によれば、アトムの名称は、‘drma’と命名され、大きさは、‘100’と定められているということが分かる。
【0054】
以上、本発明について、その望ましい実施例を中心に説明した。当業者ならば、本発明が本発明の本質的な特性から逸脱しない範囲で変形された形態で具現され得るということが理解できる。したがって、開示された実施例は、限定的な観点ではなく、説明的な観点で考慮されねばならない。本発明の範囲は、前述した説明ではなく、特許請求の範囲に記載されており、それと同等な範囲内にあるあらゆる差異点は、本発明に含まれたものと解釈されねばならない。
【0055】
本発明に係るMPEG4ファイルの暗号化方法及びそれを利用したデジタル著作権の管理方法によれば、MPEG4ファイルのフォーマットを維持しつつ、VOP単位でファイルを暗号化するため、完成した形態のファイルフォーマットに容易に適用可能であると共にストリーミングサービスが可能である。
【0056】
また、MPEG4ファイルの生成過程に関係なくファイルを暗号化できるため、コンテンツ提供者の独立的な暗号化が可能であり、コンテンツ提供事業の活性化に役に立つ。
【図面の簡単な説明】
【0057】
【図1】動画ファイルのフォーマットを示す図面である。
【図2】本発明に係るデジタル著作権管理の概要図である。
【図3】本発明に係るMPEG4ファイルの暗号化方法を示すフローチャートである。
【図4】MPEG4ファイルのメディアデータアトムの構成を示す図面である。
【図5A】MPEG4ファイルのムーブアトムの構成を示す図面である。
【図5B】チャンクサイズアトム、サンプル数アトム及びサンプルサイズアトムの内部構成を示す図面である。
【図6A】多様な方式で暗号化した暗号化されたMPEGファイルの再生画面を示す図面である。
【図6B】多様な方式で暗号化した暗号化されたMPEGファイルの再生画面を示す図面である。
【図6C】多様な方式で暗号化した暗号化されたMPEGファイルの再生画面を示す図面である。
【図7】ストリーミングモジュールによりパケット化された伝送パケットの内部構造を示す図面である。
【図8】コンテンツクライアントが伝送パケットを受信してMPEG4ファイルを再生する方法を示すフローチャートである。
【図9】伝送されたVOPの内部構造を示す図面である。
【図10】本発明の他の実施例に係るデジタル著作権管理アトムの内部構成を示す図面である。
【図11】アトムを生成する例示的なAPIコードを示す図面である。
【符号の説明】
【0058】
100 DRMサーバ
200 コンテンツサーバ
220 コンテンツデータベース
300 コンテンツクライアント
320 パケット受信部
【技術分野】
【0001】
本発明は、動画ファイルの暗号化方法及びそれを利用したデジタル著作権の管理方法に係り、さらに詳細には、動画ファイルのフォーマットを維持しつつファイルを暗号化することによって、デジタル著作権の管理下でストリーミングサービスを可能にする暗号化方法及びデジタル著作権の管理方法に関する。
【背景技術】
【0002】
現在、マルチメディアデータは、ダウンロードサービスまたはストリーミングサービスの形態でサービスの提供者からユーザに提供されている。ダウンロードサービスは、再生の単位となる完全なマルチメディアファイルをサービス提供者のコンピュータからユーザのコンピュータに完全にダウンロードした後に再生することであり、ストリーミングサービスは、サービス提供者が、再生の単位となるファイルをリアルタイムで再生可能な部分に分割してユーザに伝送した後、ユーザは、前記伝送された部分をリアルタイムで再生するサービスをいう。
【0003】
サービス提供者が、このうちいかなる形態を使用しても、ユーザは、該当マルチメディアデータに対する適法な権利を取得する過程が先行されねばならない。このための先行条件として、正当な権利を取得していないユーザの該当ファイルに対するアクセスを防止せねばならず、このためにマルチメディアファイルは暗号化される。
【0004】
デジタル著作権管理(Digital Right Management:DRM)は、正当な権利を有するユーザのみを暗号化されたデータにアクセスさせるあらゆる構造のソリューションとして定義される。一般的に、このようなデジタル著作権管理システムは、コンテンツ提供者、ユーザ及びデジタル著作権管理サーバなどを含み、電子支払い手続き、ユーザ認証手続き及び共用キー構造(Public Key Infrastructure:PKI)を含みうる。
【0005】
最も一般的に使用されるデジタル著作権管理の方法は、MPEGファイル自体を暗号化してユーザに伝送した後、暗号化したファイルを復号できるキーを、ユーザ認証手続を通じて正当な権利を有するユーザに提供することである。ユーザ認証手続は、電子支払い手続きを含み、キーの伝送には、共用キー構造が使用されうる。
【0006】
しかし、このような暗号化方法は、ストリーミングサービスでは使用されえない。なぜなら、復号化は、ファイル全体をダウンロードした後になって初めて可能であるためである。すなわち、ユーザキーは、DRMサーバから伝送されても、暗号化の対象となるファイル全体をダウンロードされる以前には、該当映像を再生できない。
【0007】
また、暗号化方法の他の方法として、動画ファイルのコーディング過程で離散コサイン変換の係数、すなわち、AC値またはDC値を暗号化する方法がある。
【0008】
しかし、この方法は、完成した動画ファイルを暗号化するものではなく、動画ファイルのエンコーディング過程に暗号化過程を追加せねばならないので、完成したMPEGファイルに対しては容易に適用できない。また、コンテンツ提供者が、動画ファイルの生成過程に自身に特定された暗号化アルゴリズムを適用する必要がある場合、コンテンツ提供者は、動画ファイルの提供者に従属されてサービスを提供しなければならないので、事業過程で不利益をもたらす。これは、オンラインコンテンツ事業を妨げる。
【発明の開示】
【発明が解決しようとする課題】
【0009】
したがって、本発明は、前記課題を解決するためになされたものであって、ストリーミングサービスに適用可能であると共に、動画ファイルの生成過程に関係なく完成した動画ファイルに容易に適用可能な暗号化方法及びそれを利用したデジタル著作権の管理方法を提供することを目的とする。
【課題を解決するための手段】
【0010】
前記課題を解決するための本発明は、メディアデータ領域及びメタデータ領域を含む動画ファイルの暗号化方法であって、動画ファイルのメタデータからリアルタイムストリーミングの単位となるビデオサンプルの位置情報を抽出するステップと、前記各ビデオサンプルの位置情報に基づいて前記ビデオサンプルを抽出するステップと、前記抽出された各ビデオサンプルのビデオサンプルヘッダ内のスタートコードを除いた残りの部分に対して、あらかじめ決定された暗号化情報に基づいて暗号化するステップと、前記暗号化したビデオサンプルを再度組合わせることによって、復号化した動画ファイルを生成するステップと、を含む。
【0011】
また、本発明において、前記オフセットを抽出するステップは、前記ムーブアトム内の下位アトムのうち、ビデオメディア情報アトムの存否を検査するステップと、前記ビデオメディア情報アトムが存在する場合に、前記ムーブアトム内の下位アトムのうちサンプルテーブルアトム内のチャンクサイズのアトム、チャンクオフセットアトム及びサンプルサイズアトムからチャンクサイズ、チャンクオフセット及びサンプルサイズを抽出するステップと、前記抽出されたチャンクサイズ、チャンクオフセット及びサンプルサイズに基づいて、各VOPのオフセットを計算するステップと、を含む。
【0012】
また、本発明は、所定の暗号化情報に基づいてVOP単位で暗号化されたMPEG4ファイルを復号化する方法であって、前記MPEG4ファイル内の各VOPのスタートコードを検出するステップと、前記スタートコードを基準に各VOPを抽出するステップと、前記暗号化情報に基づいて、前記抽出されたVOPのうち暗号化されたVOPを抽出するステップと、前記暗号化情報に対応する復号化情報に基づいて、前記暗号化されたVOPを復号化するステップと、前記復号化されたVOPを再度組合わせることによって、復号化されたMPEG4ファイルを生成するステップと、を含み、前記暗号化情報は、復号化キー、暗号化方式、暗号化モード及びVOP IDを含む。
【0013】
また、本発明は、デジタル著作権の管理方法であって、コンテンツサーバ及びコンテンツクライアントが、DRMサーバを通じて所定のMPEG4ファイルに対するユーザ認証過程を行うことによって暗号化情報及び復号化情報を受信するステップと、前記コンテンツサーバが、前記暗号化情報に基づいて該当MPEG4ファイルをVOP単位で暗号化するステップと、前記暗号化されたMPEG4ファイルのVOPを含むパケットを、ストリーミングサーバを通じて前記コンテンツクライアントに伝送するステップと、前記コンテンツクライアントが、前記パケットから暗号化されたVOPを抽出するステップと、前記抽出されたVOPを、前記復号化情報を利用して復号化するステップと、前記復号化されたVOPを再度組合わせることによって、復号化されたMPEG4ファイルをリアルタイムで再生するステップと、を含む。
【発明を実施するための最良の形態】
【0014】
以下、添付された図面を参照して、本発明に係る望ましい一実施例を詳細に説明する。 図1は、動画ファイルフォーマットを示す図面である。 動画ファイルは、MPEG1、MPEG2及びMPEG4ファイルフォーマットを含む。各動画ファイルは、ユーザデータが含まれるメディアデータ領域と、ユーザデータに関する位置及び大きさ、その他の再生に必要なメタデータを保存するメタデータ領域とに分けられる。以下では、MPEG4ファイルフォーマットについて本発明を適用する概念を説明する。
【0015】
MPEG4ファイル10は、複数のアトム20、21、22、30、31、32を含む。各アトムは、下位のアトムを有することによって階層的な構造を形成する。このとき、上位アトムをコンテナアトム、下位アトムをリーフアトムという。最も上位のアトムは、2個のアトムであり、ムーブアトム及びメディアデータアトムアトムである。メディアデータアトム30は、MPEGファイル内に保存されるユーザメディアデータ、すなわち、オーディオまたはビデオデータなどが保存される空間であり、ムーブアトム20は、メディアデータに関する情報、すなわち、メタデータが保存される空間である。メディアデータアトム30は、複数のビデオオブジェクトプレーン31、32、・・・及び複数のオーディオデータを備える。
【0016】
図2は、本発明に係るデジタル著作権管理の概要図である。デジタル著作権管理のための解決策は、コンテンツサーバ200、コンテンツクライアント300及びDRMサーバ100を備える。コンテンツサーバ200は、メディアデータをユーザに提供し、DRMサーバモジュール210、コンテンツデータベース220、コンテンツ暗号化部230及びストリーミングモジュール240を備える。コンテンツクライアント300は、コンテンツサーバからコンテンツを伝送されて再生し、DRMクライアントモジュール310、パケット受信部320、コンテンツ復号化部330及びメディア再生部340を備える。
【0017】
DRMサーバ100は、コンテンツサーバ200とクライアント300との間のユーザ認証を通じたキー伝送を行う。コンテンツクライアント300内のDRMクライアントモジュール310が、ユーザ認証要請101をDRMサーバ100に送れば、DRMサーバ100は、電子支払システム(図示せず)を利用してユーザ認証手続を行う。ユーザ認証が完了すれば、DRMサーバ100は、ユーザ認証と関連したユーザ情報などを利用してDRM認証情報102を生成し、生成されたDRM認証情報をコンテンツサーバ200に伝送する。
【0018】
コンテンツサーバ200内のDRMサーバモジュール210は、コンテンツサーバ200から伝送されたDRM認証情報102から暗号化キーを生成し、生成された暗号化キー及びユーザ入力による暗号化オプション情報213を、暗号化情報211として暗号化部230に伝送する。暗号化オプション情報213は、暗号化方式の類型、暗号化対象VOP ID及び暗号化モードの類型に関する情報などを含む。
【0019】
コンテンツサーバ200内のDRMサーバモジュール210及びコンテンツクライアント300内のDRMクライアントモジュール310は、DRMサーバ100とユーザ認証動作を行う。DRMサーバモジュール210は、DRMサーバ100からDRM認証情報102を受信し、これを利用して暗号化キーを生成する。また、DRMサーバモジュール210は、暗号化キー及びユーザ入力による暗号化オプション情報213を含む暗号化情報211を暗号化部230に伝送する。また、DRMサーバモジュール210は、暗号化情報211及びDRMサービスに必要なその他の情報などを利用してDRM暗号化情報103を生成し、DRMサーバ100に伝送する。
【0020】
DRMサーバ100は、DRMサーバモジュール210からDRM暗号化情報103を受信して、ユーザ認証を通じた多様な情報を含めてDRM復号化情報104を生成し、これをDRMクライアントモジュール310に伝送する。もし、DRMサービスが対称キーの構造を使用すれば、DRM暗号化情報103に含まれた暗号化キーとDRM復号化情報104内に含まれた復号化キーとが同じであるが、DRMサービスが非対称キーの構造を使用すれば、暗号化キーと復号化キーとは相異なるので、DRM暗号化情報103とDRM復号化情報104とが有する内容は相異なる。
【0021】
DRMクライアントモジュール310は、DRMサーバ100からDRM復号化情報104を受信して復号化情報311を抽出し、DRM復号化330は、復号化情報311を利用して、受信した動画ファイルを復号化する。
【0022】
図2で、コンテンツサーバ200内の暗号化部230は、コンテンツデータベース220からコンテンツ221を伝送されて、これを暗号化することによって暗号化したコンテンツ231を生成する。本発明の特徴によって、コンテンツ221及び暗号化したコンテンツ231は、図1に示すものと同じMPEG4ファイルのフォーマットを有する。
【0023】
図3は、本発明に係るMPEG4ファイルの暗号化方法を示すフローチャートである。本発明は、MPEG4ファイルをファイル全体ではなく、VOP単位で暗号化することを特徴とする。暗号化されるVOPは、暗号化オプション情報213により選択可能である。暗号化方式は、データ暗号化標準(Data Encryption Standard:DES)または128ビット方式の韓国標準暗号化アルゴリズム(SEED)のようなブロック暗号化方式を使用する。このような暗号化方式は、ブロック暗号化方式であるので、既存のMPEG4ファイルの大きさ及び形式を変化させない。したがって、暗号化以後のMPEG4ファイルと暗号化以前のMPEG4ファイルとは、大きさ及びフォーマットが変わらないので、既存のMPEG4ファイルの再生アルゴリズムの修正なしに適用可能である。また、暗号化は、VOP単位で行われるが、各VOPの最初の4バイトは暗号化しない。最初の4バイトは、スタートコードであって、コンテンツクライアント側からVOPの抽出に使用されるためである。
【0024】
コンテンツDBから受信されたMPEG4ファイルのムーブアトムから各VOPのオフセットを抽出する(ステップ301)。VOPのオフセットとは、MPEG4ファイル内での各VOPの位置情報をいう。各VOPのオフセットに基づいて、暗号化オプション情報213により選択されたVOPを抽出する(ステップ302)。抽出されたVOPを、DESまたはSEEDを利用して暗号化する(ステップ303)。暗号化したVOPを暗号化していないVOPと再度組合わせることによって、暗号化されたMPEG4ファイルを生成する(ステップ304)。
【0025】
以下、図4ないし図6を参照して、MPEG4ファイルの各VOPのオフセットを抽出する過程を説明する。
【0026】
図4は、MPEG4ファイルのメディアデータアトムの構成を示す図面である。MPEG4ファイルフォーマットによって、メディアデータアトムは、実際のメディアデータが存在する部分であるチャンクと、メディアデータが存在していない部分である未使用部分と、を含む。チャンクは、ビデオチャンク及びオーディオチャンクを含み、各チャンクは、複数のサンプルに分けられる。チャンクの内部に含まれたメディアデータがビデオデータである場合、サンプルは、VOPである。
【0027】
図5Aは、MPEG4ファイルのムーブアトムの構成を示す図面である。ムーブアトム510は、下位アトムとして複数のトラックアトム(track1)520を含み、各トラックアトム520は、下位アトムとしてメディアアトム530を含み、メディアアトム530は、下位アトムとしてメディア情報アトム540を含み、メディア情報アトム540は、下位アトムとしてサンプルテーブルアトム550を含む。
【0028】
各アトムの最初の4バイトは、アトムのサイズ情報を有し、その次の4バイトは、アトムの類型情報を有し、残りの領域は、各アトムが表すメタデータ情報を有する。メディア情報アトム540は、下位アトムとしてビデオ情報アトム541を有する。ビデオ情報アトム541は、該当メディアデータがビデオデータであることを表す。サンプルテーブルアトム550は、下位アトムとしてチャンクサイズのアトム551、サンプル数アトム552及びサンプルサイズアトム553を有する。
【0029】
図5Bは、チャンクサイズのアトム、サンプル数アトム及びサンプルサイズアトムの内部構成を示す図面である。
【0030】
図5Bの最初の図面で、チャンクサイズのアトム551は、メタデータ領域に各チャンクが有するサンプルの数に関する情報を含む。第1チャンク611及び第4のチャンク612は、14個のビデオサンプルを有し、第10のチャンク613は、13個のビデオサンプルを有するということが分かる。図5Bの二番目の図面で、チャンク位置アトム552は、メタデータ領域に各チャンクの位置情報を含む。1番目のチャンク614は、40番目のビットから表され、10番目のチャンク615は、607848ビットから表されるということが分かる。図5Bの三番目の図面で、サンプルサイズアトム553は、各サンプルの大きさに関する情報を表す。1番目のサンプル617は、12604ビットの大きさを有するということが分かる。
【0031】
MPEG4ファイル内の各VOPのオフセットを抽出する過程は、各メタデータのパーシングを通じて行われる。まず、メディア情報アトム540内にビデオメディア情報アトム541が存在しているかを検査することによって、該当メディアデータがビデオデータであるか否かを確認する。もし、ビデオデータであれば、次の下位アトムであるサンプルテーブルアトム550にパーシングしてメタデータを抽出する。
【0032】
前記三つのアトムに保存された情報の組合わせからサンプル、すなわち、VOPのオフセットに関する情報を抽出できる。図5Bの1番目の図面で、1番目のチャンクの大きさ、すなわち1番目のチャンクに含まれたサンプル数は14個であり、二番目の図面で、1番目のチャンクのオフセットは40ビットであり、1番目のサンプルの大きさは、12604ビットである。したがって、二番目のサンプルのオフセットは、40+12604=12644ビットである。このような方式で、あらゆるサンプル、すなわち、VOPのオフセットを抽出できる。
【0033】
図6Aないし図6Cは、多様な方式で暗号化した暗号化されたMPEGファイルの再生画面を示す。
【0034】
暗号化されるVOPは、暗号化オプション情報により選択可能である。暗号化オプション情報は、ユーザによりDRMサーバモジュールに入力され、暗号化キーと共に暗号化部に伝送されて暗号化に使用される。
【0035】
暗号化されるVOPの選択は、暗号化モードの選択または暗号化IDの選択により行われる。暗号化モードは、あらゆるI−VOPを暗号化する第1モード、あらゆるB−VOP及びP−VOPを暗号化する第2モード、及びあらゆるI、B、P−VOPを暗号化する第3モードに分けられる。暗号化IDの選択は、暗号化オプション情報として入力された暗号化番号に該当するVOPのみを暗号化する。この時、暗号化されるVOPは、種類に関係なく選択される。
【0036】
図6Aで、左側映像は、暗号化以前の映像であり、右側映像は、第1モードで暗号化した後のMPEG映像である。I−VOPは、イントラコーディングされたVOPであるので、マクロブロック内にあらゆる映像情報が含まれている。したがって、イントラブロック情報が完全に喪失されたということが分かる。また、I、P、B−VOPの参照位置が変わるので、原本ファイルとは全く異なる映像を再生する。
【0037】
図6Bで、左側映像は、暗号化以前の原本映像であり、右側映像は、第2モードで暗号化したMPEG映像である。B−VOP及びP−VOPは、イントラコーディングされたマクロブロック及びモーションベクトルに関する情報が共存する。したがって、第1モードに比べて映像客体の確認がさらに可能になるということが分かる。これは、P−VOP内部のモーションベクトルは暗号化されたが、I−VOP内部のイントラブロックの影響によって、連続するフレームの中間画面に時々完全な画面が発生可能である。但し、モーションベクトルが暗号化されるので、各客体の移動経路は不規則になるということが分かる。
【0038】
図6Cで、右側映像は、第3モードで暗号化したMPEG映像を表す。第3モードは、あらゆるVOPを暗号化するので、最も完全に暗号化された映像を生成する。暗号化するVOPの数が多くなるほど、暗号化の性能は向上するが、復号化にさらに多くの資源を使用する。
【0039】
暗号化が行われれば、暗号化されたVOPを再度組合わせることによって、暗号化された新たなMPEGファイルが生成される。生成された暗号化MPEG4ファイルは、ストリーミングモジュールによりコンデンツクライアント300にストリーミングされる。ストリーミングのためにMPEG4ファイルはパケット化されねばならない。
【0040】
図7は、ストリーミングモジュールによりパケット化された伝送パケットの内部構造を示す図面である。また、図2で、ストリーミングモジュール240は、暗号化されたMPEG4ファイルを伝送されて、パケット化することによって伝送パケット241を生成する。図7で、経時的に伝送される4個の伝送パケットが表されている。各伝送パケット710、720、730、740は、伝送プロトコルヘッダ711、712、721、722、731、732、741、742及び伝送データ713、724、733、743、744を含む。伝送プロトコルヘッダは、伝送経路によって異なり、一般的に、リアルタイム伝送プロトコル712及びユーザデータグラムプロトコル711が使用される。
【0041】
1番目の伝送パケット710は、伝送データとして1番目のVOPの一部713を含み、二番目の伝送パケット720は、伝送データとして1番目のVOPの残りの一部723及び二番目のVOPの一部724を含む。三番目の伝送パケット730は、二番目VOPの他の一部733を含み、四番目の伝送パケット740は、二番目のVOPの残りの一部743及び三番目のVOPの一部744を含む。各伝送パケットがVOPの一部を伝送データとして有する理由は、VOPの大きさが相異なり、伝送パケットの長さと伝送されるVOPの大きさとが一致していないためである。図7で、斜線のVOPの一部724、733、743は、暗号化されたVOPを表す。
【0042】
ストリーミングモジュール240は、コンテンツサーバ内になく、独立的なサーバとしても具現可能である。この場合には、暗号化部230からストリーミングサーバ234へのMPEG4ファイルの伝送は、インターネットのような通信網を通じて行われる。
【0043】
図8は、コンテンツクライアント300が伝送パケット241を受信してMPEG4ファイルを再生する方法を表すフローチャートである。
【0044】
コンテンツクライアント300内のパケット受信部320は、コンテンツサーバ200から伝送パケット241を受信してVOPを抽出する。VOP抽出過程は、パケット受信部320内のバッファに入るパケットを監視することによって行われる。まず、パケット受信部320は、伝送パケット241を伝送されて、パケットの伝送プロトコルヘッダ711、712などを除去することによってデカプセル化を行う(ステップ801)。その後、各VOPのVOPヘッダ内に存在するスタートコードが受信されるか否かを検出する(ステップ802)。
【0045】
図9は、伝送されたVOPの内部構造を示す図面である。各VOP910、920、・・・は、VOPヘッダ911及びVOPデータ912を含み、各VOPヘッダ911の最初の4バイトとしてスタートコード913を有する。
【0046】
スタートコードは、各VOPの最初の4バイトであって、あらかじめ決定された値を有する。後続するVOPのスタートコードが発見されれば、現在のVOPは抽出されて、復号化部330に伝送される(ステップ803)。
【0047】
復号化部330は、コンテンツサーバ200からDRMサーバ100を通じて伝送されたDRM復号化情報311を利用して、該当VOPを復号化する(ステップ804)。DRM暗号化情報311は、暗号化方式、暗号化したVOP ID、暗号化モードに関する情報及び暗号化キーを含み、DRMサーバモジュール210、DRMサーバ100、DRMクライアントモジュール310を通じて復号化部330に伝送される。
【0048】
メディア再生部340は、復号化部330から復号化されたVOPを受信して、それらを組合わせることによって復号化されたMPEG4ファイルを生成し、これを再生する(ステップ805)。
【0049】
図10は、本発明の他の実施例に係るデジタル著作権管理アトムの内部構成を示す図面である。本発明の他の実施例で、既存のMPEG4ファイルのメタデータとして新たなアトムが追加される。図2で、暗号化情報211は、DRM暗号化情報103に含まれてDRMサーバ100を通じて伝送されたが、本実施例では、DRMアトム1000の内部に暗号化情報211が含まれる。暗号化情報211は、暗号化キー、暗号化方式、暗号化モード及び暗号化されたVOP IDを含みうる。
【0050】
図10に示すDRMアトムは、アトム大きさ1010及びアトム類型1020以外に、暗号化モード1030、暗号化フラッグ1040、エントリー数1050及びエントリーテーブル1060を備える。暗号化フラッグ1040が1に設定されれば、あらゆるVOPを暗号化したことを意味し、暗号化フラッグ1040が0に設定されれば、一部のVOPのみが暗号化されたことを意味する。暗号化された一部のVOPのVOP IDは、エントリーテーブル1060に保存され、暗号化されたVOP数は、エントリー数1050に保存される。
【0051】
既存のMPEG4ファイルのフォーマットに影響を与えないために、DRMアトム1000は、ムーブアトムの下位アトムのうち最上位アトムに位置する。もし、DRMアトム1000が他の下位アトムに位置すれば、DRMアトムの上位アトムの大きさは何れも修正されねばならないためである。
【0052】
本実施例で、暗号化情報211は、MPEG4ファイルの内部に伝送されるため、コンテンツクライアント300は、暗号化情報に対応する復号化情報311に対する別途のファイルシステムを管理する必要がないという効果がある。
【0053】
図11は、アトムを生成する例示的なAPI(Application Program Interface)コードを表す。アップル社では、MPEG4ファイルフォーマットのアトムを生成するためのAPIとして‘QuickTime’を提供しており、図10は、QuickTimeで作成したアトム生成の例である。図10によれば、アトムの名称は、‘drma’と命名され、大きさは、‘100’と定められているということが分かる。
【0054】
以上、本発明について、その望ましい実施例を中心に説明した。当業者ならば、本発明が本発明の本質的な特性から逸脱しない範囲で変形された形態で具現され得るということが理解できる。したがって、開示された実施例は、限定的な観点ではなく、説明的な観点で考慮されねばならない。本発明の範囲は、前述した説明ではなく、特許請求の範囲に記載されており、それと同等な範囲内にあるあらゆる差異点は、本発明に含まれたものと解釈されねばならない。
【0055】
本発明に係るMPEG4ファイルの暗号化方法及びそれを利用したデジタル著作権の管理方法によれば、MPEG4ファイルのフォーマットを維持しつつ、VOP単位でファイルを暗号化するため、完成した形態のファイルフォーマットに容易に適用可能であると共にストリーミングサービスが可能である。
【0056】
また、MPEG4ファイルの生成過程に関係なくファイルを暗号化できるため、コンテンツ提供者の独立的な暗号化が可能であり、コンテンツ提供事業の活性化に役に立つ。
【図面の簡単な説明】
【0057】
【図1】動画ファイルのフォーマットを示す図面である。
【図2】本発明に係るデジタル著作権管理の概要図である。
【図3】本発明に係るMPEG4ファイルの暗号化方法を示すフローチャートである。
【図4】MPEG4ファイルのメディアデータアトムの構成を示す図面である。
【図5A】MPEG4ファイルのムーブアトムの構成を示す図面である。
【図5B】チャンクサイズアトム、サンプル数アトム及びサンプルサイズアトムの内部構成を示す図面である。
【図6A】多様な方式で暗号化した暗号化されたMPEGファイルの再生画面を示す図面である。
【図6B】多様な方式で暗号化した暗号化されたMPEGファイルの再生画面を示す図面である。
【図6C】多様な方式で暗号化した暗号化されたMPEGファイルの再生画面を示す図面である。
【図7】ストリーミングモジュールによりパケット化された伝送パケットの内部構造を示す図面である。
【図8】コンテンツクライアントが伝送パケットを受信してMPEG4ファイルを再生する方法を示すフローチャートである。
【図9】伝送されたVOPの内部構造を示す図面である。
【図10】本発明の他の実施例に係るデジタル著作権管理アトムの内部構成を示す図面である。
【図11】アトムを生成する例示的なAPIコードを示す図面である。
【符号の説明】
【0058】
100 DRMサーバ
200 コンテンツサーバ
220 コンテンツデータベース
300 コンテンツクライアント
320 パケット受信部
【特許請求の範囲】
【請求項1】
複数のビデオサンプルを含む動画ファイルの暗号化方法において、
前記複数のビデオサンプルのうち少なくとも一つのビデオサンプルの位置情報を抽出するステップと、
前記抽出された位置情報に基づいて、対応するビデオサンプルを抽出するステップと、
前記抽出されたビデオサンプルのうち、前記抽出されたビデオサンプルを表すビデオサンプルの識別情報を除いた残りの部分に対して、あらかじめ決定された暗号化情報に基づいて暗号化するステップと、
前記暗号化したビデオサンプルを前記動画ファイルに再挿入することによって、暗号化した動画ファイルを生成するステップと、
を含むことを特徴とする暗号化方法。
【請求項2】
前記暗号化情報は、暗号化キー及び暗号化方式を含むことを特徴とする請求項1に記載の暗号化方法。
【請求項3】
前記暗号化キーは、デジタル著作権管理サービスを利用して伝送されることを特徴とする請求項2に記載の暗号化方法。
【請求項4】
前記暗号化方式は、暗号化以前のメッセージワードと暗号化以後のコードワードとのビット数が同じになるように暗号化する方式であることを特徴とする請求項2に記載の暗号化方法。
【請求項5】
前記暗号化方式は、データ暗号化標準及び韓国標準暗号化アルゴリズムのうち何れか一つであることを特徴とする請求項4に記載の暗号化方法。
【請求項6】
前記動画ファイルは、MPEG規格によるファイルであることを特徴とする請求項1に記載の暗号化方法。
【請求項7】
前記動画ファイルは、MPEG4規格によるファイルであり、前記ビデオサンプルは、ストリーミング単位を表すチャンクに含まれたVOPであることを特徴とする請求項1に記載の暗号化方法。
【請求項8】
前記ビデオサンプルの位置情報を抽出するステップは、
VOPのメタデータを保存するムーブアトム内の下位アトムのうち、サンプルテーブルアトム内のメタデータからチャンクサイズ、チャンクオフセット、及びサンプルサイズを抽出するステップと、
前記抽出されたチャンクサイズ、チャンクオフセット、及びサンプルサイズに基づいて各VOPの位置を計算するステップと、
を含むことを特徴とする請求項7に記載の暗号化方法。
【請求項9】
前記暗号化情報は、暗号化モードをさらに備え、
前記暗号化モードは、VOPのうちI−VOPのみを暗号化する第1モード、VOPのうちB−VOP及びP−VOPのみを暗号化する第2モード、及びVOPのうちI、B、P−VOPを何れも暗号化する第3モードのうち何れか一つであることを特徴とする請求項8に記載の暗号化方法。
【請求項10】
前記暗号化情報は、暗号化されるVOPを識別するためのVOP IDをさらに含むことを特徴とする請求項8に記載の暗号化方法。
【請求項11】
前記ムーブアトムは、デジタル著作権管理アトムを含み、前記デジタル著作権管理アトムは、前記暗号化情報をメタデータとして含むことを特徴とする請求項8に記載の暗号化方法。
【請求項12】
前記デジタル著作権管理アトムは、ムーブアトムの最下位アトムとして保存されることを特徴とする請求項11に記載の暗号化方法。
【請求項13】
前記デジタル著作権管理アトムは、暗号化フラッグ及びエントリーテーブルを備え、前記暗号化するステップは、前記暗号化フラッグが第1類型に設定されれば、あらゆるVOPを暗号化し、第2類型に設定されれば、前記エントリーテーブル内に含まれたVOP IDに該当するVOPのみを暗号化することを特徴とする請求項11に記載の暗号化方法。
【請求項14】
所定の暗号化情報に基づいて、ビデオサンプル単位で選択的に暗号化された動画ファイルを復号化する方法であって、
前記動画ファイル内の各ビデオサンプルの開始を識別するビデオサンプル識別情報を検出するステップと、
前記ビデオサンプル識別情報に基づいて各ビデオサンプルを抽出するステップと、
前記暗号化情報に基づいて、前記抽出されたビデオサンプルのうち暗号化されたビデオサンプルを抽出するステップと、
前記暗号化情報に対応する復号化情報に基づいて、前記暗号化されたビデオサンプルを復号化するステップと、
前記復号化されたビデオサンプルを再挿入することによって、復号化された動画ファイルを再生するステップと、を含み、
前記暗号化されたビデオサンプルは、前記ビデオサンプル識別情報を除いた残りの部分のみが暗号化されたことを特徴とする復号化方法。
【請求項15】
前記暗号化情報は、暗号化キー及び暗号化方式を含むことを特徴とする請求項14に記載の復号化方法。
【請求項16】
前記復号化情報は、デジタル著作権管理サービスを利用して伝送されることを特徴とする請求項14に記載の暗号化方法。
【請求項17】
前記暗号化方式は、暗号化以前のメッセージワードと暗号化以後のコードワードとのビット数が同じになるように暗号化する方式であることを特徴とする請求項15に記載の暗号化方法。
【請求項18】
前記暗号化方式は、データ暗号化標準及び韓国標準暗号化アルゴリズムのうち何れか一つであることを特徴とする請求項17に記載の暗号化方法。
【請求項19】
前記暗号化情報は、暗号化モードをさらに含み、
前記暗号化モードは、VOPのうちI−VOPのみを暗号化する第1モード、VOPのうちB−VOP及びP−VOPのみを暗号化する第2モード、及びVOPのうちI、B、P−VOPを何れも暗号化する第3モードのうち何れか一つであることを特徴とする請求項15に記載の暗号化方法。
【請求項20】
前記暗号化情報は、暗号化されるVOP IDを識別するVOP IDをさらに含むことを特徴とする請求項15に記載の暗号化方法。
【請求項21】
コンテンツサーバ及びコンテンツクライアントを利用するデジタル著作権の管理方法であって、
コンテンツサーバ及びコンテンツクライアントを通じて所定の動画ファイルに対するユーザ認証過程を行うことによって、暗号化情報及び復号化情報を受信するステップと、
前記受信された暗号化情報に基づいて、該当動画ファイルをビデオサンプル単位で選択的に暗号化するステップと、
前記暗号化された動画ファイルをストリーミングサーバを通じて伝送するステップと、
前記伝送された動画ファイルから暗号化されたビデオサンプルを抽出するステップと、
前記受信された復号化情報を利用して、前記ビデオサンプルを識別するビデオサンプル識別情報を除いた前記ビデオサンプルの残りの部分を復号化するステップと、
前記復号化されたビデオサンプルを再挿入することによって、復号化された動画ファイルをリアルタイムで再生するステップと、
を含むことを特徴とする方法。
【請求項22】
前記暗号化情報及び復号化情報を受信するステップは、
前記コンテンツクライアントが所定の動画ファイルに対するユーザ認証要請をDRMサーバに伝送するステップと、
前記DRMサーバは、ユーザ認証を行い、ユーザの認証に関する情報を含むDRM認証情報を前記コンテンツサーバに伝送するステップと、
前記コンテンツサーバは、前記DRM認証情報に基づいて暗号化キーを生成し、前記暗号化キー及びユーザ入力による暗号化オプション情報に基づいて前記暗号化情報を生成するステップと、
前記コンテンツサーバが前記暗号化情報を前記DRMサーバに伝送するステップと、
前記DRMサーバは、前記暗号化情報に対応する前記復号化情報を前記コンテンツクライアントに伝送するステップと、
を含むことを特徴とする請求項21に記載の方法。
【請求項23】
前記動画ファイルは、MPEG規格によるファイルを含むことを特徴とする請求項22に記載の方法。
【請求項24】
前記動画ファイルは、MPEG4規格によるファイルを含み、前記ビデオサンプルは、ストリーミング単位のチャンク内のVOPであり、
前記暗号化するステップは、
該当MPEG4ファイルのムーブアトムをパーシングすることによって各VOPの位置情報を生成するステップと、
前記各VOPの位置情報に基づいて、前記MPEG4ファイルのメディアデータアトム内の各VOPを抽出するステップと、
前記抽出された各VOPを、VOPヘッダ内のスタートコードを除いた残りの部分に対して、あらかじめ決定された暗号化情報に基づいて暗号化するステップと、
前記暗号化したVOPを再度組合わせることによって、復号化したMPEG4ファイルを生成するステップと、
を含むことを特徴とする請求項22に記載の方法。
【請求項25】
前記位置情報を生成するステップは、
前記ムーブアトム内の下位アトムのうち、サンプルテーブルアトムからチャンクサイズ、チャンクオフセット及びサンプルサイズを抽出するステップと、
前記抽出されたチャンクサイズ、チャンクオフセット及びサンプルサイズに基づいて、各VOPの位置情報を計算するステップと、
を含むことを特徴とする請求項24に記載の方法。
【請求項26】
前記暗号化情報は、暗号化キー及び暗号化方式を含むことを特徴とする請求項21に記載の暗号化方法。
【請求項27】
前記暗号化方式は、暗号化以前のメッセージワードと暗号化以後コードワードとのビット数が同じになるように暗号化する方式であることを特徴とする請求項26に記載の暗号化方法。
【請求項28】
前記暗号化方式は、データ暗号化標準及び韓国標準暗号化アルゴリズムのうち何れか一つであることを特徴とする請求項27に記載の暗号化方法。
【請求項29】
前記暗号化されたVOPを抽出するステップは、
前記伝送されたパケットの伝送プロトコルヘッダをデカプセル化することによって、パケットのデータ部分のみを抽出するステップと、
前記パケットのデータ部分を組合わせることによって、前記VOPが結合されたデータストリームを生成するステップと、
前記結合されたデータストリーム内で各VOPを識別するVOP識別情報を検出するステップと、
前記VOP識別情報に基づいて各VOPを抽出するステップと、
前記暗号化情報に基づいて、前記抽出されたVOPのうち暗号化されたVOPを抽出するステップと、
を含むことを特徴とする請求項21に記載の復号化方法。
【請求項1】
複数のビデオサンプルを含む動画ファイルの暗号化方法において、
前記複数のビデオサンプルのうち少なくとも一つのビデオサンプルの位置情報を抽出するステップと、
前記抽出された位置情報に基づいて、対応するビデオサンプルを抽出するステップと、
前記抽出されたビデオサンプルのうち、前記抽出されたビデオサンプルを表すビデオサンプルの識別情報を除いた残りの部分に対して、あらかじめ決定された暗号化情報に基づいて暗号化するステップと、
前記暗号化したビデオサンプルを前記動画ファイルに再挿入することによって、暗号化した動画ファイルを生成するステップと、
を含むことを特徴とする暗号化方法。
【請求項2】
前記暗号化情報は、暗号化キー及び暗号化方式を含むことを特徴とする請求項1に記載の暗号化方法。
【請求項3】
前記暗号化キーは、デジタル著作権管理サービスを利用して伝送されることを特徴とする請求項2に記載の暗号化方法。
【請求項4】
前記暗号化方式は、暗号化以前のメッセージワードと暗号化以後のコードワードとのビット数が同じになるように暗号化する方式であることを特徴とする請求項2に記載の暗号化方法。
【請求項5】
前記暗号化方式は、データ暗号化標準及び韓国標準暗号化アルゴリズムのうち何れか一つであることを特徴とする請求項4に記載の暗号化方法。
【請求項6】
前記動画ファイルは、MPEG規格によるファイルであることを特徴とする請求項1に記載の暗号化方法。
【請求項7】
前記動画ファイルは、MPEG4規格によるファイルであり、前記ビデオサンプルは、ストリーミング単位を表すチャンクに含まれたVOPであることを特徴とする請求項1に記載の暗号化方法。
【請求項8】
前記ビデオサンプルの位置情報を抽出するステップは、
VOPのメタデータを保存するムーブアトム内の下位アトムのうち、サンプルテーブルアトム内のメタデータからチャンクサイズ、チャンクオフセット、及びサンプルサイズを抽出するステップと、
前記抽出されたチャンクサイズ、チャンクオフセット、及びサンプルサイズに基づいて各VOPの位置を計算するステップと、
を含むことを特徴とする請求項7に記載の暗号化方法。
【請求項9】
前記暗号化情報は、暗号化モードをさらに備え、
前記暗号化モードは、VOPのうちI−VOPのみを暗号化する第1モード、VOPのうちB−VOP及びP−VOPのみを暗号化する第2モード、及びVOPのうちI、B、P−VOPを何れも暗号化する第3モードのうち何れか一つであることを特徴とする請求項8に記載の暗号化方法。
【請求項10】
前記暗号化情報は、暗号化されるVOPを識別するためのVOP IDをさらに含むことを特徴とする請求項8に記載の暗号化方法。
【請求項11】
前記ムーブアトムは、デジタル著作権管理アトムを含み、前記デジタル著作権管理アトムは、前記暗号化情報をメタデータとして含むことを特徴とする請求項8に記載の暗号化方法。
【請求項12】
前記デジタル著作権管理アトムは、ムーブアトムの最下位アトムとして保存されることを特徴とする請求項11に記載の暗号化方法。
【請求項13】
前記デジタル著作権管理アトムは、暗号化フラッグ及びエントリーテーブルを備え、前記暗号化するステップは、前記暗号化フラッグが第1類型に設定されれば、あらゆるVOPを暗号化し、第2類型に設定されれば、前記エントリーテーブル内に含まれたVOP IDに該当するVOPのみを暗号化することを特徴とする請求項11に記載の暗号化方法。
【請求項14】
所定の暗号化情報に基づいて、ビデオサンプル単位で選択的に暗号化された動画ファイルを復号化する方法であって、
前記動画ファイル内の各ビデオサンプルの開始を識別するビデオサンプル識別情報を検出するステップと、
前記ビデオサンプル識別情報に基づいて各ビデオサンプルを抽出するステップと、
前記暗号化情報に基づいて、前記抽出されたビデオサンプルのうち暗号化されたビデオサンプルを抽出するステップと、
前記暗号化情報に対応する復号化情報に基づいて、前記暗号化されたビデオサンプルを復号化するステップと、
前記復号化されたビデオサンプルを再挿入することによって、復号化された動画ファイルを再生するステップと、を含み、
前記暗号化されたビデオサンプルは、前記ビデオサンプル識別情報を除いた残りの部分のみが暗号化されたことを特徴とする復号化方法。
【請求項15】
前記暗号化情報は、暗号化キー及び暗号化方式を含むことを特徴とする請求項14に記載の復号化方法。
【請求項16】
前記復号化情報は、デジタル著作権管理サービスを利用して伝送されることを特徴とする請求項14に記載の暗号化方法。
【請求項17】
前記暗号化方式は、暗号化以前のメッセージワードと暗号化以後のコードワードとのビット数が同じになるように暗号化する方式であることを特徴とする請求項15に記載の暗号化方法。
【請求項18】
前記暗号化方式は、データ暗号化標準及び韓国標準暗号化アルゴリズムのうち何れか一つであることを特徴とする請求項17に記載の暗号化方法。
【請求項19】
前記暗号化情報は、暗号化モードをさらに含み、
前記暗号化モードは、VOPのうちI−VOPのみを暗号化する第1モード、VOPのうちB−VOP及びP−VOPのみを暗号化する第2モード、及びVOPのうちI、B、P−VOPを何れも暗号化する第3モードのうち何れか一つであることを特徴とする請求項15に記載の暗号化方法。
【請求項20】
前記暗号化情報は、暗号化されるVOP IDを識別するVOP IDをさらに含むことを特徴とする請求項15に記載の暗号化方法。
【請求項21】
コンテンツサーバ及びコンテンツクライアントを利用するデジタル著作権の管理方法であって、
コンテンツサーバ及びコンテンツクライアントを通じて所定の動画ファイルに対するユーザ認証過程を行うことによって、暗号化情報及び復号化情報を受信するステップと、
前記受信された暗号化情報に基づいて、該当動画ファイルをビデオサンプル単位で選択的に暗号化するステップと、
前記暗号化された動画ファイルをストリーミングサーバを通じて伝送するステップと、
前記伝送された動画ファイルから暗号化されたビデオサンプルを抽出するステップと、
前記受信された復号化情報を利用して、前記ビデオサンプルを識別するビデオサンプル識別情報を除いた前記ビデオサンプルの残りの部分を復号化するステップと、
前記復号化されたビデオサンプルを再挿入することによって、復号化された動画ファイルをリアルタイムで再生するステップと、
を含むことを特徴とする方法。
【請求項22】
前記暗号化情報及び復号化情報を受信するステップは、
前記コンテンツクライアントが所定の動画ファイルに対するユーザ認証要請をDRMサーバに伝送するステップと、
前記DRMサーバは、ユーザ認証を行い、ユーザの認証に関する情報を含むDRM認証情報を前記コンテンツサーバに伝送するステップと、
前記コンテンツサーバは、前記DRM認証情報に基づいて暗号化キーを生成し、前記暗号化キー及びユーザ入力による暗号化オプション情報に基づいて前記暗号化情報を生成するステップと、
前記コンテンツサーバが前記暗号化情報を前記DRMサーバに伝送するステップと、
前記DRMサーバは、前記暗号化情報に対応する前記復号化情報を前記コンテンツクライアントに伝送するステップと、
を含むことを特徴とする請求項21に記載の方法。
【請求項23】
前記動画ファイルは、MPEG規格によるファイルを含むことを特徴とする請求項22に記載の方法。
【請求項24】
前記動画ファイルは、MPEG4規格によるファイルを含み、前記ビデオサンプルは、ストリーミング単位のチャンク内のVOPであり、
前記暗号化するステップは、
該当MPEG4ファイルのムーブアトムをパーシングすることによって各VOPの位置情報を生成するステップと、
前記各VOPの位置情報に基づいて、前記MPEG4ファイルのメディアデータアトム内の各VOPを抽出するステップと、
前記抽出された各VOPを、VOPヘッダ内のスタートコードを除いた残りの部分に対して、あらかじめ決定された暗号化情報に基づいて暗号化するステップと、
前記暗号化したVOPを再度組合わせることによって、復号化したMPEG4ファイルを生成するステップと、
を含むことを特徴とする請求項22に記載の方法。
【請求項25】
前記位置情報を生成するステップは、
前記ムーブアトム内の下位アトムのうち、サンプルテーブルアトムからチャンクサイズ、チャンクオフセット及びサンプルサイズを抽出するステップと、
前記抽出されたチャンクサイズ、チャンクオフセット及びサンプルサイズに基づいて、各VOPの位置情報を計算するステップと、
を含むことを特徴とする請求項24に記載の方法。
【請求項26】
前記暗号化情報は、暗号化キー及び暗号化方式を含むことを特徴とする請求項21に記載の暗号化方法。
【請求項27】
前記暗号化方式は、暗号化以前のメッセージワードと暗号化以後コードワードとのビット数が同じになるように暗号化する方式であることを特徴とする請求項26に記載の暗号化方法。
【請求項28】
前記暗号化方式は、データ暗号化標準及び韓国標準暗号化アルゴリズムのうち何れか一つであることを特徴とする請求項27に記載の暗号化方法。
【請求項29】
前記暗号化されたVOPを抽出するステップは、
前記伝送されたパケットの伝送プロトコルヘッダをデカプセル化することによって、パケットのデータ部分のみを抽出するステップと、
前記パケットのデータ部分を組合わせることによって、前記VOPが結合されたデータストリームを生成するステップと、
前記結合されたデータストリーム内で各VOPを識別するVOP識別情報を検出するステップと、
前記VOP識別情報に基づいて各VOPを抽出するステップと、
前記暗号化情報に基づいて、前記抽出されたVOPのうち暗号化されたVOPを抽出するステップと、
を含むことを特徴とする請求項21に記載の復号化方法。
【図1】
【図2】
【図3】
【図4】
【図5A】
【図5B】
【図6A】
【図6B】
【図6C】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5A】
【図5B】
【図6A】
【図6B】
【図6C】
【図7】
【図8】
【図9】
【図10】
【図11】
【公表番号】特表2007−518294(P2007−518294A)
【公表日】平成19年7月5日(2007.7.5)
【国際特許分類】
【出願番号】特願2006−542508(P2006−542508)
【出願日】平成16年12月8日(2004.12.8)
【国際出願番号】PCT/KR2004/003213
【国際公開番号】WO2005/055075
【国際公開日】平成17年6月16日(2005.6.16)
【出願人】(506193671)
【出願人】(503447036)サムスン エレクトロニクス カンパニー リミテッド (2,221)
【Fターム(参考)】
【公表日】平成19年7月5日(2007.7.5)
【国際特許分類】
【出願日】平成16年12月8日(2004.12.8)
【国際出願番号】PCT/KR2004/003213
【国際公開番号】WO2005/055075
【国際公開日】平成17年6月16日(2005.6.16)
【出願人】(506193671)
【出願人】(503447036)サムスン エレクトロニクス カンパニー リミテッド (2,221)
【Fターム(参考)】
[ Back to top ]