説明

コンテンツ配信システム、携帯通信端末装置、及び閲覧制御プログラム

【課題】有効期限のみを用いてコンテンツの閲覧を制御する構成と比較して、コンテンツ情報の機密性を保護できるようにする。
【解決手段】サーバ10Aとスマートフォン50Aとは順序が割り当てられた複数の乱数を共有し、序数(i)番目の乱数を暗号鍵として利用する。スマートフォン50Aは、暗号化顧客情報と、復号に用いる共通鍵Kdをi番目の乱数で暗号化した暗号化共通鍵X(i)を保持する。サーバ10Aは(i)番目の乱数に対応する復号鍵d(i)を算出してスマートフォン50Aに送付し、スマートフォン50Aは復号鍵d(i)を用いた復号処理により共通鍵Kdを算出し、復号鍵d(i)の有効期限切れ後または閲覧終了時に(i+1)番目の乱数で共通鍵Kdを再暗号化して暗号化共通鍵X(i+1)として保持し、(i+1)番目の乱数は消去する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンテンツ配信システム、携帯通信端末装置、及び閲覧制御プログラムに関する。
【背景技術】
【0002】
携帯電話端末等の携帯端末からWebサーバにコンテンツの配付を要求し、該要求に対してWebサーバより配付されたコンテンツを携帯端末で閲覧するシステムにおいては、携帯電話端末が盗難された場合等に備えてコンテンツ情報の流出を阻止する工夫が特に重要となる。
【0003】
携帯端末でWebサーバから取得したコンテンツ情報をブラウザ内のキャッシュメモリのみに保管し、ブラウザ終了時には該コンテンツ情報を消去することでコンテンツ情報の流出を阻止することができるが、閲覧の度にコンテンツ情報をダウンロードしなくても済むように、コンテンツ情報を装置本体内に保持することを基本とし、コンテンツの保護の強化を図ったものも知られている。
【0004】
例えば、下記特許文献1には、企業用のモバイルPCなどの端末を盗まれたり、紛失したりした場合に個人情報を外部に流失させないようにするために、サーバが端末に秘密鍵を送付し、端末は保持している公開鍵と送付された秘密鍵が対応している場合はその起動および動作の継続を許可する技術が開示されている。
【0005】
また、コンテンツ情報の保護に関する他の公知技術として、特許文献2には、正記憶制御装置と副記憶制御装置とが公衆通信回線を介してリモートコピーを実行する計算機システムにおいて、耐タンパ性を持つ暗号機能の内部で、暗号化コンテンツを復号し、新しい暗号鍵で再暗号化する技術が開示されている。
【0006】
また、特許文献3には、ネットワークを介して相互に接続される鍵管理サーバとクライアントから構成される暗号システムにおいて、クライアントが保持している暗号化固有鍵を、サーバから送付された新しい暗号化固有鍵で置き換えることで鍵の更新を行う技術が開示されている。
【0007】
また、特許文献4には、公開鍵暗号方式を用いた配信システムにおいて、サーバが配信用秘密鍵を更新用公開鍵を用いて暗号化して暗号化秘密鍵を生成するとともに、該暗号化秘密鍵をクライアントに送出し、クライアントはデータ配信の際に使用される配信用秘密鍵を、更新用秘密鍵を用いて暗号化秘密鍵を必要に応じて復号し、配信用秘密鍵を更新する技術が開示されている。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特開2007−074581号公報
【特許文献2】特開2002−215462号公報
【特許文献3】特開2002−314527号公報
【特許文献4】特開2002−374240号公報
【発明の概要】
【発明が解決しようとする課題】
【0009】
本発明は、有効期限のみを用いてコンテンツの閲覧を制御する構成と比較して、コンテンツ情報の機密性を保護できるコンテンツ配信システム、携帯通信端末装置及び閲覧制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【0010】
上記目的を達成するために、請求項1記載のコンテンツ配信システムの発明は、暗号化された暗号化コンテンツ情報を管理する管理装置と、前記管理装置から前記暗号化コンテンツ情報を取得し、復号化して閲覧する閲覧装置とを有し、前記管理装置は、前記閲覧装置から序数(i)を含む閲覧制御情報の発行要求を受け付けると、前記閲覧装置と共有する複数の乱数中の(i)番目の乱数に対応する復号鍵情報と有効期限情報を含む閲覧制御情報を発行する閲覧制御情報発行手段を具備し、前記閲覧装置は、前記管理装置から取得した前記暗号化コンテンツ情報を格納する格納手段と、序数(i)を計数する計数手段と、前記管理装置と共有する前記複数の乱数中の前記序数(i)に対応する(i)番目の乱数により暗号化した暗号化共通鍵情報を保持する保持手段と、前記管理装置に対して、前記序数(i)を含む閲覧制御情報の発行を要求する要求手段と、前記要求手段による前記閲覧制御情報の発行要求に応答して前記管理装置から送信される前記閲覧制御情報を受信し、該閲覧制御情報に含まれる前記復号鍵情報を用いて前記保持手段により保持されている前記暗号化共通鍵情報を復号化して共通鍵情報を算出する算出手段と、前記算出手段により算出された前記共通鍵情報を用い、前記格納手段により格納される前記暗号化コンテンツ情報を閲覧可能なコンテンツ情報に復号化して表示する表示制御手段と、受信した前記閲覧制御情報に含まれる前記有効期限情報が示す有効期限が切れた場合、前記共通鍵算出手段により算出された前記共通鍵情報を前記計数手段により計数される序数(i+1)に対応する(i+1)番目の乱数により再暗号化して前記保持手段が保持する前記暗号化共通鍵を更新する更新手段と、前記更新手段による前記暗号化共通鍵の更新後、前記再暗号化の対象となった前記共通鍵情報、該共通鍵情報の再暗号化に用いた前記共有乱数中の(i+1)番目の乱数、及び前記閲覧制御情報を消去する消去手段とを具備する。
【0011】
請求項2記載の発明は、請求項1記載の発明において、前記更新手段は、前記表示制御手段により表示された前記コンテンツ情報の閲覧終了指示操作を受け付けることにより、前記保持手段が保持する前記暗号化共通鍵を更新する。
【0012】
請求項3記載の発明は、請求項1または2記載の発明において、前記管理装置と前記閲覧装置とは、初期値となる乱数と、一方向性関数を互いに保持し、共有する前記複数の乱数中の前記(i)番目の乱数として、互いに、前記初期値となる乱数に前記一方向性関数を(i)回作用させて得た擬似乱数を用いる。
【0013】
請求項4記載の発明は、請求項1乃至3のいずれかに記載の発明において、前記管理装置は、前記閲覧制御情報発行手段により、管理装置署名情報を更に含む前記閲覧制御情報を発行し、前記閲覧装置は、受信した前記閲覧制御情報に含まれる前記管理装置署名情報の正当性を検証する検証手段を具備する。
【0014】
請求項5記載の発明は、請求項1乃至4のいずれかに記載の発明において、前記閲覧装置は、受信した前記閲覧制御情報に含まれる前記有効期限情報が示す有効期限の延長を要求する有効期限延長要求手段と、前記有効期限延長要求手段による前記有効期限延長要求に対して前記管理装置から送信される有効期限延長許可指示に基づいて前記有効期限を延長する有効期限延長手段とを更に具備する。
【0015】
請求項6記載の発明は、請求項5記載の発明において、前記閲覧装置は、前記有効期限延長要求手段により、閲覧装置署名情報を更に含めた前記有効期限の期限延長要求を行ない、前記管理装置は、前記有効期限延長要求手段による前記有効期限延長要求に含まれる前記閲覧装置署名情報の正当性を検証する検証手段と、前記検証手段により前記閲覧装置署名情報の正当性が検証された場合に前記有効期限延長許可指示を前記閲覧装置に応答送信する応答送信手段とを具備する。
【0016】
請求項7記載の携帯通信端末装置の発明は、暗号化されたコンテンツ情報を管理する管理装置に通信可能に接続され、前記管理装置から取得した前記暗号化コンテンツ情報を格納する格納手段と、序数(i)を計数する計数手段と、前記管理装置と共有する複数の乱数中の前記序数(i)に対応する(i)番目の乱数により暗号化した暗号化共通鍵情報を保持する保持手段と、前記管理装置に対して、前記序数(i)を含む閲覧制御情報の発行を要求する要求手段と、前記要求手段による前記閲覧制御情報の発行要求に応答して前記管理装置から送信される当該閲覧装置と共有する前記複数の乱数中の(i)番目の乱数に対応する復号鍵情報と有効期限情報を含む閲覧制御情報を受信し、該閲覧制御情報に含まれる前記復号鍵情報を用いて前記保持手段により保持されている前記暗号化共通鍵情報を復号化して共通鍵情報を算出する算出手段と、前記算出手段により算出された前記共通鍵情報を用い、前記格納手段により格納される前記暗号化コンテンツ情報を閲覧可能なコンテンツ情報に復号化して表示する表示制御手段と、受信した前記閲覧制御情報に含まれる前記有効期限情報が示す有効期限が切れた場合、前記共通鍵算出手段により算出された前記共通鍵情報を前記計数手段により計数される序数(i+1)に対応する(i+1)番目の乱数により再暗号化して前記保持手段が保持する前記暗号化共通鍵を更新する更新手段と、前記更新手段による前記暗号化共通鍵の更新後、前記再暗号化の対象となった前記共通鍵情報、該共通鍵情報の再暗号化に用いた前記共有乱数中の(i+1)番目の乱数、及び前記閲覧制御情報を消去する消去手段とを具備する。
【0017】
請求項8記載の閲覧制御プログラムの発明は、暗号化されたコンテンツ情報を管理する管理装置に通信可能に接続され、前記管理装置から前記暗号化コンテンツ情報を取得し、閲覧可能に復号化する制御をコンピュータにより実行する閲覧装置に実装され、前記コンピュータを、前記管理装置から取得した前記暗号化コンテンツ情報を格納する格納手段、序数(i)を計数する計数手段、前記管理装置と共有する複数の乱数中の前記序数(i)に対応する(i)番目の乱数により暗号化した暗号化共通鍵情報を保持する保持手段、前記管理装置に対して、前記序数(i)を含む閲覧制御情報の発行を要求する要求手段、前記要求手段による前記閲覧制御情報の発行要求に応答して前記管理装置から送信される当該閲覧装置と共有する前記複数の乱数中の(i)番目の乱数に対応する復号鍵情報と有効期限情報を含む閲覧制御情報を受信し、該閲覧制御情報に含まれる前記復号鍵情報を用いて前記保持手段により保持されている前記暗号化共通鍵情報を復号化して共通鍵情報を算出する算出手段、前記算出手段により算出された前記共通鍵情報を用い、前記格納手段により格納される前記暗号化コンテンツ情報を閲覧可能なコンテンツ情報に復号化して表示する表示制御手段、受信した前記閲覧制御情報に含まれる前記有効期限情報が示す有効期限が切れた場合、前記共通鍵算出手段により算出された前記共通鍵情報を前記計数手段により計数される序数(i+1)に対応する(i+1)番目の乱数により再暗号化して前記保持手段が保持する前記暗号化共通鍵を更新する更新手段、前記更新手段による前記暗号化共通鍵の更新後、前記再暗号化の対象となった前記共通鍵情報、該共通鍵情報の再暗号化に用いた前記共有乱数中の(i+1)番目の乱数、及び前記閲覧制御情報を消去する消去手段として機能させる。
【発明の効果】
【0018】
請求項1記載の発明によれば、有効期限のみを用いてコンテンツの閲覧を制御する構成と比較して、コンテンツ情報の機密性を保護できる。
【0019】
請求項2記載の発明によれば、請求項1記載の発明において、閲覧が繰り返される毎に異なる乱数を用いてコンテンツの保護強化を図ることができる。
【0020】
請求項3記載の発明によれば、請求項1または2記載の発明において、乱数シードから複数の擬似乱数を生成してコンテンツの復号に用いることができる。
【0021】
請求項4記載の発明によれば、請求項1乃至3のいずれかに記載の発明において、正当な管理装置から取得したチケットに限りコンテンツの閲覧が行える。
【0022】
請求項5記載の発明によれば、請求項1乃至4のいずれかに記載の発明において、チケットの有効期限が切れて閲覧が突然できなくなることを回避できる。
【0023】
請求項6記載の発明によれば、請求項5記載の発明において、ビューア側からの署名情報の正当性が検証された場合に限り有効期限の延長サービスを利用できる。
【0024】
請求項7記載の発明によれば、有効期限のみを用いてコンテンツの閲覧を制御する構成と比較して、コンテンツ情報の機密性を確保した携帯端末を提供することができる。
【0025】
請求項8記載の発明によれば、有効期限のみを用いてコンテンツの閲覧を制御する構成と比較して、コンテンツ情報の機密性を確保できるように動作させることができる。
【図面の簡単な説明】
【0026】
【図1】本発明の一実施形態に係わるコンテンツ配信システムの全体構成を示す概念図。
【図2】コンテンツ管理サーバの機能構成を示すブロック図。
【図3】携帯通信端末の機能構成を示すブロック図。
【図4】実施の形態に係るシステムのコンテンツ閲覧制御シーケンスを示す図。
【図5】実施例1に係るビューア内部の情報の流れを示す概念図。
【図6】実施例1に係るビューアの機能構成を示すブロック図。
【図7】実施例1に係る顧客情報閲覧処理動作を示すフローチャート。
【図8】図7における停止処理1を示すフローチャート。
【図9】図7における停止処理2を示すフローチャート。
【図10】実施例1に係るチケット有効期限延長処理動作を示すフローチャート。
【図11】実施例2に係るコンテンツ閲覧制御の情報の流れを示す概念図。
【発明を実施するための形態】
【0027】
図1は、本発明の一実施形態に係わるコンテンツ配信システムの全体構成を示す概念図である。
【0028】
このシステムは、コンテンツ情報を管理するコンテンツ管理サーバ10(10−1,10−2)をインターネット20に収容するとともに、インターネット20と接続される公衆回線網30内の無線基地局40と携帯通信端末50(50−1,50−2)を無線通信回線により接続して構成される。
【0029】
図1において、コンテンツ管理サーバ10、携帯通信端末50をそれぞれ2台ずつしか明示していないが、これ以上の数で配置できることはいうまでもない。
【0030】
携帯通信端末50としては、無線電話端末、スマートフォン、携帯情報端末(PDA)等が用いられる。
【0031】
このシステムにおいて、コンテンツ管理サーバ10は、例えば、暗号化された暗号化コンテンツ情報を管理しており、携帯通信端末50は、コンテンツ管理サーバ10から暗号化されたコンテンツ情報を受信して保持し、利用者(ユーザ)のコンテンツ閲覧開始操作に基づいて、保持している暗号化コンテンツ情報を復号化し、閲覧可能に表示部に表示するコンテンツ閲覧制御機能を有する。
【0032】
図2にはコンテンツ管理サーバ10の機能構成を示し、図3には携帯通信端末50の機能構成を示している。
【0033】
図2において、コンテンツ管理サーバ10は、例えば、汎用のコンピュータで構成され、携帯通信端末50とインターネット20、公衆回線網30を介して通信する際にインターネット20との間での通信インタフェースを司る通信インタフェース(I/F)部11、動作プログラムや携帯通信端末50に配布する共有乱数列、暗号化共通鍵等の各種情報を記憶する記憶部12、ハードディスク駆動装置(HDD)等によって構成され、コンテンツ情報(例えば、暗号化されたコンテンツ情報)を記憶する記憶装置13、CPU(Central Processing Unit)や、主記憶手段としてのメモリであるROM(Read Oniy Memory)やRAM(Random Access Memory)を有し、装置全体の制御を行なう制御部14を具備して構成される。
【0034】
コンテンツ管理サーバ10の制御部14には、各機能部を統括的に制御する主制御部141の他、携帯通信端末50に対する例えば通信I/F部11を通じた暗号化コンテンツ情報の配付、携帯通信端末50側でのコンテンツ閲覧制御に必要な動作環境の初期設定、初期設定された動作環境下で携帯通信端末50側に保持する暗号化コンテンツ情報を復号するために用いる復号鍵等の情報の配付制御を行なう配付制御部142が備わる。
【0035】
一方、携帯通信端末50は、図3に示すように、公衆回線網30内の基地局40との無線通信制御を行なう無線通信部51、動作プログラムや、コンテンツ管理サーバ10から配布される暗号化コンテンツ情報、共有乱数列等の各種情報を記憶する記憶部52、液晶ディスプレイ等から成り、各種情報を表示する表示部53、テンキーやタッチパネル等から構成され、各種情報の入力や指示操作を行なう操作部54、CPUや、主記憶手段としてのメモリであるROMやRAMを有し、装置全体の制御を行なう制御部55、送話音声等の音声を入力するマイクロフォン(マイク)56、受話音声等の音声を再生(発生)するスピーカ57を具備して構成される。
【0036】
携帯通信端末50の制御部55には、各機能部を統括的に制御する主制御部551の他、序数(i)を計数するカウンタ(61)を含み、初期設定後の動作環境下でユーザの閲覧指示操作に基づいて選択された暗号化コンテンツ情報を復号化して閲覧可能に表示部53に表示する閲覧制御部552が設けられる。
【0037】
上述したコンテンツ管理サーバ10と携帯通信端末50の構成において、両者の間で上記初期設定に際してデータを送受信するために、コンテンツ管理サーバ10には通信I/F部11とは別の外部I/F部を設け、携帯通信端末50には、無線通信部51とは別の外部I/F部を設けても良い。
【0038】
なお、コンテンツ管理サーバ10において、配布制御部142は、コンテンツ情報の管理に係る制御機能も有する。
【0039】
コンテンツ情報の管理制御において、配布制御部142は、例えば、PC(パーソナル・コンピュータ)等から送られてくる暗号化されていない(平文の)コンテンツ情報を格納する場合、該コンテンツ情報を暗号化し、コンテンツ格納部13の所定の記憶領域に、該記憶領域から読み出し可能に保持する。
【0040】
平文のコンテンツ情報の暗号化は共通鍵を用いて行われるが、本実施形態においては、複数の携帯通信端末50に対して1つの共通鍵を用いる場合と、各携帯通信端末50毎にそれぞれ対応する共通鍵を用いる場合とが想定される。
【0041】
前者の場合には、1つの共通鍵を用いて暗号化された暗号化コンテンツ情報が全ての携帯通信端末に対応して管理され、後者の場合には、それぞれの共通鍵を用いて暗号化された各暗号化コンテンツ情報がそれぞれの携帯通信端末50に対応して管理される。
【0042】
また、コンテンツ管理サーバ10において、配付制御部142は、複数の乱数を、例えば、記憶部12内に保持して管理し、該複数の乱数を後述する初期設定作業により各携帯通信端末50に配布して当該各携帯通信端末50と共有する。
【0043】
この複数の乱数が記憶部12の内部にて管理されるイメージを図2に例示している。
【0044】
図2において、記憶部12に格納される複数の乱数には、それぞれ、1,2,…,(i−1),i,(i+1)の順番が割り当てられている。
【0045】
各順番の乱数の値は、それぞれ、r(1),r(2),…,r(i−1),r(i),r(i+1),…であり、それぞれ、例えば、2048bitのデータサイズを有する。
【0046】
このように、本実施の形態において、複数の乱数としては、序数(i)に対応する単一の固有の値を有する乱数を、序数(i=1,2,3,…,i,…)の順番に並べた乱数列が用いられる。
【0047】
以下の説明において、複数の乱数とは上記乱数列のことであり、該複数の乱数のうちの1番目の乱数,2番目の乱数,…,(i)番目の乱数とは、それぞれ、乱数r(1),r(2),…,r(i)を指す。
【0048】
コンテンツ管理サーバ10では上記共有乱数を上述した共通鍵の復号化に用いる復号鍵の生成に利用し、他方、携帯通信端末50では、上記共有乱数を共通鍵の再暗号化に用いる。
【0049】
上述した構成を有するコンテンツ管理サーバ10と携帯通信端末50とは、例えば、図4の制御シーケンスに従がって、まず、コンテンツ閲覧制御に係る初期設定処理を実行する。
【0050】
この初期設定処理に際して、コンテンツ管理サーバ10の配付制御部142は、順序が割り当てられた複数(例えば、k個)の乱数情報、暗号化共通鍵情報及び暗号化されたコンテンツ情報を、例えば、VPN(Virtual Private Network)等を用いて携帯通信端末50へと送信する(ステップS101)。
【0051】
上述した初期設定に用いる各種の情報のうち、乱数情報、暗号化共通鍵情報は、例えば、図示しない情報処理装置(PC)において事前に作成され、該情報処理装置からインターネット20を介してコンテンツ管理サーバ10に送信され、記憶部12に記憶されている。
【0052】
また、この例では、コンテンツ管理サーバ10が管理するコンテンツ情報は、予め暗号化された状態でコンテンツ格納部13に格納されたものであり、該コンテンツ格納部13から読み出されて携帯通信端末50に送られる。
【0053】
他方、携帯通信端末50において、主制御部551は、コンテンツ管理サーバ10から送られてくる、順序が割り当てられた複数の乱数情報、暗号化共通鍵情報及び暗号化コンテンツ情報を受信し(ステップS121)、該受信した各情報を、例えば、記憶部52のそれぞれの該当領域に記憶する。
【0054】
上記初期設定処理が完了した後、携帯通信端末50の主制御部551では、インターネット20にアクセスして、例えば、コンテンツ管理サーバ10が保持するコンテンツ情報の提供元が運営するWebサイトから、コンテンツ閲覧制御プログラムをダウンロードし(ステップS122)、閲覧制御部552に格納する(ステップS123)。
【0055】
なお、上記コンテンツ閲覧制御プログラムをコンテンツ管理サーバ10に格納しておき、携帯通信端末10がコンテンツ管理サーバ10にアクセスしてその格納先からコンテンツ閲覧制御プログラムをダウンロードするようにしても良い。
【0056】
この他、携帯通信端末10にコンテンツ閲覧制御プログラムを予めインストールしておくようにしても良い。
【0057】
上記コンテンツ閲覧制御プログラムは、ビューア(viewer)と呼ばれ、記憶部52に既に取り込まれている暗号化コンテンツ情報を復号化して表示部53に表示する処理機能を有する。
【0058】
上記ビューアが取り込まれた携帯通信端末50の閲覧制御部552では、ユーザによる操作部54での閲覧開始指示操作を受け付けると(ステップS131)、電子チケットが存在するか(保持されているか)否かをチェックする(ステップS124)。
【0059】
電子チケットは、コンテンツ管理サーバ10が、携帯通信端末50に対して、閲覧制御に用いる各種制御情報〔(i)番目の乱数(図2参照)に対応する復号鍵を含む〕を送るために用いる閲覧制御情報である。
【0060】
ここで、上記電子チケットが存在する場合には(ステップS124でYES)、該電子チケットに含まれる復号鍵を用いたコンテンツ閲覧処理(ステップS128以降の処理)へと移行する。
【0061】
これに対して、電子チケットが存在しない場合(ステップS124でNO:後述のステップS128で電子チケットの署名が正しくないと判定された場合も同様)、閲覧制御部552は、カウンタ61により現在カウントされている序数(i)を含む電子チケットの発行要求をコンテンツ管理サーバ10に対して送信する(ステップS125)。
【0062】
なお、本実施例においては、電子チケットの発行機能をコンテンツ管理サーバ10とは別のサーバ(電子チケット発行サーバ)に設け、電子チケットが存在しない場合には、上記チケット発行サーバに対して電子チケットの発行要求を行なう構成としても良い。
【0063】
他方、コンテンツ管理サーバ10では、携帯通信端末50からチケットの発行要求を受け付けると(ステップS102)、該チケットの発行要求の署名を検証し(ステップS103)、携帯通信端末50の署名であることが検証されると、該チケットの発行要求に含まれる序数(i)を参照して(i)番目の乱数に対応する復号鍵を含む電子チケットを生成し(ステップS104)、該電子チケットをチケット要求元の携帯通信端末50に対して送信する(ステップS105)。
【0064】
これに対し、携帯通信端末50は、コンテンツ管理サーバ10から送られる電子チケットを受信すると(ステップS126)、閲覧制御部552が、該電子チケットの署名を検証し(ステップS128)、コンテンツ管理サーバ10の署名であることが検証されると、該電子チケットに含まれる復号鍵を取り出して暗号化コンテンツ情報の復号化処理へと移行する。
【0065】
コンテンツ情報の復号化処理においては、受信した電子チケットから取り出した復号鍵情報を用いて暗号化共通鍵情報を復号化するとともに、次いで共通鍵を算出し(ステップS129)、該共通鍵で暗号化コンテンツ情報を平文に復号化したうえで(ステップS130)、該復号化されたコンテンツ情報を表示部53に表示する(ステップS131)。
【0066】
その後、コンテンツ情報の表示中に、ユーザから閲覧終了指示操作を受け付けると(ステップS132)、上記表示を消し、待機状態に戻る。
【0067】
なお、コンテンツ管理サーバ10が発行する電子チケットには有効期限(例えば、効力が有効な最終の期日情報)を示す情報が含まれている。
【0068】
これにより、携帯通信端末50では、ステップS126での電子チケットの受信後、ステップS131までの処理と併せて、閲覧制御部552が、該電子チケットに含まれる有効期限をチェックし、有効期限が期限切れとなった場合には、暗号化共通鍵の更新処理(再暗号化処理)を実施する(ステップS127)。
【0069】
具体的には、カウンタ61で序数(i)を(i+1)にインクリメントし、その時点で算出済みの共通鍵を(i+1)番目の乱数(図2参照)を用いて再暗号化して保持する。
【0070】
なお、この暗号化共通鍵の更新処理を実施した際には、後で詳述するように、再暗号化の対象となった共通鍵、該共通鍵の再暗号化に用いた共有乱数中の(i+1)番目の乱数、現在保持している電子チケット、及びその中から取り出した復号鍵を消去する。
【0071】
上述の如く、携帯通信端末50にコンテンツ展開制御部552として取り込まれたビューアは、コンテンツ管理サーバ10と順番が割り当てられている複数の乱数を共有し、順次(i)番目の乱数を暗号鍵として用いて〔あるいは、(i)番目の乱数で暗号鍵を生成し該暗号鍵を用いて〕、コンテンツの閲覧制御を実現する。
【0072】
以下、本実施の形態に係るコンテンツ配信システムにおけるコンテンツ配信処理動作について具体的な実施の例を挙げてより詳しく説明する。
【実施例1】
【0073】
実施例1においては、図1に示すコンテンツ配信システムを顧客情報管理システムに適用したものである。
【0074】
この顧客情報管理システムでは、図4に示すコンテンツ管理サーバ10、携帯通信端末50及び利用者の関係が、これら各々を示すブロック内に添付したように、会社(A社)の顧客情報を記載した顧客情報ファイルを管理する顧客情報管理サーバ10A、A社のセールス・パーソンが用いるスマートフォン50A、及びそのユーザUの関係となる。
【0075】
すなわち、本実施例では、コンテンツ管理サーバ10、携帯通信端末50としては、それぞれ、A社の顧客情報を記載した顧客情報ファイルを管理する顧客情報管理サーバ10A、スマートフォン50Aが用いられ、A社のセールス・パーソンであるユーザU(以下、単にユーザ)がスマートフォン50Aを使用して顧客情報管理サーバ10AからA社の顧客情報ファイルをダウンロードし、営業活動のために社外において、上記顧客情報ファイルを閲覧するものである。
【0076】
上記顧客情報ファイルは、顧客情報管理サーバ(以下、サーバ)10A内のディスク(コンテンツ格納部13:図2参照)に保存されており、共通鍵暗号方式であるAES(Advanced Encryption Standard)暗号256bit鍵を用いて暗号化が施されている。
【0077】
ユーザが使用するスマートフォン50Aには暗号化された顧客情報ファイルを復号化してユーザに提示するためのビューア60(閲覧制御部552:図3参照)が搭載されており、ユーザはこのビューア60を用いて顧客情報ファイルの閲覧を行う。
【0078】
本実施例では、顧客情報ファイルの保護のために、AES暗号に加えて公開鍵暗号のRSA(Rivest−Shamir−Adleman:暗号化署名鍵交換)が使用されるものとする。
【0079】
他方、サーバ10Aでは、上記顧客情報ファイルの閲覧サービスを提供する前の初期設定作業においてk個の乱数(図2の記憶部12に保持される乱数列参照)を生成する。
【0080】
すなわち、サーバ10Aは、1からkまでの順番が割り当てられ、それぞれが、r(1),r(2),…,r(i),…,r(k)の値を有する複数の乱数を結合して一つの乱数列を作成する。
【0081】
更に、サーバ10Aは、ユーザUによる顧客情報ファイルの利用に先立ち、予めVPN(Virtual Private Network)等の安全な経路を用いて、上記乱数列、顧客情報ファイル、RSA暗号の法数N、および暗号化共通鍵をスマートフォン50Aへ送付しておく(図4のステップS101参照)。
【0082】
この他、例えば、サーバ10Aとスマートフォン50AをUSBケーブル等により接続し、サーバ10Aからスマートフォン50Aに対して外部I/F部を通じて上記の各情報を送付するようにして良い。
【0083】
初期設定作業においては、サーバ10Aからスマートフォン50Aに送られる情報のうち、顧客情報ファイルは、上述した通り、256bitのAESを用いて暗号化されている。
【0084】
ここで、該顧客情報ファイルのAESの暗号化に利用される共通鍵をKdとおく。
【0085】
また、本実施例では、AES暗号に加えて公開鍵暗号のRSAが使用されるものであり、サーバ10Aからスマートフォン50Aへ送付される上記共通鍵Kdは、RSA等の公開鍵暗号を用いて暗号化される。
【0086】
上記初期設定作業における共通鍵Kdの暗号化において、乱数r(1)が暗号鍵として使用される。
【0087】
このときの暗号化共通鍵の具体的な値X(1)は、
X(1)=〔Kd^{r(1)} mod N〕
に同値な最小の正の整数に等しい。
【0088】
同様に、以下に説明する共通鍵Kdの暗号化手順において、乱数r(i)を鍵とした場合の暗号化共通鍵X(i)の具体的な値は、
X(i)=〔Kd^{r(i)} mod N〕
と同値な最小の正の整数となる。
【0089】
サーバ10Aはこれらの暗号鍵〔乱数r(i)〕に対応する復号鍵d(i)を算出するために、秘密情報として1024bitの素数pおよびqを保持している。
【0090】
素数pおよびqは、法数〔モジュロ:「mod」〕Nの素因数であり、N=pqが成立する。
【0091】
法数Nは、例えば、図4に示すスマートフォン50Aに対して固有に割り当てられたもので、A社の別のユーザが使用するスマートフォン(例えば、50A−2、50A−3,…:図4で図示を省略)には上記Nとは異なる法数が各スマートフォンにそれぞれ対応して割り当てられる。
【0092】
これにより、本実施例の顧客情報管理システムでは、一つのスマートフォン50Aが紛失あるいは盗難に会った場合でも、他のスマートフォン(50A−2,50A−3,…)の安全性に影響が及ばなくなる。
【0093】
後で詳述するように(図5参照)、サーバ10Aはスマートフォン50Aへ送付する(i)番目の電子チケットの中に序数(i)、および暗号鍵(乱数)r(i)に対応する復号鍵d(i)等を含める。
【0094】
ここで、電子チケットの順番や序数を示す“(i)”は、スマートフォン50Aに対応する値である。
【0095】
すなわち、サーバ10Aは、複数のスマートフォン50を対象にして電子チケットを配布する場合には、各スマートフォン50毎に上記“(i)”(その値は、各スマートフォン50毎に閲覧回数等に応じた値となる)を管理する。
【0096】
このため、各スマートフォンで閲覧回数の異なるような場合には、各スマートフォン50毎に、例えば、5番目の電子チケット〔5番目の乱数r(5)に対応する復号鍵d(5)を含む〕が配付されたり、7番目の電子チケット5番目の乱数r(5)に対応する復号鍵d(5)を含む〕が配付されたりということが起こり得る。
【0097】
また、サーバ10Aは、ユークリッドの互助法を用いて以下の式
r(i)d(i)≡〔1 mod (p−1)(q−1)〕
を満たす正の整数d(i)を算出し、これを暗号鍵r(i)に対応する復号鍵d(i)とする。
【0098】
上記復号鍵d(i)の生成、並びに該復号鍵d(i)の復号処理での利用方法の理解を容易にするため、図5には、本実施例で用いる電子チケットとビューア60内部の情報の関係、及びビューア60が実施する処理の流れを概念的に示している。
【0099】
図5において、ビューア60は、上記初期設定処理にてサーバ10Aから送られてくる共有乱数列、顧客情報ファイル、RSA暗号の法数N、および暗号化共通鍵の他、当該スマートフォン50Aの電子署名鍵Kvを保持している。
【0100】
なお、当該初期設定作業完了時点での暗号化共通鍵については、サーバ10Aで1番目の乱数r(1)を用いて生成されて送られてきた、
X(1)=〔Kd^{r(1)} mod N〕
の値(同値な最小の正の整数に等しい値)が保持されている。
【0101】
このとき、暗号化共通鍵X(1)を受信、保持した時点でカウンタ61のカウント値は初期値“0(零)”から“1”にインクリメントされる。
【0102】
これ以後、ビューア60は、ユーザから閲覧開始指示操作を受け付けた際に、電子チケットT(i)が存在しない場合、カウンタ61による序数(i)のカウント値iを含むチケット発行要求をサーバ10Aに対して送信する。
【0103】
サーバ10Aでは、スマートフォン50Aからチケット発行要求を受けると、スマートフォン50Aと共有する乱数中の(i)番目の乱数r(i)と秘密情報(p、q)から乱数r(i)に対応する復号鍵d(i)を算出し、該復号鍵d(i)の他、サーバ10Aの電子署名情報Ks、復号鍵有効期限情報、序数(i)等を含む電子チケットT(i)を作成し、該電子チケットT(i)を要求元のスマートフォン50Aに送信する。
【0104】
他方、上記電子チケットT(i)を受信したスマートフォン50Aにおいて、ビューア60は、該電子チケットT(i)をチケット保管ディレクトリDtに保管し、これに含まれている有効期限情報を読み出して有効期限切れでないことを確認すると、当該電子チケットT(i)から復号鍵d(i)を取り出し、該復号鍵d(i)を用いて暗号化共通鍵X(i)を復号化し、更に該復号された値から復号鍵Kdを算出する。
【0105】
そして、ビューア60は、算出した復号鍵Kdで暗号化顧客情報ファイルを暗号化処理して平文の顧客情報ファイル)にし、該顧客情報ファイルを表示部53に表示する。
【0106】
顧客情報ファイルの表示中に、ユーザから閲覧終了指示操作を受け付けた場合、あるいは、サーバ10Aから受信して保持している電子チケットT(i)の有効期限が期限切れとなった場合、ビューア60は、カウンタ61により序数(i)をカウントさせてカウント値を(i+1)とした(インクリメントした)うえで、暗号化顧客情報ファイルの復号化に用いた共通鍵Kdを、該カウント値(i+1)に対応する(i+1)番目の乱数を用いて(i+1)番目の暗号化復号鍵X(i+1)を算出し(復号鍵kdを再暗号化し)、保持する。
【0107】
復号鍵Kdの再暗号化〔(X(i+1))が終了すると、それまでに用いた共通鍵Kd、該共通鍵Kdの再暗号化に用いた(i+1)番目の乱数、保持している電子チケットT(i)、及び該電子チケットT(i)から取り出した復号鍵d(i)を消去し、待機状態に移行する。
【0108】
図6は、図5に示す一連の処理を実現するビューア60の機能構成を示すブロック図である。
【0109】
すなわち、本実施例に係るビューア60は、図5に示す一連の処理から明らかなように、「顧客情報(コンテンツ情報)を管理する管理装置(サーバ10A)に接続され、サーバ10Aが管理する暗号化コンテンツ情報、及びサーバ10Aと共有する複数の乱数を保持する閲覧装置(スマートフォン50A)」に閲覧制御プログラムとして実装され、序数i(i=1,2,3,…)を計数する計数手段(カウンタ)61と、共有乱数中の計数手段61により計数される序数(i)を含む閲覧制御情報(チケット)の発行を要求するチケット要求手段62と、チケット要求手段62によるチケットの発行要求に応答してサーバ10Aから送出される共有乱数中の(i)番目の乱数に対応する復号鍵情報と有効期限情報を含むチケットを受信し、該チケットに含まれる復号鍵情報を用いて、既に保持されている暗号化共通鍵情報を復号化して共通鍵を算出する共通鍵算出機能、及び共通鍵算出機能により算出された共通鍵を用いて暗号化コンテンツ情報からコンテンツ情報を復号化して表示部に表示する表示制御機能から成る閲覧制御手段63と、共有乱数中の計数手段61が計数する序数(i)に対応する(i)番目の乱数により暗号化した暗号化共通鍵情報を保持する保持機能、及びサーバ10Aから受信されたチケットに含まれる有効期限情報が示す有効期限の期限が切れると、共通鍵算出機能により算出された共通鍵を計数手段61が計数する序数(i+1)に対応する(i+1)番目の乱数により再暗号化して保持機能が保持する暗号化共通鍵を更新する更新機能から成る再暗号化手段64と、更新機能による暗号化共通鍵の更新後、再暗号化の対象となった共通鍵、該共通鍵の再暗号化に用いた有乱数中の(i+1)番目の乱数、及びチケットを消去する消去手段65と、暗号化コンテンツ情報の閲覧制御に用いる各種の情報を管理する情報管理手段66とを具備して構成される。
【0110】
情報管理手段66が管理する情報としては、チケット保管ディレクトリDtに保管する電子チケットT(i)、電子チケットT(i)から取り出した復号鍵d(i)、復号鍵d(i)を用いて生成される暗号化共通鍵X(i)、共通鍵Kd、再暗号化共通鍵X(i+1)、初期設定作業により取得される共有乱数列、暗号化共通鍵X(1)、暗号化コンテンツ情報、PC等から設定される当該ビューア60の電子署名Kv等が含まれる(図5参照)。
【0111】
以下、本実施例に係る顧客情報管理システムにおけるスマートフォン50Aによる顧客情報ファイルの閲覧動作について図7〜図10を参照して説明する。
【0112】
図7は、本実施例に係るスマートフォン50Aでの顧客情報閲覧処理動作を示すフローチャートである。
【0113】
図7において、ユーザが操作部54から顧客情報の閲覧開始を指示すると(ステップS210)、ビューア60は、チケット保管ディレクトリDtを検索し、顧客情報の表示に必要な電子チケットT(i)を探す(ステップS211)。
【0114】
チケット保管ディレクトリDtに電子チケットT(i)が存在する場合(ステップS211でYES)、後述するステップS214〜S240までの処理を行う。
【0115】
これに対して、チケット保管ディレクトリDtに電子チケットT(i)が存在しない場合(ステップS211でNO)、ビューア60は、サーバ10Aと通信を行い、該サーバ10Aに対して顧客情報の閲覧に必要な電子チケットT(i)の発行を要求する(ステップS212)。
【0116】
このチケット発行要求時にビューア60が送付するチケット発行要求情報には、カウンタ61内の序数(i)を含め、電子署名鍵Kvを用いてビューア60の電子署名を付与する。
【0117】
その際、必ずしもサーバ10Aとの通信に使用する通信路は安全なものにする必要はなく、通常の3G(第3世代移動通信)回線などでも良い。
【0118】
サーバ10Aはビューア60からのチケット発行要求を受け取ると、まず、発行要求に付与された電子署名を検証する。
【0119】
これが正しい署名であると検証された場合は、発行要求内の序数(i)に対応する復号鍵d(i)を含んだ電子チケットT(i)を作成し、該電子チケットT(i)にサーバ10Aの電子署名Ksを付与して送付する。
【0120】
上記ステップS212でのチケット発行要求に対して、サーバ10A側で作成されて返送される電子チケットT(i)を受信すると(ステップS213)、ビューア60は、該電子チケットT(i)を、一旦、チケット保管ディレクトリDtに保管したうえでステップS214以降の処理を行なう。
【0121】
すなわち、サーバ10Aからの電子チケットT(i)が受信された場合、あるいは受信済みの電子チケットの存在が確認された場合、ステップS214において、ビューア60は、受信した(または、存在した)電子チケットT(i)に付与されているサーバ10Aの電子署名、序数(i)の検証を行い(ステップS214)、次いで電子チケットT(i)から有効期限情報を読み出して該電子チケットT(i)〔つまり、復号鍵d(i)〕の有効期限の正当性を検証する(ステップS215)。
【0122】
なお、ステップS214で検証する序数(i)の正当性とは、カウンタ61内の序数(i)と電子チケットT(i)内にストアされている序数(i)が一致することを意味する。
【0123】
ここで、サーバ10Aの電子署名、序数(i)が正当でないか(ステップS214でNO)、電子チケットT(i)の有効期限が正当でない(ステップS215でNO)の少なくともいずれか一方であることにより、電子チケットT(i)の正当性が確認できなかった場合、ビューア60は、ステップS230で停止処理1を実施する。
【0124】
この停止処理1(ステップS230)において、ビューア60は、図8に示すように、直ちに電子チケットT(i)をチケット保管ディレクトリDtから削除し(ステップS231)、ユーザに対して顧客情報の表示ができないことを報知し(ステップS232)、処理を停止する。
【0125】
その際、ステップS231での電子チケットT(i)の削除については、後で詳述する図9のステップS243〜S248までの処理、すなわち、“(i+1)番目の乱数を用いた復号鍵Kdの再暗号化、該再暗号化後にメモリに残る復号鍵di、共通鍵Kd、暗号鍵〔乱数r(i+1)〕の消去処理”として実施する。
【0126】
一方、サーバ10Aの電子署名、序数(i)が正当で(ステップS214でYES)、かつ、電子チケットT(i)の有効期限も正当である(ステップS215でYES)ことにより、電子チケットT(i)の正当性が確認できた場合、ビューア60は、該電子チケットT(i)から復号鍵d(i)を取り出す(ステップS216)。
【0127】
次に、この取り出した復号鍵d(i)を用いて、既に保持している暗号化共通鍵X(i)を復号化し、更に共通鍵Kdを算出する(ステップS217)。
【0128】
暗号化共通鍵X(i)の具体的な復号処理については、序数が(i)の場合、(i)番目の乱数r(i)を公開鍵とした場合の暗号化共通鍵X(i)に対して、
〔X(i)^{d(i)} mod N〕
に同値な最小の正の整数を算出する。
【0129】
このとき、
r(i)d(i)≡〔1 mod (p−1)(q−1)〕
とオイラーの定理により、
〔X(i)^{d(i)}≡(Kd^{r(i)})^{d(i)}
≡Kd mod N〕
が成立するため、上記演算により、共通鍵Kdを正常に復号できることが分かる。
【0130】
このようにして、復号鍵d(i)で復号化した暗号化共通鍵X(i)から更に共通鍵Kdを求めたうえで(ステップS217)、ビューア60は、該共通鍵kdを用いて暗号化顧客情報ファイルを復号処理することによりユーザが閲覧できるように平文の顧客情報にする(ステップS218)。
【0131】
そして、上記復号化処理により平文にされた顧客情報を表示部53に表示する(ステップS219)。
【0132】
顧客情報の表示中、ビューア60では、ステップS240において、閲覧を正常終了する際は〔図8のステップ231における、電子チケットT(i)の有効期間が過ぎたために停止する場合と同様〕、共通鍵Kdの再暗号化と、該再暗号化に用いた(i+1)番目の乱数等の関連する情報の消去処理を含む停止処理2を実施する。
【0133】
この停止処理2に移行すると、ビューア60は、図9に示すように、まず、閲覧終了指示を受け付けたかどうかをチェックし(ステップS241)、閲覧終了指示がない間は、顧客情報の表示を続行する。
【0134】
この間、ユーザから閲覧終了指示を受け付けると(ステップS241でYES)、顧客情報の表示を停止し(ステップS242)、カウンタ61内の序数(i)をインクリメントする(ステップS243)。
【0135】
次いで、スマートフォン50Aのメモリ内に存在する復号済みの共通鍵Kdをr(i+1)を暗号鍵として再暗号化したうえで新たな暗号化共通鍵として保存する(ステップS244)。
【0136】
この更新後の暗号化共通鍵の保存が完了すると、ビューア60は、スマートフォン50Aのメモリ内に存在する復号鍵d(i)、共通鍵Kd、暗号鍵r(i+1)を消去し(ステップS245)、更に、チケット保管ディレクトリDt内の電子チケットT(i)を消去する(ステップS246)。
【0137】
引き続き、ビューア60は、カウンタ61の計数値〔序数(i)〕が乱数の数kに達したか否かをチェックする(ステップS247)。
【0138】
なお、本実施例では、電子チケットT(i)の有効期限が切れた場合にも乱数がインクリメントされるため、本処理時(閲覧正常終了時)と、電子チケットT(i)の有効期限切れの両方にて乱数が使用される(使用できる乱数が1個ずつ減っていく)。
【0139】
ここで、保持しているk個の乱数がまだ残っており、カウンタ61の計数値〔序数(i)〕が乱数の数kに達していない判定された場合(ステップS247でNO)、上記一連の処理を終了する。
【0140】
これに対し、k個の乱数を全て使い果たしており、カウンタ61の計数値〔序数(i)〕が乱数の数kに達したと判定された場合(ステップS247でYES)、ビューア60は、その後に用いる複数の乱数(使い果たした乱数とは異なる乱数列)をサーバ10Aから取得する処理を実施し(ステップS248)、該取得した複数の乱数を新たな共有乱数として保持した後、処理を終了する。
【0141】
ステップS248においては、ビューア60は、サーバ10Aとの間でVPN等の経路を用いて共有乱数の取得を行なう。
【0142】
なお、図7〜図9に基づく閲覧処理の説明においては、ユーザから閲覧終了指示を受け付けたときにだけ電子チケットT(i)の有効期間をチェックし(図7のステップS215)、有効期限が切れていれば、暗号化共通鍵の再暗号化、及び再暗号化に用いた(i+1)番目の乱数等の関連する情報の消去を実施する(図8のステップS231)例を挙げているが、待機中も含めて、常時、電子チケットT(i)の有効期限をチェックし、有効期限が切れた時、即座に、上記再暗号化、及び関連する情報の消去を実施する構成としても良い。
【0143】
また、本実施例においては、電子チケットT(i)の有効期限を延長する機能を付加した構成としても良い。
【0144】
この場合における有効期限延長処理について、図10を参照して説明する。
【0145】
図10において、ビューア60は、例えば、スマートフォン50Aの待機状態において、電子チケットT(i)の有効期限延長機能の選択が指示されたか否かを監視している(ステップS301)。
【0146】
ここで、有効期限延長機能の選択を受け付けた場合(ステップS301でYES)、電子チケットT(i)が存在するか否かを更にチェックする(ステップS302)。
【0147】
ここで、電子チケットT(i)が存在しない場合(ステップS302でNO)、その旨(チケットが存在せず、有効期限の延長が行えない旨)をユーザに報知し(ステップS310)、処理を終了する。
【0148】
これに対して、電子チケットT(i)が存在する場合(ステップS302でYES)、該電子チケットT(i)に含まれる有効期限情報が示す有効期限を、有効期限の延長を受け付ける旨のガイダンスと共に表示部53に表示する(ステップS303)。
【0149】
上記有効期限の表示中、ユーザから有効期限の延長実行指示が受け付けられると(ステップS304でYES)、ビューア60は、サーバ10Aに対してスマートフォン50Aの電子署名を付与した有効期限延長要求情報を送付し(ステップS305)、サーバ10Aはこの署名を検証した上で有効期限延長許可情報を返送する。
【0150】
この有効期限延長許可情報には、サーバ10Aの電子署名が付与されている。
【0151】
一方、ビューア50Aは、ステップS305で送付した有効期限延長要求情報に対してサーバ10Aから返送される有効期限延長許可情報を受信すると(ステップS306でYES)、その中に含まれるサーバ10Aの電子署名を検証したうえで有効期限の延長処理を実施し(ステップS307)、その後、処理を終了する。
【0152】
なお、本実施例では、ユーザが有効期限の延長を指示することにより予め決められた所定の期間分だけ有効期限を延ばす例を挙げたが、上記ステップS304で有効期限の延長指示を行なう際に延長期限(期日)を指定し、上記ステップS307において該指定された期日までの有効期限を延長する構成としても良い。
【0153】
この他、例えば、ユーザから有効期限の延長実行指示がなくても、コンテンツ閲覧中に有効期限が過ぎたことを条件に有効期限を延長する処理(例えば、図10のS305、S306、S306から成る処理)を進める構成としても良い。
【0154】
なお、本実施例に係るスマートフォン50Aにおいては、保持している電子チケットの有効期限が切れると、前述した更新機能のよる暗号化共通鍵の更新(再暗号化)を行なう必要がある(図8のステップS231参照)。
【0155】
この更新処理は、スマートフォン50AのCPUの資源を用いるため、コンテンツの閲覧中に、上記有効期限が切れると、CPUの性能次第ではコンテンツの閲覧を中断してしまう場合も有り得る。
【0156】
このような場合に、上述した有効期限延長機能を用い、コンテンツ閲覧中に有効期限が過ぎたことを条件に有効期限を延長することにより、ビューア60が停止することによるユーザの利便性の低下を回避することが可能である。
【0157】
更に、電子チケットの発行元のサーバ10Aから許可を得た場合に限り、有効期限を延長する機能(図10に示す機能等)を利用できるようにすることで、安全性を担保することが可能である。
【0158】
このように、本実施例では、ユーザによるコンテンツ情報の閲覧の正常停止時、およびチケット(電子チケット)の有効期間が過ぎた時点で、メモリに存在する復号鍵d(i)、共通鍵Kd、暗号鍵〔r(i+1)〕、およびチケット保管ディレクトリDt内の電子チケットT(i)がスマートフォン50Aから消去される。
【0159】
更に、コンテンツ閲覧に使用された共通鍵Kdは、乱数r(i+1)を暗号鍵として再暗号化されて保存される。
【0160】
このため、スマートフォン50Aが盗難に会った場合でも、一定の時間が経過してチケットの有効期限が切れた後には、新たにサーバ10Aから乱数r(i+1)番目の電子チケットT(i)の発行されない限り、攻撃者がどのように攻撃を行おうとも共通鍵Kdおよび顧客情報を取得することはできない。
【0161】
ユーザは、スマートフォン50Aの盗難後、直ちにサーバ10Aに対してチケットの発行停止要求を行うと(該発行停止後には新たな電子チケットが発効されることがないため)、現在保持している電子チケットT(i)の有効期限切れ後、スマートフォン10A上の顧客情報は安全に保護されることになる。
【実施例2】
【0162】
実施例1では、サーバ10Aとスマートフォン50A(ビューア60)の両者間で順序が割り当てられた複数の乱数列〔r(1),r(2),…,r(k)〕を共用したが、実施例2においては、これら両者の間で、乱数シード(初期値)を共有し、該乱数シードに複数回の一方向性関数を作用させて生成される擬似乱数(pseudorandom numbers)を用いて暗号化処理を行なう。
【0163】
本実施例に係るサーバ(便宜的に10Bと呼称)とスマートフォン(同、50Bと呼称)との間のコンテンツ閲覧制御については、実施例1における乱数列に代えて乱数シードを共有し、該乱数シードから順に生成した擬似乱数Pnを暗号鍵とし、各種情報に反映させる点以外の処理機能は実施例1のものと同等である。
【0164】
図11は、本実施例に係る顧客情報管理システムのサーバ(顧客情報管理サーバ)10Bとスマートフォン50B間のコンテンツ閲覧制御に情報の流れを示す概念図である。
【0165】
図11に示すように、本実施例において、スマートフォン50Bに実装されるビューア60Bは、サーバ10Bとの間で擬似乱数を生成するための所定の値(初期値)を有する乱数シードRsと、一方向性関数f(x)を互いに共有する。
【0166】
そのうえで、ビューア60Bは、閲覧の正常終了や電子チケットT(i)の有効期限切れに際して、その都度、カウンタ61で序数(i)をインクリメントしながら、ユーザから閲覧開始指示を受け付けた際に電子チケットT(i)が存在しない場合にはこの時の序数(i)を含むチケット発行要求をサーバ10Bに送る。
【0167】
サーバ10Bでは、ビューア60Bからのチケット発行要求を受信すると、その中の序数(i)に基づいて、該序数(i)が“1”の場合には、乱数シードRsに対して一方向関数f(x)を1回だけ作用させた演算値〔Pn(1)〕を用いて復号鍵d(1)を生成し、該復号鍵d(1)を含む電子チケットT(1)を生成してチケット要求元のスマートフォン50Bに応答送信する。
【0168】
同様にして、ビューア60Bからのチケット発行要求に含まれる序数が(i)の場合には、乱数シードRsに対して一方向関数f(x)をi回だけ作用させた演算値〔Pn(i)〕を用いて復号鍵d(i)を生成し、該復号鍵d(i)や有効期限情報等を含む電子チケットT(i)を生成してチケット要求元のスマートフォン50Bに応答送信する。
【0169】
他方、ビューア60B側は、サーバ10Bから電子チケットT(i)を受信すると、サーバ10Bの電子署名の正当性検証を経て、該電子チケットT(i)から復号鍵d(i)を取り出す。
【0170】
そして、該復号鍵d(i)を用いて既に保持している暗号化復号鍵〔Kd^{Pn(i)} mod N〕を復号化し、更に共通鍵Kdを算出したうえで、該共通鍵Kdを用いて暗号化顧客情報ファイルを顧客情報(平文)に復号化して閲覧可能に表示する。
【0171】
この顧客情報の閲覧が正常終了した場合、あるいは電子チケットT(i)が有効期限切れになった場合、ビューア60Bは、序数を(i+1)にインクリメントしたうえで、乱数シードRsに対して一方向関数f(x)を(i+1)回だけ作用させた演算値〔Pn(i+1)〕を用いて共通鍵Kdを再暗号化し、該再暗号化された暗号化復号鍵〔Kd^{Pn(i+1)} mod N〕を保持する。
【0172】
そして、該暗号化復号鍵を保持した後、メモリに残っている復号鍵di、共通鍵Kd、暗号鍵〔Pn(i+1)〕を電子チケットT(i)とともに消去する。
【0173】
実施例2においても、実施例1と同様、暗号化されたコンテンツを一度ダウンロードすれば、これを何度も表示することが可能である。
【0174】
この他、本発明は、上記し、且つ図面に示す実施例に限定することなく、その要旨を変更しない範囲内で適宜変形して実施できるものである。
【0175】
例えば、上記実施例では、(i)番目の乱数や擬似乱数を暗号鍵として用いる例を挙げたが、これら(i)番目の乱数や擬似乱数を暗号鍵を生成するために用いるようにして良い。
【0176】
また、上記実施例では、特にコンテンツ保護のためにRSA暗号を利用しているが、EIGamal暗号、あるいは楕円曲線暗号、NTRUなどの他の公開鍵暗号を利用しても同様の効果を得ることができる。
【0177】
また、AES暗号の代わりに、トリプルDESなどの他の共通鍵暗号を使用しても同様の効果を得ることが可能である。
【0178】
また、上記実施例では、CPUや、ROMあるいはRAMなどの記憶手段を有するコンピュータで実現される携帯通信端末に閲覧制御プログラムを実装し、該コンピュータを、例えば、図6に示す、計数手段(カウンタ)61、チケット要求手段62、閲覧制御手段63、再暗号化手段64、消去手段65及び情報管理手段等として機能させるようにしているが、該プログラムをメモリカード等の記憶媒体に格納して提供するようにしても良い。
【産業上の利用可能性】
【0179】
本発明は、暗号化コンテンツ情報を保持し、ユーザ操作により暗号化コンテンツ情報を復号化して閲覧可能に表示するコンテンツ配信システム、スマートフォン等の携帯通信端末、及びこれに実装する閲覧制御プログラムに適用できる。
【符号の説明】
【0180】
10…コンテンツ管理サーバ、10A,10B…顧客情報管理サーバ、11…通信インタフェース(I/F)部、12…記憶部、13…コンテンツ格納部、14…制御部、141…主制御部、142…配付制御部、20…インターネット、30…公衆回線網、40…無線基地局、50…携帯通信端末、50A,50B…スマートフォン、51…無線通信部、52…記憶部、53…表示部、54…操作部、55…制御部、551…主制御部、552…閲覧制御部、60…ビューワ、61…計数手段(カウンタ)、62…チケット要求手段、63…閲覧制御手段、64…再暗号化手段、65…消去手段、66…情報管理手段

【特許請求の範囲】
【請求項1】
暗号化された暗号化コンテンツ情報を管理する管理装置と、前記管理装置から前記暗号化コンテンツ情報を取得し、復号化して閲覧する閲覧装置とを有し、
前記管理装置は、
前記閲覧装置から序数(i)を含む閲覧制御情報の発行要求を受け付けると、前記閲覧装置と共有する複数の乱数中の(i)番目の乱数に対応する復号鍵情報と有効期限情報を含む閲覧制御情報を発行する閲覧制御情報発行手段
を具備し、
前記閲覧装置は、
前記管理装置から取得した前記暗号化コンテンツ情報を格納する格納手段と、
序数(i)を計数する計数手段と、
前記管理装置と共有する前記複数の乱数中の前記序数(i)に対応する(i)番目の乱数により暗号化した暗号化共通鍵情報を保持する保持手段と、
前記管理装置に対して、前記序数(i)を含む閲覧制御情報の発行を要求する要求手段と、
前記要求手段による前記閲覧制御情報の発行要求に応答して前記管理装置から送信される前記閲覧制御情報を受信し、該閲覧制御情報に含まれる前記復号鍵情報を用いて前記保持手段により保持されている前記暗号化共通鍵情報を復号化して共通鍵情報を算出する算出手段と、
前記算出手段により算出された前記共通鍵情報を用い、前記格納手段により格納される前記暗号化コンテンツ情報を閲覧可能なコンテンツ情報に復号化して表示する表示制御手段と、
受信した前記閲覧制御情報に含まれる前記有効期限情報が示す有効期限が切れた場合、前記共通鍵算出手段により算出された前記共通鍵情報を前記計数手段により計数される序数(i+1)に対応する(i+1)番目の乱数により再暗号化して前記保持手段が保持する前記暗号化共通鍵を更新する更新手段と、
前記更新手段による前記暗号化共通鍵の更新後、前記再暗号化の対象となった前記共通鍵情報、該共通鍵情報の再暗号化に用いた前記共有乱数中の(i+1)番目の乱数、及び前記閲覧制御情報を消去する消去手段と
を具備するコンテンツ配信システム。
【請求項2】
前記更新手段は、
前記表示制御手段により表示された前記コンテンツ情報の閲覧終了指示操作を受け付けることにより、前記保持手段が保持する前記暗号化共通鍵を更新する
請求項1記載のコンテンツ配信システム。
【請求項3】
前記管理装置と前記閲覧装置とは、
初期値となる乱数と、一方向性関数を互いに保持し、
共有する前記複数の乱数中の前記(i)番目の乱数として、互いに、前記初期値となる乱数に前記一方向性関数を(i)回作用させて得た擬似乱数を用いる
請求項1または2記載のコンテンツ配信システム。
【請求項4】
前記管理装置は、
前記閲覧制御情報発行手段により、管理装置署名情報を更に含む前記閲覧制御情報を発行し、
前記閲覧装置は、
受信した前記閲覧制御情報に含まれる前記管理装置署名情報の正当性を検証する検証手段
を具備する請求項1乃至3のいずれに記載のコンテンツ配信システム。
【請求項5】
前記閲覧装置は、
受信した前記閲覧制御情報に含まれる前記有効期限情報が示す有効期限の延長を要求する有効期限延長要求手段と、
前記有効期限延長要求手段による前記有効期限延長要求に対して前記管理装置から送信される有効期限延長許可指示に基づいて前記有効期限を延長する有効期限延長手段と
を更に具備する請求項1乃至4のいずれかに記載のコンテンツ配信システム。
【請求項6】
前記閲覧装置は、
前記有効期限延長要求手段により、閲覧装置署名情報を更に含めた前記有効期限の期限延長要求を行ない、
前記管理装置は、
前記有効期限延長要求手段による前記有効期限延長要求に含まれる前記閲覧装置署名情報の正当性を検証する検証手段と、
前記検証手段により前記閲覧装置署名情報の正当性が検証された場合に前記有効期限延長許可指示を前記閲覧装置に応答送信する応答送信手段と
を具備する請求項5記載のコンテンツ配信システム。
【請求項7】
暗号化されたコンテンツ情報を管理する管理装置に通信可能に接続され、
前記管理装置から取得した前記暗号化コンテンツ情報を格納する格納手段と、
序数(i)を計数する計数手段と、
前記管理装置と共有する複数の乱数中の前記序数(i)に対応する(i)番目の乱数により暗号化した暗号化共通鍵情報を保持する保持手段と、
前記管理装置に対して、前記序数(i)を含む閲覧制御情報の発行を要求する要求手段と、
前記要求手段による前記閲覧制御情報の発行要求に応答して前記管理装置から送信される当該閲覧装置と共有する前記複数の乱数中の(i)番目の乱数に対応する復号鍵情報と有効期限情報を含む閲覧制御情報を受信し、該閲覧制御情報に含まれる前記復号鍵情報を用いて前記保持手段により保持されている前記暗号化共通鍵情報を復号化して共通鍵情報を算出する算出手段と、
前記算出手段により算出された前記共通鍵情報を用い、前記格納手段により格納される前記暗号化コンテンツ情報を閲覧可能なコンテンツ情報に復号化して表示する表示制御手段と、
受信した前記閲覧制御情報に含まれる前記有効期限情報が示す有効期限が切れた場合、前記共通鍵算出手段により算出された前記共通鍵情報を前記計数手段により計数される序数(i+1)に対応する(i+1)番目の乱数により再暗号化して前記保持手段が保持する前記暗号化共通鍵を更新する更新手段と、
前記更新手段による前記暗号化共通鍵の更新後、前記再暗号化の対象となった前記共通鍵情報、該共通鍵情報の再暗号化に用いた前記共有乱数中の(i+1)番目の乱数、及び前記閲覧制御情報を消去する消去手段と
を具備する携帯通信端末装置。
【請求項8】
暗号化されたコンテンツ情報を管理する管理装置に通信可能に接続され、前記管理装置から前記暗号化コンテンツ情報を取得し、閲覧可能に復号化する制御をコンピュータにより実行する閲覧装置に実装され、
前記コンピュータを、
前記管理装置から取得した前記暗号化コンテンツ情報を格納する格納手段、
序数(i)を計数する計数手段、
前記管理装置と共有する複数の乱数中の前記序数(i)に対応する(i)番目の乱数により暗号化した暗号化共通鍵情報を保持する保持手段、
前記管理装置に対して、前記序数(i)を含む閲覧制御情報の発行を要求する要求手段、
前記要求手段による前記閲覧制御情報の発行要求に応答して前記管理装置から送信される当該閲覧装置と共有する前記複数の乱数中の(i)番目の乱数に対応する復号鍵情報と有効期限情報を含む閲覧制御情報を受信し、該閲覧制御情報に含まれる前記復号鍵情報を用いて前記保持手段により保持されている前記暗号化共通鍵情報を復号化して共通鍵情報を算出する算出手段、
前記算出手段により算出された前記共通鍵情報を用い、前記格納手段により格納される前記暗号化コンテンツ情報を閲覧可能なコンテンツ情報に復号化して表示する表示制御手段、
受信した前記閲覧制御情報に含まれる前記有効期限情報が示す有効期限が切れた場合、前記共通鍵算出手段により算出された前記共通鍵情報を前記計数手段により計数される序数(i+1)に対応する(i+1)番目の乱数により再暗号化して前記保持手段が保持する前記暗号化共通鍵を更新する更新手段、
前記更新手段による前記暗号化共通鍵の更新後、前記再暗号化の対象となった前記共通鍵情報、該共通鍵情報の再暗号化に用いた前記共有乱数中の(i+1)番目の乱数、及び前記閲覧制御情報を消去する消去手段
として機能させる閲覧制御プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate