説明

暗号化データ配信サービスシステム

【課題】複雑な暗号鍵管理を必要とせず、許可された利用者および端末においてのみデータの閲覧・利用可能とすることができるようにする。
【解決手段】配信サーバ30では、配信するデータを暗号化して送信し、クライアント端末10では、受信したデータを当該利用者およびクライアント端末10に固有の共通鍵で復号化し、閲覧または利用する。そして代理中継サーバ20では、配信サーバ30から暗号化されたデータを受信して復号化し、その復号化したデータを当該利用者およびクライアント端末10に固有の共通鍵で暗号化してクライアント端末10へ送信する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ(コンテンツ)を暗号化配信することで許可された利用者および端末においてのみそのデータを閲覧・利用を可能とする暗号化データ配信サービスシステムに関し、特にメモリ、ユーザインタフェースなどの仕様がPCに比べ制限されている携帯型端末に対して暗号化データ配信サービスを効率的に行うのに適した暗号化データ配信サービスシステムに関するものである。
【背景技術】
【0002】
近年、データを公開鍵暗号方式で暗号化配信し、特定の利用者のみにそのデータの閲覧・利用を可能とすることで、データの著作権保護、不正コピーの禁止の機能を持つネットワークを介した暗号化データ配信サービスが利用されるようになった。
しかしながら、暗号化通信を行う際に必要となる公開鍵や秘密鍵の取り扱いは、ユーザインタフェースが制限された携帯型端末では操作が難しく、また公開鍵暗号方式は、共通鍵暗号方式に比べ処理量が多いため、メモリ量などが制限された携帯型端末では、十分な処理速度を得るのが難しい。
【0003】
一方、鍵を効率よく取り扱うための暗号化通信システムも提案されている(例えば、特許文献1など参照)。図7に示すように、この暗号化通信システムは、複数のユーザ側計算機1と、複数のマーチャント側計算機2と、中継装置3と、第三者機関4とから構成されている。このような構成を有する従来の暗号化システムは次のように動作する。
任意のユーザ側計算機1と中継装置3の両方において、第三者機関4の認証の下でユーザ共通鍵を保持し、同様にマーチャント側計算機2と中継装置3の両方において、第三者機関4の認証の下でマーチャント共通鍵を保持する。そして、マーチャント側計算機2は送信するメッセージを、マーチャント共通鍵で暗号化して中継装置3に送り、中継装置3において、マーチャント共通鍵で復号化し、さらにユーザ共通鍵で暗号化してユーザ側計算機1に送信し、ユーザ側計算機1において、受信したメッセージをユーザ共通鍵で復号する。
【0004】
このとき、共通鍵暗号方式の代わりに、公開鍵暗号方式を使って、ユーザ側計算機1にユーザ秘密鍵を保持するとともに中継装置3にユーザ公開鍵を保持し、またマーチャント側計算機2にマーチャント秘密鍵を保持するとともに中継装置3にマーチャント公開鍵を保持して、上記と同様の暗号化通信を行うことが可能である。
そのため、ユーザ側計算機1およびマーチャント側計算機2において、暗号化通信する際、予め指定された中継装置3との通信のための暗号鍵のみを扱えばよいので、暗号鍵の取り扱いの煩雑さが減少し、また多数の計算機間での暗号化通信に必要な各暗号鍵を管理しなくてよいので、鍵管理を効率よく行うことを実現している。
【0005】
【特許文献1】特開平10−341223号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかしながら、このような従来の暗号化通信システムでは、以下のような問題点があった。まず第1に、配信サービス側が、中継装置までの通信において特定の利用者に応じた暗号化を行っていないため、このような中継方式の暗号化通信では、ある特定の利用者および端末に対してのみ閲覧・利用を許可するようなデータを配信することができないという問題点があった。第2に、第三者機関によって発行された暗号鍵を使っているため、配信された暗号化データは、暗号鍵を漏らせば、他の利用者や端末でも閲覧・利用が可能となってしまうという問題点があった。
本発明はこのような課題を解決するためのものであり、複雑な暗号鍵管理を必要とせず、データを許可された利用者および端末においてのみ閲覧・利用可能とすることができる暗号化データ配信サービスシステムを提供することを目的としている。
【課題を解決するための手段】
【0007】
このような目的を達成するために、本発明にかかるデータ配信サービスシステムは、データを暗号化して配信することにより、特定の利用者および端末のみにおいて利用可能とするデータ配信サービスシステムにおいて、配信するデータを暗号化して送信する配信サーバと、受信したデータを当該利用者およびその端末に固有の共通鍵で復号化し、閲覧または利用する利用者端末と、前記配信サーバから暗号化されたデータを受信して復号化し、その復号化したデータを当該利用者および前記端末に固有の共通鍵で暗号化した形式に変換して前記端末へ送信する代理中継サーバとを備えている。
【発明の効果】
【0008】
本発明によれば、代理中継サーバにより、配信サーバから暗号化されたデータが受信されて復号化され、その復号化したデータが当該利用者および端末に固有の共通鍵で暗号化した形式に変換されて端末へ送信される。
したがって、端末側では共通鍵暗号方式を使うだけでよく、配信サーバと代理中継サーバとの間で公開鍵・秘密鍵を用いたとしてもその煩雑な鍵管理を代理中継サーバに委託でき、複雑な暗号鍵管理を必要とせず、データを許可された利用者および端末においてのみ閲覧・利用可能とすることができる。また、共通鍵暗号方式は公開鍵暗号方式に比べ処理が容易なため、比較的処理能力が劣る携帯型端末であっても、暗号化データ配信サービスシステムを実現できる。さらに、当該利用者およびその端末に固有の共通鍵を動的に生成して、代理中継サーバへ更新登録するようにしてもよく、これにより共通鍵が端末に永続的に保持されなくなるため、共通鍵の盗用が極めて困難となり高い安全性が得られる。
【発明を実施するための最良の形態】
【0009】
次に、本発明の実施の形態について図面を参照して説明する。
図1は本発明の一実施の形態にかかる暗号化データ配信サービスシステムを示すブロック図である。
この暗号化データ配信サービスシステムは、データ(コンテンツ)を暗号化して配信する配信サーバ30と、配信サーバ30からの暗号化されたデータを一旦復号化して再び暗号化して中継する代理中継サーバ20と、代理中継サーバ20からのデータを復号化して閲覧・利用するクライアント端末10とから構成される。
【0010】
代理中継サーバ20には、配信サーバ30およびクライアント端末10との通信を管理する通信インタフェース部21、配信サーバ30から受信した暗号化データを復号する復号化処理部25、クライアント端末に送信するデータを暗号化する暗号化処理部24、利用者の種々の情報、特に復号化処理に用いる利用者の秘密鍵および暗号化処理に用いる共通鍵を管理する利用者情報テーブル22、配信データのアクセス制御情報が蓄積されている配信データ情報テーブル23、およびこれら各部を制御して代理中継処理を行う中継制御部26が設けられている。
【0011】
クライアント端末10には、代理中継サーバ20との通信を管理する通信インタフェース部11、利用者の操作を処理するユーザインタフェース部14、利用者およびクライアント端末10に固有の共通鍵を生成する暗号鍵生成部13、代理中継サーバ20から受信したデータを復号化処理する復号化処理部12、閲覧・利用したデータの利用履歴を管理するデータ利用履歴情報テーブル15、およびこれら各部を制御して暗号化されたデータを閲覧・利用する端末制御部16が設けられている。
【0012】
次に、図1および図2を参照して、本実施の形態の代理中継サーバ20の動作について詳細に説明する。図2は代理中継サーバの処理動作を示すフローチャートである。
代理中継サーバ20の中継制御部26では、まず、通信インターフェース部21を介してクライアント端末10の接続要求を待ち、接続要求があれば(ステップ100:YES)、利用者のログイン処理で利用者の認証を行う(ステップ110)。例えば、クライアント端末10で利用者のアカウント名とパスワードを入力し、代理中継サーバ側に保持されているアカウント名とパスワードに一致するかどうかチェックすることで、利用者の認証を行い、ログイン処理をする。このような認証情報は、利用者情報テーブル22で保持するが、認証の方式としては、さまざまな手法を適用することが可能である。
【0013】
ここで、図3を参照して、ステップ110での認証処理について説明する。図3は代理中継サーバにおける認証処理を示すフローチャートである。
まず、中継制御部26では、利用者情報テーブル22に保持されている利用者のアカウント名を検索し、一致する利用者のアカウント名から、予め登録された利用者の個人情報が保持されている領域を確認する(ステップ300)。次に、クライアント端末10の表示画面の大きさ、表示色数、シリアル番号、OSのバージョン番号といった端末情報を取得する(ステップ310)。この場合、予め利用者情報テーブル22に登録しておいた端末情報を取得してもよいし、クライアント端末10と通信することで端末情報を受信してもよい。
【0014】
さらに、予め登録してあるクライアント端末10および利用者に固有の共通鍵を利用者情報テーブル22から取得する(ステップ320)。共通鍵は、利用者個人情報テーブルに含まれている情報を使って、クライアント端末10の暗号鍵生成部13と同一の処理、同一のアルゴリズムで、動的に生成してもよい。
これらステップ300〜320の処理でエラーが発生した場合は、ログイン不成功と判断し、一連の認証処理を終了してステップ100へ戻る(ステップ330:NO)。エラーがなければログイン成功と判断し(ステップ330:YES)、一連の認証処理を終了してステップ120へ移行する。
このように、データ配信に先立って、代理中継サーバ20において、利用者の認証を行うようにしたので、鍵管理の不正利用を抑制でき、代理中継サーバ20での厳重な鍵管理を実現できる。
【0015】
図2のステップ110においてログインが成功した場合(ステップ110:YES)、中継制御部26では、クライアント端末10から、データの配信要求があるかどうかチェックする(ステップ120)。
ここで、データの配信要求以外の処理要求、例えばパスワード変更といった利用者情報の更新などの場合は(ステップ120:NO)、その要求された処理を行った後(ステップ130)、クライアント端末からの処理要求があるかどうか調べるため、ステップ120へ戻る。
【0016】
クライアント端末10からデータの配信要求があった場合は(ステップ120:YES)、当該データを保持している配信サーバ30へのアクセスが許可されているかどうか、またそのデータへのアクセスが許可されているかどうかを、配信データ情報テーブル23を使って調べる(ステップ140)。
配信データ情報テーブル23には、種々の配信データのアクセス制御情報が蓄積されている。このような情報を使うことで、例えば、利用者がその配信サーバ30のデータへアクセス可能な年齢18歳に満たない場合や、そのデータに既にアクセスしたことがあるが、そのデータへのアクセスがただ一度だけに制限されている場合などのアクセスの許可・不許可を調べる。
【0017】
このように、代理中継サーバ20の配信データ情報テーブル23で個々のデータのアクセス制御情報を管理し、クライアント端末10からの要求に応じて、その要求データに対するアクセス可否を判断するようにしたので、利用者ごとに各データの厳密なアクセス管理を実現できる。
【0018】
ステップ140において、データへのアクセスが許可され要求可と判断されたた場合は(ステップ140:YES)、実際にデータを保持している配信サーバ30へデータの送信要求を行い、その要求に対して返信されてきたデータを受信する(ステップ150)。必要であれば、利用者情報テーブル22に保持されている利用者情報も併せて送信する。
そして、受信したデータが正しく受信されたかどうか調べ(ステップ160)、データの取得成功が確認された場合は(ステップ160:YES)、受信したデータが暗号化されており、別のサーバなどから暗号鍵を取得する必要がある場合があり、実際に受信したデータがクライアント端末10で利用可能であるかどうかを調べる(ステップ170)。
【0019】
受信したデータがクライアント端末10で利用可能であり、代理中継サーバ20からクライアント端末10へデータ配信可能であると判断された場合は(ステップ170:YES)、通信インターフェース部21を介してクライアント端末10へデータを送信し(ステップ180)、ステップ120へ戻る。
上記のステップ140、160、170の処理において、エラーが生じた場合には、クライアント端末10にエラー通知を行い(ステップ190)、ステップ120へ戻る。
【0020】
ここで、図4を参照して、ステップ180でのデータ配信処理について説明する。
中継制御部26では、まず、配信サーバ30から取得したデータが暗号化されていれば、これを復号化処理部25で復号化する(ステップ500)。このとき、取得したデータが利用者の公開鍵で暗号化されている場合には、利用者情報テーブル22に保持されている秘密鍵を用いて復号化する。また利用者およびクライアント端末10に固有の共通鍵で暗号化されている場合には、同じく利用者情報テーブル22に保持されているその共通鍵を取得して復号化する。
なお、配信サーバ30でデータを暗号化する際に用いる公開鍵や共通鍵については、代理中継サーバ20から直接通知するようにしてもよい。また、公開鍵については代理中継サーバ20から通知された利用者の個人情報に基づき第三者機関から取得してもよい。
【0021】
続いて、利用者情報テーブル22の端末情報を参照し、必要ならばデータの変換やファイルフォーマットの変換を行う(ステップ510)。例えば、256色のカラー画像データに対して端末が白黒表示しかできない場合は白黒データ変換処理を行ったり、表示画面の大きさにあわせて画像データの拡大縮小処理を行ったりする。
さらに、そのデータの利用情報を付加する(ステップ520)。利用情報は、配信サーバ30や別のサーバ(例えば図示しない課金サーバ)から取得される、データの利用回数や利用期限といった情報である。そして、ステップ320で取得したデータを利用者およびクライアント端末10に固有の共通鍵を使って、暗号化処理部24で暗号化し(ステップ530)、クライアント端末10に送信して(ステップ540)、一連のデータ配信処理を終了する。
【0022】
次に、図1および図5を参照して、本実施の形態のクライアント端末10の動作について詳細に説明する。図5はクライアント端末の処理動作を示すフローチャートである。
クライアント端末10の端末制御部16では、まず、代理中継サーバ20との通信接続を行う(ステップ700)。接続後、ログイン処理を行う(ステップ710)。このステップ710の処理に対して、代理中継サーバ20においては図2のステップ110の処理が対応する。ここでは、利用者により、代理中継サーバ20から転送された入力プロンプトに対し、必要に応じてアカウント名、パスワード、端末情報をユーザインタフェース部14から入力する。プログラムでそれらの情報を自動的に取得可能であれば、自動的にログイン処理を進めてもよい。
【0023】
続いて、利用者が代理中継サーバ20に保持されている利用者情報テーブル22を更新もしくは生成するかどうかチェックする(ステップ720)。ここで、このような利用者登録を行わず、データの配信要求を行うのであれば(ステップ720:YES)、所望のデータに関するIDやネットワーク上のファイルの位置情報を代理中継サーバ20へ送信して、データ配信要求を行う(ステップ800)。
その後、代理中継サーバ20からデータを正しく受信できたかどうか調べ(ステップ810)、所望のデータを受信できなかった場合は(ステップ810:YES)、エラー処理を行う(ステップ900)。
【0024】
一方、エラーなくデータを受信できた場合は(ステップ810:YES)、そのデータをクライアント端末10で保存しあるいは利用する(ステップ820)。データを保存する場合は、暗号化されたまま保存する。
データの利用において、代理中継サーバ20と接続しておくかどうかは、そのデータの利用情報やデータの種別により、保存されたデータを後日オフラインで利用することも可能である。
【0025】
このように、本実施の形態によれば、代理中継サーバ20において、配信サーバから暗号化配信されたデータを代理中継サーバ20で受信して復号化し、その復号化したデータを利用者とクライアント端末とに固有の共通鍵で暗号化した形式に変換してクライアント端末へ送信するようにしたので、クライアント端末側では共通鍵暗号方式を適用するだけでよく、配信サーバと代理中継サーバとの間で公開鍵・秘密鍵を用いたとしてもその煩雑な鍵管理を代理中継サーバに委託でき、複雑な暗号鍵管理を必要とせず、データを許可された利用者および端末においてのみ閲覧・利用可能とすることができる。
また、共通鍵暗号方式は公開鍵暗号方式に比べ処理が容易なため、比較的処理能力が劣る携帯型端末であっても、暗号化データ配信サービスシステムを実現できる。
【0026】
データ利用時には、暗号鍵生成部13で生成した共通鍵を使って、復号化処理部12においてデータを一部もしくはすべてを復号し、含まれているデータの利用情報を参照する。データの利用情報が含まれていない場合は、残りの部分の復号を行い、データの表示やプログラムの実行を行う。
配信サーバ30と代理中継サーバ20との間のデータ通信について、公開鍵・秘密鍵を用いた公開鍵暗号方式を適用することにより、極めて高度なデータ保護を行うことができる。また、公開鍵暗号方式ではなく、利用者とクライアント端末とに固有の共通鍵を用いた共通鍵暗号方式を適用した場合は、高度なデータ保護を行えるとともに、代理中継サーバ20での鍵管理が簡略化される。
【0027】
データの利用情報として、データの有効利用期限が付加されている場合には、現在の日時を取得して比較することで、データの利用の可否を決定する。
また、データの利用情報として、データの有効利用回数が付加されている場合には、現在までに利用した回数をデータ利用履歴情報テーブル15から取得して比較することでデータの利用可否を決定し、現在までに利用した回数の更新を行う。さらにデータの利用情報として、データの有効利用時間が付加されている場合には、現在までに利用した延べ時間をデータ利用履歴情報テーブル15から取得して比較することでデータの利用の可否を決定する。そして、現在までに利用した延べ時間の更新を行う。利用した回数、延べ時間などの利用履歴情報は、共通鍵を使って暗号化した後にクライアント端末10のデータ利用履歴情報テーブル15へ保存され管理される。
【0028】
このように、データに付加されている利用情報に基づき、クライアント端末10でそのデータの利用可否を判断するようにしたので、利用者ごとに個別の条件で利用可否を判断できる。また、クライアント端末10で利用者ごとの個別の条件、例えば利用履歴情報を管理するようにしたので、より詳細な利用可否管理を実現できるとともに、代理中継サーバ20で各利用者の個別の条件を管理する必要がなくなり、代理中継サーバ20の処理負担を軽減できる。
【0029】
ステップ720において、利用者が利用者登録を行うよう指示した場合は(ステップ720:YES)、ステップ730へ移行して利用者情報の登録処理を行う。このクライアント端末10における利用者情報登録処理に対して、代理中継サーバ20においては、図6のステップ600〜640の処理が対応する。
まず、クライアント端末10の端末制御部16では、利用者のアカウント、パスワードなどの個人情報を送信し(ステップ730)、代理中継サーバ20の中継制御部26はそれを受信する(ステップ600)。
【0030】
続いて、クライアント端末10は、端末情報を送信し(ステップ740)、代理中継サーバ20はそれを受信する(ステップ610)。さらにクライアント端末10は、暗号鍵生成部13で共通鍵を生成し(ステップ750)、それを送信する(ステップ760)。代理中継サーバ20は、その共通鍵を受信し(ステップ620)、また利用者に対して発行された公開鍵暗号のための公開鍵・秘密鍵の組を第三者機関(図示せず)から取得して(ステップ630)、これら情報を利用者情報テーブル22へ保存する(ステップ640)。また、更新する場合には、必要な項目のみが通信され、代理中継サーバ20の利用者情報テーブル22が更新される。
【0031】
このように、当該利用者およびそのクライアント端末10に固有の共通鍵を、クライアント端末10の暗号鍵生成部13で適時動的に生成して、代理中継サーバへ更新登録するようにしてもよく、これにより共通鍵がクライアント端末10に永続的に保持されなくなるため、共通鍵の盗用が極めて困難となり高い安全性が得られる。
【図面の簡単な説明】
【0032】
【図1】本発明の一実施の形態による暗号化データ配信サービスシステムを示すブロック図である。
【図2】代理中継サーバの動作を示すフローチャートである。
【図3】認証処理を示すフローチャートである。
【図4】暗号化データ配信処理を示すフローチャートである。
【図5】クライアント端末の動作を示すフローチャートである。
【図6】利用者登録処理を示すフローチャートである。
【図7】従来の暗号化通信システムを示すブロック図である。
【符号の説明】
【0033】
10…クライアント端末、20…代理中継サーバ、30…配信サーバ、40…認証サーバ、11,21…通信インタフェース部、12,22…復号化処理部、13…暗号鍵生成部、14…ユーザインタフェース部、15…データ利用履歴情報テーブル、16…端末制御部、23…配信データ情報テーブル、24…暗号化処理部、25…利用者情報テーブル、26…中継制御部。

【特許請求の範囲】
【請求項1】
データを暗号化して配信することにより、特定の利用者および端末のみにおいて利用可能とするデータ配信サービスシステムにおいて、
配信するデータを暗号化して送信する配信サーバと、
受信したデータを当該利用者およびその端末に固有の共通鍵で復号化し、閲覧または利用する利用者端末と、
前記配信サーバから暗号化されたデータを受信して復号化し、その復号化したデータを当該利用者および前記端末に固有の共通鍵で暗号化した形式に変換して前記端末へ送信する代理中継サーバとを備えることを特徴とする暗号化データ配信サービスシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2006−197640(P2006−197640A)
【公開日】平成18年7月27日(2006.7.27)
【国際特許分類】
【出願番号】特願2006−59826(P2006−59826)
【出願日】平成18年3月6日(2006.3.6)
【分割の表示】特願2000−322014(P2000−322014)の分割
【原出願日】平成12年10月20日(2000.10.20)
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】