ライセンス管理のためのプログラム、システム及び方法
【課題】コンテンツのライセンスが使用された時に、そのライセンスの関連ライセンスの利用条件を変更できるようにする。
【解決手段】発行側システム(100,200)は、コンテンツについてのライセンスを発行する場合に、そのライセンスに応じて利用条件を変更すべき関連ライセンスがあるか否かを判定し、関連ライセンスがある場合、利用側システム(300)内にその関連ライセンスが存在すればその関連ライセンスの利用条件を変更する旨の変更指示を含むライセンスを発行し、利用側システム(300)は、コンテンツの利用が指示された際に、そのコンテンツについてのライセンスに関連ライセンスの利用条件の変更指示が含まれる場合は、利用側システム(300)内にその関連ライセンスが保持されていればその関連ライセンスの利用条件をその変更指示に応じて変更する。
【解決手段】発行側システム(100,200)は、コンテンツについてのライセンスを発行する場合に、そのライセンスに応じて利用条件を変更すべき関連ライセンスがあるか否かを判定し、関連ライセンスがある場合、利用側システム(300)内にその関連ライセンスが存在すればその関連ライセンスの利用条件を変更する旨の変更指示を含むライセンスを発行し、利用側システム(300)は、コンテンツの利用が指示された際に、そのコンテンツについてのライセンスに関連ライセンスの利用条件の変更指示が含まれる場合は、利用側システム(300)内にその関連ライセンスが保持されていればその関連ライセンスの利用条件をその変更指示に応じて変更する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンテンツの利用のための電子的なライセンスの管理に関する。
【背景技術】
【0002】
電子化されたコンテンツ(文書、動画、音声、プログラムなどのソフトウエア一般)を利用する時に正しい権利があるかどうかをチェックし、正しい権利を持つ場合にのみユーザに利用させるように制御する技術は、DRM(Digital Rights Management:デジタル権利管理)技術と呼ばれる。DRMシステムの具体例として、アクセスチケットシステム(特許文献1参照)や、Microsoft社のWRMS(Windows(登録商標) Rights Management System)などが知られている。
【0003】
DRM技術には大きく分けて、オンラインタイプとオフラインタイプがある。オンラインタイプのシステムでは、コンテンツの権利認証が必要となった時にユーザ端末(PCなど)からオンラインでサーバに利用権についての問い合わせを行う。オフラインタイプのシステムでは、あらかじめ権利認証を行ってコンテンツの利用権、すなわちライセンスをユーザ端末に対して発行しておき、コンテンツ利用時にはユーザ端末内のライセンスを参照してコンテンツ利用を許可するようにしている。
【0004】
例えば、オフラインタイプのDRMをソフトウエアのダウンロード販売に適用した場合、購入の決済処理が成功した時にサーバでライセンスを生成して端末に発行し、以降は、ライセンスはユーザが使用する端末で管理され、ライセンスの有効期限が到来する、あるいは、利用回数が尽きるまで(無期限の場合は永遠に)使い続けることが可能になる。
【0005】
ところが、実際にはライセンスに対しては、買戻し・譲渡・端末の乗り換え(他の端末へのライセンスの移動)、などの要求がある。ライセンスの買戻し、譲渡、端末の乗り換えを実現するには、端末からライセンスを削除するか、或いはそのライセンスを無効化する必要がある。例えば、特許文献2のシステムでは、無効化・譲渡・分割などのコマンドが用意され、それぞれのコマンドの処理の過程で、対象となるライセンス(チケット)が無効化される。
【0006】
また、特許文献3のシステムでは、無効化の対象となるのはライセンスではなく、ICカード内のアプリケーションそのものであるが、無効化コマンドにより出力されたデータによって後から、対象のアプリケーションが確実に無効化されたことを確認できる方法を提供している。
【0007】
一方、ソフトウエアの販売形態には、乗り換えライセンス、あるいはアップグレードライセンスという販売形態がある。乗り換えライセンスとは、競合する他社製品のライセンスを保有することを前提に通常より安い価格で販売されるライセンス形態である。アップグレードライセンスとは、以前のバージョンのソフトウエアを保有することを前提に、バージョンアップしたソフトウエアを通常より安い価格で販売されるというものである。
【0008】
いずれの場合も、新規に取得したライセンスの利用を始めたら、乗り換え対象あるいはアップグレード対象のソフトウエアの利用は停止(禁止)したいという要求がある。
【0009】
このような要求に対応しようとした場合、従来の方法では、ライセンス購入ページを表示し、ライセンス購入すると、その際に同時に対象となる古いライセンスを無効化するという処理を行うことになる。
【0010】
しかし、この従来の方法では、ライセンスを購入した瞬間に古いライセンスが無効化されることになるため、予めライセンスのみを購入しておき、必要になったときにソフトウエアを乗り換えるというような利用ができない。
【0011】
また従来の方法では、クライアント上の既存ライセンスが無効化されたことをサーバが確認した後、サーバからユーザ端末にアップグレードライセンスなどを提供するので、サーバとクライアントとの間での情報のやり取りが煩雑になり、サーバに大きな負担がかかることになる。
【0012】
【特許文献1】特開平11−031105号公報
【特許文献2】特開2004−032220号公報
【特許文献3】特開2003−271462号公報
【発明の開示】
【発明が解決しようとする課題】
【0013】
本発明は、1つの側面では、乗り換えライセンスやアップグレードライセンスなどの利用の柔軟性を高める。また別の側面では、本発明は、使用すると他のライセンスに影響を与えるライセンスを導入して多様なライセンスサービスを提供可能にする。
【課題を解決するための手段】
【0014】
本発明の1つの側面では、コンテンツについてのライセンスを発行する発行側システムと、ライセンスを用いてコンテンツを利用する利用側システムと、を含むライセンス管理システムであって、発行側システムは、コンテンツについてのライセンスを発行する場合に、そのライセンスに応じて利用条件を変更すべき関連ライセンスがあるか否かを判定する判定部と、関連ライセンスがあると判定部が判定した場合、利用側システム内にその関連ライセンスが存在すればその関連ライセンスの利用条件を変更する旨の変更指示を含むライセンスを発行する発行処理部と、を備え、利用側システムは、発行側システムから発行されたコンテンツのライセンスを保持するライセンス保持部と、コンテンツの利用が指示された際に、そのコンテンツについての有効なライセンスがライセンス保持部に存在する場合にはそのコンテンツの利用を可能とするための処理を行うライセンス処理部と、コンテンツの利用が指示された際に、そのコンテンツについてのライセンスに関連ライセンスの利用条件の変更指示が含まれる場合は、ライセンス保持部にその関連ライセンスが保持されていればその関連ライセンスの利用条件をその変更指示に応じて変更する変更処理部と、を備える、ライセンス管理システムが提供される。
【0015】
本発明の別の側面では、コンテンツについてのライセンスを発行する発行側システムと、ライセンスを用いてコンテンツを利用する利用側システムと、を含むライセンス管理システムであって、発行側システムは、コンテンツについてのライセンスを発行する場合に、そのライセンスの利用条件に影響を与える関連ライセンスがあるか否かを判定する判定部と、関連ライセンスがあると判定部が判定した場合、利用側システム内にその関連ライセンスが存在すればそのコンテンツについてのライセンス自身の利用条件を変更する旨の変更指示を含むライセンスを発行する発行処理部と、を備え、利用側システムは、発行側システムから発行されたコンテンツについてのライセンスを保持するライセンス保持部と、コンテンツの利用が指示された際に、そのコンテンツについての有効なライセンスがライセンス保持部に存在する場合にはそのコンテンツの利用を可能とするための処理を行うライセンス処理部と、コンテンツの利用が指示された際に、そのコンテンツについてのライセンスに、該コンピュータに関連ライセンスが存在すればそのコンテンツについてのライセンス自身の利用条件を変更する旨の変更指示が含まれる場合は、ライセンス保持部にその関連ライセンスが保持されていればそのコンテンツについてのライセンス自身の利用条件をその変更指示に応じて変更する変更処理部と、を備える、ライセンス管理システムが提供される。
【発明を実施するための最良の形態】
【0016】
以下、図面を参照して、本発明の実施の形態について説明する。以下では、特許文献1に示されるアクセスチケット方式のDRMシステムをベースにしたシステムについて説明する。ただし、当業者なら理解できるように、本実施形態のシステムは、アクセスチケット方式に限らず、様々なDRMシステムに適用可能である。また、以下では、ソフトウエアコンテンツを販売するシステムにおいて、バージョンアップ(アップグレード)ライセンスを販売する場合を例にとって、本実施形態のシステムの構成及び動作を説明する。しかし、これは実施例の一つにすぎない。当業者ならば理解できるように、社内文書に対する各ユーザのアクセスを許可するか禁止するかの制御など、コンテンツに対するユーザの利用権を管理する様々なアプリケーションシステムに、本実施形態のシステムは適用可能である。
【0017】
アクセスチケット方式では、アクセスチケット(以下単に「チケット」と呼ぶ)と呼ばれる電子データが、コンテンツの利用権を意味するライセンスを表現している。チケットには、対象となるコンテンツの識別情報(具体例としては、後述する鍵ID)と、そのコンテンツの利用条件(例えば、閲覧可能、編集可能、実行可能などといった利用態様、又は有効期間や有効期限、利用可能回数の上限、課金単価など)の情報が含まれる。なお、チケットとライセンスは基本的に同じ概念のもの(データ)を示すものとする。
【0018】
まず、バージョンアップライセンスの販売を従来方式で実現した場合の全体システムの構成と処理の流れを図1に示す。このシステムは、主として、チケットを生成して発行するチケット発行サーバ100、コンテンツを販売するコンテンツ提供サーバ200、及びコンテンツを購入するユーザが利用するクライアントPC(パーソナルコンピュータ)300からなる。
【0019】
コンテンツ提供サーバ200は、例えばウェブサーバとして構成されており、カプセル化(暗号化などで保護)されたコンテンツ(ソフトウエア)を保持している。
【0020】
コンテンツのカプセル化は、専用のカプセル化ツールを用いて事前に行われているものとする。カプセル化ツールには、様々な公知のものが存在しており、それらを利用すればよい。参考までにカプセル化の手順の一例を示すと次のようになる。すなわち、(a)まずチケット発行サーバ100からコンテンツの暗号化用の公開鍵を取得する。この鍵にはIDが付与されているので、この鍵IDによって、カプセル化されたコンテンツが識別できる。(b)次にカプセル化ツールで対象となるコンテンツを暗号化する。暗号化処理では、コンテンツを暗号化するコンテンツ暗号鍵を生成し、この鍵でコンテンツ本体を暗号化し、さらにそのコンテンツ暗号鍵をサーバから発行された公開鍵で暗号化する。暗号化されたコンテンツ鍵は暗号化されたコンテンツ本体に結合される。また、どのコンテンツがどの鍵IDの暗号鍵でカプセル化されたかという情報は別途データベース(図示省略)で管理される。このデータベースは、チケット発行サーバ100又はコンテンツ提供サーバ200からアクセス可能な場所(例えばチケット発行サーバ100内、又はそれらサーバ100及び200が接続されたネットワーク上)にあればよい。
【0021】
ユーザは、クライアントPC300からコンテンツ提供サーバ200にアクセスし、カプセル化されたコンテンツを自由にダウンロードできる。但し、カプセル化されたコンテンツは、暗号化等により保護されているので、ユーザはそれを利用するにはチケットを購入する必要がある。
【0022】
ここで、具体例としてコンテンツ提供サーバ200で、あるソフトウエア商品Aのライセンスが販売されているとする。ソフトウエア商品Aの最新のバージョンは2.0であり、バージョン1.0の製品をバージョン2.0にアップグレードするためのバージョンアップライセンスも用意されているとする。そして、バージョン1.0のソフトウエアは鍵ID"1001"の鍵で暗号化されており、また、バージョン2.0のソフトウエアは鍵ID"1002"の鍵で暗号化されているものとする。
【0023】
従来方式において、バージョン1.0のライセンスを既に持っているユーザが、バージョン2.0のバージョンライセンスを購入する際の処理の流れを、図1を参照して説明する。以下に示す番号(1)〜(7)は、図1に示した番号に対応する。
【0024】
(1)まず、ユーザがクライアントPC300のブラウザで、コンテンツ提供サーバ200にアクセスし、ソフトウエア商品Aの最新版(バージョン2.0)のアップグレードライセンスを購入対象として指示する。
【0025】
(2)コンテンツ提供サーバ200は、クライアントPC300に問合せを行い、ユーザが、そのソフトウエア商品Aの過去のバージョン(例えばバージョン1.0)を保有しているかどうかをチェックする。そして、保有していれば、その過去バージョンを無効化するための指示をクライアントPC300に送信する。ユーザが過去バージョンを持っていなければ、サーバ200はクライアントPC300にエラーの旨を通知し、アップグレードライセンス購入のためのセッションを中止する。
【0026】
(3)クライアントPC300は、処理結果をサーバに返す。ここでは、クライアントPC300に過去バージョンが存在し、その過去バージョンが公知の無効化処理により無効化されたものとする。無効化成功の通知を受けたサーバ200は、ソフトウエア商品Aのバージョン2.0のカプセルをクライアントPC300にダウンロードする。
【0027】
(4)カプセルがダウンロードできると、ユーザは、バージョン2.0のライセンスの購入手続きをする。例えば、サーバ200が決済用のウェブページをクライアントPC300に送り、ユーザがそのページに対してクレジットカード番号等の必要事項を入力してサーバ200に送り返す。そして、サーバ200が、ユーザから送られてきた情報に基づき、その購入についての決済を行う(決済の仕組みは何でもよい)。
【0028】
(5)決済が済んだら、コンテンツ提供サーバ200は、クライアントPC300用のチケットの発行をチケット発行サーバ100に依頼する。その際、クライアントPC300のトークンIDを取得し、トークンID、バージョン2.0のカプセルの鍵ID(1002) を指定して、チケット発行を依頼する。
【0029】
ここで、「トークン」とは各クライアントPC毎に割り当てられた個別の鍵情報を管理し、認証処理を行うための耐タンパー化されたハードウエアもしくはソフトウエアのことである。クライアントPC300には、事前にこのトークンが取り付けられているか或いはインストールされているものとする。
【0030】
(6)チケット発行サーバ100は、依頼された条件に従ってバージョン2.0用のチケットを生成し、送り返す。
【0031】
(7)コンテンツ提供サーバ200は、チケット発行サーバ100からチケットを受け取り、これをクライアントPC300に送付する。
【0032】
アクセスチケット方式の場合、クライアントPC300は、このチケットに含まれる情報とトークンに含まれる個別鍵情報とを組み合わせた情報を用いることで、コンテンツの利用時に、クライアントPC300のメモリ上で、カプセル化されたコンテンツに対応するコンテンツ暗号鍵を復号し、復号したコンテンツ暗号鍵を用いてカプセル化コンテンツを復号し、ユーザが利用する。なお、チケット発行サーバ100には、クライアントPC300のトークンIDと個別鍵情報があらかじめ登録されている。チケット発行サーバ100は、これらの情報を用いることで、クライアントPC300のトークンに対応した適切なチケットを発行する。
【0033】
以上、従来方式の処理の流れを説明した。次に、図2を参照して、本実施形態での処理の流れを説明する。
【0034】
(1)まず、ユーザがクライアントPC300のブラウザで、コンテンツ提供サーバ200にアクセスし、ソフトウエア商品Aの最新版(バージョン2.0)のアップグレードライセンスを購入対象として指示する。
【0035】
従来方式では、この後サーバ200がクライアントPC300に過去バージョンが存在するか否かを確認したが、本実施形態ではその処理は必要ない。
【0036】
サーバ200は、過去バージョンの存在の如何によらず、クライアントPC300に対しソフトウエア商品Aのバージョン2.0のカプセルを提供する。
【0037】
(2)カプセルがダウンロードできると、ユーザは、バージョン2.0のライセンスの購入手続きをし、サーバ200はその手続きにおいてユーザが入力した情報に基づき、決済を行う(決済の仕組みは何でもよい)。
【0038】
(3)決済が済んだら、コンテンツ提供サーバ200は、クライアントPC300用のチケットの発行をチケット発行サーバ100に依頼する。その際、コンテンツ提供サーバ200は、クライアントPC300のトークンIDを取得し、トークンID、バージョン2.0のカプセルの鍵ID(1002)をチケット発行サーバ100に伝える。また、本実施形態では、コンテンツ提供サーバ200は、このチケット発行依頼において、依頼対象のチケットの使用条件として、「バージョン1.0のカプセルの鍵ID(1001)のチケットが存在していること」、かつ、「当該チケット(鍵ID(1002))を利用する時に鍵ID(1001)のチケットを無効化すること」という条件をチケット発行サーバ100に対して指定する。
【0039】
(4)チケット発行サーバ100は、コンテンツ提供サーバ200から指定された使用条件の情報を含んだバージョン2.0用のアップグレードチケットを生成し、クライアントPC300に送り返す。
【0040】
(5)コンテンツ提供サーバ200は、チケット発行サーバ100からチケットを受け取り、クライアントPC300に送付する。
【0041】
以上の手順で、ユーザはアップグレード用のチケットを手に入れることになる。クライアントPC300は、ソフトウエア商品Aのバージョン2.0の使用がユーザから指示された時点で、トークンに対してバージョン2.0に対応するアップグレード用チケットを用いてカプセルを利用することを指示する。ここで、そのチケットには使用条件として「バージョン1.0のカプセルの鍵ID(1001)のチケットが存在していること」、かつ、「当該チケット(鍵ID(1002))を利用する時に鍵ID(1001)のチケットを無効化すること」という条件が記述されている。したがって、トークンは、まず鍵ID(1001)のチケットがそのトークン内に存在するかどうかを確認し、存在しなければ、そのアップグレード用チケット(鍵ID(1002))の使用を禁止する(すなわち復号のための鍵の提供を行わない)。したがって、この場合、ユーザは、ソフトウエア商品Aのバージョン2.0を利用できない。一方、鍵ID(1001)のチケットがそのトークン内に存在すれば、トークンは、そのチケット(鍵ID(1001))を無効化したのち、アップグレード用チケット(鍵ID(1002))を用いてバージョン2.0用の復号鍵を生成し、バージョン2.0のカプセルを利用できるようにする。
【0042】
従来方式では、アップグレード用のチケットをクライアントPC300に提供する時点で、コンテンツ提供サーバ200がクライアントPC300に過去バージョン用のチケットが存在するか否かを確認していた。これに対し、本実施形態では、クライアントPC300内のトークンが、アップグレード用のチケットを使用する際に、過去バージョンが存在するか否かを判定し、存在しなければアップグレード用のチケットを使用できないようにしている。したがって、本実施形態では、アップグレード用チケットの提供時にサーバ200がクライアントPC300に過去バージョンのチケットが存在するか否かを確認しなくてよいので、サーバ200の負荷を低減することができる。
【0043】
また、従来方式では、アップグレード用チケットの提供の時点で過去バージョンのチケットが無効化されていたので、その時点で過去バージョンは使用できなくなり、最新バージョンを使用するしかない。しかし、ユーザによっては、アップグレード用チケットの購入のみを先に行っておき、最新バージョンを使用する必要が生じるまでは過去バージョンを引き続き使用したい場合もある。本実施形態の方式は、このような要求に応えることができる。すなわち、本実施形態では、最新バージョンのソフトウエア商品Aの使用が指示されるまでは、過去バージョン用のチケットは無効化されないので、引き続き過去バージョンは利用できる。そして、最新バージョンの使用が一度指示されると、アップグレード用チケットに示された使用条件に応じてトークンが過去バージョン用のチケットを無効化するので、過去バージョン用と最新バージョン用のチケットが併存することも防止できる。
【0044】
以上に説明した実施形態のシステムを構成するコンテンツ提供サーバ200及びクライアントPC300の詳細について、以下に説明する。まず図3及び図4を参照して、コンテンツ提供サーバ200の構成及び処理手順のいい例を説明する。
【0045】
図3に示すように、コンテンツ提供サーバ200は、制御部210、決済処理部220及びライセンス対応情報保持部230を備える。
【0046】
このうち、制御部210は、クライアントPC300に対するサービスの全体的な制御を行う。例えば、制御部210は、クライアントPC300からの要求に応じ、ダウンロード対象のコンテンツを指定するためのウェブページを提供し、そのウェブページに対してユーザが選択したコンテンツを提供する。また、コンテンツ提供のために決済が必要な場合は、制御部210は、決済用の必要事項を入力するためのウェブページをユーザに提供し、それに対するユーザの入力情報を決済処理部220に渡して決済を行わせる。決済処理部220は、従来公知の方式で、コンテンツ購入代金の決済を行う。
【0047】
また、制御部210は、そのコンテンツに対するチケットをユーザに提供するために必要な処理を実行する。このチケット提供の処理の際、制御部210は、ユーザが要求したコンテンツのライセンスに対して、関連ライセンスがあるかどうかをライセンス対応情報保持部230を参照して判定する。関連ライセンスは、この場合、対象となるライセンスを使用する際に無効化すべきライセンスであり、より具体的には過去バージョン用のライセンス(チケット)である。ライセンス対応情報保持部230は、ライセンスの鍵ID(これはそのライセンス(チケット)により利用可能となるコンテンツを示す)と、そのライセンスを使用する際に無効化すべき関連ライセンスの鍵ID(「関連鍵ID」)とのペアを示している。ライセンス対応情報保持部230には、1つのライセンスの鍵IDに対応して、2以上の関連鍵IDが登録される場合もある。制御部210は、ユーザから要求されたコンテンツに対応するライセンスの鍵IDに対応する関連鍵IDがライセンス対応情報保持部230に存在するかどうかを調べ、存在する場合には、関連鍵IDに対応するライセンス(チケット)の無効化を使用条件とするチケットの発行をチケット発行サーバ100に依頼する。
【0048】
このようなコンテンツ提供サーバ200の処理手順の一例を図4に示す。この手順では、まずサーバ200は、クライアントPC300からコンテンツのダウンロード要求を受け取り(S1)、要求されたコンテンツのカプセルをクライアントPC300に提供すると共に、そのコンテンツの代金の決済処理を実行する(S2)。決済が失敗した場合は、以降の処理には進まず、エラー処理を実行するが、これについては図示を省略した。決済が成功した場合、サーバ200は、そのコンテンツを利用するためのライセンスに関連ライセンスがあるかどうかを、ライセンス対応情報保持部230を参照して調べる(S3)。関連ライセンスがなければ、サーバ200は、そのコンテンツに対応する鍵IDとクライアントPC300のトークンIDをチケット発行サーバ100に送り、そのコンテンツに対するチケットの発行を依頼する(S4)。この依頼では、関連ライセンスの無効化等の使用条件の指定は行われないので、チケット発行サーバ100は、従来と同様のチケットを発行する。
【0049】
ステップS3で関連ライセンスありと判定された場合、サーバ200は、「関連ライセンスに対応する鍵IDのチケットをトークンが保持していること」、及び「当該チケットを使用する際には、関連ライセンスに対応する鍵IDのチケットを無効化すること」を使用条件に指定して、チケット発行サーバ100に当該コンテンツに対応するチケットの発行を依頼する(S5)。ここで、関連ライセンスが複数ある場合には、この使用条件には、それら各関連ライセンスに対応する各鍵IDが列挙される。この依頼を受けたチケット発行サーバ100は、その使用条件の情報を含んだチケットを発行する。
【0050】
サーバ200は、チケット発行サーバ100が発行したチケットを受け取り、クライアントPC300に転送する(S6)。
【0051】
以上、コンテンツ提供サーバ200について説明した。次にクライアントPC300の構成及び処理手順について説明する。
【0052】
図5に示すように、クライアントPC300は、アプリケーション本体310とライセンス管理部320(トークン)とを有する。アプリケーション本体310は、コンテンツ提供サーバ200からダウンロードされたカプセルであり、制御プログラム312,暗号化されたプログラム本体314,鍵ID316及び暗号化されたコンテンツ鍵318を有する。制御プログラム312は、このアプリケーション本体310の起動が指示された時に実行され、暗号化されたプログラム本体314の復号のための処理を実行する。暗号化されたプログラム本体314は、このアプリケーション本体310がユーザに提供する処理を実行する部分であり、コンテンツ鍵により暗号化されている。暗号化されたコンテンツ鍵318は、暗号化されたプログラム本体314を復号するためのコンテンツ鍵を暗号化したものであり、鍵ID316は、そのコンテンツ鍵を暗号化した公開鍵を特定するIDである。
【0053】
ライセンス管理部(トークン)320は、クライアントPC300にインストールされた各カプセルのチケット(ライセンス)を管理する機能モジュールである。このモジュールは、耐タンパー化されたソフトウエア又はハードウエアとして実装される。ライセンス管理部320は、制御部322,ライセンス保持部324,無効化情報保持部326及び鍵保持部328を備える。ライセンス保持部324は、各カプセルを利用するためのチケット(ライセンス)のデータを保持する。ライセンス保持部324が保持する各チケットは、鍵IDにより検索可能となっている。図5には、1つのカプセル(すなわちアプリケーション本体310)しか示していないが、クライアントPC300内には、ライセンス管理部320が管理するカプセルを複数インストールすることができる。無効化情報保持部326は、無効化されたチケットを特定する情報を保持する。鍵保持部328は、当該ライセンス管理部320に固有の個別鍵を保持する。制御部322は、カプセルの利用の可否を判定し、その判定結果に応じた処理を行う。
【0054】
次に、図6を参照して、アプリケーション本体310(カプセル)の起動がユーザから指示された場合にクライアントPC300が実行する処理手順を説明する。この例では、アプリケーション本体310は、上述のソフトウエア商品Aのバージョン2.0(アップグレード版:鍵ID(1002))であり、そのソフトウエア商品Aには過去のバージョン1.0(鍵ID(1001))が存在しているものとする。
【0055】
まず、バージョン2.0のアップグレード版ソフトウエア(アプリケーション本体310)の起動が指示されると(S11)、制御プログラム312が実行される。すると、制御プログラム312は、暗号化されたコンテンツ鍵318と鍵ID316をライセンス管理部320に渡し、ライセンス認証を依頼する。この依頼を受けたライセンス管理部320の制御部322は、指定された鍵ID316に対応するチケットをライセンス保持部324から検索する(S12)。鍵IDに対応するチケットがライセンス保持部324に無ければ、制御部322は、エラーの旨の回答をアプリケーション本体310に返す。この場合、アプリケーション本体310のカプセルは復号できず、制御プログラム312はエラー処理を行って終了する。鍵ID316に対応するチケットが検索できた場合は、そのチケットに示された利用条件(例えば利用回数の上限や有効期限)を求め、その利用条件が満足されているかをチェックする(S12)。現在時刻が有効期限より後であれば利用条件は不成立となる。また、当該アプリケーション本体310の利用回数(これはアプリケーション本体310が起動されるたび、ライセンス管理部320が数え上げている)が、利用回数の上限を超える場合には、利用条件は不成立となる。利用条件が不成立の場合も、制御部322はエラーの旨の回答をアプリケーション本体310に返し、アプリケーション本体310はエラー処理を行って終了する。このような利用条件のチェックとそれに伴う制御は公知技術なので、これ以上の説明は省略する。図示例では、鍵ID316に対応するチケットが見つかり、利用条件も満足されたものとしている。
【0056】
この場合、制御部322は、更に無効化情報保持部326にその鍵ID316が登録されているかどうかを調べる(S13)。登録されていれば、その鍵ID316に対応するチケットは既に無効となっているので、エラーの旨をアプリケーション本体310に回答し(S13)、アプリケーション本体310はそれに応じてエラー処理を行って終了する。なお、ステップS13のチェックと、ステップS12でのチケット利用条件のチェックは、どちらを先に実行してもよい。
【0057】
鍵ID316が無効化情報保持部326に登録されていなければ、ステップS14に進む。ステップS14では、鍵ID316に対応するチケットに含まれる使用条件を調べ、その使用条件が成立するか否かを判定する。この例では、鍵ID316に対応するチケットは、ソフトウエア商品Aのアップグレード用チケットなので、使用条件として、「過去のバージョン1.0のチケット(鍵ID(1001))が存在すること」及び「(そのアップグレード用チケットの)使用の際にはバージョン1.0のチケットを無効化すること」がそのチケット内に記述されている。したがって、制御部322は、まず鍵ID(1001)のチケットがライセンス保持部324に存在するか否かを判定し、存在しなければ、アプリケーション本体310にエラーの旨を回答する。この場合アプリケーション本体310はエラー処理を実行して終了する。鍵ID(1001)のチケットがライセンス保持部324に存在すれば、その鍵ID(1001)を無効化情報保持部326に登録する。なおここで、バージョン2.0のアプリケーションの2回目以降の利用の際の処理手順の簡略化のために、その鍵ID(1001)が既に無効化情報保持部326に登録されている場合には、使用条件を満足していると判断するようにしてもよい。あるいは使用条件処理を実行したかどうかのフラグを設け、そのフラグがオンになっていればこの処理をスキップするというようにしても良い。これによって二度目以降の利用時の処理を正常に行うことができる。以上により、バージョン2.0のアップグレードチケットの使用条件が満足されるので、制御部322は、鍵ID316(1002)に対応するチケットの情報と、鍵保持部328に保持された当該トークン自身の個別鍵の情報とを用いて、暗号化されたコンテンツ鍵318を復号し、アプリケーション本体310に返す(S15)。
【0058】
復号されたコンテンツ鍵を受け取ったアプリケーション本体310の制御プログラム312は、暗号化されたプログラム本体314をそのコンテンツ鍵を用いて復号し、実行する(S16)。これにより、アプリケーション本体310をユーザが利用することができる。
【0059】
この処理によれば、新バージョンのソフトウエアのチケットをダウンロードしただけでは過去のバージョンのチケットは無効化されないのでそのまま使用ができる。そして、新バージョンが一度でも起動されれば、過去のバージョンのチケットが無効化されるので、複数のバージョンのチケットが併存することも防ぐことができる。
【0060】
なお、アプリケーション本体310が起動されるごとにステップS14の処理を行う代わりに、ライセンス管理部320内に、アプリケーション本体310のチケットに対応づけて、そのアプリケーション本体310を一度でも起動(認証)に成功したか否かを示すフラグを設け、このフラグがオン(起動したことがある)を示す場合には、ステップS14を省略してもよい。この場合、アプリケーション本体310を一度起動した際に、過去のバージョンのチケットは無効化されているので、ステップS14を省略しても問題ない。
【0061】
以上、ソフトウエアのバージョンアップライセンスを例にとって説明したが、当業者ならば理解できるように、乗り換えライセンスの場合にも、上述と同様にして、乗り換えライセンスをインストールしただけでは乗り換え対象のソフトウエアのライセンスを無効化せず、乗り換えライセンスを使用した時点で乗り換え対象のライセンスを無効化するように制御することができる。
【0062】
以上では、アップグレードライセンスや乗り換えライセンスにより関連する他のライセンスを無効化する場合を例示した。しかし、このような場合以外にも、あるライセンスが他のライセンスの利用条件に影響(或いは副作用)を及ぼすことができると便利な場合がある。以下では、上記実施形態の第1の変形例として、あるライセンスが他のライセンスの利用条件に影響を及ぼせるようにするためのシステムを以下に説明する。
【0063】
例えば、あるライセンスが使用された時に、そのライセンスの関連ライセンスの利用条件を変更する場合が考えられる。この場合、注目するライセンスとこれに対応する関連ライセンスとは、注目するライセンスが使用された時に、関連ライセンスの利用条件が変更されるという関係にある。変更する利用条件には、有効期限、利用回数の上限、又は従量制課金の単価などがある。この場合、発行するチケット(ライセンス)に対し、「関連チケットがクライアントPC300に存在すること」及びそのチケットを使用する時に関連チケットの利用条件をどのように変更するか、を記述する。
【0064】
例えば、あるソフトウエアのバージョン2.0(鍵ID(1002))のアップグレード用チケットに対し、そのチケットの使用条件として、「バージョン1.0のカプセルの鍵ID(1001)のチケットが存在していること」及び「当該チケット(鍵ID(1002))を利用する時に鍵ID(1001)のチケットの有効期間を7日間にすること」を組み込んでおけば、クライアントPC300上でバージョン2.0のチケットが初めて使用された時に、関連ライセンスであるバージョン1.0のチケットの有効期間がその時点から7日間に強制的に設定される。これにより、新バージョンのソフトウエアが使用された時に、過去のバージョンを即時に使用禁止にするのではなく、有効期間の経過後に使用禁止とすることができる。
【0065】
また、ソフトウエアのバージョン2.0(鍵ID(1002))のアップグレード用チケットに対し、そのチケットの使用条件として、「バージョン1.0のカプセルの鍵ID(1001)のチケットが存在していること」及び「当該チケット(鍵ID(1002))を利用する時に鍵ID(1001)のチケットの利用回数の上限を10回にすること」を組み込んでおけば、クライアントPC300上でバージョン2.0のチケットが初めて使用された時点で、バージョン1.0のチケットの利用回数上限を10回に強制設定することができる。
【0066】
このようにすれば、新しいバージョンを使い始めてもしばらくの間は古いバージョンのソフトウエアを利用することを許可するように制御できる。
【0067】
また、ソフトウエアの使用に対し従量制の課金が課される場合に、新しいソフトウエアを使用した時点で、それに関連する他のソフトウエアの課金の単価を優遇することも可能である。例えばあるベンダが提供する表計算ソフトウエアの課金単価が1日30円であり、同じベンダの提供するワードプロセッサソフトウエアの使用を開始すれば、表計算ソフトウエアの課金単価を1日20円に優遇する、などである。この場合は、ワードプロセッサソフトウエアのチケットに対し、「(同じベンダの提供する)表計算ソフトウエアのチケットが存在すること」及び「そのワードプロセッサソフトウエアのチケットを利用する時に表計算ソフトウエアのチケットの課金単価を20円にする」という使用条件を記述しておけばよい。
【0068】
以上のように、あるライセンスの使用により関連ライセンスの利用条件を変更するためには、コンテンツ提供サーバ200は図7に示すような処理を行えばよい。なお、図7において図4に示したステップと同一又は類似の処理を行うステップには、同一符号を付してその説明を省略する。
【0069】
図7の処理手順では、コンテンツ提供サーバ200は、クライアントPC300に提供したカプセルのライセンスに関連ライセンスが存在するとステップS3で判定した場合、使用条件として「当該カプセルのライセンスを使用する時に、クライアントPCに関連ライセンスが存在すれば、関連ライセンスの利用条件の項目Aの値をXとすること」(Aは有効期間又は有効期限、利用回数上限、課金単価などといった利用条件の項目名であり、Xはその項目の値である)という条件を組み込んだチケットの発行をチケット発行サーバ100に依頼する(S7)。関連ライセンスの変更指示の内容は、ライセンス対応情報保持部230に登録しておけばよい。この場合、ライセンス対応情報保持部230には、ライセンスの鍵IDと、それに関連する関連ライセンスの鍵IDと、関連ライセンスの変更内容とが登録されることになる、変更する利用条件の項目を複数指定できるようにしてももちろんよい。また、ライセンスに対して関連ライセンスが複数ある場合には、個々の関連ライセンスごとに利用条件の変更内容を登録できるようにしてもよい。その他の処理は、図4の手順と同じでよい。
【0070】
また、これに対応するクライアントPC300は、図8に示すような機能モジュールを持てばよい。なお、図8において、図5に示した構成要素と同一又は類似の構成要素には同一符号を付して説明を省略する。
【0071】
この例では、ライセンス管理部320が利用回数管理部330と変更情報保持部332を有する。利用回数管理部330は、ライセンス保持部324に保持された各チケットの利用回数の情報を管理する。チケットが使用されたことを検知するたびに、利用回数管理部330はそのチケットの利用回数のカウント値を1ずつ増やす。変更情報保持部332には、チケットが使用された時に、そのチケットに示される関連ライセンスの利用条件の変更内容が登録される。また、制御部322は、チケットの使用の指示を受けた場合、そのチケットの利用条件に変更がないか変更情報保持部332を調べ、変更があれば、その変更後の利用条件を優先的に適用する。
【0072】
この変形例でのクライアントPC300の処理手順を、図9を参照して説明する。図9において、図6に示したステップと同一又は類似の処理を行うステップには、同一符号を付して説明を省略する。
【0073】
この手順では、ライセンス管理部320は、アプリケーション本体310から指定された鍵ID用のチケットの使用条件に、関連ライセンス(これは鍵IDで特定される)の利用条件の変更の旨が示されていれば、変更情報保持部332にその関連ライセンスの利用条件の変更内容を鍵IDと対応づけて登録する(S17)。またライセンス管理部320は、アプリケーション本体310から指定された鍵IDが変更情報保持部332に登録されているかどうかを調べ、登録されていればその鍵IDに対応するチケットに示された利用条件項目に代えて、変更情報保持部332に登録されているその利用条件項目の変更内容を採用する(S18)。すなわち、変更された有効期間や有効期限が変更情報保持部332に登録されていれば、ライセンス管理部320は、その変更後の有効期間や有効期限と現在時刻とに基づき、当該チケットが利用可能な否かを判定する。また、変更された利用回数上限が変更情報保持部332に登録されていれば、ライセンス管理部320は、利用回数管理部330が管理する当該チケットの利用回数がその変更後の利用回数の上限を超えていれば、当該チケットが利用不可能と判定する。また、変更された従量課金単価が変更情報保持部332に登録されていれば、ライセンス管理部320は、その課金単価に従って今回のアプリケーション本体310の課金額を計算する。なお、このように求められた課金額は、例えばライセンス管理部320内に記録され、クライアントPC300が定期的に又はユーザからの指示に応じてネットワーク上の決済サーバ(図示省略)に送信され、決済される。ここで、所定期間以上決済をしかなったり、未決済の課金が所定額以上ライセンス管理部320内に記録されたりした場合には、ライセンス管理部320は当該アプリケーション本体310の利用をユーザに認めないように制御してもよい。
【0074】
なお、有効期限の設定のないチケットに対して有効期限を設けるように、値が設定されていない利用条件項目に新たに値を設定するような場合も、利用条件項目の「変更」の概念の中に含まれるものとする。
【0075】
以上に説明したステップ以外は、図6の手順と同じでよい。また、ステップS14とステップS17とはどちらを先に実行してもよい。
【0076】
以上の変形例は、ライセンスが使用された時に関連ライセンスの利用条件を変更するものであった。この逆に、注目するライセンスを使用した時に関連ライセンスがクライアントPC300内に存在すると、その注目するライセンスの利用条件を変更することもできる。このための第2の変形例を以下に説明する。
【0077】
第2の変形例では、コンテンツ販売サーバ200は、図10に示すように、クライアントPC300から要求されたカプセルのライセンスに関連ライセンスが存在する場合、「当該カプセルのライセンスを使用する時に、クライアントPCに関連ライセンスが存在すれば、当該カプセルのライセンスの利用条件の項目Aの値をXとすること」といった使用条件を含んだライセンスの発行を、チケット発行サーバ100に依頼する(S8)。サーバ200は、このステップS8以外は、図4と同じ手順を実行すればよい。
【0078】
また、第2の変形例におけるクライアントPC300の処理手順は、図11に示すようなものとなる。この手順では、ライセンス管理部320は、アプリケーション本体310から指定された鍵ID用のチケットの使用条件に、「関連ライセンス(これは鍵IDで特定される)がクライアントPC300に存在すれば、当該アプリケーション本体310のライセンスの利用条件を変更する」旨が示されていれば、変更情報保持部332にそのライセンスの利用条件の変更内容を鍵IDと対応づけて登録する(S19)。その他のステップは、図9の手順と同様でよい。
【0079】
以上のように、第1及び第2の変形例によれば、あるライセンスを利用することで、他のライセンスの利用条件を変更することができ、ライセンスの利用者に対して自由度の高いライセンス乗り換え方法を提供することができるようになる。またライセンスの利用者に対して新たな利益を提供することで、関連ライセンスの購入を促進が期待できる。
【0080】
なお、以上の各変形例では、チケットの無効化と、チケットの利用条件の変更との両方を行ったが、後者のみしか行わないようなシステム構成ももちろん考えられる。
【0081】
以上に説明した実施の形態及び変形例では、コンテンツ提供サーバ200とチケット発行サーバ100とが別の装置であったが、これらを1つの装置に実装してもかまわない。また、コンテンツ提供サーバ200がユーザからの要求に応じてチケット発行サーバ100にチケット発行を依頼し、これに応じて発行されたチケットをユーザに転送したが、この代わりに、チケット発行サーバ100がユーザからの直接のチケット発行依頼を処理するようにしてもよい。
【0082】
また以上では、ソフトウエアプログラムのライセンスを取り扱うシステム、方法を例にとったが、プログラム以外のコンテンツ、例えば文書や動画、音声などを利用するためのライセンスについても、同様のシステム、方法が利用できることは容易に理解できるであろう。
【0083】
また以上では、コンテンツのライセンスを販売する場合を例にとったが、販売以外の分野でもライセンス管理が適用可能なものは存在する。例えば、文書管理分野では、個々の文書の利用の可否や利用条件などを記述したライセンスをユーザに発行し、ユーザが文書のライセンスを持っていれば、そのライセンスに示された利用条件の下でその文書を利用できるようにするという管理ができる。このように、上述のシステム、方法は、ライセンスによりコンテンツの利用を管理する様々な分野に適用可能である。
【0084】
以上に説明したコンテンツ提供サーバ200及びクライアントPC300は、それぞれ、典型的には、汎用のコンピュータシステムにて、上述したサーバ200又はクライアントPC300の各部の機能又は処理内容を記述したプログラムを実行することにより実現される。コンピュータシステムは、ハードウエアとして、図12に示すように、CPU(中央演算装置)400、メモリ(一次記憶)402、各種I/O(入出力)インタフェース404等がバス406を介して接続された回路構成を有する。また、そのバス406に対し、例えばI/Oインタフェース404経由で、ハードディスクドライブ408やCDやDVD、フラッシュメモリなどの各種規格の可搬型の不揮発性記録媒体を読み取るためのディスクドライブ410が接続される。このようなドライブ408又は410は、メモリに対する外部記憶装置として機能する。上述のサーバ200又はクライアントPC300の処理内容が記述されたプログラムがCDやDVD等の記録媒体を経由して、又はネットワーク経由で、ハードディスクドライブ408等の固定記憶装置に保存され、コンピュータシステムにインストールされる。固定記憶装置に記憶されたプログラムがメモリに読み出されCPUにより実行されることにより、上述のサーバ200又はクライアントPC300の処理が実現される。
【図面の簡単な説明】
【0085】
【図1】バージョンアップライセンスの販売を従来方式で実現した場合の全体システムの構成と処理の流れを示す図である。
【図2】バージョンアップライセンスの販売を実施形態の方式で実現した場合の全体システムの構成と処理の流れを示す図である。
【図3】コンテンツ提供サーバの一例の機能構成を示すブロック図である。
【図4】コンテンツ提供サーバの処理手順の一例を示すフローチャートである。
【図5】クライアントPCの一例の機能構成を示すブロック図である。
【図6】クライアントPC内で実行される処理の流れの例を示すフローチャートである。
【図7】第1の変形例のコンテンツ提供サーバの処理手順の一例を示すフローチャートである。
【図8】第1の変形例のクライアントPCの一例の機能構成を示すブロック図である。
【図9】第1の変形例のクライアントPC内で実行される処理の流れの例を示すフローチャートである。
【図10】第2の変形例のコンテンツ提供サーバの処理手順の一例を示すフローチャートである。
【図11】第2の変形例のクライアントPC内で実行される処理の流れの例を示すフローチャートである。
【図12】コンテンツ提供サーバ又はクライアントPCのハードウエア構成の一例を示す図である。
【符号の説明】
【0086】
100 チケット発行サーバ、200 コンテンツ提供サーバ、300 クライアントPC。
【技術分野】
【0001】
本発明は、コンテンツの利用のための電子的なライセンスの管理に関する。
【背景技術】
【0002】
電子化されたコンテンツ(文書、動画、音声、プログラムなどのソフトウエア一般)を利用する時に正しい権利があるかどうかをチェックし、正しい権利を持つ場合にのみユーザに利用させるように制御する技術は、DRM(Digital Rights Management:デジタル権利管理)技術と呼ばれる。DRMシステムの具体例として、アクセスチケットシステム(特許文献1参照)や、Microsoft社のWRMS(Windows(登録商標) Rights Management System)などが知られている。
【0003】
DRM技術には大きく分けて、オンラインタイプとオフラインタイプがある。オンラインタイプのシステムでは、コンテンツの権利認証が必要となった時にユーザ端末(PCなど)からオンラインでサーバに利用権についての問い合わせを行う。オフラインタイプのシステムでは、あらかじめ権利認証を行ってコンテンツの利用権、すなわちライセンスをユーザ端末に対して発行しておき、コンテンツ利用時にはユーザ端末内のライセンスを参照してコンテンツ利用を許可するようにしている。
【0004】
例えば、オフラインタイプのDRMをソフトウエアのダウンロード販売に適用した場合、購入の決済処理が成功した時にサーバでライセンスを生成して端末に発行し、以降は、ライセンスはユーザが使用する端末で管理され、ライセンスの有効期限が到来する、あるいは、利用回数が尽きるまで(無期限の場合は永遠に)使い続けることが可能になる。
【0005】
ところが、実際にはライセンスに対しては、買戻し・譲渡・端末の乗り換え(他の端末へのライセンスの移動)、などの要求がある。ライセンスの買戻し、譲渡、端末の乗り換えを実現するには、端末からライセンスを削除するか、或いはそのライセンスを無効化する必要がある。例えば、特許文献2のシステムでは、無効化・譲渡・分割などのコマンドが用意され、それぞれのコマンドの処理の過程で、対象となるライセンス(チケット)が無効化される。
【0006】
また、特許文献3のシステムでは、無効化の対象となるのはライセンスではなく、ICカード内のアプリケーションそのものであるが、無効化コマンドにより出力されたデータによって後から、対象のアプリケーションが確実に無効化されたことを確認できる方法を提供している。
【0007】
一方、ソフトウエアの販売形態には、乗り換えライセンス、あるいはアップグレードライセンスという販売形態がある。乗り換えライセンスとは、競合する他社製品のライセンスを保有することを前提に通常より安い価格で販売されるライセンス形態である。アップグレードライセンスとは、以前のバージョンのソフトウエアを保有することを前提に、バージョンアップしたソフトウエアを通常より安い価格で販売されるというものである。
【0008】
いずれの場合も、新規に取得したライセンスの利用を始めたら、乗り換え対象あるいはアップグレード対象のソフトウエアの利用は停止(禁止)したいという要求がある。
【0009】
このような要求に対応しようとした場合、従来の方法では、ライセンス購入ページを表示し、ライセンス購入すると、その際に同時に対象となる古いライセンスを無効化するという処理を行うことになる。
【0010】
しかし、この従来の方法では、ライセンスを購入した瞬間に古いライセンスが無効化されることになるため、予めライセンスのみを購入しておき、必要になったときにソフトウエアを乗り換えるというような利用ができない。
【0011】
また従来の方法では、クライアント上の既存ライセンスが無効化されたことをサーバが確認した後、サーバからユーザ端末にアップグレードライセンスなどを提供するので、サーバとクライアントとの間での情報のやり取りが煩雑になり、サーバに大きな負担がかかることになる。
【0012】
【特許文献1】特開平11−031105号公報
【特許文献2】特開2004−032220号公報
【特許文献3】特開2003−271462号公報
【発明の開示】
【発明が解決しようとする課題】
【0013】
本発明は、1つの側面では、乗り換えライセンスやアップグレードライセンスなどの利用の柔軟性を高める。また別の側面では、本発明は、使用すると他のライセンスに影響を与えるライセンスを導入して多様なライセンスサービスを提供可能にする。
【課題を解決するための手段】
【0014】
本発明の1つの側面では、コンテンツについてのライセンスを発行する発行側システムと、ライセンスを用いてコンテンツを利用する利用側システムと、を含むライセンス管理システムであって、発行側システムは、コンテンツについてのライセンスを発行する場合に、そのライセンスに応じて利用条件を変更すべき関連ライセンスがあるか否かを判定する判定部と、関連ライセンスがあると判定部が判定した場合、利用側システム内にその関連ライセンスが存在すればその関連ライセンスの利用条件を変更する旨の変更指示を含むライセンスを発行する発行処理部と、を備え、利用側システムは、発行側システムから発行されたコンテンツのライセンスを保持するライセンス保持部と、コンテンツの利用が指示された際に、そのコンテンツについての有効なライセンスがライセンス保持部に存在する場合にはそのコンテンツの利用を可能とするための処理を行うライセンス処理部と、コンテンツの利用が指示された際に、そのコンテンツについてのライセンスに関連ライセンスの利用条件の変更指示が含まれる場合は、ライセンス保持部にその関連ライセンスが保持されていればその関連ライセンスの利用条件をその変更指示に応じて変更する変更処理部と、を備える、ライセンス管理システムが提供される。
【0015】
本発明の別の側面では、コンテンツについてのライセンスを発行する発行側システムと、ライセンスを用いてコンテンツを利用する利用側システムと、を含むライセンス管理システムであって、発行側システムは、コンテンツについてのライセンスを発行する場合に、そのライセンスの利用条件に影響を与える関連ライセンスがあるか否かを判定する判定部と、関連ライセンスがあると判定部が判定した場合、利用側システム内にその関連ライセンスが存在すればそのコンテンツについてのライセンス自身の利用条件を変更する旨の変更指示を含むライセンスを発行する発行処理部と、を備え、利用側システムは、発行側システムから発行されたコンテンツについてのライセンスを保持するライセンス保持部と、コンテンツの利用が指示された際に、そのコンテンツについての有効なライセンスがライセンス保持部に存在する場合にはそのコンテンツの利用を可能とするための処理を行うライセンス処理部と、コンテンツの利用が指示された際に、そのコンテンツについてのライセンスに、該コンピュータに関連ライセンスが存在すればそのコンテンツについてのライセンス自身の利用条件を変更する旨の変更指示が含まれる場合は、ライセンス保持部にその関連ライセンスが保持されていればそのコンテンツについてのライセンス自身の利用条件をその変更指示に応じて変更する変更処理部と、を備える、ライセンス管理システムが提供される。
【発明を実施するための最良の形態】
【0016】
以下、図面を参照して、本発明の実施の形態について説明する。以下では、特許文献1に示されるアクセスチケット方式のDRMシステムをベースにしたシステムについて説明する。ただし、当業者なら理解できるように、本実施形態のシステムは、アクセスチケット方式に限らず、様々なDRMシステムに適用可能である。また、以下では、ソフトウエアコンテンツを販売するシステムにおいて、バージョンアップ(アップグレード)ライセンスを販売する場合を例にとって、本実施形態のシステムの構成及び動作を説明する。しかし、これは実施例の一つにすぎない。当業者ならば理解できるように、社内文書に対する各ユーザのアクセスを許可するか禁止するかの制御など、コンテンツに対するユーザの利用権を管理する様々なアプリケーションシステムに、本実施形態のシステムは適用可能である。
【0017】
アクセスチケット方式では、アクセスチケット(以下単に「チケット」と呼ぶ)と呼ばれる電子データが、コンテンツの利用権を意味するライセンスを表現している。チケットには、対象となるコンテンツの識別情報(具体例としては、後述する鍵ID)と、そのコンテンツの利用条件(例えば、閲覧可能、編集可能、実行可能などといった利用態様、又は有効期間や有効期限、利用可能回数の上限、課金単価など)の情報が含まれる。なお、チケットとライセンスは基本的に同じ概念のもの(データ)を示すものとする。
【0018】
まず、バージョンアップライセンスの販売を従来方式で実現した場合の全体システムの構成と処理の流れを図1に示す。このシステムは、主として、チケットを生成して発行するチケット発行サーバ100、コンテンツを販売するコンテンツ提供サーバ200、及びコンテンツを購入するユーザが利用するクライアントPC(パーソナルコンピュータ)300からなる。
【0019】
コンテンツ提供サーバ200は、例えばウェブサーバとして構成されており、カプセル化(暗号化などで保護)されたコンテンツ(ソフトウエア)を保持している。
【0020】
コンテンツのカプセル化は、専用のカプセル化ツールを用いて事前に行われているものとする。カプセル化ツールには、様々な公知のものが存在しており、それらを利用すればよい。参考までにカプセル化の手順の一例を示すと次のようになる。すなわち、(a)まずチケット発行サーバ100からコンテンツの暗号化用の公開鍵を取得する。この鍵にはIDが付与されているので、この鍵IDによって、カプセル化されたコンテンツが識別できる。(b)次にカプセル化ツールで対象となるコンテンツを暗号化する。暗号化処理では、コンテンツを暗号化するコンテンツ暗号鍵を生成し、この鍵でコンテンツ本体を暗号化し、さらにそのコンテンツ暗号鍵をサーバから発行された公開鍵で暗号化する。暗号化されたコンテンツ鍵は暗号化されたコンテンツ本体に結合される。また、どのコンテンツがどの鍵IDの暗号鍵でカプセル化されたかという情報は別途データベース(図示省略)で管理される。このデータベースは、チケット発行サーバ100又はコンテンツ提供サーバ200からアクセス可能な場所(例えばチケット発行サーバ100内、又はそれらサーバ100及び200が接続されたネットワーク上)にあればよい。
【0021】
ユーザは、クライアントPC300からコンテンツ提供サーバ200にアクセスし、カプセル化されたコンテンツを自由にダウンロードできる。但し、カプセル化されたコンテンツは、暗号化等により保護されているので、ユーザはそれを利用するにはチケットを購入する必要がある。
【0022】
ここで、具体例としてコンテンツ提供サーバ200で、あるソフトウエア商品Aのライセンスが販売されているとする。ソフトウエア商品Aの最新のバージョンは2.0であり、バージョン1.0の製品をバージョン2.0にアップグレードするためのバージョンアップライセンスも用意されているとする。そして、バージョン1.0のソフトウエアは鍵ID"1001"の鍵で暗号化されており、また、バージョン2.0のソフトウエアは鍵ID"1002"の鍵で暗号化されているものとする。
【0023】
従来方式において、バージョン1.0のライセンスを既に持っているユーザが、バージョン2.0のバージョンライセンスを購入する際の処理の流れを、図1を参照して説明する。以下に示す番号(1)〜(7)は、図1に示した番号に対応する。
【0024】
(1)まず、ユーザがクライアントPC300のブラウザで、コンテンツ提供サーバ200にアクセスし、ソフトウエア商品Aの最新版(バージョン2.0)のアップグレードライセンスを購入対象として指示する。
【0025】
(2)コンテンツ提供サーバ200は、クライアントPC300に問合せを行い、ユーザが、そのソフトウエア商品Aの過去のバージョン(例えばバージョン1.0)を保有しているかどうかをチェックする。そして、保有していれば、その過去バージョンを無効化するための指示をクライアントPC300に送信する。ユーザが過去バージョンを持っていなければ、サーバ200はクライアントPC300にエラーの旨を通知し、アップグレードライセンス購入のためのセッションを中止する。
【0026】
(3)クライアントPC300は、処理結果をサーバに返す。ここでは、クライアントPC300に過去バージョンが存在し、その過去バージョンが公知の無効化処理により無効化されたものとする。無効化成功の通知を受けたサーバ200は、ソフトウエア商品Aのバージョン2.0のカプセルをクライアントPC300にダウンロードする。
【0027】
(4)カプセルがダウンロードできると、ユーザは、バージョン2.0のライセンスの購入手続きをする。例えば、サーバ200が決済用のウェブページをクライアントPC300に送り、ユーザがそのページに対してクレジットカード番号等の必要事項を入力してサーバ200に送り返す。そして、サーバ200が、ユーザから送られてきた情報に基づき、その購入についての決済を行う(決済の仕組みは何でもよい)。
【0028】
(5)決済が済んだら、コンテンツ提供サーバ200は、クライアントPC300用のチケットの発行をチケット発行サーバ100に依頼する。その際、クライアントPC300のトークンIDを取得し、トークンID、バージョン2.0のカプセルの鍵ID(1002) を指定して、チケット発行を依頼する。
【0029】
ここで、「トークン」とは各クライアントPC毎に割り当てられた個別の鍵情報を管理し、認証処理を行うための耐タンパー化されたハードウエアもしくはソフトウエアのことである。クライアントPC300には、事前にこのトークンが取り付けられているか或いはインストールされているものとする。
【0030】
(6)チケット発行サーバ100は、依頼された条件に従ってバージョン2.0用のチケットを生成し、送り返す。
【0031】
(7)コンテンツ提供サーバ200は、チケット発行サーバ100からチケットを受け取り、これをクライアントPC300に送付する。
【0032】
アクセスチケット方式の場合、クライアントPC300は、このチケットに含まれる情報とトークンに含まれる個別鍵情報とを組み合わせた情報を用いることで、コンテンツの利用時に、クライアントPC300のメモリ上で、カプセル化されたコンテンツに対応するコンテンツ暗号鍵を復号し、復号したコンテンツ暗号鍵を用いてカプセル化コンテンツを復号し、ユーザが利用する。なお、チケット発行サーバ100には、クライアントPC300のトークンIDと個別鍵情報があらかじめ登録されている。チケット発行サーバ100は、これらの情報を用いることで、クライアントPC300のトークンに対応した適切なチケットを発行する。
【0033】
以上、従来方式の処理の流れを説明した。次に、図2を参照して、本実施形態での処理の流れを説明する。
【0034】
(1)まず、ユーザがクライアントPC300のブラウザで、コンテンツ提供サーバ200にアクセスし、ソフトウエア商品Aの最新版(バージョン2.0)のアップグレードライセンスを購入対象として指示する。
【0035】
従来方式では、この後サーバ200がクライアントPC300に過去バージョンが存在するか否かを確認したが、本実施形態ではその処理は必要ない。
【0036】
サーバ200は、過去バージョンの存在の如何によらず、クライアントPC300に対しソフトウエア商品Aのバージョン2.0のカプセルを提供する。
【0037】
(2)カプセルがダウンロードできると、ユーザは、バージョン2.0のライセンスの購入手続きをし、サーバ200はその手続きにおいてユーザが入力した情報に基づき、決済を行う(決済の仕組みは何でもよい)。
【0038】
(3)決済が済んだら、コンテンツ提供サーバ200は、クライアントPC300用のチケットの発行をチケット発行サーバ100に依頼する。その際、コンテンツ提供サーバ200は、クライアントPC300のトークンIDを取得し、トークンID、バージョン2.0のカプセルの鍵ID(1002)をチケット発行サーバ100に伝える。また、本実施形態では、コンテンツ提供サーバ200は、このチケット発行依頼において、依頼対象のチケットの使用条件として、「バージョン1.0のカプセルの鍵ID(1001)のチケットが存在していること」、かつ、「当該チケット(鍵ID(1002))を利用する時に鍵ID(1001)のチケットを無効化すること」という条件をチケット発行サーバ100に対して指定する。
【0039】
(4)チケット発行サーバ100は、コンテンツ提供サーバ200から指定された使用条件の情報を含んだバージョン2.0用のアップグレードチケットを生成し、クライアントPC300に送り返す。
【0040】
(5)コンテンツ提供サーバ200は、チケット発行サーバ100からチケットを受け取り、クライアントPC300に送付する。
【0041】
以上の手順で、ユーザはアップグレード用のチケットを手に入れることになる。クライアントPC300は、ソフトウエア商品Aのバージョン2.0の使用がユーザから指示された時点で、トークンに対してバージョン2.0に対応するアップグレード用チケットを用いてカプセルを利用することを指示する。ここで、そのチケットには使用条件として「バージョン1.0のカプセルの鍵ID(1001)のチケットが存在していること」、かつ、「当該チケット(鍵ID(1002))を利用する時に鍵ID(1001)のチケットを無効化すること」という条件が記述されている。したがって、トークンは、まず鍵ID(1001)のチケットがそのトークン内に存在するかどうかを確認し、存在しなければ、そのアップグレード用チケット(鍵ID(1002))の使用を禁止する(すなわち復号のための鍵の提供を行わない)。したがって、この場合、ユーザは、ソフトウエア商品Aのバージョン2.0を利用できない。一方、鍵ID(1001)のチケットがそのトークン内に存在すれば、トークンは、そのチケット(鍵ID(1001))を無効化したのち、アップグレード用チケット(鍵ID(1002))を用いてバージョン2.0用の復号鍵を生成し、バージョン2.0のカプセルを利用できるようにする。
【0042】
従来方式では、アップグレード用のチケットをクライアントPC300に提供する時点で、コンテンツ提供サーバ200がクライアントPC300に過去バージョン用のチケットが存在するか否かを確認していた。これに対し、本実施形態では、クライアントPC300内のトークンが、アップグレード用のチケットを使用する際に、過去バージョンが存在するか否かを判定し、存在しなければアップグレード用のチケットを使用できないようにしている。したがって、本実施形態では、アップグレード用チケットの提供時にサーバ200がクライアントPC300に過去バージョンのチケットが存在するか否かを確認しなくてよいので、サーバ200の負荷を低減することができる。
【0043】
また、従来方式では、アップグレード用チケットの提供の時点で過去バージョンのチケットが無効化されていたので、その時点で過去バージョンは使用できなくなり、最新バージョンを使用するしかない。しかし、ユーザによっては、アップグレード用チケットの購入のみを先に行っておき、最新バージョンを使用する必要が生じるまでは過去バージョンを引き続き使用したい場合もある。本実施形態の方式は、このような要求に応えることができる。すなわち、本実施形態では、最新バージョンのソフトウエア商品Aの使用が指示されるまでは、過去バージョン用のチケットは無効化されないので、引き続き過去バージョンは利用できる。そして、最新バージョンの使用が一度指示されると、アップグレード用チケットに示された使用条件に応じてトークンが過去バージョン用のチケットを無効化するので、過去バージョン用と最新バージョン用のチケットが併存することも防止できる。
【0044】
以上に説明した実施形態のシステムを構成するコンテンツ提供サーバ200及びクライアントPC300の詳細について、以下に説明する。まず図3及び図4を参照して、コンテンツ提供サーバ200の構成及び処理手順のいい例を説明する。
【0045】
図3に示すように、コンテンツ提供サーバ200は、制御部210、決済処理部220及びライセンス対応情報保持部230を備える。
【0046】
このうち、制御部210は、クライアントPC300に対するサービスの全体的な制御を行う。例えば、制御部210は、クライアントPC300からの要求に応じ、ダウンロード対象のコンテンツを指定するためのウェブページを提供し、そのウェブページに対してユーザが選択したコンテンツを提供する。また、コンテンツ提供のために決済が必要な場合は、制御部210は、決済用の必要事項を入力するためのウェブページをユーザに提供し、それに対するユーザの入力情報を決済処理部220に渡して決済を行わせる。決済処理部220は、従来公知の方式で、コンテンツ購入代金の決済を行う。
【0047】
また、制御部210は、そのコンテンツに対するチケットをユーザに提供するために必要な処理を実行する。このチケット提供の処理の際、制御部210は、ユーザが要求したコンテンツのライセンスに対して、関連ライセンスがあるかどうかをライセンス対応情報保持部230を参照して判定する。関連ライセンスは、この場合、対象となるライセンスを使用する際に無効化すべきライセンスであり、より具体的には過去バージョン用のライセンス(チケット)である。ライセンス対応情報保持部230は、ライセンスの鍵ID(これはそのライセンス(チケット)により利用可能となるコンテンツを示す)と、そのライセンスを使用する際に無効化すべき関連ライセンスの鍵ID(「関連鍵ID」)とのペアを示している。ライセンス対応情報保持部230には、1つのライセンスの鍵IDに対応して、2以上の関連鍵IDが登録される場合もある。制御部210は、ユーザから要求されたコンテンツに対応するライセンスの鍵IDに対応する関連鍵IDがライセンス対応情報保持部230に存在するかどうかを調べ、存在する場合には、関連鍵IDに対応するライセンス(チケット)の無効化を使用条件とするチケットの発行をチケット発行サーバ100に依頼する。
【0048】
このようなコンテンツ提供サーバ200の処理手順の一例を図4に示す。この手順では、まずサーバ200は、クライアントPC300からコンテンツのダウンロード要求を受け取り(S1)、要求されたコンテンツのカプセルをクライアントPC300に提供すると共に、そのコンテンツの代金の決済処理を実行する(S2)。決済が失敗した場合は、以降の処理には進まず、エラー処理を実行するが、これについては図示を省略した。決済が成功した場合、サーバ200は、そのコンテンツを利用するためのライセンスに関連ライセンスがあるかどうかを、ライセンス対応情報保持部230を参照して調べる(S3)。関連ライセンスがなければ、サーバ200は、そのコンテンツに対応する鍵IDとクライアントPC300のトークンIDをチケット発行サーバ100に送り、そのコンテンツに対するチケットの発行を依頼する(S4)。この依頼では、関連ライセンスの無効化等の使用条件の指定は行われないので、チケット発行サーバ100は、従来と同様のチケットを発行する。
【0049】
ステップS3で関連ライセンスありと判定された場合、サーバ200は、「関連ライセンスに対応する鍵IDのチケットをトークンが保持していること」、及び「当該チケットを使用する際には、関連ライセンスに対応する鍵IDのチケットを無効化すること」を使用条件に指定して、チケット発行サーバ100に当該コンテンツに対応するチケットの発行を依頼する(S5)。ここで、関連ライセンスが複数ある場合には、この使用条件には、それら各関連ライセンスに対応する各鍵IDが列挙される。この依頼を受けたチケット発行サーバ100は、その使用条件の情報を含んだチケットを発行する。
【0050】
サーバ200は、チケット発行サーバ100が発行したチケットを受け取り、クライアントPC300に転送する(S6)。
【0051】
以上、コンテンツ提供サーバ200について説明した。次にクライアントPC300の構成及び処理手順について説明する。
【0052】
図5に示すように、クライアントPC300は、アプリケーション本体310とライセンス管理部320(トークン)とを有する。アプリケーション本体310は、コンテンツ提供サーバ200からダウンロードされたカプセルであり、制御プログラム312,暗号化されたプログラム本体314,鍵ID316及び暗号化されたコンテンツ鍵318を有する。制御プログラム312は、このアプリケーション本体310の起動が指示された時に実行され、暗号化されたプログラム本体314の復号のための処理を実行する。暗号化されたプログラム本体314は、このアプリケーション本体310がユーザに提供する処理を実行する部分であり、コンテンツ鍵により暗号化されている。暗号化されたコンテンツ鍵318は、暗号化されたプログラム本体314を復号するためのコンテンツ鍵を暗号化したものであり、鍵ID316は、そのコンテンツ鍵を暗号化した公開鍵を特定するIDである。
【0053】
ライセンス管理部(トークン)320は、クライアントPC300にインストールされた各カプセルのチケット(ライセンス)を管理する機能モジュールである。このモジュールは、耐タンパー化されたソフトウエア又はハードウエアとして実装される。ライセンス管理部320は、制御部322,ライセンス保持部324,無効化情報保持部326及び鍵保持部328を備える。ライセンス保持部324は、各カプセルを利用するためのチケット(ライセンス)のデータを保持する。ライセンス保持部324が保持する各チケットは、鍵IDにより検索可能となっている。図5には、1つのカプセル(すなわちアプリケーション本体310)しか示していないが、クライアントPC300内には、ライセンス管理部320が管理するカプセルを複数インストールすることができる。無効化情報保持部326は、無効化されたチケットを特定する情報を保持する。鍵保持部328は、当該ライセンス管理部320に固有の個別鍵を保持する。制御部322は、カプセルの利用の可否を判定し、その判定結果に応じた処理を行う。
【0054】
次に、図6を参照して、アプリケーション本体310(カプセル)の起動がユーザから指示された場合にクライアントPC300が実行する処理手順を説明する。この例では、アプリケーション本体310は、上述のソフトウエア商品Aのバージョン2.0(アップグレード版:鍵ID(1002))であり、そのソフトウエア商品Aには過去のバージョン1.0(鍵ID(1001))が存在しているものとする。
【0055】
まず、バージョン2.0のアップグレード版ソフトウエア(アプリケーション本体310)の起動が指示されると(S11)、制御プログラム312が実行される。すると、制御プログラム312は、暗号化されたコンテンツ鍵318と鍵ID316をライセンス管理部320に渡し、ライセンス認証を依頼する。この依頼を受けたライセンス管理部320の制御部322は、指定された鍵ID316に対応するチケットをライセンス保持部324から検索する(S12)。鍵IDに対応するチケットがライセンス保持部324に無ければ、制御部322は、エラーの旨の回答をアプリケーション本体310に返す。この場合、アプリケーション本体310のカプセルは復号できず、制御プログラム312はエラー処理を行って終了する。鍵ID316に対応するチケットが検索できた場合は、そのチケットに示された利用条件(例えば利用回数の上限や有効期限)を求め、その利用条件が満足されているかをチェックする(S12)。現在時刻が有効期限より後であれば利用条件は不成立となる。また、当該アプリケーション本体310の利用回数(これはアプリケーション本体310が起動されるたび、ライセンス管理部320が数え上げている)が、利用回数の上限を超える場合には、利用条件は不成立となる。利用条件が不成立の場合も、制御部322はエラーの旨の回答をアプリケーション本体310に返し、アプリケーション本体310はエラー処理を行って終了する。このような利用条件のチェックとそれに伴う制御は公知技術なので、これ以上の説明は省略する。図示例では、鍵ID316に対応するチケットが見つかり、利用条件も満足されたものとしている。
【0056】
この場合、制御部322は、更に無効化情報保持部326にその鍵ID316が登録されているかどうかを調べる(S13)。登録されていれば、その鍵ID316に対応するチケットは既に無効となっているので、エラーの旨をアプリケーション本体310に回答し(S13)、アプリケーション本体310はそれに応じてエラー処理を行って終了する。なお、ステップS13のチェックと、ステップS12でのチケット利用条件のチェックは、どちらを先に実行してもよい。
【0057】
鍵ID316が無効化情報保持部326に登録されていなければ、ステップS14に進む。ステップS14では、鍵ID316に対応するチケットに含まれる使用条件を調べ、その使用条件が成立するか否かを判定する。この例では、鍵ID316に対応するチケットは、ソフトウエア商品Aのアップグレード用チケットなので、使用条件として、「過去のバージョン1.0のチケット(鍵ID(1001))が存在すること」及び「(そのアップグレード用チケットの)使用の際にはバージョン1.0のチケットを無効化すること」がそのチケット内に記述されている。したがって、制御部322は、まず鍵ID(1001)のチケットがライセンス保持部324に存在するか否かを判定し、存在しなければ、アプリケーション本体310にエラーの旨を回答する。この場合アプリケーション本体310はエラー処理を実行して終了する。鍵ID(1001)のチケットがライセンス保持部324に存在すれば、その鍵ID(1001)を無効化情報保持部326に登録する。なおここで、バージョン2.0のアプリケーションの2回目以降の利用の際の処理手順の簡略化のために、その鍵ID(1001)が既に無効化情報保持部326に登録されている場合には、使用条件を満足していると判断するようにしてもよい。あるいは使用条件処理を実行したかどうかのフラグを設け、そのフラグがオンになっていればこの処理をスキップするというようにしても良い。これによって二度目以降の利用時の処理を正常に行うことができる。以上により、バージョン2.0のアップグレードチケットの使用条件が満足されるので、制御部322は、鍵ID316(1002)に対応するチケットの情報と、鍵保持部328に保持された当該トークン自身の個別鍵の情報とを用いて、暗号化されたコンテンツ鍵318を復号し、アプリケーション本体310に返す(S15)。
【0058】
復号されたコンテンツ鍵を受け取ったアプリケーション本体310の制御プログラム312は、暗号化されたプログラム本体314をそのコンテンツ鍵を用いて復号し、実行する(S16)。これにより、アプリケーション本体310をユーザが利用することができる。
【0059】
この処理によれば、新バージョンのソフトウエアのチケットをダウンロードしただけでは過去のバージョンのチケットは無効化されないのでそのまま使用ができる。そして、新バージョンが一度でも起動されれば、過去のバージョンのチケットが無効化されるので、複数のバージョンのチケットが併存することも防ぐことができる。
【0060】
なお、アプリケーション本体310が起動されるごとにステップS14の処理を行う代わりに、ライセンス管理部320内に、アプリケーション本体310のチケットに対応づけて、そのアプリケーション本体310を一度でも起動(認証)に成功したか否かを示すフラグを設け、このフラグがオン(起動したことがある)を示す場合には、ステップS14を省略してもよい。この場合、アプリケーション本体310を一度起動した際に、過去のバージョンのチケットは無効化されているので、ステップS14を省略しても問題ない。
【0061】
以上、ソフトウエアのバージョンアップライセンスを例にとって説明したが、当業者ならば理解できるように、乗り換えライセンスの場合にも、上述と同様にして、乗り換えライセンスをインストールしただけでは乗り換え対象のソフトウエアのライセンスを無効化せず、乗り換えライセンスを使用した時点で乗り換え対象のライセンスを無効化するように制御することができる。
【0062】
以上では、アップグレードライセンスや乗り換えライセンスにより関連する他のライセンスを無効化する場合を例示した。しかし、このような場合以外にも、あるライセンスが他のライセンスの利用条件に影響(或いは副作用)を及ぼすことができると便利な場合がある。以下では、上記実施形態の第1の変形例として、あるライセンスが他のライセンスの利用条件に影響を及ぼせるようにするためのシステムを以下に説明する。
【0063】
例えば、あるライセンスが使用された時に、そのライセンスの関連ライセンスの利用条件を変更する場合が考えられる。この場合、注目するライセンスとこれに対応する関連ライセンスとは、注目するライセンスが使用された時に、関連ライセンスの利用条件が変更されるという関係にある。変更する利用条件には、有効期限、利用回数の上限、又は従量制課金の単価などがある。この場合、発行するチケット(ライセンス)に対し、「関連チケットがクライアントPC300に存在すること」及びそのチケットを使用する時に関連チケットの利用条件をどのように変更するか、を記述する。
【0064】
例えば、あるソフトウエアのバージョン2.0(鍵ID(1002))のアップグレード用チケットに対し、そのチケットの使用条件として、「バージョン1.0のカプセルの鍵ID(1001)のチケットが存在していること」及び「当該チケット(鍵ID(1002))を利用する時に鍵ID(1001)のチケットの有効期間を7日間にすること」を組み込んでおけば、クライアントPC300上でバージョン2.0のチケットが初めて使用された時に、関連ライセンスであるバージョン1.0のチケットの有効期間がその時点から7日間に強制的に設定される。これにより、新バージョンのソフトウエアが使用された時に、過去のバージョンを即時に使用禁止にするのではなく、有効期間の経過後に使用禁止とすることができる。
【0065】
また、ソフトウエアのバージョン2.0(鍵ID(1002))のアップグレード用チケットに対し、そのチケットの使用条件として、「バージョン1.0のカプセルの鍵ID(1001)のチケットが存在していること」及び「当該チケット(鍵ID(1002))を利用する時に鍵ID(1001)のチケットの利用回数の上限を10回にすること」を組み込んでおけば、クライアントPC300上でバージョン2.0のチケットが初めて使用された時点で、バージョン1.0のチケットの利用回数上限を10回に強制設定することができる。
【0066】
このようにすれば、新しいバージョンを使い始めてもしばらくの間は古いバージョンのソフトウエアを利用することを許可するように制御できる。
【0067】
また、ソフトウエアの使用に対し従量制の課金が課される場合に、新しいソフトウエアを使用した時点で、それに関連する他のソフトウエアの課金の単価を優遇することも可能である。例えばあるベンダが提供する表計算ソフトウエアの課金単価が1日30円であり、同じベンダの提供するワードプロセッサソフトウエアの使用を開始すれば、表計算ソフトウエアの課金単価を1日20円に優遇する、などである。この場合は、ワードプロセッサソフトウエアのチケットに対し、「(同じベンダの提供する)表計算ソフトウエアのチケットが存在すること」及び「そのワードプロセッサソフトウエアのチケットを利用する時に表計算ソフトウエアのチケットの課金単価を20円にする」という使用条件を記述しておけばよい。
【0068】
以上のように、あるライセンスの使用により関連ライセンスの利用条件を変更するためには、コンテンツ提供サーバ200は図7に示すような処理を行えばよい。なお、図7において図4に示したステップと同一又は類似の処理を行うステップには、同一符号を付してその説明を省略する。
【0069】
図7の処理手順では、コンテンツ提供サーバ200は、クライアントPC300に提供したカプセルのライセンスに関連ライセンスが存在するとステップS3で判定した場合、使用条件として「当該カプセルのライセンスを使用する時に、クライアントPCに関連ライセンスが存在すれば、関連ライセンスの利用条件の項目Aの値をXとすること」(Aは有効期間又は有効期限、利用回数上限、課金単価などといった利用条件の項目名であり、Xはその項目の値である)という条件を組み込んだチケットの発行をチケット発行サーバ100に依頼する(S7)。関連ライセンスの変更指示の内容は、ライセンス対応情報保持部230に登録しておけばよい。この場合、ライセンス対応情報保持部230には、ライセンスの鍵IDと、それに関連する関連ライセンスの鍵IDと、関連ライセンスの変更内容とが登録されることになる、変更する利用条件の項目を複数指定できるようにしてももちろんよい。また、ライセンスに対して関連ライセンスが複数ある場合には、個々の関連ライセンスごとに利用条件の変更内容を登録できるようにしてもよい。その他の処理は、図4の手順と同じでよい。
【0070】
また、これに対応するクライアントPC300は、図8に示すような機能モジュールを持てばよい。なお、図8において、図5に示した構成要素と同一又は類似の構成要素には同一符号を付して説明を省略する。
【0071】
この例では、ライセンス管理部320が利用回数管理部330と変更情報保持部332を有する。利用回数管理部330は、ライセンス保持部324に保持された各チケットの利用回数の情報を管理する。チケットが使用されたことを検知するたびに、利用回数管理部330はそのチケットの利用回数のカウント値を1ずつ増やす。変更情報保持部332には、チケットが使用された時に、そのチケットに示される関連ライセンスの利用条件の変更内容が登録される。また、制御部322は、チケットの使用の指示を受けた場合、そのチケットの利用条件に変更がないか変更情報保持部332を調べ、変更があれば、その変更後の利用条件を優先的に適用する。
【0072】
この変形例でのクライアントPC300の処理手順を、図9を参照して説明する。図9において、図6に示したステップと同一又は類似の処理を行うステップには、同一符号を付して説明を省略する。
【0073】
この手順では、ライセンス管理部320は、アプリケーション本体310から指定された鍵ID用のチケットの使用条件に、関連ライセンス(これは鍵IDで特定される)の利用条件の変更の旨が示されていれば、変更情報保持部332にその関連ライセンスの利用条件の変更内容を鍵IDと対応づけて登録する(S17)。またライセンス管理部320は、アプリケーション本体310から指定された鍵IDが変更情報保持部332に登録されているかどうかを調べ、登録されていればその鍵IDに対応するチケットに示された利用条件項目に代えて、変更情報保持部332に登録されているその利用条件項目の変更内容を採用する(S18)。すなわち、変更された有効期間や有効期限が変更情報保持部332に登録されていれば、ライセンス管理部320は、その変更後の有効期間や有効期限と現在時刻とに基づき、当該チケットが利用可能な否かを判定する。また、変更された利用回数上限が変更情報保持部332に登録されていれば、ライセンス管理部320は、利用回数管理部330が管理する当該チケットの利用回数がその変更後の利用回数の上限を超えていれば、当該チケットが利用不可能と判定する。また、変更された従量課金単価が変更情報保持部332に登録されていれば、ライセンス管理部320は、その課金単価に従って今回のアプリケーション本体310の課金額を計算する。なお、このように求められた課金額は、例えばライセンス管理部320内に記録され、クライアントPC300が定期的に又はユーザからの指示に応じてネットワーク上の決済サーバ(図示省略)に送信され、決済される。ここで、所定期間以上決済をしかなったり、未決済の課金が所定額以上ライセンス管理部320内に記録されたりした場合には、ライセンス管理部320は当該アプリケーション本体310の利用をユーザに認めないように制御してもよい。
【0074】
なお、有効期限の設定のないチケットに対して有効期限を設けるように、値が設定されていない利用条件項目に新たに値を設定するような場合も、利用条件項目の「変更」の概念の中に含まれるものとする。
【0075】
以上に説明したステップ以外は、図6の手順と同じでよい。また、ステップS14とステップS17とはどちらを先に実行してもよい。
【0076】
以上の変形例は、ライセンスが使用された時に関連ライセンスの利用条件を変更するものであった。この逆に、注目するライセンスを使用した時に関連ライセンスがクライアントPC300内に存在すると、その注目するライセンスの利用条件を変更することもできる。このための第2の変形例を以下に説明する。
【0077】
第2の変形例では、コンテンツ販売サーバ200は、図10に示すように、クライアントPC300から要求されたカプセルのライセンスに関連ライセンスが存在する場合、「当該カプセルのライセンスを使用する時に、クライアントPCに関連ライセンスが存在すれば、当該カプセルのライセンスの利用条件の項目Aの値をXとすること」といった使用条件を含んだライセンスの発行を、チケット発行サーバ100に依頼する(S8)。サーバ200は、このステップS8以外は、図4と同じ手順を実行すればよい。
【0078】
また、第2の変形例におけるクライアントPC300の処理手順は、図11に示すようなものとなる。この手順では、ライセンス管理部320は、アプリケーション本体310から指定された鍵ID用のチケットの使用条件に、「関連ライセンス(これは鍵IDで特定される)がクライアントPC300に存在すれば、当該アプリケーション本体310のライセンスの利用条件を変更する」旨が示されていれば、変更情報保持部332にそのライセンスの利用条件の変更内容を鍵IDと対応づけて登録する(S19)。その他のステップは、図9の手順と同様でよい。
【0079】
以上のように、第1及び第2の変形例によれば、あるライセンスを利用することで、他のライセンスの利用条件を変更することができ、ライセンスの利用者に対して自由度の高いライセンス乗り換え方法を提供することができるようになる。またライセンスの利用者に対して新たな利益を提供することで、関連ライセンスの購入を促進が期待できる。
【0080】
なお、以上の各変形例では、チケットの無効化と、チケットの利用条件の変更との両方を行ったが、後者のみしか行わないようなシステム構成ももちろん考えられる。
【0081】
以上に説明した実施の形態及び変形例では、コンテンツ提供サーバ200とチケット発行サーバ100とが別の装置であったが、これらを1つの装置に実装してもかまわない。また、コンテンツ提供サーバ200がユーザからの要求に応じてチケット発行サーバ100にチケット発行を依頼し、これに応じて発行されたチケットをユーザに転送したが、この代わりに、チケット発行サーバ100がユーザからの直接のチケット発行依頼を処理するようにしてもよい。
【0082】
また以上では、ソフトウエアプログラムのライセンスを取り扱うシステム、方法を例にとったが、プログラム以外のコンテンツ、例えば文書や動画、音声などを利用するためのライセンスについても、同様のシステム、方法が利用できることは容易に理解できるであろう。
【0083】
また以上では、コンテンツのライセンスを販売する場合を例にとったが、販売以外の分野でもライセンス管理が適用可能なものは存在する。例えば、文書管理分野では、個々の文書の利用の可否や利用条件などを記述したライセンスをユーザに発行し、ユーザが文書のライセンスを持っていれば、そのライセンスに示された利用条件の下でその文書を利用できるようにするという管理ができる。このように、上述のシステム、方法は、ライセンスによりコンテンツの利用を管理する様々な分野に適用可能である。
【0084】
以上に説明したコンテンツ提供サーバ200及びクライアントPC300は、それぞれ、典型的には、汎用のコンピュータシステムにて、上述したサーバ200又はクライアントPC300の各部の機能又は処理内容を記述したプログラムを実行することにより実現される。コンピュータシステムは、ハードウエアとして、図12に示すように、CPU(中央演算装置)400、メモリ(一次記憶)402、各種I/O(入出力)インタフェース404等がバス406を介して接続された回路構成を有する。また、そのバス406に対し、例えばI/Oインタフェース404経由で、ハードディスクドライブ408やCDやDVD、フラッシュメモリなどの各種規格の可搬型の不揮発性記録媒体を読み取るためのディスクドライブ410が接続される。このようなドライブ408又は410は、メモリに対する外部記憶装置として機能する。上述のサーバ200又はクライアントPC300の処理内容が記述されたプログラムがCDやDVD等の記録媒体を経由して、又はネットワーク経由で、ハードディスクドライブ408等の固定記憶装置に保存され、コンピュータシステムにインストールされる。固定記憶装置に記憶されたプログラムがメモリに読み出されCPUにより実行されることにより、上述のサーバ200又はクライアントPC300の処理が実現される。
【図面の簡単な説明】
【0085】
【図1】バージョンアップライセンスの販売を従来方式で実現した場合の全体システムの構成と処理の流れを示す図である。
【図2】バージョンアップライセンスの販売を実施形態の方式で実現した場合の全体システムの構成と処理の流れを示す図である。
【図3】コンテンツ提供サーバの一例の機能構成を示すブロック図である。
【図4】コンテンツ提供サーバの処理手順の一例を示すフローチャートである。
【図5】クライアントPCの一例の機能構成を示すブロック図である。
【図6】クライアントPC内で実行される処理の流れの例を示すフローチャートである。
【図7】第1の変形例のコンテンツ提供サーバの処理手順の一例を示すフローチャートである。
【図8】第1の変形例のクライアントPCの一例の機能構成を示すブロック図である。
【図9】第1の変形例のクライアントPC内で実行される処理の流れの例を示すフローチャートである。
【図10】第2の変形例のコンテンツ提供サーバの処理手順の一例を示すフローチャートである。
【図11】第2の変形例のクライアントPC内で実行される処理の流れの例を示すフローチャートである。
【図12】コンテンツ提供サーバ又はクライアントPCのハードウエア構成の一例を示す図である。
【符号の説明】
【0086】
100 チケット発行サーバ、200 コンテンツ提供サーバ、300 クライアントPC。
【特許請求の範囲】
【請求項1】
コンテンツについてのライセンスを発行する発行側システムと、
ライセンスを用いてコンテンツを利用する利用側システムと、
を含むライセンス管理システムであって、
発行側システムは、
コンテンツについてのライセンスを発行する場合に、そのライセンスに応じて利用条件を変更すべき関連ライセンスがあるか否かを判定する判定部と、
関連ライセンスがあると判定部が判定した場合、利用側システム内にその関連ライセンスが存在すればその関連ライセンスの利用条件を変更する旨の変更指示を含むライセンスを発行する発行処理部と、
を備え、
利用側システムは、
発行側システムから発行されたコンテンツのライセンスを保持するライセンス保持部と、
コンテンツの利用が指示された際に、そのコンテンツについての有効なライセンスがライセンス保持部に存在する場合にはそのコンテンツの利用を可能とするための処理を行うライセンス処理部と、
コンテンツの利用が指示された際に、そのコンテンツについてのライセンスに関連ライセンスの利用条件の変更指示が含まれる場合は、ライセンス保持部にその関連ライセンスが保持されていればその関連ライセンスの利用条件をその変更指示に応じて変更する変更処理部と、
を備える、ライセンス管理システム。
【請求項2】
コンテンツについてのライセンスを発行する発行側システムであって、
コンテンツについてのライセンスを発行する場合に、そのライセンスに応じて利用条件を変更すべき関連ライセンスがあるか否かを判定する判定部と、
関連ライセンスがあると判定部が判定した場合、利用側システム内にその関連ライセンスが存在すればその関連ライセンスの利用条件を変更する旨の変更指示を含むライセンスを発行する発行処理部と、
を備える発行側システム。
【請求項3】
ライセンスを用いてコンテンツを利用する利用側システムであって、
発行側システムから発行されたコンテンツのライセンスを保持するライセンス保持部と、
コンテンツの利用が指示された際に、そのコンテンツについての有効なライセンスがライセンス保持部に存在する場合にはそのコンテンツの利用を可能とするための処理を行うライセンス処理部と、
コンテンツの利用が指示された際に、そのコンテンツについてのライセンスに関連ライセンスの利用条件の変更指示が含まれる場合は、ライセンス保持部にその関連ライセンスが保持されていればその関連ライセンスの利用条件をその変更指示に応じて変更する変更処理部と、
を備える利用側システム。
【請求項4】
コンテンツについてのライセンスを発行する発行装置としてコンピュータを動作させるためのプログラムであって、該コンピュータに、
コンテンツについてのライセンスを発行する場合に、そのライセンスに応じて利用条件を変更すべき関連ライセンスがあるか否かを判定し、
関連ライセンスがあると判定した場合、利用側システム内にその関連ライセンスが存在すればその関連ライセンスの利用条件を変更する旨の変更指示を含む対象ライセンスを発行する、
処理を実行させるためのプログラム。
【請求項5】
請求項4記載のプログラムであって、
前記変更指示は、前記関連ライセンスを無効化する指示であることを特徴とするプログラム。
【請求項6】
請求項4記載のプログラムであって、
前記変更指示は、前記関連ライセンスの利用回数を変更する指示であることを特徴とするプログラム。
【請求項7】
請求項4記載のプログラムであって、
前記変更指示は、前記関連ライセンスの有効期限を変更する指示であることを特徴とするプログラム。
【請求項8】
請求項4記載のプログラムであって、
前記変更指示は、前記関連ライセンスの従量課金単価を変更する指示であることを特徴とするプログラム。
【請求項9】
コンピュータに、
発行側システムから発行されたコンテンツのライセンスをライセンス保持部に保持し、
コンテンツの利用が指示された際に、そのコンテンツについての有効なライセンスがライセンス保持部に存在する場合にはそのコンテンツの利用を可能とするための処理を行い、
コンテンツの利用が指示された際に、そのコンテンツについてのライセンスに関連ライセンスの利用条件の変更指示が含まれる場合は、ライセンス保持部にその関連ライセンスが保持されていればその関連ライセンスの利用条件をその変更指示に応じて変更する、
処理を実行させるためのプログラム。
【請求項10】
請求項9記載のプログラムであって、
前記コンピュータに、
コンテンツの利用が指示された際に、そのコンテンツについてのライセンスに関連ライセンスの利用条件の変更指示が含まれる場合は、ライセンス保持部にその関連ライセンスが保持されていなければ、そのコンテンツの使用を禁止する、
処理を更に実行させるためのプログラム。
【請求項11】
請求項9記載のプログラムであって、
前記変更指示は、前記関連ライセンスを無効化する指示であることを特徴とするプログラム。
【請求項12】
請求項11記載のプログラムであって、
前記関連ライセンスの利用条件を前記変更指示に応じて変更する処理は、前記関連ライセンスを無効化ライセンス記憶部に登録する処理を含み、
前記プログラムは、前記コンピュータに、
コンテンツの利用が指示された際に、そのコンテンツについてのライセンスが前記無効化ライセンス記憶部に登録されているか否かを調べ、登録されている場合には当該コンテンツの利用を禁止する、
処理を更に実行させる、ことを特徴とするプログラム。
【請求項13】
請求項11記載のプログラムであって、
前記関連ライセンスの利用条件を前記変更指示に応じて変更する処理は、前記関連ライセンスに対する前記変更指示を変更情報管理部に登録する処理を含み、
前記プログラムは、前記コンピュータに、
コンテンツの利用が指示された際に、そのコンテンツに対応するライセンスの変更指示が前記変更情報管理部に登録されているか否かを調べ、登録されている場合には当該ライセンス自体に記載された利用条件よりも前記変更情報管理部に登録された変更指示が示す利用条件を優先して当該コンテンツに適用する、
処理を更に実行させる、ことを特徴とするプログラム。
【請求項14】
コンテンツについてのライセンスを発行する発行側システムと、
ライセンスを用いてコンテンツを利用する利用側システムと、
を含むライセンス管理システムであって、
発行側システムは、
コンテンツについてのライセンスを発行する場合に、そのライセンスの利用条件に影響を与える関連ライセンスがあるか否かを判定する判定部と、
関連ライセンスがあると判定部が判定した場合、利用側システム内にその関連ライセンスが存在すればそのコンテンツについてのライセンス自身の利用条件を変更する旨の変更指示を含むライセンスを発行する発行処理部と、
を備え、
利用側システムは、
発行側システムから発行されたコンテンツについてのライセンスを保持するライセンス保持部と、
コンテンツの利用が指示された際に、そのコンテンツについての有効なライセンスがライセンス保持部に存在する場合にはそのコンテンツの利用を可能とするための処理を行うライセンス処理部と、
コンテンツの利用が指示された際に、そのコンテンツについてのライセンスに、該コンピュータに関連ライセンスが存在すればそのコンテンツについてのライセンス自身の利用条件を変更する旨の変更指示が含まれる場合は、ライセンス保持部にその関連ライセンスが保持されていればそのコンテンツについてのライセンス自身の利用条件をその変更指示に応じて変更する変更処理部と、
を備える、ライセンス管理システム。
【請求項15】
コンテンツについてのライセンスを発行する発行側システムであって、
コンテンツについてのライセンスを発行する場合に、そのライセンスの利用条件に影響を与える関連ライセンスがあるか否かを判定する判定部と、
関連ライセンスがあると判定部が判定した場合、利用側システム内にその関連ライセンスが存在すればそのコンテンツについてのライセンス自身の利用条件を変更する旨の変更指示を含むライセンスを発行する発行処理部と、
を備える発行側システム。
【請求項16】
ライセンスを用いてコンテンツを利用する利用側システムであって、
発行側システムから発行されたコンテンツについてのライセンスを保持するライセンス保持部と、
コンテンツの利用が指示された際に、そのコンテンツについての有効なライセンスがライセンス保持部に存在する場合にはそのコンテンツの利用を可能とするための処理を行うライセンス処理部と、
コンテンツの利用が指示された際に、そのコンテンツについてのライセンスに、該コンピュータに関連ライセンスが存在すればそのコンテンツについてのライセンス自身の利用条件を変更する旨の変更指示が含まれる場合は、ライセンス保持部にその関連ライセンスが保持されていればそのコンテンツについてのライセンス自身の利用条件をその変更指示に応じて変更する変更処理部と、
を備える利用側システム。
【請求項17】
コンテンツについてのライセンスを発行する発行装置としてコンピュータを動作させるためのプログラムであって、該コンピュータに、
コンテンツについてのライセンスを発行する場合に、そのライセンスの利用条件に影響を与える関連ライセンスがあるか否かを判定し、
関連ライセンスがあると判定した場合、利用側システム内にその関連ライセンスが存在すればそのコンテンツについてのライセンス自身の利用条件を変更する旨の変更指示を含むライセンスを発行する、
処理を実行させるためのプログラム。
【請求項18】
コンピュータに、
発行側システムから発行されたコンテンツについてのライセンスをライセンス保持部に保持し、
コンテンツの利用が指示された際に、そのコンテンツについての有効なライセンスがライセンス保持部に存在する場合にはそのコンテンツの利用を可能とするための処理を行い、
コンテンツの利用が指示された際に、そのコンテンツについてのライセンスに、該コンピュータに関連ライセンスが存在すればそのコンテンツについてのライセンス自身の利用条件を変更する旨の変更指示が含まれる場合は、ライセンス保持部にその関連ライセンスが保持されていればそのコンテンツについてのライセンス自身の利用条件をその変更指示に応じて変更する、
処理を実行させるためのプログラム。
【請求項19】
コンテンツについてのライセンスを発行する発行側システムと、ライセンスを用いてコンテンツを利用する利用側システムと、を含むライセンス管理システムにより実行されるライセンス管理方法であって、
発行側システムは、
コンテンツについてのライセンスを発行する場合に、そのライセンスに応じて利用条件を変更すべき関連ライセンスがあるか否かを判定し、
関連ライセンスがあると判定した場合、利用側システム内にその関連ライセンスが存在すればその関連ライセンスの利用条件を変更する旨の変更指示を含むライセンスを発行し、
利用側システムは、
発行側システムから発行されたコンテンツのライセンスをライセンス保持部に格納し、
コンテンツの利用が指示された際に、そのコンテンツについての有効なライセンスがライセンス保持部に存在する場合にはそのコンテンツの利用を可能とするための処理を行い、
コンテンツの利用が指示された際に、そのコンテンツについてのライセンスに関連ライセンスの利用条件の変更指示が含まれる場合は、ライセンス保持部にその関連ライセンスが保持されていればその関連ライセンスの利用条件をその変更指示に応じて変更する変更する、
ライセンス管理方法。
【請求項20】
コンテンツについてのライセンスを発行する発行側システムと、ライセンスを用いてコンテンツを利用する利用側システムと、を含むライセンス管理システムが実行するライセンス管理方法であって、
発行側システムは、
コンテンツについてのライセンスを発行する場合に、そのライセンスの利用条件に影響を与える関連ライセンスがあるか否かを判定し、
関連ライセンスがあると判定した場合、利用側システム内にその関連ライセンスが存在すればそのコンテンツについてのライセンス自身の利用条件を変更する旨の変更指示を含むライセンスを発行し、
利用側システムは、
発行側システムから発行されたコンテンツについてのライセンスをライセンス保持部に格納し、
コンテンツの利用が指示された際に、そのコンテンツについての有効なライセンスがライセンス保持部に存在する場合にはそのコンテンツの利用を可能とするための処理を行い、
コンテンツの利用が指示された際に、そのコンテンツについてのライセンスに、該コンピュータに関連ライセンスが存在すればそのコンテンツについてのライセンス自身の利用条件を変更する旨の変更指示が含まれる場合は、ライセンス保持部にその関連ライセンスが保持されていればそのコンテンツについてのライセンス自身の利用条件をその変更指示に応じて変更する、
ライセンス管理方法。
【請求項1】
コンテンツについてのライセンスを発行する発行側システムと、
ライセンスを用いてコンテンツを利用する利用側システムと、
を含むライセンス管理システムであって、
発行側システムは、
コンテンツについてのライセンスを発行する場合に、そのライセンスに応じて利用条件を変更すべき関連ライセンスがあるか否かを判定する判定部と、
関連ライセンスがあると判定部が判定した場合、利用側システム内にその関連ライセンスが存在すればその関連ライセンスの利用条件を変更する旨の変更指示を含むライセンスを発行する発行処理部と、
を備え、
利用側システムは、
発行側システムから発行されたコンテンツのライセンスを保持するライセンス保持部と、
コンテンツの利用が指示された際に、そのコンテンツについての有効なライセンスがライセンス保持部に存在する場合にはそのコンテンツの利用を可能とするための処理を行うライセンス処理部と、
コンテンツの利用が指示された際に、そのコンテンツについてのライセンスに関連ライセンスの利用条件の変更指示が含まれる場合は、ライセンス保持部にその関連ライセンスが保持されていればその関連ライセンスの利用条件をその変更指示に応じて変更する変更処理部と、
を備える、ライセンス管理システム。
【請求項2】
コンテンツについてのライセンスを発行する発行側システムであって、
コンテンツについてのライセンスを発行する場合に、そのライセンスに応じて利用条件を変更すべき関連ライセンスがあるか否かを判定する判定部と、
関連ライセンスがあると判定部が判定した場合、利用側システム内にその関連ライセンスが存在すればその関連ライセンスの利用条件を変更する旨の変更指示を含むライセンスを発行する発行処理部と、
を備える発行側システム。
【請求項3】
ライセンスを用いてコンテンツを利用する利用側システムであって、
発行側システムから発行されたコンテンツのライセンスを保持するライセンス保持部と、
コンテンツの利用が指示された際に、そのコンテンツについての有効なライセンスがライセンス保持部に存在する場合にはそのコンテンツの利用を可能とするための処理を行うライセンス処理部と、
コンテンツの利用が指示された際に、そのコンテンツについてのライセンスに関連ライセンスの利用条件の変更指示が含まれる場合は、ライセンス保持部にその関連ライセンスが保持されていればその関連ライセンスの利用条件をその変更指示に応じて変更する変更処理部と、
を備える利用側システム。
【請求項4】
コンテンツについてのライセンスを発行する発行装置としてコンピュータを動作させるためのプログラムであって、該コンピュータに、
コンテンツについてのライセンスを発行する場合に、そのライセンスに応じて利用条件を変更すべき関連ライセンスがあるか否かを判定し、
関連ライセンスがあると判定した場合、利用側システム内にその関連ライセンスが存在すればその関連ライセンスの利用条件を変更する旨の変更指示を含む対象ライセンスを発行する、
処理を実行させるためのプログラム。
【請求項5】
請求項4記載のプログラムであって、
前記変更指示は、前記関連ライセンスを無効化する指示であることを特徴とするプログラム。
【請求項6】
請求項4記載のプログラムであって、
前記変更指示は、前記関連ライセンスの利用回数を変更する指示であることを特徴とするプログラム。
【請求項7】
請求項4記載のプログラムであって、
前記変更指示は、前記関連ライセンスの有効期限を変更する指示であることを特徴とするプログラム。
【請求項8】
請求項4記載のプログラムであって、
前記変更指示は、前記関連ライセンスの従量課金単価を変更する指示であることを特徴とするプログラム。
【請求項9】
コンピュータに、
発行側システムから発行されたコンテンツのライセンスをライセンス保持部に保持し、
コンテンツの利用が指示された際に、そのコンテンツについての有効なライセンスがライセンス保持部に存在する場合にはそのコンテンツの利用を可能とするための処理を行い、
コンテンツの利用が指示された際に、そのコンテンツについてのライセンスに関連ライセンスの利用条件の変更指示が含まれる場合は、ライセンス保持部にその関連ライセンスが保持されていればその関連ライセンスの利用条件をその変更指示に応じて変更する、
処理を実行させるためのプログラム。
【請求項10】
請求項9記載のプログラムであって、
前記コンピュータに、
コンテンツの利用が指示された際に、そのコンテンツについてのライセンスに関連ライセンスの利用条件の変更指示が含まれる場合は、ライセンス保持部にその関連ライセンスが保持されていなければ、そのコンテンツの使用を禁止する、
処理を更に実行させるためのプログラム。
【請求項11】
請求項9記載のプログラムであって、
前記変更指示は、前記関連ライセンスを無効化する指示であることを特徴とするプログラム。
【請求項12】
請求項11記載のプログラムであって、
前記関連ライセンスの利用条件を前記変更指示に応じて変更する処理は、前記関連ライセンスを無効化ライセンス記憶部に登録する処理を含み、
前記プログラムは、前記コンピュータに、
コンテンツの利用が指示された際に、そのコンテンツについてのライセンスが前記無効化ライセンス記憶部に登録されているか否かを調べ、登録されている場合には当該コンテンツの利用を禁止する、
処理を更に実行させる、ことを特徴とするプログラム。
【請求項13】
請求項11記載のプログラムであって、
前記関連ライセンスの利用条件を前記変更指示に応じて変更する処理は、前記関連ライセンスに対する前記変更指示を変更情報管理部に登録する処理を含み、
前記プログラムは、前記コンピュータに、
コンテンツの利用が指示された際に、そのコンテンツに対応するライセンスの変更指示が前記変更情報管理部に登録されているか否かを調べ、登録されている場合には当該ライセンス自体に記載された利用条件よりも前記変更情報管理部に登録された変更指示が示す利用条件を優先して当該コンテンツに適用する、
処理を更に実行させる、ことを特徴とするプログラム。
【請求項14】
コンテンツについてのライセンスを発行する発行側システムと、
ライセンスを用いてコンテンツを利用する利用側システムと、
を含むライセンス管理システムであって、
発行側システムは、
コンテンツについてのライセンスを発行する場合に、そのライセンスの利用条件に影響を与える関連ライセンスがあるか否かを判定する判定部と、
関連ライセンスがあると判定部が判定した場合、利用側システム内にその関連ライセンスが存在すればそのコンテンツについてのライセンス自身の利用条件を変更する旨の変更指示を含むライセンスを発行する発行処理部と、
を備え、
利用側システムは、
発行側システムから発行されたコンテンツについてのライセンスを保持するライセンス保持部と、
コンテンツの利用が指示された際に、そのコンテンツについての有効なライセンスがライセンス保持部に存在する場合にはそのコンテンツの利用を可能とするための処理を行うライセンス処理部と、
コンテンツの利用が指示された際に、そのコンテンツについてのライセンスに、該コンピュータに関連ライセンスが存在すればそのコンテンツについてのライセンス自身の利用条件を変更する旨の変更指示が含まれる場合は、ライセンス保持部にその関連ライセンスが保持されていればそのコンテンツについてのライセンス自身の利用条件をその変更指示に応じて変更する変更処理部と、
を備える、ライセンス管理システム。
【請求項15】
コンテンツについてのライセンスを発行する発行側システムであって、
コンテンツについてのライセンスを発行する場合に、そのライセンスの利用条件に影響を与える関連ライセンスがあるか否かを判定する判定部と、
関連ライセンスがあると判定部が判定した場合、利用側システム内にその関連ライセンスが存在すればそのコンテンツについてのライセンス自身の利用条件を変更する旨の変更指示を含むライセンスを発行する発行処理部と、
を備える発行側システム。
【請求項16】
ライセンスを用いてコンテンツを利用する利用側システムであって、
発行側システムから発行されたコンテンツについてのライセンスを保持するライセンス保持部と、
コンテンツの利用が指示された際に、そのコンテンツについての有効なライセンスがライセンス保持部に存在する場合にはそのコンテンツの利用を可能とするための処理を行うライセンス処理部と、
コンテンツの利用が指示された際に、そのコンテンツについてのライセンスに、該コンピュータに関連ライセンスが存在すればそのコンテンツについてのライセンス自身の利用条件を変更する旨の変更指示が含まれる場合は、ライセンス保持部にその関連ライセンスが保持されていればそのコンテンツについてのライセンス自身の利用条件をその変更指示に応じて変更する変更処理部と、
を備える利用側システム。
【請求項17】
コンテンツについてのライセンスを発行する発行装置としてコンピュータを動作させるためのプログラムであって、該コンピュータに、
コンテンツについてのライセンスを発行する場合に、そのライセンスの利用条件に影響を与える関連ライセンスがあるか否かを判定し、
関連ライセンスがあると判定した場合、利用側システム内にその関連ライセンスが存在すればそのコンテンツについてのライセンス自身の利用条件を変更する旨の変更指示を含むライセンスを発行する、
処理を実行させるためのプログラム。
【請求項18】
コンピュータに、
発行側システムから発行されたコンテンツについてのライセンスをライセンス保持部に保持し、
コンテンツの利用が指示された際に、そのコンテンツについての有効なライセンスがライセンス保持部に存在する場合にはそのコンテンツの利用を可能とするための処理を行い、
コンテンツの利用が指示された際に、そのコンテンツについてのライセンスに、該コンピュータに関連ライセンスが存在すればそのコンテンツについてのライセンス自身の利用条件を変更する旨の変更指示が含まれる場合は、ライセンス保持部にその関連ライセンスが保持されていればそのコンテンツについてのライセンス自身の利用条件をその変更指示に応じて変更する、
処理を実行させるためのプログラム。
【請求項19】
コンテンツについてのライセンスを発行する発行側システムと、ライセンスを用いてコンテンツを利用する利用側システムと、を含むライセンス管理システムにより実行されるライセンス管理方法であって、
発行側システムは、
コンテンツについてのライセンスを発行する場合に、そのライセンスに応じて利用条件を変更すべき関連ライセンスがあるか否かを判定し、
関連ライセンスがあると判定した場合、利用側システム内にその関連ライセンスが存在すればその関連ライセンスの利用条件を変更する旨の変更指示を含むライセンスを発行し、
利用側システムは、
発行側システムから発行されたコンテンツのライセンスをライセンス保持部に格納し、
コンテンツの利用が指示された際に、そのコンテンツについての有効なライセンスがライセンス保持部に存在する場合にはそのコンテンツの利用を可能とするための処理を行い、
コンテンツの利用が指示された際に、そのコンテンツについてのライセンスに関連ライセンスの利用条件の変更指示が含まれる場合は、ライセンス保持部にその関連ライセンスが保持されていればその関連ライセンスの利用条件をその変更指示に応じて変更する変更する、
ライセンス管理方法。
【請求項20】
コンテンツについてのライセンスを発行する発行側システムと、ライセンスを用いてコンテンツを利用する利用側システムと、を含むライセンス管理システムが実行するライセンス管理方法であって、
発行側システムは、
コンテンツについてのライセンスを発行する場合に、そのライセンスの利用条件に影響を与える関連ライセンスがあるか否かを判定し、
関連ライセンスがあると判定した場合、利用側システム内にその関連ライセンスが存在すればそのコンテンツについてのライセンス自身の利用条件を変更する旨の変更指示を含むライセンスを発行し、
利用側システムは、
発行側システムから発行されたコンテンツについてのライセンスをライセンス保持部に格納し、
コンテンツの利用が指示された際に、そのコンテンツについての有効なライセンスがライセンス保持部に存在する場合にはそのコンテンツの利用を可能とするための処理を行い、
コンテンツの利用が指示された際に、そのコンテンツについてのライセンスに、該コンピュータに関連ライセンスが存在すればそのコンテンツについてのライセンス自身の利用条件を変更する旨の変更指示が含まれる場合は、ライセンス保持部にその関連ライセンスが保持されていればそのコンテンツについてのライセンス自身の利用条件をその変更指示に応じて変更する、
ライセンス管理方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2007−199858(P2007−199858A)
【公開日】平成19年8月9日(2007.8.9)
【国際特許分類】
【出願番号】特願2006−15475(P2006−15475)
【出願日】平成18年1月24日(2006.1.24)
【出願人】(000005496)富士ゼロックス株式会社 (21,908)
【Fターム(参考)】
【公開日】平成19年8月9日(2007.8.9)
【国際特許分類】
【出願日】平成18年1月24日(2006.1.24)
【出願人】(000005496)富士ゼロックス株式会社 (21,908)
【Fターム(参考)】
[ Back to top ]