(57)【特許請求の範囲】
【請求項１】
ＩＤトークンに格納されている少なくとも１つの属性を読み出す方法であって、前記ＩＤトークンをユーザに割り当てるために、前記方法は、
前記ＩＤトークンに対して前記ユーザを認証する段階と、
前記ＩＤトークンに対して第１のコンピュータシステムを認証する段階と、
前記ＩＤトークンに対する前記ユーザおよび前記第１のコンピュータシステムの認証が成功すると、前記第１のコンピュータシステムから前記ＩＤトークンに格納されている前記少なくとも１つの属性への読み出しアクセスを行い、署名後の前記少なくとも１つの属性を、時間情報および処理識別子とともに第２のコンピュータシステムに送信する段階と
を備え、
前記少なくとも１つの属性の前記時間情報の生成は前記第１のコンピュータシステムにより行われる、方法。
【請求項２】
前記ＩＤトークンに対する前記第１のコンピュータシステムの認証は、証明書の助けを借りて行われ、前記証明書は、前記ＩＤトークンに格納されている属性であって前記第１のコンピュータシステムが前記読み出しアクセスを許可されている前記属性の指定を含む請求項１に記載の方法。
【請求項３】
前記ＩＤトークンは、前記証明書の助けを借りて、前記属性のうちの少なくとも１つへの前記読み出しアクセスについて前記第１のコンピュータシステムが前記読み出しを許可されているかをテストする請求項２に記載の方法。
【請求項４】
前記ＩＤトークンから読み出した前記少なくとも１つの属性および前記時間情報に対して前記第１のコンピュータシステムが署名する段階と
前記第１のコンピュータシステムから第２のコンピュータシステムへ、署名された前記属性と前記時間情報とを送信する段階と、
前記第２のコンピュータシステムが、前記署名された属性がまだ有効かどうかを、前記時間情報を利用してテストして判断する段階と
をさらに備える請求項１から３のいずれか一項に記載の方法。
【請求項５】
前記第２のコンピュータシステムへ第３のコンピュータシステムから要求を送信する段階と、
前記第２のコンピュータシステムにより１以上の属性を指定する段階と、
前記第２のコンピュータシステムから前記第１のコンピュータシステムへ、処理識別子を含む前記属性の指定を送信する段階と
をさらに備え、
前記第１のコンピュータシステムの前記読み出しアクセスは、前記ＩＤトークンから前記属性の指定に指定されている前記１以上の属性を読み出すために行われ、前記署名された属性と前記時間情報とは、前記処理識別子とともに、前記第１のコンピュータシステムから前記第２のコンピュータシステムへ送信され、前記第２のコンピュータシステムは、前記第１のコンピュータシステムから受信した前記属性を、前記処理識別子を利用して前記属性の指定に割り当て、前記第２のコンピュータシステムは、前記要求に基づいて処理を実行するための前提条件として前記署名の有効性をテストする請求項４に記載の方法。
【請求項６】
前記要求は、前記第２のコンピュータシステムが前記第１のコンピュータシステムを識別するための識別子を含み、前記属性の指定の前記第２のコンピュータシステムから前記第１のコンピュータシステムへの送信は、前記第３のコンピュータシステムの関与なしに行われる請求項５に記載の方法。
【請求項７】
前記第３のコンピュータシステムは、複数の予め定義された設定データセットを有し、前記設定データセットの各々は、属性のサブセット、少なくとも１つのデータソース、および、第１のコンピュータシステムセットのうちの１つの第１のコンピュータシステムを指定し、前記第２のコンピュータシステムの前記属性の指定は、先ず前記第３のコンピュータシステムに送信されて、前記第３のコンピュータシステムによって、前記設定データセットから、前記属性の指定が指定する前記少なくとも１つの属性が含まれている属性サブセットを指定する少なくとも１つの前記設定データセットが選択され、前記第３のコンピュータシステムは、前記属性の指定を前記第１のコンピュータシステムに中継し、前記第１のコンピュータシステムと、前記選択された設定データセットの前記データソースの前記指定によって特定された前記ＩＤトークンとの間の接続が、前記第３のコンピュータシステムを介して構築される請求項５に記載の方法。
【請求項８】
前記第１のコンピュータシステムが前記ＩＤトークンから読み出した前記少なくとも１つの属性は、前記第３のコンピュータシステムに送られ、さらに、前記ユーザがリリースした後で前記第２のコンピュータシステムへと中継される請求項５から７のいずれか一項の記載の方法。
【請求項９】
前記ユーザは、前記第２のコンピュータシステムへと中継する前に、さらなるデータを前記属性に追加することができる請求項８に記載の方法。
【請求項１０】
前記第１のコンピュータシステムは、異なる読み出しアクセスを有する複数の証明書を有し、前記第１のコンピュータシステムは、前記属性の指定の受信に基づいて、前記複数の証明書のうちの、前記属性の指定に指定されている前記属性を読み出すのに足る読み出しアクセスを有する少なくとも１つの証明書を選択する請求項１から９のいずれか一項に記載の方法。
【請求項１１】
前記第３のコンピュータシステムは、前記第３のコンピュータシステムからネットワークを介してさらなる属性をクエリするために外部データソースを指定する少なくとも１つの設定データセットを有する請求項５から９のいずれか一項に記載の方法。
【請求項１２】
前記さらなる属性のクエリは、前記少なくとも１つの属性が前記ＩＤトークンから読み出され、前記第３のコンピュータシステムが前記第１のコンピュータシステムから前記少なくとも１つ署名された属性を受信した後に行われ、前記クエリには、前記少なくとも１つの署名された属性が含まれている請求項１１に記載の方法。
【請求項１３】
請求項１から１２のいずれか一項に記載の方法をコンピュータシステムに実行させるためのプログラム。
【請求項１４】
コンピュータシステムであって、
少なくとも１つの属性を指定する属性の指定をネットワーク経由で受信する手段と、
ＩＤトークンに対して認証する手段と、
前記ＩＤトークンからセキュアな接続を介して少なくとも１つの属性を読み出す手段と、
前記少なくとも１つの属性の時間情報を生成する手段と
を備え、
前記少なくとも１つの属性の前記読み出しは、前記ＩＤトークンに対して割り当てられたユーザおよび前記コンピュータシステムの両方が自身を前記ＩＤトークンに対して認証することを前提条件として行われるコンピュータシステム。
【請求項１５】
前記属性の指定の受信に基づいて、前記ＩＤトークンに対して認証せよとの前記ユーザに対する要求を生成する手段を備える請求項１４に記載のコンピュータシステム。
【請求項１６】
前記属性の指定を受信する手段は、第２のコンピュータシステムにより形成され、前記ＩＤトークンから読み出した前記少なくとも１つの属性を、第３のコンピュータシステムに送り、前記第２のコンピュータシステムに中継させる手段を備える請求項１４または１５に記載のコンピュータシステム。
【請求項１７】
前記属性の指定は、少なくとも１つの処理識別子を指定する請求項１４、１５、または１６のいずれか一項に記載のコンピュータシステム。
【請求項１８】
前記少なくとも１つの属性、前記時間情報、および前記処理識別子のうちの少なくとも１つに署名する手段を備え、
前記署名された属性は、前記署名された時間情報および前記署名された処理識別子の少なくとも一方とともに送信される請求項１７に記載のコンピュータシステム。
【請求項１９】
様々な読み出しアクセスを有する証明書の幾つかを有し、前記コンピュータシステムは、前記属性の指定の受信に基づいて、前記証明書のうち、前記属性の指定に指定されている前記属性を読み出すのに足る読み出しアクセスを有する少なくとも１つの証明書を選択するよう設計されている、請求項１４から１８のいずれか一項に記載のコンピュータシステム。
【請求項２０】
少なくとも１つの属性をセーブするためのセキュアなメモリ領域と、
ＩＤトークンに対して、当該ＩＤトークンに割り当てられているユーザを認証する手段と、
前記ＩＤトークンに対して、第１のコンピュータシステムを認証する手段と、
前記第１のコンピュータシステムが前記少なくとも１つの属性を読み出すことができるように、前記第１のコンピュータシステムにセキュアな接続を構築する手段と
を有するＩＤトークン、及び
前記処理識別子に割り当てられた処理を実行するサービスコンピュータシステム
を備え、
前記サービスコンピュータシステムは、
前記処理識別子を利用して前記属性の指定に前記少なくとも１つの受信した属性を割り当てる手段と、
前記署名をテストする手段と、
前記時間情報を利用して前記少なくとも１つの受信した属性の有効性をテストする手段と、
前記署名が有効であり、前記少なくとも１つの受信した属性が有効であった場合のみに、前記処理を実行する手段と
を有し、
前記第１のコンピュータシステムが前記ＩＤトークンから前記少なくとも１つの属性を読み出すための必須の前提条件は、前記ＩＤトークンに対して前記ユーザと前記第１のコンピュータシステムとが認証に成功することである、請求項１８に記載のコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＤトークンから少なくとも１つの属性を読み出す方法、コンピュータプログラムプロダクト、ＩＤトークン、およびコンピュータシステムに係る。
【背景技術】
【０００２】
先行技術から、ユーザのいわゆるデジタルＩＤ管理方法として様々な方法が知られている。
【０００３】
Ｍｉｃｒｏｓｏｆｔ社のＷｉｎｄｏｗｓ（登録商標）ＣａｒｄＳｐａｃｅは、インターネットユーザに、自身のデジタルＩＤをオンラインサービスに通信させるためのクライアントベースのデジタルＩＤシステムである。この技術の特に悪い点は、ユーザが自身のデジタルＩＤを操作できてしまうことである。
【０００４】
これに対して、ＯＰＥＮＩＤは、サーバベースのシステムである。いわゆるＩＤサーバは、登録されているユーザのデジタルＩＤを含んだデータベースを格納している。この技術の特に悪い点は、ユーザのデジタルＩＤが中央的に格納され、ユーザの特徴を記録することができてしまうので、データセキュリティがないことである。
【０００５】
デジタルＩＤを管理するまた別の方法に、米国特許出願公開第２００７／０２９４４３１号明細書があり、この技術もユーザ登録を必要とする。
【０００６】
トークンベースの認証方法は、同じ特許出願人によるドイツ特許出願である第１０  ２００８  ０００  ０６７．１−３１号明細書、第１０  ２００８  ０４０  ４１６．０−３１号明細書、第１０  ２００８  ０４２  ２６２．２−３１号明細書、および、第１０  ２００９  ０２６  ９５３．３号明細書があり、出願時には公開されていない。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
これに対して、本発明は、少なくとも１つの属性を読み出すより良い方法、対応するコンピュータプログラムプロダクト、ＩＤトークン、およびコンピュータシステムを開発する、という課題に基づくものである。
【課題を解決するための手段】
【０００８】
本発明の課題は、独立請求項の特徴によりいずれの場合も達成される。本発明の実施形態は、従属請求項に記載されている。
【０００９】
本発明の実施形態においては、ＩＤトークンに格納されている少なくとも１つの属性を読み出す方法であって、ＩＤトークンはユーザに割り当てられており、方法は、ＩＤトークンに対してユーザを認証する段階と、ＩＤトークンに対して第１のコンピュータシステムを認証する段階と、ＩＤトークンに対するユーザおよび第１のコンピュータシステムの認証が成功すると、第１のコンピュータシステムから、少なくとも１つの属性を、第２のコンピュータシステムへ送信するためにＩＤトークンに格納されている少なくとも１つの属性への読み出しアクセスを行う段階とを備え、少なくとも１つの属性の時間情報が第１のコンピュータシステムにより行われる方法が開示される。この手段により、「信頼点」を作成することができる。
【００１０】
本発明によると、ＩＤトークンに格納されている属性の１以上を、第１のコンピュータシステムにより読み出させて、ＩＤトークンと第１のコンピュータシステムとの間の接続を、ネットワーク（特にインターネット）経由で構築することができる。少なくとも１つの属性は、ＩＤトークンに割り当てられたユーザのＩＤ（特にいわゆるデジタルＩＤ）に関する指定であってよい。例えば、第１のコンピュータシステムは、姓名、アドレス等の属性を読み出し、これらの属性を第２のコンピュータシステム（例えばオンラインサービス）へと中継する。
【００１１】
しかし、ユーザのＩＤを証明するための用途ではなくて、ユーザが、特定の年齢群のオンラインサービスにアクセスを希望する場合にはユーザの年齢、また別の例としては、ユーザが、オンラインサービスを利用する資格を与えられている特定の団体の会員であることを示す別の属性等、ユーザが特定のオンラインサービスを利用する資格を証明するために、単一の属性を読み出すこともできる。
【００１２】
ＩＤトークンの例としては、ＵＳＢスティック、または、書類（document）（特に重要書類またはセキュリティ関連の書類）等の可搬型電子デバイスであってもよい。
【００１３】
本発明における、「書類」は、特定の紙および／またはプラスチックの書類（例えば、識別書類）のことと理解されてよく、特に、パスポート、個人識別カード、査証、運転免許証、車両登録証、車両タイトル（vehicle title）、社員証、健康保険証、その他のＩＤ書類（例えばチップカード）、支払い手段（特に、銀行カード、クレジットカード）、着陸証書（bills of landing）、その他の、少なくとも１つの属性を格納するためのデータ格納ユニットを統合可能な証明書のことであってよい。
【００１４】
このように本発明の実施形態は、公的文書等の特に信頼性のある書類から、少なくとも１つの属性を読み出すことができるために非常に有利である。さらなる利点としては、属性を中央で格納する必要がなくなることである。本発明は、デジタルＩＤに属する属性を、最適なデータセキュリティと非常に便利な処理と組み合わせることにより、高い信頼性を達成することができる。
【００１５】
本発明の一実施形態においては、第１のコンピュータシステムは、ＩＤトークンに対して第１のコンピュータシステムを認証するために利用される少なくとも１つの証明書を有する。証明書には、第１のコンピュータシステムが読み取り許可を有する属性の指定が含まれる。この証明書を利用することで、ＩＤトークンは、第１のコンピュータシステムが、第１のコンピュータシステムが実際に読み出しアクセスを実行する前に、第１のコンピュータシステムが、属性の読み出しアクセスに対して、要求されている読み出しを承認されているかをテストすることができる。
【００１６】
「証明書」はここでは、公開鍵証明書とも称されるデジタル証明書のことであってよい。証明書は、非対称暗号システムの公開鍵を、ある実体（例えば人またはデバイス）に対して割り当てる機能を有する構造化されたデータである。例えば、証明書は、Ｘ．５０９規格その他の規格に対応したものであってよい。
【００１７】
本発明の一実施形態では、第１のコンピュータシステムは、ＩＤトークンから読み出した少なくとも１つの属性を第２のコンピュータシステムに直接送信する。第２のコンピュータシステムは、例えば、バンキングサービス等のオンラインサービス、またはその他のサービスを提供したり、製品を発注したりするサーバであってよい。例えばユーザは、口座をオンラインで開設することができ、このために、ユーザのＩＤを含む属性を、第１のコンピュータシステムから、銀行の第２のコンピュータシステムに送信する。
【００１８】
本発明の一実施形態では、ＩＤトークンから読み出す属性の送信は、最初、第１のコンピュータシステムから、ユーザの第３のコンピュータシステムへと行われる。例えば、第３のコンピュータシステムは、ユーザが第２のコンピュータシステムのウェブページを開設可能な通常のインターネットブラウザを有している。ユーザは、ウェブページに、サービスまたは製品の発注要求を入力することができる。
【００１９】
第２のコンピュータシステムは、サービス提供または受注のために必要となる、これらの属性（例えばユーザの、または彼のＩＤトークンの属性）を指定する。対応する属性の指定には、これら属性の指定が含まれており、これらを次に、第２のコンピュータシステムから第１のコンピュータシステムへ送信する。この処理の遂行には、第３のコンピュータシステムの関与があってもなくてもよい。第３のコンピュータシステムを関与させる場合には、例えば第１のコンピュータシステムのＵＲＬを、第３のコンピュータシステムから第２のコンピュータシステムのウェブページに入力することで、ユーザは、第２のコンピュータシステムに対して所望の第１のコンピュータシステムを指定する。
【００２０】
本発明の一実施形態においては、第２のコンピュータシステムへのユーザからのサービス要求には、識別子の指定が含まれ、識別子は、第１のコンピュータシステムを特定する。例えば、識別子は、例えば第１のコンピュータシステムのＵＲＬ等のリンクであってよい。
【００２１】
本発明の一実施形態においては、属性の指定は、第２のコンピュータシステムから第１のコンピュータシステムに直接送られるのではなくて、先ずは第２のコンピュータシステムから、第３のコンピュータシステムに送られる。第３のコンピュータシステムは、複数の予め定義された設定データセットを有しており、第３のコンピュータは、複数の予め定義された設定データセットを有していることで、設定データセットの各々により、属性サブセット、少なくとも１つのデータソース、および第１のコンピュータシステムのセットのうちの１つの第１のコンピュータシステムが特定され、属性の指定は、先ず第２のコンピュータシステムから第３のコンピュータシステムへ送信され、第３のコンピュータシステムによって、設定データセットのうち、属性の指定において指定されている少なくとも１つの属性を含む属性サブセットを指定するものが選択され、次いで第３のコンピュータは、属性の指定を、第１のコンピュータシステムに中継して、選択された設定データセットのデータソースの指定が指定しているＩＤトークンにより接続が構築される。
【００２２】
本発明の一実施形態においては、ＩＤトークンから読み出された属性は、第１のコンピュータシステムにより署名されて、第３のコンピュータシステムに送信される。従って、第３のコンピュータシステムのユーザは、属性を読み出すことはできるが、変更することはできない。ユーザがリリースした後になって始めて、属性が第３のコンピュータシステムから第２のコンピュータシステムへと中継される。
【００２３】
本発明の一実施形態では、中継される前の属性に、ユーザがさらなるデータ追加することができる構成とすることもできる。
【００２４】
本発明の一実施形態では、第１のコンピュータシステムは、異なる読み出しアクセスを有する複数の証明書を有している。属性の指定を受信すると、第１のコンピュータシステムは、これら証明書のうちの１以上を選択して、ＩＤトークンから、または幾つかの異なるＩＤトークンから、対応する属性を読み出すことができる。
【００２５】
本発明の一実施形態では、第３のコンピュータシステムは、ネットワーク経由で第３のコンピュータシステムからさらなる属性をクエリする外部データソースを指定する少なくとも１つの設定データセットを有する。
【００２６】
本発明の一実施形態では、さらなる属性のクエリは、少なくとも１つの属性がＩＤトークンから読み出された後であって、第３のコンピュータシステムが少なくとも１つの属性を第１のコンピュータシステムから受信した後に行われ、クエリにはこの少なくとも１つの属性が含まれる。
【００２７】
本発明の実施形態は、時間情報に基づいて、第１のコンピュータシステムがＩＤトークンから読み出した少なくとも１つの属性が、時間的有効性を示すことができる点が特に有効である。例えば、第１のコンピュータシステムによって、少なくとも１つの属性に、ＩＤトークンから属性が読み出された時間または属性が第１のコンピュータシステムから送信された時間を示すタイムスタンプが追加される。
【００２８】
例えば、第１のコンピュータシステムは、少なくとも１つの属性およびそのタイムスタンプを含むメッセージを生成する。第１のコンピュータシステムは、このメッセージを、第２のコンピュータシステムから受信した属性の指定に対する応答として送信する。メッセージは、例えばいわゆるソフトトークンとして設計されてよい。このメッセージは、タイムスタンプが示す時間から開始される最大有効期間を有している。
【００２９】
例えば、有効期間は、数秒または数分であってよく、好適には、第１のコンピュータシステムから第２のコンピュータシステムにメッセージを送信する際に要される通常の時間に比べてあまり長くないほうがよい。こうすることにより、悪意のある攻撃によってメッセージを操作しようとする試み等の、メッセージの誤用が防がれる。このような悪意のある攻撃が成功するためには長時間を要するので、この有効期間の後にメッセージが無効とする。
【００３０】
さらなる実施形態においては、時間情報は、例えば第１のコンピュータシステムが生成するソフトトークン等のメッセージの最大有効期限である。これは、信頼の置ける実体（つまり第１のコンピュータシステム）が、自身で、メッセージを有効とする最大期間を決定することができる、という利点を有する。
【００３１】
本発明の一実施形態では、第２のコンピュータシステムは、第３のコンピュータシステムから受信する要求に基づいて処理識別子（特に、いわゆる処理番号（ＴＡＮ））を生成する。この処理識別子は、第２のコンピュータシステムから第１のコンピュータシステムに、属性の指定とともに送られる。この実施形態では、第１のコンピュータシステムが生成するメッセージは、さらに、少なくとも１つ署名済み属性および時間情報に加えて、これも署名されていることが望ましい処理識別子を含む。
【００３２】
第２のコンピュータシステムが第１のコンピュータシステムからメッセージを受信すると、メッセージの処理識別子を利用して、このメッセージを第３のコンピュータシステムから受信した要求を割り当てることができ、従って、このメッセージとともに受信する少なくとも１つの属性も、第３のコンピュータシステムおよび／またはそのＩＤトークンに割り当てることができる。
【００３３】
「処理識別子」は、ここでは、ある既知の値の意味であり、第２のコンピュータシステムから第１のコンピュータシステムに送信される属性の指定を、その後に第２のコンピュータシステムが受信するメッセージに割り当てることを可能とする。処理識別子は、固有識別子またはグローバル一意識別子（ＧＵＩＤ）等の識別子であってよい。
【００３４】
さらなる態様においては、本発明は、本発明による方法を実行する実行可能プログラム命令を有するコンピュータプログラムプロダクト（特にデジタル格納媒体）に係る。
【００３５】
本発明の実施形態においては、ＩＤトークンを、少なくとも１つの属性を格納するセキュアなメモリ領域と、ＩＤトークンに対して、ＩＤトークンに割り当てられたユーザを認証する手段、ＩＤトークンに対して第１のコンピュータシステムを認証する手段、第１のコンピュータシステムにセキュアな接続を生成する手段とともに利用され、ＩＤトークンから少なくとも１つの属性を読み出す際の第１のコンピュータシステムの必須前提条件として、ＩＤトークンに対するユーザおよび第１のコンピュータシステムの認証に成功することが含まれる。
【００３６】
機械可読旅行書類（machine-readable travel documents）用の拡張アクセス制御（ＭＲＴＤ）として知られており、国際民間航空機関（ＩＣＡＯ）として指定されているようにＩＤトークンに対して第１のコンピュータシステムを認証することに加えて、ユーザは、ＩＤトークンに対して自身を認証する必要がある。例えば、ユーザのＩＤトークンに対する認証が成功すると、トークンの施錠が解除され、次のステップ（つまり、第１のコンピュータシステムのＩＤトークンに対する認証、および／または、属性を読み出すためのセキュアな接続の生成）を実行することができるようになる。
【００３７】
本発明の一実施形態では、ＩＤトークンは、エンドツーエンド暗号化手段を有する。これにより、ユーザはエンドツーエンド暗号化による接続によって送信されるデータに変更を加えることができなくなるので、ＩＤトークンと第１のコンピュータシステムとの間に、ユーザの第３のコンピュータシステムを介した接続を構築することができる。
【００３８】
さらなる態様においては、本発明は、ネットワークを介して、少なくとも１つの属性が指定される属性の指定を受信する手段と、ＩＤトークンに対する認証手段と、セキュアな接続を介してＩＤトークンから少なくとも１つの属性を読み出す手段と、少なくとも１つの属性の時間情報を生成する手段と有し、少なくとも１つの属性の読み出しは、ＩＤトークンに割り当てられているユーザが、自身をＩＤトークンに対して認証したことを前提として行われる、第１のコンピュータシステムに係る。
【００３９】
本発明の一実施形態において、第１のコンピュータシステムは、ユーザに対するプロンプトを生成する手段を含んでよい。第１のコンピュータシステムは、例えば第２のコンピュータシステムから属性の指定を受信した後で、ユーザの第３のコンピュータシステムに要求を送り、ユーザに対して、自身をＩＤトークンに対して認証するよう促す。ユーザのＩＤトークンに対する認証が成功すると、第１のコンピュータシステムは、第３のコンピュータシステムから確認を受信する。そして第１のコンピュータシステムは、自身をＩＤトークンに対して認証して、セキュアな接続が、エンドツーエンド暗号化によりＩＤトークンと第１のコンピュータシステムとの間に構築される。
【００４０】
本発明の一実施形態では、第１のコンピュータシステムは、各々異なる読み出しアクセスを指定する複数の証明書を有している。属性の指定を受信すると、第１のコンピュータシステムは、指定された属性を読み出すために十分な読み出しアクセスを有する、これら証明書のうちの少なくとも１つを選択する。
【００４１】
本発明の第１のコンピュータシステムの実施形態は、ＩＤトークンに対するユーザの認証を必要とすることに加えて、ユーザの純粋なデジタルＩＤの信頼点が形成される点が非常に有利である。ここで、これには、コンピュータシステムに対するユーザの事前登録が不要であり、さらに、デジタルＩＤを形成するユーザの属性を中央で格納しておく必要もなくなる。
【００４２】
本発明の一実施形態においては、第１のコンピュータシステムは、第２のコンピュータシステムの識別子を、属性の指定とともに受信する。識別子の助けを借りて、コンピュータシステムは、識別サービスを利用する第２のコンピュータシステムを特定して、この第２のコンピュータシステムに対してサービス課金を行うことができる。
【００４３】
本発明の一実施形態においては、コンピュータシステムは、公的に認められた信頼できるセンターであり、特に、デジタル署名法に則った信頼できるセンターである。
【００４４】
本発明の実施形態を、以下に簡単に説明する図面を参照して詳述する。
【図面の簡単な説明】
【００４５】
【図１】本発明のコンピュータシステムの第１実施形態のブロック図である。
【図２】本発明の方法の一実施形態のフローチャートである。
【図３ａ】本発明におけるコンピュータシステムのさらなる実施形態のブロック図である。
【図３ｂ】本発明におけるコンピュータシステムのさらなる実施形態のブロック図である。
【図３ｃ】本発明におけるコンピュータシステムのさらなる実施形態のブロック図である。
【図４】本発明の方法のさらなる実施形態のフローチャートである。
【発明を実施するための形態】
【００４６】
以下の実施形態において、対応する部材同士は、同じ参照番号を付して識別している。
【００４７】
図１は、ユーザ１０２のコンピュータシステム１００を示す。ユーザコンピュータシステム１００は、パソコン、ラップトップまたはパームトップ型のコンピュータ、情報携帯端末（ＰＤＡ）、モバイル電話通信デバイス（特にスマートフォン等）等の可搬型コンピュータであってよい。ユーザコンピュータシステム１００は、対応するインタフェース１０８を有するＩＤトークン１０６と通信するインタフェース１０４を有している。
【００４８】
ユーザコンピュータシステム１００は、プログラム命令１１２を実行する少なくとも１つのプロセッサ１１０と、ネットワーク１１６を介して通信するネットワークインタフェース１１４とを有する。ネットワークは、例えばインターネット等のコンピュータネットワークであってよい。
【００４９】
ＩＤトークン１０６は、セキュアなメモリ領域１２０、１２２、および１２４を有する電子メモリ１１８を有する。セキュアなメモリ領域１２０は、ＩＤトークン１０６に対してユーザ１０２を認証するために必要となる参照値をセーブする機能を有する。この参照値（例えば既知の値である）は、特に個人識別番号（ＰＩＮ）であってよく、あるいは、ＩＤトークン１０６に対するユーザの認証に利用することのできるユーザ１０２の生物学的特徴の参照データであってもよい。
【００５０】
セキュアな領域１２２は、秘密鍵をセーブする機能を有し、セキュアなメモリ領域１２４は、ユーザ１０２の属性（名称、アドレス、誕生日、性別）、および／または、ＩＤトークン自身の属性（例えばＩＤトークンを提供または発行した機関、ＩＤトークンの有効期間、または、パスポート番号またはクレジットカード番号等のＩＤトークンの識別子）をセーブする機能を有する。
【００５１】
電子メモリ１１８は、さらに、証明書をセーブするメモリ領域１２６を有してよい。証明書は、セキュアなメモリ領域１２２に格納されている秘密鍵に割り当てられる公開鍵を含む。証明書は、Ｘ．５０９規格等の公開鍵インフラストラクチャ（ＰＫＩ）規格に従って生成することができる。
【００５２】
証明書は、必ずしもＩＤトークン１０６の電子メモリ１１８に格納されなければならないというわけではない。証明書は、電子メモリ１１８の代わりに、または電子メモリ１１８に加えて、公開ディレクトリサーバに格納されていてもよい。
【００５３】
ＩＤトークン１０６はプロセッサ１２８を有する。プロセッサ１２８は、プログラム命令１３０、１３２、および１３４を実行する機能を有する。プログラム命令１３０は、ユーザを認証する（つまりＩＤトークンに対するユーザ１０２の認証）機能を有する。
【００５４】
ＰＩＮの一実施形態では、ユーザ１０２は自身の認証用ＰＩＮをＩＤトークン１０６に、ユーザコンピュータシステム１００を利用して入力する。プログラム命令１３０を実行すると、セキュアなメモリ領域１２０にアクセスが行われて、入力されたＰＩＮと、格納されているＰＩＮの参照値とが比較される。入力されたＰＩＮがＰＩＮの参照値と合致すると、ユーザ１０２が認証される。
【００５５】
または、ユーザ１０２の生物学的特徴を登録することもできる。例えば、ＩＤトークン１０６は、この目的用の指紋センサを有してよく、あるいは、指紋センサがユーザコンピュータシステム１００に接続されていてよい。
【００５６】
この実施形態では、ユーザ１０２から収集された生物学的特徴を、プログラム命令１３０の実行により、セキュアなメモリ領域１２０に格納されている生物学的参照データと比較する。ユーザ１０２から収集した生物学的データと、生物学的参照データとが十分合致すると、ユーザ１０２が認証される。
【００５７】
プログラム命令１３４は、ＩＤトークン１０６に関するこれらステップを実行することができ、これらステップは、ＩＤプロバイダコンピュータシステム１３６をＩＤトークン１０６に対して認証する暗号プロトコルの一部である。暗号プロトコルは、対称鍵または非対称鍵の対に基づくチャレンジ・レスポンス型のプロトコルであってよい。
【００５８】
例えば、暗号プロトコルは、機械可読旅行文書についてＩＣＡＯが指定する、拡張アクセス制御方法を実装することができる。ＩＤプロバイダコンピュータシステム１３６は、暗号プロトコルの実行に成功することにより、自身をＩＤトークンに対して認証して、これにより、セキュアなメモリ領域１２４に格納されている属性を読み出す読み出し許可を自身が有しているかを検証する。認証は相互に行われるものであってもよい（つまり、ＩＤトークン１０６も、同じまたは別の暗号プロトコルに従って、ＩＤプロバイダコンピュータシステム１３６に対しても自身を認証せねばならない）。
【００５９】
プログラム命令１３２は、ＩＤトークン１０６とＩＤプロバイダコンピュータシステム１３６の間で送信されるデータ、または、少なくとも、ＩＤプロバイダコンピュータシステム１３６のセキュアなメモリ領域１２４から読み出した属性の、エンドツーエンド暗号化を行うことができる。エンドツーエンド暗号化においては、暗号プロトコル実行中にＩＤトークン１０６およびＩＤプロバイダコンピュータシステム１３６の間で承認されている対称鍵を利用することができる。
【００６０】
図１に示す実施形態の代わりに、インタフェース１０４を有するユーザコンピュータシステム１００は、直接インタフェース１０８と通信するのではなくて、インタフェース１０４に接続されているＩＤトークン１０６のリーダを介して通信することができる。ＰＩＮ入力も、このリーダ（例えばいわゆるクラス２チップカード端末）を介して行われてよい。
【００６１】
ＩＤプロバイダコンピュータシステム１３６は、ネットワーク１１６を介した通信用のネットワークインタフェース１３８を有する。さらに、ＩＤプロバイダコンピュータシステム１３６は、ＩＤプロバイダコンピュータシステム１３６の秘密鍵１４２および対応する証明書１４４が格納されているメモリ１４０を有する。この証明書はさらに、Ｘ．５０９規格等のＰＫＩ規格に則った証明書であってよい。
【００６２】
ＩＤプロバイダコンピュータシステム１３６はさらに、プログラム命令１４６および１４８を実行する少なくとも１つのプロセッサ１４５を有する。プログラム命令１４６の実行により、ＩＤプロバイダコンピュータシステム１３６に関する暗号プロトコルのステップが実行される。従って、暗号プロトコルは、ＩＤトークン１０６のプロセッサ１２８によるプログラム命令１３４の実行により、および、ＩＤプロバイダコンピュータシステム１３６のプロセッサ１４５によるプログラム命令１４６の実行により、実装される。
【００６３】
プログラム命令１４８は、例えば、ＩＤトークン１０６とＩＤプロバイダコンピュータシステム１３６との間で暗号プロトコルの実行中に承認された対称鍵に基づいて、ＩＤプロバイダコンピュータシステム１３６の側にエンドツーエンド暗号化を実装することができる。また原則として、エンドツーエンド暗号化の対称鍵を共有（agreement）するために既に公知の方法を利用することもできる（例えばディッフィーへルマン鍵共有法）。
【００６４】
ＩＤプロバイダコンピュータシステム１３６は、いわゆる信頼できるセンター等の特にセキュアな環境に配置されることが望ましく、こうすることで、ＩＤプロバイダコンピュータシステム１３６は、ユーザ１０２のＩＤトークン１０６に対する認証を必要とすることとの組み合わせで、ＩＤトークン１０６から読み出される属性の正当性について信頼点を形成することができる。
【００６５】
ＩＤプロバイダコンピュータシステム１３６も、現在の時刻を示すタイムベース１７４を有している。タイムベース１７４は、システムクロックであってよい。タイムベース１７４は、現在の時間情報（例えばＵＮＩＸ時間として）を連続提供する。
【００６６】
プロセッサ１４５は、プログラム命令１７２を実行して、タイムベース１７４の助けを借りて、ＩＤプログラムコンピュータシステム１３６によってＩＤトークン１０６から少なくとも１つの属性用のタイムスタンプを生成する。例えば、プログラム命令１７２は、受信されると、ＩＤトークン１０６から読み出した属性を、ＩＤプロバイダコンピュータシステム１３６から、受信時刻を表すタイムスタンプとともに提供するように設計されている。
【００６７】
この代わりに、またはこれに加えて、ＩＤプロバイダコンピュータシステム１３６がＩＤトークン１０６から受信した属性は、この属性を（例えばソフトトークンの形態で）含むメッセージの送信時刻を表すタイムスタンプとともにＩＤプロバイダコンピュータシステム１３６から提供される。
【００６８】
さらに、プログラム命令１７２は、将来の時間情報を有するタイムスタンプが、ＩＤトークン１０６から読み出される属性に割り当てられるよう設計されてもよい。時間情報は、属性を含みＩＤプロバイダコンピュータシステム１３６により生成されるメッセージの最大有効期間（例えばＩＤプロバイダコンピュータシステム１３６が生成するソフトトークン）を表す。この場合、属性のタイムスタンプは、属性がＩＤプロバイダコンピュータシステム１３６により受信された時間、またはメッセージが生成または送信された時間の、数秒前または数分前の時点を示していてよい。
【００６９】
サービスコンピュータシステム１５０は、サービスまたは製品（特にオンラインサービス）の発注または契約を受け付けるように設計されていてよい。例えばユーザは、ネットワーク１１６経由でオンラインの銀行口座を開設することができ、または、その他の金融または銀行サービスを利用することができる。サービスコンピュータシステム１５０はさらに、ユーザ１０２が、そこから例えばモバイル電話その他の類似したオンラインを取得することができるようなオンラインのウェアハウスとして設計されてもよい。サービスコンピュータシステム１５０はさらに、音楽および／またはビデオデータのダウンロード用にデジタルコンテンツを配信するよう設計されていてもよい。
【００７０】
これを行うために、サービスコンピュータシステム１５０は、ネットワーク１１６に接続するためのネットワークインタフェース１５２を有する。さらにサービスコンピュータシステム１５０は、プログラム命令１５６を実行するために少なくとも１つのプロセッサ１５４を有する。プログラム命令１５６の実行により、例えば動的ＨＴＭＬページが生成され、これにより、ユーザ１０２は自身の契約または発注を入力することができる。
【００７１】
契約または発注された製品またはサービスの種類に応じて、サービスコンピュータシステム１５０は、ユーザ１０２の１以上の属性および／またはそのＩＤトークン１０６を、１以上の予め設定されている基準を利用してテストする必要がある。このテストに合格した場合にのみ、ユーザ１０２の発注または契約を受け付ける、および／または、実行することができる。
【００７２】
例えば、銀行口座を開設するために、または、関連する契約でモバイルフォンを購入するためには、ユーザ１０２が、サービスコンピュータシステム１５０に対して自身のＩＤを開示する必要があり、このＩＤがテストされる必要がある。このために、現在の技術水準では、ユーザ１０２は、自身のＩＤカード等を提供する必要がある。この処理を、ユーザ１０２のデジタルＩＤを彼のＩＤトークン１０６から読み出すことに置き換えることができる。
【００７３】
しかし用途によっては、ユーザ１０２は、サービスコンピュータシステム１５０に対して自身のＩＤを開示する必要がなく、例えば属性の１つのみを送信するだけでいい場合もある。例えば、ユーザ１０２は、サービスコンピュータシステム１５０上にダウンロードする準備のできているデータにアクセスすることを許可されている特定の団体に自身が属しているというメッセージを、属性のいずれかを介して生成することができる。このような基準は、ユーザ１０２の最小年齢、または、ユーザ１０２が特定の機密データに対するアクセスが許可された人々の集まりの会員であること、等であってよい。
【００７４】
プロセッサ１５４はさらに、プログラム命令１７６、１７８、および１８０を実行することができる。プログラム命令１７６の実行により、ユーザ１０２が所望する処理の処理数（ＴＡＮ）（つまり彼の契約または発注）を割り当てることができる。
【００７５】
プログラム命令１７８の実行により、サービスコンピュータシステム１５０は、ＩＤプロバイダコンピュータシステム１３６が受信するメッセージの署名の有効性をテストすることができる。プログラム命令１８０の実行はさらに、応答の有効期間（つまり、メッセージの有効期間が既に期限切れしているかどうか）をテストすることができる。このために、プログラム命令の実行は、サービスコンピュータシステム１５０のタイムベース１８２（ＩＤプロバイダコンピュータシステム１３６のタイムベース１７４と同期している）にアクセスすることができる。
【００７６】
サービスコンピュータシステム１５０も、セッションＩＤおよびＴＡＮの割り当てをセーブするメモリ１８４（例えばテーブル１８６形式）を有する。
【００７７】
ユーザ１０２が、サービスコンピュータシステム１５０が提供するサービスを利用するためには、以下のステップを行うことができる。
【００７８】
１．ユーザ１０２は、自身のユーザコンピュータシステム１００の閲覧プログラムを開始して、サービスコンピュータシステム１５０のウェブサイトのＵＲＬを入力する。ここから、ユーザコンピュータシステム１００とサービスコンピュータシステム１５０との間にインターネット接続が構築されて、セッションＩＤが割り当てられる。関連するウェブサイトは、サービスコンピュータシステム１５０からユーザコンピュータシステム１００に送信され、ウェブブラウザの助けを得て表示される。ユーザ１０２は、その後、このウェブサイトの特定のサービスを選択して、入力キーを起動する。そしてユーザコンピュータシステム１００は、サービス要求１６４を生成して、サービスコンピュータシステム１５０に送信する。プログラム命令１７６の実行により、ＴＡＮをこのサービス要求１６４に割り当てる。このサービス要求１６４に属するセッションＩＤは、このＴＡＮとともにテーブル１８６に格納される。プログラム命令１５６の実行により、サービスコンピュータシステム１５０がサービス要求１６４により要求されたサービスを提供する際に必要とするユーザ１０２の属性の指定を含む属性の指定１６６が生成される。さらに、属性の指定１６６は、サービス要求１６４および／またはそのセッションＩＤに割り当てるＴＡＮも含む。ＴＡＮを伴う属性の指定１６６は、サービスコンピュータシステム１５０からＩＤプロバイダコンピュータシステム１３６に、ユーザコンピュータシステム１００を介して間接的に、または、ネットワーク１１６を介して直接送信される。
【００７９】
２．ユーザ１０２のＩＤトークン１０６に対する認証。ユーザ１０２は、ＩＤトークン１０６に対して自身を認証する。ＰＩＮの実装においては、ユーザ１０２は、これを自身のＰＩＮを、例えばユーザコンピュータシステム１００またはそれに接続されているチップカード端末を介して行う。プログラム命令１３０の実行により、ＩＤトークン１０６は次に、入力されたＰＩＮが正しいものかをチェックする。入力されたＰＩＮが、セキュアなメモリ領域１２０に格納されているＰＩＮの参照値と合致する場合には、ユーザ１０２は認証される。この上述した手順は、ユーザ１０２が認証時に生物学的特徴を利用する場合にも同様に利用可能である。
【００８０】
３．ＩＤプロバイダコンピュータシステム１３６のＩＤトークン１０６に対する認証。このために、ＩＤトークン１０６およびＩＤプロバイダコンピュータシステム１３６の間に、ユーザコンピュータシステム１００およびネットワーク１１６を介して接続を構築する。例えば、ＩＤプロバイダコンピュータシステム１３６は、自身の証明書１４４を、ＩＤトークン１０６へのこの接続を介して送信する。プログラム命令１３４によって、乱数等のチャレンジが生成される。この乱数は、証明書１４４に含まれているＩＤプロバイダコンピュータシステム１３６の公開鍵により暗号化される。結果生じる暗号文（secret text）を、ＩＤトークン１０６から、ＩＤプロバイダコンピュータシステム１３６への接続を介して送信する。ＩＤプロバイダコンピュータシステム１３６は、暗号文を、自身の秘密鍵１４２により復号して、乱数を得る。ＩＤプロバイダコンピュータシステム１３６は、ＩＤトークン１０６へと戻る接続を介してこの乱数を送信する。プログラム命令１３４を実行して、ＩＤプロバイダコンピュータシステム１３６が受信する乱数が、元々生成されている乱数（つまりチャレンジ）と合致するかをテストする。合致している場合には、ＩＤプロバイダコンピュータシステム１３６は、ＩＤトークン１０６に対して認証される。乱数は、エンドツーエンド暗号化の対称鍵として利用することができる。
【００８１】
４．ユーザ１０２およびＩＤプロバイダコンピュータシステム１３６それぞれのＩＤトークン１０６に対する認証が成功すると、ＩＤプロバイダコンピュータシステム１３６は、セキュアなメモリ領域１２４に格納されている１つの、幾つかの、または全ての属性を読み出す読み取り許可を受信する。ＩＤプロバイダコンピュータシステム１３６がＩＤトークン１０６に対する接続を介して送信した適切な読み出しコマンドに基づいて、要求された属性をセキュアなメモリ領域１２４から読み出して、プログラム命令の実行によって暗号化する。暗号化された属性１８８は、ＩＤプロバイダコンピュータシステム１３６に対する接続を介して送信され、そこでプログラム命令１４８を実行することにより復号される。ＩＤプロバイダコンピュータシステム１３６は、これにより、ＩＤトークン１０６から読み出した属性の内容（knowledge）を受信する。
【００８２】
５．これらの属性は、ＩＤプロバイダコンピュータシステム１３６により、証明書１４４および秘密鍵１４２の助けを得て署名される。加えてこれら属性のタイムスタンプが、プログラム命令１７２の実行により、タイムベース１７４の助けを得て生成される。タイムスタンプおよびＴＡＮは、属性の指定１６６とともに受信され、さらにＩＤプロバイダコンピュータシステム１３６により署名される。例えば、属性、タイムスタンプ、およびＴＡＮはそれぞれ別個に署名される。または、応答１７０が、属性、タイムスタンプ、およびＴＡＮを含むように生成される。応答１７０はその後、全体に対して署名される。応答１７０は、ＩＤプロバイダコンピュータシステム１３６からユーザコンピュータシステム１００を介して、または直接サービスコンピュータシステム１５０へ送信される。サービスコンピュータシステム１５０は、次に、応答１７０の署名の有効性をテストする。
【００８３】
サービスコンピュータシステム１５０はさらに、プログラム命令１８０の実行により、応答１７０が依然として有効であるかをテストする。このために、最大有効期間（タイムスタンプにより与えられる）の期限が切れているかをテストする。プログラム命令１５６の実行により、さらに、テーブル１８６に対するアクセスが行われて、対応するセッションＩＤを、応答１７０に含まれているＴＡＮを利用して特定する。
【００８４】
このようにして、サービスコンピュータシステム１５０は、応答１７０とともに受信される属性を、それぞれのセッションＩＤと相関付けることができる。署名が有効であり、応答１７０の有効期間を超えていない場合、サービスコンピュータシステム１５０は、次に、ユーザ１０２に対して、サービス要求１６４で要求されたサービスを、応答１７０で受信したユーザ１０２の属性が許す範囲で提供することができる。
【００８５】
ＩＤプロバイダコンピュータシステム１３６が生成するメッセージ（つまり応答１７０）は、例えばいわゆるソフトトークンとして指定することができる。
【００８６】
ユーザ１０２のＩＤトークン１０６に対する認証、および、ＩＤトークン１０６に対するＩＤプロバイダコンピュータシステム１３６の認証が必要なことから、必要な信頼点が生成され、サービスコンピュータシステム１５０が、自身にＩＤプロバイダコンピュータシステム１３６により通信されるユーザ１０２の属性が、正しいものであり、偽造されたものではないことを確認することができる。
【００８７】
認証の順序は、実施形態に応じて変更させてよい。例えば、ユーザ１０２が先ず自身をＩＤトークン１０６に対して認証してから、ＩＤプロバイダコンピュータシステム１３６が認証する、として設定することもできる。しかし、原則としては、ＩＤプロバイダコンピュータシステム１３６は、自身をＩＤトークン１０６に対して先ず認証してからでないと、ユーザ１０２が認証することができない、と考えられる。
【００８８】
最初のケースでは、ＩＤトークン１０６は、正しいＰＩＮまたは生物学的特徴がユーザ１０２により入力されたときのみに施錠を解除されるよう設定されている。この施錠の解除によって、プログラム命令１３２および１３４が開始され、これにより、ＩＤプロバイダコンピュータシステム１３６の認証が行われる。
【００８９】
二番目のケースでは、プログラム命令１３２および１３４は、ユーザ１０２がまだ自身をＩＤトークン１０６に対して認証していない場合でも開始されてよい。このケースでは、例えばプログラム命令１３４が、ＩＤプロバイダコンピュータシステム１３６が、セキュアなメモリ領域１２４に読み出しアクセスを行い、ユーザ１０２の認証の成功がプログラム命令１３０により信号により伝えられた後でのみ、１以上の属性を読み出す。
【００９０】
ＩＤトークン１０６は、電子商取引、および電子政府アプリケーションの用途に利用されると、ユーザ１０２およびＩＤプロバイダコンピュータシステム１３６の、ＩＤトークン１０６に対する認証が義務付けられた信頼点を構築することにより、セキュリティ侵害を防ぎ、法的にセキュアになるので、特に好適である。さらに、様々なユーザ１０２の属性の中央メモリが不要である点も有利であり、これによって現在の技術水準のデータセキュリティ問題が解決される。方法の利用を便利にするという観点からは、ユーザ１０２を予め登録しておいて、ＩＤプロバイダコンピュータシステム１３６を不要にすると特に好適である。
【００９１】
図２は、本発明の方法の一実施形態を示す。ステップ２００では、サービス要求がユーザコンピュータシステムからサービスコンピュータシステムに送られる。例えばユーザは、ユーザコンピュータシステムのインターネットブラウザを開始して、ＵＲＬを入力して、サービスコンピュータシステムのウェブページを呼び出す。呼び出されたウェブページでは、ユーザが自身のサービス要求を入力して、例えば製品を発注したり契約を結んだりする。
【００９２】
ステップ２０２で、サービスコンピュータシステム１５０は、ユーザがサービスを要求する権利を有しているかをテストするのに必要となる１以上の属性を特定する。特に、サービスコンピュータシステムは、ユーザ１０２のデジタルＩＤを決定する属性を指定することができる。サービスコンピュータシステム１５０による属性の指定は、しっかりと指定することができ（firmly specified）、遠隔の場合には（in isolated cases）、サービスコンピュータシステム１５０によって、予め定められた規則を利用して、サービス要求に従って決定することができる。
【００９３】
ステップ２０４で、属性の指定（つまり、１以上の属性のステップ２０２を実行する指定）がＴＡＮとともに、サービスコンピュータシステムからＩＤプロバイダコンピュータシステムへと、直接またはユーザコンピュータシステムを介して送信される。
【００９４】
ＩＤプロバイダコンピュータシステムに、自身のＩＤトークンから属性を読み出す機能を提供するために、ユーザは、自身をＩＤトークンに対して認証する（ステップ２０６）。
【００９５】
ステップ２０８で、ＩＤトークンとＩＤプロバイダコンピュータシステムとの間に接続が構築される。これは、セキュアなメッセージング法によるセキュアな接続であると望ましい。
【００９６】
ステップ２１０では最低限、ＩＤプロバイダコンピュータシステムのＩＤトークンに対する認証が、ステップ２０８で構築された接続を介して行われる。加えて、ＩＤプロバイダコンピュータシステムに対するＩＤトークンの認証を提供することもできる。
【００９７】
ユーザおよびＩＤプロバイダコンピュータシステムが両方ともＩＤトークンに対する認証に成功すると、ＩＤプロバイダコンピュータシステムは、属性を読み出すために、アクセス承認をＩＤトークンから受信する。ステップ２１２で、ＩＤプロバイダコンピュータシステムは、属性の指定に従って必要となる属性をＩＤトークンから読み出す１以上の読み出しコマンドを送信する。そして属性を、セキュアな接続を介してエンドツーエンド暗号化を利用することで、ＩＤプロバイダコンピュータシステムに送信して、送信先において復号する。
【００９８】
読み出された属性値は、ステップ２１４でＩＤプロバイダコンピュータシステムによってタイムスタンプとともに提供され、ＴＡＮとともに署名される。ステップ２１６で、ＩＤプロバイダコンピュータシステムは、署名された属性値をネットワーク経由で送信する。署名された属性値は、サービスコンピュータシステムに、直接またはユーザコンピュータシステムを介して到達する。後者の場合には、ユーザは、署名された属性値を登録する、および／または、これらに補足データを追加する、という選択肢を有する。必要であれば（If need be）、署名された属性値は、ユーザコンピュータシステムからサービスコンピュータシステムに、必ずユーザからリリースされた後に、補助データを追加して中継することができる、と規定することもできる。こうすることで、ＩＤプロバイダコンピュータシステムがサービスコンピュータシステムに送信する属性に関するユーザの最大限の透明性を確保することができる。
【００９９】
図３ａ、図３ｂ、図３ｃは、本発明におけるＩＤトークンおよびコンピュータシステムのさらなる実施形態を示す。図３ａ、図３ｂ、図３ｃの実施形態では、ＩＤトークン１０６は、書類（例えば紙製および／またはプラスチックベースの、インタフェース１０８、メモリ１１８、およびプロセッサ１２８が形成されている集積電子交換回路を有する書類）として設計されている。集積電子交換回路は、ＲＦＩＤタグまたはＲＦＩＤラベル等としても知られている無線タグであってよい。インタフェース１０８は、接触ベースまたはデュアルモード・インタフェースとして設計することもできる。
【０１００】
特に、書類１０６は、重要書類またはセキュリティ関連の書類（例えば、電子パスポートまたはＩＤカード等の機械可読旅行書類）または、クレジットカード等の支払い手段であってよい。
【０１０１】
ここに示す実施形態では、属性ｉをセキュアなメモリ領域１２４に格納する（１≦ｉ≦ｎ）。以下では、一般的に限定はせず（without limiting the generality）、図３ａ、図３ｂ、図３ｃの例として示すＩＤトークン１０６を、電子個人ＩＤカードと想定して説明を進める。例えば属性ｉ＝１を姓として、属性ｉ＝２を名として、属性ｉ＝３をアドレスとして、属性ｉ＝４を誕生日、等とする。
【０１０２】
ここで想定する実施形態では、ユーザコンピュータシステム１００のインタフェース１０４をＲＦＩＤリーダとして設計することができ、これによりユーザコンピュータシステムに集積されたコンポーネントを形成したり、別個のコンポーネントとして接続したりすることができる。
【０１０３】
ユーザ１０２は、原則として同一に設計される、ＩＤトークン１０６'等（クレジットカードである）の１以上のさらなるＩＤトークンを所有する。
【０１０４】
複数の設定データセット１５８、１６０、…をユーザコンピュータシステム１００に格納する。設定データセット各々は、特定の属性セットに対して、特定されたデータソースを読み出すことのできるデータソースおよびＩＤプロバイダコンピュータシステムを指定する。この実施形態では、ユーザコンピュータシステム１００は、ネットワーク１１６を介して、それぞれが異なるトラストセンターに属していてよい様々なＩＤプロバイダコンピュータシステム１３６、１３６'を宛先とすることができる（address）。例えば、ＩＤプロバイダコンピュータシステム１３６は、トラストセンターＡに属しており、ＩＤプロバイダコンピュータシステム１３６'は、原則として同じ構成を有しており、別のトラストセンターＢに属している。
【０１０５】
属性ｉ＝１からｉ＝４の属性セットが設定データセット１５８で定義されており、これはＩＤコンテナとも称される。データソース「個人ＩＤカード」（つまりＩＤトークン１０６）およびトラストセンターＡ（つまりＩＤプロバイダコンピュータシステム１３６）は、それぞれの属性に割り当てられる。例えば、設定データセット１５８のＵＲＬで指定することができる。
【０１０６】
設定データセット１１６は、属性セットＩ、ＩＩ、およびＩＩＩを定義する。クレジットカード（つまりＩＤトークン１０６'）が、これら属性のデータソースとして指定される。ＩＤトークン１０６'は、属性Ｉ、ＩＩ、ＩＩＩ、…を格納するセキュアなメモリ領域１２'を有する。例えば属性Ｉは、クレジットカードの保有者の名称であってよく、属性ＩＩがクレジットカード番号であってよく、属性ＩＩＩがクレジットカードの有効期限であってよい、といった具合である。
【０１０７】
トラストセンターＢのＩＤプロバイダコンピュータシステム１３６'は、設定データセット１６０のＩＤプロバイダコンピュータシステムとして指定される。
【０１０８】
図３ａ、図３ｂ、図３ｃに示す実施形態の代わりに、様々なデータソースおよび／またはＩＤプロバイダコンピュータシステムが、同じ設定データセットで異なる属性について指定されていてよい。
【０１０９】
図３ａ、図３ｂ、図３ｃの実施形態では、ＩＤプロバイダコンピュータシステム１３６、１３６'、…のそれぞれが複数の証明書を有することができる。
【０１１０】
例えば、図３ａ、図３ｂ、図３ｃの例に示すＩＤプロバイダコンピュータシステム１３６のメモリ１４０において、複数の証明書（例えば証明書１４４．１および１４４．２）を、それぞれ割り当てられた秘密鍵１４２．１および１４２．２とともに格納する。ＩＤプロバイダコンピュータシステム１３６の読み出しアクセス（属性ｉ＝１からｉ＝４）を、証明書１４４．１で定義して、属性ＩからＩＩＩの読み出しアクセスを証明書１４４．２で定義する。
【０１１１】
サービスコンピュータシステム１５０が提供するサービスを利用するために、例えば、所望のサービスの要求をサービスコンピュータシステム１５０のウェブページに入力するべく、ユーザ１０２は先ず、ユーザ入力１６２をユーザコンピュータシステム１００に入力する。サービス要求１６４は、ユーザコンピュータシステム１００からサービスコンピュータシステム１５０にネットワーク１１６経由で送信される。サービスコンピュータシステム１５０は次に、属性の指定１６６で応答する（つまり、サービスコンピュータシステム１５０が、ユーザ１０２からのサービス要求１６４を処理するために必要とする属性（例えばＴＡＮ）の指定で応答する）。属性の指定は、例えば、「姓」「名」「アドレス」「クレジットカード番号」といった属性の名称により行うことができる。
【０１１２】
ユーザコンピュータシステム１００は、属性の指定１６６を受信すると、ユーザ１０２に信号により伝える。するとユーザ１０２は、属性の指定１６６に従って、それぞれ属性（少なくともサブセット）を含む属性セットを定義する１以上の設定データセット１５８、１６０、…を、必要に応じて選択する。
【０１１３】
属性の指定１６６により、例えばユーザ１０２の姓、名、およびアドレスのみの通信が要求されている場合には、ユーザ１０２は、設定データセット１５８を選択することができる。しかし、属性の指定１６６において、クレジットカード番号も指定されている場合には、ユーザ１０２は、さらに設定データセット１６０を選択することができる。このプロセスは、プログラム命令１１２の実行により、ユーザコンピュータシステム１００で完全に自動的に実行することもできる。
【０１１４】
以下では、設定データセット１５８等の設定データセットの１つのみが、属性の指定１６６に基づいて選択されることを想定する。
【０１１５】
次いで、ユーザコンピュータシステム１００は、選択された設定データセットで指定されているＩＤプロバイダコンピュータシステム（例えばトラストセンターＡのＩＤプロバイダコンピュータシステム１３６）に、要求１６８を送信する。この要求１６８には、ＩＤプロバイダコンピュータシステム１３６が、設定データセット１５８で与えられているデータソースから、属性の指定１６６に従って読み出す、属性の指定が含まれる。
【０１１６】
ＩＤプロバイダコンピュータシステム１３６は、次に、自身が有する証明書のうち、これら属性を読み出すために必要な読み取りアクセスが有する１以上の証明書を選択する。例えば属性ｉ＝１から３が個人ＩＤカードから読み出される場合、ＩＤプロバイダコンピュータシステム１３６は、読み出しアクセスがそうする必要があると定義している証明書１４４．１を選択する。この証明書の選択は、プログラム命令１４９を実行することで実行される。
【０１１７】
次に暗号プロトコルの実行を開始する。例えばこの目的のために、ＩＤプロバイダコンピュータシステム１３６は、ユーザコンピュータシステム１００に応答を送信する。ユーザコンピュータシステム１００は次に、ユーザ１０２に、自身を特定のデータソース（ここでは個人ＩＤカード）に対して認証するように促す。
【０１１８】
ユーザ１０２は、次に、ＲＦＩＤリーダ１０４付近に個人ＩＤカード（ＩＤトークン１０６）を置き、例えばＰＩＮを入力して、自身を認証する。ユーザ１０２のＩＤトークン１０６に対する認証が成功すると、暗号プロトコルの実行トークンがリリースされて、プログラム命令１３４が実行される。その後で、ＩＤプロバイダコンピュータシステム１３６は自身をＩＤトークン１０６に対して、選択された証明書１４４．１（例えばチャレンジ・レスポンス型のプロトコル）の助けを得て認証する。この認証は繰り返すこともできる。ＩＤプロバイダコンピュータシステム１３６のＩＤトークン１０６に対する認証に成功すると、ＩＤプロバイダコンピュータシステムは、ユーザコンピュータシステム１００に必要な属性の読み出し要求を送り、これはＲＦＩＤリーダ１０４を介してＩＤトークン１０６に中継される。証明書１４４．１を利用して、ＩＤトークン１０６は、ＩＤプロバイダコンピュータシステム１３６が、これに必要な読み出しアクセスを有するかをテストする。有する場合には、所望の属性をセキュアなメモリ領域１２４から読み出して、ユーザコンピュータシステム１００経由でエンドツーエンド暗号化を利用してＩＤプロバイダコンピュータシステムに送信する。
【０１１９】
ＩＤプロバイダコンピュータシステム１３６は、次に、選択された属性、タイムスタンプ、およびＴＡＮを含む応答１７０を、サービスコンピュータシステム１５０にネットワーク１１６経由で送信する。応答１７０は、証明書１４４．１でデジタル署名される。
【０１２０】
または、ＩＤプロバイダコンピュータシステム１３６は、ユーザコンピュータシステム１００に応答１７０を送信する。ユーザ１０２は、応答１７０に含まれる属性を読み出して、本当にこれらの属性のサービスコンピュータシステム１５０への中継を希望するかを決定する。ユーザ１０２がリリースコマンドをユーザコンピュータシステム１００に入力してからでないと、応答１７０はサービスコンピュータシステム１５０へと中継されない。この実施形態では、ユーザ１０２はさらなるデータを応答１７０に追加することもできる。
【０１２１】
複数のＩＤプロバイダコンピュータシステム１３６、１３６'…が関与する場合には、ＩＤプロバイダコンピュータシステムの個々の応答が、ユーザコンピュータシステム１００で、属性の指定１６６における属性全てを含む単一の応答に統合（collect）されてよく、この応答が次にユーザコンピュータシステム１００からサービスコンピュータシステムへと送信される。
【０１２２】
本発明の一実施形態においては、サービス要求１６４が生じると、ユーザ１０２は、サービスコンピュータシステム１５０に対する自身の属性の１以上を開示することができ、ユーザのこれらの属性は、サービスコンピュータシステムに、ネットワーク１１６を介してサービス要求１６４の一部として送信される。特にユーザ１０２は、これらの属性をサービスコンピュータシステム１５０のウェブページに入力することができる。これら属性が正しいかどうかは、次に、応答１７０により確かめられる（つまり、サービスコンピュータシステム１５０は、ユーザ１０２から受信した属性を、ＩＤプロバイダコンピュータシステム１３６がＩＤトークン１０６から読み出す属性と比較して、それらが合致するかをチェックする）。
【０１２３】
本発明の別の実施形態によると、少なくとも１つ以上の属性を属性の指定１６６に示して、ユーザ１０２のＩＤトークンには格納しないが、外部データソースからクエリすることができるようにしてもよい。これは例えば、ユーザ１０２の信用度に関する属性であってよい。このために、ユーザコンピュータシステム１００は、さらなる設定データセット１６１（データソース、および、属性ＡのＩＤプロバイダコンピュータシステムの指定（例えば信用度）を含む）を含むことができる。データソースは、Schufa, Dun & Bradstreet等のオンライン信用調査機関である。トラストセンターＣは、ＩＤプロバイダコンピュータシステムとして指定されている（例えば図３ａ、図３ｂ、図３ｃの実施形態参照）。この例においてデータソースは、信用センターＣ内にあっていてよい。
【０１２４】
属性Ａをクエリするべく、ユーザコンピュータシステム１００は、適切な要求（図３ａ、図３ｂ、図３ｃに示されていない）を、トラストセンターＣ（ＩＤプロバイダコンピュータシステム１３６''）に送る。トラストセンターＣが提供する属性Ａは、ユーザ１０２のＩＤトークンから読み出したさらなる属性を付されて、ユーザコンピュータシステム１００によりサービスコンピュータシステム１５０に中継される。
【０１２５】
属性Ａのクエリは、好適には、ユーザ１０２のデジタルＩＤに関する属性が既にユーザ１０２のＩＤトークンのいずれかからクエリされた後に行われてよく、例えば、ユーザコンピュータシステム１００により、署名された応答１７０として受信されたものであってよい。ユーザコンピュータシステム１３６''がＩＤプロバイダコンピュータシステム１００を介して行う属性Ａのクエリは、次に、署名された応答１７０を含み、ＩＤプロバイダコンピュータシステム１３６''が、ユーザ１０２のＩＤに関するセキュアな情報を有するようにする。
【０１２６】
図４は、本発明の方法のさらなる実施形態を示す。ユーザ１０２がユーザコンピュータシステム１００に入力することにより、ユーザ１０２は、自身が利用を希望するサービスコンピュータシステムのサービスを特定する。これは、サービスコンピュータシステムのインターネットページを読み出すことにより、そこで提供されているサービスのいずれかを選択することにより行われる。ユーザ１０２によるサービス要求は、ユーザコンピュータシステム１００からサービスコンピュータシステム１５０に送信される。
【０１２７】
サービスコンピュータシステム１５０は、ＴＡＮおよび属性の指定（例えば属性の名称リスト）でサービス要求に応答する。属性の指定を受信すると、ユーザコンピュータシステム１００は、ユーザ１０２に対して、例えば入力を要求することにより、自身をＩＤトークン１０６に対して認証するよう促す。
【０１２８】
そしてユーザ１０２は、自身をＩＤトークン１０６に対して、例えば自身のＰＩＮを入力することで認証する。認証に成功すると、属性の指定は、ユーザコンピュータシステム１００によりＩＤプロバイダコンピュータシステム１３６に中継される。そして、今度はこれがＩＤトークン１０６に対して自身を認証して、ＩＤトークン１０６に読み出し要求を送り、属性の指定に基づいて属性を読み出させる。
【０１２９】
ユーザ１０２およびＩＤプロバイダコンピュータシステム１３６に対して事前に認証されていることが想定して、ＩＤトークン１０６は、所望の属性で読み出し要求に応答する。ＩＤプロバイダコンピュータシステム１３６は、属性に署名して、署名された属性を、タイムスタンプとＴＡＮとともに、ユーザコンピュータシステム１００に送信する。ユーザ１０２によりリリースされると、署名された属性は、タイムスタンプおよびＴＡＮとともにサービスコンピュータシステム１５０に送信され、サービスコンピュータシステム１５０が、属性がこのために必要な基準を充たしており、署名が有効であり、属性がサービスコンピュータシステム１５０によりタイムスタンプが表す有効期間内に受信されると、利用可能である所望のサービスを提供することができる。
【符号の説明】
【０１３０】
１００  ユーザコンピュータシステム
１０２  ユーザ
１０４  インタフェース
１０６  ＩＤトークン
１０８  インタフェース
１１０  プロセッサ
１１２  プログラム命令
１１４  ネットワークインタフェース
１１６  ネットワーク
１１８  電子メモリ
１２０  セキュアなメモリ領域
１２２  セキュアなメモリ領域
１２４  セキュアなメモリ領域
１２６  メモリ領域
１２８  プロセッサ
１３０  プログラム命令
１３２  プログラム命令
１３４  プログラム命令
１３６  ＩＤプロバイダコンピュータシステム
１３８  ネットワークインタフェース
１４０  メモリ
１４２  秘密鍵
１４４  証明書
１４５  プロセッサ
１４６  プログラム命令
１４８  プログラム命令
１４９  プログラム命令
１５０  サービスコンピュータシステム
１５２  ネットワークインタフェース
１５４  プロセッサ
１５６  プログラム命令
１５８  設定データセット
１６０  設定データセット
１６１  設定データセット
１６２  ユーザ入力
１６４  サービス要求
１６６  属性の指定
１６８  要求
１７０  応答
１７２  プログラム命令
１７４  タイムベース
１７６  プログラム命令
１７８  プログラム命令
１８０  プログラム命令
１８２  タイムベース
１８４  メモリ
１８６  テーブル
１８８  属性
【図１】
0005585969.tif 000002
【図２】
0005585969.tif 000003
【図３ａ】
0005585969.tif 000004
【図３ｂ】
0005585969.tif 000005
【図３ｃ】
0005585969.tif 000006
【図４】
0005585969.tif 000007