情報処理装置、情報処理方法およびコンピュータプログラム
【課題】デバイスバインド方式を用いた際に、デバイスバインド方式による指定機器および同一ユーザが保有する他の機器に著作権管理されたコンテンツの配布し、該コンテンツを実行するよう制御することが可能な情報処理装置を提供する。
【解決手段】機器単位でコンテンツを管理するためのライセンス情報を保持するライセンス情報保持部と、前記ライセンス情報保持部に保持されている前記ライセンス情報に含まれるユーザ情報と、自装置に格納される該自装置のユーザ情報とを比較するライセンス管理部と、前記ライセンス管理部によって、前記ライセンス情報に含まれるユーザ情報と、自装置のユーザ情報とが一致されたと判断された場合に限り、前記ライセンス情報に含まれるデバイス鍵で該ライセンス情報に対応するコンテンツを復号して実行する実行制御部と、を備える、情報処理装置が提供される。
【解決手段】機器単位でコンテンツを管理するためのライセンス情報を保持するライセンス情報保持部と、前記ライセンス情報保持部に保持されている前記ライセンス情報に含まれるユーザ情報と、自装置に格納される該自装置のユーザ情報とを比較するライセンス管理部と、前記ライセンス管理部によって、前記ライセンス情報に含まれるユーザ情報と、自装置のユーザ情報とが一致されたと判断された場合に限り、前記ライセンス情報に含まれるデバイス鍵で該ライセンス情報に対応するコンテンツを復号して実行する実行制御部と、を備える、情報処理装置が提供される。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理装置、情報処理方法およびコンピュータプログラムに関する。
【背景技術】
【0002】
近年、音楽コンテンツや映像コンテンツなどのデジタルコンテンツ(以下、コンテンツ)を、該コンテンツが格納されるサーバから利用者が所有するPC(Personal Computer)や携帯電話などの情報処理装置に配信するサービスが行われている。また、上記コンテンツは複製されても、何度伝送されても品質が劣化しないため、コンテンツの利用を制限する、DRM(Digital Rights Management)等の著作権保護技術が注目を集めている。
【0003】
著作権保護技術の管理方式は、デバイスバインド方式とユーザバインド方式に大別される。デバイスバインド方式とは、上記サーバがコンテンツの再生回数やエクスポート回数などの利用条件を定めたライセンスを、特定の情報処理装置に限定して提供する方式である。ユーザバインド方式とは、複数の情報処理装置をグループ化して、上記サーバがコンテンツのライセンスを、該グループに属する情報処理装置に対して提供する方式である。ここで、エクスポートとは、ある著作権保護技術によるライセンスに基づいて、他の著作権保護技術によるライセンスを生成することを意味する。このような著作権保護技術の管理方式に関する技術は、例えば特許文献1〜特許文献4等で開示されている。
【0004】
デバイスバインドを用いた場合、指定した機器でのみ利用出来るため、サーバ側で対応機器であるかどうかを識別すれば、対応する機器だけにコンテンツを配布することが可能である。また、デバイスバインドでは、同じ機種あっても機器固有の鍵を用いるため、コンテンツを他の機器と共有させることは出来ず、ライセンスは機器毎に必要となる。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2007−35077号公報
【特許文献2】特開2007−304849号公報
【特許文献3】特開2007−310835号公報
【特許文献4】特開2009−48667号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかし、デバイスバインド方式を用いた場合、ユーザが複数の機器を持つ場合や、同じ機種や互換性のある機種を持つ場合であっても、機種間で互換性はないが同じ扱いができるコンテンツを全て新たに購入して、ライセンスを取得する必要があった。また、互換性のある機器への別ライセンスの無料配布や、互換性は無いが同一のものとして扱うコンテンツの別ライセンス、別コンテンツの無料配布を行った場合、機器の売却や譲渡により、デバイスバインドの保護が維持出来なくなる。さらに、機器の買い替え等でユーザが保有する機器が変われば、変更後の機器で同じコンテンツが利用可能でも、その機器毎に別のライセンスを発行しなければならない。しかし、サーバ側で同一ユーザに複数の別ライセンスを発行した場合、機器の売却や譲渡の際にライセンス管理をコントロール出来なくなる。
【0007】
そこで、本開示は、上記問題に鑑みてなされたものであり、本開示の目的とするところは、デバイスバインド方式を用いた際に、デバイスバインド方式による指定機器および同一ユーザが保有する他の機器に著作権管理されたコンテンツの配布し、該コンテンツを実行するよう制御することが可能な、新規かつ改良された情報処理装置、情報処理方法およびコンピュータプログラムを提供することにある。
【課題を解決するための手段】
【0008】
本開示によれば、機器単位でコンテンツを管理するためのライセンス情報を保持するライセンス情報保持部と、前記ライセンス情報保持部に保持されている前記ライセンス情報に含まれるユーザ情報と、自装置に格納される該自装置のユーザ情報とを比較するライセンス管理部と、前記ライセンス管理部によって、前記ライセンス情報に含まれるユーザ情報と、自装置のユーザ情報とが一致されたと判断された場合に限り、前記ライセンス情報に含まれるデバイス鍵で該ライセンス情報に対応するコンテンツを復号して実行する実行制御部と、を備える、情報処理装置が提供される。
【0009】
また本開示によれば、機器単位でコンテンツを管理するためのライセンス情報を保持するライセンス情報保持ステップと、前記ライセンス情報保持ステップで保持された前記ライセンス情報に含まれるユーザ情報と、自装置に格納される該自装置のユーザ情報とを比較するライセンス管理ステップと、前記ライセンス管理ステップによって、前記ライセンス情報に含まれるユーザ情報と、自装置のユーザ情報とが一致されたと判断された場合に限り、前記ライセンス情報に含まれるデバイス鍵で該ライセンス情報に対応するコンテンツを復号して実行する実行制御ステップと、を備える、情報処理方法が提供される。
【0010】
また本開示によれば、コンピュータに、機器単位でコンテンツを管理するためのライセンス情報を保持するライセンス情報保持ステップと、前記ライセンス情報保持ステップで保持された前記ライセンス情報に含まれるユーザ情報と、自装置に格納される該自装置のユーザ情報とを比較するライセンス管理ステップと、前記ライセンス管理ステップによって、前記ライセンス情報に含まれるユーザ情報と、自装置のユーザ情報とが一致されたと判断された場合に限り、前記ライセンス情報に含まれるデバイス鍵で該ライセンス情報に対応するコンテンツを復号して実行する実行制御ステップと、を実行させる、コンピュータプログラムが提供される。
【発明の効果】
【0011】
以上説明したように本開示によれば、デバイスバインド方式を用いた際に、デバイスバインド方式による指定機器および同一ユーザが保有する他の機器に著作権管理されたコンテンツの配布し、該コンテンツを実行するよう制御することが可能な、新規かつ改良された情報処理装置、情報処理方法およびコンピュータプログラムを提供することができる。
【図面の簡単な説明】
【0012】
【図1】本開示の一実施形態にかかる情報処理システム1のシステム構成例を示す説明図である。
【図2】本開示の一実施形態にかかるデジタルカメラ100の構成例を示す説明図である。
【図3】本開示の一実施形態にかかる情報処理システム1で用いられるメタデータ構造例を示す説明図である。
【図4】モードの設定例を示す説明図である。
【図5】モードとディレクトリ構造との関係を示す説明図である。
【図6】本開示の一実施形態にかかるデジタルカメラ100の動作を示す流れ図である。
【図7】本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。
【図8】本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。
【図9】本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。
【図10】本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。
【図11】本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。
【図12】本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。
【図13】本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。
【図14】本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。
【図15】本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。
【図16】メタデータの構成例を示す説明図である。
【図17】アプリケーションやデータの内容例を示す説明図である。
【図18】本開示の一実施形態にかかる情報処理システム1で用いられるメタデータ構造例を示す説明図である。
【図19】本開示の一実施形態にかかるコンテンツダウンロードサーバ10の機能構成例を示す説明図である。
【図20】機器マッチングデータベース12の内容例を示す説明図である。
【図21】アプリケーションやデータをクライアントの機器に提供する際の階層構造を示す説明図である。
【図22】アプリケーションやデータをクライアントの機器に提供する際の階層構造を示す説明図である。
【図23】本開示の一実施形態にかかる情報処理システム1における、コンテンツ登録者とダウンロードサーバとの間の処理の流れを示す流れ図である。
【図24】クライアント機器とダウンロードサーバとの間の処理の流れを示す流れ図である。
【図25】コンテンツ登録者によるコンテンツ登録の流れを示す流れ図である。
【図26】クライアント機器によるコンテンツ検索および取得処理の流れを示す流れ図である。
【図27】ダウンロードサーバによるコンテンツ検索および送信処理を示す流れ図である。
【図28】クライアント機器によるコンテンツの実行処理を示す流れ図である。
【図29】本開示の一実施形態にかかる情報処理システム1のシステム構成例を示す説明図である。
【図30】従来のユーザバインド方式の概要を示す説明図である。
【図31】従来のデバイスバインド方式の概要を示す説明図である。
【図32】本開示の一実施形態における、デバイスバインド方式によるコンテンツの配布方法の概要を示す説明図である。
【発明を実施するための形態】
【0013】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【0014】
なお、説明は以下の順序で行うものとする。
<1.本開示の一実施形態>
[ユーザバインド方式とデバイスバインド方式について]
[システム構成例]
[デジタルカメラの構成例]
[デジタルカメラの動作]
<2.まとめ>
【0015】
<1.本開示の一実施形態>
[ユーザバインド方式とデバイスバインド方式について]
まず、本開示の好適な実施の形態について詳細に説明するにあたり、ユーザバインド方式とデバイスバインド方式について説明する。そして、従来のユーザバインド方式の問題点と、この問題点を解決する本開示の好適な実施の形態について詳細に説明する。
【0016】
図30は、従来のユーザバインド方式の概要を示す説明図である。ユーザバインド方式は、ユーザ固有の鍵であるユーザ鍵でコンテンツ鍵を暗号化し、ユーザがDRMサーバに登録した機器の範囲でコンテンツを利用する方式である。従来のユーザバインド方式は、ライセンスを発行するDRMサーバにおいて、コンテンツ利用条件と、暗号化したコンテンツ鍵を、ユーザ固有の鍵であるユーザ鍵で暗号化する。またコンテンツを利用する機器において、機器固有のデバイス鍵と、デバイス鍵で暗号化されるユーザ固有のユーザ鍵と、を有している。デバイス鍵はRSA秘密鍵であり、機器生産時に内部に格納され、ハードウェア的に保護される。ユーザ鍵は、機器をDRMサーバに登録することで取得することができる。
【0017】
ユーザはDRMサーバからライセンスを機器にダウンロードすると、機器は、ライセンス条件を満足しているか評価した後、デバイス鍵で復号したユーザ鍵を用いてコンテンツ鍵を復号する。機器では、コンテンツ鍵が取り出されると、このコンテンツ鍵を用いてコンテンツサーバからダウンロードしたコンテンツを復号し、コンテンツを利用することができる。
【0018】
図31は、従来のデバイスバインド方式の概要を示す説明図である。デバイスバインド方式は、機器(デバイス)固有の鍵であるデバイス鍵でコンテンツ鍵を暗号化し、DRMサーバに登録した指定機器でのみコンテンツを利用する方式である。従来のデバイスバインド方式は、ライセンスを発行するDRMサーバにおいて、コンテンツ利用条件を含んだライセンスを機器(デバイス)固有の鍵であるデバイス鍵で暗号化し(ライセンスの暗号化は必須ではない)、コンテンツをコンテンツ鍵で暗号化する。またコンテンツを利用する機器において、機器固有のデバイス鍵を有している。デバイス鍵はRSA秘密鍵であり、機器生産時に機器内部に格納され、ハードウェア的に保護される。
【0019】
ユーザはDRMサーバからライセンスを機器にダウンロードすると、機器はライセンスを評価し、ライセンスが条件を満足している場合に、デバイス鍵を用いてコンテンツ鍵を復号する。ライセンスが復号されると、ライセンスに含まれているコンテンツ鍵が取り出される。機器では、コンテンツ鍵が取り出されると、このコンテンツ鍵を用いてコンテンツサーバからダウンロードしたコンテンツを復号し、コンテンツを利用することができる。
【0020】
しかし、上述したように、デバイスバインド方式を用いた場合、ユーザが複数の機器を持つ場合、同じ機種や互換性のある機種を持つ場合であっても、新たに別々のコンテンツとして購入しライセンスを取得する必要があった。また、互換性のある機器への別ライセンスの無料配布や、互換性は無いが同一のものとして扱うコンテンツの別ライセンス、別コンテンツの無料配布を行なってしまうと、機器の売却や譲渡の際に別のユーザが利用し続ける事が可能となってしまう。さらに、機器の買い替え等でユーザが保有する機器が変われば、変更後の機器で同じコンテンツが利用可能でも、その機器毎に別のライセンスを発行しなければならない。しかし、サーバ側で同一ユーザに複数の別ライセンスを発行した場合、機器の売却や譲渡の際にライセンス管理をコントロール出来なくなる。
【0021】
そこで本開示の一実施形態では、デバイスバインド方式において、同一のユーザであれば、ユーザが複数の機器を持つ場合や、同じ機種や互換性のある機種を持つ場合に、同じ扱いができるコンテンツを動作させるためのライセンスを発行し、コンテンツの実行を許可させることで、デバイスバインド方式にユーザバインド方式の思想を取り入れる。これにより、ユーザが複数の機器を保有したり、機器を買い換えたりした場合のコンテンツ管理の利便性を高めることができる。
【0022】
図32は、本開示の一実施形態における、デバイスバインド方式によるコンテンツの配布方法の概要を示す説明図である。本開示の一実施形態におけるコンテンツ配布方法は、サーバ側で機器マッチングを行ない、既に同一視できるコンテンツをそのユーザが保有していれば、その対象機器に対してライセンスを発行する。
【0023】
図32では、ユーザAが保有する機器Aおよび機器Cには、サーバからダウンロードした、コンテンツを実行するためのライセンスがインストールされており、機器Aおよび機器Cは、このライセンスによりコンテンツを実行することができる。ここで、ユーザAが保有する別の機器Bで使用するために、機器A用に既に購入したコンテンツAと同じように利用できるコンテンツBをユーザAが購入する場合には、サーバは、別途の手続きや、場合によっては代金の支払いをせずに、サーバからライセンスおよびコンテンツを配布する。しかし、機器Bが、ユーザAからユーザBに譲渡され、ユーザBが保有するものとして機器Bがサーバに登録されると、ユーザBは、コンテンツBを機器Bで利用するには、別途サーバから、ユーザB用に発行されるライセンスを取得しなければならない。
【0024】
本開示の一実施形態における、デバイスバインド方式によるコンテンツの配布方法は、このようにライセンスを管理することで、機器を保有するユーザに絞ったコンテンツの提供が可能であり、権利が有れば、他の機器をサーバに接続して、ライセンスをインストールすることが可能となる。
【0025】
[システム構成例]
まず、本開示の一実施形態のシステム構成例について説明する。図1は、本開示の一実施形態にかかる情報処理システム1のシステム構成例を示す説明図である。以下、図1を参照して、本開示の一実施形態にかかる情報処理システム1のシステム構成例について説明する。
【0026】
図1に示したように、本開示の一実施形態にかかる情報処理システム1は、コンテンツダウンロードサーバ10と、DRMサーバ20と、デジタルカメラ100と、を含んで構成される。コンテンツダウンロードサーバ10と、DRMサーバ20と、デジタルカメラ100とは、インターネット30を介して相互に接続されている。なお、図1では各装置とも1台ずつのみを図示しているが、本開示はかかる例に限定されないことは言うまでもない。
【0027】
コンテンツダウンロードサーバ10は、デジタルカメラ100が実行するアプリケーションを保持し、デジタルカメラ100からの要求に応じて、インターネット30を介してコンテンツ(アプリケーションや、アプリケーションで実行されるデータ等をいう)を提供するものである。コンテンツダウンロードサーバ10が提供するコンテンツは暗号化されており、DRMサーバ20が生成するライセンスに含まれる、コンテンツに対応するコンテンツ鍵を用いないと復号することはできない。DRMサーバ20は、デジタルカメラ100が実行するコンテンツをデジタルカメラ100で利用するためのライセンスを発行し、デジタルカメラ100からの要求に応じて、インターネット30を介してライセンスを提供するものである。
【0028】
デジタルカメラ100は、静止画像や動画像を撮影するものである。そして本実施形態では、デジタルカメラ100はインターネット30に接続する機能を有し、コンテンツダウンロードサーバ10やDRMサーバ20にアクセスすることができる。そしてデジタルカメラ100は、インターネット30を介して、コンテンツダウンロードサーバ10が保持しているコンテンツや、DRMサーバ20が発行するライセンスをダウンロードすることができる。
【0029】
本実施形態では、コンテンツダウンロードサーバ10からダウンロードするコンテンツに、所定のフォーマットで記述されたメタデータが付随される。デジタルカメラ100は、アプリケーションやデータを保存する際に、このメタデータを解析して、アプリケーションやデータの保存先を決定することが出来る。デジタルカメラ100による、メタデータの解析処理およびアプリケーションやデータの保存先の決定処理の詳細については後述する。
【0030】
デジタルカメラ100はインターネット30に無線で接続することができるが、有線で接続できてもよい。またコンテンツダウンロードサーバ10やDRMサーバ20は、インターネット30に有線で接続することができるが、無線で接続できてもよい。
【0031】
以上、図1を参照して、本開示の一実施形態にかかる情報処理システム1のシステム構成例について説明した。次に、本開示の一実施形態にかかるデジタルカメラ100の構成例について説明する。
【0032】
[デジタルカメラの構成例]
図2は、本開示の一実施形態にかかるデジタルカメラ100の構成例を示す説明図である。また、図2には、インターネット30に接続されているコンテンツダウンロードサーバ10およびライセンスを発行するDRMサーバ20も図示されている。以下、図2を用いて、本開示の一実施形態にかかるデジタルカメラ100の構成例について説明する。
【0033】
図2に示したように、本開示の一実施形態にかかるデジタルカメラ100は、撮像部101と、カメラ制御部102と、画像処理部103と、画像管理部104と、I/F105と、表示部106と、メモリ107と、外部記憶装置部108と、フォーマット処理部109と、ファイル管理部110と、アプリケーション実行制御部111と、USB112と、ネットワーク処理部113と、ライセンス格納部114と、ライセンス管理部115と、DRM処理部116と、を含んで構成される。
【0034】
撮像部101は、撮像処理を行う。撮像部101は、ズームレンズ、フォーカスレンズ、CCDイメージセンサやCMOSイメージセンサ等の撮像素子を含んで構成され、被写体の光を電気信号(画像信号)に変換するものである。カメラ制御部102は、撮像部101の制御を行うものであり、デジタルカメラ100のユーザ操作に基づいて、例えば、撮像部101に含まれるズームレンズやフォーカスレンズの動作を制御したり、撮像素子への光の入射タイミングを制御したりする。
【0035】
画像処理部103は、撮像部101によって得られる画像信号に対する信号処理を施して画像データを得る。画像処理部103は、画像信号に対する信号処理として、例えばノイズ除去処理、圧縮処理等を実行しても良い。画像管理部104は、画像処理部103によって得られる画像データの、表示部106への表示や、外部記憶装置部108への保存を管理する。
【0036】
I/F105は、フラッシュその他の装置をデジタルカメラ100に接続するためのインタフェースである。表示部106は、撮像部101が撮像した画像や、デジタルカメラ100の操作のためのユーザインタフェースその他の情報を表示するものである。表示部106は、液晶ディスプレイ、有機ELディスプレイ等の平板表示装置で構成される。
【0037】
メモリ107は、デジタルカメラ100が何らかの処理を実行する際にデータを一時的に格納する。メモリ107は、例えば、デジタルカメラ100の電源が切られると格納されたデータが消去される揮発性メモリで構成されていても良い。
【0038】
外部記憶装置部108は、画像処理部103によって生成される画像データ、コンテンツダウンロードサーバ10からダウンロードするアプリケーションやコンテンツデータを保存するためのメモリーカードその他の外部記憶装置である。外部記憶装置部108への画像データの保存や、外部記憶装置部108からの画像データの読み出しは、例えば画像管理部104によって実行される。
【0039】
フォーマット処理部109は、コンテンツダウンロードサーバ10からダウンロードするアプリケーションやコンテンツデータに付随しているメタデータの内容を解析する。フォーマット処理部109は、メタデータの内容を解析して、コンテンツダウンロードサーバ10からダウンロードしたアプリケーションやコンテンツデータの、ファイル管理部110によるファイル管理を制御する。
【0040】
ファイル管理部110は、コンテンツダウンロードサーバ10からダウンロードするアプリケーションやコンテンツデータの、外部記憶装置部108への保存を管理する。ファイル管理部110は、アプリケーションやデータの外部記憶装置部108への保存に際しては、フォーマット処理部109によるメタデータの解析結果が用いられる。フォーマット処理部109によるメタデータの解析処理、および解析結果を用いたファイル管理部110によるアプリケーションやデータの外部記憶装置部108への保存処理の詳細については後述する。
【0041】
アプリケーション実行制御部111は、コンテンツダウンロードサーバ10からダウンロードされ、外部記憶装置部108に保存されたアプリケーションを実行する。アプリケーション実行制御部111は、外部記憶装置部108に保存されたアプリケーションを実行する際に、コンテンツダウンロードサーバ10からダウンロードされて外部記憶装置部108に保存されたコンテンツを利用してもよい。
【0042】
USB112は、デジタルカメラ100と他の装置とをUSBケーブルで接続するためのインタフェースである。ネットワーク処理部113は、インターネット30への接続処理を実行する。デジタルカメラ100は、ネットワーク処理部113によるインターネット30への接続処理により、インターネット30に接続されたコンテンツダウンロードサーバ10から、アプリケーションやデータをダウンロードすることができる。そして、デジタルカメラ100は、ダウンロードしたアプリケーションやデータにより、デジタルカメラ100の機能を向上させたり、ユーザの用途に応じた細かなカスタマイズが可能になったり、新たなコンテンツの利用が可能になったりする。
【0043】
ライセンス格納部114は、DRMサーバ20からダウンロードしたライセンスを格納する。ライセンス格納部114は、セキュアな領域で保護され、ライセンス格納部114へのライセンスの格納およびライセンス格納部114からのライセンスの読出しはライセンス管理部115によって行われる。
【0044】
ライセンス管理部115は、ライセンス格納部114へのライセンスの格納およびライセンス格納部114からのライセンスの読出しを実行する。ライセンス管理部115は、ライセンス格納部114へのライセンスの格納は、DRMサーバ20からライセンスをダウンロードしたタイミングにおいてのみ行われ、その他の場合はライセンス格納部114へはライセンスの書き込みは行われない。従って、ライセンス管理部115がこのようにライセンス格納部114へのライセンスの書き込みタイミングを制限することで、DRMサーバ20が動作を認めた機器だけにコンテンツダウンロードサーバ10からコンテンツを配布し、実行するような制御が行える。
【0045】
DRM処理部116は、ライセンス格納部114に格納されたライセンスを用いたDRM処理を実行する。具体的には、DRM処理部116は、ライセンス格納部114に格納されたライセンスを用いて、コンテンツダウンロードサーバ10からダウンロードしたコンテンツを復号する。DRM処理部116は、ライセンス格納部114に格納されたライセンスを用いたDRM処理を実行することで、著作権管理されたコンテンツの、アプリケーション実行制御部111による実行を制御することができる。
【0046】
以上、図2を用いて本開示の一実施形態にかかるデジタルカメラ100の構成例について説明した。次に、本開示の一実施形態にかかるデジタルカメラ100の動作について説明する。
【0047】
[デジタルカメラの動作]
まず、本開示の一実施形態にかかるデジタルカメラ100の動作について具体的に説明する前に、本開示の一実施形態にかかる情報処理システム1で用いられるメタデータの構造例について説明する。図3は、本開示の一実施形態にかかる情報処理システム1で用いられるメタデータの構造例を示す説明図である。
【0048】
図3に示したように、本開示の一実施形態にかかる情報処理システム1で用いられるメタデータは、“IDGroup”、“Platform”、“Group”、“Name”の4つの要素からなる階層構造を有する。再上位の階層が“IDGroup”であり、以下“Platform”、“Group”、“Name”の順に階層が下がっていく。
【0049】
“IDGroup”は、例えば、フォーマットフォルダーによりID管理を行う団体に与えられるユニークなIDである。“IDGroup”以下は、各団体が、“Platform”、“Group”、“Name”がユニークになるように独自に管理する。
【0050】
“Platform”は、例えば、OSや製品群単位で設定されるプラットフォーム名が記録されるIDであり、“IDGroup”以下では“Platform”はユニークなIDとなるが、ID管理を行う団体同士の取り決めにより、“IDGroup”を跨いで同一のIDを“Platform”に設定することもできる。
【0051】
“Group”は、“Platform”以下でユニークに命名されるIDであり、例えば、同じ形式であるが内容が異なるデータなど、あるプラットフォームで共通に扱うことができるグループ名を表す。例えば、ID管理を行う団体同士の取り決めにより、“IDGroup”を跨いで同一のIDを“Group”に設定することもできる。
【0052】
“Name”は、“Group”以下でユニークに命名されるIDであり、例えば、アプリケーションやデータの名称が設定されるIDである。“Name”は、アプリケーションのホームディレクトリの名前として利用できるようにしても良い。そして、“Name”以下はそれぞれのアプリケーションやデータで自由に構造を持たせて管理できるようにしてもよい。
【0053】
図3に示した階層構造の例では、“IDGroup”には“IDGroup1”と“IDGroup2”とが設定されている。“IDGroup1”には“Platform1”と“Platform2”とが設定され、“IDGroup2”には“Platform1”が設定されている。従って、“IDGroup1”と“IDGroup2”とには、同一の“Platform”である“Platform1”が設定されていることになる。
【0054】
そして、“IDGroup1”の“Platform1”と“Platform2”とには、それぞれ同一の“Group”である“Group1”が設定され、“IDGroup2”の“Platform1”の“Group”には“Group2”が設定されている。
【0055】
“Platform”と“Group”を、“IDGroup”を跨いで管理できるようにするには、“IDGroup”を跨いで管理するためのモードを設定する。次に、“Platform”と“Group”を、“IDGroup”を跨いで管理するためのモードの設定例について説明する。
【0056】
図4は、“Platform”と“Group”を、“IDGroup”を跨いで管理するためのモードの設定例を示す説明図である。図4は、3つの0、1からなるフラグを1つの変数“Mode”で管理するための例を示したものである。
【0057】
“Global”は、アプリケーションやデータごとに、“Platform”と“Group”を、“IDGroup”を跨いで管理する(グローバルで管理する)かどうかを決定するためのフラグである。0はグローバルで管理しない(アプリケーションやデータが“Platform”と“Group”をローカルで管理する)ことを意味し、1はグローバルで管理することを意味する。ローカルで管理する場合は、“IDGroup”以下の要素は全く独立で管理されることになる。
【0058】
“IDGroup限定”および“Platform限定”は、アプリケーションやデータを扱う際に、その装置が他の“IDGroup”や“Platform”を扱う可能性がない場合に、その装置で処理を簡略化させる際に使用されるフラグである。本実施形態では、“IDGroup”と“Platform”とをそれぞれ独立して指定可能としているが、本開示はかかる例に限定されないことは言うまでもない。
【0059】
“IDGroup限定”および“Platform限定”は、アプリケーションやデータを扱う際に、その装置でのファイルに関する制約があるような場合に有効である。例えば、アプリケーションやデータを扱う装置が、所定の長さ以上のファイル名を設定できないようなファイルシステムを採用しているような場合に、“IDGroup限定”や“Platform限定”の設定が有効となる。
【0060】
図4に示すように、3つの0、1からなるフラグを1つの変数“Mode”で管理するために、変数“Mode”は、図4に示したように0から7の値を取り得る。この変数“Mode”の設定は、アプリケーションやデータに付随するメタデータに含まれる。具体的には、後述するメタデータのフォーマットにおける“GlobalMode”メタに設定が記述される。なお本開示においては変数“Mode”の設定は係る例には限定されず、アプリケーションやコンテンツデータがダウンロードされる各機器の内部で保持しておき、アプリケーションやコンテンツデータがダウンロードされる際に参照されるようにしてもよい。
【0061】
次に、IDとディレクトリ構造との関係について説明する。図5は、本開示の一実施形態にかかる情報処理システム1における、IDとディレクトリ構造との関係を示す説明図である。
【0062】
本開示の一実施形態にかかる情報処理システム1は、アプリケーションやコンテンツデータを機器の内部に格納する際に、図3に示した“IDGroup”、“Platform”、“Group”、“Name”の4つの要素と、図4に示した変数“Mode”の設定とを用いる。
【0063】
図5に示した表の上段は、“Platform”と“Group”を各機器がローカルで管理する場合のディレクトリ構造を示し、下段は“Platform”と“Group”の少なくともいずれかがグローバルで管理される場合のディレクトリ構造を示している。
【0064】
変数“Mode”が0の場合は、“Platform”と“Group”を各機器がローカルで管理し、“IDGroup”や“Platform”には限定がない場合のディレクトリ構造となる。親ディレクトリには“IDGroup_Platform_Group”という3つの要素名を所定のセパレータ(ここではセパレータをアンダーバー(“_”)とする)で結合したものからなるディレクトリ名を付し、子ディレクトリには“Name”要素からなるディレクトリ名を付す。なお、各要素は、名称に上記のセパレータと同一の文字が使用されないように制限することが望ましい。
【0065】
変数“Mode”が2の場合は、“Platform”と“Group”を各機器がローカルで管理し、“IDGroup”には限定がなく、“Platform”にのみ限定がある場合のディレクトリ構造となる。親ディレクトリには“IDGroup_Group”という2つの要素名をアンダーバーで結合したものからなるディレクトリ名を付し、子ディレクトリには“Name”要素からなるディレクトリ名を付す。
【0066】
変数“Mode”が4の場合は、“Platform”と“Group”を各機器がローカルで管理し、“IDGroup”のみ限定があり、“Platform”には限定がない場合のディレクトリ構造となる。親ディレクトリには“Platform_Group”という2つの要素名をアンダーバーで結合したものからなるディレクトリ名を付し、子ディレクトリには“Name”要素からなるディレクトリ名を付す。
【0067】
変数“Mode”が6の場合は、“Platform”と“Group”を各機器がローカルで管理し、“IDGroup”と“Platform”のいずれにも限定がある場合のディレクトリ構造となる。親ディレクトリには“Group”要素のみからなるディレクトリ名を付し、子ディレクトリには“Name”要素からなるディレクトリ名を付す。
【0068】
変数“Mode”が1の場合は、“Platform”と“Group”がグローバルで管理され、“IDGroup”や“Platform”には限定がない場合のディレクトリ構造となる。親ディレクトリには“Platform_Group”という2つの要素名をアンダーバーで結合したものからなるディレクトリ名を付し、子ディレクトリには“IDGroup_Name”という2つの要素名をアンダーバーで結合したものからなるディレクトリ名を付す。
【0069】
変数“Mode”が3の場合は、“Platform”と“Group”がグローバルで管理され、“IDGroup”には限定がなく、“Platform”にのみ限定がある場合のディレクトリ構造となる。親ディレクトリには“Group”の1つの要素名のみからなるディレクトリ名を付し、子ディレクトリには“IDGroup_Name”という2つの要素名をアンダーバーで結合したものからなるディレクトリ名を付す。
【0070】
なお、変数“Mode”が5の場合と7の場合は、それぞれ変数“Mode”が4の場合と6の場合と同じディレクトリ構造となるので、変数“Mode”は5と7の値を取らないようにしてもよい。
【0071】
続いて、本開示の一実施形態にかかるデジタルカメラ100の動作について具体的に説明する。図6は、本開示の一実施形態にかかるデジタルカメラ100の動作を示す流れ図である。図6に示した流れ図は、デジタルカメラ100がコンテンツダウンロードサーバ10からアプリケーションやデータをダウンロードした際、デジタルカメラ100の動作を示したものである。以下、図6を用いて本開示の一実施形態にかかるデジタルカメラ100の動作について具体的に説明する。
【0072】
デジタルカメラ100は、コンテンツダウンロードサーバ10からアプリケーションやデータをダウンロードすると、ダウンロードしたファイルからアプリケーションやデータの管理用メタデータをフォーマット処理部109が抽出する(ステップS101)。
【0073】
上記ステップS101で、アプリケーションやデータの管理用メタデータをフォーマット処理部109が抽出すると、続いて、抽出した管理用メタデータの内容をフォーマット処理部109が分析する。具体的には、フォーマット処理部109は、抽出した管理用メタデータに含まれる“GlobalMode”メタの内容を取得して、ダウンロードしたアプリケーションやデータのモードの内容を把握する。そしてフォーマット処理部109は、抽出した管理用メタデータに含まれる“IDGroup”メタと“Platform”メタの内容を把握する(ステップS102)。
【0074】
上記ステップS102で、抽出した管理用メタデータの内容をフォーマット処理部109が分析し、メタの内容を把握すると、フォーマット処理部109はデジタルカメラ100のポリシーを調べる(ステップS103)。具体的には、フォーマット処理部109は、“GlobalMode”メタでIDGroup限定が設定されていた場合には、デジタルカメラ100の“IDGroup”の設定を調べ、“GlobalMode”メタでPlatform限定が設定されていた場合には、デジタルカメラ100の“Platform”の設定を調べる。
【0075】
上記ステップS103で、フォーマット処理部109はデジタルカメラ100のポリシーを調べると、続いて、ファイル管理部110が、“GlobalMode”メタでIDGroup限定が設定されており、かつ、フォーマット処理部109が抽出した管理用メタデータに含まれる“IDGroup”メタの内容が、デジタルカメラ100の“IDGroup”の設定以外のものであるかどうかを判断する(ステップS104)。
【0076】
上記ステップ104の判断の結果、“GlobalMode”メタでIDGroup限定が設定されていないか、または、IDGroup限定が設定されていて、かつ、フォーマット処理部109が抽出した管理用メタデータに含まれる“IDGroup”メタの内容が、デジタルカメラ100の“IDGroup”の設定と同一であれば、続いて、ファイル管理部110が、“GlobalMode”メタでPlatform限定が設定されており、かつ、フォーマット処理部109が抽出した管理用メタデータに含まれる“Platform”メタの内容が、デジタルカメラ100の“Platform”の設定以外のものであるかどうかを判断する(ステップS105)。
【0077】
上記ステップ105の判断の結果、“GlobalMode”メタでPlatform限定が設定されていないか、または、Platform限定が設定されていて、かつ、フォーマット処理部109が抽出した管理用メタデータに含まれる“Platform”メタの内容が、デジタルカメラ100の“Platform”の設定と同一であれば、フォーマット処理部109が抽出したメタの内容に基づいて、ファイル管理部110が、アプリケーションやデータを格納するためのパスを作成する(ステップS106)。ファイル管理部110による、アプリケーションやデータを格納するためのパスの作成の詳細については後述する。
【0078】
上記ステップS106で、ファイル管理部110が、アプリケーションやデータを格納するためのパスを作成すると、ファイル管理部110は、ルートディレクトリ以下の、上記ステップS106で作成したパスに、ダウンロードされたアプリケーションやデータを格納する(ステップS107)。ダウンロードされたアプリケーションやデータは、例えば外部記憶装置部108に格納される。
【0079】
一方、上記ステップS104で、“GlobalMode”メタでIDGroup限定が設定されており、かつ、フォーマット処理部109が抽出した管理用メタデータに含まれる“IDGroup”メタの内容が、デジタルカメラ100の“IDGroup”の設定以外である場合、または、上記ステップS105で、“GlobalMode”メタでPlatform限定が設定されており、かつ、フォーマット処理部109が抽出した管理用メタデータに含まれる“Platform”メタの内容が、デジタルカメラ100の“Platform”の設定以外のものである場合は、ファイル管理部110は、ダウンロードされたアプリケーションやデータに対してデジタルカメラ100の対象外のアプリケーションやデータであるとする処理を実行する(ステップS108)。
【0080】
本開示の一実施形態にかかるデジタルカメラ100は、図6に示したような一連の処理を実行することで、ダウンロードしたアプリケーションやデータを、当該アプリケーションやデータに付随するメタデータの内容に応じてデジタルカメラ100の内部に格納することができる。
【0081】
本開示の一実施形態にかかるデジタルカメラ100によるダウンロードしたアプリケーションやデータのデジタルカメラ100の内部への格納について、図面を参照しながらより詳細に説明する。
【0082】
図7は、本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。図7に示したディレクトリ構造は、“IDGroup”や“Platform”に限定が無く、また“Platform”および“Group”をローカルで管理する場合のディレクトリ構造を示したものである。これは、“GlobalMode”メタが0の場合に相当するものである。
【0083】
図7では、“IDGroup”が“XXX”または“3rdParty”の2種類であり、“Platform”が“XXXDSC”である場合を例示している。そして“Group”メタには“App”と“MapData”のいずれかが指定されているものとする。
【0084】
この場合は、ファイル管理部110によって、アプリケーションのインストールディレクトリ以下には“XXX_XXXDSC_App”または“XXX_3rdParty_App”ディレクトリが出来上がる。また、ファイル管理部110によって、データディレクトリ以下には“XXX_XXXDSC_MapData”または“XXX_3rdParty_MapData”ディレクトリが出来上がる。
【0085】
IDGroup”や“Platform”に限定が無く、また“Platform”および“Group”をローカルで管理する場合は、ファイル管理部110は、アプリケーションのインストールディレクトリやデータディレクトリの直下に、“IDGroup”、“Platform”および“Group”の3つの要素を“_”で結合したディレクトリを作成し、作成したディレクトリの直下に、“Name”要素からなるディレクトリを作成する。
【0086】
図8は、本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。図8に示したディレクトリ構造は、“IDGroup”や“Platform”に限定が無く、また“Platform”および“Group”をグローバルで管理する場合のディレクトリ構造を示したものである。これは、“GlobalMode”メタが1の場合に相当するものである。また、ここでは“Platform”が“XXXDSC”のもの、および“Group”が“App”のものをグローバルで管理するものとしている。
【0087】
この場合は、ファイル管理部110によって、アプリケーションのインストールディレクトリ以下には“XXXDSC_App”ディレクトリが出来上がる。また、ファイル管理部110によって、データディレクトリ以下には“XXXDSC_MapData”または“XXXDSC_GuideData”ディレクトリが出来上がる。
【0088】
そして、“XXXDSC_App”ディレクトリ以下には、“XXX_MapViewer1.0”ディレクトリと“3rdParty_Guide1.0”ディレクトリを、ファイル管理部110が生成する。これにより、“XXXDSC_App”ディレクトリに、要素“Group”が“App”以下に属するアプリケーションがまとめて格納される。
【0089】
“IDGroup”や“Platform”に限定が無く、また“Platform”および“Group”をグローバルで管理する場合は、ファイル管理部110は、アプリケーションのインストールディレクトリやデータディレクトリの直下に、“Platform”および“Group”の2つの要素を“_”で結合したディレクトリを作成し、作成したディレクトリの直下に、“IDGroup”および“Name”の2つの要素を“_”で結合したディレクトリを作成する。
【0090】
図9は、本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。図9に示したディレクトリ構造は、“Platform”にのみ限定があり、また“Group”をグローバルで管理する場合のディレクトリ構造を示したものである。これは、“GlobalMode”メタが3の場合に相当するものである。
【0091】
この場合は、ファイル管理部110によって、アプリケーションのインストールディレクトリ以下には“App”ディレクトリが出来上がる。また、ファイル管理部110によって、データディレクトリ以下には“MapData”または“GuideData”ディレクトリが出来上がる。
【0092】
そして、“App”ディレクトリ以下には、“XXX_MapViewer1.0”ディレクトリと“3rdParty_Guide1.0”ディレクトリを、ファイル管理部110が生成する。これにより、“App”ディレクトリに、要素“Group”が“App”以下に属するアプリケーションがまとめて格納される。
【0093】
“Platform”にのみ限定があり、また“Group”をグローバルで管理する場合は、ファイル管理部110は、アプリケーションのインストールディレクトリやデータディレクトリの直下に、“Group”の1つの要素のみからなるディレクトリを作成し、作成したディレクトリの直下に、“IDGroup”および“Name”の2つの要素を“_”で結合したディレクトリを作成する。
【0094】
図10は、本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。図10に示したディレクトリ構造は、“Platform”にのみ限定があり、また“Group”をローカルで管理する場合のディレクトリ構造を示したものである。これは、“GlobalMode”メタが2の場合に相当するものである。
【0095】
この場合は、ファイル管理部110によって、アプリケーションのインストールディレクトリ以下には“XXX_App”と“3rdParty_App”ディレクトリが出来上がる。また、ファイル管理部110によって、データディレクトリ以下には“XXX_MapData”、“XXX_GuideData”、“3rdParty_MapData”、“3rdParty_GuideData”ディレクトリが出来上がる。
【0096】
そして、“XXX_App”ディレクトリ以下には、“MapViewer1.0”ディレクトリを、“3rdParty_App”ディレクトリ以下には“Guide1.0”ディレクトリを、ファイル管理部110が生成する。
【0097】
“Platform”にのみ限定があり、また“Group”をローカルで管理する場合は、ファイル管理部110は、アプリケーションのインストールディレクトリやデータディレクトリの直下に、“IDGroup”および“Group”の2つの要素を“_”で結合したディレクトリを作成し、作成したディレクトリの直下に、“Name”の1つの要素のみからなるディレクトリを作成する。
【0098】
図11は、本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。図11に示したディレクトリ構造は、“IDGroup”にのみ限定がある場合のディレクトリ構造を示したものである。これは、“GlobalMode”メタが4の場合に相当するものである。
【0099】
この場合は、ファイル管理部110によって、アプリケーションのインストールディレクトリ以下には“XXXDSC_App”および“YYY_App”ディレクトリが出来上がる。また、ファイル管理部110によって、データディレクトリ以下には“XXXDSC_MapData”および“YYY_GuideData”ディレクトリが出来上がる。
【0100】
そして、“XXXDSC_App”ディレクトリ以下には、“MapViewer1.0”ディレクトリを、“YYY_App”ディレクトリ以下には“Guide1.0”ディレクトリを、ファイル管理部110が生成する。
【0101】
“IDGroup”にのみ限定がある場合は、ファイル管理部110は、アプリケーションのインストールディレクトリやデータディレクトリの直下に、“Platform”および“Group”の2つの要素を“_”で結合したディレクトリを作成し、作成したディレクトリの直下に、“Name”の1つの要素のみからなるディレクトリを作成する。
【0102】
図12は、本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。図12に示したディレクトリ構造は、“IDGroup”および“Platform”に限定がある場合のディレクトリ構造を示したものである。これは、“GlobalMode”メタが6の場合に相当するものである。
【0103】
この場合は、ファイル管理部110によって、アプリケーションのインストールディレクトリ以下には“App”ディレクトリが出来上がる。また、ファイル管理部110によって、データディレクトリ以下には“MapData”および“GuideData”ディレクトリが出来上がる。
【0104】
そして、“App”ディレクトリ以下には、“MapViewer1.0”および“Guide1.0”ディレクトリを、ファイル管理部110が生成する。“IDGroup”および“Platform”に限定がある場合は、このように“App”ディレクトリ以下に全てのアプリケーションが格納されることになる。また、コンテンツデータは“MapData”および“GuideData”ディレクトリ以下に格納されることになる。
【0105】
“IDGroup”および“Platform”に限定がある場合は、ファイル管理部110は、アプリケーションのインストールディレクトリやデータディレクトリの直下に、“Group”の1つの要素のみからなるディレクトリを作成し、作成したディレクトリの直下に、“Name”の1つの要素のみからなるディレクトリを作成する。
【0106】
このようにファイル管理部110は、“GlobalMode”メタの内容に応じて、アプリケーションやデータをインストールする際に、構造を変えてディレクトリを作成し、作成したディレクトリにアプリケーションやコンテンツデータを格納することが可能になる。これにより、同一・同種のアプリケーションやコンテンツデータを、同一のディレクトリにまとめて格納することができるようになるので、本開示の一実施形態にかかるデジタルカメラ100は、アプリケーションやデータをより容易に管理することが可能となる。
【0107】
続いて、アプリケーションのインストールディレクトリに格納されたアプリケーションが、データディレクトリに格納されたデータを使用する例を説明する。図13は、本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。
【0108】
デジタルカメラ100が、アプリケーションのインストールディレクトリに格納されたアプリケーションが、データディレクトリに格納されたデータを使用するには、アプリケーションに付随するメタデータに含まれる“RelatedGroup”メタの内容を参照する。
【0109】
図13を用いて具体的に説明すれば、例えば、“MapViewer1.0”が“MapData”ディレクトリ以下のデータを参照する場合は、予め“RelatedGroup”に“MapData”と記述したメタデータを用意しておき、“MapViewer1.0”が“RelatedGroup”に記述された“MapData”を利用する。同様に、“GuideData1.0”が“GuideData”ディレクトリ以下のデータを参照する場合は、予め“RelatedGroup”に“GuideData”と記述したメタデータを用意しておき、“GuideViewer1.0”が“RelatedGroup”に記述された“GuideData”を利用する。
【0110】
このように、“RelatedGroup”メタでアプリケーションとコンテンツとを結びつけることで、アプリケーションのインストールディレクトリに格納されたアプリケーションが、データディレクトリに格納されたデータを使用することができる。この“RelatedGroup”メタを応用すれば、1つのアプリケーションから複数のデータディレクトリへアクセスすることが可能になるし、複数のアプリケーションから1つのデータディレクトリを利用することも可能になる。さらに、後述するアプリケーションのバージョンアップに際して“RelatedGroup”メタの内容を更新することで、後から追加されたデータディレクトリに格納されたデータを使用することもできる。
【0111】
続いて、アプリケーションやコンテンツデータのバージョンアップ例を説明する。アプリケーションやコンテンツデータのバージョンアップには、マイナーバージョンアップとメジャーバージョンアップとがある。本実施形態では、マイナーバージョンアップは、“Group”や“Name”の変更を伴わないものであり、アプリケーションやデータのファイルのみが置き換えられたり追加されたりする。バージョンの違いは、“DataVersion”メタを使用する。
【0112】
一方、メジャーバージョンアップは、“Group”や“Name”の変更を伴うものである。例えば、アプリケーションの場合は、旧バージョンのものとは別の名前の“Name”要素が用いられ、旧バージョンのものとは別のディレクトリが生成される。またコンテンツデータの場合は、旧バージョンのものとは別の名前の“Group”要素が用いられ、旧バージョンのものとは別のディレクトリが生成される。従って、新旧両方のバージョンのファイルが併存することになる。そして、過去のバージョンへのリンクとして“OldVersion”メタを使用する。この“OldVersion”メタは、アプリケーションやデータを管理するためのメタデータではなく、アプリケーションやデータを提供するサービスを管理するためのメタデータに含まれるものとする。もちろん、バージョンアップに際して旧バージョンのディレクトリは削除されるようにしても良い。
【0113】
図14は、本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。図14に示した例は、アプリケーションやコンテンツデータのマイナーバージョンアップの際のディレクトリ構造について示したものである。このように、アプリケーションやコンテンツデータのマイナーバージョンアップの際には、アプリケーションやデータのファイルのみが置き換えられたり追加されたりする。
【0114】
図15は、本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。図15に示した例は、アプリケーションやコンテンツデータのメジャーバージョンアップの際のディレクトリ構造について示したものである。このように、アプリケーションやコンテンツデータのメジャーバージョンアップの際には、旧バージョンのものとは別のディレクトリが生成され、新バージョンのアプリケーションやデータのファイルのみは新たに生成されたディレクトリに格納される。
【0115】
このように、本開示の一実施形態にかかるデジタルカメラ100は、アプリケーションやコンテンツデータのバージョンアップの際には、マイナーバージョンアップかメジャーバージョンアップかによって、バージョンアップ時のファイル格納方法を変更することができる。
【0116】
続いて、アプリケーションやコンテンツデータに付随してコンテンツダウンロードサーバ10から送信されるメタデータの構成例について説明する。図16は、コンテンツダウンロードサーバ10から送信されるメタデータの構成例を示す説明図である。
【0117】
図16には、メタデータの構成として“DataVersion”、“ID”、“IDGroup”、“Platform”、“Group”、“Name”、“TargetModel”、“GlobalMode”、“RelatedGroup”を図示している。
【0118】
“DataVersion”は、アプリケーションやデータのバージョンが記述されるメタであり、上述した、デジタルカメラ100におけるアプリケーションやデータのバージョンアップの際に参照される。“ID”は、“IDGroup”、“Platform”、“Group”、および“Name”の4要素を“_”で結合したものが記述されるメタであり、ID全体を格納するためのものである。“TargetModel”メタについては後に詳述する。
【0119】
図17は、コンテンツダウンロードサーバ10から送信されるアプリケーションやデータの内容例を示す説明図である。上述してきたように、本実施形態では、“IDGroup”、“Platform”、“Group”、“Name”の4要素をメタデータ(コンテンツメタ)で管理する。従って、アプリケーションやコンテンツデータと、メタデータとを圧縮して、コンテンツダウンロードサーバ10に保持しておくことで、デジタルカメラ100は、アプリケーションやデータをダウンロードすると、同時に、アプリケーションやデータに付随するコンテンツメタを取得することができる。
【0120】
続いて、コンテンツダウンロードサーバ10から送信されるアプリケーションやデータが機器毎に異なる場合の管理方法について説明する。
【0121】
図18は、本開示の一実施形態にかかる情報処理システム1で用いられるメタデータの構造例を示す説明図である。図18に示したメタデータの構造は、図3に示したメタデータの構造に加え、“TargetModel”という新たな要素が加わっている。この“TargetModel”は、機種の違いを全て異なるIDで管理する場合、同じ扱いのアプリ(コンテンツ)である事を示すために用いられる要素である。
【0122】
例えば、同一のアプリケーションであっても、そのアプリケーションが実行される機器のハードウェア性能の違いによって、細部を変更しなければならない場合がある。例えば、画面がタッチパネルであるか否かによって、表示内容を変更しなければならない場合が考えられる。そのような場合に、アプリケーションとしては同一であるが、そのアプリケーションが実行されるターゲットの機器に応じて異なるバイナリやデータを用意することで、アプリケーションやデータの管理を簡略化することが可能となる。なお、排他的で同じ機器に複数の異なる“TargetModel”は存在出来ないように制限する。
【0123】
図18では、“IDGroup1”−“Platform1”−“Group1”−“Name1”以下に、“TargetModel”として“A”と“B”とが、“IDGroup1”−“Platform2”−“Group1”−“Name2”以下に、“TargetModel”として“A”と“B”とが、それぞれ指定されている。
【0124】
なお、“TargetModel”メタは、アプリケーションやデータを、コンテンツダウンロードサーバ10から各機器に配信する際に用いられるものである。“TargetModel”メタは、アプリケーションやデータが各機器に配信された後の、ディレクトリの作成やファイルの格納には用いられない。また、アプリケーションやデータに、機器による違いがない場合は、もちろん“TargetModel”メタの内容を省略しても良い。
【0125】
図19は、本開示の一実施形態にかかるコンテンツダウンロードサーバ10の機能構成例を示す説明図である。以下、図19を用いて本開示の一実施形態にかかるコンテンツダウンロードサーバ10の機能構成例について説明する。
【0126】
図19に示したように、本開示の一実施形態にかかるコンテンツダウンロードサーバ10は、データ管理部11と、機器マッチングデータベース12と、を含んで構成される。
【0127】
データ管理部11は、コンテンツダウンロードサーバ10から提供するアプリケーションを、“IDGroup”、“Platform”、“Group”、“Name”、“TargetModel”の5つの要素からなるIDで管理する。目的のアプリケーションのダウンロード要求がクライアントの機器からあった際に、機器毎に適合するものを機器マッチングデータベース12から調べ、適合するものを提供する。
【0128】
機器マッチングデータベース12は、アプリケーションの情報が機器毎に登録されるデータベースである。データ管理部11は、機器マッチングデータベース12に登録されている情報を参照することで、目的のアプリケーションのダウンロード要求がクライアントの機器からあった際に、機器毎に適合するものを提供できる。
【0129】
以上、図19を用いて本開示の一実施形態にかかるコンテンツダウンロードサーバ10の機能構成例について説明した。続いて、機器マッチングデータベース12の内容例について説明する。図20は、機器マッチングデータベース12の内容例を示す説明図である。
【0130】
図20に示した機器マッチングデータベース12には、“IDGroup”、“Platform”、“Group”、“Name”からなる共通IDとして“XXX_DSC_App_Mapviewer”、“XXX_DSC_Map_日本”、“XXX_DSC_Map_首都圏”の3つが示されている。“XXX_DSC_App_Mapviewer”は、例えばデジタルカメラ100で実行される、地図表示用のアプリケーションのIDを指し、“XXX_DSC_Map_日本”は、当該地図表示用のアプリケーションで用いられる日本地図のIDを指し、“XXX_DSC_Map_首都圏”は、当該地図表示用のアプリケーションで用いられる首都圏の地図のIDを指す。
【0131】
このうち、“XXX_DSC_App_Mapviewer”、および“XXX_DSC_Map_日本”については、“TargetModel”が指定されている。“TargetModel”が指定されていることで、これらのアプリケーションやデータについては、機器毎に異なるものが用意されていることになる。また“XXX_DSC_Map_首都圏”については“TargetModel”が指定されていない。これは、地図表示用のアプリケーションを実行する全ての機器において共通のデータが用意されていることになる。
【0132】
図21は、アプリケーションやデータをクライアントの機器に提供する際の階層構造を示す説明図である。図21に示した階層構造は、機器マッチングデータベース12に図20のようにデータが登録されている際の階層構造である。
【0133】
機器A(例えば、表示部にタッチパネルを備えているデジタルカメラ)に上記地図表示用のアプリケーションを提供する際には、アプリケーションと、当該アプリケーションで用いられる日本地図のデータは、機器A用に作成されたものが提供される。機器B(例えば、表示部にタッチパネルを備えていないデジタルカメラ)に上記地図表示用のアプリケーションを提供する際には、アプリケーションと、当該アプリケーションで用いられる日本地図のデータは、機器B用に作成されたものが提供される。当該アプリケーションで用いられる首都圏の地図のデータについては、機器A、機器B共通のものが提供される。
【0134】
図22は、アプリケーションやデータをクライアントの機器に提供する際の階層構造を示す説明図である。図22は、2つの機器(機器Aと機器B)を例示して階層構造を示している。
【0135】
コンテンツダウンロードサーバ10から機器別にコンテンツをダウンロードした場合であっても、それぞれの機器で同じ構成でコンテンツを管理することができる。そして機器Aおよび機器Bは、図22に示したように、ライセンス管理領域(ライセンス格納部114)にライセンスをまとめて格納することができる。
【0136】
例えば、日本地図データが“データ1.dat”、および“データ2.dat”という2つのファイルを持つ場合、機器Aの“MapViewer”からも、機器Bの“MapViewer”からも、以下のように同じパスでそれぞれの専用データにアクセスできる。
ダウンロードルート/Sony_DSC_Map_日本/データ1.dat
ダウンロードルート/Sony_DSC_Map_日本/データ2.dat
【0137】
なお、ライセンスは、ライセンス管理領域以下にコンテンツと同様のディレクトリ構造で格納する方法や、IDを使って1ヶ所に格納する方法など、コンテンツダウンロードサーバ10からダウンロードしたコンテンツと対応が取れる方法であれば、どのような方法で格納しても良い。
【0138】
続いて、本開示の一実施形態にかかる情報処理システム1における、コンテンツ登録者とダウンロードサーバとの間の処理の流れについて説明する。図23は、本開示の一実施形態にかかる情報処理システム1における、コンテンツ登録者とダウンロードサーバとの間の処理の流れを示す流れ図である。
【0139】
アプリケーションやデータを制作してダウンロードサーバに登録するコンテンツ登録者は、アプリケーションやデータを開発する。またコンテンツ登録者は、当該アプリケーションやデータに付する、“IDGroup”、“Platform”、“Group”、“Name”の4要素からなるIDの管理を行う(ステップS201)。
【0140】
続いて、コンテンツ登録者は、作成したアプリケーションやデータに対応する機器リストを作成する。ここで、機器毎にアプリケーションのバイナリが異なったり、データが異なったりする場合は、“TargetModel”要素をIDに追加する(ステップS202)。
【0141】
コンテンツ登録者は、アプリケーションやデータを開発し、IDの管理が完了すると、作成したアプリケーションやデータをIDと共にコンテンツダウンロードサーバ10に登録する(ステップS203)。
【0142】
コンテンツダウンロードサーバ10は、コンテンツ登録者から登録のあったアプリケーションやデータをダウンロード環境に登録し、コンテンツをコンテンツ鍵で暗号化すると共に、ID情報を機器マッチングデータベース12に格納する(ステップS204)。この一連の処理により、コンテンツ登録者が開発したアプリケーションやデータが、クライアント機器からダウンロード可能な状態となる。
【0143】
以上、図23を用いて、本開示の一実施形態にかかる情報処理システム1における、コンテンツ登録者とコンテンツダウンロードサーバ10との間の処理の流れについて説明した。次に、本開示の一実施形態にかかる情報処理システム1における、クライアント機器(例えばデジタルカメラ100)とコンテンツダウンロードサーバ10との間の処理の流れについて説明する。
【0144】
図24は、本開示の一実施形態にかかる情報処理システム1における、クライアント機器とコンテンツダウンロードサーバ10との間の処理の流れを示す流れ図である。以下、図24を用いて本開示の一実施形態にかかる情報処理システム1における、クライアント機器とコンテンツダウンロードサーバ10との間の処理の流れについて説明する。
【0145】
クライアント機器がコンテンツダウンロードサーバ10からアプリケーションやデータを取得する際には、まずクライアント機器はコンテンツダウンロードサーバ10へログインし、コンテンツの検索および利用機種名の送信を行う(ステップS210)。クライアント機器がコンテンツダウンロードサーバ10に送信する利用機種名の情報は、“TargetModel”要素に対応するものである。
【0146】
上記ステップS210で、クライアント機器がコンテンツダウンロードサーバ10へコンテンツの検索および機器情報の送信を行うと、コンテンツダウンロードサーバ10は、クライアント機器から送信された情報を用いて機器マッチングデータベース12を確認する(ステップS211)。機器マッチングデータベース12を確認すると、コンテンツダウンロードサーバ10は、上記ステップS210での要求に合致したコンテンツリストをクライアント機器へ送信する(ステップS212)。
【0147】
クライアント機器は、コンテンツダウンロードサーバ10からコンテンツリストを受信すると、ダウンロードを希望するアプリケーションやデータを選択し(ステップS213)、選択したアプリケーションやデータのダウンロードをコンテンツダウンロードサーバ10に要求する(ステップS214)。
【0148】
上記ステップS214で、クライアント機器がコンテンツダウンロードサーバ10へアプリケーションやデータのダウンロードを要求すると、コンテンツダウンロードサーバ10はDRMサーバ20にライセンスの発行を依頼し、DRMサーバ20は当該コンテンツに対するライセンスを作成する(ステップS215)。DRMサーバ20は、ライセンスを作成すると、作成したライセンスをクライアント機器へ送信する(ステップS216)。
【0149】
DRMサーバ20からライセンスを受信したクライアント機器は、受信したライセンスをライセンス格納領域に格納する(ステップS217)。クライアント機器がデジタルカメラ100の場合は、受信したライセンスは、ライセンス処理部115によってライセンス格納部114に格納される。
【0150】
その後、コンテンツダウンロードサーバ10は対応する暗号化されたアプリケーションやデータを抽出し(ステップS218)、抽出した、暗号化されたアプリケーションやデータをクライアント機器へ送信する(ステップS219)。
【0151】
クライアント機器は、コンテンツダウンロードサーバ10から暗号化されたアプリケーションやデータを受信すると、上述した格納ルールに従って、アプリケーションやデータを内部に格納する(ステップS219)。クライアント機器は、アプリケーションやデータを内部に格納する際には、“TargetModel”要素の情報を用いることはない。
【0152】
このようにクライアント機器とダウンロードサーバとの間で処理を実行することにより、機器毎にアプリケーションやデータの内容が一部異なる場合であっても、その機器に適合したアプリケーションやデータを、ダウンロードサーバからクライアント機器に提供することができる。そして、クライアント機器は、アプリケーションやデータを内部に格納する際には、“TargetModel”の違いを考慮せずに、上述した“IDGroup”、“Platform”、“Group”、“Name”の4要素によるディレクトリ作成を行う。
【0153】
そしてクライアント機器は、DRMサーバ20からライセンスを受信したときに、受信したライセンスを内部に格納する。デバイスバインド方式は、コンテンツ鍵を機器固有のデバイス鍵で暗号化するため、クライアント機器の内部に格納されることで、DRMサーバ20が動作を認めた機器だけにコンテンツダウンロードサーバ10からコンテンツを配布し、実行するような制御が行える。
【0154】
以上、図24を用いて本開示の一実施形態にかかる情報処理システム1における、クライアント機器とダウンロードサーバとの間の処理の流れについて説明した。次に、コンテンツ登録者によるコンテンツ登録の流れについて説明する。
【0155】
図25は、本開示の一実施形態にかかる情報処理システム1における、コンテンツ登録者によるコンテンツ登録の流れを示す流れ図である。以下、図25を用いて、本開示の一実施形態にかかる情報処理システム1における、コンテンツ登録者によるコンテンツ登録の流れについて説明する。
【0156】
アプリケーションやデータを制作してダウンロードサーバに登録するコンテンツ登録者は、アプリケーションやデータを開発する。またコンテンツ登録者は、当該アプリケーションやデータに付する、“IDGroup”、“Platform”、“Group”、“Name”の4要素からなるIDを取得する(ステップS221)。
【0157】
続いて、コンテンツ登録者は、作成したアプリケーションやデータに対応する機器リストを作成する。ここで、機器毎にアプリケーションのバイナリが異なったり、データが異なったりする場合は、“TargetModel”要素をIDに追加する(ステップS222)。
【0158】
コンテンツ登録者は、アプリケーションやデータを開発し、IDの管理が完了すると、作成したアプリケーションやデータをIDと共にダウンロードサーバ(コンテンツダウンロードサーバ10を「ダウンロードサーバ」と総称する)にコンテンツ鍵で暗号化して登録する(ステップS223)。この一連の処理により、コンテンツ登録者が開発したアプリケーションやデータが、クライアント機器からダウンロード可能な状態となる。
【0159】
以上、図25を用いて、本開示の一実施形態にかかる情報処理システム1における、コンテンツ登録者によるコンテンツ登録の流れについて説明した。次に、本開示の一実施形態にかかる情報処理システム1における、クライアント機器によるコンテンツ検索および取得処理の流れについて説明する。
【0160】
図26は、本開示の一実施形態にかかる情報処理システム1における、クライアント機器によるコンテンツ検索および取得処理の流れを示す流れ図である。以下、図26を用いて、本開示の一実施形態にかかる情報処理システム1における、ユーザによるコンテンツ検索および取得処理の流れについて説明する。
【0161】
ユーザが、ダウンロードサーバからクライアント機器で使用するアプリケーションやデータを取得する際には、まずユーザはダウンロードサーバへログインし、利用機種名を送信するとともに、アプリケーションやデータを検索する(ステップS231)。当該ログインおよび検索処理は、クライアント機器を用いてもよい。ユーザがダウンロードサーバに送信する利用機種名の情報は、“TargetModel”要素に対応するものである。
【0162】
続いてユーザは、ダウンロードサーバから、利用するクライアント機器で動作するコンテンツリストを取得する(ステップS232)。当該取得処理は、クライアント機器を用いてもよい。
【0163】
ダウンロードサーバから、利用するクライアント機器で動作するコンテンツリストを取得すると、続いてユーザは、ダウンロードサーバへアプリケーションやデータを要求すると共に、DRMサーバ20からライセンスを、コンテンツダウンロードサーバ10からアプリケーションやデータをダウンロードする(ステップS233)。当該要求およびダウンロード処理は、クライアント機器を用いてもよい。
【0164】
続いてユーザは、DRMサーバ20から受信したライセンスをクライアント機器の内部のライセンス格納領域に格納する(ステップS234)。当該格納処理は、クライアント機器によって行われる。
【0165】
続いてユーザは、ダウンロードサーバからダウンロードしたアプリケーションやデータを、“IDGroup”、“Platform”、“Group”、“Name”の4要素に従って、クライアント機器の内部に格納する(ステップS235)。当該格納処理は、クライアント機器によって行われる。
【0166】
以上、図26を用いて、本開示の一実施形態にかかる情報処理システム1における、ユーザによるコンテンツ検索および取得処理の流れについて説明した。次に、本開示の一実施形態にかかる情報処理システム1における、コンテンツダウンロードサーバ10およびDRMサーバ20によるコンテンツ検索および送信処理について説明する。
【0167】
図27は、本開示の一実施形態にかかる情報処理システム1における、コンテンツダウンロードサーバ10およびDRMサーバ20によるコンテンツ検索および送信処理を示す流れ図である。以下、図27を用いて本開示の一実施形態にかかる情報処理システム1における、コンテンツダウンロードサーバ10およびDRMサーバ20によるコンテンツ検索および送信処理について説明する。
【0168】
コンテンツダウンロードサーバ10は、ユーザからのログイン要求があると、当該ユーザのログイン処理を実行する(ステップS241)。ログイン処理が完了し、ユーザから機器を指定したコンテンツ検索要求があると、コンテンツダウンロードサーバ10は、機器マッチングデータベース12を検索し、ユーザが利用する機器に対応するコンテンツ一覧を作成し、ユーザに提示する(ステップS242)。
【0169】
その後、ユーザから、アプリケーションやデータのダウンロード要求が送信されると、ダウンロードサーバは、ユーザのダウンロード要求に応じた、ユーザが利用する機器に対応するアプリケーションやデータを配信し、DRMサーバ20は、当該アプリケーションやデータをクライアント機器で利用するためのライセンスの作成と配信を行なう(ステップS243)。
【0170】
以上、図27を用いて本開示の一実施形態にかかる情報処理システム1における、ダウンロードサーバによるコンテンツ検索および送信処理について説明した。このようにアプリケーションとしては同一であるが、そのアプリケーションが実行されるターゲットの機器に応じて異なるバイナリやデータを用意することで、ダウンロードサーバ側でのアプリケーションやデータの管理を簡略化することが可能となる。そして、アプリケーションやデータをダウンロードするクライアント機器においては、機器の情報をダウンロードサーバに送信するだけで自動的に自機器に適合したアプリケーションやデータをダウンロードサーバから取得することができる。そして、あるユーザが一度購入したコンテンツは、対応機器が異なっても、対応コンテンツが同一であれば、当該対応コンテンツの再ダウンロードを許す管理も可能となる。
【0171】
なお、上述の処理では、アプリケーションやコンテンツデータを選択して、選択したアプリケーションやコンテンツデータのダウンロードをデジタルカメラ100に行わせる実施例について説明したが、本開示はかかる例に限定されない。例えば、パーソナルコンピュータやスマートフォン等に、アプリケーションやコンテンツデータを選択して、選択したアプリケーションやコンテンツデータのダウンロードを行わせるようにして、ダウンロードしたアプリケーションやデータを、パーソナルコンピュータやスマートフォン等からデジタルカメラに転送するようにしてもよい。
【0172】
次に、本開示の一実施形態にかかる情報処理システム1における、クライアント機器によるコンテンツの実行処理について説明する。図28は、本開示の一実施形態にかかる情報処理システム1における、クライアント機器によるコンテンツの実行処理を示す流れ図である。
【0173】
まずクライアント機器は、ライセンス格納領域(クライアント機器がデジタルカメラ100の場合は、ライセンス格納部114)に、実行しようとするコンテンツのライセンスが存在しているかを確認すると共に、ライセンスが存在していれば、そのライセンスが、実行しようとするコンテンツのライセンス条件を満たしているかどうかを確認する(ステップS251)。より具体的には、クライアント機器がデジタルカメラ100の場合は、ライセンス管理部115がライセンス格納部114へのライセンスの存在確認およびライセンス条件の確認を実行する。
【0174】
続いてクライアント機器は、ライセンス格納領域に格納されているライセンスに記述されたユーザ登録機器の確認を行う(ステップS252)。より具体的には、ライセンス格納領域に格納されているライセンスに記述されているユーザ情報と、デジタルカメラ100の内部(例えばメモリ107)に保持されているユーザ情報とが一致することによって、ライセンスに記述されたユーザ登録機器の確認を行う。ライセンス格納領域に格納されているライセンスに記述されたユーザ登録機器の確認を行い、コンテンツが実行できる機器であることが確認できると、続いてクライアント機器は、ライセンス格納領域に格納されているライセンスに含まれるコンテンツ鍵をデバイス鍵で復号する(ステップS253)。
【0175】
ライセンスに含まれるコンテンツ鍵をデバイス鍵で復号すると、クライアント機器は、セキュアな領域において、復号したコンテンツ鍵を用いてコンテンツを復号する(ステップS254)。コンテンツ鍵を用いてコンテンツを復号すると、クライアント機器は、復号したコンテンツを実行する(ステップS255)。
【0176】
このように一連の鍵の復号処理やコンテンツの復号処理を実行することで、クライアント機器は、コンテンツダウンロードサーバ10からダウンロードしたコンテンツを、DRMサーバ20から受信したライセンスを用いて実行することが可能となる。
【0177】
図29は、本開示の一実施形態にかかる情報処理システム1のシステム構成例を示す説明図である。図29に示した情報処理システム1のシステム構成例は、図2に示した構成にパーソナルコンピュータ200が追加されたものである。
【0178】
図29に示したように、パーソナルコンピュータ200は、CPU201と、表示部202と、I/F203と、USB204と、ネットワーク処理部205と、記憶装置部206と、外部記憶装置部207と、フォーマット処理部208と、カメラI/F209と、を含んで構成される。
【0179】
CPU201は、演算処理装置および制御装置として機能し、パーソナルコンピュータ200に格納された各種プログラムに従って、パーソナルコンピュータ200内の動作全般またはその一部を制御する。表示部202は、CRTディスプレイ装置、液晶ディスプレイ装置、プラズマディスプレイ装置、有機ELディスプレイ装置等で構成され、パーソナルコンピュータ200が行った各種処理により得られた結果を、テキストまたはイメージで表示する。
【0180】
I/F203は、パーソナルコンピュータ200に周辺装置を接続するためのインタフェースである。USB204は、パーソナルコンピュータ200と他の装置(例えばデジタルカメラ100)とをUSBケーブルで接続するためのインタフェースである。ネットワーク処理部205は、インターネット30への接続処理を実行する。パーソナルコンピュータ200は、ネットワーク処理部205によるインターネット30への接続処理により、インターネット30に接続されたコンテンツダウンロードサーバ10から、アプリケーションやデータをダウンロードすることができる。
【0181】
外部記憶装置部207は、例えば、HDD(Hard Disk Drive)等の磁気記憶部デバイス、半導体記憶デバイス、光記憶デバイス、または光磁気記憶デバイス等により構成される。この外部記憶装置部207は、CPU201が実行するプログラムや各種データ、および外部から取得した音響信号データや画像信号データなどを格納する。
【0182】
フォーマット処理部208は、フォーマット処理部109と同様に、コンテンツダウンロードサーバ10からダウンロードするアプリケーションやコンテンツデータに付随しているメタデータの内容を解析する。フォーマット処理部208は、メタデータの内容を解析して、コンテンツダウンロードサーバ10からダウンロードしたアプリケーションやコンテンツデータの、ファイル管理部110によるファイル管理を制御する。カメラI/F209は、デジタルカメラ100と接続して情報の授受を行なうためのインタフェースである。
【0183】
このようにデジタルカメラ100とパーソナルコンピュータ200とが構成されている場合には、パーソナルコンピュータ200は、コンテンツに付随しているメタデータの内容を解析して、解析した内容に基づいて、デジタルカメラ100へのアプリケーションやデータの格納を制御することが出来る。
【0184】
<2.まとめ>
以上説明したように、本開示の一実施形態にかかる情報処理システム1は、コンテンツダウンロードサーバ10が提供する著作権管理されたコンテンツを、動作対象の機器に正しく供給することができる。すなわち、コンテンツを実行するデジタルカメラ100は、コンテンツダウンロードサーバ10が提供する著作権管理されたコンテンツを実行するためのライセンスをDRMサーバ20からダウンロードした時に限り、セキュアな領域であるライセンス格納部114に格納する。
【0185】
このようにライセンスの格納タイミングを制御することで、本開示の一実施形態にかかる情報処理システム1は、ユーザ側の面倒な選択や、コンテンツの誤インストール、ローカルコピーやメモリーカードの差し替え等によるコンテンツの誤動作を防止できる。また、本開示の一実施形態にかかる情報処理システム1は、サーバ側で最新のマッチングを統一的に行う事により動作対象を管理することができる。
【0186】
また、本開示の一実施形態にかかる情報処理システム1は、デバイスバインド方式のDRMの、機器指定したコンテンツ保護に加えて、同一ユーザが所有する他の機器で、サービス側が認めればライセンスを新たに発行してコンテンツを共有できる仕組みを追加できる。本開示の一実施形態にかかる情報処理システム1は、ユーザが所有する機器の範囲内での利用拡大はできるが、機器が当該ユーザの手を離れ別ユーザのものとサーバが認識した時点で、その機器におけるコンテンツの実行を出来なくさせる制御を実現できる。
【0187】
また、本開示の一実施形態にかかる情報処理システム1は、アプリケーションのバイナリ違い等、対象コンテンツが機器により異なる場合であっても、対応バイナリをサーバ側で自動的に選択して、クライアント機器に提供する事が可能である。
【0188】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示はかかる例に限定されない。本開示の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【0189】
また例えば、同一のコンテンツであるが機器により動作対象が異なる場合、ユーザが登録している機器間であれば、対象機器用の別ライセンスと別コンテンツをコピーの代わりにサーバからクライアント機器に配布することにより、動作対象の異なる機器間での共通利用を可能とするようにしても良い。
【0190】
また例えば、ライセンス管理部115は、デジタルカメラ100の内部(例えばメモリ107)に保持されているユーザ情報を削除できるようにしてもよい。デジタルカメラ100が、あるユーザから別のユーザに譲渡された際には、デジタルカメラ100の内部に保持されたユーザ情報を、例えば、元のユーザが指示したタイミングや、コンテンツダウンロードサーバ10に接続したタイミングで、ライセンス管理部115が削除することで、デジタルカメラ100に格納されたコンテンツの、上記別のユーザによる実行を防ぐことができる。
【0191】
なお、本技術は以下のような構成も取ることができる。
(1)
機器単位でコンテンツを管理するためのライセンス情報を保持するライセンス情報保持部と、
前記ライセンス情報保持部に保持されている前記ライセンス情報に含まれるユーザ情報と、自装置に格納される該自装置のユーザ情報とを比較するライセンス管理部と、
前記ライセンス管理部によって、前記ライセンス情報に含まれるユーザ情報と、自装置のユーザ情報とが一致されたと判断された場合に限り、前記ライセンス情報に含まれるデバイス鍵で該ライセンス情報に対応するコンテンツを復号して実行する実行制御部と、
を備える、情報処理装置。
(2)
前記ライセンス管理部は、自装置に格納される該自装置のユーザ情報を消去することが可能なように構成される、前記(1)に記載の情報処理装置。
(3)
前記コンテンツを外部から取得した際に該コンテンツの格納を制御するコンテンツ格納部をさらに備える、前記(1)または(2)に記載の情報処理装置。
(4)
前記コンテンツに付随して送信されるメタデータを解析するメタデータ解析部をさらに備える、前記(3)に記載の情報処理装置。
(5)
前記コンテンツ格納部は、前記メタデータ解析部の解析により、前記コンテンツに付随して送信されるメタデータの所定の要素の内容に応じて、前記コンテンツの格納に際してディレクトリ構造を変化させる、前記(4)に記載の情報処理装置。
(6)
機器単位でコンテンツを管理するためのライセンス情報を保持するライセンス情報保持ステップと、
前記ライセンス情報保持ステップで保持された前記ライセンス情報に含まれるユーザ情報と、自装置に格納される該自装置のユーザ情報とを比較するライセンス管理ステップと、
前記ライセンス管理ステップによって、前記ライセンス情報に含まれるユーザ情報と、自装置のユーザ情報とが一致されたと判断された場合に限り、前記ライセンス情報に含まれるデバイス鍵で該ライセンス情報に対応するコンテンツを復号して実行する実行制御ステップと、
を備える、情報処理方法。
(7)
コンピュータに、
機器単位でコンテンツを管理するためのライセンス情報を保持するライセンス情報保持ステップと、
前記ライセンス情報保持ステップで保持された前記ライセンス情報に含まれるユーザ情報と、自装置に格納される該自装置のユーザ情報とを比較するライセンス管理ステップと、
前記ライセンス管理ステップによって、前記ライセンス情報に含まれるユーザ情報と、自装置のユーザ情報とが一致されたと判断された場合に限り、前記ライセンス情報に含まれるデバイス鍵で該ライセンス情報に対応するコンテンツを復号して実行する実行制御ステップと、
を実行させる、コンピュータプログラム。
【符号の説明】
【0192】
1 情報処理システム
10 コンテンツダウンロードサーバ
20 DRMサーバ
100 デジタルカメラ
101 撮像部
102 カメラ制御部
103 画像処理部
104 画像管理部
105 I/F
106 表示部
107 メモリ
108 外部記憶装置部
109 フォーマット処理部
110 ファイル管理部
111 アプリケーション実行制御部
112 USB
113 ネットワーク処理部
114 ライセンス格納部
115 ライセンス管理部
116 DRM処理部
【技術分野】
【0001】
本開示は、情報処理装置、情報処理方法およびコンピュータプログラムに関する。
【背景技術】
【0002】
近年、音楽コンテンツや映像コンテンツなどのデジタルコンテンツ(以下、コンテンツ)を、該コンテンツが格納されるサーバから利用者が所有するPC(Personal Computer)や携帯電話などの情報処理装置に配信するサービスが行われている。また、上記コンテンツは複製されても、何度伝送されても品質が劣化しないため、コンテンツの利用を制限する、DRM(Digital Rights Management)等の著作権保護技術が注目を集めている。
【0003】
著作権保護技術の管理方式は、デバイスバインド方式とユーザバインド方式に大別される。デバイスバインド方式とは、上記サーバがコンテンツの再生回数やエクスポート回数などの利用条件を定めたライセンスを、特定の情報処理装置に限定して提供する方式である。ユーザバインド方式とは、複数の情報処理装置をグループ化して、上記サーバがコンテンツのライセンスを、該グループに属する情報処理装置に対して提供する方式である。ここで、エクスポートとは、ある著作権保護技術によるライセンスに基づいて、他の著作権保護技術によるライセンスを生成することを意味する。このような著作権保護技術の管理方式に関する技術は、例えば特許文献1〜特許文献4等で開示されている。
【0004】
デバイスバインドを用いた場合、指定した機器でのみ利用出来るため、サーバ側で対応機器であるかどうかを識別すれば、対応する機器だけにコンテンツを配布することが可能である。また、デバイスバインドでは、同じ機種あっても機器固有の鍵を用いるため、コンテンツを他の機器と共有させることは出来ず、ライセンスは機器毎に必要となる。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2007−35077号公報
【特許文献2】特開2007−304849号公報
【特許文献3】特開2007−310835号公報
【特許文献4】特開2009−48667号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかし、デバイスバインド方式を用いた場合、ユーザが複数の機器を持つ場合や、同じ機種や互換性のある機種を持つ場合であっても、機種間で互換性はないが同じ扱いができるコンテンツを全て新たに購入して、ライセンスを取得する必要があった。また、互換性のある機器への別ライセンスの無料配布や、互換性は無いが同一のものとして扱うコンテンツの別ライセンス、別コンテンツの無料配布を行った場合、機器の売却や譲渡により、デバイスバインドの保護が維持出来なくなる。さらに、機器の買い替え等でユーザが保有する機器が変われば、変更後の機器で同じコンテンツが利用可能でも、その機器毎に別のライセンスを発行しなければならない。しかし、サーバ側で同一ユーザに複数の別ライセンスを発行した場合、機器の売却や譲渡の際にライセンス管理をコントロール出来なくなる。
【0007】
そこで、本開示は、上記問題に鑑みてなされたものであり、本開示の目的とするところは、デバイスバインド方式を用いた際に、デバイスバインド方式による指定機器および同一ユーザが保有する他の機器に著作権管理されたコンテンツの配布し、該コンテンツを実行するよう制御することが可能な、新規かつ改良された情報処理装置、情報処理方法およびコンピュータプログラムを提供することにある。
【課題を解決するための手段】
【0008】
本開示によれば、機器単位でコンテンツを管理するためのライセンス情報を保持するライセンス情報保持部と、前記ライセンス情報保持部に保持されている前記ライセンス情報に含まれるユーザ情報と、自装置に格納される該自装置のユーザ情報とを比較するライセンス管理部と、前記ライセンス管理部によって、前記ライセンス情報に含まれるユーザ情報と、自装置のユーザ情報とが一致されたと判断された場合に限り、前記ライセンス情報に含まれるデバイス鍵で該ライセンス情報に対応するコンテンツを復号して実行する実行制御部と、を備える、情報処理装置が提供される。
【0009】
また本開示によれば、機器単位でコンテンツを管理するためのライセンス情報を保持するライセンス情報保持ステップと、前記ライセンス情報保持ステップで保持された前記ライセンス情報に含まれるユーザ情報と、自装置に格納される該自装置のユーザ情報とを比較するライセンス管理ステップと、前記ライセンス管理ステップによって、前記ライセンス情報に含まれるユーザ情報と、自装置のユーザ情報とが一致されたと判断された場合に限り、前記ライセンス情報に含まれるデバイス鍵で該ライセンス情報に対応するコンテンツを復号して実行する実行制御ステップと、を備える、情報処理方法が提供される。
【0010】
また本開示によれば、コンピュータに、機器単位でコンテンツを管理するためのライセンス情報を保持するライセンス情報保持ステップと、前記ライセンス情報保持ステップで保持された前記ライセンス情報に含まれるユーザ情報と、自装置に格納される該自装置のユーザ情報とを比較するライセンス管理ステップと、前記ライセンス管理ステップによって、前記ライセンス情報に含まれるユーザ情報と、自装置のユーザ情報とが一致されたと判断された場合に限り、前記ライセンス情報に含まれるデバイス鍵で該ライセンス情報に対応するコンテンツを復号して実行する実行制御ステップと、を実行させる、コンピュータプログラムが提供される。
【発明の効果】
【0011】
以上説明したように本開示によれば、デバイスバインド方式を用いた際に、デバイスバインド方式による指定機器および同一ユーザが保有する他の機器に著作権管理されたコンテンツの配布し、該コンテンツを実行するよう制御することが可能な、新規かつ改良された情報処理装置、情報処理方法およびコンピュータプログラムを提供することができる。
【図面の簡単な説明】
【0012】
【図1】本開示の一実施形態にかかる情報処理システム1のシステム構成例を示す説明図である。
【図2】本開示の一実施形態にかかるデジタルカメラ100の構成例を示す説明図である。
【図3】本開示の一実施形態にかかる情報処理システム1で用いられるメタデータ構造例を示す説明図である。
【図4】モードの設定例を示す説明図である。
【図5】モードとディレクトリ構造との関係を示す説明図である。
【図6】本開示の一実施形態にかかるデジタルカメラ100の動作を示す流れ図である。
【図7】本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。
【図8】本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。
【図9】本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。
【図10】本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。
【図11】本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。
【図12】本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。
【図13】本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。
【図14】本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。
【図15】本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。
【図16】メタデータの構成例を示す説明図である。
【図17】アプリケーションやデータの内容例を示す説明図である。
【図18】本開示の一実施形態にかかる情報処理システム1で用いられるメタデータ構造例を示す説明図である。
【図19】本開示の一実施形態にかかるコンテンツダウンロードサーバ10の機能構成例を示す説明図である。
【図20】機器マッチングデータベース12の内容例を示す説明図である。
【図21】アプリケーションやデータをクライアントの機器に提供する際の階層構造を示す説明図である。
【図22】アプリケーションやデータをクライアントの機器に提供する際の階層構造を示す説明図である。
【図23】本開示の一実施形態にかかる情報処理システム1における、コンテンツ登録者とダウンロードサーバとの間の処理の流れを示す流れ図である。
【図24】クライアント機器とダウンロードサーバとの間の処理の流れを示す流れ図である。
【図25】コンテンツ登録者によるコンテンツ登録の流れを示す流れ図である。
【図26】クライアント機器によるコンテンツ検索および取得処理の流れを示す流れ図である。
【図27】ダウンロードサーバによるコンテンツ検索および送信処理を示す流れ図である。
【図28】クライアント機器によるコンテンツの実行処理を示す流れ図である。
【図29】本開示の一実施形態にかかる情報処理システム1のシステム構成例を示す説明図である。
【図30】従来のユーザバインド方式の概要を示す説明図である。
【図31】従来のデバイスバインド方式の概要を示す説明図である。
【図32】本開示の一実施形態における、デバイスバインド方式によるコンテンツの配布方法の概要を示す説明図である。
【発明を実施するための形態】
【0013】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【0014】
なお、説明は以下の順序で行うものとする。
<1.本開示の一実施形態>
[ユーザバインド方式とデバイスバインド方式について]
[システム構成例]
[デジタルカメラの構成例]
[デジタルカメラの動作]
<2.まとめ>
【0015】
<1.本開示の一実施形態>
[ユーザバインド方式とデバイスバインド方式について]
まず、本開示の好適な実施の形態について詳細に説明するにあたり、ユーザバインド方式とデバイスバインド方式について説明する。そして、従来のユーザバインド方式の問題点と、この問題点を解決する本開示の好適な実施の形態について詳細に説明する。
【0016】
図30は、従来のユーザバインド方式の概要を示す説明図である。ユーザバインド方式は、ユーザ固有の鍵であるユーザ鍵でコンテンツ鍵を暗号化し、ユーザがDRMサーバに登録した機器の範囲でコンテンツを利用する方式である。従来のユーザバインド方式は、ライセンスを発行するDRMサーバにおいて、コンテンツ利用条件と、暗号化したコンテンツ鍵を、ユーザ固有の鍵であるユーザ鍵で暗号化する。またコンテンツを利用する機器において、機器固有のデバイス鍵と、デバイス鍵で暗号化されるユーザ固有のユーザ鍵と、を有している。デバイス鍵はRSA秘密鍵であり、機器生産時に内部に格納され、ハードウェア的に保護される。ユーザ鍵は、機器をDRMサーバに登録することで取得することができる。
【0017】
ユーザはDRMサーバからライセンスを機器にダウンロードすると、機器は、ライセンス条件を満足しているか評価した後、デバイス鍵で復号したユーザ鍵を用いてコンテンツ鍵を復号する。機器では、コンテンツ鍵が取り出されると、このコンテンツ鍵を用いてコンテンツサーバからダウンロードしたコンテンツを復号し、コンテンツを利用することができる。
【0018】
図31は、従来のデバイスバインド方式の概要を示す説明図である。デバイスバインド方式は、機器(デバイス)固有の鍵であるデバイス鍵でコンテンツ鍵を暗号化し、DRMサーバに登録した指定機器でのみコンテンツを利用する方式である。従来のデバイスバインド方式は、ライセンスを発行するDRMサーバにおいて、コンテンツ利用条件を含んだライセンスを機器(デバイス)固有の鍵であるデバイス鍵で暗号化し(ライセンスの暗号化は必須ではない)、コンテンツをコンテンツ鍵で暗号化する。またコンテンツを利用する機器において、機器固有のデバイス鍵を有している。デバイス鍵はRSA秘密鍵であり、機器生産時に機器内部に格納され、ハードウェア的に保護される。
【0019】
ユーザはDRMサーバからライセンスを機器にダウンロードすると、機器はライセンスを評価し、ライセンスが条件を満足している場合に、デバイス鍵を用いてコンテンツ鍵を復号する。ライセンスが復号されると、ライセンスに含まれているコンテンツ鍵が取り出される。機器では、コンテンツ鍵が取り出されると、このコンテンツ鍵を用いてコンテンツサーバからダウンロードしたコンテンツを復号し、コンテンツを利用することができる。
【0020】
しかし、上述したように、デバイスバインド方式を用いた場合、ユーザが複数の機器を持つ場合、同じ機種や互換性のある機種を持つ場合であっても、新たに別々のコンテンツとして購入しライセンスを取得する必要があった。また、互換性のある機器への別ライセンスの無料配布や、互換性は無いが同一のものとして扱うコンテンツの別ライセンス、別コンテンツの無料配布を行なってしまうと、機器の売却や譲渡の際に別のユーザが利用し続ける事が可能となってしまう。さらに、機器の買い替え等でユーザが保有する機器が変われば、変更後の機器で同じコンテンツが利用可能でも、その機器毎に別のライセンスを発行しなければならない。しかし、サーバ側で同一ユーザに複数の別ライセンスを発行した場合、機器の売却や譲渡の際にライセンス管理をコントロール出来なくなる。
【0021】
そこで本開示の一実施形態では、デバイスバインド方式において、同一のユーザであれば、ユーザが複数の機器を持つ場合や、同じ機種や互換性のある機種を持つ場合に、同じ扱いができるコンテンツを動作させるためのライセンスを発行し、コンテンツの実行を許可させることで、デバイスバインド方式にユーザバインド方式の思想を取り入れる。これにより、ユーザが複数の機器を保有したり、機器を買い換えたりした場合のコンテンツ管理の利便性を高めることができる。
【0022】
図32は、本開示の一実施形態における、デバイスバインド方式によるコンテンツの配布方法の概要を示す説明図である。本開示の一実施形態におけるコンテンツ配布方法は、サーバ側で機器マッチングを行ない、既に同一視できるコンテンツをそのユーザが保有していれば、その対象機器に対してライセンスを発行する。
【0023】
図32では、ユーザAが保有する機器Aおよび機器Cには、サーバからダウンロードした、コンテンツを実行するためのライセンスがインストールされており、機器Aおよび機器Cは、このライセンスによりコンテンツを実行することができる。ここで、ユーザAが保有する別の機器Bで使用するために、機器A用に既に購入したコンテンツAと同じように利用できるコンテンツBをユーザAが購入する場合には、サーバは、別途の手続きや、場合によっては代金の支払いをせずに、サーバからライセンスおよびコンテンツを配布する。しかし、機器Bが、ユーザAからユーザBに譲渡され、ユーザBが保有するものとして機器Bがサーバに登録されると、ユーザBは、コンテンツBを機器Bで利用するには、別途サーバから、ユーザB用に発行されるライセンスを取得しなければならない。
【0024】
本開示の一実施形態における、デバイスバインド方式によるコンテンツの配布方法は、このようにライセンスを管理することで、機器を保有するユーザに絞ったコンテンツの提供が可能であり、権利が有れば、他の機器をサーバに接続して、ライセンスをインストールすることが可能となる。
【0025】
[システム構成例]
まず、本開示の一実施形態のシステム構成例について説明する。図1は、本開示の一実施形態にかかる情報処理システム1のシステム構成例を示す説明図である。以下、図1を参照して、本開示の一実施形態にかかる情報処理システム1のシステム構成例について説明する。
【0026】
図1に示したように、本開示の一実施形態にかかる情報処理システム1は、コンテンツダウンロードサーバ10と、DRMサーバ20と、デジタルカメラ100と、を含んで構成される。コンテンツダウンロードサーバ10と、DRMサーバ20と、デジタルカメラ100とは、インターネット30を介して相互に接続されている。なお、図1では各装置とも1台ずつのみを図示しているが、本開示はかかる例に限定されないことは言うまでもない。
【0027】
コンテンツダウンロードサーバ10は、デジタルカメラ100が実行するアプリケーションを保持し、デジタルカメラ100からの要求に応じて、インターネット30を介してコンテンツ(アプリケーションや、アプリケーションで実行されるデータ等をいう)を提供するものである。コンテンツダウンロードサーバ10が提供するコンテンツは暗号化されており、DRMサーバ20が生成するライセンスに含まれる、コンテンツに対応するコンテンツ鍵を用いないと復号することはできない。DRMサーバ20は、デジタルカメラ100が実行するコンテンツをデジタルカメラ100で利用するためのライセンスを発行し、デジタルカメラ100からの要求に応じて、インターネット30を介してライセンスを提供するものである。
【0028】
デジタルカメラ100は、静止画像や動画像を撮影するものである。そして本実施形態では、デジタルカメラ100はインターネット30に接続する機能を有し、コンテンツダウンロードサーバ10やDRMサーバ20にアクセスすることができる。そしてデジタルカメラ100は、インターネット30を介して、コンテンツダウンロードサーバ10が保持しているコンテンツや、DRMサーバ20が発行するライセンスをダウンロードすることができる。
【0029】
本実施形態では、コンテンツダウンロードサーバ10からダウンロードするコンテンツに、所定のフォーマットで記述されたメタデータが付随される。デジタルカメラ100は、アプリケーションやデータを保存する際に、このメタデータを解析して、アプリケーションやデータの保存先を決定することが出来る。デジタルカメラ100による、メタデータの解析処理およびアプリケーションやデータの保存先の決定処理の詳細については後述する。
【0030】
デジタルカメラ100はインターネット30に無線で接続することができるが、有線で接続できてもよい。またコンテンツダウンロードサーバ10やDRMサーバ20は、インターネット30に有線で接続することができるが、無線で接続できてもよい。
【0031】
以上、図1を参照して、本開示の一実施形態にかかる情報処理システム1のシステム構成例について説明した。次に、本開示の一実施形態にかかるデジタルカメラ100の構成例について説明する。
【0032】
[デジタルカメラの構成例]
図2は、本開示の一実施形態にかかるデジタルカメラ100の構成例を示す説明図である。また、図2には、インターネット30に接続されているコンテンツダウンロードサーバ10およびライセンスを発行するDRMサーバ20も図示されている。以下、図2を用いて、本開示の一実施形態にかかるデジタルカメラ100の構成例について説明する。
【0033】
図2に示したように、本開示の一実施形態にかかるデジタルカメラ100は、撮像部101と、カメラ制御部102と、画像処理部103と、画像管理部104と、I/F105と、表示部106と、メモリ107と、外部記憶装置部108と、フォーマット処理部109と、ファイル管理部110と、アプリケーション実行制御部111と、USB112と、ネットワーク処理部113と、ライセンス格納部114と、ライセンス管理部115と、DRM処理部116と、を含んで構成される。
【0034】
撮像部101は、撮像処理を行う。撮像部101は、ズームレンズ、フォーカスレンズ、CCDイメージセンサやCMOSイメージセンサ等の撮像素子を含んで構成され、被写体の光を電気信号(画像信号)に変換するものである。カメラ制御部102は、撮像部101の制御を行うものであり、デジタルカメラ100のユーザ操作に基づいて、例えば、撮像部101に含まれるズームレンズやフォーカスレンズの動作を制御したり、撮像素子への光の入射タイミングを制御したりする。
【0035】
画像処理部103は、撮像部101によって得られる画像信号に対する信号処理を施して画像データを得る。画像処理部103は、画像信号に対する信号処理として、例えばノイズ除去処理、圧縮処理等を実行しても良い。画像管理部104は、画像処理部103によって得られる画像データの、表示部106への表示や、外部記憶装置部108への保存を管理する。
【0036】
I/F105は、フラッシュその他の装置をデジタルカメラ100に接続するためのインタフェースである。表示部106は、撮像部101が撮像した画像や、デジタルカメラ100の操作のためのユーザインタフェースその他の情報を表示するものである。表示部106は、液晶ディスプレイ、有機ELディスプレイ等の平板表示装置で構成される。
【0037】
メモリ107は、デジタルカメラ100が何らかの処理を実行する際にデータを一時的に格納する。メモリ107は、例えば、デジタルカメラ100の電源が切られると格納されたデータが消去される揮発性メモリで構成されていても良い。
【0038】
外部記憶装置部108は、画像処理部103によって生成される画像データ、コンテンツダウンロードサーバ10からダウンロードするアプリケーションやコンテンツデータを保存するためのメモリーカードその他の外部記憶装置である。外部記憶装置部108への画像データの保存や、外部記憶装置部108からの画像データの読み出しは、例えば画像管理部104によって実行される。
【0039】
フォーマット処理部109は、コンテンツダウンロードサーバ10からダウンロードするアプリケーションやコンテンツデータに付随しているメタデータの内容を解析する。フォーマット処理部109は、メタデータの内容を解析して、コンテンツダウンロードサーバ10からダウンロードしたアプリケーションやコンテンツデータの、ファイル管理部110によるファイル管理を制御する。
【0040】
ファイル管理部110は、コンテンツダウンロードサーバ10からダウンロードするアプリケーションやコンテンツデータの、外部記憶装置部108への保存を管理する。ファイル管理部110は、アプリケーションやデータの外部記憶装置部108への保存に際しては、フォーマット処理部109によるメタデータの解析結果が用いられる。フォーマット処理部109によるメタデータの解析処理、および解析結果を用いたファイル管理部110によるアプリケーションやデータの外部記憶装置部108への保存処理の詳細については後述する。
【0041】
アプリケーション実行制御部111は、コンテンツダウンロードサーバ10からダウンロードされ、外部記憶装置部108に保存されたアプリケーションを実行する。アプリケーション実行制御部111は、外部記憶装置部108に保存されたアプリケーションを実行する際に、コンテンツダウンロードサーバ10からダウンロードされて外部記憶装置部108に保存されたコンテンツを利用してもよい。
【0042】
USB112は、デジタルカメラ100と他の装置とをUSBケーブルで接続するためのインタフェースである。ネットワーク処理部113は、インターネット30への接続処理を実行する。デジタルカメラ100は、ネットワーク処理部113によるインターネット30への接続処理により、インターネット30に接続されたコンテンツダウンロードサーバ10から、アプリケーションやデータをダウンロードすることができる。そして、デジタルカメラ100は、ダウンロードしたアプリケーションやデータにより、デジタルカメラ100の機能を向上させたり、ユーザの用途に応じた細かなカスタマイズが可能になったり、新たなコンテンツの利用が可能になったりする。
【0043】
ライセンス格納部114は、DRMサーバ20からダウンロードしたライセンスを格納する。ライセンス格納部114は、セキュアな領域で保護され、ライセンス格納部114へのライセンスの格納およびライセンス格納部114からのライセンスの読出しはライセンス管理部115によって行われる。
【0044】
ライセンス管理部115は、ライセンス格納部114へのライセンスの格納およびライセンス格納部114からのライセンスの読出しを実行する。ライセンス管理部115は、ライセンス格納部114へのライセンスの格納は、DRMサーバ20からライセンスをダウンロードしたタイミングにおいてのみ行われ、その他の場合はライセンス格納部114へはライセンスの書き込みは行われない。従って、ライセンス管理部115がこのようにライセンス格納部114へのライセンスの書き込みタイミングを制限することで、DRMサーバ20が動作を認めた機器だけにコンテンツダウンロードサーバ10からコンテンツを配布し、実行するような制御が行える。
【0045】
DRM処理部116は、ライセンス格納部114に格納されたライセンスを用いたDRM処理を実行する。具体的には、DRM処理部116は、ライセンス格納部114に格納されたライセンスを用いて、コンテンツダウンロードサーバ10からダウンロードしたコンテンツを復号する。DRM処理部116は、ライセンス格納部114に格納されたライセンスを用いたDRM処理を実行することで、著作権管理されたコンテンツの、アプリケーション実行制御部111による実行を制御することができる。
【0046】
以上、図2を用いて本開示の一実施形態にかかるデジタルカメラ100の構成例について説明した。次に、本開示の一実施形態にかかるデジタルカメラ100の動作について説明する。
【0047】
[デジタルカメラの動作]
まず、本開示の一実施形態にかかるデジタルカメラ100の動作について具体的に説明する前に、本開示の一実施形態にかかる情報処理システム1で用いられるメタデータの構造例について説明する。図3は、本開示の一実施形態にかかる情報処理システム1で用いられるメタデータの構造例を示す説明図である。
【0048】
図3に示したように、本開示の一実施形態にかかる情報処理システム1で用いられるメタデータは、“IDGroup”、“Platform”、“Group”、“Name”の4つの要素からなる階層構造を有する。再上位の階層が“IDGroup”であり、以下“Platform”、“Group”、“Name”の順に階層が下がっていく。
【0049】
“IDGroup”は、例えば、フォーマットフォルダーによりID管理を行う団体に与えられるユニークなIDである。“IDGroup”以下は、各団体が、“Platform”、“Group”、“Name”がユニークになるように独自に管理する。
【0050】
“Platform”は、例えば、OSや製品群単位で設定されるプラットフォーム名が記録されるIDであり、“IDGroup”以下では“Platform”はユニークなIDとなるが、ID管理を行う団体同士の取り決めにより、“IDGroup”を跨いで同一のIDを“Platform”に設定することもできる。
【0051】
“Group”は、“Platform”以下でユニークに命名されるIDであり、例えば、同じ形式であるが内容が異なるデータなど、あるプラットフォームで共通に扱うことができるグループ名を表す。例えば、ID管理を行う団体同士の取り決めにより、“IDGroup”を跨いで同一のIDを“Group”に設定することもできる。
【0052】
“Name”は、“Group”以下でユニークに命名されるIDであり、例えば、アプリケーションやデータの名称が設定されるIDである。“Name”は、アプリケーションのホームディレクトリの名前として利用できるようにしても良い。そして、“Name”以下はそれぞれのアプリケーションやデータで自由に構造を持たせて管理できるようにしてもよい。
【0053】
図3に示した階層構造の例では、“IDGroup”には“IDGroup1”と“IDGroup2”とが設定されている。“IDGroup1”には“Platform1”と“Platform2”とが設定され、“IDGroup2”には“Platform1”が設定されている。従って、“IDGroup1”と“IDGroup2”とには、同一の“Platform”である“Platform1”が設定されていることになる。
【0054】
そして、“IDGroup1”の“Platform1”と“Platform2”とには、それぞれ同一の“Group”である“Group1”が設定され、“IDGroup2”の“Platform1”の“Group”には“Group2”が設定されている。
【0055】
“Platform”と“Group”を、“IDGroup”を跨いで管理できるようにするには、“IDGroup”を跨いで管理するためのモードを設定する。次に、“Platform”と“Group”を、“IDGroup”を跨いで管理するためのモードの設定例について説明する。
【0056】
図4は、“Platform”と“Group”を、“IDGroup”を跨いで管理するためのモードの設定例を示す説明図である。図4は、3つの0、1からなるフラグを1つの変数“Mode”で管理するための例を示したものである。
【0057】
“Global”は、アプリケーションやデータごとに、“Platform”と“Group”を、“IDGroup”を跨いで管理する(グローバルで管理する)かどうかを決定するためのフラグである。0はグローバルで管理しない(アプリケーションやデータが“Platform”と“Group”をローカルで管理する)ことを意味し、1はグローバルで管理することを意味する。ローカルで管理する場合は、“IDGroup”以下の要素は全く独立で管理されることになる。
【0058】
“IDGroup限定”および“Platform限定”は、アプリケーションやデータを扱う際に、その装置が他の“IDGroup”や“Platform”を扱う可能性がない場合に、その装置で処理を簡略化させる際に使用されるフラグである。本実施形態では、“IDGroup”と“Platform”とをそれぞれ独立して指定可能としているが、本開示はかかる例に限定されないことは言うまでもない。
【0059】
“IDGroup限定”および“Platform限定”は、アプリケーションやデータを扱う際に、その装置でのファイルに関する制約があるような場合に有効である。例えば、アプリケーションやデータを扱う装置が、所定の長さ以上のファイル名を設定できないようなファイルシステムを採用しているような場合に、“IDGroup限定”や“Platform限定”の設定が有効となる。
【0060】
図4に示すように、3つの0、1からなるフラグを1つの変数“Mode”で管理するために、変数“Mode”は、図4に示したように0から7の値を取り得る。この変数“Mode”の設定は、アプリケーションやデータに付随するメタデータに含まれる。具体的には、後述するメタデータのフォーマットにおける“GlobalMode”メタに設定が記述される。なお本開示においては変数“Mode”の設定は係る例には限定されず、アプリケーションやコンテンツデータがダウンロードされる各機器の内部で保持しておき、アプリケーションやコンテンツデータがダウンロードされる際に参照されるようにしてもよい。
【0061】
次に、IDとディレクトリ構造との関係について説明する。図5は、本開示の一実施形態にかかる情報処理システム1における、IDとディレクトリ構造との関係を示す説明図である。
【0062】
本開示の一実施形態にかかる情報処理システム1は、アプリケーションやコンテンツデータを機器の内部に格納する際に、図3に示した“IDGroup”、“Platform”、“Group”、“Name”の4つの要素と、図4に示した変数“Mode”の設定とを用いる。
【0063】
図5に示した表の上段は、“Platform”と“Group”を各機器がローカルで管理する場合のディレクトリ構造を示し、下段は“Platform”と“Group”の少なくともいずれかがグローバルで管理される場合のディレクトリ構造を示している。
【0064】
変数“Mode”が0の場合は、“Platform”と“Group”を各機器がローカルで管理し、“IDGroup”や“Platform”には限定がない場合のディレクトリ構造となる。親ディレクトリには“IDGroup_Platform_Group”という3つの要素名を所定のセパレータ(ここではセパレータをアンダーバー(“_”)とする)で結合したものからなるディレクトリ名を付し、子ディレクトリには“Name”要素からなるディレクトリ名を付す。なお、各要素は、名称に上記のセパレータと同一の文字が使用されないように制限することが望ましい。
【0065】
変数“Mode”が2の場合は、“Platform”と“Group”を各機器がローカルで管理し、“IDGroup”には限定がなく、“Platform”にのみ限定がある場合のディレクトリ構造となる。親ディレクトリには“IDGroup_Group”という2つの要素名をアンダーバーで結合したものからなるディレクトリ名を付し、子ディレクトリには“Name”要素からなるディレクトリ名を付す。
【0066】
変数“Mode”が4の場合は、“Platform”と“Group”を各機器がローカルで管理し、“IDGroup”のみ限定があり、“Platform”には限定がない場合のディレクトリ構造となる。親ディレクトリには“Platform_Group”という2つの要素名をアンダーバーで結合したものからなるディレクトリ名を付し、子ディレクトリには“Name”要素からなるディレクトリ名を付す。
【0067】
変数“Mode”が6の場合は、“Platform”と“Group”を各機器がローカルで管理し、“IDGroup”と“Platform”のいずれにも限定がある場合のディレクトリ構造となる。親ディレクトリには“Group”要素のみからなるディレクトリ名を付し、子ディレクトリには“Name”要素からなるディレクトリ名を付す。
【0068】
変数“Mode”が1の場合は、“Platform”と“Group”がグローバルで管理され、“IDGroup”や“Platform”には限定がない場合のディレクトリ構造となる。親ディレクトリには“Platform_Group”という2つの要素名をアンダーバーで結合したものからなるディレクトリ名を付し、子ディレクトリには“IDGroup_Name”という2つの要素名をアンダーバーで結合したものからなるディレクトリ名を付す。
【0069】
変数“Mode”が3の場合は、“Platform”と“Group”がグローバルで管理され、“IDGroup”には限定がなく、“Platform”にのみ限定がある場合のディレクトリ構造となる。親ディレクトリには“Group”の1つの要素名のみからなるディレクトリ名を付し、子ディレクトリには“IDGroup_Name”という2つの要素名をアンダーバーで結合したものからなるディレクトリ名を付す。
【0070】
なお、変数“Mode”が5の場合と7の場合は、それぞれ変数“Mode”が4の場合と6の場合と同じディレクトリ構造となるので、変数“Mode”は5と7の値を取らないようにしてもよい。
【0071】
続いて、本開示の一実施形態にかかるデジタルカメラ100の動作について具体的に説明する。図6は、本開示の一実施形態にかかるデジタルカメラ100の動作を示す流れ図である。図6に示した流れ図は、デジタルカメラ100がコンテンツダウンロードサーバ10からアプリケーションやデータをダウンロードした際、デジタルカメラ100の動作を示したものである。以下、図6を用いて本開示の一実施形態にかかるデジタルカメラ100の動作について具体的に説明する。
【0072】
デジタルカメラ100は、コンテンツダウンロードサーバ10からアプリケーションやデータをダウンロードすると、ダウンロードしたファイルからアプリケーションやデータの管理用メタデータをフォーマット処理部109が抽出する(ステップS101)。
【0073】
上記ステップS101で、アプリケーションやデータの管理用メタデータをフォーマット処理部109が抽出すると、続いて、抽出した管理用メタデータの内容をフォーマット処理部109が分析する。具体的には、フォーマット処理部109は、抽出した管理用メタデータに含まれる“GlobalMode”メタの内容を取得して、ダウンロードしたアプリケーションやデータのモードの内容を把握する。そしてフォーマット処理部109は、抽出した管理用メタデータに含まれる“IDGroup”メタと“Platform”メタの内容を把握する(ステップS102)。
【0074】
上記ステップS102で、抽出した管理用メタデータの内容をフォーマット処理部109が分析し、メタの内容を把握すると、フォーマット処理部109はデジタルカメラ100のポリシーを調べる(ステップS103)。具体的には、フォーマット処理部109は、“GlobalMode”メタでIDGroup限定が設定されていた場合には、デジタルカメラ100の“IDGroup”の設定を調べ、“GlobalMode”メタでPlatform限定が設定されていた場合には、デジタルカメラ100の“Platform”の設定を調べる。
【0075】
上記ステップS103で、フォーマット処理部109はデジタルカメラ100のポリシーを調べると、続いて、ファイル管理部110が、“GlobalMode”メタでIDGroup限定が設定されており、かつ、フォーマット処理部109が抽出した管理用メタデータに含まれる“IDGroup”メタの内容が、デジタルカメラ100の“IDGroup”の設定以外のものであるかどうかを判断する(ステップS104)。
【0076】
上記ステップ104の判断の結果、“GlobalMode”メタでIDGroup限定が設定されていないか、または、IDGroup限定が設定されていて、かつ、フォーマット処理部109が抽出した管理用メタデータに含まれる“IDGroup”メタの内容が、デジタルカメラ100の“IDGroup”の設定と同一であれば、続いて、ファイル管理部110が、“GlobalMode”メタでPlatform限定が設定されており、かつ、フォーマット処理部109が抽出した管理用メタデータに含まれる“Platform”メタの内容が、デジタルカメラ100の“Platform”の設定以外のものであるかどうかを判断する(ステップS105)。
【0077】
上記ステップ105の判断の結果、“GlobalMode”メタでPlatform限定が設定されていないか、または、Platform限定が設定されていて、かつ、フォーマット処理部109が抽出した管理用メタデータに含まれる“Platform”メタの内容が、デジタルカメラ100の“Platform”の設定と同一であれば、フォーマット処理部109が抽出したメタの内容に基づいて、ファイル管理部110が、アプリケーションやデータを格納するためのパスを作成する(ステップS106)。ファイル管理部110による、アプリケーションやデータを格納するためのパスの作成の詳細については後述する。
【0078】
上記ステップS106で、ファイル管理部110が、アプリケーションやデータを格納するためのパスを作成すると、ファイル管理部110は、ルートディレクトリ以下の、上記ステップS106で作成したパスに、ダウンロードされたアプリケーションやデータを格納する(ステップS107)。ダウンロードされたアプリケーションやデータは、例えば外部記憶装置部108に格納される。
【0079】
一方、上記ステップS104で、“GlobalMode”メタでIDGroup限定が設定されており、かつ、フォーマット処理部109が抽出した管理用メタデータに含まれる“IDGroup”メタの内容が、デジタルカメラ100の“IDGroup”の設定以外である場合、または、上記ステップS105で、“GlobalMode”メタでPlatform限定が設定されており、かつ、フォーマット処理部109が抽出した管理用メタデータに含まれる“Platform”メタの内容が、デジタルカメラ100の“Platform”の設定以外のものである場合は、ファイル管理部110は、ダウンロードされたアプリケーションやデータに対してデジタルカメラ100の対象外のアプリケーションやデータであるとする処理を実行する(ステップS108)。
【0080】
本開示の一実施形態にかかるデジタルカメラ100は、図6に示したような一連の処理を実行することで、ダウンロードしたアプリケーションやデータを、当該アプリケーションやデータに付随するメタデータの内容に応じてデジタルカメラ100の内部に格納することができる。
【0081】
本開示の一実施形態にかかるデジタルカメラ100によるダウンロードしたアプリケーションやデータのデジタルカメラ100の内部への格納について、図面を参照しながらより詳細に説明する。
【0082】
図7は、本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。図7に示したディレクトリ構造は、“IDGroup”や“Platform”に限定が無く、また“Platform”および“Group”をローカルで管理する場合のディレクトリ構造を示したものである。これは、“GlobalMode”メタが0の場合に相当するものである。
【0083】
図7では、“IDGroup”が“XXX”または“3rdParty”の2種類であり、“Platform”が“XXXDSC”である場合を例示している。そして“Group”メタには“App”と“MapData”のいずれかが指定されているものとする。
【0084】
この場合は、ファイル管理部110によって、アプリケーションのインストールディレクトリ以下には“XXX_XXXDSC_App”または“XXX_3rdParty_App”ディレクトリが出来上がる。また、ファイル管理部110によって、データディレクトリ以下には“XXX_XXXDSC_MapData”または“XXX_3rdParty_MapData”ディレクトリが出来上がる。
【0085】
IDGroup”や“Platform”に限定が無く、また“Platform”および“Group”をローカルで管理する場合は、ファイル管理部110は、アプリケーションのインストールディレクトリやデータディレクトリの直下に、“IDGroup”、“Platform”および“Group”の3つの要素を“_”で結合したディレクトリを作成し、作成したディレクトリの直下に、“Name”要素からなるディレクトリを作成する。
【0086】
図8は、本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。図8に示したディレクトリ構造は、“IDGroup”や“Platform”に限定が無く、また“Platform”および“Group”をグローバルで管理する場合のディレクトリ構造を示したものである。これは、“GlobalMode”メタが1の場合に相当するものである。また、ここでは“Platform”が“XXXDSC”のもの、および“Group”が“App”のものをグローバルで管理するものとしている。
【0087】
この場合は、ファイル管理部110によって、アプリケーションのインストールディレクトリ以下には“XXXDSC_App”ディレクトリが出来上がる。また、ファイル管理部110によって、データディレクトリ以下には“XXXDSC_MapData”または“XXXDSC_GuideData”ディレクトリが出来上がる。
【0088】
そして、“XXXDSC_App”ディレクトリ以下には、“XXX_MapViewer1.0”ディレクトリと“3rdParty_Guide1.0”ディレクトリを、ファイル管理部110が生成する。これにより、“XXXDSC_App”ディレクトリに、要素“Group”が“App”以下に属するアプリケーションがまとめて格納される。
【0089】
“IDGroup”や“Platform”に限定が無く、また“Platform”および“Group”をグローバルで管理する場合は、ファイル管理部110は、アプリケーションのインストールディレクトリやデータディレクトリの直下に、“Platform”および“Group”の2つの要素を“_”で結合したディレクトリを作成し、作成したディレクトリの直下に、“IDGroup”および“Name”の2つの要素を“_”で結合したディレクトリを作成する。
【0090】
図9は、本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。図9に示したディレクトリ構造は、“Platform”にのみ限定があり、また“Group”をグローバルで管理する場合のディレクトリ構造を示したものである。これは、“GlobalMode”メタが3の場合に相当するものである。
【0091】
この場合は、ファイル管理部110によって、アプリケーションのインストールディレクトリ以下には“App”ディレクトリが出来上がる。また、ファイル管理部110によって、データディレクトリ以下には“MapData”または“GuideData”ディレクトリが出来上がる。
【0092】
そして、“App”ディレクトリ以下には、“XXX_MapViewer1.0”ディレクトリと“3rdParty_Guide1.0”ディレクトリを、ファイル管理部110が生成する。これにより、“App”ディレクトリに、要素“Group”が“App”以下に属するアプリケーションがまとめて格納される。
【0093】
“Platform”にのみ限定があり、また“Group”をグローバルで管理する場合は、ファイル管理部110は、アプリケーションのインストールディレクトリやデータディレクトリの直下に、“Group”の1つの要素のみからなるディレクトリを作成し、作成したディレクトリの直下に、“IDGroup”および“Name”の2つの要素を“_”で結合したディレクトリを作成する。
【0094】
図10は、本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。図10に示したディレクトリ構造は、“Platform”にのみ限定があり、また“Group”をローカルで管理する場合のディレクトリ構造を示したものである。これは、“GlobalMode”メタが2の場合に相当するものである。
【0095】
この場合は、ファイル管理部110によって、アプリケーションのインストールディレクトリ以下には“XXX_App”と“3rdParty_App”ディレクトリが出来上がる。また、ファイル管理部110によって、データディレクトリ以下には“XXX_MapData”、“XXX_GuideData”、“3rdParty_MapData”、“3rdParty_GuideData”ディレクトリが出来上がる。
【0096】
そして、“XXX_App”ディレクトリ以下には、“MapViewer1.0”ディレクトリを、“3rdParty_App”ディレクトリ以下には“Guide1.0”ディレクトリを、ファイル管理部110が生成する。
【0097】
“Platform”にのみ限定があり、また“Group”をローカルで管理する場合は、ファイル管理部110は、アプリケーションのインストールディレクトリやデータディレクトリの直下に、“IDGroup”および“Group”の2つの要素を“_”で結合したディレクトリを作成し、作成したディレクトリの直下に、“Name”の1つの要素のみからなるディレクトリを作成する。
【0098】
図11は、本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。図11に示したディレクトリ構造は、“IDGroup”にのみ限定がある場合のディレクトリ構造を示したものである。これは、“GlobalMode”メタが4の場合に相当するものである。
【0099】
この場合は、ファイル管理部110によって、アプリケーションのインストールディレクトリ以下には“XXXDSC_App”および“YYY_App”ディレクトリが出来上がる。また、ファイル管理部110によって、データディレクトリ以下には“XXXDSC_MapData”および“YYY_GuideData”ディレクトリが出来上がる。
【0100】
そして、“XXXDSC_App”ディレクトリ以下には、“MapViewer1.0”ディレクトリを、“YYY_App”ディレクトリ以下には“Guide1.0”ディレクトリを、ファイル管理部110が生成する。
【0101】
“IDGroup”にのみ限定がある場合は、ファイル管理部110は、アプリケーションのインストールディレクトリやデータディレクトリの直下に、“Platform”および“Group”の2つの要素を“_”で結合したディレクトリを作成し、作成したディレクトリの直下に、“Name”の1つの要素のみからなるディレクトリを作成する。
【0102】
図12は、本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。図12に示したディレクトリ構造は、“IDGroup”および“Platform”に限定がある場合のディレクトリ構造を示したものである。これは、“GlobalMode”メタが6の場合に相当するものである。
【0103】
この場合は、ファイル管理部110によって、アプリケーションのインストールディレクトリ以下には“App”ディレクトリが出来上がる。また、ファイル管理部110によって、データディレクトリ以下には“MapData”および“GuideData”ディレクトリが出来上がる。
【0104】
そして、“App”ディレクトリ以下には、“MapViewer1.0”および“Guide1.0”ディレクトリを、ファイル管理部110が生成する。“IDGroup”および“Platform”に限定がある場合は、このように“App”ディレクトリ以下に全てのアプリケーションが格納されることになる。また、コンテンツデータは“MapData”および“GuideData”ディレクトリ以下に格納されることになる。
【0105】
“IDGroup”および“Platform”に限定がある場合は、ファイル管理部110は、アプリケーションのインストールディレクトリやデータディレクトリの直下に、“Group”の1つの要素のみからなるディレクトリを作成し、作成したディレクトリの直下に、“Name”の1つの要素のみからなるディレクトリを作成する。
【0106】
このようにファイル管理部110は、“GlobalMode”メタの内容に応じて、アプリケーションやデータをインストールする際に、構造を変えてディレクトリを作成し、作成したディレクトリにアプリケーションやコンテンツデータを格納することが可能になる。これにより、同一・同種のアプリケーションやコンテンツデータを、同一のディレクトリにまとめて格納することができるようになるので、本開示の一実施形態にかかるデジタルカメラ100は、アプリケーションやデータをより容易に管理することが可能となる。
【0107】
続いて、アプリケーションのインストールディレクトリに格納されたアプリケーションが、データディレクトリに格納されたデータを使用する例を説明する。図13は、本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。
【0108】
デジタルカメラ100が、アプリケーションのインストールディレクトリに格納されたアプリケーションが、データディレクトリに格納されたデータを使用するには、アプリケーションに付随するメタデータに含まれる“RelatedGroup”メタの内容を参照する。
【0109】
図13を用いて具体的に説明すれば、例えば、“MapViewer1.0”が“MapData”ディレクトリ以下のデータを参照する場合は、予め“RelatedGroup”に“MapData”と記述したメタデータを用意しておき、“MapViewer1.0”が“RelatedGroup”に記述された“MapData”を利用する。同様に、“GuideData1.0”が“GuideData”ディレクトリ以下のデータを参照する場合は、予め“RelatedGroup”に“GuideData”と記述したメタデータを用意しておき、“GuideViewer1.0”が“RelatedGroup”に記述された“GuideData”を利用する。
【0110】
このように、“RelatedGroup”メタでアプリケーションとコンテンツとを結びつけることで、アプリケーションのインストールディレクトリに格納されたアプリケーションが、データディレクトリに格納されたデータを使用することができる。この“RelatedGroup”メタを応用すれば、1つのアプリケーションから複数のデータディレクトリへアクセスすることが可能になるし、複数のアプリケーションから1つのデータディレクトリを利用することも可能になる。さらに、後述するアプリケーションのバージョンアップに際して“RelatedGroup”メタの内容を更新することで、後から追加されたデータディレクトリに格納されたデータを使用することもできる。
【0111】
続いて、アプリケーションやコンテンツデータのバージョンアップ例を説明する。アプリケーションやコンテンツデータのバージョンアップには、マイナーバージョンアップとメジャーバージョンアップとがある。本実施形態では、マイナーバージョンアップは、“Group”や“Name”の変更を伴わないものであり、アプリケーションやデータのファイルのみが置き換えられたり追加されたりする。バージョンの違いは、“DataVersion”メタを使用する。
【0112】
一方、メジャーバージョンアップは、“Group”や“Name”の変更を伴うものである。例えば、アプリケーションの場合は、旧バージョンのものとは別の名前の“Name”要素が用いられ、旧バージョンのものとは別のディレクトリが生成される。またコンテンツデータの場合は、旧バージョンのものとは別の名前の“Group”要素が用いられ、旧バージョンのものとは別のディレクトリが生成される。従って、新旧両方のバージョンのファイルが併存することになる。そして、過去のバージョンへのリンクとして“OldVersion”メタを使用する。この“OldVersion”メタは、アプリケーションやデータを管理するためのメタデータではなく、アプリケーションやデータを提供するサービスを管理するためのメタデータに含まれるものとする。もちろん、バージョンアップに際して旧バージョンのディレクトリは削除されるようにしても良い。
【0113】
図14は、本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。図14に示した例は、アプリケーションやコンテンツデータのマイナーバージョンアップの際のディレクトリ構造について示したものである。このように、アプリケーションやコンテンツデータのマイナーバージョンアップの際には、アプリケーションやデータのファイルのみが置き換えられたり追加されたりする。
【0114】
図15は、本開示の一実施形態にかかるデジタルカメラ100のディレクトリ構造を示す説明図である。図15に示した例は、アプリケーションやコンテンツデータのメジャーバージョンアップの際のディレクトリ構造について示したものである。このように、アプリケーションやコンテンツデータのメジャーバージョンアップの際には、旧バージョンのものとは別のディレクトリが生成され、新バージョンのアプリケーションやデータのファイルのみは新たに生成されたディレクトリに格納される。
【0115】
このように、本開示の一実施形態にかかるデジタルカメラ100は、アプリケーションやコンテンツデータのバージョンアップの際には、マイナーバージョンアップかメジャーバージョンアップかによって、バージョンアップ時のファイル格納方法を変更することができる。
【0116】
続いて、アプリケーションやコンテンツデータに付随してコンテンツダウンロードサーバ10から送信されるメタデータの構成例について説明する。図16は、コンテンツダウンロードサーバ10から送信されるメタデータの構成例を示す説明図である。
【0117】
図16には、メタデータの構成として“DataVersion”、“ID”、“IDGroup”、“Platform”、“Group”、“Name”、“TargetModel”、“GlobalMode”、“RelatedGroup”を図示している。
【0118】
“DataVersion”は、アプリケーションやデータのバージョンが記述されるメタであり、上述した、デジタルカメラ100におけるアプリケーションやデータのバージョンアップの際に参照される。“ID”は、“IDGroup”、“Platform”、“Group”、および“Name”の4要素を“_”で結合したものが記述されるメタであり、ID全体を格納するためのものである。“TargetModel”メタについては後に詳述する。
【0119】
図17は、コンテンツダウンロードサーバ10から送信されるアプリケーションやデータの内容例を示す説明図である。上述してきたように、本実施形態では、“IDGroup”、“Platform”、“Group”、“Name”の4要素をメタデータ(コンテンツメタ)で管理する。従って、アプリケーションやコンテンツデータと、メタデータとを圧縮して、コンテンツダウンロードサーバ10に保持しておくことで、デジタルカメラ100は、アプリケーションやデータをダウンロードすると、同時に、アプリケーションやデータに付随するコンテンツメタを取得することができる。
【0120】
続いて、コンテンツダウンロードサーバ10から送信されるアプリケーションやデータが機器毎に異なる場合の管理方法について説明する。
【0121】
図18は、本開示の一実施形態にかかる情報処理システム1で用いられるメタデータの構造例を示す説明図である。図18に示したメタデータの構造は、図3に示したメタデータの構造に加え、“TargetModel”という新たな要素が加わっている。この“TargetModel”は、機種の違いを全て異なるIDで管理する場合、同じ扱いのアプリ(コンテンツ)である事を示すために用いられる要素である。
【0122】
例えば、同一のアプリケーションであっても、そのアプリケーションが実行される機器のハードウェア性能の違いによって、細部を変更しなければならない場合がある。例えば、画面がタッチパネルであるか否かによって、表示内容を変更しなければならない場合が考えられる。そのような場合に、アプリケーションとしては同一であるが、そのアプリケーションが実行されるターゲットの機器に応じて異なるバイナリやデータを用意することで、アプリケーションやデータの管理を簡略化することが可能となる。なお、排他的で同じ機器に複数の異なる“TargetModel”は存在出来ないように制限する。
【0123】
図18では、“IDGroup1”−“Platform1”−“Group1”−“Name1”以下に、“TargetModel”として“A”と“B”とが、“IDGroup1”−“Platform2”−“Group1”−“Name2”以下に、“TargetModel”として“A”と“B”とが、それぞれ指定されている。
【0124】
なお、“TargetModel”メタは、アプリケーションやデータを、コンテンツダウンロードサーバ10から各機器に配信する際に用いられるものである。“TargetModel”メタは、アプリケーションやデータが各機器に配信された後の、ディレクトリの作成やファイルの格納には用いられない。また、アプリケーションやデータに、機器による違いがない場合は、もちろん“TargetModel”メタの内容を省略しても良い。
【0125】
図19は、本開示の一実施形態にかかるコンテンツダウンロードサーバ10の機能構成例を示す説明図である。以下、図19を用いて本開示の一実施形態にかかるコンテンツダウンロードサーバ10の機能構成例について説明する。
【0126】
図19に示したように、本開示の一実施形態にかかるコンテンツダウンロードサーバ10は、データ管理部11と、機器マッチングデータベース12と、を含んで構成される。
【0127】
データ管理部11は、コンテンツダウンロードサーバ10から提供するアプリケーションを、“IDGroup”、“Platform”、“Group”、“Name”、“TargetModel”の5つの要素からなるIDで管理する。目的のアプリケーションのダウンロード要求がクライアントの機器からあった際に、機器毎に適合するものを機器マッチングデータベース12から調べ、適合するものを提供する。
【0128】
機器マッチングデータベース12は、アプリケーションの情報が機器毎に登録されるデータベースである。データ管理部11は、機器マッチングデータベース12に登録されている情報を参照することで、目的のアプリケーションのダウンロード要求がクライアントの機器からあった際に、機器毎に適合するものを提供できる。
【0129】
以上、図19を用いて本開示の一実施形態にかかるコンテンツダウンロードサーバ10の機能構成例について説明した。続いて、機器マッチングデータベース12の内容例について説明する。図20は、機器マッチングデータベース12の内容例を示す説明図である。
【0130】
図20に示した機器マッチングデータベース12には、“IDGroup”、“Platform”、“Group”、“Name”からなる共通IDとして“XXX_DSC_App_Mapviewer”、“XXX_DSC_Map_日本”、“XXX_DSC_Map_首都圏”の3つが示されている。“XXX_DSC_App_Mapviewer”は、例えばデジタルカメラ100で実行される、地図表示用のアプリケーションのIDを指し、“XXX_DSC_Map_日本”は、当該地図表示用のアプリケーションで用いられる日本地図のIDを指し、“XXX_DSC_Map_首都圏”は、当該地図表示用のアプリケーションで用いられる首都圏の地図のIDを指す。
【0131】
このうち、“XXX_DSC_App_Mapviewer”、および“XXX_DSC_Map_日本”については、“TargetModel”が指定されている。“TargetModel”が指定されていることで、これらのアプリケーションやデータについては、機器毎に異なるものが用意されていることになる。また“XXX_DSC_Map_首都圏”については“TargetModel”が指定されていない。これは、地図表示用のアプリケーションを実行する全ての機器において共通のデータが用意されていることになる。
【0132】
図21は、アプリケーションやデータをクライアントの機器に提供する際の階層構造を示す説明図である。図21に示した階層構造は、機器マッチングデータベース12に図20のようにデータが登録されている際の階層構造である。
【0133】
機器A(例えば、表示部にタッチパネルを備えているデジタルカメラ)に上記地図表示用のアプリケーションを提供する際には、アプリケーションと、当該アプリケーションで用いられる日本地図のデータは、機器A用に作成されたものが提供される。機器B(例えば、表示部にタッチパネルを備えていないデジタルカメラ)に上記地図表示用のアプリケーションを提供する際には、アプリケーションと、当該アプリケーションで用いられる日本地図のデータは、機器B用に作成されたものが提供される。当該アプリケーションで用いられる首都圏の地図のデータについては、機器A、機器B共通のものが提供される。
【0134】
図22は、アプリケーションやデータをクライアントの機器に提供する際の階層構造を示す説明図である。図22は、2つの機器(機器Aと機器B)を例示して階層構造を示している。
【0135】
コンテンツダウンロードサーバ10から機器別にコンテンツをダウンロードした場合であっても、それぞれの機器で同じ構成でコンテンツを管理することができる。そして機器Aおよび機器Bは、図22に示したように、ライセンス管理領域(ライセンス格納部114)にライセンスをまとめて格納することができる。
【0136】
例えば、日本地図データが“データ1.dat”、および“データ2.dat”という2つのファイルを持つ場合、機器Aの“MapViewer”からも、機器Bの“MapViewer”からも、以下のように同じパスでそれぞれの専用データにアクセスできる。
ダウンロードルート/Sony_DSC_Map_日本/データ1.dat
ダウンロードルート/Sony_DSC_Map_日本/データ2.dat
【0137】
なお、ライセンスは、ライセンス管理領域以下にコンテンツと同様のディレクトリ構造で格納する方法や、IDを使って1ヶ所に格納する方法など、コンテンツダウンロードサーバ10からダウンロードしたコンテンツと対応が取れる方法であれば、どのような方法で格納しても良い。
【0138】
続いて、本開示の一実施形態にかかる情報処理システム1における、コンテンツ登録者とダウンロードサーバとの間の処理の流れについて説明する。図23は、本開示の一実施形態にかかる情報処理システム1における、コンテンツ登録者とダウンロードサーバとの間の処理の流れを示す流れ図である。
【0139】
アプリケーションやデータを制作してダウンロードサーバに登録するコンテンツ登録者は、アプリケーションやデータを開発する。またコンテンツ登録者は、当該アプリケーションやデータに付する、“IDGroup”、“Platform”、“Group”、“Name”の4要素からなるIDの管理を行う(ステップS201)。
【0140】
続いて、コンテンツ登録者は、作成したアプリケーションやデータに対応する機器リストを作成する。ここで、機器毎にアプリケーションのバイナリが異なったり、データが異なったりする場合は、“TargetModel”要素をIDに追加する(ステップS202)。
【0141】
コンテンツ登録者は、アプリケーションやデータを開発し、IDの管理が完了すると、作成したアプリケーションやデータをIDと共にコンテンツダウンロードサーバ10に登録する(ステップS203)。
【0142】
コンテンツダウンロードサーバ10は、コンテンツ登録者から登録のあったアプリケーションやデータをダウンロード環境に登録し、コンテンツをコンテンツ鍵で暗号化すると共に、ID情報を機器マッチングデータベース12に格納する(ステップS204)。この一連の処理により、コンテンツ登録者が開発したアプリケーションやデータが、クライアント機器からダウンロード可能な状態となる。
【0143】
以上、図23を用いて、本開示の一実施形態にかかる情報処理システム1における、コンテンツ登録者とコンテンツダウンロードサーバ10との間の処理の流れについて説明した。次に、本開示の一実施形態にかかる情報処理システム1における、クライアント機器(例えばデジタルカメラ100)とコンテンツダウンロードサーバ10との間の処理の流れについて説明する。
【0144】
図24は、本開示の一実施形態にかかる情報処理システム1における、クライアント機器とコンテンツダウンロードサーバ10との間の処理の流れを示す流れ図である。以下、図24を用いて本開示の一実施形態にかかる情報処理システム1における、クライアント機器とコンテンツダウンロードサーバ10との間の処理の流れについて説明する。
【0145】
クライアント機器がコンテンツダウンロードサーバ10からアプリケーションやデータを取得する際には、まずクライアント機器はコンテンツダウンロードサーバ10へログインし、コンテンツの検索および利用機種名の送信を行う(ステップS210)。クライアント機器がコンテンツダウンロードサーバ10に送信する利用機種名の情報は、“TargetModel”要素に対応するものである。
【0146】
上記ステップS210で、クライアント機器がコンテンツダウンロードサーバ10へコンテンツの検索および機器情報の送信を行うと、コンテンツダウンロードサーバ10は、クライアント機器から送信された情報を用いて機器マッチングデータベース12を確認する(ステップS211)。機器マッチングデータベース12を確認すると、コンテンツダウンロードサーバ10は、上記ステップS210での要求に合致したコンテンツリストをクライアント機器へ送信する(ステップS212)。
【0147】
クライアント機器は、コンテンツダウンロードサーバ10からコンテンツリストを受信すると、ダウンロードを希望するアプリケーションやデータを選択し(ステップS213)、選択したアプリケーションやデータのダウンロードをコンテンツダウンロードサーバ10に要求する(ステップS214)。
【0148】
上記ステップS214で、クライアント機器がコンテンツダウンロードサーバ10へアプリケーションやデータのダウンロードを要求すると、コンテンツダウンロードサーバ10はDRMサーバ20にライセンスの発行を依頼し、DRMサーバ20は当該コンテンツに対するライセンスを作成する(ステップS215)。DRMサーバ20は、ライセンスを作成すると、作成したライセンスをクライアント機器へ送信する(ステップS216)。
【0149】
DRMサーバ20からライセンスを受信したクライアント機器は、受信したライセンスをライセンス格納領域に格納する(ステップS217)。クライアント機器がデジタルカメラ100の場合は、受信したライセンスは、ライセンス処理部115によってライセンス格納部114に格納される。
【0150】
その後、コンテンツダウンロードサーバ10は対応する暗号化されたアプリケーションやデータを抽出し(ステップS218)、抽出した、暗号化されたアプリケーションやデータをクライアント機器へ送信する(ステップS219)。
【0151】
クライアント機器は、コンテンツダウンロードサーバ10から暗号化されたアプリケーションやデータを受信すると、上述した格納ルールに従って、アプリケーションやデータを内部に格納する(ステップS219)。クライアント機器は、アプリケーションやデータを内部に格納する際には、“TargetModel”要素の情報を用いることはない。
【0152】
このようにクライアント機器とダウンロードサーバとの間で処理を実行することにより、機器毎にアプリケーションやデータの内容が一部異なる場合であっても、その機器に適合したアプリケーションやデータを、ダウンロードサーバからクライアント機器に提供することができる。そして、クライアント機器は、アプリケーションやデータを内部に格納する際には、“TargetModel”の違いを考慮せずに、上述した“IDGroup”、“Platform”、“Group”、“Name”の4要素によるディレクトリ作成を行う。
【0153】
そしてクライアント機器は、DRMサーバ20からライセンスを受信したときに、受信したライセンスを内部に格納する。デバイスバインド方式は、コンテンツ鍵を機器固有のデバイス鍵で暗号化するため、クライアント機器の内部に格納されることで、DRMサーバ20が動作を認めた機器だけにコンテンツダウンロードサーバ10からコンテンツを配布し、実行するような制御が行える。
【0154】
以上、図24を用いて本開示の一実施形態にかかる情報処理システム1における、クライアント機器とダウンロードサーバとの間の処理の流れについて説明した。次に、コンテンツ登録者によるコンテンツ登録の流れについて説明する。
【0155】
図25は、本開示の一実施形態にかかる情報処理システム1における、コンテンツ登録者によるコンテンツ登録の流れを示す流れ図である。以下、図25を用いて、本開示の一実施形態にかかる情報処理システム1における、コンテンツ登録者によるコンテンツ登録の流れについて説明する。
【0156】
アプリケーションやデータを制作してダウンロードサーバに登録するコンテンツ登録者は、アプリケーションやデータを開発する。またコンテンツ登録者は、当該アプリケーションやデータに付する、“IDGroup”、“Platform”、“Group”、“Name”の4要素からなるIDを取得する(ステップS221)。
【0157】
続いて、コンテンツ登録者は、作成したアプリケーションやデータに対応する機器リストを作成する。ここで、機器毎にアプリケーションのバイナリが異なったり、データが異なったりする場合は、“TargetModel”要素をIDに追加する(ステップS222)。
【0158】
コンテンツ登録者は、アプリケーションやデータを開発し、IDの管理が完了すると、作成したアプリケーションやデータをIDと共にダウンロードサーバ(コンテンツダウンロードサーバ10を「ダウンロードサーバ」と総称する)にコンテンツ鍵で暗号化して登録する(ステップS223)。この一連の処理により、コンテンツ登録者が開発したアプリケーションやデータが、クライアント機器からダウンロード可能な状態となる。
【0159】
以上、図25を用いて、本開示の一実施形態にかかる情報処理システム1における、コンテンツ登録者によるコンテンツ登録の流れについて説明した。次に、本開示の一実施形態にかかる情報処理システム1における、クライアント機器によるコンテンツ検索および取得処理の流れについて説明する。
【0160】
図26は、本開示の一実施形態にかかる情報処理システム1における、クライアント機器によるコンテンツ検索および取得処理の流れを示す流れ図である。以下、図26を用いて、本開示の一実施形態にかかる情報処理システム1における、ユーザによるコンテンツ検索および取得処理の流れについて説明する。
【0161】
ユーザが、ダウンロードサーバからクライアント機器で使用するアプリケーションやデータを取得する際には、まずユーザはダウンロードサーバへログインし、利用機種名を送信するとともに、アプリケーションやデータを検索する(ステップS231)。当該ログインおよび検索処理は、クライアント機器を用いてもよい。ユーザがダウンロードサーバに送信する利用機種名の情報は、“TargetModel”要素に対応するものである。
【0162】
続いてユーザは、ダウンロードサーバから、利用するクライアント機器で動作するコンテンツリストを取得する(ステップS232)。当該取得処理は、クライアント機器を用いてもよい。
【0163】
ダウンロードサーバから、利用するクライアント機器で動作するコンテンツリストを取得すると、続いてユーザは、ダウンロードサーバへアプリケーションやデータを要求すると共に、DRMサーバ20からライセンスを、コンテンツダウンロードサーバ10からアプリケーションやデータをダウンロードする(ステップS233)。当該要求およびダウンロード処理は、クライアント機器を用いてもよい。
【0164】
続いてユーザは、DRMサーバ20から受信したライセンスをクライアント機器の内部のライセンス格納領域に格納する(ステップS234)。当該格納処理は、クライアント機器によって行われる。
【0165】
続いてユーザは、ダウンロードサーバからダウンロードしたアプリケーションやデータを、“IDGroup”、“Platform”、“Group”、“Name”の4要素に従って、クライアント機器の内部に格納する(ステップS235)。当該格納処理は、クライアント機器によって行われる。
【0166】
以上、図26を用いて、本開示の一実施形態にかかる情報処理システム1における、ユーザによるコンテンツ検索および取得処理の流れについて説明した。次に、本開示の一実施形態にかかる情報処理システム1における、コンテンツダウンロードサーバ10およびDRMサーバ20によるコンテンツ検索および送信処理について説明する。
【0167】
図27は、本開示の一実施形態にかかる情報処理システム1における、コンテンツダウンロードサーバ10およびDRMサーバ20によるコンテンツ検索および送信処理を示す流れ図である。以下、図27を用いて本開示の一実施形態にかかる情報処理システム1における、コンテンツダウンロードサーバ10およびDRMサーバ20によるコンテンツ検索および送信処理について説明する。
【0168】
コンテンツダウンロードサーバ10は、ユーザからのログイン要求があると、当該ユーザのログイン処理を実行する(ステップS241)。ログイン処理が完了し、ユーザから機器を指定したコンテンツ検索要求があると、コンテンツダウンロードサーバ10は、機器マッチングデータベース12を検索し、ユーザが利用する機器に対応するコンテンツ一覧を作成し、ユーザに提示する(ステップS242)。
【0169】
その後、ユーザから、アプリケーションやデータのダウンロード要求が送信されると、ダウンロードサーバは、ユーザのダウンロード要求に応じた、ユーザが利用する機器に対応するアプリケーションやデータを配信し、DRMサーバ20は、当該アプリケーションやデータをクライアント機器で利用するためのライセンスの作成と配信を行なう(ステップS243)。
【0170】
以上、図27を用いて本開示の一実施形態にかかる情報処理システム1における、ダウンロードサーバによるコンテンツ検索および送信処理について説明した。このようにアプリケーションとしては同一であるが、そのアプリケーションが実行されるターゲットの機器に応じて異なるバイナリやデータを用意することで、ダウンロードサーバ側でのアプリケーションやデータの管理を簡略化することが可能となる。そして、アプリケーションやデータをダウンロードするクライアント機器においては、機器の情報をダウンロードサーバに送信するだけで自動的に自機器に適合したアプリケーションやデータをダウンロードサーバから取得することができる。そして、あるユーザが一度購入したコンテンツは、対応機器が異なっても、対応コンテンツが同一であれば、当該対応コンテンツの再ダウンロードを許す管理も可能となる。
【0171】
なお、上述の処理では、アプリケーションやコンテンツデータを選択して、選択したアプリケーションやコンテンツデータのダウンロードをデジタルカメラ100に行わせる実施例について説明したが、本開示はかかる例に限定されない。例えば、パーソナルコンピュータやスマートフォン等に、アプリケーションやコンテンツデータを選択して、選択したアプリケーションやコンテンツデータのダウンロードを行わせるようにして、ダウンロードしたアプリケーションやデータを、パーソナルコンピュータやスマートフォン等からデジタルカメラに転送するようにしてもよい。
【0172】
次に、本開示の一実施形態にかかる情報処理システム1における、クライアント機器によるコンテンツの実行処理について説明する。図28は、本開示の一実施形態にかかる情報処理システム1における、クライアント機器によるコンテンツの実行処理を示す流れ図である。
【0173】
まずクライアント機器は、ライセンス格納領域(クライアント機器がデジタルカメラ100の場合は、ライセンス格納部114)に、実行しようとするコンテンツのライセンスが存在しているかを確認すると共に、ライセンスが存在していれば、そのライセンスが、実行しようとするコンテンツのライセンス条件を満たしているかどうかを確認する(ステップS251)。より具体的には、クライアント機器がデジタルカメラ100の場合は、ライセンス管理部115がライセンス格納部114へのライセンスの存在確認およびライセンス条件の確認を実行する。
【0174】
続いてクライアント機器は、ライセンス格納領域に格納されているライセンスに記述されたユーザ登録機器の確認を行う(ステップS252)。より具体的には、ライセンス格納領域に格納されているライセンスに記述されているユーザ情報と、デジタルカメラ100の内部(例えばメモリ107)に保持されているユーザ情報とが一致することによって、ライセンスに記述されたユーザ登録機器の確認を行う。ライセンス格納領域に格納されているライセンスに記述されたユーザ登録機器の確認を行い、コンテンツが実行できる機器であることが確認できると、続いてクライアント機器は、ライセンス格納領域に格納されているライセンスに含まれるコンテンツ鍵をデバイス鍵で復号する(ステップS253)。
【0175】
ライセンスに含まれるコンテンツ鍵をデバイス鍵で復号すると、クライアント機器は、セキュアな領域において、復号したコンテンツ鍵を用いてコンテンツを復号する(ステップS254)。コンテンツ鍵を用いてコンテンツを復号すると、クライアント機器は、復号したコンテンツを実行する(ステップS255)。
【0176】
このように一連の鍵の復号処理やコンテンツの復号処理を実行することで、クライアント機器は、コンテンツダウンロードサーバ10からダウンロードしたコンテンツを、DRMサーバ20から受信したライセンスを用いて実行することが可能となる。
【0177】
図29は、本開示の一実施形態にかかる情報処理システム1のシステム構成例を示す説明図である。図29に示した情報処理システム1のシステム構成例は、図2に示した構成にパーソナルコンピュータ200が追加されたものである。
【0178】
図29に示したように、パーソナルコンピュータ200は、CPU201と、表示部202と、I/F203と、USB204と、ネットワーク処理部205と、記憶装置部206と、外部記憶装置部207と、フォーマット処理部208と、カメラI/F209と、を含んで構成される。
【0179】
CPU201は、演算処理装置および制御装置として機能し、パーソナルコンピュータ200に格納された各種プログラムに従って、パーソナルコンピュータ200内の動作全般またはその一部を制御する。表示部202は、CRTディスプレイ装置、液晶ディスプレイ装置、プラズマディスプレイ装置、有機ELディスプレイ装置等で構成され、パーソナルコンピュータ200が行った各種処理により得られた結果を、テキストまたはイメージで表示する。
【0180】
I/F203は、パーソナルコンピュータ200に周辺装置を接続するためのインタフェースである。USB204は、パーソナルコンピュータ200と他の装置(例えばデジタルカメラ100)とをUSBケーブルで接続するためのインタフェースである。ネットワーク処理部205は、インターネット30への接続処理を実行する。パーソナルコンピュータ200は、ネットワーク処理部205によるインターネット30への接続処理により、インターネット30に接続されたコンテンツダウンロードサーバ10から、アプリケーションやデータをダウンロードすることができる。
【0181】
外部記憶装置部207は、例えば、HDD(Hard Disk Drive)等の磁気記憶部デバイス、半導体記憶デバイス、光記憶デバイス、または光磁気記憶デバイス等により構成される。この外部記憶装置部207は、CPU201が実行するプログラムや各種データ、および外部から取得した音響信号データや画像信号データなどを格納する。
【0182】
フォーマット処理部208は、フォーマット処理部109と同様に、コンテンツダウンロードサーバ10からダウンロードするアプリケーションやコンテンツデータに付随しているメタデータの内容を解析する。フォーマット処理部208は、メタデータの内容を解析して、コンテンツダウンロードサーバ10からダウンロードしたアプリケーションやコンテンツデータの、ファイル管理部110によるファイル管理を制御する。カメラI/F209は、デジタルカメラ100と接続して情報の授受を行なうためのインタフェースである。
【0183】
このようにデジタルカメラ100とパーソナルコンピュータ200とが構成されている場合には、パーソナルコンピュータ200は、コンテンツに付随しているメタデータの内容を解析して、解析した内容に基づいて、デジタルカメラ100へのアプリケーションやデータの格納を制御することが出来る。
【0184】
<2.まとめ>
以上説明したように、本開示の一実施形態にかかる情報処理システム1は、コンテンツダウンロードサーバ10が提供する著作権管理されたコンテンツを、動作対象の機器に正しく供給することができる。すなわち、コンテンツを実行するデジタルカメラ100は、コンテンツダウンロードサーバ10が提供する著作権管理されたコンテンツを実行するためのライセンスをDRMサーバ20からダウンロードした時に限り、セキュアな領域であるライセンス格納部114に格納する。
【0185】
このようにライセンスの格納タイミングを制御することで、本開示の一実施形態にかかる情報処理システム1は、ユーザ側の面倒な選択や、コンテンツの誤インストール、ローカルコピーやメモリーカードの差し替え等によるコンテンツの誤動作を防止できる。また、本開示の一実施形態にかかる情報処理システム1は、サーバ側で最新のマッチングを統一的に行う事により動作対象を管理することができる。
【0186】
また、本開示の一実施形態にかかる情報処理システム1は、デバイスバインド方式のDRMの、機器指定したコンテンツ保護に加えて、同一ユーザが所有する他の機器で、サービス側が認めればライセンスを新たに発行してコンテンツを共有できる仕組みを追加できる。本開示の一実施形態にかかる情報処理システム1は、ユーザが所有する機器の範囲内での利用拡大はできるが、機器が当該ユーザの手を離れ別ユーザのものとサーバが認識した時点で、その機器におけるコンテンツの実行を出来なくさせる制御を実現できる。
【0187】
また、本開示の一実施形態にかかる情報処理システム1は、アプリケーションのバイナリ違い等、対象コンテンツが機器により異なる場合であっても、対応バイナリをサーバ側で自動的に選択して、クライアント機器に提供する事が可能である。
【0188】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示はかかる例に限定されない。本開示の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【0189】
また例えば、同一のコンテンツであるが機器により動作対象が異なる場合、ユーザが登録している機器間であれば、対象機器用の別ライセンスと別コンテンツをコピーの代わりにサーバからクライアント機器に配布することにより、動作対象の異なる機器間での共通利用を可能とするようにしても良い。
【0190】
また例えば、ライセンス管理部115は、デジタルカメラ100の内部(例えばメモリ107)に保持されているユーザ情報を削除できるようにしてもよい。デジタルカメラ100が、あるユーザから別のユーザに譲渡された際には、デジタルカメラ100の内部に保持されたユーザ情報を、例えば、元のユーザが指示したタイミングや、コンテンツダウンロードサーバ10に接続したタイミングで、ライセンス管理部115が削除することで、デジタルカメラ100に格納されたコンテンツの、上記別のユーザによる実行を防ぐことができる。
【0191】
なお、本技術は以下のような構成も取ることができる。
(1)
機器単位でコンテンツを管理するためのライセンス情報を保持するライセンス情報保持部と、
前記ライセンス情報保持部に保持されている前記ライセンス情報に含まれるユーザ情報と、自装置に格納される該自装置のユーザ情報とを比較するライセンス管理部と、
前記ライセンス管理部によって、前記ライセンス情報に含まれるユーザ情報と、自装置のユーザ情報とが一致されたと判断された場合に限り、前記ライセンス情報に含まれるデバイス鍵で該ライセンス情報に対応するコンテンツを復号して実行する実行制御部と、
を備える、情報処理装置。
(2)
前記ライセンス管理部は、自装置に格納される該自装置のユーザ情報を消去することが可能なように構成される、前記(1)に記載の情報処理装置。
(3)
前記コンテンツを外部から取得した際に該コンテンツの格納を制御するコンテンツ格納部をさらに備える、前記(1)または(2)に記載の情報処理装置。
(4)
前記コンテンツに付随して送信されるメタデータを解析するメタデータ解析部をさらに備える、前記(3)に記載の情報処理装置。
(5)
前記コンテンツ格納部は、前記メタデータ解析部の解析により、前記コンテンツに付随して送信されるメタデータの所定の要素の内容に応じて、前記コンテンツの格納に際してディレクトリ構造を変化させる、前記(4)に記載の情報処理装置。
(6)
機器単位でコンテンツを管理するためのライセンス情報を保持するライセンス情報保持ステップと、
前記ライセンス情報保持ステップで保持された前記ライセンス情報に含まれるユーザ情報と、自装置に格納される該自装置のユーザ情報とを比較するライセンス管理ステップと、
前記ライセンス管理ステップによって、前記ライセンス情報に含まれるユーザ情報と、自装置のユーザ情報とが一致されたと判断された場合に限り、前記ライセンス情報に含まれるデバイス鍵で該ライセンス情報に対応するコンテンツを復号して実行する実行制御ステップと、
を備える、情報処理方法。
(7)
コンピュータに、
機器単位でコンテンツを管理するためのライセンス情報を保持するライセンス情報保持ステップと、
前記ライセンス情報保持ステップで保持された前記ライセンス情報に含まれるユーザ情報と、自装置に格納される該自装置のユーザ情報とを比較するライセンス管理ステップと、
前記ライセンス管理ステップによって、前記ライセンス情報に含まれるユーザ情報と、自装置のユーザ情報とが一致されたと判断された場合に限り、前記ライセンス情報に含まれるデバイス鍵で該ライセンス情報に対応するコンテンツを復号して実行する実行制御ステップと、
を実行させる、コンピュータプログラム。
【符号の説明】
【0192】
1 情報処理システム
10 コンテンツダウンロードサーバ
20 DRMサーバ
100 デジタルカメラ
101 撮像部
102 カメラ制御部
103 画像処理部
104 画像管理部
105 I/F
106 表示部
107 メモリ
108 外部記憶装置部
109 フォーマット処理部
110 ファイル管理部
111 アプリケーション実行制御部
112 USB
113 ネットワーク処理部
114 ライセンス格納部
115 ライセンス管理部
116 DRM処理部
【特許請求の範囲】
【請求項1】
機器単位でコンテンツを管理するためのライセンス情報を保持するライセンス情報保持部と、
前記ライセンス情報保持部に保持されている前記ライセンス情報に含まれるユーザ情報と、自装置に格納される該自装置のユーザ情報とを比較するライセンス管理部と、
前記ライセンス管理部によって、前記ライセンス情報に含まれるユーザ情報と、自装置のユーザ情報とが一致されたと判断された場合に限り、前記ライセンス情報に含まれるデバイス鍵で該ライセンス情報に対応するコンテンツを復号して実行する実行制御部と、
を備える、情報処理装置。
【請求項2】
前記ライセンス管理部は、自装置に格納される該自装置のユーザ情報を消去することが可能なように構成される、請求項1に記載の情報処理装置。
【請求項3】
前記コンテンツを外部から取得した際に該コンテンツの格納を制御するコンテンツ格納部をさらに備える、請求項1に記載の情報処理装置。
【請求項4】
前記コンテンツに付随して送信されるメタデータを解析するメタデータ解析部をさらに備える、請求項3に記載の情報処理装置。
【請求項5】
前記コンテンツ格納部は、前記メタデータ解析部の解析により、前記コンテンツに付随して送信されるメタデータの所定の要素の内容に応じて、前記コンテンツの格納に際してディレクトリ構造を変化させる、請求項4に記載の情報処理装置。
【請求項6】
機器単位でコンテンツを管理するためのライセンス情報を保持するライセンス情報保持ステップと、
前記ライセンス情報保持ステップで保持された前記ライセンス情報に含まれるユーザ情報と、自装置に格納される該自装置のユーザ情報とを比較するライセンス管理ステップと、
前記ライセンス管理ステップによって、前記ライセンス情報に含まれるユーザ情報と、自装置のユーザ情報とが一致されたと判断された場合に限り、前記ライセンス情報に含まれるデバイス鍵で該ライセンス情報に対応するコンテンツを復号して実行する実行制御ステップと、
を備える、情報処理方法。
【請求項7】
コンピュータに、
機器単位でコンテンツを管理するためのライセンス情報を保持するライセンス情報保持ステップと、
前記ライセンス情報保持ステップで保持された前記ライセンス情報に含まれるユーザ情報と、自装置に格納される該自装置のユーザ情報とを比較するライセンス管理ステップと、
前記ライセンス管理ステップによって、前記ライセンス情報に含まれるユーザ情報と、自装置のユーザ情報とが一致されたと判断された場合に限り、前記ライセンス情報に含まれるデバイス鍵で該ライセンス情報に対応するコンテンツを復号して実行する実行制御ステップと、
を実行させる、コンピュータプログラム。
【請求項1】
機器単位でコンテンツを管理するためのライセンス情報を保持するライセンス情報保持部と、
前記ライセンス情報保持部に保持されている前記ライセンス情報に含まれるユーザ情報と、自装置に格納される該自装置のユーザ情報とを比較するライセンス管理部と、
前記ライセンス管理部によって、前記ライセンス情報に含まれるユーザ情報と、自装置のユーザ情報とが一致されたと判断された場合に限り、前記ライセンス情報に含まれるデバイス鍵で該ライセンス情報に対応するコンテンツを復号して実行する実行制御部と、
を備える、情報処理装置。
【請求項2】
前記ライセンス管理部は、自装置に格納される該自装置のユーザ情報を消去することが可能なように構成される、請求項1に記載の情報処理装置。
【請求項3】
前記コンテンツを外部から取得した際に該コンテンツの格納を制御するコンテンツ格納部をさらに備える、請求項1に記載の情報処理装置。
【請求項4】
前記コンテンツに付随して送信されるメタデータを解析するメタデータ解析部をさらに備える、請求項3に記載の情報処理装置。
【請求項5】
前記コンテンツ格納部は、前記メタデータ解析部の解析により、前記コンテンツに付随して送信されるメタデータの所定の要素の内容に応じて、前記コンテンツの格納に際してディレクトリ構造を変化させる、請求項4に記載の情報処理装置。
【請求項6】
機器単位でコンテンツを管理するためのライセンス情報を保持するライセンス情報保持ステップと、
前記ライセンス情報保持ステップで保持された前記ライセンス情報に含まれるユーザ情報と、自装置に格納される該自装置のユーザ情報とを比較するライセンス管理ステップと、
前記ライセンス管理ステップによって、前記ライセンス情報に含まれるユーザ情報と、自装置のユーザ情報とが一致されたと判断された場合に限り、前記ライセンス情報に含まれるデバイス鍵で該ライセンス情報に対応するコンテンツを復号して実行する実行制御ステップと、
を備える、情報処理方法。
【請求項7】
コンピュータに、
機器単位でコンテンツを管理するためのライセンス情報を保持するライセンス情報保持ステップと、
前記ライセンス情報保持ステップで保持された前記ライセンス情報に含まれるユーザ情報と、自装置に格納される該自装置のユーザ情報とを比較するライセンス管理ステップと、
前記ライセンス管理ステップによって、前記ライセンス情報に含まれるユーザ情報と、自装置のユーザ情報とが一致されたと判断された場合に限り、前記ライセンス情報に含まれるデバイス鍵で該ライセンス情報に対応するコンテンツを復号して実行する実行制御ステップと、
を実行させる、コンピュータプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【公開番号】特開2013−88845(P2013−88845A)
【公開日】平成25年5月13日(2013.5.13)
【国際特許分類】
【出願番号】特願2011−225642(P2011−225642)
【出願日】平成23年10月13日(2011.10.13)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】
【公開日】平成25年5月13日(2013.5.13)
【国際特許分類】
【出願日】平成23年10月13日(2011.10.13)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】
[ Back to top ]