JP3593979B2 - 利用権制御を伴うサーバおよびクライアントならびにサービス提供方法および利用権証明方法 - Google Patents

利用権制御を伴うサーバおよびクライアントならびにサービス提供方法および利用権証明方法 Download PDF

Info

Publication number
JP3593979B2
JP3593979B2 JP2001003603A JP2001003603A JP3593979B2 JP 3593979 B2 JP3593979 B2 JP 3593979B2 JP 2001003603 A JP2001003603 A JP 2001003603A JP 2001003603 A JP2001003603 A JP 2001003603A JP 3593979 B2 JP3593979 B2 JP 3593979B2
Authority
JP
Japan
Prior art keywords
client computer
response
client
server computer
computer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2001003603A
Other languages
English (en)
Other versions
JP2002207698A (ja
Inventor
仁樹 京嶋
幸史 竹田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2001003603A priority Critical patent/JP3593979B2/ja
Priority to US10/014,362 priority patent/US7165176B2/en
Publication of JP2002207698A publication Critical patent/JP2002207698A/ja
Application granted granted Critical
Publication of JP3593979B2 publication Critical patent/JP3593979B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Description

【0001】
【発明の属する利用分野】
この発明は、ネットワークを介して接続されているクライアントに対してサービスを提供するサーバが、サービスに対する正当な利用権をクライアントが持つことを認証するための利用権認証技術に関する。
【0002】
【従来の技術】
ネットワークを介して接続されているクライアントに対してサービスを提供するサーバの多くが、クライアントにサービスを提供する際に、そのサービスを提供して良いクライアントであるかどうか、あるいは、サービスを提供して良いユーザが利用中のクライアントであるかどうかを判断するための仕組みを持っている。この仕組みをクライアント認証と呼ぶことにする。
【0003】
たとえば、米国マイクロソフト社(Microsoft Corporation)発行「Microsoft Internet InformationServerリソースキット」(「Microsoft」は米国マイクロソフト社の商標である)p.353−359には、米国マイクロソフト社が提供するInternet Information Server (以降IISと略記)が持つクライアント認証の機能について記載されている。
【0004】
IISでは、基本認証とよばれるクライアント認証の仕組みを持っている。
【0005】
基本認証では、クライアントを使用してサーバにアクセスするユーザにはアカウントが割り当てられる。また、サーバ上のファイルには、そのファイルにアクセス可能なユーザのアカウントが決められる。
【0006】
クライアントからサーバに対して、サーバ中のファイルの要求があった場合、サーバは、ユーザに対してユーザIDとパスワードの入力を要求する。入力されたユーザIDとパスワードから、ユーザのアカウントを特定し、さらに要求されたファイルにアクセス可能なアカウントであるかどうかが調べられ、アクセス可能であった場合にのみ、要求したファイルがクライアントに対して提供される。
【0007】
IISの基本認証のような方式はきわめて一般的である。インターネット、イントラネットを問わず、Webを使ったアプリケーションでは、使用できるユーザを限定する際には、必ずといっていいほど使用されている。
【0008】
【発明が解決しようとする課題】
IISの基本認証のように、ユーザのアカウントを使ったクライアント認証には、次の2つの問題がある。
(1)ユーザアカウントの管理がサーバにもたらす負荷。
(2)サーバに対してユーザの匿名性が保証されないこと。
【0009】
これらの問題について、以下により詳細に説明する。
【0010】
ユーザのアカウントを使ったクライアント認証では、サーバがユーザのアカウントを特定できることが必須である。これは、サーバがユーザのアカウントを管理することが必要であることを意味する。このために、サーバはユーザのアカウントを管理するDB(データベース)を持つことが必要になる。このDBはアカウントの増減に応じて日々修正されなければならず、その維持・運営コストはばかにならない。
【0011】
多くのサーバで同一のクライアント認証を行う場合には、ユーザのアカウントを管理するメインのサーバ(アカウントサーバ)を設けて、個々のサーバがそこに問い合わせるという方式をとることになる。この方式では、個々のサーバとアカウントサーバとの間の通信コストやセキュリティのが問題になる。
【0012】
さらに、ユーザはサーバに対して、自己のアカウントを明確にすることが必須となる。これは、ユーザ毎のサービスの利用履歴がサーバ側に知られてしまうことを意味する。収集された個人情報の悪用の事例が後をたたない昨今の世情を考えれば、ユーザにとって大きなリスクを負わせている方法であることがわかる。
【0013】
【課題を解決するための手段】
クライアント認証において、ユーザのアカウントを特定することは、実は必須ではない。クライアント認証が行いたいのは、サービスを要求しているクライアント、あるいはそのクライアントのユーザに対して、サービスを提供してよいかどうかの判断のみである。ユーザのアカウントを特定しているのは、あくまで手段であって、それが目的ではない。
【0014】
本発明では、サーバがクライアントに提供するサービスに対して公開鍵がわりあてられる。クライアント、あるいはそのクライアントのユーザに対して、サービスを提供するかどうかは、そのサービスに割り当てられた公開鍵を使ったチャレンジーレスポンスを行うことで判断される。
【0015】
たとえば、公開鍵暗号アルゴリズムとしてRSA(Rivest−Shamir−Adleman)を使用する場合、RSAの公開鍵ペア(法数n、公開鍵e、秘密鍵d)のうち、法数nと公開鍵eをサービスに割り当て、そのサービスの提供を受けることが許されるすべてのクライアントには秘密鍵dを渡す。
【0016】
あるクライアントから、法数nと公開鍵eが割り当てられたサービスに対する要求があった場合、サーバはチャレンジと呼ぶ乱数値Cを生成し、クライアントに送付する。秘密鍵dを持っているクライアントは、式(1)にしたがってレスポンスを計算し、サーバに送り返す。ここで法数nはサーバからクライアントにチャレンジとともに送付しても良いし、秘密鍵dとともにクライアントに渡しておいてもよい。公開可能な情報であるので、誰でもアクセスできる別のサーバに置いておいてもよい。
【数1】
R= C mod n (1)
【0017】
レスポンスを受けとったサーバは、クライアントに送付したチャレンジCと、クライアントから受け取ったレスポンスR、サービスに割り当てられた法数nと公開鍵eとの間に、式(2)の関係が成り立つかどうかを検査する。
【数2】
C≡R mod n (2)
【0018】
式(2)の関係が成り立つ場合には、クライアントに対してサービスを提供し、そうでなければサービスを提供しない。
【0019】
この方式によれば、秘密鍵dが、法数nと公開鍵eを割り当てられたサービスに対するクライアントの利用権を証明するためのデータ(利用権証明データ)となる。秘密鍵dを持つユーザはすべて、法数nと公開鍵eを割り当てられたサービスを利用することができる。
【0020】
同じ法数と公開鍵を割り当てられた複数のサービスは、同じ秘密鍵によって利用することが可能である。それらは、同一の利用権によって利用可能なサービス群と考えることができる。これらのサービスが同一のサーバのものであろうと、まったく異なるサーバのものであろうと、同一の利用権によって利用可能になる。逆に異なる法数と公開鍵を割り当てられた複数のサービスは、異なる利用権を必要とするものだと考えることができる。
【0021】
この方法では、サーバは、クライアントを使用しているユーザのアカウントを特定する必要はない。ユーザアカウントのDBを持つ必要はないし、ユーザアカウントの特定のためにアカウントサーバにアクセスする必要もない。
【0022】
また、ユーザアカウントがサーバに公開されることもない。それどころか、チャレンジ−レスポンスの過程でユーザを特定する情報は、サーバ側に一切に流れることがない。ユーザの匿名性は、完全に守られるのである。
【0023】
上記の方式に使用可能な公開鍵暗号アルゴリズムは、RSAに限定されない。DSA(Digital Signature Algorithm)のような署名方式を使ったチャレンジ−レスポンスを適用しても良い。また、Schnorr認証のような、チャレンジ−レスポンスの前に、コミットメントの送受信を必要とするようなアルゴリズムを使用することも可能である。
【0024】
上記の方式の問題として、利用権を証明するデータとしてクライアントに渡される秘密鍵と法数を、他のクライアントにコピーされれば、サービスを不正に利用される危険が存在することがある。
【0025】
この問題を解決するために、本発明では、クライアントにクライアント固有の演算(固有演算)を持たせている。また、利用権証明データは、サービスに割り当てられた法数と公開鍵に対応する秘密鍵と、固有演算から作成される。
【0026】
たとえば、法数n、公開鍵e、秘密鍵d、クライアントUが持つ固有演算をf(・)とした場合、利用権証明データtを式(3)のように作成され、クライアントUに渡される。ここで”|”は、bit連結を示している。
【数3】
t=d−f(n|e) (3)
【0027】
クライアントUから、法数nと公開鍵eが割り当てられたサービスに対する要求があった場合、サーバはチャレンジCを生成し、クライアントに送付する。クライアントは、式(4)にしたがってレスポンスを計算し、サーバに送り返す。ここで法数nや公開鍵eはサーバからクライアントにチャレンジとともに送付しても良いし、利用権証明データtとともにクライアントに渡しておいてもよい。公開可能な情報であるので、誰でもアクセスできる別のサーバに置いておいてもよい。
【数4】
Figure 0003593979
【0028】
レスポンスを受けとったサーバは、クライアントに送付したチャレンジCと、クライアントから受け取ったレスポンスR、サービスに割り当てられた法数nと公開鍵eとの間に、式(2)の関係が成り立つかどうかを検査する。式(2)の関係が成り立つ場合には、クライアントに対してサービスを提供し、そうでなければサービスを提供しない。
【0029】
この方法によれば、サービスに割り当てられた利用権証明データを持つクライアント以外は、サービスを提供されることがない点で、前出の方法と同じ機能を実現している。さらに、同一のサービスに対する利用権証明データであっても、クライアント毎に異なることになるので、固有演算f(・)の結果をクライアントのユーザがアクセスできないように守っておけば、利用権証明データをいくらコピーしても、それが不正利用につながることはないという利点がある。
【0030】
上記の方式では、利用権証明データを用いた演算を行うのがクライアントであるが、利用権証明データを用いるのがサーバであるように構成しても同じ効果を得ることができる。この場合の手順を以下に示す。
【0031】
クライアントUから、法数nと公開鍵eが割り当てられたサービスに対する要求があった場合、サーバはチャレンジCを生成し、クライアントに送付する。クライアントは、式(5)にしたがってレスポンスを計算し、利用権証明データtとともにサーバに送り返す。
【数5】
Figure 0003593979
【0032】
レスポンスを受けとったサーバは、クライアントに送付したチャレンジCと、クライアントから受け取ったレスポンスRと利用権証明データt、サービスに割り当てられた法数nと公開鍵eとの間に、式(6)の関係が成り立つかどうかを検査する。式(6)の関係が成り立つ場合には、クライアントに対してサービスを提供し、そうでなければサービスを提供しない。
【数6】
C≡CR mod n (6)
【0033】
固有演算の実現方式としては、すべてのクライアントに共通の暗号学的ハッシュ関数f(・)(たとえばSHA−1)とクライアント毎に異なる固有のデータuを割り当てておき、式(5)のような演算を行うことで実現することができる。
【数7】
(x)=f(x|u) (7)
【0034】
また、クライアント毎に異なる固有データuそのものを固有演算の結果として利用することも可能である。
【0035】
サーバが提供するサービスの利用を、一定の条件下でのみクライアントが利用できるように限定したい場合に対応する場合には、利用条件を記述したデータ(利用条件データ)を利用する。たとえば、サービスが利用できる期間を限定したい場合には、利用開始日時と利用終了日時を利用条件データに記載する。
【0036】
その上で、利用権証明データを、秘密鍵と、クライアントの固有演算と、利用条件データとから生成する。たとえば、秘密鍵d、クライアントの固有演算f(・)、利用条件データをLとすると、利用権証明データtを式(8)のように作成する。
【数8】
t=d−f(n|e|L) (8)
【0037】
tとLはクライアントに渡される。
【0038】
クライアントUから、法数nと公開鍵eが割り当てられたサービスに対する要求があった場合、サーバはチャレンジCを生成し、クライアントに送付する。クライアントは、まずLに記載されている利用条件を評価し、それが満たされていれば、式(9)にしたがってレスポンスを計算して、サーバに送り返す。
【数9】
Figure 0003593979
【0039】
レスポンスを受けとったサーバは、クライアントに送付したチャレンジCと、クライアントから受け取ったレスポンスR、サービスに割り当てられた法数nと公開鍵eとの間に、式(2)の関係が成り立つかどうかを検査する。式(2)の関係が成り立つ場合には、クライアントに対してサービスを提供し、そうでなければサービスを提供しない。
【0040】
この方式によれば、Lに記載されている利用条件を変更するとレスポンスRの値が変わり、その結果として式(2)が成り立たなくなる。したがって、クライアントのユーザがLを自分の有利なように書き換えることに意味がなくなる。
【0041】
これまで説明した方式は、固有演算がクライアントに割り当てられている。利用権証明データは固有演算にあわせて作成されるので、同一のユーザが使用するのであっても、クライアントが異なれば別の利用権証明データが必要である。また、同一のクライアントを使用している複数のユーザの間で、サービスの使用を許したり許さなかったりという制御をすることも困難である。
【0042】
このように、固有演算がクライアントに割り当てられる方式では、真にユーザにバインドした利用権制御は困難である。このような問題を解決するための解として、本発明では、固有演算部をスマートカード(演算能力付きのICカード)のような携帯型の装置で実現する。ユーザはこの携帯型装置を携帯し、使用するクライアントに接続する。この方式であれば、どのクライアントを使用しても、ユーザにバインドした利用権制御が可能である。
【0043】
本発明は、サーバ(サーバコンピュータ)、クライアント、コンピュータシステム等装置またはシステムとして実現でき、また方法としても実現でき、さらに、少なくともその一部をコンピュータプログラムとして実現できることはもちろんである。クライアントとしてはパーソナルコンピュータ、ワークステーション、携帯端末、セットトップボックス、情報家庭電気製品、インテリジェント電話機(携帯電話機も含む)等、種々の情報端末として構成することが可能である。
【0044】
また、サーバはウェブサーバ、FTPサーバ、アプリケーションサーバ等種々のサービスを提供する種々のサーバである。
【0045】
サーバとクライアントとの間は有線または無線のネットワークで接続可能であり、IP網、電話網、移動体通信網等種々のネットワークの形態を採ることが可能である。また、インターネット、イントラネット、エクストラネット等種々の利用環境に適用できる。Bluetooth(商標)等の微弱電波を用いた通信チャネルを用いてもよい。この場合、このような微弱電波の通信機能を有する機器がクライアントとなることができる。
【0046】
以上本発明について具体的に説明を行った。本発明の以上の具体的な構成および本発明の種々の側面については特許請求の範囲に記載され、以下、実施例を用いて詳細に説明する。
【0047】
【発明の実施の形態】
以下、本発明の実施例について説明する。
【0048】
[第1の実施例]
第1の実施例は、クライアントに対してWebページを提供するWebサーバと、該Webサーバに対してWebページを要求してWebページの提供を受けるクライアントからなる。
【0049】
本実施例のWebサーバは、本発明を適用した利用権認証の機構をもつ。Webサーバが持つWebページには、必要に応じてRSA法数と公開鍵が割り当てられている。割り当てられていないWebページは、どのクライアントに対しても提供される。
【0050】
クライアントから、RSA法数と公開鍵が割り当てられているページに対する要求があった場合、クライアントとの間でチャレンジ−レスポンスを行うことで、クライアントがWebページに対する利用権を持つかどうかが検査される。チャレンジ−レスポンスは、Webページに割り当てられたRSA法数と公開鍵に対応する利用権証明データをクライアントが持っている場合のみ成功する。この検査に成功した場合にのみ、要求されたWebページがクライアントに対して提供される。
【0051】
Webページに対するRSA法数と公開鍵の割り当ての方法には、いくつかのバリエーションが考えられる。各Webページ毎に対応するRSA法数と公開鍵を決めておいても良いし、ディレクトリ等でまとめられたWebページの集合に対してRSA法数と公開鍵を対応させ、Webページの集合に含まれるいずれのWebページに対する要求であっても、その集合にバインドされているRSA法数と公開鍵を使ったチャレンジ−レスポンスが行われるように構成してもよい。
【0052】
本実施例のクライアントは、本発明を応用した利用権証明の機構を持つ。自己が要求したWebページに対して、Webサーバからチャンレンジが送られてきた場合、レスポンスを作成して送りかえすことができる。
【0053】
本実施例のクライアントには、クライアント毎に異なる固有データが割り当てられている。あるWebページに対する特定のクライアントの利用権証明データは、そのWebページに割り当てられたRSA法数と公開鍵に対応する秘密鍵と、クライアントに割り当てられた固有データ、クライアントに対してWebページの利用が許される条件を記した利用条件データから作成される。利用条件データには、クライアントにWebページの利用が許される期間の開始と終了の日時が記載される。
【0054】
たとえば、Webページに割り当てられたRSA法数をn、公開鍵をe、nとeに対応する秘密鍵をd、クライアントに割り当てられた固有データをu、利用条件データをLとした場合、利用権証明データtは、式(10)にしたがって作成される。
【数10】
t=d−f(n|e|L|u) (10)
ここでf(・)はすべてのクライアントが共通に持つ暗号学的ハッシュ関数である。
【0055】
図1は、第1の実施例におけるWebサーバの内部構成を示している。
【0056】
Webサーバ101は、以下の部分から構成される。
【0057】
[入出力制御部102]:
ネットワークを経由して届くクライアントからWebサーバへの入力と、ネットワークを経由して送られるWebサーバからクライアントへの出力を制御する。
【0058】
[ページデータ管理部103]:
Webサーバが持つWebページを管理する。クライアントからのページの要求に対して、入出力制御部102を介してWebページを提供する機能を持つ。Webページの提供の際に、必要なら利用権認証部104を呼び出してクライアントが正しい利用権を持つかどうかを検査し、持っていなければWebページの提供を中止することもできる。
【0059】
[利用権認証部104]:
ページデータ管理部103からの呼び出しに応じて、クライアントが正しい利用権を持つかどうかを検査し、その結果をページデータ管理部103に返す。検査の過程で、入出力制御部102を経由して、クライアントとの間で通信を行う。
【0060】
利用権認証部104は、以下の部分から構成される。
【0061】
[利用権認証制御部105]:
クライアントが正しい利用権を持つかどうかの検査全体を制御する。
【0062】
[公開鍵管理部106]:
Webページと、そのWebページに対して割り当てられたRSA法数と公開鍵の組み合わせを記憶・管理している。
【0063】
[チャレンジ生成部107]:
クライアントが利用権を持つかどうかは、Webサーバとクライアントの間で行われるチャレンジ−レスポンスによって検査される。チャレンジ生成部は、クライアントに送付されるチャレンジを生成する。
【0064】
[利用権検査部108]:
クライアントから送付されるレスポンスが、チャレンジ生成部で生成されたチャンレンジや、クライアントから要求されているWebページに割り当てられたRSA法数や公開鍵と所定の関係にあるかどうかを判断し、出力する。
【0065】
図2は、第1の実施例におけるクライアントの内部構成を示している。
【0066】
クライアント201は、以下の部分から構成される。
【0067】
[Webブラウザ202]:
ネットワークを経由して届くWebサーバからクライアントへの入力と、ネットワークを経由して送られるクライアントからWebサーバへの出力を制御する。Webページに対する要求をWebサーバに送ったり、Webサーバから届けられるWebページを処理するのも、Webブラウザ202の役割である。
【0068】
[利用権証明部204]:
Webページに対するクライアントの利用権をWebサーバに対して証明する。利用権を認証するためのチャレンジが、Webブラウザ202を介してWebサーバから届けられた際に、自己の利用権を証明するためのレスポンスを計算し、Webブラウザ202を介してWebサーバに送付する。
【0069】
利用権証明部204は、以下の部分から構成される。
【0070】
[利用権証明制御部205]:
クライアントの利用権を証明するためのレスポンスの計算全体を制御する。
【0071】
[利用権証明データ記憶部206]:
Webページに対する利用権証明データを記憶する。ここには複数の利用権証明データが記憶可能である。個々の利用権証明データは、その利用権証明データの生成に使用されたRSA法数、公開鍵、使用条件データとともに記憶されている。
【0072】
[利用条件評価部207]:
利用条件データに記載されている利用条件が満たされているかどうかを判定する。本実施例の利用条件データには、クライアントがWebページを利用できる期間の開始日時と終了日時が記載されており、利用条件評価部207は、現在の時刻がWebページを利用できる期間内かどうかを判定する機能を持つ。
【0073】
[固有レスポンス生成部208]:
本実施例では、レスポンスを作成する際に、固有データを使用した演算と、利用権証明データを使用した演算の2段階に分かれる。固有レスポンス生成部208は、固有データを使用した演算の部分を実行する。
【0074】
[レスポンス生成部209]:
Webサーバ101に送付するレスポンスを生成する。
【0075】
固有レスポンス生成部208は、さらに以下の部分から構成される。
【0076】
[固有データ記憶部210]:
クライアントに割り当てられた固有データを記憶する。
【0077】
[固有演算実行部211]:
すべてのクライアントが共通に持つ暗号学的ハッシュ関数f(・)を内蔵し、固有データ記憶部210に記憶されている固有データを使用したハッシュ演算を実行する。
【0078】
[固有レスポンス演算部212]:
固有演算実行部211の結果を使用して、Webサーバ101に送るレスポンスの計算の一部を実行する。
【0079】
Webサーバ101は、クライアント201からのWebページの要求を受けた場合、その要求は入出力制御部102を介してページデータ管理部103に送付される。ページデータ管理部103は、依頼されたWebページに対する利用権をクライアント201が持つことを確認するために、利用権認証部104を呼び出す。この呼び出しの際に、要求されたWebページを特定するための情報(たとえばファイル名)が、利用権認証部104に渡される。
【0080】
利用権認証部104は、クライアント201から要求されたWebページに対する利用権を要求元であるクライアント201が所持しているかどうかを検査し、その結果をページデータ管理部103に送る。利用権を所持していることが確認されれば、Webページのデータがクライアント201に対して送付される。そうでなければ、エラーメッセージが送付される。
【0081】
図3は、ページデータ管理部103に呼び出された際の利用権認証部104の動作を示したフローチャートである。利用権認証部104が実行する利用権認証の手順を、図3のフローチャートにしたがって説明する。
【0082】
利用権認証部104の動作は、利用権認証制御部105によってコントロールされる。
【0083】
利用権認証制御部105は、まず公開鍵管理部106呼び出し、クライアント201から要求されているWebページに割り当てられているRSA法数と公開鍵が存在するかどうかを探索する(301)。割り当てられたRSA法数と公開鍵が存在しなければ(302)、利用権の認証に成功したことを出力し(307)、処理は終了する。
【0084】
要求されたWebページに対して割り当てられたRSA法数と公開鍵が存在するならば(302)、利用権認証制御部105はチャンレンジ生成部107を呼び出してチャレンジを生成し、入出力制御部102を介してクライアント201に送付する(303)。また、チャレンジとともに、要求されたWebページに対して割り当てられたRSA法数と公開鍵も、同時にクライアント201に送付される。
【0085】
その後、利用権認証部104は、クライアント201から入出力制御部102を介して送られてくるレスポンスを待つ。チャレンジを送付してから一定の時間の間にレスポンスが届かなければ(304)、利用権の認証に失敗したことを出力し(308)、処理は終了する。
【0086】
クライアント201からレスポンスが届いた場合(304)、利用権認証制御部105は利用権検査部108を呼び出し、レスポンスが正しいかどうかを検査する(305)。303でクライアント201に送付されたチャンレンジをC、304で受け取ったレスポンスをR、要求されたWebページに割り当てられたRSA法数をn、公開鍵をeとすると、利用権検査部108は式(2)が成り立つかどうかを検査する。成り立つ場合(306)、利用権の認証に成功したことを出力し(307)、処理は終了する。成り立たない場合(306)、利用権の認証に失敗したことを出力し(308)、処理は終了する。
【0087】
Webサーバ101から、Webブラウザ202を介してチャレンジ、およびRSA法数と公開鍵を受け取ったクライアント201は、利用権証明部204に受け取ったチャレンジ、RSA法数、公開鍵を渡してレスポンスを作成し、Webブラウザ202を介してWebサーバ101に送る。
【0088】
図4は、チャレンジ、RSA法数、公開鍵を渡された利用権証明部204の動作を示したフローチャートである。利用権証明部204が実行するレスポンス作成の手順を、図4のフローチャートにしたがって説明する。
【0089】
利用権証明部204の動作は、利用権証明制御部205によってコントロールされる。利用権証明制御部205は、まず利用権証明データ記憶部206に、Webサーバ101から受け取ったRSA法数と公開鍵に対応する利用権証明データと利用条件データが存在するかどうかを探索する(401)。利用権証明データ記憶部206には、複数の利用権証明データが、その利用権証明データの生成に使用されたRSA法数、公開鍵、使用条件データとバインドされて記憶されており、Webサーバ101から受け取ったRSA法数と公開鍵と同じRSA法数と公開鍵にバインドされている利用権証明データと利用条件データが探索される。
【0090】
ここで、Webサーバ101から受け取ったRSA法数と公開鍵に対応する利用権証明データと利用条件データが存在しなければ(402)、処理は終了する。この場合、レスポンスがWebサーバ101に返されることはない。
【0091】
ここで、Webサーバ101から受け取ったRSA法数と公開鍵に対応する利用権証明データと利用条件データが存在する場合(402)、利用条件評価部207が呼び出され、401で見つかった利用条件データに記載されている利用条件が満たされているかどうかが評価される(403)。
【0092】
利用条件が満たされていない場合(404)、処理は終了する。この場合、レスポンスがWebサーバ101に返されることはない。利用条件が満たされている場合(404)、レスポンスを計算してWebサーバ101にWebブラウザ202を介して送付し(405)、処理は終了する。
【0093】
405におけるレスポンスの計算では、まず固有レスポンス生成部208を呼び出し、クライアントに割り当てられた固有データに基づく計算が行われる。固有レスポンス生成部208の呼び出し時には、Webサーバ101から送付されたチャレンジとRSA法数と公開鍵、401で見つかった利用条件データが渡される。
【0094】
固有レスポンス生成部208では、固有レスポンス演算部212が固有演算実行部211を呼び出し、固有データ記憶部210に記憶されている固有データに基づいた演算結果を入手する。固有演算実行部211は、固有データ記憶部210に記憶されている固有データ、Webサーバ101から送付されたRSA法数と公開鍵、401で見つかった利用条件データから、所定の演算を行う。Webサーバ101から送付されたRSA法数をn、公開鍵をe、401で見つかった利用条件データをLとすると、固有演算実行部211は式(11)に示す演算を実行し、結果Fを得る。
【数11】
F=f(n|e|L|u) (11)
【0095】
その後、固有レスポンス演算部212は固有演算実行部211の結果と、Webサーバ101から送付されたチャレンジCとRSA法数nとから、式(12)の演算を実施し、R’を計算する。
【数12】
R’=C mod n (12)
【0096】
固有レスポンス生成部208から計算結果であるR’を受け取ると利用権証明制御部205はレスポンス生成部209を呼び出しレスポンスRを計算する。この計算は、Webサーバ101から送付されたチャレンジCとRSA法数n、固有レスポンス生成部208の計算結果R’、401で見つかった利用権証明データtとから、式(13)に示す演算を実施して得られる。
【数13】
Figure 0003593979
【0097】
本実施例では、Webページに割り当てられた法数nと公開鍵e、クライアントに割り当てられた固有データuと、そのクライアントの利用権を示す利用権証明データtと利用条件データLとの組み合わせが正しければ、305おける検査に成功し、その結果、クライアントが要求したWebページのデータがクライアントに送付される。この組み合わせのいずれがおきかえられても、305おける検査は成功せず、クライアントは要求したWebページのデータを得ることができない。
【0098】
本実施例では、利用権証明データが式(10)で定義されるので、固有レスポンス生成部208内部の解析がセキュリティ上の問題となる。式(11)の結果がもれれば、RSA法数n、公開鍵eに対する秘密鍵dが計算でき、そのdによって、不正な利用が可能になる。式(11)がわからずとも、固有データ記憶部210が保持する固有データuがわかれば、そこから式(11)の演算が誰にでも可能であり、やはり秘密鍵dが計算できることになる。この問題を回避するためには、固有レスポンス生成部208の計算過程や内部のメモリを解析されないような手段を講じる必要がある。たとえば、耐タンパー性のあるハードウエアを使って固有レスポンス生成部208を構成したり、プログラムやメモリの状態が解析されにくくなるようなソフトウエア的な技術を使って固有レスポンス生成部208を構成するといった手段をとらなければならない。
【0099】
スマートカード(演算機能を持つICカード)は、耐タンパー性の高いハードウエアであるので、スマートカードを使って固有レスポンス生成部208を構成することは有効である。この場合、固有データがクライアントに割り当てられるのではなく、スマートカードに割り当てられることになり、スマートカードを携行してクライアントに接続すれば、どのクライアントを使用しても、同じ権利を行使することができる。スマートカードに利用権証明データ記憶部206も含めれば、ユーザにとってより使いやすいものとなる。
【0100】
固有レスポンス生成部208と利用権証明データ記憶部206をスマートカードで実現した場合の、クライアント201の構成例を図5に示す。
【0101】
図5では、理解のしやすさを考慮して、図2の構成例と同じ機能を持つ部分には同じ番号を付与し、新たに出現した部分にのみ新たな番号を割り当ててある。
【0102】
図2の構成例と異なり、図5の構成例では固有レスポンス生成部208と利用権証明データ記憶部206がスマートカード502に含まれている。スマートカード502は、クライアント201との間のデータの入出力を制御するために、入出力制御部503を持っている。クライアント201は、スマートカード502を接続し、スマートカードとのデータの入出力を制御するために、スマートカード接続部501を持つ。なお、他の構成は図2と同様であるので詳細な説明は省略する。
【0103】
[第2の実施例]
第2の実施例は、クライアントに対してWebアプリケーションを提供するWebサーバと、該Webサーバ上のWebアプリを利用するクライアントからなる。Webサーバ上のWebアプリケーションの動作は、サーバサイド上で解釈・実行されるスクリプトを使って制御されている。
【0104】
本実施例のWebサーバは、本発明を適用した利用権認証の機構をもつ。利用権認証を呼び出すタイミングは、その利用権認証で使用するRSA法数と公開鍵とともにスクリプトに記述することができる。スクリプトの解釈・実行の過程で利用権認証の機構は呼び出され、クライアントが利用権を持つことが認証される。たとえば、Webアプリの特定の機能をクライアントに提供する前にその機能に関する利用権認証を行い、利用権を保持することが確認されたクライアントにのみ、該機能が提供されるといったことが可能である。
【0105】
利用権認証の機構が呼び出された場合、クライアントとの間でチャレンジ‐レスポンスを行うことで、クライアントの利用権を持つかどうかが検査される。チャレンジ−レスポンスは、その利用権認証で使用することが指定されたRSA法数と公開鍵に対応する利用権証明データをクライアントが持っている場合のみ成功する。
【0106】
本実施例のクライアントは、本発明を応用した利用権証明の機構を持つ。Webサーバからチャンレンジが送られてきた場合、レスポンスを作成して送りかえすことができる。
【0107】
本実施例のクライアントには、クライアント毎に異なる固有データが割り当てられている。あるRSA法数と公開鍵に対する特定のクライアントの利用権証明データは、そのRSA法数と公開鍵に対応する秘密鍵と、クライアントに割り当てられた固有データ、クライアントに対してWebページの利用が許される条件を記した利用条件データから作成される。利用条件データには、クライアントの利用権が有効な期間の開始と終了の日時が記載される。
【0108】
たとえば、RSA法数をn、公開鍵をe、nとeに対応する秘密鍵をd、クライアントに割り当てられた固有データをu、利用条件データをLとした場合、利用権証明データtは、式(10)にしたがって作成される。
【0109】
図6は、第2の実施例におけるWebサーバの内部構成を示している。
【0110】
Webサーバ601は、以下の部分から構成される。
【0111】
[入出力制御部602]:
ネットワークを経由して届くクライアントからWebサーバへの入力と、ネットワークを経由して送られるWebサーバからクライアントへの出力を制御する。
【0112】
[スクリプト解釈部603]:
Webサーバが提供するWebアプリを構成するスクリプトを保持し、クライアントからの要求に応じてスクリプトを解釈・実行し、その結果を入出力制御部602を介してクライアントに提供する。
【0113】
スクリプトを解釈・実行の際に、利用権認証部604を呼び出してクライアントが正しい利用権を持つかどうかを検査することができる。
【0114】
[利用権認証部604]:
スクリプト解釈部603からの呼び出しに応じて、クライアントが正しい利用権を持つかどうかを検査し、その結果をスクリプト解釈部603に返す。検査の過程で、入出力制御部602を経由して、クライアントとの間で通信を行う。
【0115】
利用権認証部604は、以下の部分から構成される。
【0116】
[利用権認証制御部605]:
クライアントが正しい利用権を持つかどうかの検査全体を制御する。
【0117】
[チャレンジ生成部606]:
クライアントが利用権を持つかどうかは、Webサーバとクライアントの間で行われるチャレンジ‐レスポンスによって検査される。チャレンジ生成部は、クライアントに送付されるチャレンジを生成する。
【0118】
[利用権検査部607]:
クライアントから送付されるレスポンスが、チャレンジ生成部で生成されたチャンレンジや、レスポンスとともにクライアントから送付された利用権証明データや、スクリプト解釈部603から指定されたRSA法数や公開鍵と所定の関係にあるかどうかを判断し、出力する。
【0119】
図7は、第2の実施例におけるクライアントの内部構成を示している。
【0120】
クライアント701は、以下の部分から構成される。
【0121】
[Webブラウザ702]:
ネットワークを経由して届くWebサーバからクライアントへの入力と、ネットワークを経由して送られるクライアントからWebサーバへの出力を制御する。Webアプリに対する要求をWebサーバに送り、Webサーバから届けられるWebページを処理するのも、Webブラウザ702の役割である。
【0122】
[利用権証明部204]:
利用権を認証するためのチャレンジが、Webブラウザ702を介してWebサーバ601から届けられた際に、自己の利用権を証明するためのレスポンスを計算し、利用権証明データとともに、Webブラウザ702を介してWebサーバ601に送付する。
【0123】
利用権証明部704は、以下の部分から構成される。
【0124】
[利用権証明制御部705]:
クライアントの利用権を証明するためのレスポンスの計算全体を制御する。
【0125】
[利用権証明データ記憶部706]:
クライアントが持つ利用権証明データを記憶する。ここには複数の利用権証明データが記憶可能である。個々の利用権証明データは、その利用権証明データの生成に使用されたRSA法数、公開鍵、使用条件データとともに記憶されている。
【0126】
[利用条件評価部707]:
利用条件データに記載されている利用条件が満たされているかどうかを判定する。本実施例の利用条件データには、対応する利用権証明データの有効期間の開始日時と終了日時が記載されており、利用条件評価部707は、現在の時刻がこの期間内かどうかを判定する機能を持つ。
【0127】
[レスポンス生成部708]:
Webサーバ601に送付するレスポンスを生成する。
【0128】
レスポンス生成部708は、さらに以下の部分から構成される。
【0129】
[固有データ記憶部709]:
クライアントに割り当てられた固有データを記憶する。
【0130】
[固有演算実行部710]:
すべてのクライアントが共通に持つ暗号学的ハッシュ関数f(・)を内蔵し、固有データ記憶部709に記憶されている固有データを使用したハッシュ演算を実行する。
【0131】
[レスポンス演算部711]:
固有演算実行部710の結果を使用して、Webサーバ601に送るレスポンスの計算を実行する。
【0132】
Webサーバ601が保持しているスクリプトには、利用権認証の機構を呼び出すよう記載された部分がある。利用権認証に使用するRSA法数と公開鍵も、スクリプトに記載されている。スクリプトの解釈・実行時に、利用権認証の機構を呼び出す部分に至った場合、スクリプト解釈部603は、そこで指定されているRSA法数と公開鍵に対応する利用権をクライアント701が持つことを確認するために、利用権認証部604を呼び出す。
【0133】
利用権認証部604は、指定されたRSA法数と公開鍵に対応する利用権をクライアント701が所持しているかどうかを検査し、その結果をスクリプト解釈部603に送る。
【0134】
図8は、スクリプト解釈部603に呼び出された際の利用権認証部604の動作を示したフローチャートである。利用権認証部604が実行する利用権認証の手順を、図8のフローチャートにしたがって説明する。
【0135】
利用権認証部604の動作は、利用権認証制御部605によってコントロールされる。
【0136】
利用権認証制御部605は、まず、チャンレンジ生成部606を呼び出してチャレンジを生成し、入出力制御部602を介してクライアント701に送付する(801)。また、チャレンジとともに、利用権認証に使用するRSA法数と公開鍵も、同時にクライアント801に送付される。
【0137】
その後、利用権認証部604は、クライアント701から入出力制御部602を介して送られてくるレスポンスと利用権証明データを待つ。チャレンジを送付してから一定の時間の間にレスポンスと利用権証明データが届かなければ(802)、利用権の認証に失敗したことを出力し(806)、処理は終了する。
【0138】
クライアント701からレスポンスと利用権証明データが届いた場合(802)、利用権認証制御部605は利用権検査部607を呼び出し、レスポンスが正しいかどうかを検査する(803)。801でクライアント701に送付されたチャンレンジをC、802で受け取ったレスポンスをR、利用権証明データをt、利用権認証に使用するRSA法数をn、公開鍵をeとすると、利用権検査部607は式(6)が成り立つかどうかを検査する。成り立つ場合(804)、利用権の認証に成功したことを出力し(805)、処理は終了する。成り立たない場合(804)、利用権の認証に失敗したことを出力し(806)、処理は終了する。
【0139】
Webサーバ601から、Webブラウザ702を介してチャレンジ、およびRSA法数と公開鍵を受け取ったクライアント701は、利用権証明部704に受け取ったチャレンジ、RSA法数、公開鍵を渡してレスポンスを作成し、RSA法数と公開鍵に対応する利用権証明データとともに、Webブラウザ702を介してWebサーバ601に送る。
【0140】
図9は、チャレンジ、RSA法数、公開鍵を渡してレスポンスを渡された利用権証明部704の動作を示したフローチャートである。利用権証明部704が実行するレスポンス作成の手順を、図9のフローチャートにしたがって説明する。
【0141】
利用権証明部704の動作は、利用権証明制御部705によってコントロールされる。利用権証明制御部705は、まず利用権証明データ記憶部706に、Webサーバ601から受け取ったRSA法数と公開鍵に対応する利用権証明データと利用条件データが存在するかどうかを探索する(901)。利用権証明データ記憶部706には、複数の利用権証明データが、その利用権証明データの生成に使用されたRSA法数、公開鍵、使用条件データとバインドされて記憶されており、Webサーバ601から受け取ったRSA法数と公開鍵と同じRSA法数と公開鍵にバインドされている利用権証明データと利用条件データが探索される。
【0142】
ここで、Webサーバ601から受け取ったRSA法数と公開鍵に対応する利用権証明データと利用条件データが存在しなければ(902)、処理は終了する。この場合、レスポンスがWebサーバ601に返されることはない。
【0143】
ここで、Webサーバ601から受け取ったRSA法数と公開鍵に対応する利用権証明データと利用条件データが存在する場合(902)、利用条件評価部707が呼び出され、901で見つかった利用条件データに記載されている利用条件が満たされているかどうかが評価される(903)。
【0144】
利用条件が満たされていない場合(904)、処理は終了する。この場合、レスポンスがWebサーバ601に返されることはない。利用条件が満たされている場合(904)、レスポンスを計算して、901で見つけた利用権証明データとともに、Webサーバ601にWebブラウザ702を介して送付し(905)、処理は終了する。
【0145】
905におけるレスポンスの計算では、まずレスポンス生成部708を呼び出し、クライアントに割り当てられた固有データに基づく計算が行われる。レスポンス生成部708の呼び出し時には、Webサーバ601から送付されたチャレンジとRSA法数と公開鍵が渡される。
【0146】
レスポンス生成部708では、レスポンス演算部711が固有演算実行部710を呼び出し、固有データ記憶部709に記憶されている固有データに基づいた演算結果を入手する。固有演算実行部710は、固有データ記憶部709に記憶されている固有データ、Webサーバ601から送付されたRSA法数と公開鍵から、所定の演算を行う。Webサーバ601から送付されたRSA法数をn、公開鍵をe、401で見つかった利用条件データをLとすると、固有演算実行部710は式(11)に示す演算を実行し、結果Fを得る。
【0147】
その後、レスポンス演算部711は固有演算実行部710の結果と、Webサーバ601から送付されたチャレンジCとRSA法数nとから、式(14)の演算を実施し、レスポンスRを計算する。
【数14】
R=C mod n (14)
【0148】
本実施例の利用権認証では、スクリプト解釈部603から指定された法数nと公開鍵e、クライアントに割り当てられた固有データuと、そのクライアントの利用権を示す利用権証明データtと利用条件データLとの組み合わせが正しければ、805おける検査に成功する。この組み合わせのいずれがおきかえられても、805おける検査は成功しない。認証の結果はスクリプト解釈部603に送り返され、その結果によって、Webアプリの動作を変えることができる。たとえば、利用権認証に成功した場合いクライアントに送付するHTML(ハイパーテキストマークアップ言語)文書と、失敗した場合にクライアントに送付するHTML文書を変えるといった制御が可能である。なお、HTML文書に代えてXML(拡張可能言語)等の種々のウェブ言語を用いることができる。
【0149】
本実施例では、利用権証明データが式(10)で定義されるので、レスポンス生成部708内部の解析がセキュリティ上の問題となる。式(11)の結果がもれれば、RSA法数n、公開鍵eに対する秘密鍵dが計算でき、そのdによって、不正な利用が可能になる。式(11)がわからずとも、固有データ記憶部210が保持する固有データuがわかれば、そこから式(11)の演算が誰にでも可能であり、やはり秘密鍵dが計算できることになる。この問題を回避するためには、レスポンス生成部708の計算過程や内部のメモリを解析されないような手段を講じる必要がある。たとえば、耐タンパー性のあるハードウエアを使ってレスポンス生成部708を構成したり、プログラムやメモリの状態が解析されにくくなるようなソフトウエア的な技術を使って固有レスポンス生成部708を構成するといった手段をとらなければならない。
【0150】
第1の実施例同様、スマートカードを使ってレスポンス生成部708を実現するのは、好適な方法である。
【0151】
レスポンス生成部708と利用権証明データ記憶部706をスマートカードで実現した場合の、クライアント701の構成例を図10に示す。
【0152】
図10では、理解のしやすさを考慮して、図7の構成例と同じ機能を持つ部分には同じ番号を付与し、新たに出現した部分にのみ新たな番号を割り当ててある。
【0153】
図7の構成例と異なり、図10の構成例ではレスポンス生成部708と利用権証明データ記憶部706がスマートカード1002に含まれている。スマートカード1002は、クライアント701との間のデータの入出力を制御するために、入出力制御部1003を持っている。クライアント701は、スマートカード1002を接続し、スマートカードとのデータの入出力を制御するために、スマートカード接続部1001を持つ。なお、他の構成は図7と同様であるので詳細な説明は省略する。
【0154】
以上説明したように本発明の各実施例によれば、ユーザアカウントの情報を用いて認証を行わないのでユーザアカウントを維持保守する必要がなく、また、サーバ側にユーザのサービス利用履歴が知られるということもない。
【0155】
以上で実施例の説明を終了する。
【0156】
なお、本発明は上述実施例に限定されるものではなく、その趣旨を逸脱しない範囲で種々変更が可能である。
【0157】
【発明の効果】
以上説明したように、本発明によればユーザアカウントを用いずにクライアントの認証を行え、ユーザアカウント維持コストを削減でき、またユーザのプライバシを漏洩することもない。
【図面の簡単な説明】
【図1】本発明の第1の実施例のWebサーバの構成を示すブロック図である。
【図2】本発明の第1の実施例のクライアントの構成を示すブロック図である。
【図3】本発明の第1の実施例の動作を説明するフローチャートである。
【図4】本発明の第1の実施例の動作を説明するフローチャートである。
【図5】本発明の第1の実施例の変形例を説明するブロック図である。
【図6】本発明の第2の実施例のWebサーバの構成を示すブロック図である。
【図7】本発明の第2の実施例のクライアントの構成を示すブロック図である。
【図8】本発明の第2の実施例の動作を説明するフローチャートである。
【図9】本発明の第2の実施例の動作を説明するフローチャートである。
【図10】本発明の第2の実施例の変形例を説明するブロック図である。
【符号の説明】
101 サーバ
102 入出力制御部
103 ページデータ管理部
104 利用権認証部
105 利用権認証制御部
106 公開鍵管理部
107 チャンレンジ生成部
108 利用権検査部
201 クライアント
202 ブラウザ
204 利用権証明部
205 利用権証明制御部
206 利用権証明データ記憶部
207 利用条件評価部
208 固有レスポンス生成部
209 レスポンス生成部
210 固有データ記憶部
211 固有演算実行部
212 固有レスポンス演算部
501 スマートカード接続部
502 スマートカード
503 入出力制御部
601 サーバ
602 入出力制御部
603 スクリプト解釈部
604 利用権認証部
605 利用権認証制御部
606 チャンレンジ生成部
607 利用権検査部
701 クライアント
702 ブラウザ
704 利用権証明部
705 利用権証明制御部
706 利用権証明データ記憶部
707 利用条件評価部
708 レスポンス生成部
709 固有データ記憶部
710 固有演算実行部
711 レスポンス演算部
801 クライアント
1001 スマートカード接続部
1002 スマートカード
1003 入出力制御部

Claims (11)

  1. クライアントコンピュータと、ネットワークを介して接続されているクライアントコンピュータに対してサービスを提供するサーバコンピュータとからなるコンピュータシステムであって、
    サーバコンピュータは、
    該サーバコンピュータが提供するサービス毎に割り当てられた公開鍵を記憶する公開鍵記憶部と、
    クライアントコンピュータからのサービス要求を受けた際に、サーバコンピュータからクライアントコンピュータに対して送付するチャレンジを生成するチャレンジ生成部と、
    クライアントコンピュータに送付されたチャレンジと、該チャレンジに対してクライアントコンピュータから送り返されたレスポンスとが所定の関係にあることを公開鍵を使って検査する利用権認証部とを備え、
    クライアントコンピュータは、
    当該クライアントコンピュータに割り当てられた固有演算を実行する固有演算実行部と、
    要求するサービスに割り当てられた公開鍵に対応する秘密鍵と該クライアントコンピュータに割り当てられた固有演算の結果とから作成された利用権証明データを記憶する、利用権証明データ記憶部と、
    サーバコンピュータから送付されたチャレンジに対して、固有演算と利用権証明データとを使用して所定の計算を実行し、レスポンスを生成するレスポンス生成部とを備え、
    該クライアントコンピュータは、該サーバコンピュータが提供するサービスに対する利用権をクライアントコンピュータが保持していることをサーバコンピュータに対して証明する際に、
    サーバコンピュータから送付されたチャレンジを受け取り、
    レスポンス生成部で、該チャレンジと、固有演算実行部で実行される固有演算の結果と、利用権証明データ記憶部に記憶されている利用権証明データとから、レスポンスを生成し、
    生成したレスポンスをサーバコンピュータに送付し、
    該サーバコンピュータはクライアントコンピュータから送り返された該チャレンジに対するレスポンスを受け取り、
    利用権検査部で、そのチャレンジとレスポンスとが所定の関係にあることを、公開鍵記憶部に記憶された該サービスに割り当てられた公開鍵を使用して検査し、
    検査に成功した場合にのみ該サービスをクライアントコンピュータに提供することを特徴とするコンピュータシステム
  2. ネットワークを介して接続されているサーバコンピュータに対して、サービスを要求するクライアントコンピュータであって、
    クライアントコンピュータに割り当てられた固有演算を実行する固有演算実行部と、
    要求するサービスに割り当てられた公開鍵に対応する秘密鍵と該クライアントコンピュータに割り当てられた固有演算の結果から作成された利用権証明データを記憶する、利用権証明データ記憶部と、
    サーバコンピュータから送付されたチャレンジに対して、固有演算の結果と利用権証明データとを使用して所定の計算を実行し、レスポンスを生成するレスポンス生成部とを備え、
    該サーバコンピュータが提供するサービスに対する利用権をクライアントコンピュータが保持していることをサーバコンピュータに対して証明する際に、
    サーバコンピュータから送付されたチャレンジを受け取り、
    レスポンス生成部で、該チャレンジと、固有演算実行部で実行される固有演算の結果と、利用権証明データ記憶部に記憶されている利用権証明データとから、レスポンスを生成し、
    生成したレスポンスをサーバコンピュータに送付することを特徴とするクライアント ンピュータ
  3. ネットワークを介して接続されているサーバコンピュータに対して、サービスを要求するクライアントコンピュータであって、
    固有演算を実行するための固有演算実行部を備える携帯型装置を接続する携帯型装置接続部と、
    要求するサービスに割り当てられた公開鍵に対応する秘密鍵と該携帯型装置に割り当てられた固有演算の結果から作成された利用権証明データを記憶する、利用権証明データ記憶部と、
    サーバコンピュータから送付されたチャレンジに対して、固有演算の結果と利用権証明データとを使用して所定の計算を実行し、レスポンスを生成するレスポンス生成部とを備え、
    該サーバコンピュータが提供するサービスに対する利用権をクライアントコンピュータが保持していることをサーバコンピュータに対して証明する際に、
    サーバコンピュータから送付されたチャレンジを受け取り、
    レスポンス生成部で、該チャレンジと、携帯型装置接続部に接続された携帯型装置が持つ固有演算実行部で実行される固有演算の結果と、利用権証明データ記憶部に記憶されている利用権証明データとから、レスポンスを生成し、
    生成したレスポンスをサーバコンピュータに送付することを特徴とするクライアントコンピュータ
  4. クライアントコンピュータと、ネットワークを介して接続されているクライアントコンピュータに対してサービスを提供するサーバコンピュータとからなるコンピュータシステムであって、
    サーバコンピュータは、
    該サーバコンピュータが提供するサービス毎に割り当てられた公開鍵を記憶する公開鍵記憶部と、
    クライアントコンピュータからのサービス要求を受けた際に、サーバコンピュータからクライアントコンピュータに対して送付するチャレンジを生成するチャレンジ生成部と、
    クライアントコンピュータに送付されたチャレンジと、該チャレンジに対してクライアントコンピュータから送り返されたレスポンスと、クライアントコンピュータの利用権を証明するための利用権証明データとが所定の関係にあることを、公開鍵を使って検査する利用権検査部とを備え、
    クライアントコンピュータは、
    該クライアントコンピュータに割り当てられた固有演算を実行する固有演算実行部と、
    要求するサービスに割り当てられた公開鍵に対応する秘密鍵と該クライアントコンピュータに割り当てられた固有演算の結果とから作成された利用権証明データを記憶する、利用権証明データ記憶部と、
    サーバコンピュータから送付されたチャレンジに対して、固有演算の結果を使用して所定の計算を実行し、レスポンスを生成するレスポンス生成部とを備え、
    該サーバコンピュータが提供するサービスに対する利用権をクライアントコンピュータが保持していることをサーバコンピュータに対して証明する際に、
    サーバコンピュータから送付されたチャレンジを受け取り、
    レスポンス生成部で、該チャレンジと、固有演算実行部で実行される固有演算の結果とから、レスポンスを生成し、
    生成したレスポンスと、利用権証明データ記憶部に記憶されている利用権証明データとをサーバコンピュータに送付し、
    該サーバコンピュータは、クライアントコンピュータからそれぞれ送り返された、該チャレンジに対するレスポンスと、該サービスに対するクライアントコンピュータの利用権を証明するための利用権証明データを受け取り、
    利用権検査部で、該チャレンジと該利用権証明データと該レスポンスとが所定の関係にあることを、公開鍵記憶部に記憶されている該サービスに割り当てられた公開鍵を使用して検査し、
    検査に成功した場合にのみ該サービスをクライアントコンピュータに提供することを特徴とするコンピュータシステム
  5. ネットワークを介して接続されているサーバコンピュータに対して、サービスを要求するクライアントコンピュータであって、
    クライアントコンピュータに割り当てられた固有演算を実行する固有演算実行部と、
    要求するサービスに割り当てられた公開鍵に対応する秘密鍵と該クライアントコンピュータに割り当てられた固有演算の結果とから作成された利用権証明データを記憶する、利用権証明データ記憶部と、
    サーバコンピュータから送付されたチャレンジに対して、固有演算の結果を使用して所定の計算を実行し、レスポンスを生成するレスポンス生成部とを備え、
    該サーバコンピュータが提供するサービスに対する利用権をクライアントコンピュータが保持していることをサーバコンピュータに対して証明する際に、
    サーバコンピュータから送付されたチャレンジを受け取り、
    レスポンス生成部で、該チャレンジと、固有演算実行部で実行される固有演算の結果とから、レスポンスを生成し、
    生成したレスポンスと、利用権証明データ記憶部に記憶されている利用権証明データとをサーバコンピュータに送付することを特徴とするクライアントコンピュータ
  6. ネットワークを介して接続されているサーバコンピュータに対して、サービスを要求するクライアントコンピュータであって、
    固有演算を実行するための固有演算実行部を備える携帯型装置を接続する携帯型装置接続部と、
    要求するサービスに割り当てられた公開鍵に対応する秘密鍵と該携帯型装置に割り当てられた固有演算の結果とから作成された利用権証明データを記憶する、利用権証明データ記憶部と、
    サーバコンピュータから送付されたチャレンジに対して、固有演算の結果を使用して所定の計算を実行し、レスポンスを生成するレスポンス生成部とを備え、
    該サーバコンピュータが提供するサービスに対する利用権をクライアントコンピュータが保持していることをサーバコンピュータに対して証明する際に、
    サーバコンピュータから送付されたチャレンジを受け取り、
    レスポンス生成部で、該チャレンジと、携帯型装置接続部に接続された携帯型装置が持つ固有演算実行部で実行される固有演算とから、レスポンスを生成し、
    生成したレスポンスと、利用権証明データ記憶部に記憶されている利用権証明データとをサーバコンピュータに送付することを特徴とするクライアントコンピュータ
  7. 請求項3または6記載のクライアントコンピュータであって、利用権証明データ記憶部が、携帯型装置接続部で接続される携帯型装置に含まれることを特徴とするクライアントコンピュータ
  8. 請求項1または4記載のコンピュータシステムであって、
    該サーバコンピュータが、クライアントコンピュータに対してWebアプリケーションを提供するWebサーバコンピュータであって、
    クライアントコンピュータに対して提供する個々のWebページに対して公開鍵記憶部に記憶されている公開鍵が割り当てられており、
    クライアントコンピュータからWebページに対してアクセスの要求があった際に、該Webページに対するクライアントコンピュータの利用権を、該Webページに対して割り当てられている公開鍵を使用して検査することを特徴とするコンピュータシステム
  9. 請求項1または4記載のコンピュータシステムであって、
    該サーバコンピュータが、クライアントコンピュータに対してWebアプリケーションを提供するWebサーバコンピュータであって、
    クライアントコンピュータに対して提供するWebページの集合に対して公開鍵記憶部に記憶されている公開鍵が割り当てられており、
    クライアントコンピュータからWebページに対してアクセスの要求があった際に、該Webページに対するクライアントコンピュータの利用権を、該Webページが属するWebページの集合に対して割り当てられている公開鍵を使用して検査することを特徴とするコンピュータシステム
  10. クライアントコンピュータが、ネットワークを介して接続されているサーバコンピュータに対してサービスを要求する際に、要求するサービスに対する利用権を所持していることをサーバコンピュータに対して証明する方法であって、
    クライアントコンピュータは、
    該クライアントコンピュータに割り当てられた固有演算を実行する固有演算実行部と、
    要求するサービスに割り当てられた公開鍵に対応する秘密鍵と該クライアントコンピュータに割り当てられた固有演算の結果とから作成された利用権証明データを記憶する、利用権証明データ記憶部と、
    サーバコンピュータから送付されたチャレンジに対して、固有演算の結果と利用権証明データとを使用して所定の計算を実行し、レスポンスを生成するレスポンス生成部とを備え、
    サーバコンピュータから送付されたチャレンジを受け取るステップと、
    上記固有演算実行部により、該クライアントコンピュータにに割り当てられた固有の演算を実行するステップと、
    レスポンス生成部により、サーバコンピュータから送付されたチャレンジと、固有の演算の結果と、前記利用権証明データとからレスポンスを作成するステップと、
    レスポンスをサーバコンピュータに送付するステップとを有することを特徴とす利用権証明方法。
  11. クライアントコンピュータが、ネットワークを介して接続されているサーバコンピュータに対してサービスを要求する際に、要求するサービスに対する利用権を所持していることをサーバコンピュータに対して証明する方法であって、
    クライアントコンピュータは、
    クライアントコンピュータに割り当てられた固有演算を実行する固有演算実行部と、
    要求するサービスに割り当てられた公開鍵に対応する秘密鍵と該クライアントコンピュータに割り当てられた固有演算の結果とから作成された利用権証明データを記憶する、利用権証明データ記憶部と、
    サーバコンピュータから送付されたチャレンジに対して、固有演算の結果を使用して所定の計算を実行し、レスポンスを生成するレスポンス生成部とを備え、
    サーバコンピュータから送付されたチャレンジを受け取るステップと、
    上記固有演算実行部により、該クライアントコンピュータに割り当てられた固有の演算を実行するステップと、
    上記レスポンス生成部により、サーバコンピュータから送付されたチャレンジと、固有の演算の結果とからレスポンスを作成するステップと、
    レスポンスと前記利用権証明データとをサーバコンピュータに送付するステップとを有することを特徴とする利用権証明方法。
JP2001003603A 2001-01-11 2001-01-11 利用権制御を伴うサーバおよびクライアントならびにサービス提供方法および利用権証明方法 Expired - Fee Related JP3593979B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001003603A JP3593979B2 (ja) 2001-01-11 2001-01-11 利用権制御を伴うサーバおよびクライアントならびにサービス提供方法および利用権証明方法
US10/014,362 US7165176B2 (en) 2001-01-11 2001-12-11 Access privilege authentication of client computer for services provided by server computer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001003603A JP3593979B2 (ja) 2001-01-11 2001-01-11 利用権制御を伴うサーバおよびクライアントならびにサービス提供方法および利用権証明方法

Publications (2)

Publication Number Publication Date
JP2002207698A JP2002207698A (ja) 2002-07-26
JP3593979B2 true JP3593979B2 (ja) 2004-11-24

Family

ID=18871923

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001003603A Expired - Fee Related JP3593979B2 (ja) 2001-01-11 2001-01-11 利用権制御を伴うサーバおよびクライアントならびにサービス提供方法および利用権証明方法

Country Status (2)

Country Link
US (1) US7165176B2 (ja)
JP (1) JP3593979B2 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030172297A1 (en) * 2002-03-05 2003-09-11 Gunter Carl A. Method and system for maintaining secure access to web server services using public keys
US20020162019A1 (en) * 2001-04-25 2002-10-31 Berry Michael C. Method and system for managing access to services
US20020162004A1 (en) * 2001-04-25 2002-10-31 Gunter Carl A. Method and system for managing access to services
US20050210263A1 (en) * 2001-04-25 2005-09-22 Levas Robert G Electronic form routing and data capture system and method
US6885388B2 (en) * 2001-04-25 2005-04-26 Probaris Technologies Inc. Method for automatically generating list of meeting participants and delegation permission
US20030172299A1 (en) * 2002-03-05 2003-09-11 Gunter Carl A. Method and system for maintaining secure access to web server services using permissions
US20020162002A1 (en) * 2001-04-25 2002-10-31 Gunter Carl A. Method and system for controlling access to services
US20030236977A1 (en) * 2001-04-25 2003-12-25 Levas Robert George Method and system for providing secure access to applications
US8099503B2 (en) 2003-12-23 2012-01-17 Microsoft Corporation Methods and systems for providing secure access to a hosted service via a client application
KR100610317B1 (ko) * 2004-01-06 2006-08-09 삼성전자주식회사 홈 네트워크를 구성하는 기기들에 대한 인증 장치 및 방법
US20050188421A1 (en) * 2004-02-24 2005-08-25 Arbajian Pierre E. System and method for providing data security
US7587594B1 (en) * 2004-08-30 2009-09-08 Microsoft Corporation Dynamic out-of-process software components isolation for trustworthiness execution
US7665098B2 (en) * 2005-04-29 2010-02-16 Microsoft Corporation System and method for monitoring interactions between application programs and data stores
US20060282830A1 (en) * 2005-06-13 2006-12-14 Microsoft Corporation Analysis of the impact of application programs on resources stored in data stores
US20110167477A1 (en) * 2010-01-07 2011-07-07 Nicola Piccirillo Method and apparatus for providing controlled access to a computer system/facility resource for remote equipment monitoring and diagnostics
US10135613B2 (en) 2012-01-13 2018-11-20 Qualcomm Incorporated Method and apparatus for generating a privilege-based key
CA2946695C (en) * 2014-04-25 2021-05-04 Securebrain Corporation Fraud detection network system and fraud detection method
KR102224974B1 (ko) * 2014-10-30 2021-03-08 에스케이텔레콤 주식회사 서비스 서버 및 그 동작 방법
JP6647378B1 (ja) * 2018-12-14 2020-02-14 明雄 小田中 デジタル割符方式を利用した認証システム
US10389708B1 (en) 2019-01-03 2019-08-20 Capital One Services, Llc Secure authentication of a user associated with communication with a service representative
CN112995325A (zh) * 2021-03-10 2021-06-18 中国民航信息网络股份有限公司 服务调试方法、调试服务、电子设备及计算机存储介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5740361A (en) * 1996-06-03 1998-04-14 Compuserve Incorporated System for remote pass-phrase authentication
JP3791131B2 (ja) 1997-07-14 2006-06-28 富士ゼロックス株式会社 電子チケットシステム
AUPO847897A0 (en) * 1997-08-08 1997-09-04 Canon Information Systems Research Australia Pty Ltd Network resource access method and apparatus
US6085249A (en) * 1997-10-24 2000-07-04 Pictra, Inc. Method and apparatuses for transferring data for multiple applications through a single communication link in response to authentication information
JPH11175474A (ja) 1997-12-10 1999-07-02 Machine Contorol System Kk ウェブサーバ用ログインマネージャ
JPH11234263A (ja) 1998-02-12 1999-08-27 Fuji Xerox Co Ltd 相互認証方法および装置
US6199113B1 (en) * 1998-04-15 2001-03-06 Sun Microsystems, Inc. Apparatus and method for providing trusted network security
FI107984B (fi) * 1998-05-20 2001-10-31 Nokia Networks Oy Palvelun luvattoman käytön estäminen
KR20010004791A (ko) * 1999-06-29 2001-01-15 윤종용 인터넷 환경의 이동통신시스템에서 사용자 정보 보안 장치 및그 방법
US20030115452A1 (en) * 2000-12-19 2003-06-19 Ravi Sandhu One time password entry to access multiple network sites

Also Published As

Publication number Publication date
US20030084296A1 (en) 2003-05-01
JP2002207698A (ja) 2002-07-26
US7165176B2 (en) 2007-01-16

Similar Documents

Publication Publication Date Title
JP3593979B2 (ja) 利用権制御を伴うサーバおよびクライアントならびにサービス提供方法および利用権証明方法
KR100463736B1 (ko) 보안 환경에서의 이동 통신 장치 소프트웨어의 디버깅 및테스팅 허가 방법
CN108259438B (zh) 一种基于区块链技术的认证的方法和装置
JP4864289B2 (ja) ネットワークユーザ認証システムおよび方法
US7085840B2 (en) Enhanced quality of identification in a data communications network
US7496751B2 (en) Privacy and identification in a data communications network
US11336449B2 (en) Information processing apparatus, computer program product, and resource providing method
CN110300972B (zh) 匿名证明
JPH1141230A (ja) ユーザ認証方法及びユーザ認証システム
US20030084302A1 (en) Portability and privacy with data communications network browsing
US20130290719A1 (en) System and method for accessing integrated applications in a single sign-on enabled enterprise solution
US8806195B2 (en) User interface generation in view of constraints of a certificate profile
US20140006781A1 (en) Encapsulating the complexity of cryptographic authentication in black-boxes
KR20050040836A (ko) 데이터 통신망에서의 식별시 향상시킨 프라이버시 보호
JP2005538434A (ja) 連携型(フェデレーテッド)環境におけるユーザ判定による認証のための方法およびシステム
WO2006061326A1 (en) Method and system for secure binding register name identifier profile
CN109842616B (zh) 账号绑定方法、装置及服务器
CN107872455A (zh) 一种跨域单点登录系统及其方法
US20160241536A1 (en) System and methods for user authentication across multiple domains
CN103069742B (zh) 用于将密钥绑定到名称空间的方法和装置
Hammann et al. Privacy-preserving openid connect
JP2011215753A (ja) 認証システムおよび認証方法
CN110365684A (zh) 应用集群的访问控制方法、装置和电子设备
JP2014106652A (ja) データ参照システムおよびアプリケーション認証方法
CN112532599A (zh) 一种动态鉴权方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20031218

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20040122

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20040122

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20040315

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040511

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040706

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040810

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040823

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070910

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080910

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090910

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100910

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110910

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120910

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120910

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130910

Year of fee payment: 9

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S802 Written request for registration of partial abandonment of right

Free format text: JAPANESE INTERMEDIATE CODE: R311802

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees