ユーザ、およびコンピュータシステムから受信された通信の認証のための方法および装置
システムおよび方法が、コンピュータシステムからの通信をユーザが認証すること、ユーザをコンピュータシステムが認証すること、またはその両方を可能にする。ユーザが、WebサイトからWebページを要求すると、ユーザに認識可能なカスタマイズ情報が提供されて、ユーザが、そのWebサイトを認証することを可能にする。ユーザのコンピュータシステム上に格納された、または異なるコンピュータシステムにインストールされた署名済みの暗号化されたパーシステント ファイル、または信頼されるコンピューティング サブシステムにより、Webサイトが、ユーザを認証することができるようになる。ユーザが、そのユーザが認証されることを可能にしないシステムを使用している場合、ユーザは、ユーザのカスタマイズ情報なしに情報を提供することを続けるよう、システムに命令することができる。このシステムおよび方法は、ユーザが、電子メールメッセージ、またはそのメッセージの送信元を認証することができるようにするのに使用されることが可能であり、ユーザの電子メール クライアントが、クッキーを使用しない場合、Flashムービー、または他のコンピュータコードが使用されてもよい。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願)
本出願は、Louis GaspariniおよびWilliam Harrisによって2004年2月4日に出願された「Method and Apparatus for Autentication of Users and Communications Received From Computer Systems」という名称の整理番号1383、米国仮出願第60/542,101号の利益を主張するものであり、Louis GaspariniおよびCharles Gotliebによって2003年5月9日に出願された「METHOD AND APPARATUS FOR AUTHENTICATION OF USERS AND WEB SITES」という名称の整理番号1366、出願番号第10/435,322号の一部継続出願であり、以上のそれぞれは、参照により全体が本明細書に組み込まれている。
(整理番号)
1383PCT
(エクスプレス メール ラベル番号)
EV334039785US
(発明者)
Louis Gasparini
William Harris
【0002】
本発明は、コンピュータ セキュリティに関し、より具体的には、インターネット向けのコンピュータ セキュリティに関する。
【背景技術】
【0003】
インターネットおよびWorld Wide Webは、ユーザが、Web上の様々なサイトで動作しているソフトウェアと通信することを可能にする。通信は、リアルタイムで実行されること、または電子メールなどのメッセージングシステムを介して実行されることが可能である。しかし、これらのエンティティ(entity:実体)の片方または両方が、そのエンティティが通信している相手側のエンティティが、本当にその相手側のエンティティであることを確実にすることを可能にすることに役立つ可能性がある。
【0004】
Webサイトが、あるエンティティと通信していると考えているが、実際には、異なるエンティティと通信している場合、Webサイトは、Webサイトが通信している相手であると誤って考えているエンティティの機微な情報へのアクセスを提供する可能性がある。Webサイトは、セキュリティの転送、製品の発送、またはサービスのデリバリが、Webサイトが通信している相手であると考えるエンティティの名義で、異なるエンティティに対して行われるようにする可能性がある。例えば、Webサイトの一部の事業者は、登録済みのユーザとして偽ってWebサイトに身元を提示する盗人に、製品を発送すること、または現金を振り替えること、または他のセキュリティを転送することにより、相当な金額を損失する。
【0005】
それらの盗人の多くは、盗人によって運用されるWebサイトが、実際に、ユーザが登録しているWebサイトであるかのようにユーザに見せかけること、または機密情報をユーザが盗人に提供するようにさせることが可能な情報またはリンクを含む電子メールメッセージをユーザに送信すること、あるいはその両方により、ユーザを欺いて、盗人が、登録済みのユーザとして身元を提示するのに使用することができる機密情報を提供するようにさせる。例えば、盗人は、電子メールの受信者が、経理Webサイト、paypal.com(ドメイン名及び商標、以下同)に登録されていることを期待して、Webサイト、paypaiへのリンクで、payapl.comにログオンするようにユーザを招くひとまとまりの電子メールを送信する可能性がある。しかし、盗人は、「I」が、「paypal」における小文字の最後の文字「l」のように見えることを期待して、盗人のサイトにおいて最後の文字を大文字にして、paypaI.comと書かれているようにする。すると、Webサイト、paypai.comによって提供されるWebページは、Webサイト、paypal.comのように見えるようにされ、ユーザが、ログインしようと試みると、ユーザのユーザ名およびパスワードが、盗人のWebサイトによってキャプチャされる。盗人は、次に、そのようにして受け取られたユーザのユーザ名およびパスワードを使用して、paypal.comにログインし、ユーザの口座から、盗人によってコントロールされる口座への金の振替を許可する。
【0006】
詐欺の別の変種では、盗人は、実際のサイトのURLのように見えるが、実際には、盗人のサイトにログインするコマンドであるものを含むリンクをユーザに与える。例えば、「www.paypal.com/%sdafghdgk%fdgsdhdsh...」に「http://」が付けられているように書かれているリンクは、ユーザのブラウザにおけるURLウインドウの終りからはみ出た長いパラメータリストを有する、paypal.comへの本物のリンクのように見える可能性がある。ユーザに知られずに、上記のリンクは、実際には、「...@paypai.com」で終り、これは、ユーザが、ユーザ名として、「@」記号の左側の文字セットを使用して、Webサイト、paypai.comにログインされるようにする。Webサイト、paypai.comは、任意のそのようなユーザ名が、Webサイトにログインすることを許し、次に、前述したとおり動作して、ユーザが、盗人のWebサイトにおけるアプリケーションソフトウェアにログオンすることを許す(リンクを介して偽りのユーザ名が提供されているものの)paypal.comユーザインタフェースのレプリカをユーザに提示する。盗人は、次に、そのようにして受け取られたユーザ名およびパスワードを使用して、本物のpaypal.comのWebサイトにログオンして、振替を行う。
【0007】
この問題に対抗するため、一部のWebサイトは、Webサイトが真正であることをユーザが検証することを可能にする証明書を提供するが、そのような認証を実行するための手続きは、複雑で、面倒であり、ほとんどのユーザには知られていない。このため、ユーザが、Webサイトを認証することができるようにするのに使用されることが可能な従来の方法は、使用するのが余りにも難しいため、効果的でない。
【0008】
Webサイトの不正直な運用者が、ユーザを騙して、Webサイトが真正であると信じるようにさせることができるだけでなく、不正直なユーザが、真正のWebサイトを騙して、ユーザが真正であると信じるようにさせることもできる。前述したとおり、ユーザからの機密情報が、キャプチャ(capture)され、次いで、Webサイトが、そのユーザを相手にしていると信じさせるのに使用されることが可能である。一部のWebサイトは、ユーザのコンピュータ上にクッキーを置き、ログインしようと試みている人が、実際にその人であるという可能性を検証しようと試みるのに、それらのクッキーが使用されることも可能である。しかし、クッキーは、盗人のコンピュータシステムが、盗人が偽装しようと試みているユーザのコンピュータシステムであると示すように、盗人によって偽造される可能性がある。
【0009】
関連出願は、ユーザを認証するのにソフトウェアによって使用されることが可能な署名済みの暗号化されたクッキーが、登録プロセス中にユーザのコンピュータシステム上に置かれており、コンピュータシステムからの通信をユーザが認証することができるようにするようにユーザに与えられることが可能な、認識可能なカスタマイズ情報が、ユーザによってソフトウェアに与えられている、または示されている構成を説明した。このアプローチは、うまく機能するが、いくつかの限界を有し、それらの限界のすべてに、本出願では、対処が行われている。
【0010】
1つのそのような限界は、登録プロセス中にユーザが自身の認証を行う検証可能な能力の欠如である。関連出願は、ユーザが、自身を登録するのに使用していた通信セッション以外の手段を介して、ユーザが受け取ったセッション外識別子の提供を使用した。しかし、方法は、セッション外の方法(例えば、電話番号を介した電話コール、または電子メールアドレス)が、ユーザに属すると知られていなかった、またはセキュリティで保護されていなかった場合、セキュリティで保護されていない可能性がある。別の限界は、登録されると、ユーザは、それ以降、クッキー(cookie)が格納されているクライアントコンピュータシステムを使用してしか、自身の認証を行うことができないことである。別の限界は、コンピュータシステムの複数のユーザが、互いのカスタマイズ情報を見る、またはコンピュータシステムの許可されていないユーザが、ユーザのカスタマイズ情報を見る可能性である。
【0011】
また、ユーザのカスタマイズ情報の機密性が脅かされる大きい可能性なしに、ユーザが、電子メールメッセージ、または他の通信を認証することができるようにすることも望ましい可能性がある。本明細書で説明するとおり、クッキー、およびその他のパーシステント ファイル(persistent file)が、この問題を解決することができる。しかし、一部の電子メール クライアントは、クッキーの使用をサポートしない。さらに、ユーザが、ネットワークに接続されておらずに、電子メールメッセージを認証することができるようにすることが望ましい可能性がある。
【特許文献1】米国仮出願第60/542,101号
【特許文献2】米国出願第10/435,322号
【発明の開示】
【発明が解決しようとする課題】
【0012】
必要とされているのは、コンピュータに対してユーザをセキュリティで保護された形で認証すること、複雑な認証手続きをユーザが使用することを要求することなしに、コンピュータシステムからの通信をユーザが認証することを容易に可能にすること、またはその両方ができ、登録プロセス中でさえ、ユーザを認証することができ、様々なクライアントコンピュータシステムから、ユーザが、コンピュータシステムに対して自らの認証を行うことができるようにする、または厳密な認証の必要性を回避できるようにすることができ、ユーザのクライアントコンピュータシステムにアクセスを有する他の人々から、コンピュータシステムを認証するユーザの手段を保護することができ、コンピュータシステムを認証するユーザの能力が脅かされる大きな可能性なしに、電子メールメッセージ、または他の通信をユーザが認証することができるようにすることが可能なシステムおよび方法である。
【課題を解決するための手段】
【0013】
システムおよび方法は、暗号化された署名済みのクッキー、あるいはユーザのコンピュータシステム上のFlashローカル共有オブジェクトなどの他のパーシステント ファイルを提供して、コンピュータシステムが、ユーザを識別し、認証することを可能にする。さらに、または代替として、カスタマイズ情報が、ユーザの識別子に関連付けられて、ユーザが、同一のコンピュータシステム、または異なるコンピュータシステムから受信された通信が、真正であることを認識することを可能にする。ユーザが、コンピュータシステムからWebページ、または他の通信を要求すると、パーシステント ファイルが、Webサイトまたはコンピュータシステムによって受信され、そのパーシステント ファイルの中に含まれる署名およびユーザ識別子、つまり、コンピュータコードが、調べられて、ユーザが認証されることが可能である。パーシステント ファイルの中の識別子は、ユーザを識別するのに使用され、ユーザが、認識して、コンピュータシステムからのWebサイト、または他の通信を認証することができるカスタマイズ情報を、コンピュータシステムが提供できるようにすることが可能である。その場合、ユーザは、ユーザが予期しているカスタマイズ情報を提供する通信を信用することができる。カスタマイズ情報が、欠落している場合、または異なる場合、ユーザは、機密情報をそのコンピュータシステムに提供することを拒否すること、またはそのコンピュータシステムによって提供される情報を信じることを拒否することができ、ユーザのユーザ名およびパスワード、ならびにその他の機密情報が、盗人から保護される。
【0014】
システムおよび方法は、例えば、第三者を使用して、ユーザ以外の数名の人々が知っている情報を要求し、次いで、その情報を検証することにより、ユーザを認証してから、パーシステント ファイルを提供することができる。カスタマイズ情報は、ユーザのコンピュータシステムにアクセスを有する可能性がある他の人々からカスタマイズ情報をセキュリティで保護するために、ユーザが、有効なユーザ名を供給して初めて、供給されてもよい。パーシステント ファイルは、ユーザの静的IPアドレス、通信インタフェースのMACアドレス、またはクライアントコンピュータシステム260の別の識別子、および/またはデジタル証明書を含むことが可能であり、これらは、パーシステント ファイルが、さらなるセキュリティのために使用される際に調べられることが可能である。ユーザは、パーシステント ファイルを含まないコンピュータシステムをユーザが使用している際に、パーシステント ファイルが、異なるコンピュータシステム上にインストールされることを所望すること、あるいは、コンピュータシステムが、ユーザを認証すること、またはカスタマイズ情報を提供することを中断できることを指示することができる。バイオメトリック識別システムまたは物理的キーなどの、信頼されるコンピューティングサブシステムが、パーシステント ファイルの代わりに使用されて、クッキーを使用しない可能性がある他のコンピュータシステムをユーザが使用できるようにすること、またはユーザを認証する際にさらなるセキュリティを提供することが可能である。
【0015】
カスタマイズ情報は、電子メールメッセージの中で提供されて、メッセージ、またはメッセージの送信者を、ユーザが認証することができるようにすることが可能である。Flash(商標、以下同)ムービー、またはその他のコードにより、電子メール、または他の通信の中でカスタマイズ情報を提供するコンピュータシステムが、ユーザの電子メール クライアントまたはブラウザが、クッキーの使用をサポートしていない場合でも、ユーザを認証することができるようになることが可能である。カスタマイズ情報は、電子メールと一緒に送信されるFlashムービー、または別のファイルの中に暗号化されて、ユーザが、ネットワークに接続されていない場合でも、電子メールメッセージ、または他の通信を認証することができるようになることが可能である。
【0016】
このシステムおよび方法を使用して、例えば、クレジットカードなどの金融手段を使用する支払いを許可する目的で、ユーザを認証することができ、ユーザが、コンピュータシステムを認証することができるようにされることが可能である。
【発明を実施するための最良の形態】
【0017】
本発明は、従来のコンピュータシステム上のコンピュータソフトウェアとして実施されることが可能である。次に、図1を参照すると、本発明を実施するための従来のコンピュータシステム150が、示されている。プロセッサ160が、ランダムアクセスメモリ(RAM)であることが可能なメモリなどのストレージ162の中に格納されたソフトウェア命令を受け取って、実行し、本発明を実行するように他のコンポーネントを制御することが可能である。ストレージ162は、プログラム命令またはデータ、あるいはその両方を格納するのに使用されることが可能である。コンピュータディスクドライブ、または他の不揮発性ストレージなどのストレージ164が、データまたはプログラム命令のストレージを提供することができる。一実施形態では、ストレージ164は、命令およびデータのより長期の格納を提供し、ストレージ162は、ストレージ164の期間よりも短い期間にわたってだけ要求されることが可能なデータまたは命令のための格納を提供する。コンピュータキーボードまたはマウス、あるいはその両方などの入力デバイス166により、システム150へのユーザ入力が可能になる。ディスプレイまたはプリンタなどの出力168により、システムが、命令、データ、またはその他の情報などの情報をシステム150のユーザに提供することが可能になる。従来のフロッピーディスクドライブまたはCD−ROMドライブなどのストレージ入力デバイス170が、入力172を介して、従来のフロッピーディスクまたはCD−ROM、あるいはコンピュータ命令またはデータをシステム150に運ぶのに使用されることが可能な他の不揮発性記憶媒体などの、コンピュータプログラム製品174を受け入れる。コンピュータプログラム製品174上には、以下に説明するとおり動作するようにコンピュータシステム150を構成するように、プログラム命令、データ、またはその両方として符号化された、フロッピーディスクのケースでは、磁荷、CD−ROMのケースでは、光符号化などの、コンピュータ可読プログラムコード デバイス176が符号化されている。
【0018】
一実施形態では、各コンピュータシステム150は、カリフォルニア州マウンテンビュー所在のサンマイクロシステムズ(商標、以下同)株式会社から市販されるSOLARISオペレーティング システム(商標、以下同)を実行している、従来のサンマイクロシステムズUTRA10ワークステーション(商標、以下同)、ワシントン州レッドモンド所在のマイクロソフト コーポレーション(商標、以下同)から市販されるWINDOWSオペレーティング システム(商標、以下同)のあるバージョン(95、98、Me、XP、NT、または2000)を実行している、テキサス州ラウンドロック所在のデル コンピュータ コーポレーション(商標、以下同)から市販されるような、PENTIUM(商標、以下同)互換パーソナルコンピュータシステム、またはカリフォルニア州キューパーティーノ所在のアップル コンピュータ コーポレーション(商標、以下同)から市販されるMACOSオペレーティング システム(商標、以下同)またはOPENSTEPオペレーティング システム(商標、以下同)、ならびにカリフォルニア州、マウンテンビュー所在のネットスケープ コミュニケーションズ コーポレーション(商標、以下同)から市販されるNETSCAPEブラウザ(商標、以下同)、または前述のマイクロソフトから市販されるINTERNET EXPLORER(商標、以下同)を実行しているMacintoshコンピュータシステム(商標、以下同)であるが、他のシステムが使用されてもよい。
【0019】
次に、図2Aを参照すると、本発明の一実施形態による、ユーザが、コンピュータシステムからの1つまたは複数の通信を認証することを可能にし、コンピュータシステムが、そのユーザを認証することを可能にするためのシステム200が、示されている。以上の機能はともに、本明細書で説明されるが、一実施形態では、以上の機能の一方は、他方を伴わないことも可能である。すなわち、本発明によれば、両方の機能を使用することは必須ではないが、他の諸実施形態は、両方の機能を使用する。
【0020】
システム200は、1つまたは複数のサーバと、1つまたは複数のクライアントとを含み、代表的なサーバ202、および代表的なクライアント260が示されているが、複数のクライアントが、サーバ202に同時に、または異なる時点でアクセスすることも可能であり、複数のサーバが、同時に使用されることも可能である。サーバ202は、コンポーネントのスーパーセットを有するように示され、コンポーネントのスーパーセット、またはそのスーパーセットのサブセットを有して各々が示される、複数のサーバが存在することも可能である。
【0021】
一実施形態では、本明細書で説明されるサーバ202に入る、またはサーバ202から出るすべての通信は、インターネット、またはローカルエリアネットワーク、あるいはその両方などのネットワーク254に結合された通信インタフェース210の入出力208を介して行われる。通信インタフェース210は、イーサネット、TCP/IP、または他の従来の通信プロトコルをサポートする従来の通信インタフェースである。
【0022】
クライアント260に入る、またはクライアント260から出る通信は、通信インタフェース262の入出力258を介して行われ、インタフェース262は、通信インタフェース210と同様の、または同一の、従来の通信インタフェースを含むが、入出力256を介して、従来のキーボード/モニタ/マウス(図示せず)、または他の同様な従来の入出力デバイスに結合される、従来の回路も含むことが可能である。クライアントコンピュータシステム260は、通信インタフェース262の一部でもある入出力258に結合されたモデムを介して、ネットワーク254に結合されることが可能である。
【0023】
(登録)
一実施形態では、登録プロセスは、多くのユーザの各ユーザに関するカスタマイズ情報を識別するように実行されて、ユーザが、以下により詳細に説明するとおり、1つまたは複数のコンピュータシステムからの通信を知覚的に認証することを可能にする。そのような知覚的認証は、1つまたは複数のWebページの外見、それらのWebサイトに付随してもたらされる1つまたは複数のサウンド、匂い、触覚、または味などの、ユーザによる感知が可能なあらゆるものを含むことが可能である。例えば、ユーザの写真が、初期Webサイトログオンページ上に出現し、オプションとして、後続のページ上に出現し、あるいは電子メールメッセージの中で出現して、その通信が真正であることをユーザに示すことが可能である。あるテキストの句が、写真の代わりに、または写真に加えて使用されてもよい。ユーザに知られているサウンドが、以上に加えて、または以上の代わりに使用されてもよい。
【0024】
登録プロセスは、以下に説明するとおり、ユーザの識別子を、ユーザに提供されるカスタマイズ情報に関連付けて、ユーザが、Webサイトの1つまたは複数のページ、電子メール、またはその他の通信などの、コンピュータシステムからの通信を認証することを可能にする。一実施形態では、ユーザは、カスタマイズ情報を提供する、または選択するが、別の実施形態では、システム管理者が、その機能を実行し、次いで、カスタマイズ情報をユーザに知らせる。
【0025】
一実施形態では、ユーザは、従来のブラウザ264、通信インタフェース262、およびネットワーク254を使用して、通信インタフェース210を介して受信されるWebページを求める要求を介してサーバ202にログインし、Webページは、その要求のポート番号に基づき、Webアプリケーション240に提供される。ブラウザ264が、本明細書で説明するとおり使用されるが、他の諸実施形態は、オペレーティングシステムソフトウェア、サーブレット、または他のアプリケーションソフトウェアを使用することも可能である。
【0026】
Webアプリケーション240は、サーバ202(または本明細書で説明されるサーバ202と同様の、または同一の異なるサーバ)上のセキュア ソケット レイヤ ポートにユーザのブラウザをリダイレクトし、ユーザのブラウザ264は、セキュア ソケット レイヤ接続を介して要求を再送し、その要求を、通信インタフェース210は、暗号化通信マネージャ212に供給する。暗号化通信マネージャ212は、従来のSSL処理技術を使用して、接続を確立し、その要求を受け取り、その要求を解読し、解読された要求をWebアプリケーション240に供給する。
【0027】
Webアプリケーション240は、ファイルストレージ266の中に格納されている可能性があるパーシステント ファイル(例えば、クッキー、Flashローカル共有オブジェクト、または他の類似のファイル)を読み取ろうと試み、そのように格納されている場合、接続の一環として、ブラウザ264によってサーバ202に提供されている。一実施形態では、パーシステント ファイルが存在しない場合(あるいは、別の実施形態では、すべてのケースで)、Webアプリケーション240は、登録マネージャ222によって提供される登録ページへのリンクを含む、Webページ(以下に説明するとおり、ユーザがログインすることを許すことも可能な)を構築する。ユーザが、そのリンクをクリックした場合、ユーザのブラウザ264は、前述したSSL接続、または異なるSSL接続を使用することが可能な登録ページを要求する。通信インタフェース210は、その要求を受け取り、暗号化通信マネージャ212経由でSSL接続を介して、その要求を登録マネージャ222に供給し、登録マネージャ222は、通信インタフェース210、ならびにSSL接続を使用する暗号化通信マネージャ212を介して、そのページを提供する。
【0028】
ユーザは、ユーザの身元の十分な証拠を提供して、ユーザが、自称どおりの人物であることを示すことができる。このプロセスは、登録マネージャ222によって実施されるが、多種多様な形で実行されることも可能である。
【0029】
一実施形態では、登録マネージャ222によって提供されるWebページは、登録のために、その当事者の身元を検証した個人のユーザ識別子および/またはパスワードを要求し、このユーザ識別子および/またはパスワードは、登録マネージャ222が、データベース224の中に以前に格納しており、提供されたユーザ識別子および/またはパスワードが、登録マネージャ222によって、許可されたユーザ識別子およびパスワードのセットと比較されて、ユーザが、ユーザの身元の十分な証拠を提供しているかどうかを判定することができるようになっている。別の実施形態では、登録マネージャ222は、郵便、ファックス、または電話などのセッション外手段を介して、または別のWeb接続もしくは電子メールメッセージを介してユーザに供給されており、登録マネージャ222によって以前に生成され、ユーザに供給されている1つまたは複数の識別子の別のセットを、ユーザに求める。
【0030】
一実施形態では、登録マネージャ222によって提供されるWebページは、ユーザの識別子、およびオプションとしてパスワードを選択する、または入力するようにユーザに促すだけでなく、ユーザの名前などの、第三者によって検証されることが可能な情報、ならびに1)ソーシャルセキュリティ番号(社会保障番号)、2)クレジット情報(例えば、クレジットカードの、または金融機関における他の口座の、最後のいくつかの数字、そのような口座に記載された最近の取引金額に関わるドル金額または商人)、3)運転免許証情報、または4)第三者によって検証されることが可能な他の情報のいずれか、またはすべても入力するように促し、登録マネージャ222は、CGIなどの従来の技術を介して、そのような情報を受け取る。登録マネージャ222は、通信インタフェース210およびネットワーク254を介して、そのような第三者のコンピュータ、または他のシステムと通信して、提供された情報の一部、またはすべてを検証する。第三者が、第三者に提供された情報を検証する場合、登録マネージャ222は、ユーザが、ユーザの身元の十分な証拠を提供していると見なし、したがって、登録マネージャ222は、ユーザが、以下に説明するとおり、登録することを続けることを許し、さもなければ、登録マネージャ222は、ユーザが、登録することを続けることを許さない。
【0031】
Webサイトのセキュリティ ニーズに依存して、ユーザは、そのような他のシステムによって提供される情報なしに、身元のそのような十分な証拠を提供することができる。十分な証拠は、ユーザの識別子およびパスワードであることが可能であるが、母親の旧姓、あるいはユーザ、または別のソースから以前に収集されており、データベース224の中に格納されている他の情報であってもよい。登録マネージャ222によって1つまたは複数の質問が、ランダムに選択され、ユーザに与えられ、登録マネージャが、応答を受け取り、同一のWebページフォームを介して、または登録マネージャによって提供される異なるWebページフォームを介して、ユーザによって登録マネージャ222にやはり提供される、ユーザ識別子(およびオプションとして、パスワード)と対応するデータベース224の中のレコードに対する質問(例えば、ペットの名前)と、それらの応答を比較する、チャレンジ−応答の構成が、使用されてもよい。別の実施形態では、要求に応答して、登録マネージャ222が生成するWebページフォームを介して、ユーザによって登録マネージャ222に提供されるユーザ識別子、またはユーザ識別子とパスワードが、ユーザの身元の十分な証拠であることが可能である。
【0032】
さらに別の実施形態では、ユーザは、登録マネージャ222に対して自らの認証を行う必要がなく、そのような実施形態では、ユーザの身元の十分な証拠は、その当事者が、特定のIPアドレスまたはMACアドレスから、ある時刻にWebサイトに接続されている、または、別の形で、従来の技術を使用して登録マネージャ222によって検出されるとおりに接続されているという事実であり、あるいはそのような情報が、他の情報に加えて使用されて、ユーザの身元の十分な証拠を供給する。
【0033】
その時点で、ユーザは、ユーザの身元の十分な証拠を提供していると見なされることが可能である。しかし、ユーザが、ユーザの身元の十分な証拠を供給するプロセスを完全にするのに、一実施形態では、登録マネージャ222が、セッション外手段を介して、例えば、電話接続または電子メールを介して、パスワードを供給することが望ましい可能性がある。その場合、ユーザは、そのパスワードを入力して、ユーザの身元の十分な証拠を供給するプロセスを完了することができる。セッション外手段は、ユーザが、登録マネージャ222と通信するのに使用している手段以外の任意の通信手段である。
【0034】
一実施形態では、登録マネージャ222、登録マネージャ222は、ユーザの識別子に対応するレコードの中で口座データベース248から、ユーザが、自身の認証をさらに行うことを可能にする1回限りのユーザ パスワードを供給するのに使用されることが可能なセッション外通信手段識別子(例えば、電話番号または電子メールアドレス)を取り出す。別の実施形態では、登録マネージャ222は、前述した同一のWebページ上、または異なるWebページ上で、セッション外通信手段の識別子を求める入力要求を提供し、登録マネージャ222は、そのような識別子を受け取る。口座データベース248は、数名のユーザの各ユーザに関する口座情報を保持している従来のデータベースである。
【0035】
登録マネージャ222は、次に、パスワードを生成し、このパスワードを、登録マネージャ222は、識別子に対応するセッション外の形で、通信インタフェース210を介してか、またはセッション外の方法で通信するのに使用されることが可能な入出力223を介して提供し、登録マネージャ222は、適切なインタフェースを含む。
【0036】
例えば、セッション外の方法は、識別子が、電話番号である電話機であることが可能であり、登録マネージャ222における適切なインタフェースは、従来の電話インタフェース、および従来のテキスト−音声コンバータ、または従来の音声応答システムである。
【0037】
登録マネージャ222は、次に、Webページを介してユーザに、前述したとおり、登録マネージャ222が提供したパスワードを入力するよう促し、ユーザがそれに応じると、登録マネージャ222は、ユーザからパスワードを受け取り、そのパスワードを、登録マネージャ222が、前述したセッション外手段を使用して提供したパスワードと比較する。その2つのパスワードが一致した場合、登録マネージャ222は、そのユーザが、ユーザの身元の十分な証拠を提供したものと見なす。その2つのパスワードが一致しない場合、またはパスワードが、前述したとおり提供された後、十分な期間内に、ユーザが、パスワードを提供しない場合、登録マネージャ222は、そのユーザが、ユーザの身元の十分な証拠を提供したとは見なさず、ユーザが、以下で述べるようにカスタマイズ情報を登録することを許さない。一実施形態では、この形で提供されるパスワードは、1回限りのユーザパスワードであり、このパスワードを、登録マネージャ222は、このパスワードが、前述したとおり入力された後、ユーザが変更することを即時に要求し、変更されたパスワードを、口座データベース248の中の、ユーザのレコードの中に格納する。
【0038】
以上のアプローチの実施例として、登録マネージャ222は、暗号化通信マネージャ212を介してユーザに、ユーザの運転免許証番号、ならびにユーザのユーザ識別子および電子メールアドレスを提供するよう促すことができる。登録マネージャ222は、ユーザ識別子および運転免許証番号を、CGIなどの従来の技術を介して受け取り、従来のデータベースであることが可能な、口座データベース248の中の、そのユーザ識別子に関して格納された名前およびアドレスを取り出し、そのような名前およびアドレスは、システム管理者によってあらかじめ格納されている。登録マネージャ222は、次に、その名前、アドレス、および運転免許証番号をユーザの在住の州における許可機関に提供し、州の許可機関から、その運転免許証番号が、名前およびアドレスと一致するという指示を受け取る。その結果、登録マネージャ222は、ユーザが供給した電子メールアドレスを介して、ユーザにパスワードを1回限りのパスワードとしてメール送信し、ユーザが、前述したとおり、登録プロセスを続けることを許す。ユーザは、そのパスワードを使用してログインして、ユーザの身元の十分な証拠を提供するプロセスを完了させ、登録マネージャ222は、次に、暗号化通信マネージャ212を介してパスワードを変更するようユーザに促し、新たなパスワードを、ユーザ識別子に対応するレコードの中で口座データベース248の中に格納する。
【0039】
前述したとおり、登録マネージャ222は、ユーザから身元の十分な証拠を受け取ると、データベース224の中で新たなレコードを構築し、前述したとおり受け取られたユーザ識別子を、データベース224の中の、そのユーザに関するレコードの中に格納することを、その識別子が、そのユーザに関して既に存在している可能性があるそのようなレコードの中に既に格納されていない場合、行う。
【0040】
(ユーザが、カスタマイズ情報を提供する)
ユーザが、ユーザの身元の十分な証拠を提供した後、登録マネージャ222は、カスタマイズ情報の事前定義されたリストから選択するよう、またはカスタマイズ情報を提供するようユーザに促し、カスタマイズ情報の一部またはすべては、ユーザが、機密情報、または他の情報をWebサイトに提供するように要求される場合、またはユーザが、電子メールメッセージ、またはそのメッセージの送信元などの、通信を認証することを所望することが可能な場合に、ユーザに提示されることが可能である。前述したとおり、別の実施形態では、システム管理者が、ユーザに関するカスタマイズ情報を選択する、または提供することができる。
【0041】
カスタマイズ情報は、Webサイトが真正であることをユーザが認識するのに使用することができるものであれば何であってもよい。カスタマイズ情報は、以下のいずれかからのいくつであってもよい。すなわち、写真、グラフィック、色、レイアウト、メッセージ、サウンド、匂い、または触覚によって感知されることが可能であれば何であれ。カスタマイズ情報は、リストから選択されても、ユーザ自身のデジタル写真などの、Webサイトの真正性を識別するのに情報を使用するユーザによって提供されるオリジナルな情報であってもよい。カスタマイズ情報は、静的でなくてもよい。すなわち、カスタマイズ情報は、そのユーザのカスタマイズ情報として、そのような情報が、前述したとおり、提供される際に、「@date」が、その日の日付で置き換えられる、「Today is @date」、または次の5月5日までの日数が、「@May−Today」に代入される、「Only(@5May−today)days until your birthday」のような決り文句であってもよい。
【0042】
登録マネージャ222は、ユーザが、前述の項目、または他の同様な情報のいずれかからのいつくでも選択し、または提供し、次いで、それらの項目、またはそれらの項目の指示を、従来のデータベースであることが可能であり、口座データベース248と同一であってもよいデータベース224の中の、そのユーザに関するデータベース レコードの中に格納することを可能にするWebページを提供する。さらに別の実施形態では、登録マネージャ222は、そのようなカスタマイズ情報を生成し、または選択し(すなわち、ランダムに)、その情報をユーザに提供し、その情報をデータベース224の中のデータベース レコードの中に格納する。カスタマイズ情報は、前述したとおり、Webページを介して、またはセッション外で、登録マネージャ222によって提供されてもよい。
【0043】
一実施形態では、登録マネージャ222は、暗号化通信マネージャ212を介してカスタマイズ情報を提供し、または求めて、受け取り、暗号化通信マネージャ212は、SSL暗号化通信などのセキュリティで保護された通信チャネルを開始し、使用して、カスタマイズ情報を提供するか、または求めて、受け取り、他の人々が、カスタマイズ情報を傍受することを防止する。
【0044】
(クッキーが、暗号化され、署名され、格納される)
また、登録マネージャ222は、署名済みの暗号化されたパーシステント ファイルをユーザのコンピュータシステム上に格納することも開始する。そのような格納は、ユーザが、前述したとおり、ユーザの身元の十分な証拠を提供した後のいずれの時点で行われてもよく、前述したカスタマイズ情報の識別の前、後、またはその識別の代わりに実行されてもよい。
【0045】
パーシステント ファイルを構築し、格納するのに、登録マネージャ224は、前述したとおり、データベース224のユーザのレコードの中に格納されたユーザの識別子をパーシステント ファイル ビルダ(persistent file builder)230に提供する。パーシステント ファイル ビルダ230は、ユーザ識別子をパーシステント ファイルの中に含め、以下にそれぞれより詳細に説明する、パーシステント ファイル ビルダ230が、登録マネージャ222から受け取る、通信インタフェースのIPアドレスまたはMACアドレスなどの、他のステータス情報、またはデジタル証明書をパーシステント ファイルに追加することができ、その識別子、およびその他の情報をパーシステント ファイル サイナ(persistent file signer)232に提供し、サイナ232は、秘密のハッシュ キーを使用して、その識別子に、さらに、オプションとして、その他の情報にハッシングを行うことなどにより、従来の暗号技術を使用してパーシステント ファイルに署名して、本明細書で、パーシステント ファイル署名と呼ばれるハッシュ結果をもたらす。パーシステント ファイル サイナ232は、パーシステント ファイルとひとまとめにして呼ばれる、パーシステント ファイル署名、識別子、ならびに、オプションとして、その他の情報をパーシステント ファイル インクリプタ(persistent file encryptor)234に提供し、インクリプタ234は、公開キー/秘密キー ペアの公開キーを使用する、または対称キーを使用するなど、従来の暗号化技術を使用して、パーシステント ファイルを暗号化する。パーシステント ファイル インクリプタ234は、次に、ブラウザ264が、暗号化通信マネージャ212、通信インタフェース210、ネットワーク254、通信インタフェース262を介して、オプションとして、前述したとおり、登録のために使用される接続などの、SSL接続を使用して、ユーザのクライアントコンピュータシステム260上のファイル ストレージ266の中に、暗号化されたパーシステント ファイルを格納するようにさせる。ファイル ストレージ266は、従来のメモリまたはディスク ストレージであることが可能であり、パーシステント ファイルの格納のために使用されるそのようなメモリまたはストレージの一部分であることが可能であり、クライアントコンピュータシステム260の一部であることが可能であり、あるいはスマートカード、USBメモリ トークン(テキサス州ラウンドロック所在のデル コンピュータシステムズ(商標、以下同)から市販されるUSB Memory Keyなどの、USBポートを介してパーソナル コンピュータとインタフェースをとるポータブル メモリ デバイス)などの取り外し可能なデータベースの中に存在することが可能である。
【0046】
クッキーが、本明細書で説明したとおり、パーシステント ファイルとして使用されてもよいが、他の諸実施形態は、他のタイプの暗号化されたファイル、証明書、または他の類似のデータ構造を使用することができる。例えば、以下により詳細に説明するとおり、Flash共有オブジェクトが、パーシステント ファイルとして、例えば、登録マネージャ222によって、例えば、登録マネージャ222が供給するWebページの一部として、Flashムービーを「.swf」ファイルの形態で供給して、使用されてもよい。Flashムービーは、パーシステント ファイル インクリプタ234から、本明細書で説明するパーシステント ファイルと同様の、または同一の形態で情報を受け取り、その情報をFlashローカル共有オブジェクトとして、ファイル ストレージ266の中に格納することができる。Flash共有オブジェクトおよびローカル共有オブジェクトは、Webサイト、Macromedia.com(ドメイン名及び商標、以下同)において説明されている。
【0047】
一実施形態では、ユーザのクライアントコンピュータシステム260は、初期登録のために使用される必要がない。代わりに、登録プロセスは、2つの部分で実行されることが可能である。すなわち、第1の部分は、ユーザが、前述したとおり、既知のIPアドレスを有する特定のブラウザ セットから、カスタマイズ情報を選択することを可能にし、またはシステム管理者ユーザ、識別子、およびパスワードを使用して認証される。第2の部分は、ユーザが、ユーザ自身のブラウザから、前述したとおり、ユーザの身元の証拠を使用して、ログインすることを可能にし、その時点で、暗号化されたパーシステント ファイルは、ユーザのクライアントコンピュータシステム260上に置かれる。以下により詳細に説明するとおり、ユーザは、他のコンピュータシステムを使用して、前述したとおり、コンピュータシステムに対してユーザ自身の認証を行うことができる。
【0048】
(コンピュータシステムからの通信および/またはユーザの身元を認証すること)
ユーザは、本発明を使用して、例えば、サーバ202によって提供されるWebページを認証して、コンピュータシステムからの通信を認証することができ、サーバ202などの同一のコンピュータシステム、または異なるコンピュータシステムは、本発明を使用して、本明細書で説明するとおり、ユーザを認証することができる。例えば、前述したとおり、パーシステント ファイルを受け取った後、ユーザが、WebサイトからWebページを要求する際、ユーザは、ユーザのWebブラウザ264(本明細書で使用されるところでは、従来のWebブラウザ、または別のアプリケーション プログラムであることが可能である)を使用して、要求をサーバ202に送信する。要求は、ユーザが、WebブラウザにURLを入力すること、Webページ上、電子メール上、またはアラート上のリンクをクリックすることにより、または別のWebサイトからのリダイレクト コマンドにより、受け取られることが可能である。ブラウザ264は、通信インタフェース262および210、ならびにネットワーク254を介して、要求をサーバ202に送信する。通信インタフェース210は、本明細書で説明するとおりに動作するように変更された、従来のWebアプリケーション プログラムであるWebアプリケーション240に、その要求を転送する。Webアプリケーション240は、以下に説明するとおり、ユーザを認証すること、ユーザが、Webサイトを認証することを可能にするカスタマイズ情報を提供すること、またはその両方ができる。
【0049】
ユーザを認証するのに、Webアプリケーション240は、ファイル ストレージ266からブラウザ264によって提供される、暗号化されたパーシステント ファイルを読み取り、そのようなパーシステント ファイルは、本明細書で説明するとおり、ファイル ストレージ266の中に入れられている。Webアプリケーション240は、暗号化されたパーシステント ファイルをパーシステント ファイル バリデータ(persistent file validator)242に送り、バリデータ242は、その暗号化されたパーシステント ファイルを解読し、次に、パーシステント ファイルの残りの部分から署名を分離する。パーシステント ファイル バリデータ242は、その署名が、パーシステント ファイルの残りの部分と対応することを検証し(例えば、署名を構築するのに使用されたのと同一のハッシュ アルゴリズムおよびハッシュ キーを使用して、パーシステント ファイルの残りの部分を再ハッシングし、そのハッシュ結果を署名と比較することにより)、パーシステント ファイル バリデータ242が、署名を介してユーザを認証した(例えば、バリデータ242が生成したハッシュ結果が、署名と一致した)場合、パーシステント ファイルの中に格納されることが可能なユーザの識別子、およびその他の情報をWebアプリケーション240に提供するか、あるいはパーシステント ファイルが、有効でないことを示す(例えば、パーシステント ファイル バリデータ242が生成したハッシュ結果が、署名と一致しない場合)。
【0050】
一実施形態では、前述した登録プロセス中、登録マネージャ222は、ユーザのコンピュータシステムが、静的IPアドレスに関連する方法を介して、例えば、DSLモデムまたはケーブル モデムを介してインターネットにアクセスするかどうかを明らかにするよう、ユーザに促す。ユーザが、そのように示した場合、登録マネージャ222は、通信インタフェース262のIPアドレスをパーシステント ファイル ビルダ230に提供し(または、無条件に、MACアドレスを提供し)、ビルダ230は、署名済みの暗号化されたパーシステント ファイルの中に、ユーザのIPアドレス(またはMACアドレス)、あるいはIPアドレスが静的ではないという指示を含める。この実施形態では、Webアプリケーション240は、要求の中に含まれる送信元IPアドレスも、パーシステント ファイル バリデータ242に提供する。パーシステント ファイルが、静的IPアドレスを含むことをパーシステント ファイルが示す場合、受信されたユーザの要求の送信元IPアドレス(またはMACアドレス)が、パーシステント ファイルの中のIPアドレス(またはMACアドレス)と一致しない場合、パーシステント ファイル バリデータ242は、ユーザ識別子と署名が、前述したとおり、一致した場合でも、パーシステント ファイルが有効でないことを示す。
【0051】
一実施形態では、パーシステント ファイル バリデータ242は、パーシステント ファイルが、有効なデジタル証明書を有することも要求し、この証明書を、パーシステント ファイル バリデータ242は、従来の技術を使用して検証する。デジタル証明書が有効でない場合、パーシステント ファイル バリデータ242は、前述したとおり、他の有効性試験に合格した場合でも、パーシステント ファイルが有効でないことを示す。デジタル証明書は、前述した登録プロセス中に、署名済みの暗号化されたパーシステント ファイルの中に含めるために、登録マネージャ222によってパーシステント ファイル ビルダ230に提供されることが可能である。
【0052】
パーシステント ファイルが有効でないことをパーシステント ファイル バリデータ242が示した場合、Webアプリケーション240は、そのWebサイトの一部またはすべてへのアクセスを拒否することが可能である。示さなかった場合、Webアプリケーション240は、ユーザ識別子を受け取り、そのユーザ識別子を使用して、Webアプリケーション240を動作させ、かつ/または本明細書で説明するとおり選択されたカスタマイズ情報を、ユーザに提供する。
【0053】
一実施形態では、Webアプリケーション240は、ユーザから受け取られたユーザ識別子を、パーシステント ファイル バリデータ242から受け取られたユーザ識別子と比較する。それらのユーザ識別子が一致した場合、Webアプリケーション240は、要求されたWebページに、本明細書で説明するとおり、カスタマイズ情報を提供する。それらのユーザ識別子が一致しなかった場合、Webアプリケーション240は、要求されたWebページ、およびカスタマイズ情報へのアクセスを拒否する。一実施形態では、ユーザは、前述したとおり、ユーザが、ユーザ識別子を入力するのと同時に、あるいは以下により詳細に説明するとおり、後の時点で、ブラウザ264を使用して、パスワードを入力することも行う。また、一実施形態では、Webページ240は、そのパスワードを、口座ストレージ248の中に格納されている、そのユーザに関するパスワードと比較して、ユーザから受け取られたパスワードが、そのユーザ識別子に関して格納されているパスワードと一致しない場合、要求されたWebページ、およびカスタマイズ情報へのアクセスを拒否することも行う。
【0054】
カスタマイズ情報は、Webアプリケーション240によって提供されるすべてのWebページとともに、一部のWebページとともに、機密情報をユーザに提供するように表示されるWebページとともに、ユーザから何らかの情報を要求するのに使用されるWebページとともに、またはユーザから機密情報を要求するのに使用されるWebページとともに、あるいは以上の一部またはすべての任意の組み合わせとともに提供されることが可能である。機密情報には、Webサイトの事業者、またはユーザの金銭上のリソース、または他のリソースへのアクセスを得るのに使用されることが可能な情報(例えば、前述したパスワード)、または他の人々が知ることをユーザが望まない可能性がある他の情報が含まれることが可能である。
【0055】
カスタマイズ情報は、前述したWebページの一部として提供されても、別個に提供されてもよい。前述したWebページのいずれかとともにカスタマイズ情報を提供するのに、Webアプリケーション240は、前述したとおり受け取られたユーザ識別子、およびカスタマイズ情報が除外されており、オプションとして、Webページの中のどこにどのようにカスタマイズ情報を挿入すべきかを記述するWebページの中の1つまたは複数の指示を伴う、Webページのコンテンツを、ユーザのIPアドレス、ならびにWebページをアドレス指定するのに使用されることが可能な他の情報とともに、カスタマイズ情報プロバイダ244に提供する。
【0056】
一実施形態では、カスタマイズ情報プロバイダ244は、データベース224から、ユーザ識別子に対応するレコードの中に格納されたカスタマイズ情報を取り出し、Webページとともに、またはWebページの一部として受け取られた命令に従って、Webアプリケーション240からプロバイダ244が受け取るWebページに、そのカスタマイズ情報を追加することにより、またはWebページの中のある場所で、またはWebページの四隅、もしくは四隅近くなどの、複数の場所で、そのカスタマイズ情報を提供することにより、カスタマイズ情報を提供し、プロバイダ244が受け取るユーザのIPアドレスを使用して、プロバイダ244が受け取るいずれかのWebページとともに、カスタマイズ情報をユーザに提供する。カスタマイズ情報は、1つまたは複数のタグまたはリンクを介して、Webページの中に組み込まれる、またはカスタマイズ情報プロバイダ244によって提供されること、あるいはFlashムービーまたはJavascriptアプレット(商標、以下同)などの、コンピュータコードの中に含まれることが可能である。タグまたはリンクは、提供されるべきカスタマイズ情報を明らかにし、サーバ202などのサーバを明らかにすることができ、サーバは、以下により詳細に説明するとおり、1つまたは複数のタグまたはリンクに対応する情報を表示しようと試みるブラウザ264によって行われる要求に応答して、カスタマイズ情報を提供することができる。一実施形態では、カスタマイズ情報プロバイダ244は、1つまたは複数のタグまたはリンクの一部の中に含まれる識別子を生成し、データベース224の中にユーザに関するカスタマイズ情報に関連付け、この識別子を、以下により詳細に説明するとおり、カスタマイズ情報サーバ238は、カスタマイズ情報に関するいずれの要求を満たすのにも使用する。カスタマイズ情報プロバイダ244によって提供されるタグ、リンク、またはコンピュータコードは、この同一のコードを含むように構築される。カスタマイズ情報、またはカスタマイズ情報への参照を有するページは、暗号化通信マネージャ212により、または以下に説明するとおり、セッション外で提供されるセキュリティで保護された接続を介して、提供されることが可能である。
【0057】
一実施形態では、カスタマイズ情報は、ユーザの移動電話機に呼び出しを行い、ユーザの音声の記録、好みの曲、事前記録されたメッセージを再生することによって、またはそれ以外の形でWebページが真正であることをユーザに知らせることによるなど、セッション外でカスタマイズ情報プロバイダ244によって提供されることが可能である。セッション外カスタマイズ情報は、カスタマイズ情報プロバイダ244が、適切なインタフェースを含んで、従来の電話線に結合されることが可能な出力243を介して提供されることが可能である。
【0058】
カスタマイズ情報プロバイダ244が、1つまたは複数のタグ、リンク、またはコードを介してカスタマイズ情報を提供する場合、ユーザのブラウザ264は、その1つまたは複数のタグ、リンク、またはコードの中に符号化されたカスタマイズ情報の各インスタンス(instance)に対応する要求を送信することにより、ユーザにカスタマイズ情報をレンダリングしようと試みる。要求は、カスタマイズ情報サーバ238のアドレス、ならびにユーザに提供されるべき特定のカスタマイズ情報を識別するコードを含む。コードは、パラメータとして、ファイル名として、またはそれ以外の形でリンクの中に埋め込まれることが可能であり、そのようなコードは、ブラウザ264によって要求とともに送信される。カスタマイズ情報サーバ238が、その要求を受信し、データベース224を探索して、そのコードに対応するカスタマイズ情報を探し出すことにより、そのコードを使用する。カスタマイズ情報サーバ238は、次に、そのコードに対応するカスタマイズ情報をブラウザ234に提供し、ブラウザ234は、本明細書で説明するとおり、そのカスタマイズ情報をユーザに表示する。カスタマイズ情報サーバ238は、本明細書で説明するとおり、サーバ238が提供するすべてのカスタマイズ情報を、通信インタフェース210を介して直接にか、または、暗号化されたSSLセッションを使用する通信インタフェースを介してそのような情報を提供する暗号化通信マネージャ212も介して、提供することができる。以下により詳細に説明するとおり、カスタマイズ情報サーバ238は、ユーザ以外の相手へのカスタマイズ情報の開示を防止するのに役立つように、そのようなカスタマイズ情報を提供する前に、パーシステント ファイルを使用することによってユーザを認証することができる。しかし、カスタマイズ情報に対応するコードが、ユーザのユーザ識別子と無関係であり、カスタマイズ情報自体が、ユーザの身元を開示しない場合、いずれのそのような開示のリスクも、わずかであることが可能である。
【0059】
ユーザが、ブラウザ264、ならびに入出力256に結合されたモニタを介して、またはセッション外などで、カスタマイズ情報を受け取ると、ユーザは、その情報を使用して、Webサイトの認証を行い、カスタマイズが、欠落している場合、または前述したとおりユーザが選択した、または提供したカスタマイズ情報と異なる場合、機密情報などの情報を提供するのを差し控えること、またはそのWebサイトを使用することを控えることができる。カスタマイズ情報が、登録されたもの、または別の形で、本明細書で説明するとおり予期されるものであった場合、ユーザは、Webアプリケーション240によって提供されるWebページを介して機密情報を提供すること、それらのWebページから受け取られた情報を信じること、またはその両方ができる。
【0060】
カスタマイズ情報は、各ユーザに関する単一のインスタンスを有するものとして本明細書で説明されているが、カスタマイズ情報の複数の異なるインスタンスが、ユーザらの数名または全員の各々に関して登録されて、カスタマイズ情報の各インスタンスが、異なる意味を有してもよく、例えば、1つのインスタンスは、ユーザが、セキュリティで保護された情報を提供してもOKであることを意味することが可能であり、同一のユーザに関するカスタマイズ情報の異なるインスタンスは、ページ上の情報が、真正のソースから提供されたものとして検証されていることを意味する。カスタマイズ情報の各インスタンスを、ユーザの識別子、ならびにそのインスタンスの識別子に関連付けることが、本明細書で説明するとおり実行されることが可能であり、ユーザに関するカスタマイズ情報の各インスタンスは、そのユーザに関するその他のインスタンスとは知覚的に異なることが可能である。Webアプリケーション240が、次に、カスタマイズ情報プロバイダ244に、ユーザの識別子、ならびに提供されるべきカスタマイズ情報のインスタンスの識別子を提供し、カスタマイズ情報プロバイダ244は、ユーザの識別子、およびインスタンスの識別子を使用して、各ユーザに関するカスタマイズ情報の単一のインスタンスに関して前述したのと同一の形で、カスタマイズ情報の適切なインスタンス、またはそのようなインスタンスへの参照を取り出し、ユーザに提供する。
【0061】
(ユーザは、事前確認されることが可能である)
ユーザは、ユーザが、ブラウザ264を使用して、機密情報をユーザが提供することを要求するページへのサイトに移動した際に、ユーザのクライアントコンピュータ260に単に物理的アクセスを有し、そのサイトに移動する誰かに、カスタマイズ情報を提供しないように、ユーザのカスタマイズ情報が提供されることを望まない可能性がある。このため、一実施形態では、カスタマイズ情報は、ユーザが、有効なユーザ識別子をWebアプリケーション240に提供するまで、提供されない。
【0062】
図5Aは、本発明の一実施形態によるWebアプリケーション240をより詳細に示す。次に、図2Aおよび図5Aを参照すると、そのような実施形態では、ユーザが、ブラウザ264を使用して、Webアプリケーション240によって運用されるWebサイトに移動すると、Webアプリケーション240のユーザ名プロンプタ(user name prompter)510が、ユーザのユーザ識別子は要求するが、ユーザのパスワード、または他の機密情報は要求しないWebページをブラウザ264に提供する。ユーザのカスタマイズ情報は、このページとともには、ブラウザ264に供給されない。ユーザは、ブラウザ264を使用して、ユーザ識別子をWebアプリケーション240に供給する。Webアプリケーション240のユーザ識別子プロンプタ510は、CGIなどの従来の技術を介して、ユーザ識別子を読み取り、暗号化されたパーシステント ファイルを制限する。
【0063】
ユーザ識別子プロンプタ512は、暗号化されたパーシステント ファイル、ならびに、オプションとして、ユーザのIPアドレスまたはMACアドレスをパーシステント ファイル バリデータ242に送り、バリデータ242は、パーシステント ファイルを検証し、この検証は、オプションとして、前述したとおり、IPアドレスもしくはMACアドレス、および/または証明書を検証することを含む。パーシステント ファイル バリデータ242は、パーシステント ファイルの残りの部分に対応する署名を検証し(例えば、署名を構築するのに使用されたのと同一のハッシュ アルゴリズムおよびハッシュ キーを使用して、パーシステント ファイルの残りの部分を再ハッシングし、そのハッシュ結果を署名と比較することにより)、パーシステント ファイルが、有効であることを示すか、またはパーシステント ファイルが有効でないことを示す(例えば、パーシステント ファイル バリデータ242が生成したハッシュ結果が、署名と一致しない場合、または、オプションとして、ユーザ識別子プロンプタ510から受け取られたIPアドレスまたはMACアドレスが、パーシステント ファイルの中に格納されているIPアドレスまたはMACアドレスと一致しない場合、そのようなIPアドレスが、静的であることが示される場合、あるいは証明書が、従来の技術を使用して適切に認証されることが可能でない場合)。パーシステント ファイル バリデータ242は、パーシステント ファイル バリデータ242が、署名を介してユーザを認証した場合(例えば、バリデータ242が生成したハッシュ結果が、署名と一致し、オプションとして、IPアドレスまたはMACアドレスが、一致し、かつ/または証明書が、認証された場合)、パーシステント ファイルからのユーザの識別子、ならびにパーシステント ファイルの中に格納されていることが可能な他の情報をユーザ識別子プロンプタ510に提供する。
【0064】
パーシステント ファイルが有効でないことをパーシステント ファイル バリデータ242が示した場合、ユーザ識別子プロンプタ510は、要求されたWebページを含め、Webサイトの一部またはすべてへのアクセスを拒否することができる。示さなかった場合、ユーザ識別子プロンプタ510は、パーシステント ファイル バリデータ242からユーザ識別子を受け取り、ユーザによって供給されたユーザ識別子を、パーシステント ファイル バリデータ242から受け取られたユーザ識別子と比較し、その2つのユーザ識別子が一致しなかった場合、ユーザ識別子プロンプタ510は、そのWebサイトの一部またはすべてへのアクセスを拒否することができる。
【0065】
それらのユーザ識別子が一致した、あるいは、パーシステント ファイルが有効であるという指示を受け取った後、マッチングが実行されなかった場合、ユーザ識別子プロンプタ510は、パスワード プロンプタ512にシグナルし、プロンプタ510が受け取ったユーザのユーザ識別子を提供する。シグナルされると、パスワード プロンプタ512は、ユーザ識別子、ならびにパスワードをユーザに求めるWebページを、前述したカスタマイズ情報プロバイダ244に提供する。カスタマイズ情報プロバイダ244は、ユーザ識別子を使用して、前述したカスタマイズ情報データベース244からカスタマイズ情報を要求し、受け取られたカスタマイズ情報を、直接に、セッション外で、あるいは前述した1つまたは複数のリンク、タグ、またはコードを介して、ブラウザ264に提供し、Webページは、パスワード、または他の機密情報を求める入力要求を含む。
【0066】
ユーザは、このようにして受け取られたカスタマイズ情報を使用して、機密情報(すなわち、パスワード)を要求しているWebサイトを認証して、そのカスタマイズ情報が、そのWebサイトから予期されるカスタマイズ情報に対応するとユーザが考えるかどうかに基づき、パスワードなどの機密情報を提供するか、またはそのような機密情報を提供しないことができる。ユーザがそのように考える場合、ユーザは、ブラウザ264を介して、パスワードを提供し、パスワード プロンプタ512が、CGIなどの従来の技術を使用して、そのパスワードを受け取り、そのパスワードを、前述したとおり受け取られたユーザ識別子に関する格納されたパスワードまたは口座データベース248と比較することなどにより、従来の技術を使用して、そのパスワード検証する。パスワードが一致した場合、パスワード プロンプタ512は、要求されたWebページを含め、Webサイトの残りの部分の一部またはすべてへのアクセスを許す。
【0067】
(ユーザは、代替のコンピュータシステムを、すなわち、ローミングを使用することができる)
一実施形態では、ユーザは、1つのクライアントコンピュータシステム261を使用して、最初に登録し、その後、異なるクライアントコンピュータシステム260を使用して、サーバ202を使用しようと試みることができる。図2Aは、クライアントコンピュータシステム260の諸要素262〜268と同様の、または同一の諸要素を含むクライアントコンピュータシステム261を示す。ユーザが、前述したとおり、クライアントコンピュータシステム261を使用して、最初に登録し、その後、前述したとおり、クライアントコンピュータシステム260を使用して、Webアプリケーション240から情報を要求しようと試みた場合、パーシステント ファイルは、前述したとおり、ユーザが登録した際に、クライアントコンピュータシステム261のファイル ストレージの中に格納されており、ファイル ストレージ266の中には存在しない。その結果、ユーザは、前述したとおり、ログインすることを許されないか、カスタマイズ情報を見ることを許されないか、またはその両方を許されない。
【0068】
そのような実施形態では、Webアプリケーション240は、ログインするのにユーザが使用しているクライアントコンピュータシステム260からのローミングを手配することを、ユーザが所望することを明らかにするようユーザに促す。これは、前述したとおり、ユーザが、ユーザのユーザ識別子を供給するのに使用するページ上のチェックボックスを介して実行されてもよく、あるいはWebアプリケーション240が、前述したとおり、使用するためのパーシステント ファイルを探し出すことができない場合に、自動的に実行されてもよい。ユーザまたはWebアプリケーション240が、そのように明らかにした場合、Webアプリケーション240は、ユーザを、登録マネージャ222によって提供されるWebページにリダイレクトする。
【0069】
登録マネージャ222は、本明細書で説明するとおり、ユーザが登録することを可能にする、または既に登録済みのユーザによって使用されているコンピュータシステム260からのローミングを許すWebページを提供する。ユーザは、本明細書で説明するとおり、登録しようと試みるか、またはユーザのユーザ識別子を提供し(またはユーザ識別子は、リダイレクト コマンドの一部として登録マネージャ222によって受け取られてもよい)、ローミングが所望されることを示すことができる(または、Webアプリケーション240によって最初に提供されるWebページ上に表示されていた登録チェックボックスおよびローミング チェックボックスによって示される、そのようなステータスが、登録マネージャ222によって受け取られてもよく、そのようなステータスを、Webアプリケーション240が、従来のCGI技術を介して受け取り、例えば、リダイレクト コマンドの中のパラメータを介して、登録マネージャ222に提供する)。
【0070】
登録マネージャ222が、ユーザ識別子および/またはパスワードをユーザに求める場合(Webアプリケーション240からユーザ識別子を受け取るのではなく)、登録マネージャ222は、入力要求を使用してWebページ上にカスタマイズ情報を提供すること、および/または1つのWebページは、ユーザ識別子を要求して、カスタマイズ情報を表示せず、第2のWebページは、ユーザのパスワードを要求して、カスタマイズ情報を表示する、2つのWebページに入力要求を分割することを含め、そのような情報を求めるための、本明細書で説明する諸技術のいずれかを使用する1つまたは複数のWebページを介して、ユーザに求める。登録マネージャ222が、Webアプリケーション240からパスワードを受け取る場合、一実施形態では、登録マネージャ222は、カスタマイズ情報プロバイダ244を介してパスワードをユーザに求めて、カスタマイズ情報を表示することが可能である。別の実施形態では、ユーザは、ユーザのパスワードを求められない。
【0071】
ローミングが所望される場合、一実施形態では、ユーザは、登録マネージャ222によって提供されるWebページを介して、以下のいずれかを示すことができる。すなわち、A)ユーザが、ローミングを行う出発点のコンピュータシステムは、そのユーザに「割り当て」られなければならない(例えば、サーバ202が、そのコンピュータシステムからのユーザを認証することができるように)、B)ユーザが、ローミングを行う出発点のコンピュータシステムは、ユーザによって示された、ある期間にわたって、そのユーザに割り当てられなければならない、またはC)ローミングが所望される出発点のコンピュータシステムは、そのセッションに関してだけ、ユーザに割り当てられなければならない。
【0072】
ローミングが所望されるケースでは、登録マネージャ222が、その指示、およびユーザ識別子(およびオプションとして、前述したとおり、ユーザのカスタマイズ情報が提供されることが可能なWebページから受け取られたパスワード)を受け取り、その指示、ならびに口座ストレージ248の中に格納されているユーザ識別子に関するパスワードに対応するパスワードに応答して、登録マネージャ222に対してユーザを認証する、ユーザによって使用されることが可能な代替のパスワードを生成する。一実施形態では、生成された代替のパスワードは、ユーザの通常のパスワードとは異なる。
【0073】
登録マネージャ222は、マネージャ222が生成する代替のパスワードを、電子メールアドレス、電話機、PDA、あるいは登録マネージャ222によって格納された口座レコードの中の、または口座ストレージ248の中の、そのユーザに関して格納されている識別子(例えば、電子メールアドレスまたは電話番号)を有する他のデバイスへの伝送などの、セッション外通信手段を介して、ユーザに提供する。セッション外識別子は、本明細書で説明する初期登録プロセス中に、システム管理者によって、またはユーザによって、前もって登録マネージャ222に提供されることが可能である。代替として、ユーザは、セッション外識別子、ならびに運転免許証番号のような検証されることが可能な情報などの、ユーザを認証するのに使用されることが可能な他の情報を提供することができ、これらを、登録マネージャ222は、前述したとおり、検証することができる。すべてのそのような情報は、暗号化通信マネージャ212によって扱われるSSL接続を介して受信されることが可能である。
【0074】
登録マネージャ222は、オプションとして、代替のパスワードが、セッション外手段を介して取り出されるように用意されていることをユーザに通知するWebページを提供する。登録マネージャ222は、これを、あるタイプのセッション外識別子、例えば、電子メールアドレスに関して行うが、他のタイプ、例えば、電話番号に関しては行わないことが可能である。ユーザが、代替のパスワードを取り出し、登録マネージャ222は、Webページを介して、マネージャ222が提供した代替のパスワードをユーザに求める。ユーザは、その代替のパスワードを供給し、登録マネージャ222は、そのパスワードを、例えば、従来のCGI技術を使用して受け取る。
【0075】
登録マネージャ222によって受け取られたパスワードが、マネージャ222が生成したパスワードと一致しない場合、またはそのようなパスワードが受け取られなかった場合、登録マネージャ222は、以下により詳細に説明するさらなるアクションを行わない。登録マネージャ222によって受け取られたパスワードが、そのユーザのためにマネージャ222が生成した代替のパスワードと一致した場合、登録マネージャ222は、ユーザによって使用されているコンピュータシステムが、そのユーザに割り当てられているべきことをユーザが示しているかどうかに依存して、2つのアクションのいずれかを実行する。
【0076】
ユーザによって使用されているコンピュータシステムが、そのユーザに無期限に割り当てられているべきことをユーザが示している場合、登録マネージャ222は、前述したとおり、パーシステント ファイル ビルダ230、パーシステント ファイル サイナ232、パーシステント ファイル インクリプタ234、および暗号化通信マネージャ212を介して、ユーザが、前述したとおり、登録した際にクライアント オリジナル コンピュータシステム261に提供されたパーシステント ファイルのコピーをブラウザ264に提供する。ブラウザ264は、前述したとおり、SSL接続を介して、そのパーシステント ファイルを受信し、そのファイルをファイル ストレージ266の中に格納する。本明細書で説明するとおり、本明細書で説明するパーシステント ファイルと同様の、または同一の情報を含むFlashローカル共有オブジェクトなどの、他のタイプのパーシステント ファイルが、例えば、登録マネージャ222によってブラウザ264に提供されるFlashムービーを介して、ファイル ストレージ266の中に格納されてもよい。登録マネージャ222は、再びログインするようにユーザに指示するか、またはユーザが、登録マネージャ222にリダイレクトされた元のログイン ページにユーザのブラウザ264をリダイレクトし、登録マネージャ222は、ユーザが、リダイレクトされた際にそのWebページのアドレスを格納しており、そのアドレスは、オプションとして、登録マネージャ222へのリダイレクトのパラメータとして提供されている。
【0077】
一実施形態では、前述したとおり、パーシステント ファイルを構築し、格納する前に、登録マネージャ222は、そのWebサイトに関してクライアントコンピュータシステム上に格納されている既存のパーシステント ファイルが存在すれば、そのファイルを読み取ろうと試みる。そのようなパーシステント ファイルが存在する場合、登録マネージャ222は、そのファイルをパーシステント ファイル ビルダ230に送り、ビルダ230は、ビルダ230が取り出した、そのパーシステント ファイルからの情報と、ローミング ユーザに関する情報とを含む複合パーシステント ファイルを生成し、そのパーシステント ファイルを、前述したとおり、クライアントコンピュータシステム260上に格納するために提供する。一実施形態では、そのような複合パーシステント ファイルを生成する際、登録マネージャ222は、取り出されたパーシステント ファイルから、オペレーティング システム(図示せず)から登録マネージャ222が要求する現在の日付と時刻に先立つ、失効の日付と時刻を有する情報を除去する。
【0078】
別の実施形態では、登録マネージャ222が、パーシステント ファイルを読み取り、そのパーシステント ファイル、または複合パーシステント ファイルを格納する代りに、登録マネージャ222は、パーシステント ファイルを生成するのに使用されることが可能な情報をWebアプリケーション240に送り(例えば、暗号化されることが可能な1つまたは複数のパラメータとして)、Webアプリケーション240は、パーシステント ファイルを読み取ろうと試み、その情報をパーシステント ファイル ビルダ230に送り、ビルダ230は、前述したとおり、パーシステント ファイルまたは複合パーシステント ファイルを構築し、そのファイルが、ファイル ストレージに格納されるようにすることを、登録マネージャ222が、前述したとおり、そのプロセスを開始するのではなく、行う。
【0079】
ユーザによって使用されているクライアントコンピュータシステム260が、そのユーザに無期限に割り当てられているべきことをユーザが示しておらず、ローミングが所望された出発点のコンピュータシステムが、そのセッションの間だけ、または限られた期間にわたってだけユーザに割り当てられているべきことをユーザが示していた場合、一実施形態では、登録マネージャ222は、情報をパーシステント ファイル ビルダ230に送り、ビルダ230が、それらの制限をパーシステント ファイルの中で符号化するか、または、以下により詳細に説明するとおり、それらの制限を口座データベース248の中に格納する。例えば、制限をパーシステント ファイルの中で符号化するのに、登録マネージャ222は、パーシステント ファイルの中で、「残りの使用回数」カウンタを1に設定する、またはオペレーティング システムから、現在の日付と時刻を取り出し、コンピュータシステム260が、限られた期間にわたってユーザに割り当てられているべきことを示すのにユーザが使用したWebページ上でユーザによって指定された期間を追加して、失効時刻をもたらし、その失効時刻をパーシステント ファイルの中に含める。登録マネージャ222は、前述したとおり、格納および使用のために、パーシステント ファイルをブラウザ264に送ることを開始する。
【0080】
前述したのと同様の形で、いずれのそのような制限されたパーシステント ファイルもコンピュータシステム260上に格納する前に、登録マネージャ222は、登録マネージャに対応するWebサイトに関する既存のパーシステント ファイルがあれば、そのファイルを読み取ろうと試み、クライアントコンピュータシステムが、前述したとおり、そのWebサイトに関する既存のパーシステント ファイルを含む場合、パーシステント ファイル ビルダ230、パーシステント ファイル サイナ232、パーシステント ファイル インクリプタ234、および暗号化通信マネージャ212が、複合パーシステント ファイルを構築し、クライアントコンピュータシステム260上に格納するようにさせることができる。やはり、前述したとおり、登録マネージャ222は、パーシステント ファイルに追加されるべき情報をWebアプリケーション240に提供することができ、アプリケーション240は、既存のパーシステント ファイルがあれば、そのファイルを読み取ろうと試み、パーシステント ファイルまたは複合パーシステント ファイルをクライアントコンピュータシステム260上に格納することを、登録マネージャ222が、それらの機能のすべてを実行するのではなく、行うことができる。
【0081】
Webアプリケーション240は、ユーザがログインしようと試みた際に、パーシステント ファイルに課せられた制限を実施する。例えば、Webアプリケーション240は、オペレーティング システム クロック(図示せず)から日付と時刻を取り出し、パーシステント ファイルが、失効の日付と時刻を有する場合、パーシステント ファイルの中のそのような失効の日付と時刻と比較する。システム クロックからの日付と時刻が、パーシステント ファイルの中の失効の日付と時刻より後である場合、Webアプリケーション240は、前述したとおり、ユーザがログインすることを許さない。
【0082】
1回限りの使用に関して、一実施形態では、ユーザがログインすると、Webアプリケーション240は、パーシステント ファイルに、1回限りの使用のためのマークが付けられている場合、パーシステント ファイルの署名または通し番号、またはその他の署名を、口座データベース248の中でユーザの口座番号を保持するレコードの中に格納する。ユーザ、または別の当事者が、ログインしようと試みた場合、Webアプリケーション240は、署名または通し番号を、そのユーザに関して格納されている署名または通し番号と比較して、パーシステント ファイルの中の署名が、そのユーザに関して格納されている署名の1つと一致する場合、ユーザがログインすることを許さない。一実施形態では、1回限りの使用として指定されているパーシステント ファイルは、パーシステント ファイルが生成された日付と時刻から1週間のような、既定の期間を使用して、パーシステント ファイルとともに格納されることが可能な失効の日付と時刻も有する。Webアプリケーション240はまず、前述したとおり、失効の日付と時刻を調べ、次に、前述したとおり、パーシステント ファイルが、それまでに使用されていないことを検証する。これにより、ユーザに関して格納されている署名が、既定の期間の後、口座データベース248からパージされることが可能になる。
【0083】
さらに別の諸実施形態では、クライアントコンピュータシステム260の使用に課せられた制限は、他の手段を使用して実施される。例えば、パーシステント ファイルの失効の日付と時刻、ならびに通し番号は、失効の日付と時刻をパーシステント ファイルの中に格納する代わりに、登録マネージャ222によって口座ストレージ248の中に格納されてもよい。そのような実施形態では、各ユーザのパーシステント ファイルには、そのユーザに固有の通し番号が割り当てられ、通し番号は、パーシステント ファイルの中に格納され、パーシステント ファイルの署名の一部としてハッシングされる。ユーザが、パーシステント ファイルを使用しようと試みた際、Webアプリケーション240は、パーシステント ファイル バリデータ242を介して、パーシステント ファイルから通し番号を取り出し、次に、口座ストレージ248の中で、パーシステント ファイルのユーザおよび通し番号に対応する失効の日付と時刻を調べ、システム クロックから現在の日付と時刻を取り出す。システム クロックからの現在の日付と時刻が、パーシステント ファイルに関する失効の日付と時刻より後である場合、または、そのユーザ、およびその通し番号に関してエントリが全く格納されていない場合、Webアプリケーション240は、ユーザが、ログインすることを許さず、またはそれ以外の形でパーシステント ファイルを無効として扱い、エントリが存在するが、現在の日付と時刻が、そのユーザ、およびその通し番号に関して格納されている失効の日付と時刻より後である場合、Webアプリケーション240は、そのユーザに関する、そのパーシステント ファイルに関する通し番号、および失効の日付と時刻を含むエントリを、口座データベース248から削除する。
【0084】
(キーストローク キャプチャの防止)
一実施形態では、コンピュータシステムにインストールされている可能性があり、ユーザがコントロールを有さない可能性があるコンピュータシステム上でローミングしているユーザのユーザ識別子およびパスワードを、侵入者が内密にキャプチャすることを許すキーストローク キャプチャ プログラムに対して防御するため、一実施形態では、登録マネージャ222が、前述したとおり、代替のパスワードをユーザに提供する際に、その代替のパスワードが、登録マネージャ222によって、口座データベースの中のユーザ識別子に対応するユーザ レコードの中に格納されることが可能である。ユーザは、前述したとおり、ローミングのためにパーシステント ファイルを使用する際に、ユーザの通常のパスワードの代わりに、そのパスワードを使用することができる。Webアプリケーション240は、前述したとおり、1回限りの使用、または限られた期間の使用のマークが付けられているパーシステント ファイルを検出した場合、ユーザの代替のパスワードをユーザに求め、ユーザの通常のパスワードを使用しないようにユーザに警告する。その場合、Webアプリケーションは、前述したとおり、ユーザによって供給されたパスワードを比較する際、ユーザの通常のパスワードの代わりに、口座データベース248の中に格納された代替のパスワードを使用する。
【0085】
さらに別の実施形態では、Webアプリケーション240は、ユーザが、ユーザ識別子を供給することによってログインしようと試みて、Webアプリケーション240が、コンピュータシステム260上で、失効していない、限られた期間のパーシステント ファイルを検出するたびに、前述したチャネル外の通信方法を介して、異なる代替のパスワードを供給する。Webアプリケーション240は、次に、チャネル外の通信方法からユーザのパスワードを取り出すようユーザに指示することにより、ユーザのパスワードをユーザに求め、ユーザの通常のパスワードを使用しないよう、ユーザにやはり警告する。Webアプリケーション240は、次に、ユーザが、その方法を使用してログインしようとした場合にはいつでも、ユーザによって供給されたパスワードを、その新たな代替のパスワードと照合する。
【0086】
一実施形態では、登録マネージャ222は、コンピュータシステム260に対するユーザの信頼に基づき、前述の諸方法のいずれか1つを選択するようユーザに促し、登録マネージャ222は、ユーザが選択した方法のタイプ、およびパーシステント ファイルの通し番号とともに、ユーザのレコードを口座ストレージ248の中に記録する。Webアプリケーション240は、次に、前述したパーシステント ファイルの通し番号を検出した場合にはいつでも、ユーザ識別子に対応する、口座ストレージ240の中のレコードに関する格納されたタイプに基づき、前述した方法を実行する。
【0087】
(カスタマイズ情報なしのローミング)
一実施形態では、ユーザが、クライアントコンピュータシステム261上で登録して、その後、格納されたパーシステント ファイルを有さない、異なるクライアントコンピュータシステム260を使用してログインしようと試みる際に、ユーザが、登録して、前述した様々なタイプのパーシステント ファイルの1つを受け取ることは、必要ない。
【0088】
例えば、所望される場合、ユーザは、全くパーシステント ファイルなしに、クライアントコンピュータシステム260を単に使用することができる。ユーザは、本明細書で説明するとおり、Webページ、またはその他の通信を見ることができるが、そのユーザのカスタマイズ情報が、そのような通信とともに表示されるのは見ない。以下により詳細に説明するとおり、通信をこのように見る際、パスワードが要求される場合、ユーザは、1回限りのパスワードなどの、代替のパスワードを獲得することができ、Webアプリケーション240が、代替のパスワードを比較して、ユーザの通常のパスワードが、前述したとおり、キーストローク ログ記録プログラムによって記録されるのを防止し、あるいはユーザは、ユーザの通常のパスワードを引き続き使用することができる。
【0089】
例えば、Webアプリケーション240が、パーシステント ファイルを検出することができない、またはアプリケーション240が検出するパーシステント ファイルが、ユーザ識別子と一致しない場合、単一のセッション中にそのようなユーザからのWebページを求める最初の要求に応答するのに、Webアプリケーション240は、カスタマイズ情報が、そのコンピュータシステム260から入手できないことをユーザに知らせるWebページを提供することができ、そのコンピュータシステムを登録せずに、そのコンピュータシステムを使用している間、そのWebサイトへのリンクは、辿られる、またはペーストされるのではなく、常にタイプ入力されなければならないことをユーザに警告し、ユーザが、前述したとおり、ローミングパーシステント ファイルを要求することを許す、登録マネージャ222へのリンク、ならびにユーザが、カスタマイズ情報を見ることなしに続けることを可能にするリンクを含む。ユーザが、登録マネージャ222へのリンクをクリックした場合、動作は、前述したとおり、継続し、前述したとおり、コンピュータシステム260が、登録されて、パーシステント ファイルを受け取ることを許す。
【0090】
ユーザが、カスタマイズ情報を見ることなしに続けることを選択した場合、Webアプリケーション240は、ユーザが、ユーザ識別子およびパスワードを使用して、ログインし、Webページを見ることを許す。しかし、Webアプリケーションは、そのWebページをカスタマイズ情報プロバイダ244に送る際、ユーザのカスタマイズ情報が示されてはならないこと(および、カスタマイズ情報プロバイダ244も、カスタマイズ情報サーバ238も、プロバイダ244およびサーバ238が、パーシステント ファイルを使用して、ユーザを認証しようと試みる諸実施形態では、そうしようと試みてはならないこと)を示す、ユーザの実際のユーザ識別子とは異なる特別なユーザ識別子を提供する。カスタマイズ情報プロバイダ244は、メッセージをWebページの中に含めることによるか、またはカスタマイズ情報サーバ238への参照を含む1つまたは複数のリンク、タグ、またはコンピュータコードを含めることにより、ユーザのカスタマイズ情報の代わりのメッセージを提供する。ユーザのカスタマイズ情報を明らかにする、含められるコードは、カスタマイズ情報プロバイダ244によって、データベース224の中の事前定義されたメッセージへのコードで置き換えられ、ユーザが、Webページの要求を行っているコンピュータシステム260は、登録されていないことをユーザに知らせ、そのWebサイトへのリンクを辿る、またはコピーすることをせず、代わりに、URLをブラウザに直接にタイプ入力することなどにより、そのようなコンピュータを使用する際に、より注意を払うように、そのユーザに催促する。ユーザのブラウザが、前述したとおり、1つまたは複数の要求をカスタマイズ情報サーバ238に送信する場合、カスタマイズ情報サーバ238は、各々のそのような要求に関して、ユーザのカスタマイズ情報の代わりに、そのメッセージを提供する。
【0091】
一実施形態では、そのようにパスワードを要求するページを表示する前に、Webアプリケーション240はまず、前述した警告を含む、さらなるWebページを、ユーザが、1回限りの使用のパスワードを得ることを可能にする登録マネージャ222へのリンクとともに提供してから、前述したとおり、ユーザのパスワードを提供するよう、ユーザに促して、ユーザが、メッセージを見ることを確実にすることができる。
【0092】
ユーザが、前述した登録マネージャへのリンクをクリックした場合、登録マネージャ222は、代替のパスワードを生成し、口座データベース248の中に格納し、口座データベース248の中で、そのユーザに関して格納されているユーザのチャネル外の識別子を介してユーザに提供する。登録マネージャ222は、次に、代替のパスワード、ならびに、ユーザが、ログイン シーケンスを完了するようにWebアプリケーション240に戻るリンクを取り出すよう、ユーザに指示する。Webアプリケーション240は、代替のパスワードを使用してユーザの認証を行い、ユーザによって提供されたパスワードが、格納されている代替のパスワードと一致した場合、Webアプリケーション240は、Webサイトへのアクセスを提供することを続け、前述したとおり、ユーザのカスタマイズ情報の代わりに、警告とともに一部のWebページ、またはすべてのWebページを表示することを続け、Webアプリケーションは、口座データベース248の中のユーザのレコードから、代替のパスワードを削除する。ユーザによって提供されたパスワードが、格納されている代替のパスワードと一致しない場合、Webアプリケーション240は、要求されたページを含め、Webサイトの一部、またはすべてへのアクセスを拒否する。
【0093】
(データベースは、一元化されることが可能である)
一実施形態では、データベース224は、サーバ202の中には存在せず、代わりに、1つまたは複数のサーバ202が、ネットワーク254を介してアクセスすることができ、それ以外では、データベース224として動作する、データベース224Aによって置き換えられる。各々のそのような複数のサーバが、サーバ202と同一のWebサイト、または異なるWebサイトを提供することが可能である。そのような実施形態では、複数のサーバ202が存在し、各サーバが、ユーザを登録して、前述したとおり、カスタマイズ情報を提供するが、データベース224の代わりに中央データベース224Aを共用するか、またはサーバ群202の一部だけが、ユーザを登録し、他のサーバは、ユーザが、そのような登録サーバに明らかにし、提供する、または前述したとおり、そのような登録サーバによって提供されるカスタマイズ情報を利用する。
【0094】
一実施形態では、各サーバ202は、ユーザの社会保障番号などの、ユーザ識別子に付加されるWebサイト番号またはサーバ番号などの、同一のユーザに関して、様々なサーバの間で固有である番号を使用して、データベース224Aの中のユーザのレコードにアクセスする。そのような実施形態では、複数のサーバ202がアクセスすることができるカスタマイズ情報プロバイダ244Aおよびカスタマイズ情報サーバ238Aが、カスタマイズ情報プロバイダ244およびカスタマイズ情報サーバ238の代わりに使用されることが可能であり、したがって、いずれのサーバ202も、ユーザのカスタマイズ情報にアクセスする必要がない。カスタマイズ情報プロバイダ244Aおよびカストマイズ情報サーバ238Aは、カスタマイズ情報プロバイダ244およびカスタマイズ情報サーバ238と同一の形で動作して、Webページとともにカスタマイズ情報をユーザに送信する。カスタマイズ情報サーバ238Aは、暗号化通信マネージャ212と同様の独自の暗号化能力を含むことが可能であり、したがって、カスタマイズ情報は、暗号化されたSSLセッションを介して送信されることが可能であり、データベース224A、カスタマイズ情報プロバイダ244A、およびカスタマイズ情報サーバ238Aのそれぞれが、通信インタフェース210と同様の、または同一の通信インタフェース(図示せず)を介してネットワークに結合されることが可能である。
【0095】
一実施形態では、データベース224A、またはカスタマイズ情報プロバイダ244A、またはカスタマイズ情報サーバ238A、およびWebアプリケーション240またはカスタマイズ情報プロバイダ244が、従来の認証技術を使用して、カスタマイズ情報を求める要求を認証するか、またはカスタマイズ情報を有するWebページを送信することを要求する。そのような認証技術は、パスワード、署名、デジタル証明書、または他の従来の技術を含むことが可能である。そのような要求は、暗号化通信マネージャ212を介して送信されることが可能であり、したがって、従来のSSL接続が、セキュリティを強化するのに使用されることが可能である。
【0096】
(電子メールメッセージは、カスタマイズ情報が表示されるようにして、ユーザが、電子メールメッセージを認証することができるようにすることができる)
図2Aのシステムを使用して、ユーザが、電子メールメッセージを認証することができるようにされることが可能である。一実施形態では、メッセージは、以下により詳細に説明するとおり、ユーザのカスタマイズ情報が、表示されるようにするHTMLコードを含むことが可能である。カスタマイズ情報は、電子メールメッセージの一部として、または電子メールメッセージとともに供給されたリンクを、ユーザが、ユーザのブラウザをクリックした際、もしくはユーザのブラウザの中にペーストした際、表示されることが可能である。前述したとおり、ユーザ識別子、パスワード、ならびにWebアプリケーション240によって格納されるものとして前述した、その他の口座情報が、口座データベース248の中に格納される。さらに、口座データベース248は、数百万も存在する可能性がある、システム200の各ユーザに関する電子メールアドレスを含む。電子メールアドレスは、例えば、本明細書で説明する登録プロセス中に、ユーザによって供給され、登録マネージャ222によって受け取られることが可能であり、マネージャ222は、そのアドレスを口座データベース248の中に格納し、あるいはシステム管理者が、任意の従来のデータ転送技術を使用して、ユーザの電子メールアドレスを口座データベース248の中に格納することができる。
【0097】
メッセージ マネージャ246は、複数のユーザの各ユーザ向けの情報を含むメッセージを準備し、各々のそのようなメッセージは、一般的な情報、ならびにそのユーザ向け、またはユーザのグループの中の各ユーザ向けに準備されたカスタム情報を含むことが可能である。メッセージは、電子メールメッセージの形態であっても、あるいは、メッセージの本文だけを含み、そのような本文が、カスタマイズ情報プロバイダ244によって、完成した電子メールメッセージの中に組み込まれてもよい。一実施形態では、メッセージは、HTML電子メールメッセージ、またはそのようなメッセージの本文として符号化される。メッセージ マネージャ264が、メッセージ、電子メールアドレスとしてメッセージが符号化されていない場合に、メッセージが送信されるべき電子メールアドレス、およびメッセージが送信されるユーザのユーザ識別子を、カスタマイズ情報プロバイダ244に送る。
【0098】
カスタマイズ情報プロバイダ244は、ユーザ識別子に関連するカスタマイズ情報を取り出し、その情報をメッセージに追加する。カスタマイズ情報プロバイダ244は、テキスト、リンク、または1つまたは複数のタグ(例えば、IMGタグ)、あるいは以上のいずれか、またはすべての形態で、カスタマイズ情報を提供することができ、リンク、または各々のそのようなタグが、カスタマイズ情報サーバ238に戻るようにつながったリンクを含み、カスタマイズ情報サーバ238が、オプションとして、暗号化通信マネージャ212を使用するセキュリティで保護されたセッションを介して、ユーザのカスタマイズ情報を提供するようにさせる(例えば、ユーザのカスタマイズ情報に関連して格納されているコードを使用して)。カスタマイズ情報プロバイダ244が、カスタマイズ情報が表示されるようにするFlash(商標、以下同)、Java(商標、以下同)、Javascript(商標、以下同)、またはその他のコンピュータコードをメッセージの中に含めてもよく、あるいはカスタマイズ情報サーバ238が、1つまたは複数のタグまたはリンクの各々からもたらされる要求に応答して、そのようなコンピュータコードを提供してもよい。
【0099】
リンク、または1つまたは複数のタグ、またはコンピュータコードが使用される場合、カスタマイズ情報プロバイダ244は、データベース224の中で、リンクに、または1つまたは複数のタグ、またはコードの中の各リンクに、ユーザを識別するのに使用されることが可能なコードを割り当てる。例えば、カスタマイズ情報プロバイダ244は、ユーザ識別子に固有である35文字の識別子を選択して、ユーザ識別子に関連付けられた、その35文字の識別子をデータベース224の中に格納し、また、その35文字の識別子をリンク、1つまたは複数のタグ、またはコードの中にも、例えば、ファイル名として、またはカスタマイズ情報サーバ238に対する参照(例えば、URL)の中のパラメータとして格納することができる。
【0100】
一実施形態では、カスタマイズ情報プロバイダ244は、プロバイダ244が受け取ったメッセージを電子メールメッセージに構築することを、プロバイダ244が受け取ったメッセージが、既にそのようなフォーマットになっていない場合、行う。メッセージをアドレス指定するのに、カスタマイズ情報プロバイダ244は、メッセージ マネージャ246によって供給された電子メールアドレスを使用するか、またはプロバイダ244が受け取ったユーザ識別子に対応するレコードの中の電子メールアドレスを、口座データベース248から取り出す。一実施形態では、メッセージは、登録プロセス中にユーザから受け取られ、登録マネージャ222によって口座データベース248の中に格納された設定に基づき、HTML電子メールまたはテキスト電子メールに構築される。
【0101】
カスタマイズ情報プロバイダ244は、その電子メールメッセージを通信インタフェース210に提供し、インタフェース210は、そのメッセージを、ネットワーク254を介して、そのメッセージの電子メールアドレスに対応する適切な電子メール サーバ(図示せず)に転送する。ユーザは、電子メール クライアント268を使用して、メッセージを取り出し、通信インタフェース262の入出力256を介してメッセージを見る。メッセージは、カスタマイズ情報をテキストとして、リンクとして、またはリンクを含む1つまたは複数のタグとして、あるいはコード(例えば、JavascriptまたはJava)、もしくは1つまたは複数のリンクを加えたコードとして含むことが可能である。電子メール クライアント268は、通信インタフェース262、210に送られた1つまたは複数の要求を介して、メッセージを表示し、任意のコードを動作させ、1つまたは複数のリンクによって指定されたカスタマイズ情報を取り出し、表示する(リンク、タグ、またはコードとして)ことができる。通信インタフェース210は、要求をカスタマイズ情報サーバ238に転送する。
【0102】
前述したとおり、要求は、ユーザの口座番号に対応するリンクからの符号化された情報(例えば、35文字の識別子)を含み、その情報を、カスタマイズ情報サーバ238は、データベース224から、そのユーザに関するカスタマイズ情報を取り出すのに使用する。カスタマイズ情報サーバ238は、次に、暗号化通信マネージャ212および通信インタフェース210、262を介して、カスタマイズ情報を電子メール クライアント268に送信する。電子メール クライアント268は、前述したとおり、メッセージとともにカスタマイズ情報を表示する。
【0103】
電子メール クライアントが、カスタマイズ情報を表示する場合、ユーザは、メッセージの中に含まれるリンクをクリックし、これにより、ブラウザ264が、既に実行されているのでない場合、起動させられ、前述したとおり、そのリンクに基づく要求を生成するようにさせられる。代替として、ユーザは、ブラウザ264の中にリンクをペーストし、ブラウザ264は、前述したとおり、そのリンクに基づく要求を生成し、その要求に応答して受け取られたカスタマイズ情報を表示する。
【0104】
すると、ユーザは、カスタマイズ情報を使用して、電子メールメッセージが真正であるかどうかを判定することができる。カスタマイズ情報が、ユーザによって予期されるカスタマイズ情報と一致した場合、ユーザは、そのメッセージの内容を信じる、またはそのメッセージが含むリンクをクリックするなどの、真正の電子メールメッセージに適切なアクションを行うことができる。カスタマイズ情報が、ユーザによって予期されるカスタマイズ情報と一致しない場合、ユーザは、メッセージを削除する、またはそのメッセージの内容を信じる、もしくはそのメッセージの中に含まれるリンクをクリックするのを控えるなどの、真正でないメッセージに適切なアクションを行うことができる。
【0105】
以下により詳細に説明する一実施形態では、メッセージ マネージャ246またはカスタマイズ情報プロバイダ244は、メッセージを複数部分のMIMEメッセージとして符号化し、カスタマイズ情報プロバイダ244は、メッセージのHTML符号化された部分に1つまたは複数のタグまたはコードを追加し、メッセージのテキスト符号化された交互部分に1つまたは複数のリンクを追加する。
【0106】
一実施形態では、カスタマイズ情報サーバ238は、要求を受け取る際、ファイル ストレージ266の中に格納されたパーシステント ファイルも受け取る。カスタマイズ情報サーバ238は、パーシステント ファイルを検証し(これを、サーバ238は、パーシステント ファイル バリデータ242を介して行う)、パーシステント ファイルの中のある情報を、データベース224または口座データベース248の中に格納された情報などの、他の情報と比較し、その比較の結果に基づき、カスタマイズ情報を提供するか、または提供しない。例えば、カスタマイズ情報サーバ238は、パーシステント ファイルの中の口座番号が、要求の中のコードが対応する口座番号と一致することを検証することができる。それらの口座番号が一致しない場合、カスタマイズ情報サーバ238は、前述したとおり、その要求に応答せず、それらの口座番号が一致した場合、カスタマイズ情報サーバ238は、前述したとおり、それらの要求に応答する。
【0107】
一実施形態では、カスタマイズ情報サーバ238が、前述したとおり、パーシステント ファイルを使用すべきかどうかについての標識が、データベース224または口座データベース248の中に格納される。カスタマイズ情報サーバ238は、サーバ238が、前述したとおり、パーシステント ファイルを使用すべきかどうかに関して、リンクの中の符号化された情報に対応する、データベース224または248の中のエントリを調べる。パーシステント ファイルが受け取られていないが、パーシステント ファイルが要求されることを標識が示す場合、カスタマイズ情報サーバ238は、カスタマイズ情報を提供しない。
【0108】
標識は、システム管理者によって、あるいは、ユーザの電子メール クライアントが、クッキーをサポートするタイプのものであるかどうかをユーザに尋ねることができる登録マネージャ222によって、データベース224または口座データベース248の中に入れられることが可能である。登録マネージャ222は、ユーザの電子メール クライアントが、クッキーの使用をサポートしていない場合でも、クッキーを、本明細書で説明するとおり使用するために、登録プロセスの一環として格納しようと試みることができる。
【0109】
別の実施形態では、標識は、前述したとおり、データベース224または口座データベース248の中で初期設定されるか、またはユーザが、登録する際に、パーシステント ファイルを要求しないように初期設定される。カスタマイズ情報サーバ238は、前述したとおり、電子メールに応答して生成された要求に応答して適切なパーシステント ファイルが受け取られると、パーシステント ファイルを要求するようにデータベース224またはデータベース248の中の標識を変更する。このようにして、ユーザが、登録の後にユーザの電子メール クライアント268をアップグレードした場合、それが、検出され、以降、要求される。
【0110】
(テキスト電子メールを認証すること)
前述したとおり、ユーザの電子メール クライアント268が、HTML電子メールをサポートしない場合に、リンクを使用して、ユーザが、ブラウザ264を使用してメッセージを認証することを可能にすることができる。そのような実施形態では、カスタマイズ情報プロバイダ244が、メッセージ マネージャ248からメッセージを受け取ると、カスタマイズ情報プロバイダ244は、前述した1つまたは複数のタグと、リンクをともに、メッセージの中に入れることができる。リンクは、Webページに対応することが可能であり、カスタマイズ情報サーバ238が、前述したとおり、カスタマイズ情報を識別することを可能にすることができる前述した符号化された情報も含むことが可能である。そのような実施形態では、ブラウザ264がメッセージを認証することをリンクが可能にするコードは、タグまたはコンピュータコードの中で使用されるのと同一のコードであっても、異なるコード(このコードを、カスタマイズ情報プロバイダ244は、前述したとおり、プロバイダ244が、メッセージ マネージャ248から受け取るユーザ識別子に関連付けられたデータベース224の中に格納する)であってもよく、リンクは、1つまたは複数のタグ、またはコンピュータコードの中で使用されるのと同一のリンクであっても、異なるリンクであってもよい。
【0111】
一実施形態では、メッセージ マネージャ246から受け取られるメッセージは、2つの部分の各々の中に2つの通信を含む。1つの部分は、HTML電子メールとして符号化された通信を含み、他方の部分は、テキスト電子メールとして符号化された同一の通信、または異なる通信を含む。カスタマイズ情報プロバイダ244は、1つまたは複数のタグを第1の部分に追加し、リンクを第2の部分に追加する。2つの部分は、次に、第1の部分が、HTML電子メールメッセージとして符号化され、第2の部分が、テキスト電子メールとして符号化された代替の符号化として使用されて、単一の電子メールメッセージとして伝送される。メッセージは、複数部分のMIMEメッセージとして符号化されても、任意の他の従来の電子メール符号化を使用してもよい。
【0112】
別の実施形態では、メッセージは、第2の部分だけを含み、前述した第1の部分は、含まない。メッセージ マネージャ246は、前述したとおり、登録時にユーザによって指定された、ユーザの電子メール クライアントが、HTML電子メールを扱うことができるかどうかを示す、各ユーザに関する口座データベース248の中のフィールドに応答して、メッセージの第2の部分だけを生成することができる。電子メール クライアント268が、HTML電子メールを扱うことができないことを、口座データベース248の中のユーザに関するフィールドが示す場合、メッセージ マネージャ244は、メッセージの第2の部分だけを生成し、前述したとおり、第1の部分を省く。カスタマイズ情報プロバイダ244は、そのようなメッセージの中でリンクは提供するが、1つまたは複数のタグは提供しない。
【0113】
ユーザが、メッセージを閲覧する際、ユーザの電子メール クライアント268は、両方の部分が提供される場合、1つの部分、または他方の部分を表示し、第2の部分だけが提供される場合、その部分を表示する。ユーザの電子メール クライアント268が、テキスト部分だけを表示する場合、またはテキスト部分だけが、メッセージの中で与えられている場合、リンクは、メッセージの残りの部分と一緒に表示される。ユーザは、リンクをクリックして、またはリンクをブラウザ264の中にペーストして、これにより、ユーザのブラウザ264が、起動して、リンクに対応する要求を生成するようにさせられる(または、ユーザが、ブラウザ264を起動し、リンクをブラウザの中にカットアンドペーストして、ブラウザが、要求を生成するようにさせる。
【0114】
ブラウザ264は、通信インタフェース262、210を介して要求を送信する。通信インタフェース210は、要求をカスタマイズ情報サーバ238に転送する。要求は、要求の中に含まれるリンクからの符号化された情報を有し、カスタマイズ情報サーバ238は、その符号化された情報を使用して、前述したとおり、データベース224の中でカスタマイズ情報を探し出す。カスタマイズ情報サーバ238は、要求に応答して、暗号化通信マネージャ212、および通信インタフェース210、262を介して、前述したとおり、ユーザのカスタマイズ情報を提供する。通信インタフェース262は、応答をブラウザ264に転送し、ブラウザ264が、カスタマイズ情報を表示する。一実施形態では、リンクの中の他の情報(そのような他の情報は、前述した1つまたは複数のタグの一部ではない)は、カスタマイズ情報サーバ238が、前述したとおり、サーバ238が受け取ったカスタマイズ情報を、他の情報を含むWebページの一部として含めて、タグまたはコンピュータコードの代わりにリンクが使用される場合に、よりすっきりしたユーザ インタフェースを提供するようにさせる。
【0115】
ユーザは、次に、要求に対する応答を使用して、元の電子メールメッセージが真正であったかどうかを判定することができる。カスタマイズ情報が、予期されるとおりに受け取られた場合、ユーザは、例えば、メッセージの中に含まれる情報、またはメッセージにリンクされた情報を信じることにより、またはメッセージの中に含まれるリンク、またはメッセージにリンクされたリンクをクリックすることにより、メッセージを真正であるものとして扱うことができる。カスタマイズ情報が、予期されるとおりに提供されない場合、ユーザは、例えば、メッセージの中に含まれる情報、またはメッセージにリンクされた情報を無視することにより、またはメッセージの中に含まれるリンク、またはメッセージにリンクされたリンクをクリックしないことにより、あるいはメッセージを破棄することにより、メッセージを真正でないものとして扱うことができる。
【0116】
(Flash)
一実施形態では、電子メールとともに提供されるコンピュータコードは、従来のFlash.swfムービー ファイル、または他の同様のコンピュータコードを含むことが可能である。コンピュータコードは、メッセージの残りの部分、カスタマイズ情報、またはその両方を表示することが可能である。そのような実施形態では、メッセージ マネージャ246によって生成されるメッセージは、ユーザの電子メール クライアント268またはブラウザ264によってユーザに表示されるべき、Flashムービー ファイル、またはFlashムービー ファイルへの参照(Javascriptコードを介して指定されることが可能なOBJECTタグまたはEMBEDタグを介するなどの)を、メッセージの残りの部分に加えて、またはメッセージの残りの部分の代わりに含むことが可能である。一実施形態では、コンピュータコードをメッセージの中に含めるのではなく、カスタマイズ情報プロバイダ244は、コンピュータコードに対する参照を提供し、この参照を、プロバイダ244は、データベース248の中に格納する。参照は、コンピュータコードが格納されているデータベース224の中のレコードを明らかにするコードをリンクが含む、従来のOBJECTタグまたはEMBEDタグであることが可能である。
【0117】
コードは、ユーザが、メッセージを読み取ろうと試みた際に、電子メール クライアント268によって、またはブラウザ264によって実行されることが可能である。コードは、一実施形態では、メッセージの中に含まれることが可能であるが、別の実施形態では、ユーザの電子メール クライアント268またはブラウザ264が、OBJECTタグまたはEMBEDタグの中で指定されたオブジェクトを要求すると、カスタマイズ情報サーバ238が、その要求に応答して、データベース224からコードを取り出すか、またはコード(例えば、カスタマイズ情報を含む.swfファイル)を構築し、そのコードを提供する。
【0118】
前述したとおり、他の諸実施形態では、.swfファイルは、カスタマイズ情報プロバイダ244が、前述したとおり、カスタマイズ情報をメッセージに追加する時点で、プロバイダ244が、メッセージ マネージャ246から受け取るユーザ識別子に関するカスタマイズ情報を使用して、プロバイダ244によって、または登録プロセス中にカスタマイズ情報が受け取られた後に、登録マネージャ222によって、要求に先立って生成され、データベース224の中に格納される。
【0119】
一実施形態では、パーシステント ファイルは、本明細書で説明するとおり、使用される。別の実施形態では、パーシステント ファイルの代わりに、またはパーシステント ファイルに加えて、.swfファイル自体が、パーシステント ファイルの中に符号化されている暗号化された情報を含むか、または登録マネージャ222が、パーシステント ファイル ビルダ230、パーシステント ファイル サイナ232、およびパーシステント ファイル インクリプタ234を介して、Flashローカル共有オブジェクトを構築し、暗号化通信マネージャ212によって提供されるSSL接続を介して、そのオブジェクトをファイル ストレージ266の中に、パーシステント ファイルとして格納するよう、ユーザのブラウザ264に命令する。クッキーをパーシステント ファイルとして使用する代わりに、Webアプリケーション240は、Flashムービーによって.swfファイルの中に符号化された情報を受け取るか、またはFlashムービーが、ファイル ストレージ266の中の格納されているFlashローカル共有オブジェクトから情報を取り出して、Webアプリケーション240に提供し、Webアプリケーション240が、その情報をパーシステント ファイル バリデータ242に提供し、バリデータ242が、前述したとおり、クッキーを処理するのと同一の形でその情報を処理する。他の諸要素は、クッキーの役割をする他のタイプのパーシステント ファイルを、同様の形で使用することができる。
【0120】
一実施形態では、前述したのと同様の形で、カスタマイズ情報が、Flashムービー、または他の同様のコードによってユーザに表示されるために提供される前に、ユーザがまず、ユーザ識別子を入力してもよく、あるいはFlashムービーが、Flashローカル共有オブジェクトから、ユーザ識別子とともに、ユーザ識別子のハッシュなどの他の情報、およびFlashローカル共有オブジェクトの中の他の情報を取り出すことによって、ユーザ対話なしに、ユーザ識別子を獲得してもよい。Flashムービーは、ユーザ識別子を受け取り、オプションとして、他の情報も受け取って、カスタマイズ情報を求める要求を、カスタマイズ情報サーバ238に送り、符号化された情報が、前述したとおり、カスタマイズ情報を識別し、そのような要求は、前述したとおり、カスタマイズ情報プロバイダ244によってFlashムービーに符号化されている。
【0121】
カスタマイズ情報サーバ238が、要求を受け取り、CGIなどの従来の技術を介して、Flashムービーから、Flashムービーがユーザから受け取ったユーザ識別子、およびFlashローカル共有オブジェクトからの情報を要求し、カスタマイズ情報サーバ238は、そのような情報を、その情報を検証して、ユーザ識別子を戻すようにパーシステント ファイル バリデータ242に送る。パーシステント ファイル バリデータ242は、ユーザ識別子を解読し、パーシステント ファイルに関連して本明細書で説明するのと同一の形で、IPアドレスまたはMACアドレス、および/または証明書を調べて、Flashローカル共有オブジェクトが有効でない場合、カスタマイズ情報サーバ238にシグナルし、それ以外の場合、ユーザ識別子、およびその他の情報を提供する。カスタマイズ情報サーバ238は、復号化されたユーザ識別子を、要求の中の符号化された情報(例えば、35文字のコード)に対応するユーザ識別子と比較する。
【0122】
ユーザ識別子が、前述したとおり、認証された場合、カスタマイズ情報サーバ238は、暗号化通信マネージャ212を介して、Flashムービーに組み込まれるべきテキスト、イメージ、またはムービー クリップを含むファイルの形態で、適切なカスタマイズ情報を提供する(ユーザ識別子が一致しない場合、カスタマイズ情報プロバイダ244が、誤りを示す、異なるテキスト、異なるイメージ、または異なるムービー クリップを提供してもよく、Flashムービーが、ユーザのユーザ識別子をユーザに再び求めてもよい)。Flashムービーは、受け取られたカスタマイズ情報を表示して、ユーザが、電子メールメッセージの送信側を認証することを可能にする。
【0123】
さらに別の実施形態では、電子メールメッセージの中でメッセージ マネージャ246および/またはカスタマイズ情報プロバイダ244によって提供される1つまたは複数のFlashムービーは、自己完結型であり、カスタマイズ情報を表示するのにカスタマイズ情報サーバ238の使用を要求しない。そのような実施形態では、カスタマイズ情報プロバイダ244は、以下に説明するとおり動作するFlashムービーを構築し、プロバイダ244が、メッセージ マネージャ246から受け取るメッセージを組み込むこと、またはそのメッセージに加えて提供されることが可能である。Flashムービーは、メッセージ マネージャ246によって、電子メール クライアント268またはブラウザ264によって表示されるように、電子メールメッセージの中で提供され、クライアント268とブラウザ264のいずれかは、カリフォルニア州サンフランシスコ所在のマクロメディア株式会社から市販されるFlash Player(商標、以下同)プラグインを実行している。
【0124】
次に、図10Aを参照すると、本発明の一実施形態による、電子メールメッセージおよびカスタマイズ情報を表示するのに使用されるFlashムービー、または他のデバイスの概略ブロック図が示されている。ユーザ識別子レシーバ1010が、オペレーティング システム(図示せず)を介してユーザのユーザ識別子をユーザに求める編集可能なテキスト要素を含むページを生成する。ユーザは、ユーザ識別子をオペレーティング システムに提供し、オペレーティング システムは、そのユーザ識別子をユーザ識別子レシーバ1010に提供する。ユーザ識別子レシーバ1010は、そのユーザ識別子をユーザ識別子コンパレータ1012に提供する。別の実施形態では、ユーザ識別子レシーバ1010は、ユーザに入力要求しない。代わりに、ユーザ識別子は、図2Aのカスタマイズ情報プロバイダ244によってユーザ識別子レシーバ1010の中に符号化され、ユーザ識別子レシーバ1010が、そのユーザ識別子をユーザ識別子コンパレータ1012に提供する。
【0125】
ユーザ識別子コンパレータ1012は、ユーザ識別子を受け取ると、共有オブジェクト デクリプタ(shared object decrypter)1014にシグナルする。シグナルされると、共有オブジェクト デクリプタ1014は、共有オブジェクト ストレージ1016からのローカル共有オブジェクトから、またはユーザ識別子を含むFlashムービーの部分から、暗号化されたユーザ識別子を取り出し、その暗号化されたユーザ識別子を解読し、その識別子の1つまたは複数の部分を再ハッシングして、結果を、その識別子の中に含まれる署名と比較することにより、その識別子を検証する。共有オブジェクト デクリプタ1014は、次に、Flashローカル共有オブジェクトが有効であった場合、解読されたユーザ識別子をユーザ識別子コンパレータ1012に提供し、Flashローカル共有オブジェクトが有効でなかった場合、ユーザ識別子プロンプタ1010にシグナルして、誤りを明らかにする。
【0126】
共有オブジェクト デクリプタ1014が、ユーザ識別子をユーザ識別子コンパレータ(user identifier comparator)1012に提供した場合、ユーザ識別子コンパレータ1012は、ユーザ識別子レシーバ1010から受け取られたユーザ識別子と、共有オブジェクト デクリプタ1014から受け取られたユーザ識別子とを比較する。それら2つのユーザ識別子が一致した場合、ユーザ識別子コンパレータ1012は、カスタマイズ情報デクリプタ1018にシグナルし、一致しなかった場合、ユーザに再入力要求するようにユーザ識別子レシーバにシグナルする。
【0127】
シグナルされると、カスタマイズ情報デクリプタ1018は、従来のメモリまたはディスク ストレージであることが可能なカスタマイズ情報/メッセージ ストレージ1020の中に格納された、カスタマイズ情報を取り出し、解読して、その情報をメッセージ/カスタマイズ情報ディスプレーヤ1022に提供する。メッセージ/カスタマイズ情報ディスプレーヤ1022は、解読されたカスタマイズ情報を受け取り、その情報、ならびに前述したとおり、ユーザによって使用されるためのオペレーティング システム(図示せず)を介するメッセージを表示する。
【0128】
(ユーザおよび支払い機構の認証)
一実施形態では、ユーザは、1つまたは複数の支払いを許可する目的で、前述したとおり、ユーザが登録したカスタマイズ情報を使用して、Webサイトを認証することができ、ユーザは、パーシステント ファイルを使用して、Webサイト、またはその他のコンピュータシステムに対して認証されることが可能である。
【0129】
次に、図2Bを参照すると、本発明の別の実施形態による、支払い、あるいはクレジットカードのような支払い手段が関わる他の取引を許可する目的で、ユーザが、コンピュータシステムを認証することを可能にするためのシステム、ならびにユーザを認証する同一のコンピュータシステム、または異なるコンピュータシステムが、示されている。図2Bのシステム270は、いくつかの要素が、以下に説明するとおり、追加されていること以外は、図2Aのシステム200と同一の形で動作する。サーバ272は、Webアプリケーション240が、支払いアプリケーション274によって置き換えられていること以外は、サーバ202と同一であり、アプリケーション274は、本明細書で説明する特徴および動作に加え、Webアプリケーション240の諸機能の一部、またはすべてを有して、アプリケーション240と同様の形で動作することが可能である。サーバ272は、図2Aの1つまたは複数のサーバ202も含むシステムにおいて使用されることが可能である。
【0130】
ユーザは、商人Webアプリケーション274を使用して取引を開始することが可能である。商人Webアプリケーションは、ユーザが、商品をブラウズし、商品をショッピング カートに追加し、または1つまたは複数の品物またはサービスに関する購入または使用許諾またはレンタルの受諾を別の形で示し、その取引の代金を支払うことをユーザが所望することを示すのに使用することができるオンライン ショッピングWebサイトを運用するための、従来のアプリケーション プログラムを含む。商人Webアプリケーション274は、次に、銀行クレジットカード、デビットカード、当座預金口座などの、金融機関の口座に料金請求されるべき合計金額を計算する。
【0131】
商人Webアプリケーション274は、次に、具体的には支払いアプリケーション276に対応し、より広くは、サーバ272に対応するWebアドレスまたはURLを含むリダイレクト コマンドなどの、リダイレクト コマンドをブラウザ264に提供する。一実施形態では、同一のサーバ272上、または異なるサーバ272上に、異なる支払いアプリケーション276が存在して、各々のそのような支払いアプリケーション276が、特定のタイプの支払い手段(例えば、MASTERCARD(商標、以下同)、DISCOVER(商標、以下同)、PAYPAL(商標、以下同)、その他)を処理することが可能である。別の実施形態では、同一の支払いアプリケーション276が、様々なタイプの支払い手段に関する支払いを処理して、各タイプの支払い手段は、異なるWebアドレスもしくはURL、またはアドレスもしくはURLの中のパラメータに対応する。以上の実施形態のいずれにおいても、Web商人アプリケーション274は、Web商人アプリケーション274によって提供されるWebページ上でユーザによって行われた、使用する支払い手段のタイプの選択に基づき、適切なURLまたはアドレスを構築する。さらに別の実施形態では、単一の支払いアプリケーション276が、すべてのタイプの支払い手段に関して使用され、支払いアプリケーション276は、ユーザが、支払い手段のタイプを選択することを可能にするWebページを提供するか、またはそのユーザに関する、あらかじめ格納されたタイプの支払い手段を使用する。
【0132】
Web商人アプリケーション274は、リダイレクト コマンドにおいて使用されるWebアドレスまたはURLに対するいくつかのパラメータを、リダイレクト コマンドの中に組み込む。それらのパラメータは、支払いアプリケーション276に対して商人を一意に識別する商人識別子、商人アプリケーション274に対して取引を一意に識別する取引識別子、および支払い手段に料金請求が行われる取引の金額に対応することが可能である。一実施形態では、Web商人アプリケーション274は、それらのパラメータをハッシングして、ハッシュ結果を署名として、リダイレクト コマンドのURLの中に含めることも行う。
【0133】
ブラウザ264は、本明細書で説明するとおり、リダイレクト コマンドで指定され、パラメータを含むURLまたはアドレスに対する要求を、ネットワーク254および通信インタフェース262を介して通信インタフェース210に送信することにより、リダイレクト コマンドを受け取り、実行する。通信インタフェース210は、その要求を受け取り、その要求を支払いアプリケーション276に転送する。複数の支払いアプリケーション276が、同一のサーバ272上に存在する諸実施形態では、通信インタフェース210は、その要求に対応する支払いアプリケーションに要求を送る。
【0134】
支払いアプリケーション276は、以下に述べる点を除き、前述したWebアプリケーション240の一部またはすべてと同様の形で動作する従来のWebアプリケーション プログラムである。支払いアプリケーション276は、要求からのパラメータを内部に格納し、それらのパラメータを再ハッシングして、結果を、要求とともに受け取られた署名と比較することにより、それらのパラメータを検証する。パラメータが、有効である場合、支払いアプリケーション276は、アプリケーション276が、口座データベース248の中に格納する商人識別子のセット、および口座番号に照らして、商人識別子を検証する。支払いアプリケーション276は、次に、図2AのWebアプリケーション240に関して説明したとおり、前述したユーザを認証するための形のいずれかで、ユーザを認証する。(それらの検証または認証のいずれかが不合格であった場合、支払いアプリケーション276は、エラー コードおよびトランザクション識別子、ならびに商人Webアプリケーション274に対応するURLを含むリダイレクト コマンドを、誤り処理のためにブラウザ264に与える。)
【0135】
一実施形態では、ユーザを認証するのに、支払いアプリケーション276は、パーシステント ファイルをパーシステント ファイル バリデータ242に提供し、バリデータ242は、前述したとおり、パーシステント ファイルを解読し、パーシステント ファイルを検証して、ユーザ識別子を支払いアプリケーション276に提供する。支払いアプリケーション276は、ユーザのユーザ識別子およびパスワードを入力するようユーザに要求する、1つまたは複数のWebページを提供する。ユーザ識別子およびパスワードを要求する、その1つまたは複数のWebページの少なくとも1つは、図2AのWebアプリケーション240に関連して前述した形で、通信インタフェース210を介して提供されることが可能であり、オプションとして、カスタマイズ情報プロバイダ244を介して提供されることが可能である。簡単に述べると、それらの形の1つの場合、支払いアプリケーション276は、ユーザ識別子を要求するWebページを、通信インタフェース210を介してブラウザ264に提供し、ユーザ識別子、およびパーシステント ファイルからの情報を受け取り、そのユーザ識別子を、パーシステント ファイルの中のユーザ識別子と比較し、それらのユーザ識別子が、同一であった場合、そのユーザ識別子と、パスワードを要求する別のWebページとを、前述したとおり処理するために、カスタマイズ情報プロバイダ244に送る。別の形では、支払いアプリケーション276は、パーシステント ファイルからのユーザ識別子と、パスワードとユーザ識別子をともに要求するWebページとを送る。カスタマイズ情報プロバイダ244は、プロバイダ244が受け取るあらゆるWebページに、直接にか、あるいはカスタマイズ情報サーバ238に関係し、ユーザのカスタマイズ情報を識別するコードを含む1つまたは複数のタグまたはリンク、またはコンピュータコードを介して、カスタマイズ情報を追加し、もたらされる1つまたは複数のWebページを、オプションとして、暗号化通信マネージャ212を介して、ブラウザ264に提供する。ブラウザ264は、前述したとおり、それらのWebページおよびカスタマイズ情報を表示して、提供されたカスタマイズ情報が、前述したとおり、カスタマイズ情報のユーザの予期と一致したかどうかに基づき、ユーザが、Webサイトの認証を行い、ユーザ識別子、パスワード、またはその両方を提供するかどうかを決めることができるようにする。
【0136】
一実施形態では、支払いアプリケーション276によって最初に生成されたWebページのいずれか、またはすべては、請求金額の表示、ならびに、ユーザが、ユーザ識別子、パスワード、またはその両方を提供しているという指示を含んで、示された支払い金額を許可し、あるいは、そのような指示、および許可を示すための手段は、さらに別のWebページ上で提供されてもよい。また、一実施形態では、支払いアプリケーション276は、そのユーザ識別子に関する口座データベース248の中に格納されている金融手段情報(例えば、クレジットカード番号の最後の4つの数字、ならびにVISA(商標、以下同)またはDISCOVER(商標、以下同)などの、カードのタイプ)の一部またはすべても、許可が指示されていることを示す、そのようなWebページのいずれかのWebページ、またはすべてのWebページ上で表示する。ユーザに関して格納されている複数の金融手段が存在する場合、既定の金融手段が使用されることが可能であり、取引のために使用されるべき様々な金融手段のなかから、ユーザが選択を行うことを可能にするWebページを、支払いアプリケーション276が生成するようにさせる、示されることが可能なオプションをともない、支払いアプリケーションは、選択された金融手段を内部で格納する。金融手段情報は、システム管理者によってデータベース248の中に格納されること、または前述したのと同様に、登録プロセス中にユーザによって入力されることが可能である。
【0137】
支払いアプリケーション276は、パスワードを受け取り、そのパスワードが、データベース248の中の、前述したとおりユーザに対応するパスワードと一致することを検証する。検査の結果が、肯定的であった場合、支払いアプリケーション276は、A)商人識別子に対応する、口座データベース248の中に格納された口座情報を使用して、受け取られた金額を金融手段に料金請求して、取引が許可されたことを示す許可識別子を生成するか、または受け取り、ブラウザ264が、要求を商人Webアプリケーション274に伝送するようにさせるリダイレクト コマンドをブラウザ264に与えるか、またはB)その金額を料金請求する許可を要求し、許可識別子を発行するか、または受け取り、オプションとして、取引金額、許可番号、および商人識別子を口座データベース248の中に格納し、次いで、ブラウザ264を商人Webアプリケーション274にリダイレクトする。リダイレクト コマンドは、取引番号、許可番号、ならびに、オプションとして、取引が成功したか、または失敗したかの指示を、以上の項目の一部またはすべてをハッシングすることによって生成された、以上の項目の署名とともに含むパラメータを含む。商人Webアプリケーション274は、それらのパラメータを格納し、署名を再生成し、その署名を、パラメータとして受け取られた署名と比較する。それらの署名が一致しない場合、商人Webアプリケーション274は、注文を処理することを続けず、一致した場合は、以下に説明するとおり、処理することを続ける。
【0138】
料金請求が、支払いアプリケーション276によって行われない場合(例えば、そのような料金請求の許可だけが、前述したとおり、獲得される)、料金請求は、許可識別子を、ネットワーク254に接続されていることが可能な支払いアプリケーション276に、または金融機関に、精算所、あるいは別のエンティティに、別のセッションを介して提供して、商人Webアプリケーション274によって、その時点で、または後の時点で行われることが可能である。商人Webアプリケーション274は、次に、ユーザへの品物またはサービスの提供を開始することができ(格納されている、またはユーザによって入力された名前およびアドレスを介して)、取引が完了したことを示すWebページをブラウザ264に提供することができ、電子メール クライアント268に同様の情報の電子メールを提供することができる。
【0139】
(信頼されるコンピューティング、およびユーザのバイオメトリック認証)
ユーザを認証するのにパーシステント ファイルを使用する必要はない。一実施形態では、ユーザを認証するのにクッキー、Flashローカル オブジェクト、または他のタイプのパーシステント ファイル、またはパーシステント ファイルの内容、および/またはユーザ識別子、パスワード、またはその両方を使用する、前述したエンティティのいずれも、他の手段を使用してユーザを認証することができ、そのような他の手段は、登録マネージャ222に関連して実行されることが可能である。例えば、バイオメトリック認証、または物理的トークン認証が、信頼されるコンピューティング、または他の同様な能力を介して使用されてもよい。
【0140】
次に、図2Aおよび図2Bを参照すると、一実施形態では、登録マネージャ222が、前述したとおり、ユーザを登録する際、パーシステント ファイルをユーザのコンピュータシステム上に置く代わりに、登録マネージャ222は、信頼されるコンピューティング サブシステム265を認証して、信頼されるコンピューティング サブシステム265から、信頼されるコンピューティング サブシステム265が、ユーザを認証している場合に、サブシステム265が提供することができる、信頼されるコンピューティング識別子を要求する。信頼されるコンピューティング サブシステム265が、存在しない、または応答しない、または検証されることが不可能である場合、登録マネージャ222は、前述したとおり、パーシステント ファイルを格納し、システム200または270の動作は、前述したとおりに進められる。一実施形態では、信頼されるコンピューティング サブシステム270が、存在していると応答するが、ユーザが、サブシステム270に対して、ユーザ自身の認証をまだ行っていない可能性がある。そのような実施形態では、登録マネージャ222は、信頼されるコンピューティング サブシステム265を使用して、ユーザ自身の認証を行うよう、ユーザに促すが、またはそのような入力要求を提供するように信頼されるコンピューティング サブシステム265に指示し、信頼されるコンピューティング サブシステム265が、それに応じる。
【0141】
信頼されるコンピューティング サブシステム265は、従来の技術を使用して、自らの認証を行うことができ、ユーザが使用して、ユーザ自身の認証を行うことができるハードウェアとソフトウェアから成ることが可能である。ユーザは、例えば、一意に番号が付けられたトークンを、通信インタフェース260のUSBポート261に挿入すること、またはユーザの指を、指紋リーダ263上に、またはUSBポート261を介して接続された声紋アナライザ、虹彩スキャナなどの、他のバイオメトリック情報リーダに置いて、信頼されるコンピューティング サブシステム265が、サブシステム265上に置かれた指紋を読み取ることを可能にすることにより、信頼されるコンピューティング サブシステム265に登録し、これは、より高い精度のために何回も繰り返されることが可能なプロセスである。
【0142】
ユーザが登録すると、信頼されるコンピューティング サブシステム265に対してユーザ自身の認証を行うのに、ユーザは、ユーザの一意に番号が付けられたトークンをUSBポート261に挿入すること、またはユーザの指を指紋リーダ263上に置くこと、またはそれ以外の形で、ユーザ自身を信頼されるコンピューティング サブシステム265に対して認証することができる。
【0143】
ユーザが、ユーザ自身の認証を行うと、信頼されるコンピューティング サブシステム265は、例えば、従来の公開キー証明書を使用して、サブシステム265の有効性の証拠を登録マネージャ222に提供し、信頼されるコンピューティング サブシステム265に固有であり、オプションとして、そのユーザにも固有である、信頼されるコンピューティング識別子を登録マネージャ222に提供する。登録マネージャ222は、従来の手段を使用して、デジタル証明書を調べ、信頼されるコンピューティング サブシステム265が、有効な証明書を有するとマネージャ222が判定した場合(本明細書で、信頼されるコンピューティング ファシリティ(computing facility)の認証または検証と呼ばれるプロセス)、登録マネージャ222は、信頼されるコンピューティング サブシステム265からマネージャ222が受け取った信頼されるコンピューティング識別子を、データベース224または口座データベース248の中に格納する。
【0144】
カスタマイズ情報プロバイダ244またはカスタマイズ情報サーバ238などのエンティティが、前述したとおり、カスタマイズ情報を提供する際、メッセージ マネージャ246などの、そうするようにそのエンティティに指示したエンティティは、信頼されるコンピューティング サブシステム265が、サブシステム265の真正性の証拠を提供し、カスタマイズ情報プロバイダ244またはカスタマイズ情報サーバ238が、公開キー証明書が関わる技術のような、従来の技術を使用して、そのような証拠を認証した場合、ユーザが、認証されていることを示す識別子を信頼されるコンピューティング サブシステム265から要求し、その識別子をカスタマイズ情報プロバイダ244またはカスタマイズ情報サーバ238に提供して、プロバイダ244またはサーバ238が、その識別子を、前述したとおり、プロバイダ244またはサーバ238が受け取ったユーザ識別子を有するユーザに関する、データベースの中の信頼されるコンピューティング識別子と比較する。受け取られた信頼されるコンピューティング識別子が、格納されている信頼されるコンピューティング識別子と一致した場合、カスタマイズ情報プロバイダ244またはカスタマイズ情報サーバ238は、前述したとおり、カスタマイズ情報を提供し、一致しなかった場合は、提供しない。他の諸実施形態では、カスタマイズ情報プロバイダ244またはカスタマイズ情報サーバ238自体が、信頼されるコンピューティング サブシステム265を認証し、信頼されるコンピューティング サブシステム265から信頼されるコンピューティング識別子を取り出し、その識別子を、口座データベース248の中でユーザ識別子に関して格納されている信頼されるコンピューティング識別子と比較し、そのような識別子は、ユーザが登録した際に、登録マネージャ222によって、そこに格納されている。信頼されるコンピューティング識別子が、ユーザに関して格納されている信頼されるコンピューティング識別子と一致しなかった場合、または信頼されるコンピューティング サブシステム265が、有効ではない場合、カスタマイズ情報プロバイダ244またはカスタマイズ情報サーバ238は、カスタマイズ情報の代わりに、エラー メッセージを提供する。
【0145】
さらに別の実施形態では、カスタマイズ情報を提供するようカスタマイズ情報プロバイダ244またはカスタマイズ情報サーバ238に要求するエンティティは、信頼されるコンピューティング サブシステム265を検証し、サブシステム265から信頼されるコンピューティング識別子を要求し、信頼されるコンピューティング識別子を受け取り、比較し、口座データベース248の中に格納されている識別子との比較を実行し、信頼されるコンピューティング サブシステム265が、真正であり、受け取られた信頼されるコンピューティング識別子が、口座データベース248の中でユーザに関して格納されている信頼されるコンピューティング識別子と一致すると判定された場合にだけ、そのような要求を行い、そのような信頼されるコンピューティング識別子は、登録プロセス中に、登録マネージャ222によって、口座データベース248の中でユーザの口座レコードの中に格納されている。この実施形態では、信頼されるコンピューティング識別子は、ユーザによって供給されるユーザ識別子、パスワード、またはその両方の代わりに使用されてもよく、あるいは、ユーザ識別子、パスワード、またはその両方に加えて使用されてもよい。
【0146】
前述したとおり、信頼されるコンピューティング識別子を取り出す試みが行われる際、信頼されるコンピューティング サブシステム265が、インストールされているが、ユーザが、ユーザ自身の認証を行っていないことをサブシステム265が示す場合、信頼されるコンピューティング識別子を要求するエンティティは、信頼されるコンピューティング サブシステムに対してユーザ自身の認証を行うようにユーザに指示するよう、信頼されるコンピューティング サブシステム265に指示するか、またはそのエンティティが、そうするようユーザに促す。全く応答が受け取られない場合、または信頼されるコンピューティング サブシステム265が、クライアント システム260上に全く存在しないことを示す応答が、受け取られた場合、要求を行うエンティティは、パーシステント ファイルを取り出そうと試み、前述したとおり、パーシステント ファイルを使用する。
【0147】
一実施形態では、ローミングは、信頼されるコンピューティング サブシステム265の少なくとも一部分を、1つのクライアントコンピュータシステム260から別のクライアントコンピュータシステム261に移動することによって実行され、したがって、パーシステント ファイルを、ローミング ユーザによって使用されているクライアントコンピュータシステム260にインストールすることは、必要ない。さらに別の実施形態では、ローミング プロセスは、ローミングのために使用される、前述した、さらなる信頼されるコンピューティング識別子を取り出し、ユーザの識別子に関連付けられて、データベース224または口座データベース248の中に格納することができる登録プロセスを使用し、信頼されるコンピューティング識別子は、前述したとおり、そのようなデータベースの中で、各パーシステント ファイルが、1回限りの使用向けである、または限られた期間の使用向けであると指定されると説明されたのと同じ形で、そのようなデータベースの中で、登録マネージャ222によって、そのように指定されることが可能である。そのような制限の実施は、前述したパーシステント ファイルの制限の実施と同一の形で作用する。
【0148】
(方法)
次に、図3Aを参照すると、本発明の一実施形態による、ユーザを登録して、ユーザが、コンピュータシステムからの通信を認証すること、コンピュータシステムが、ユーザを認証すること、またはその両方を可能にする方法を示す流れ図が、示されている。
【0149】
ユーザの身元の証拠が、前述したとおり、生成され、提供されることが可能である(310)。工程310で提供された証拠は、一実施形態では、前述したとおり、インターネットを介して、またはセッション外で(例えば、電子メール、電話機、または異なるセッションを介して)提供されることが可能であり、別の実施形態では、工程310は、省かれることが可能である。ユーザに対するセキュリティで保護された通信が、オプションとして、確立される(312)。ユーザの身元の十分な証拠が、要求され、ユーザの身元の証拠が、受け取られる(314)。証拠が十分でなかった場合(316)、図3Aの残りの工程の一部またはすべてへのアクセスは、拒否され(318)、方法は、工程314に進み、十分であった場合(316)、方法は、工程320に進む。
【0150】
工程320で、ユーザは、前述したとおり、カスタマイズ情報を選択する、または提供するように促され、カスタマイズ情報が、受け取られる。工程320は、工程312で確立されたSSL暗号化インターネット接続などの、セキュリティで保護された通信チャネルを介して実行されることが可能である。一実施形態では、工程320は、ユーザが、入力要求への応答を介して、使用されているインターネット接続が、T1、DSL,またはケーブル モデムのように、静的であることを示している場合、オプションとして、イーサネット カードのMACアドレス、または受信されたメッセージの送信元IPアドレスなどの、ユーザのコンピュータシステムの物理的識別子を獲得することを含む。カスタマイズ情報は、ユーザによって提供された内容、またはユーザの識別子に関連付けられる、サーバによって供給された1つまたは複数の内容の指示を含むことが可能である。カスタマイズ情報は、ユーザによって供給され、工程314で受け取られた証拠から探される、または工程322の一環として生成されることが可能な、ユーザの識別子とともに格納される322。一実施形態では、工程322は、ユーザ識別子に関連するコンピュータシステムの物理的識別子を格納することを含む。
【0151】
Flashローカル共有オブジェクトなどの、1つのセッションから別のセッションまでユーザのマシン上の状態を保存することができるパーシステント ファイル、または他の同様のデバイスが、ユーザ識別子、ならびにオプションとして、前述したコンピュータシステムの物理的識別子および/または証明書を使用して構築され324、パーシステント ファイルが、署名され326、暗号化され328、ユーザのシステム320上に格納されて、方法は、工程310に進む。クッキーが、パーシステント ファイルとして使用されることが可能であるが、Flashローカル共有オブジェクト、または他のファイルなどの、任意の他の同様のデバイスが、パーシステント ファイルとして使用されてもよい。
【0152】
次に、図3Bを参照すると、本発明の一実施形態による、ユーザの身元の証拠を提供し、受け取る方法を示す流れ図が、示されている。図3Bの工程が、例えば、図3Aの工程310〜318の一部またはすべての代わりに使用されることが可能である。
【0153】
ユーザは、ユーザ識別子や運転免許証番号などの、ユーザが、身元として示すとおりの人であることを検証するのに使用される情報を提供するよう、促される。ユーザによって提供されるそのような情報が、受け取られる(342)。例えば、ユーザ識別子を使用して、ユーザの名前、および在住の州を調べ、そのユーザの名前、および運転免許証番号を、ユーザの在住する州の車両管理局に送って、提供された運転免許証番号が、提供されたユーザ識別子に対応する名前と一致することを検証することにより、ユーザによって提供された情報を検証する試みが、行われることが可能である(344)。ユーザの情報の検証が、その検証を実行するのと同一の関係者から、または第三者から生成される、または受け取られる可能性も、提供された情報が一致することの否定が、同一の関係者、または第三者から生成される、または受け取られる可能性もある。受け取られるものが、ユーザによって提供された情報の様々な部分が、互いに一致したという検証であった場合(348)、方法は、工程350に進み、そうではなかった場合(348)、方法は、工程360に進む。
【0154】
工程350で、ユーザは、電話番号、電子メール、またはその他のセッション外通信識別子などの、セッション外識別子を求められることが可能であり、そのような識別子が受け取られるが(352)、別の実施形態では、そのような識別子は、工程340〜342の一環として求められ、受け取られ、さらに別の実施形態では、そのような入力要求は、全く使用されず、つまり、セッション外識別子が、工程352におけるユーザ識別子に対応する、データベースの中のレコードから取り出される。パスワードは、受け取られたセッション外識別子を使用して生成されて、提供され(354)、ユーザは、セッションを使用して、そのパスワードを入力するように促され、パスワードが、受け取られることが可能である(356)。
【0155】
工程354で生成されたパスワードが、工程356で受け取られたパスワードと一致しない場合、または工程356で、ある期間内に、パスワードが全く受け取られない場合(358)、ユーザは、本明細書で説明するとおり、カスタマイズ情報を登録することを許されず(360)、それ以外の場合(358)、ユーザは、本明細書で説明するとおり、カスタマイズ情報を登録することを許される(362)。工程362は、新たなパスワードを提供するようユーザに要求することを含むことが可能であり、そのようなパスワード、または提供されたパスワードは、前述したとおり、ユーザ識別子に関連付けられて格納されることが可能である。
【0156】
工程350〜358で、セッション外通信ブランチを使用することは必要ない。一実施形態では、工程342で受け取られたユーザ情報により、ユーザの身元が検証された場合(348)、方法は、図に破線で示されるとおり、工程362に進む。さらに別の実施形態では、セッション外識別子は、既知であり、その識別子を使用して、ユーザを認証することが可能であり、したがって、方法は、一実施形態では、工程354で始まり、あるいは工程354が、工程342の後に続き、工程340および342の検証可能な情報は、ユーザ識別子だけ、またはユーザ識別子およびパスワードだけを含む。
【0157】
次に、図3Cを参照すると、本発明の一実施形態による、コンピュータシステムが、ユーザを認証することを可能にし、かつ/またはユーザが、同一のコンピュータシステム、または異なるコンピュータシステムから受け取られた通信を認証することを可能にする方法を示す流れ図が、示されている。図3Cの工程は、図3Aの工程の一部またはすべての後に、実行されることが可能である。
【0158】
Webページを求める要求が、受け取られ(370)、暗号化されたパーシステント ファイルからの情報が、受け取られた要求の送信元のデバイスから読み取られ(372)、パーシステント ファイルが、解読される。パーシステント ファイルは、本明細書で説明するとおり、検証される(374)。パーシステント ファイルが、有効でないことを工程374が示した場合(376)、要求されたWebページへのアクセス、またはWebサイトの残りの部分へのアクセスが、拒否されることが可能であり(378)、方法は、工程370に進み、そのように示さなかった場合(376)、方法は、工程380に進む。
【0159】
工程380で、要求が、機密情報を要求しない、またはユーザが認証されることを所望する可能性がある情報を提供しないWebページを求める要求であった場合、要求されたWebページが、提供されることが可能であり(382)、方法は、工程370に進み、それ以外の場合(380)、方法は、工程384に進む。図に破線で示される別の実施形態では、工程380の試験は、実行されず、工程384は、無条件で、工程380の「有効」ブランチの後に続く。
【0160】
工程384で、工程372で取り出されたパーシステント ファイルの中に格納されている、またはユーザによって入力されたユーザ識別子を使用して、前述したとおり、そのユーザ識別子に関連付けられたカスタマイズ情報が取り出され、カスタマイズ情報は、オプションとして、要求されたWebページに組み込まれることが可能であり(386)、Webページおよびカスタマイズ情報は、カスタマイズ情報が、Webページと同一の接続を介して提供される場合、セキュリティで保護された接続を介して提供され、あるいはカスタマイズ情報は、前述したとおり、セッション外で提供されてもよい(388)。
【0161】
図6は、本発明の一実施形態による図3Cの方法の続きを示す流れ図である。次に、図6を参照すると、工程388の後、ユーザが、カスタマイズ情報を認識した後(610)、ユーザは、例えば、工程386で提供されたWebページを使用して、ユーザ識別子およびパスワード612を提供することが可能であり、ユーザ識別子が、受け取られ(614)、工程372で取り出されたユーザ識別子と比較されることが可能である(616)。ユーザが、カスタマイズ情報を認識しない場合(610)、ユーザは、ユーザ識別子、パスワード、またはその両方などの、機密情報を提供することを拒否することができる(618)。
【0162】
工程612でユーザから受け取られたユーザ識別子が、工程372で取り出されたユーザ識別子と一致しない場合(620)、ユーザは、Webサイトの一部またはすべて、あるいはユーザに関連する情報へのさらなるアクセスを拒否され(622)、一致した場合(620)、ユーザは、そのようなアクセス(624)を許可される。
【0163】
別の実施形態では、カスタマイズ情報は、ユーザが、ユーザ識別子、または他の同様の識別子を供給するまで、提供されない。次に、図5Bを参照すると、本発明の一実施形態による、コンピュータシステムに対してユーザの認証を行い、同一のコンピュータシステム、または異なるコンピュータシステムからの通信をユーザに対して認証する方法が、示されている。Webページを求める要求が、受け取られ(520)、ユーザ識別子を求める入力要求を含むWebページが、提供される(522)。工程522で提供されるWebページは、カスタマイズ情報も、カスタマイズ情報を求める入力要求も含まず、そのWebページの送信元のURL以外、ユーザが認証することを所望する可能性がある情報を供給する必要がない。
【0164】
ユーザ識別子、ならびに署名済みの暗号化されたパーシステント ファイルからの他の情報が、前述したとおり、受け取られる(524)。パーシステント ファイルは、前述したとおり、解読され、かつ/または検証され、ユーザ識別子は、Webページを介して供給されたユーザ識別子と比較される(526)。パーシステント ファイルが、有効でない、一致しない、またはユーザ識別子が、一致しない、またはその両方である場合、ユーザには、Webサイトの残りの部分へのアクセスが与えられない(530)。
【0165】
それ以外の場合(528)、ユーザ識別子に関連付けられたカスタマイズ情報が、取り出され(532)、パスワード要求を含むWebページが、工程532で取り出されたカスタマイズ情報でカスタマイズされる(534)。工程534でカスタマイズされたページは、セキュリティで保護された接続などを介して、ユーザに提供され、ユーザによって供給されたパスワードが、受け取られる(538)。例えば、ユーザ識別子を使用してデータベースから、正しいパスワードが取り出され、ユーザによって供給されたパスワードが、その正しいパスワードと比較される(540)。ユーザによって供給されたパスワードが、正しいパスワードと一致しない場合(542)、ユーザは、Webサイトのさらなる部分へのアクセスを拒否され(544)、一致した場合(542)、Webサイトへのアクセスが、許可される(546)。図5Bは、パスワードを使用するが、他の諸実施形態では、パスワードに加えて、またはパスワードの代わりに、任意の機密情報が使用されることが可能であり、工程538〜544の一部またはすべてが、実行されなくてもよい。
【0166】
一実施形態では、パーシステント ファイルは、デジタル証明書、および/またはネットワーク カードのMACアドレス、そのコンピュータシステムによって使用される静的IPアドレス、あるいは、ユーザによって使用されているコンピュータシステムが、前述したとおり、登録するのに使用されたコンピュータシステムと同一であることを、確実にではないが、少なくとも示すのに使用されることが可能な、他の同様な情報などの、コンピュータシステムの識別子を含む。工程542は、デジタル証明書、および/またはパーシステント ファイルからの識別子、およびコンピュータシステムからの同様の識別子を受け取ることを含むことが可能であり、工程526は、それら2つの識別子を比較すること、デジタル証明書を検証すること、またはその両方を含む。工程528で、以上に明記した諸条件に加えて、2つのコンピュータシステム識別子が一致しない場合、または証明書が、有効でない場合、Webサイトの一部またはすべてへのアクセスが拒否され、それ以外で、前述した他の諸条件が成立しない(署名が一致しない、またはユーザ識別子が一致しない)場合、方法は、工程532に進む。
【0167】
次に、図4を参照すると、本発明の一実施形態による、コンピュータシステムからの通信をユーザが認証する方法が、示されている。身元の十分な証拠が、オプションとして、受け取られ(例えば、セッション外で)、前述したとおり、提供される(410)。前述したとおり、カスタマイズ情報を提供すること、カスタマイズ情報を選択すること、またはカスタマイズ情報を受け取ることなどの、カスタマイズ情報が、識別される(412)。暗号化された署名済みのパーシステント ファイルが、前述したとおり、受け取られ、格納されることが可能である(414)。
【0168】
Webページを求める要求が、提供され、オプションとして、暗号化された署名済みのパーシステント ファイルからの情報が、提供される(416)。Webページ、ならびに、オプションとして、あるカスタマイズ情報が、受け取られ(418)、そのカスタマイズ情報が、工程412で提供された、または選択されたものと比較される(420)。受け取られたカスタマイズ情報が、工程412で識別されたカスタマイズ情報に対応する場合(422)、(例えば、カスタマイズ情報が、一致する、またはそれ以外の形で予期されるため)情報が、受け取られ、信じられる、または提供されることが可能であり(426)、対応しない場合、ユーザは、情報を受け取ることを拒否する、または受け取られた情報を信じることを拒否する、または要求された情報を提供することを拒否することができる(426)。
【0169】
次に、図7Aおよび図7Bから成る図7を参照すると、本発明の一実施形態による、前述したとおり、ユーザが、登録を行うのに使用したコンピュータシステム以外のコンピュータシステムから、ローミング ユーザが、ログインすることを可能にする方法が示されている。ログイン ページを求める要求が、受け取られ、そのようなページが、提供される(710)。一実施形態では、ログイン ページは、ユーザが、ユーザのユーザ識別子を入力することを可能にするテキスト ボックスを含み、ユーザは、ユーザのユーザ識別子を入力し、リモート(すなわち、「ローミング」)ログインまたは登録を示す、Webページ上のチェックボックスにチェックマークをつけ、従来のCGI技術を使用することなどにより、テキスト ボックスの内容を戻すことができる。リモート/登録チェックボックスが、選択されない、あるいは登録またはローミング ログインが、それ以外で示されない場合(712)、本明細書で説明するログイン プロセスが、行われる(714)。それ以外の場合(712)、ユーザが、ローミングと呼ばれるプロセスである、そのコンピュータシステムから登録する、またはログインすることを所望していること、ならびにユーザが実行することを所望しているローミングのタイプを示すことを、ユーザが行うことができるようにする1つまたは複数のユーザ インタフェース要素を有するWebページが、提供される(716)。ユーザは、応答を入力し、例えば、従来のCGI技術を使用して、その応答を提供し、その応答が、受け取られる(718)。
【0170】
ユーザが、登録することを所望していることを応答が示す場合(720)、ユーザは、本明細書で説明するとおり、カスタマイズ情報を登録する(722)。それ以外の場合(720)、代替のパスワードが、生成され、工程712でユーザから受け取られたユーザ識別子に関連付けられて、あらかじめ格納されているセッション外識別子(例えば、電子メールアドレスまたは電話番号)を使用して、セッション外で(例えば、電子メールまたは電話を介して)提供され(724)、あるいはユーザが、ユーザの身元の十分な証拠を提供し、セッション外識別子を提供してもよい。工程724は、代替のパスワードが提供されていることをユーザに通知するWebページを提供することを含むことが可能であり、この工程は、識別子のタイプに依存して実行されることが可能であり、例えば、セッション外識別子が、例えば、電子メールを使用する、代替のパスワードが格納される識別子である場合、そのWebページを提供するが、代替のパスワードが、格納されない場合、例えば、セッション外識別子が、電話番号である場合、提供しない。
【0171】
代替のパスワードを入力するようユーザに要求するWebページが、提供され、応答が、受け取られて、工程724において提供された代替のパスワードと比較される(726)。一実施形態では、そのWebページは、前述したとおり、代替のパスワードが提供されているとユーザに通知するのに使用されたのと同一のWebページであってもよい。応答が、代替のパスワードと一致した場合(728)、方法は、工程740に進み、一致しない場合(728)、ユーザは、Webサイトを介して利用可能なある情報およびアクションへのアクセスを拒否される(730)。
【0172】
工程740で、ユーザが、工程718において、ユーザがログインを行っているコンピュータシステムが、そのユーザをログインするのに無期限に使用されることを許すローミングのタイプを指定している場合、ユーザのパーシステント ファイルのコピーが、コンピュータシステム742にコピーされ、ユーザは、前述したとおり、オプションとして、ログイン ページにリダイレクトされることにより、ログインすることができる(744)。
【0173】
一実施形態では、そのWebサイトに関するパーシステント ファイルが、そのコンピュータシステム上に既に存在する場合、そのパーシステント ファイルが、工程716で読み取られ、工程742は、取り出されたパーシステント ファイルに対応する1名または複数名のユーザ、ならびにローミング ユーザに関する情報を含む複合パーシステント ファイルを生成することを含む。パーシステント ファイルに記述される各ユーザに関する、異なる通し番号が、前述したとおり使用されるように、パーシステント ファイルに割り当てられることが可能である。このログイン プロセスは、パーシステント ファイルの中に格納されているすべてのユーザ識別子を調べ、ユーザのユーザ識別子が、パーシステント ファイルの中の情報に対応するユーザのいずれかのユーザに対応する場合、ユーザがログインすることを許すことを含む。パーシステント ファイルを組み合わせる際、現在の日付と時刻より前である失効の日付と時刻に対応するユーザらは、パーシステント ファイルから削除される。
【0174】
工程740で、工程718において示されたローミングのタイプが、1回限りの使用である場合、1回限りの使用のパーシステント ファイルとして指定されたパーシステント ファイルが、生成され、そのような指定は、パーシステント ファイルの中に入っている、またはデータベースの中に入っている(746)。また、一実施形態では、工程746は、失効の日付と時刻を計算し、パーシステント ファイルに関連付けることを、前述したとおり、その日付と時刻をパーシステント ファイルの中に格納すること、またはデータベースの中に、パーシステント ファイルの署名、およびユーザ識別子に関連付けて格納することにより、行うことも含む。工程746で生成されたパーシステント ファイルは、ユーザの情報を、前述したとおり、既存のパーシステント ファイルから読み取られた他のユーザらの情報と組み合わせる、複合パーシステント ファイルであることが可能であり、各ユーザは、異なる通し番号が割り当てられている、複合パーシステント ファイルの中に格納されたパーシステント ファイルに対応する。
【0175】
パーシステント ファイルは、コンピュータシステム上に格納され(748)、例えば、ユーザをログイン ページにリダイレクトすることにより、ユーザが、ログインすることを許され、方法は、図7Bの工程760に進む。工程748は、ユーザおよびパーシステント ファイルに通し番号を割り当て、その通し番号、ならびに提供されたパスワード、またはそのパーシステント ファイルとともに使用されるべき、異なるパスワードを格納することを含むことが可能であり、そのような格納は、ユーザ識別子に関連付けられる。
【0176】
工程718で示されたローミングのタイプが、限られた期間のローミングである場合740、その期間は、工程716において提供されるWebページ上のユーザ インタフェース要素を使用して、ユーザによって指定されることが可能であり、期間は、工程718における応答の一環として受け取られる。パーシステント ファイルが、生成され、そのパーシステント ファイルに関する失効の日付と時刻が、現在の時刻に、ユーザによって指定された期間を加算することによって(または、ユーザによって指定された期間の代わりに、ユーザによって指定された有効期限を使用することにより)計算され、失効の日付と時刻は、その日付と時刻をパーシステント ファイルに含めることにより、または失効の日付と時刻、ならびにパーシステント ファイルの署名を、ユーザ識別子に関連付けて、データベースに加えることにより、パーシステント ファイルに関連付けられて格納される(750)。パーシステント ファイルは、コンピュータシステム上に格納され、オプションとして、前述したとおり、別のパーシステント ファイルからの情報と組み合わされ(各ユーザは、異なる通し番号が割り当てられている、複合パーシステント ファイルの中に格納されたパーシステント ファイルに対応する)、例えば、ユーザをログイン ページにリダイレクトすることにより、ユーザが、ログインすることを許される(752)。工程752は、ユーザおよびパーシステント ファイルに通し番号を割り当て、その通し番号、ならびに提供されたパスワード、またはそのパーシステント ファイルとともに使用されるべき、異なるパスワードを格納することを含むことが可能であり、そのような格納は、ユーザ識別子に関連付けられる。
【0177】
工程760(図7Bに示された)で、ログインする要求が、受け取られる。1つまたは複数のログイン ページが、ユーザに提供されることが可能であり、ログイン ページは、前述したとおり、ユーザに関して登録されたカスタマイズ情報とともに提供されている、ユーザのパスワードを要求し、パーシステント ファイル、ユーザのユーザ識別子、およびパスワードが、受け取られる(762)。パーシステント ファイルは、前述したとおり、検証され、ユーザによって供給されたユーザ識別子が、そのパーシステント ファイルの中に格納されているユーザ識別子と比較されることが可能であり、受け取られたパスワードは、通常のパスワードであるか、またはパーシステント ファイルの通し番号に基づいて工程724で提供されたパスワードである、ユーザ識別子に関して格納されているパスワードと照合され、パーシステント ファイルが調べられて、そのパーシステント ファイルが、特定の特徴に対応するかどうか、例えば、そのパーシステント ファイルが、前述したとおり、1回限りのパーシステント ファイル、もしくは限られた期間のパーシステント ファイルであるかどうかが確認される(764)。
【0178】
パーシステント ファイルが、有効であり、ユーザ識別子が、一致し、受け取られたパスワードが、ユーザの通常のパスワード、またはユーザ識別子、パーシステント ファイルの通し番号に対応するパスワードと一致した場合(766)、方法は、工程770に進み、それ以外の場合(766)、一部の情報へのアクセスが、拒否される(768)。
【0179】
工程770で、パーシステント ファイルが、1回限りのファイル、または限られた期間のファイルとしての特別な特徴に対応していない場合、ユーザは、Webサイトの情報および/または活動へのアクセスを許される772。パーシステント ファイルが、特別な特徴に対応する場合(770)、パーシステント ファイルが、失効の日付を過ぎている場合(780)、方法は、工程768に進む。そうではなく(780)、パーシステント ファイルが、期限付きである(ただし、1回限りの使用のパーシステント ファイルではない)場合(782)、方法は、工程772に進む。
【0180】
パーシステント ファイルが、1回限りの使用のパーシステント ファイル(782)であり、パーシステント ファイルが、それまでに使用されている場合(784)、方法は、工程768に進み、使用されていない場合(784)、パーシステント ファイルには、使用済みというマークが付けられ(786)、方法は、工程772に進む。
【0181】
前述した方法は、1回限りの使用のパーシステント ファイルも、限られた期間のものであると想定している。1回限りの使用のパーシステント ファイルが、限られた期間のものではないケースでは、工程782および780は、逆の順序で実行されることが可能であり、工程780は、工程782の「時間」ブランチに関してだけ実行され、工程780における「いいえ」ブランチの後には、工程772が続く。
【0182】
次に、図3Dおよび図3Eを参照すると、本発明の一実施形態による、ユーザが、オプションとして、コンピュータシステムからの1つまたは複数の通信を認証すること、およびコンピュータシステムが、オプションとして、ユーザを認証することを可能にし、情報を表示する方法が、示されている。図3Dおよび図3Eの工程は、以下に述べる点を除き、図3Cの工程と同一である。
【0183】
工程372の代わりに、パーシステント ファイルから情報を読み取り、解読しようとする試みが、行われる(371)。試みが、成功した場合373、方法は、工程374に進み、成功しなかった場合373、方法は、工程389に進む。一実施形態では、図に破線で示されるとおり、パーシステント ファイルが、有効ではない場合、方法は、一実施形態では、工程389に進むことが可能であり、あるいは別の実施形態では、工程378に進むことが可能である。
【0184】
工程389で、要求されたページが、そのユーザに対するセッションにおける最初のページであった場合(389)、コンピュータシステムが、登録されておらず、要求されているサイトへのリンクが、辿られる、またはブラウザの中にペーストされるべきではなく、代わりにタイプ入力されるべきことをユーザに警告し、ユーザが、前述したとおり、ローミングのためにコンピュータシステムを登録することを可能にするリンクを含むWebページが、提供される(390)。ユーザが、登録のためのリンクをクリックした場合(391)、方法は、図7Aの工程710または716に進み、あるいは図7Aまたは図7Bの別の工程に進む。ユーザが、登録するリンクをクリックしなかった場合(391)、またはページが、そのユーザに対するセッションにおける最初のページではなかった場合(389)、方法は、一実施形態では、図3Eの工程392に進み、あるいは別の実施形態では、図3Eの工程399Cに進む。
【0185】
図3Eの工程392で、Webページが、パスワードを要求しない場合(392)、方法は、工程399Cに進み、要求する場合(392)、コンピュータシステムが、キーストロークをログ記録する可能性があることをユーザに警告し、1回限りの使用のパスワード、または他の代替のパスワードを受け取るリンクを提供するWebページが、提供される。ユーザが、代替のパスワードを受け取るリンクを選択しなかった場合(394)、方法は、工程399Cに進む。選択した場合(394)、電子メールアドレスまたは電話番号などのセッション外識別子が、取り出され(395)、代替のパスワードが、生成され、ユーザ識別子に関連付けられて格納され、セッション外識別子を介して提供される(396)。ユーザは、その代替のパスワードを取り出して、そのパスワードを入力するように促され、そのパスワードが、受け取られて、生成された代替のパスワードと比較される(397)。受け取られたパスワードが、代替のパスワードと一致した場合(398)、ユーザは、Webサイトの一部またはすべてへのアクセスを許可され(399A)、方法は、工程370に進み、一致しなかった場合(398)、ユーザは、Webサイトの一部またはすべてへのアクセスを拒否される。工程399Cで、要求されたWebページが、カスタマイズ情報の代わりに、前述した警告とともにユーザに提供され、方法は、工程370に進む。一実施形態では、ユーザが、前述したとおり、ユーザを登録するのに使用されたのと同一のコンピュータシステム上でWebページを閲覧していたとすれば、カスタマイズ情報を含んでいたであろうWebページだけが、警告を含み、他のページは、警告を含まない。
【0186】
次に、図8Aを参照すると、本発明の一実施形態による、ユーザが、電子メールメッセージを認証することを可能にする方法が、示されている。方法は、数名のユーザの各々に関して繰り返されることが可能である。
【0187】
カスタマイズ情報が、ユーザによって受け取られ、または指定され(810)、そのカスタマイズ情報が、前述したとおり、そのユーザに関するユーザ識別子に関連付けられて格納される(812)。電子メールメッセージが、そのユーザ向けに準備されて、メッセージ、ユーザ識別子、ならびに、オプションとして、ユーザの電子メールアドレスが、提供される(814)。1つまたは複数のカスタマイズ情報識別子が、生成され、リンク、または1つまたは複数のタグ、または1つまたは複数のリンクを含むコード、あるいは以上のいずれか、またはすべてに組み込まれ、前述したとおり、メッセージに追加され、カスタマイズ情報識別子は、ユーザ識別子、あるいはそのユーザ識別子に関するカスタマイズ情報に関連付けられて格納される(816)。メッセージは、オプションとして、電子メールメッセージに組み込まれ(そのメッセージが、電子メールメッセージに既に組み込まれているのでない場合)、その電子メールメッセージが、アドレスに送信される(818)。前述したリンクのいずれか(例えば、リンク、タグの中のリンク、またはコンピュータコードの中のリンク)に対応する情報を求める要求が、ユーザが、メッセージを開いたため、またはリンクをクリックしたため、またはリンクをペーストしたため、またはコンピュータコードを動作させたために、受け取られる(820)。
【0188】
そのリンクまたはリンク群に対応するカスタマイズ情報が、要求に応答して探し出され、提供され(840)、ユーザは、そのカスタマイズ情報を使用して、メッセージを認証することを可能にされる(842)。提供されたカスタマイズ情報が、ユーザによって予期されるカスタマイズ情報であった場合(844)、ユーザは、そのメッセージを真正であるものとして扱うことができる(848)。そうではなかった場合、または全くカスタマイズ情報が受け取られなかった場合、またはカスタマイズ情報が、予期されたものではなかった場合(844)、ユーザは、そのメッセージを真正でないものとして扱うことができる(846)。
【0189】
次に、図8Bを参照すると、本発明の一実施形態による、ユーザが、電子メールメッセージを認証すること、およびコンピュータシステムが、ユーザを認証することを可能にする方法が、示されている。図8Bは、工程820と工程840の間における要素および流れ以外は、図8Aと同一である。一実施形態では、工程840が、工程820の後に続く代わりに、工程830が、工程820の後に続き、工程830〜836が、以下のとおり追加される。
【0190】
工程830で、パーシステント ファイルからの情報が、受け取られる。パーシステント ファイルは、前述したとおり、検証され、パーシステント ファイルからの、ユーザ識別子などの情報が、工程820で要求とともに受け取られたカスタマイズ情報識別子に関連するユーザ識別子などの情報と比較される(832)。パーシステント ファイルが、有効であり、前述したとおり比較された情報が、一致した場合(834)、方法は、工程840に進み、一致しなかった場合(834)、要求は、破棄されるか(836)、またはエラー メッセージが応答で提供されることが可能である。
【0191】
パーシステント ファイルからの情報を格納された情報とクロスチェック(cross check)することは、ユーザの電子メールクライアントが、パーシステント ファイルを、または、特にクッキーをサポートするかどうかなどの、ユーザの口座識別子に関連付けられて格納された一部の情報に応答して行われることが可能である。図に破線で示されるとおり、一実施形態では、工程830が、工程820の後に続く代わりに、工程822が、工程820の後に続く。
【0192】
工程822で、ユーザ識別子とともに格納されている情報が調べられて、ユーザの電子メール クライアントが、パーシステント ファイルを、または、特にクッキーをサポートしているかどうかが確かめられる。サポートしている場合(824)、方法は、工程830に進み、サポートしていない場合(824)、方法は、工程840に進む。ユーザ識別子とともに格納されている情報は、ユーザによって、またはシステム管理者によって、そこに置かれていることが可能であり、あるいは、前述したとおり、パーシステント ファイルの以前の読み取りまたは操作の結果であることが可能である。
【0193】
次に、図10Bを参照すると、本発明の一実施形態による電子メールメッセージを提供し、表示する方法が、示されている。第1のユーザが、選択され(1030)、ユーザ向けに個人用設定されていることが可能なメッセージのためのテキスト、FlashコードまたはJavascriptコードなどの、工程1040〜1050を実施するコード、および暗号化されたカスタマイズ情報を含む、電子メールメッセージが、その選択されたユーザ向けに構築される(1032)。メッセージは、電子メールメッセージの中に組み込まれ、選択されたユーザの電子メールアドレスに送信される(1034)。さらなるユーザが存在する場合(1036)、別のユーザが、選択され(1038)、方法は、その新たな選択されたユーザを使用して、工程1032に進み、存在しない場合(1036)、方法は、終了する(1040)。
【0194】
メッセージは、工程1034に関連して前述したとおり、ユーザに送信された後、工程1050〜1060で説明され、工程1034と工程1050の間の破線で示されるとおり、例えば、ユーザが、メッセージを開こうと試みる際に、任意のそのようなユーザによって操作されることが可能である。
【0195】
工程1050で、ユーザは、ユーザ識別子を求められ、ユーザは、ユーザ識別子を供給する。Flashローカル共有オブジェクト、または他の類似のファイルが、読み取られて、解読され、署名が、そのファイルからの情報を使用して生成され、そのファイルの中に格納されている署名と比較され、ユーザから受け取られたユーザ識別子が、Flashローカル共有オブジェクトの中のユーザ識別子と比較される(1052)。署名が、一致し、工程1050で受け取られたユーザ識別子が、ファイルの中に含まれるユーザ識別子と一致した場合(1054)、暗号化されたカスタマイズ情報が、解読され(1056)、解読されたカスタマイズ情報、およびメッセージ テキストが表示されて、ユーザが、メッセージの送信元を認証することを可能にし(1058)、それ以外の場合(1054)、エラーが示されることが可能である(1060)。別の実施形態では、メッセージ自体が、暗号化されたユーザ識別子を含み、工程1052は、そのユーザ識別子(Flashローカル共有オブジェクトからのユーザ識別子ではなく)を解読すること、およびそのユーザ識別子を、ユーザから受け取られたユーザ識別子と比較することから成る。
【0196】
(セキュリティで保護された取引)
次に、図9Aを参照すると、本発明の一実施形態による、インターネットを介して取引の代金を支払う方法が、示されている。取引が、前述したとおり、開始される(910)。ユーザのユーザ識別子を要求するWebページが、オプションとして、受け取られる(912)。ユーザのカスタマイズ情報を含み、パスワードおよび/または口座番号などの機密情報を提供することにより、前述したとおり、支払いの許可を要求する1つまたは複数のWebページが、受け取られる(914)。そのカスタマイズ情報が、予期されるカスタマイズ情報に照らして調べられる(916)。カスタマイズ情報が、受け取られない場合、または予期されるカスタマイズ情報と一致しない場合(918)、許可は、与えられず(920)、一致した場合(918)、許可が、与えられ(922)、ユーザの金融手段に対する料金請求が、受け取られ、取引の確認が、受け取られる(924)。
【0197】
前述したとおり、工程912と工程914は、ユーザ識別子および機密情報が、ユーザのカスタマイズ情報を含む単一のページを介して要求され、提供されることが可能であるように、組み合わせられてもよい。
【0198】
次に、図9Bを参照すると、本発明の一実施形態による、ユーザの金融手段に料金請求する許可を受け取る方法が、示されている。料金請求が行われる品物および/またはサービスの品質などの、取引情報が、金融手段に料金請求する明確な、または暗黙の要求とともに受け取られる(930)。
【0199】
別の形で、商人の識別子、または別の形で、支払いが受け取られるべき口座を示す識別子、取引の識別子、および取引金額のいずれか、またはすべてを含む、パラメータの形態で、または別の形で符号化されていることが可能な情報を含むリダイレクト コマンドが、提供され(932)、実行される。また、それらの項目の1つまたは複数の項目の署名、または情報の検証を可能にする別のコードも、コマンドの中で提供されることが可能である。リダイレクト コマンドの実行により、前述したとおり、要求が生成させられ、符号化された情報を含む要求が、受け取られる(934)。一実施形態では、要求は、工程932でコマンドを送ったエンティティとは異なる商業エンティティによって受け取られる。
【0200】
商人の、または支払いを受け取るべき他の口座の署名および/または識別子が、前述したとおり、検証され(936)、その署名または識別子が、有効ではなかった場合(938)、支払いの処理は、終了され、ユーザを元のWebサイト940に戻すリダイレクト コマンドが、提供されることが可能である。リダイレクト コマンドは、ユーザのリダイレクトが最初に行われた起点のWebサイトによって扱われることが可能であるように、エラーを示すことが可能である。署名、および商人識別子、およびその他の類似の識別子が、有効であった場合(938)、パーシステント ファイルが、解読され、検証される(942)。パーシステント ファイルが、有効であった場合(944)、ユーザは、前述したとおり、Webページを介してユーザ識別子を求められ、ユーザ識別子が、受け取られ、パーシステント ファイルからのユーザ識別子、および/または登録されたユーザ識別子のなかからのユーザ識別子と比較され(946)、方法は、工程948に進み、有効でなかった場合(944)、方法は、工程940に進む。
【0201】
工程948で、工程946において受け取られたユーザ識別子が、パーシステント ファイルの中のユーザ識別子、登録されたユーザ識別子、またはその両方と一致した場合、ユーザによって認識される、またはそれ以外で予期されるカスタマイズ情報に対応するカスタマイズ情報が、パスワード、金融機関における口座番号、またはそれらの両方を求めるWebページ上で提供され、機密情報が、受け取られて、ユーザに関して格納されている機密情報と比較され(950)、方法は、工程952に進み、一致しなかった場合(948)、方法は、工程940に進む。
【0202】
工程952で、工程950で受け取られた機密情報が、比較された機密情報と一致した場合、許可識別子が、生成される、または受け取られることが可能であり、料金請求が、ユーザの金融手段(そのユーザに関して格納されている金融手段、またはそのユーザによって指定された金融手段)に行われることが可能であり、取引識別子や許可識別子などの、符号化された情報を含むことが可能であり、オプションとして、検証されることが可能なそれらの識別子の署名を含むことが可能なリダイレクト コマンドが、提供される。工程954は、1つのエンティティから別のエンティティに許可識別子を送ること、およびそのエンティティが、その許可識別子を受け取ることを含むことが可能である。リダイレクトの結果は、取引が行われたことを確認するWebページまたは電子メールが、ユーザに向けられることであることが可能である(956)。工程950の比較が、失敗した場合(952)、方法は、工程940に進む。
【0203】
次に、図11Aを参照すると、本発明の一実施形態によるユーザを登録する方法が、示されている。ユーザの身元の証拠、およびユーザ識別子が、前述したとおり、受け取られる(1110)。カスタマイズ情報が、受け取られ、ユーザの識別子に関連付けられる(1112)。バイオメトリック サブシステムなどの、信頼されるコンピューティング ファシリティと通信する試みが、行われる(1114)。応答が、信頼されるコンピューティング ファシリティから受け取られ、オプションとして、その信頼されるコンピューティング ファシリティ自体が、検証された場合(1116)、ユーザが、現在、認証されていることを、その信頼されるコンピューティング ファシリティが示す場合(1118)、信頼されるコンピューティング識別子が、受け取られ(1122)、その信頼されるコンピューティング識別子が、ユーザ識別子に関連付けられる(1124)。ユーザが、認証されていない場合(1118)、ユーザは、信頼されるコンピューティング ファシリティに対してユーザ自身の認証を行うように促される。信頼されるコンピューティング ファシリティからの応答が全くない場合、またはそのファシリティを検証できない場合(1116)、前述したとおり、パーシステント ファイルが、生成され、ユーザのコンピュータシステム上に格納される。
【0204】
次に、図11Bを参照すると、本発明の一実施形態によるユーザを認証する方法が、示されている。バイオメトリック サブシステムなどの、信頼されるコンピューティング ファシリティと通信する試みが、行われる(1140)。応答が、信頼されるコンピューティング ファシリティから受け取られ、オプションとして、その信頼されるコンピューティング ファシリティが、検証された場合(1142)、ユーザが、現在、認証されていることを、その信頼されるコンピューティング ファシリティが示す場合(1144)、信頼されるコンピューティング識別子が、取り出され(1148)、その信頼されるコンピューティング識別子が、格納されている識別子と比較される(1150)。工程1150が、すべてのユーザに関して格納されている、すべての信頼されるコンピューティング識別子、あるいは、例えば、ユーザ識別子を使用して、またはパラメータもしくは一意のリンクを含む要求を介して、自分の身元を提示した特定のユーザに関して格納されている、信頼されるコンピューティング識別子のすべてを走査することにより、実行されることが可能である。一致が生じた場合1152、カスタマイズ情報が、提供され(1154)、また、カスタマイズ情報の提供者によるユーザの認証の後に続く、他の図のいずれかに関連して本明細書で説明した他の工程も、実行されることが可能である(1156)。一致が生じなかった場合(1152)、パーシステント ファイルを使用することなどの、他の図のいずれかに関連して本明細書で説明した他の工程が、実行されて、ユーザの認証が行われることが可能である(1158)。
【0205】
工程1144で、ユーザが、信頼されるコンピューティング サブシステムに対して認証されない場合、ユーザは、ユーザ自身の認証を行うように促され(1146)、方法は、工程1144に進む。工程1142で、信頼されるコンピューティング ファシリティが、応答しない場合、または有効ではない場合、方法は、工程1158に進む。図に破線で示される一実施形態では、前述したとおり工程1158が実行される代わりに、カスタマイズ情報へのアクセスが、拒否される(1160)。
【0206】
図11Bの方法が、ユーザ識別子、パスワード、またはその両方を提供するようにユーザに促す代わりに、またはパーシステント ファイルの中に格納されているユーザ識別子を受け取り、認証し、比較する代わりに、あるいは以上のいずれか、またはすべての代わりに、前述したユーザ プロセスの認証の一環として実行されることが可能である。
【0207】
前述した案は、任意の形で組み合わせされることが可能であり、したがって、1つの流れ図、または概略図の一部分に関連して説明したいくつかの工程は、別の流れ図、または概略図の他の部分に関連して実行されてもよい。
【0208】
いずれの出願の請求項も、その出願、および親出願の出願履歴に関連してだけ限定されるべきであり、そのような出願または親出願を継続する、または一部継続することが可能な、他のいずれの出願の、特許査定後の出願履歴によっても限定されるべきではない。
【図面の簡単な説明】
【0209】
【図1】従来のコンピュータシステムの概略ブロック図である。
【図2A】本発明の一実施形態による、ユーザが、コンピュータシステムからの1つまたは複数の通信を認証することを可能にするため、および同一のコンピュータシステム、もしくは異なるコンピュータシステムが、そのユーザを認証することを可能にするためのシステムの概略ブロック図である。
【図2B】本発明の一実施形態による、支払いを許可する目的で、ユーザが、コンピュータシステムを認証することを可能にするため、および同一のコンピュータシステム、もしくは異なるコンピュータシステムが、そのユーザを認証することを可能にするためのシステムの概略ブロック図である。
【図3A】本発明の一実施形態による、ユーザを登録して、ユーザが、コンピュータシステムからの通信を認証することを可能にする、コンピュータシステムが、ユーザを認証することを可能にする、またはその両方をできるようにする方法を示す流れ図である。
【図3B】本発明の一実施形態によるユーザの身元の証拠を提供し、受け取る方法を示す流れ図である。
【図3C】本発明の一実施形態による、コンピュータシステムが、ユーザを認証することを可能にし、かつ/またはユーザが、同一のコンピュータシステム、もしくは異なるコンピュータシステムから受信された通信を認証することを可能にする方法を示す流れ図である。
【図3D】本発明の一実施形態による、ユーザが、コンピュータシステムからの1つまたは複数の通信をオプションとして認証することを可能にし、コンピュータシステムが、ユーザをオプションとして認証することを可能にし、情報を表示する方法を示す流れ図である。
【図3E】本発明の一実施形態による、ユーザが、コンピュータシステムからの1つまたは複数の通信をオプションとして認証することを可能にし、コンピュータシステムが、ユーザをオプションとして認証することを可能にし、情報を表示する方法を示す流れ図である。
【図4】本発明の一実施形態によるコンピュータシステムからの通信をユーザが認証する方法を示す流れ図である。
【図5A】本発明の一実施形態による図2のWebアプリケーション240の概略ブロック図である。
【図5B】本発明の一実施形態による、コンピュータシステムに対してユーザを認証し、同一のコンピュータシステム、もしくは異なるコンピュータシステムからのユーザへの通信を認証する方法の方法を示す流れ図である。
【図6】本発明の一実施形態による図3Cの続きの流れ図である。
【図7A】本発明の一実施形態による、ローミング ユーザが、ユーザが登録を行ったコンピュータシステム以外のコンピュータシステムからログインすることを可能にする方法を示す流れ図である。
【図7B】本発明の一実施形態による、ローミング ユーザが、ユーザが登録を行ったコンピュータシステム以外のコンピュータシステムからログインすることを可能にする方法を示す流れ図である。
【図8A】本発明の一実施形態による、ユーザが、電子メールメッセージを認証することを可能にする方法を示す流れ図である。
【図8B】本発明の一実施形態による、ユーザが、電子メールメッセージを認証することを可能にし、同一のコンピュータシステム、もしくは異なるコンピュータシステムが、そのユーザを認証することを可能にする方法を示す流れ図である。
【図9A】本発明の一実施形態によるインターネットを介した取引の代金を支払う方法を示す流れ図である。
【図9B】本発明の一実施形態によるユーザの金融手段に料金請求することの許可を受け取る方法を示す流れ図である。
【図10A】本発明の一実施形態による電子メールメッセージおよびカスタマイズ情報を表示するのに使用されるFlashムービー、または他のデバイスの概略ブロック図である。
【図10B】本発明の一実施形態による電子メールメッセージを提供し、表示する方法を示す流れ図である。
【図11】本発明の一実施形態によるユーザを登録する方法を示す流れ図である。
【技術分野】
【0001】
(関連出願)
本出願は、Louis GaspariniおよびWilliam Harrisによって2004年2月4日に出願された「Method and Apparatus for Autentication of Users and Communications Received From Computer Systems」という名称の整理番号1383、米国仮出願第60/542,101号の利益を主張するものであり、Louis GaspariniおよびCharles Gotliebによって2003年5月9日に出願された「METHOD AND APPARATUS FOR AUTHENTICATION OF USERS AND WEB SITES」という名称の整理番号1366、出願番号第10/435,322号の一部継続出願であり、以上のそれぞれは、参照により全体が本明細書に組み込まれている。
(整理番号)
1383PCT
(エクスプレス メール ラベル番号)
EV334039785US
(発明者)
Louis Gasparini
William Harris
【0002】
本発明は、コンピュータ セキュリティに関し、より具体的には、インターネット向けのコンピュータ セキュリティに関する。
【背景技術】
【0003】
インターネットおよびWorld Wide Webは、ユーザが、Web上の様々なサイトで動作しているソフトウェアと通信することを可能にする。通信は、リアルタイムで実行されること、または電子メールなどのメッセージングシステムを介して実行されることが可能である。しかし、これらのエンティティ(entity:実体)の片方または両方が、そのエンティティが通信している相手側のエンティティが、本当にその相手側のエンティティであることを確実にすることを可能にすることに役立つ可能性がある。
【0004】
Webサイトが、あるエンティティと通信していると考えているが、実際には、異なるエンティティと通信している場合、Webサイトは、Webサイトが通信している相手であると誤って考えているエンティティの機微な情報へのアクセスを提供する可能性がある。Webサイトは、セキュリティの転送、製品の発送、またはサービスのデリバリが、Webサイトが通信している相手であると考えるエンティティの名義で、異なるエンティティに対して行われるようにする可能性がある。例えば、Webサイトの一部の事業者は、登録済みのユーザとして偽ってWebサイトに身元を提示する盗人に、製品を発送すること、または現金を振り替えること、または他のセキュリティを転送することにより、相当な金額を損失する。
【0005】
それらの盗人の多くは、盗人によって運用されるWebサイトが、実際に、ユーザが登録しているWebサイトであるかのようにユーザに見せかけること、または機密情報をユーザが盗人に提供するようにさせることが可能な情報またはリンクを含む電子メールメッセージをユーザに送信すること、あるいはその両方により、ユーザを欺いて、盗人が、登録済みのユーザとして身元を提示するのに使用することができる機密情報を提供するようにさせる。例えば、盗人は、電子メールの受信者が、経理Webサイト、paypal.com(ドメイン名及び商標、以下同)に登録されていることを期待して、Webサイト、paypaiへのリンクで、payapl.comにログオンするようにユーザを招くひとまとまりの電子メールを送信する可能性がある。しかし、盗人は、「I」が、「paypal」における小文字の最後の文字「l」のように見えることを期待して、盗人のサイトにおいて最後の文字を大文字にして、paypaI.comと書かれているようにする。すると、Webサイト、paypai.comによって提供されるWebページは、Webサイト、paypal.comのように見えるようにされ、ユーザが、ログインしようと試みると、ユーザのユーザ名およびパスワードが、盗人のWebサイトによってキャプチャされる。盗人は、次に、そのようにして受け取られたユーザのユーザ名およびパスワードを使用して、paypal.comにログインし、ユーザの口座から、盗人によってコントロールされる口座への金の振替を許可する。
【0006】
詐欺の別の変種では、盗人は、実際のサイトのURLのように見えるが、実際には、盗人のサイトにログインするコマンドであるものを含むリンクをユーザに与える。例えば、「www.paypal.com/%sdafghdgk%fdgsdhdsh...」に「http://」が付けられているように書かれているリンクは、ユーザのブラウザにおけるURLウインドウの終りからはみ出た長いパラメータリストを有する、paypal.comへの本物のリンクのように見える可能性がある。ユーザに知られずに、上記のリンクは、実際には、「...@paypai.com」で終り、これは、ユーザが、ユーザ名として、「@」記号の左側の文字セットを使用して、Webサイト、paypai.comにログインされるようにする。Webサイト、paypai.comは、任意のそのようなユーザ名が、Webサイトにログインすることを許し、次に、前述したとおり動作して、ユーザが、盗人のWebサイトにおけるアプリケーションソフトウェアにログオンすることを許す(リンクを介して偽りのユーザ名が提供されているものの)paypal.comユーザインタフェースのレプリカをユーザに提示する。盗人は、次に、そのようにして受け取られたユーザ名およびパスワードを使用して、本物のpaypal.comのWebサイトにログオンして、振替を行う。
【0007】
この問題に対抗するため、一部のWebサイトは、Webサイトが真正であることをユーザが検証することを可能にする証明書を提供するが、そのような認証を実行するための手続きは、複雑で、面倒であり、ほとんどのユーザには知られていない。このため、ユーザが、Webサイトを認証することができるようにするのに使用されることが可能な従来の方法は、使用するのが余りにも難しいため、効果的でない。
【0008】
Webサイトの不正直な運用者が、ユーザを騙して、Webサイトが真正であると信じるようにさせることができるだけでなく、不正直なユーザが、真正のWebサイトを騙して、ユーザが真正であると信じるようにさせることもできる。前述したとおり、ユーザからの機密情報が、キャプチャ(capture)され、次いで、Webサイトが、そのユーザを相手にしていると信じさせるのに使用されることが可能である。一部のWebサイトは、ユーザのコンピュータ上にクッキーを置き、ログインしようと試みている人が、実際にその人であるという可能性を検証しようと試みるのに、それらのクッキーが使用されることも可能である。しかし、クッキーは、盗人のコンピュータシステムが、盗人が偽装しようと試みているユーザのコンピュータシステムであると示すように、盗人によって偽造される可能性がある。
【0009】
関連出願は、ユーザを認証するのにソフトウェアによって使用されることが可能な署名済みの暗号化されたクッキーが、登録プロセス中にユーザのコンピュータシステム上に置かれており、コンピュータシステムからの通信をユーザが認証することができるようにするようにユーザに与えられることが可能な、認識可能なカスタマイズ情報が、ユーザによってソフトウェアに与えられている、または示されている構成を説明した。このアプローチは、うまく機能するが、いくつかの限界を有し、それらの限界のすべてに、本出願では、対処が行われている。
【0010】
1つのそのような限界は、登録プロセス中にユーザが自身の認証を行う検証可能な能力の欠如である。関連出願は、ユーザが、自身を登録するのに使用していた通信セッション以外の手段を介して、ユーザが受け取ったセッション外識別子の提供を使用した。しかし、方法は、セッション外の方法(例えば、電話番号を介した電話コール、または電子メールアドレス)が、ユーザに属すると知られていなかった、またはセキュリティで保護されていなかった場合、セキュリティで保護されていない可能性がある。別の限界は、登録されると、ユーザは、それ以降、クッキー(cookie)が格納されているクライアントコンピュータシステムを使用してしか、自身の認証を行うことができないことである。別の限界は、コンピュータシステムの複数のユーザが、互いのカスタマイズ情報を見る、またはコンピュータシステムの許可されていないユーザが、ユーザのカスタマイズ情報を見る可能性である。
【0011】
また、ユーザのカスタマイズ情報の機密性が脅かされる大きい可能性なしに、ユーザが、電子メールメッセージ、または他の通信を認証することができるようにすることも望ましい可能性がある。本明細書で説明するとおり、クッキー、およびその他のパーシステント ファイル(persistent file)が、この問題を解決することができる。しかし、一部の電子メール クライアントは、クッキーの使用をサポートしない。さらに、ユーザが、ネットワークに接続されておらずに、電子メールメッセージを認証することができるようにすることが望ましい可能性がある。
【特許文献1】米国仮出願第60/542,101号
【特許文献2】米国出願第10/435,322号
【発明の開示】
【発明が解決しようとする課題】
【0012】
必要とされているのは、コンピュータに対してユーザをセキュリティで保護された形で認証すること、複雑な認証手続きをユーザが使用することを要求することなしに、コンピュータシステムからの通信をユーザが認証することを容易に可能にすること、またはその両方ができ、登録プロセス中でさえ、ユーザを認証することができ、様々なクライアントコンピュータシステムから、ユーザが、コンピュータシステムに対して自らの認証を行うことができるようにする、または厳密な認証の必要性を回避できるようにすることができ、ユーザのクライアントコンピュータシステムにアクセスを有する他の人々から、コンピュータシステムを認証するユーザの手段を保護することができ、コンピュータシステムを認証するユーザの能力が脅かされる大きな可能性なしに、電子メールメッセージ、または他の通信をユーザが認証することができるようにすることが可能なシステムおよび方法である。
【課題を解決するための手段】
【0013】
システムおよび方法は、暗号化された署名済みのクッキー、あるいはユーザのコンピュータシステム上のFlashローカル共有オブジェクトなどの他のパーシステント ファイルを提供して、コンピュータシステムが、ユーザを識別し、認証することを可能にする。さらに、または代替として、カスタマイズ情報が、ユーザの識別子に関連付けられて、ユーザが、同一のコンピュータシステム、または異なるコンピュータシステムから受信された通信が、真正であることを認識することを可能にする。ユーザが、コンピュータシステムからWebページ、または他の通信を要求すると、パーシステント ファイルが、Webサイトまたはコンピュータシステムによって受信され、そのパーシステント ファイルの中に含まれる署名およびユーザ識別子、つまり、コンピュータコードが、調べられて、ユーザが認証されることが可能である。パーシステント ファイルの中の識別子は、ユーザを識別するのに使用され、ユーザが、認識して、コンピュータシステムからのWebサイト、または他の通信を認証することができるカスタマイズ情報を、コンピュータシステムが提供できるようにすることが可能である。その場合、ユーザは、ユーザが予期しているカスタマイズ情報を提供する通信を信用することができる。カスタマイズ情報が、欠落している場合、または異なる場合、ユーザは、機密情報をそのコンピュータシステムに提供することを拒否すること、またはそのコンピュータシステムによって提供される情報を信じることを拒否することができ、ユーザのユーザ名およびパスワード、ならびにその他の機密情報が、盗人から保護される。
【0014】
システムおよび方法は、例えば、第三者を使用して、ユーザ以外の数名の人々が知っている情報を要求し、次いで、その情報を検証することにより、ユーザを認証してから、パーシステント ファイルを提供することができる。カスタマイズ情報は、ユーザのコンピュータシステムにアクセスを有する可能性がある他の人々からカスタマイズ情報をセキュリティで保護するために、ユーザが、有効なユーザ名を供給して初めて、供給されてもよい。パーシステント ファイルは、ユーザの静的IPアドレス、通信インタフェースのMACアドレス、またはクライアントコンピュータシステム260の別の識別子、および/またはデジタル証明書を含むことが可能であり、これらは、パーシステント ファイルが、さらなるセキュリティのために使用される際に調べられることが可能である。ユーザは、パーシステント ファイルを含まないコンピュータシステムをユーザが使用している際に、パーシステント ファイルが、異なるコンピュータシステム上にインストールされることを所望すること、あるいは、コンピュータシステムが、ユーザを認証すること、またはカスタマイズ情報を提供することを中断できることを指示することができる。バイオメトリック識別システムまたは物理的キーなどの、信頼されるコンピューティングサブシステムが、パーシステント ファイルの代わりに使用されて、クッキーを使用しない可能性がある他のコンピュータシステムをユーザが使用できるようにすること、またはユーザを認証する際にさらなるセキュリティを提供することが可能である。
【0015】
カスタマイズ情報は、電子メールメッセージの中で提供されて、メッセージ、またはメッセージの送信者を、ユーザが認証することができるようにすることが可能である。Flash(商標、以下同)ムービー、またはその他のコードにより、電子メール、または他の通信の中でカスタマイズ情報を提供するコンピュータシステムが、ユーザの電子メール クライアントまたはブラウザが、クッキーの使用をサポートしていない場合でも、ユーザを認証することができるようになることが可能である。カスタマイズ情報は、電子メールと一緒に送信されるFlashムービー、または別のファイルの中に暗号化されて、ユーザが、ネットワークに接続されていない場合でも、電子メールメッセージ、または他の通信を認証することができるようになることが可能である。
【0016】
このシステムおよび方法を使用して、例えば、クレジットカードなどの金融手段を使用する支払いを許可する目的で、ユーザを認証することができ、ユーザが、コンピュータシステムを認証することができるようにされることが可能である。
【発明を実施するための最良の形態】
【0017】
本発明は、従来のコンピュータシステム上のコンピュータソフトウェアとして実施されることが可能である。次に、図1を参照すると、本発明を実施するための従来のコンピュータシステム150が、示されている。プロセッサ160が、ランダムアクセスメモリ(RAM)であることが可能なメモリなどのストレージ162の中に格納されたソフトウェア命令を受け取って、実行し、本発明を実行するように他のコンポーネントを制御することが可能である。ストレージ162は、プログラム命令またはデータ、あるいはその両方を格納するのに使用されることが可能である。コンピュータディスクドライブ、または他の不揮発性ストレージなどのストレージ164が、データまたはプログラム命令のストレージを提供することができる。一実施形態では、ストレージ164は、命令およびデータのより長期の格納を提供し、ストレージ162は、ストレージ164の期間よりも短い期間にわたってだけ要求されることが可能なデータまたは命令のための格納を提供する。コンピュータキーボードまたはマウス、あるいはその両方などの入力デバイス166により、システム150へのユーザ入力が可能になる。ディスプレイまたはプリンタなどの出力168により、システムが、命令、データ、またはその他の情報などの情報をシステム150のユーザに提供することが可能になる。従来のフロッピーディスクドライブまたはCD−ROMドライブなどのストレージ入力デバイス170が、入力172を介して、従来のフロッピーディスクまたはCD−ROM、あるいはコンピュータ命令またはデータをシステム150に運ぶのに使用されることが可能な他の不揮発性記憶媒体などの、コンピュータプログラム製品174を受け入れる。コンピュータプログラム製品174上には、以下に説明するとおり動作するようにコンピュータシステム150を構成するように、プログラム命令、データ、またはその両方として符号化された、フロッピーディスクのケースでは、磁荷、CD−ROMのケースでは、光符号化などの、コンピュータ可読プログラムコード デバイス176が符号化されている。
【0018】
一実施形態では、各コンピュータシステム150は、カリフォルニア州マウンテンビュー所在のサンマイクロシステムズ(商標、以下同)株式会社から市販されるSOLARISオペレーティング システム(商標、以下同)を実行している、従来のサンマイクロシステムズUTRA10ワークステーション(商標、以下同)、ワシントン州レッドモンド所在のマイクロソフト コーポレーション(商標、以下同)から市販されるWINDOWSオペレーティング システム(商標、以下同)のあるバージョン(95、98、Me、XP、NT、または2000)を実行している、テキサス州ラウンドロック所在のデル コンピュータ コーポレーション(商標、以下同)から市販されるような、PENTIUM(商標、以下同)互換パーソナルコンピュータシステム、またはカリフォルニア州キューパーティーノ所在のアップル コンピュータ コーポレーション(商標、以下同)から市販されるMACOSオペレーティング システム(商標、以下同)またはOPENSTEPオペレーティング システム(商標、以下同)、ならびにカリフォルニア州、マウンテンビュー所在のネットスケープ コミュニケーションズ コーポレーション(商標、以下同)から市販されるNETSCAPEブラウザ(商標、以下同)、または前述のマイクロソフトから市販されるINTERNET EXPLORER(商標、以下同)を実行しているMacintoshコンピュータシステム(商標、以下同)であるが、他のシステムが使用されてもよい。
【0019】
次に、図2Aを参照すると、本発明の一実施形態による、ユーザが、コンピュータシステムからの1つまたは複数の通信を認証することを可能にし、コンピュータシステムが、そのユーザを認証することを可能にするためのシステム200が、示されている。以上の機能はともに、本明細書で説明されるが、一実施形態では、以上の機能の一方は、他方を伴わないことも可能である。すなわち、本発明によれば、両方の機能を使用することは必須ではないが、他の諸実施形態は、両方の機能を使用する。
【0020】
システム200は、1つまたは複数のサーバと、1つまたは複数のクライアントとを含み、代表的なサーバ202、および代表的なクライアント260が示されているが、複数のクライアントが、サーバ202に同時に、または異なる時点でアクセスすることも可能であり、複数のサーバが、同時に使用されることも可能である。サーバ202は、コンポーネントのスーパーセットを有するように示され、コンポーネントのスーパーセット、またはそのスーパーセットのサブセットを有して各々が示される、複数のサーバが存在することも可能である。
【0021】
一実施形態では、本明細書で説明されるサーバ202に入る、またはサーバ202から出るすべての通信は、インターネット、またはローカルエリアネットワーク、あるいはその両方などのネットワーク254に結合された通信インタフェース210の入出力208を介して行われる。通信インタフェース210は、イーサネット、TCP/IP、または他の従来の通信プロトコルをサポートする従来の通信インタフェースである。
【0022】
クライアント260に入る、またはクライアント260から出る通信は、通信インタフェース262の入出力258を介して行われ、インタフェース262は、通信インタフェース210と同様の、または同一の、従来の通信インタフェースを含むが、入出力256を介して、従来のキーボード/モニタ/マウス(図示せず)、または他の同様な従来の入出力デバイスに結合される、従来の回路も含むことが可能である。クライアントコンピュータシステム260は、通信インタフェース262の一部でもある入出力258に結合されたモデムを介して、ネットワーク254に結合されることが可能である。
【0023】
(登録)
一実施形態では、登録プロセスは、多くのユーザの各ユーザに関するカスタマイズ情報を識別するように実行されて、ユーザが、以下により詳細に説明するとおり、1つまたは複数のコンピュータシステムからの通信を知覚的に認証することを可能にする。そのような知覚的認証は、1つまたは複数のWebページの外見、それらのWebサイトに付随してもたらされる1つまたは複数のサウンド、匂い、触覚、または味などの、ユーザによる感知が可能なあらゆるものを含むことが可能である。例えば、ユーザの写真が、初期Webサイトログオンページ上に出現し、オプションとして、後続のページ上に出現し、あるいは電子メールメッセージの中で出現して、その通信が真正であることをユーザに示すことが可能である。あるテキストの句が、写真の代わりに、または写真に加えて使用されてもよい。ユーザに知られているサウンドが、以上に加えて、または以上の代わりに使用されてもよい。
【0024】
登録プロセスは、以下に説明するとおり、ユーザの識別子を、ユーザに提供されるカスタマイズ情報に関連付けて、ユーザが、Webサイトの1つまたは複数のページ、電子メール、またはその他の通信などの、コンピュータシステムからの通信を認証することを可能にする。一実施形態では、ユーザは、カスタマイズ情報を提供する、または選択するが、別の実施形態では、システム管理者が、その機能を実行し、次いで、カスタマイズ情報をユーザに知らせる。
【0025】
一実施形態では、ユーザは、従来のブラウザ264、通信インタフェース262、およびネットワーク254を使用して、通信インタフェース210を介して受信されるWebページを求める要求を介してサーバ202にログインし、Webページは、その要求のポート番号に基づき、Webアプリケーション240に提供される。ブラウザ264が、本明細書で説明するとおり使用されるが、他の諸実施形態は、オペレーティングシステムソフトウェア、サーブレット、または他のアプリケーションソフトウェアを使用することも可能である。
【0026】
Webアプリケーション240は、サーバ202(または本明細書で説明されるサーバ202と同様の、または同一の異なるサーバ)上のセキュア ソケット レイヤ ポートにユーザのブラウザをリダイレクトし、ユーザのブラウザ264は、セキュア ソケット レイヤ接続を介して要求を再送し、その要求を、通信インタフェース210は、暗号化通信マネージャ212に供給する。暗号化通信マネージャ212は、従来のSSL処理技術を使用して、接続を確立し、その要求を受け取り、その要求を解読し、解読された要求をWebアプリケーション240に供給する。
【0027】
Webアプリケーション240は、ファイルストレージ266の中に格納されている可能性があるパーシステント ファイル(例えば、クッキー、Flashローカル共有オブジェクト、または他の類似のファイル)を読み取ろうと試み、そのように格納されている場合、接続の一環として、ブラウザ264によってサーバ202に提供されている。一実施形態では、パーシステント ファイルが存在しない場合(あるいは、別の実施形態では、すべてのケースで)、Webアプリケーション240は、登録マネージャ222によって提供される登録ページへのリンクを含む、Webページ(以下に説明するとおり、ユーザがログインすることを許すことも可能な)を構築する。ユーザが、そのリンクをクリックした場合、ユーザのブラウザ264は、前述したSSL接続、または異なるSSL接続を使用することが可能な登録ページを要求する。通信インタフェース210は、その要求を受け取り、暗号化通信マネージャ212経由でSSL接続を介して、その要求を登録マネージャ222に供給し、登録マネージャ222は、通信インタフェース210、ならびにSSL接続を使用する暗号化通信マネージャ212を介して、そのページを提供する。
【0028】
ユーザは、ユーザの身元の十分な証拠を提供して、ユーザが、自称どおりの人物であることを示すことができる。このプロセスは、登録マネージャ222によって実施されるが、多種多様な形で実行されることも可能である。
【0029】
一実施形態では、登録マネージャ222によって提供されるWebページは、登録のために、その当事者の身元を検証した個人のユーザ識別子および/またはパスワードを要求し、このユーザ識別子および/またはパスワードは、登録マネージャ222が、データベース224の中に以前に格納しており、提供されたユーザ識別子および/またはパスワードが、登録マネージャ222によって、許可されたユーザ識別子およびパスワードのセットと比較されて、ユーザが、ユーザの身元の十分な証拠を提供しているかどうかを判定することができるようになっている。別の実施形態では、登録マネージャ222は、郵便、ファックス、または電話などのセッション外手段を介して、または別のWeb接続もしくは電子メールメッセージを介してユーザに供給されており、登録マネージャ222によって以前に生成され、ユーザに供給されている1つまたは複数の識別子の別のセットを、ユーザに求める。
【0030】
一実施形態では、登録マネージャ222によって提供されるWebページは、ユーザの識別子、およびオプションとしてパスワードを選択する、または入力するようにユーザに促すだけでなく、ユーザの名前などの、第三者によって検証されることが可能な情報、ならびに1)ソーシャルセキュリティ番号(社会保障番号)、2)クレジット情報(例えば、クレジットカードの、または金融機関における他の口座の、最後のいくつかの数字、そのような口座に記載された最近の取引金額に関わるドル金額または商人)、3)運転免許証情報、または4)第三者によって検証されることが可能な他の情報のいずれか、またはすべても入力するように促し、登録マネージャ222は、CGIなどの従来の技術を介して、そのような情報を受け取る。登録マネージャ222は、通信インタフェース210およびネットワーク254を介して、そのような第三者のコンピュータ、または他のシステムと通信して、提供された情報の一部、またはすべてを検証する。第三者が、第三者に提供された情報を検証する場合、登録マネージャ222は、ユーザが、ユーザの身元の十分な証拠を提供していると見なし、したがって、登録マネージャ222は、ユーザが、以下に説明するとおり、登録することを続けることを許し、さもなければ、登録マネージャ222は、ユーザが、登録することを続けることを許さない。
【0031】
Webサイトのセキュリティ ニーズに依存して、ユーザは、そのような他のシステムによって提供される情報なしに、身元のそのような十分な証拠を提供することができる。十分な証拠は、ユーザの識別子およびパスワードであることが可能であるが、母親の旧姓、あるいはユーザ、または別のソースから以前に収集されており、データベース224の中に格納されている他の情報であってもよい。登録マネージャ222によって1つまたは複数の質問が、ランダムに選択され、ユーザに与えられ、登録マネージャが、応答を受け取り、同一のWebページフォームを介して、または登録マネージャによって提供される異なるWebページフォームを介して、ユーザによって登録マネージャ222にやはり提供される、ユーザ識別子(およびオプションとして、パスワード)と対応するデータベース224の中のレコードに対する質問(例えば、ペットの名前)と、それらの応答を比較する、チャレンジ−応答の構成が、使用されてもよい。別の実施形態では、要求に応答して、登録マネージャ222が生成するWebページフォームを介して、ユーザによって登録マネージャ222に提供されるユーザ識別子、またはユーザ識別子とパスワードが、ユーザの身元の十分な証拠であることが可能である。
【0032】
さらに別の実施形態では、ユーザは、登録マネージャ222に対して自らの認証を行う必要がなく、そのような実施形態では、ユーザの身元の十分な証拠は、その当事者が、特定のIPアドレスまたはMACアドレスから、ある時刻にWebサイトに接続されている、または、別の形で、従来の技術を使用して登録マネージャ222によって検出されるとおりに接続されているという事実であり、あるいはそのような情報が、他の情報に加えて使用されて、ユーザの身元の十分な証拠を供給する。
【0033】
その時点で、ユーザは、ユーザの身元の十分な証拠を提供していると見なされることが可能である。しかし、ユーザが、ユーザの身元の十分な証拠を供給するプロセスを完全にするのに、一実施形態では、登録マネージャ222が、セッション外手段を介して、例えば、電話接続または電子メールを介して、パスワードを供給することが望ましい可能性がある。その場合、ユーザは、そのパスワードを入力して、ユーザの身元の十分な証拠を供給するプロセスを完了することができる。セッション外手段は、ユーザが、登録マネージャ222と通信するのに使用している手段以外の任意の通信手段である。
【0034】
一実施形態では、登録マネージャ222、登録マネージャ222は、ユーザの識別子に対応するレコードの中で口座データベース248から、ユーザが、自身の認証をさらに行うことを可能にする1回限りのユーザ パスワードを供給するのに使用されることが可能なセッション外通信手段識別子(例えば、電話番号または電子メールアドレス)を取り出す。別の実施形態では、登録マネージャ222は、前述した同一のWebページ上、または異なるWebページ上で、セッション外通信手段の識別子を求める入力要求を提供し、登録マネージャ222は、そのような識別子を受け取る。口座データベース248は、数名のユーザの各ユーザに関する口座情報を保持している従来のデータベースである。
【0035】
登録マネージャ222は、次に、パスワードを生成し、このパスワードを、登録マネージャ222は、識別子に対応するセッション外の形で、通信インタフェース210を介してか、またはセッション外の方法で通信するのに使用されることが可能な入出力223を介して提供し、登録マネージャ222は、適切なインタフェースを含む。
【0036】
例えば、セッション外の方法は、識別子が、電話番号である電話機であることが可能であり、登録マネージャ222における適切なインタフェースは、従来の電話インタフェース、および従来のテキスト−音声コンバータ、または従来の音声応答システムである。
【0037】
登録マネージャ222は、次に、Webページを介してユーザに、前述したとおり、登録マネージャ222が提供したパスワードを入力するよう促し、ユーザがそれに応じると、登録マネージャ222は、ユーザからパスワードを受け取り、そのパスワードを、登録マネージャ222が、前述したセッション外手段を使用して提供したパスワードと比較する。その2つのパスワードが一致した場合、登録マネージャ222は、そのユーザが、ユーザの身元の十分な証拠を提供したものと見なす。その2つのパスワードが一致しない場合、またはパスワードが、前述したとおり提供された後、十分な期間内に、ユーザが、パスワードを提供しない場合、登録マネージャ222は、そのユーザが、ユーザの身元の十分な証拠を提供したとは見なさず、ユーザが、以下で述べるようにカスタマイズ情報を登録することを許さない。一実施形態では、この形で提供されるパスワードは、1回限りのユーザパスワードであり、このパスワードを、登録マネージャ222は、このパスワードが、前述したとおり入力された後、ユーザが変更することを即時に要求し、変更されたパスワードを、口座データベース248の中の、ユーザのレコードの中に格納する。
【0038】
以上のアプローチの実施例として、登録マネージャ222は、暗号化通信マネージャ212を介してユーザに、ユーザの運転免許証番号、ならびにユーザのユーザ識別子および電子メールアドレスを提供するよう促すことができる。登録マネージャ222は、ユーザ識別子および運転免許証番号を、CGIなどの従来の技術を介して受け取り、従来のデータベースであることが可能な、口座データベース248の中の、そのユーザ識別子に関して格納された名前およびアドレスを取り出し、そのような名前およびアドレスは、システム管理者によってあらかじめ格納されている。登録マネージャ222は、次に、その名前、アドレス、および運転免許証番号をユーザの在住の州における許可機関に提供し、州の許可機関から、その運転免許証番号が、名前およびアドレスと一致するという指示を受け取る。その結果、登録マネージャ222は、ユーザが供給した電子メールアドレスを介して、ユーザにパスワードを1回限りのパスワードとしてメール送信し、ユーザが、前述したとおり、登録プロセスを続けることを許す。ユーザは、そのパスワードを使用してログインして、ユーザの身元の十分な証拠を提供するプロセスを完了させ、登録マネージャ222は、次に、暗号化通信マネージャ212を介してパスワードを変更するようユーザに促し、新たなパスワードを、ユーザ識別子に対応するレコードの中で口座データベース248の中に格納する。
【0039】
前述したとおり、登録マネージャ222は、ユーザから身元の十分な証拠を受け取ると、データベース224の中で新たなレコードを構築し、前述したとおり受け取られたユーザ識別子を、データベース224の中の、そのユーザに関するレコードの中に格納することを、その識別子が、そのユーザに関して既に存在している可能性があるそのようなレコードの中に既に格納されていない場合、行う。
【0040】
(ユーザが、カスタマイズ情報を提供する)
ユーザが、ユーザの身元の十分な証拠を提供した後、登録マネージャ222は、カスタマイズ情報の事前定義されたリストから選択するよう、またはカスタマイズ情報を提供するようユーザに促し、カスタマイズ情報の一部またはすべては、ユーザが、機密情報、または他の情報をWebサイトに提供するように要求される場合、またはユーザが、電子メールメッセージ、またはそのメッセージの送信元などの、通信を認証することを所望することが可能な場合に、ユーザに提示されることが可能である。前述したとおり、別の実施形態では、システム管理者が、ユーザに関するカスタマイズ情報を選択する、または提供することができる。
【0041】
カスタマイズ情報は、Webサイトが真正であることをユーザが認識するのに使用することができるものであれば何であってもよい。カスタマイズ情報は、以下のいずれかからのいくつであってもよい。すなわち、写真、グラフィック、色、レイアウト、メッセージ、サウンド、匂い、または触覚によって感知されることが可能であれば何であれ。カスタマイズ情報は、リストから選択されても、ユーザ自身のデジタル写真などの、Webサイトの真正性を識別するのに情報を使用するユーザによって提供されるオリジナルな情報であってもよい。カスタマイズ情報は、静的でなくてもよい。すなわち、カスタマイズ情報は、そのユーザのカスタマイズ情報として、そのような情報が、前述したとおり、提供される際に、「@date」が、その日の日付で置き換えられる、「Today is @date」、または次の5月5日までの日数が、「@May−Today」に代入される、「Only(@5May−today)days until your birthday」のような決り文句であってもよい。
【0042】
登録マネージャ222は、ユーザが、前述の項目、または他の同様な情報のいずれかからのいつくでも選択し、または提供し、次いで、それらの項目、またはそれらの項目の指示を、従来のデータベースであることが可能であり、口座データベース248と同一であってもよいデータベース224の中の、そのユーザに関するデータベース レコードの中に格納することを可能にするWebページを提供する。さらに別の実施形態では、登録マネージャ222は、そのようなカスタマイズ情報を生成し、または選択し(すなわち、ランダムに)、その情報をユーザに提供し、その情報をデータベース224の中のデータベース レコードの中に格納する。カスタマイズ情報は、前述したとおり、Webページを介して、またはセッション外で、登録マネージャ222によって提供されてもよい。
【0043】
一実施形態では、登録マネージャ222は、暗号化通信マネージャ212を介してカスタマイズ情報を提供し、または求めて、受け取り、暗号化通信マネージャ212は、SSL暗号化通信などのセキュリティで保護された通信チャネルを開始し、使用して、カスタマイズ情報を提供するか、または求めて、受け取り、他の人々が、カスタマイズ情報を傍受することを防止する。
【0044】
(クッキーが、暗号化され、署名され、格納される)
また、登録マネージャ222は、署名済みの暗号化されたパーシステント ファイルをユーザのコンピュータシステム上に格納することも開始する。そのような格納は、ユーザが、前述したとおり、ユーザの身元の十分な証拠を提供した後のいずれの時点で行われてもよく、前述したカスタマイズ情報の識別の前、後、またはその識別の代わりに実行されてもよい。
【0045】
パーシステント ファイルを構築し、格納するのに、登録マネージャ224は、前述したとおり、データベース224のユーザのレコードの中に格納されたユーザの識別子をパーシステント ファイル ビルダ(persistent file builder)230に提供する。パーシステント ファイル ビルダ230は、ユーザ識別子をパーシステント ファイルの中に含め、以下にそれぞれより詳細に説明する、パーシステント ファイル ビルダ230が、登録マネージャ222から受け取る、通信インタフェースのIPアドレスまたはMACアドレスなどの、他のステータス情報、またはデジタル証明書をパーシステント ファイルに追加することができ、その識別子、およびその他の情報をパーシステント ファイル サイナ(persistent file signer)232に提供し、サイナ232は、秘密のハッシュ キーを使用して、その識別子に、さらに、オプションとして、その他の情報にハッシングを行うことなどにより、従来の暗号技術を使用してパーシステント ファイルに署名して、本明細書で、パーシステント ファイル署名と呼ばれるハッシュ結果をもたらす。パーシステント ファイル サイナ232は、パーシステント ファイルとひとまとめにして呼ばれる、パーシステント ファイル署名、識別子、ならびに、オプションとして、その他の情報をパーシステント ファイル インクリプタ(persistent file encryptor)234に提供し、インクリプタ234は、公開キー/秘密キー ペアの公開キーを使用する、または対称キーを使用するなど、従来の暗号化技術を使用して、パーシステント ファイルを暗号化する。パーシステント ファイル インクリプタ234は、次に、ブラウザ264が、暗号化通信マネージャ212、通信インタフェース210、ネットワーク254、通信インタフェース262を介して、オプションとして、前述したとおり、登録のために使用される接続などの、SSL接続を使用して、ユーザのクライアントコンピュータシステム260上のファイル ストレージ266の中に、暗号化されたパーシステント ファイルを格納するようにさせる。ファイル ストレージ266は、従来のメモリまたはディスク ストレージであることが可能であり、パーシステント ファイルの格納のために使用されるそのようなメモリまたはストレージの一部分であることが可能であり、クライアントコンピュータシステム260の一部であることが可能であり、あるいはスマートカード、USBメモリ トークン(テキサス州ラウンドロック所在のデル コンピュータシステムズ(商標、以下同)から市販されるUSB Memory Keyなどの、USBポートを介してパーソナル コンピュータとインタフェースをとるポータブル メモリ デバイス)などの取り外し可能なデータベースの中に存在することが可能である。
【0046】
クッキーが、本明細書で説明したとおり、パーシステント ファイルとして使用されてもよいが、他の諸実施形態は、他のタイプの暗号化されたファイル、証明書、または他の類似のデータ構造を使用することができる。例えば、以下により詳細に説明するとおり、Flash共有オブジェクトが、パーシステント ファイルとして、例えば、登録マネージャ222によって、例えば、登録マネージャ222が供給するWebページの一部として、Flashムービーを「.swf」ファイルの形態で供給して、使用されてもよい。Flashムービーは、パーシステント ファイル インクリプタ234から、本明細書で説明するパーシステント ファイルと同様の、または同一の形態で情報を受け取り、その情報をFlashローカル共有オブジェクトとして、ファイル ストレージ266の中に格納することができる。Flash共有オブジェクトおよびローカル共有オブジェクトは、Webサイト、Macromedia.com(ドメイン名及び商標、以下同)において説明されている。
【0047】
一実施形態では、ユーザのクライアントコンピュータシステム260は、初期登録のために使用される必要がない。代わりに、登録プロセスは、2つの部分で実行されることが可能である。すなわち、第1の部分は、ユーザが、前述したとおり、既知のIPアドレスを有する特定のブラウザ セットから、カスタマイズ情報を選択することを可能にし、またはシステム管理者ユーザ、識別子、およびパスワードを使用して認証される。第2の部分は、ユーザが、ユーザ自身のブラウザから、前述したとおり、ユーザの身元の証拠を使用して、ログインすることを可能にし、その時点で、暗号化されたパーシステント ファイルは、ユーザのクライアントコンピュータシステム260上に置かれる。以下により詳細に説明するとおり、ユーザは、他のコンピュータシステムを使用して、前述したとおり、コンピュータシステムに対してユーザ自身の認証を行うことができる。
【0048】
(コンピュータシステムからの通信および/またはユーザの身元を認証すること)
ユーザは、本発明を使用して、例えば、サーバ202によって提供されるWebページを認証して、コンピュータシステムからの通信を認証することができ、サーバ202などの同一のコンピュータシステム、または異なるコンピュータシステムは、本発明を使用して、本明細書で説明するとおり、ユーザを認証することができる。例えば、前述したとおり、パーシステント ファイルを受け取った後、ユーザが、WebサイトからWebページを要求する際、ユーザは、ユーザのWebブラウザ264(本明細書で使用されるところでは、従来のWebブラウザ、または別のアプリケーション プログラムであることが可能である)を使用して、要求をサーバ202に送信する。要求は、ユーザが、WebブラウザにURLを入力すること、Webページ上、電子メール上、またはアラート上のリンクをクリックすることにより、または別のWebサイトからのリダイレクト コマンドにより、受け取られることが可能である。ブラウザ264は、通信インタフェース262および210、ならびにネットワーク254を介して、要求をサーバ202に送信する。通信インタフェース210は、本明細書で説明するとおりに動作するように変更された、従来のWebアプリケーション プログラムであるWebアプリケーション240に、その要求を転送する。Webアプリケーション240は、以下に説明するとおり、ユーザを認証すること、ユーザが、Webサイトを認証することを可能にするカスタマイズ情報を提供すること、またはその両方ができる。
【0049】
ユーザを認証するのに、Webアプリケーション240は、ファイル ストレージ266からブラウザ264によって提供される、暗号化されたパーシステント ファイルを読み取り、そのようなパーシステント ファイルは、本明細書で説明するとおり、ファイル ストレージ266の中に入れられている。Webアプリケーション240は、暗号化されたパーシステント ファイルをパーシステント ファイル バリデータ(persistent file validator)242に送り、バリデータ242は、その暗号化されたパーシステント ファイルを解読し、次に、パーシステント ファイルの残りの部分から署名を分離する。パーシステント ファイル バリデータ242は、その署名が、パーシステント ファイルの残りの部分と対応することを検証し(例えば、署名を構築するのに使用されたのと同一のハッシュ アルゴリズムおよびハッシュ キーを使用して、パーシステント ファイルの残りの部分を再ハッシングし、そのハッシュ結果を署名と比較することにより)、パーシステント ファイル バリデータ242が、署名を介してユーザを認証した(例えば、バリデータ242が生成したハッシュ結果が、署名と一致した)場合、パーシステント ファイルの中に格納されることが可能なユーザの識別子、およびその他の情報をWebアプリケーション240に提供するか、あるいはパーシステント ファイルが、有効でないことを示す(例えば、パーシステント ファイル バリデータ242が生成したハッシュ結果が、署名と一致しない場合)。
【0050】
一実施形態では、前述した登録プロセス中、登録マネージャ222は、ユーザのコンピュータシステムが、静的IPアドレスに関連する方法を介して、例えば、DSLモデムまたはケーブル モデムを介してインターネットにアクセスするかどうかを明らかにするよう、ユーザに促す。ユーザが、そのように示した場合、登録マネージャ222は、通信インタフェース262のIPアドレスをパーシステント ファイル ビルダ230に提供し(または、無条件に、MACアドレスを提供し)、ビルダ230は、署名済みの暗号化されたパーシステント ファイルの中に、ユーザのIPアドレス(またはMACアドレス)、あるいはIPアドレスが静的ではないという指示を含める。この実施形態では、Webアプリケーション240は、要求の中に含まれる送信元IPアドレスも、パーシステント ファイル バリデータ242に提供する。パーシステント ファイルが、静的IPアドレスを含むことをパーシステント ファイルが示す場合、受信されたユーザの要求の送信元IPアドレス(またはMACアドレス)が、パーシステント ファイルの中のIPアドレス(またはMACアドレス)と一致しない場合、パーシステント ファイル バリデータ242は、ユーザ識別子と署名が、前述したとおり、一致した場合でも、パーシステント ファイルが有効でないことを示す。
【0051】
一実施形態では、パーシステント ファイル バリデータ242は、パーシステント ファイルが、有効なデジタル証明書を有することも要求し、この証明書を、パーシステント ファイル バリデータ242は、従来の技術を使用して検証する。デジタル証明書が有効でない場合、パーシステント ファイル バリデータ242は、前述したとおり、他の有効性試験に合格した場合でも、パーシステント ファイルが有効でないことを示す。デジタル証明書は、前述した登録プロセス中に、署名済みの暗号化されたパーシステント ファイルの中に含めるために、登録マネージャ222によってパーシステント ファイル ビルダ230に提供されることが可能である。
【0052】
パーシステント ファイルが有効でないことをパーシステント ファイル バリデータ242が示した場合、Webアプリケーション240は、そのWebサイトの一部またはすべてへのアクセスを拒否することが可能である。示さなかった場合、Webアプリケーション240は、ユーザ識別子を受け取り、そのユーザ識別子を使用して、Webアプリケーション240を動作させ、かつ/または本明細書で説明するとおり選択されたカスタマイズ情報を、ユーザに提供する。
【0053】
一実施形態では、Webアプリケーション240は、ユーザから受け取られたユーザ識別子を、パーシステント ファイル バリデータ242から受け取られたユーザ識別子と比較する。それらのユーザ識別子が一致した場合、Webアプリケーション240は、要求されたWebページに、本明細書で説明するとおり、カスタマイズ情報を提供する。それらのユーザ識別子が一致しなかった場合、Webアプリケーション240は、要求されたWebページ、およびカスタマイズ情報へのアクセスを拒否する。一実施形態では、ユーザは、前述したとおり、ユーザが、ユーザ識別子を入力するのと同時に、あるいは以下により詳細に説明するとおり、後の時点で、ブラウザ264を使用して、パスワードを入力することも行う。また、一実施形態では、Webページ240は、そのパスワードを、口座ストレージ248の中に格納されている、そのユーザに関するパスワードと比較して、ユーザから受け取られたパスワードが、そのユーザ識別子に関して格納されているパスワードと一致しない場合、要求されたWebページ、およびカスタマイズ情報へのアクセスを拒否することも行う。
【0054】
カスタマイズ情報は、Webアプリケーション240によって提供されるすべてのWebページとともに、一部のWebページとともに、機密情報をユーザに提供するように表示されるWebページとともに、ユーザから何らかの情報を要求するのに使用されるWebページとともに、またはユーザから機密情報を要求するのに使用されるWebページとともに、あるいは以上の一部またはすべての任意の組み合わせとともに提供されることが可能である。機密情報には、Webサイトの事業者、またはユーザの金銭上のリソース、または他のリソースへのアクセスを得るのに使用されることが可能な情報(例えば、前述したパスワード)、または他の人々が知ることをユーザが望まない可能性がある他の情報が含まれることが可能である。
【0055】
カスタマイズ情報は、前述したWebページの一部として提供されても、別個に提供されてもよい。前述したWebページのいずれかとともにカスタマイズ情報を提供するのに、Webアプリケーション240は、前述したとおり受け取られたユーザ識別子、およびカスタマイズ情報が除外されており、オプションとして、Webページの中のどこにどのようにカスタマイズ情報を挿入すべきかを記述するWebページの中の1つまたは複数の指示を伴う、Webページのコンテンツを、ユーザのIPアドレス、ならびにWebページをアドレス指定するのに使用されることが可能な他の情報とともに、カスタマイズ情報プロバイダ244に提供する。
【0056】
一実施形態では、カスタマイズ情報プロバイダ244は、データベース224から、ユーザ識別子に対応するレコードの中に格納されたカスタマイズ情報を取り出し、Webページとともに、またはWebページの一部として受け取られた命令に従って、Webアプリケーション240からプロバイダ244が受け取るWebページに、そのカスタマイズ情報を追加することにより、またはWebページの中のある場所で、またはWebページの四隅、もしくは四隅近くなどの、複数の場所で、そのカスタマイズ情報を提供することにより、カスタマイズ情報を提供し、プロバイダ244が受け取るユーザのIPアドレスを使用して、プロバイダ244が受け取るいずれかのWebページとともに、カスタマイズ情報をユーザに提供する。カスタマイズ情報は、1つまたは複数のタグまたはリンクを介して、Webページの中に組み込まれる、またはカスタマイズ情報プロバイダ244によって提供されること、あるいはFlashムービーまたはJavascriptアプレット(商標、以下同)などの、コンピュータコードの中に含まれることが可能である。タグまたはリンクは、提供されるべきカスタマイズ情報を明らかにし、サーバ202などのサーバを明らかにすることができ、サーバは、以下により詳細に説明するとおり、1つまたは複数のタグまたはリンクに対応する情報を表示しようと試みるブラウザ264によって行われる要求に応答して、カスタマイズ情報を提供することができる。一実施形態では、カスタマイズ情報プロバイダ244は、1つまたは複数のタグまたはリンクの一部の中に含まれる識別子を生成し、データベース224の中にユーザに関するカスタマイズ情報に関連付け、この識別子を、以下により詳細に説明するとおり、カスタマイズ情報サーバ238は、カスタマイズ情報に関するいずれの要求を満たすのにも使用する。カスタマイズ情報プロバイダ244によって提供されるタグ、リンク、またはコンピュータコードは、この同一のコードを含むように構築される。カスタマイズ情報、またはカスタマイズ情報への参照を有するページは、暗号化通信マネージャ212により、または以下に説明するとおり、セッション外で提供されるセキュリティで保護された接続を介して、提供されることが可能である。
【0057】
一実施形態では、カスタマイズ情報は、ユーザの移動電話機に呼び出しを行い、ユーザの音声の記録、好みの曲、事前記録されたメッセージを再生することによって、またはそれ以外の形でWebページが真正であることをユーザに知らせることによるなど、セッション外でカスタマイズ情報プロバイダ244によって提供されることが可能である。セッション外カスタマイズ情報は、カスタマイズ情報プロバイダ244が、適切なインタフェースを含んで、従来の電話線に結合されることが可能な出力243を介して提供されることが可能である。
【0058】
カスタマイズ情報プロバイダ244が、1つまたは複数のタグ、リンク、またはコードを介してカスタマイズ情報を提供する場合、ユーザのブラウザ264は、その1つまたは複数のタグ、リンク、またはコードの中に符号化されたカスタマイズ情報の各インスタンス(instance)に対応する要求を送信することにより、ユーザにカスタマイズ情報をレンダリングしようと試みる。要求は、カスタマイズ情報サーバ238のアドレス、ならびにユーザに提供されるべき特定のカスタマイズ情報を識別するコードを含む。コードは、パラメータとして、ファイル名として、またはそれ以外の形でリンクの中に埋め込まれることが可能であり、そのようなコードは、ブラウザ264によって要求とともに送信される。カスタマイズ情報サーバ238が、その要求を受信し、データベース224を探索して、そのコードに対応するカスタマイズ情報を探し出すことにより、そのコードを使用する。カスタマイズ情報サーバ238は、次に、そのコードに対応するカスタマイズ情報をブラウザ234に提供し、ブラウザ234は、本明細書で説明するとおり、そのカスタマイズ情報をユーザに表示する。カスタマイズ情報サーバ238は、本明細書で説明するとおり、サーバ238が提供するすべてのカスタマイズ情報を、通信インタフェース210を介して直接にか、または、暗号化されたSSLセッションを使用する通信インタフェースを介してそのような情報を提供する暗号化通信マネージャ212も介して、提供することができる。以下により詳細に説明するとおり、カスタマイズ情報サーバ238は、ユーザ以外の相手へのカスタマイズ情報の開示を防止するのに役立つように、そのようなカスタマイズ情報を提供する前に、パーシステント ファイルを使用することによってユーザを認証することができる。しかし、カスタマイズ情報に対応するコードが、ユーザのユーザ識別子と無関係であり、カスタマイズ情報自体が、ユーザの身元を開示しない場合、いずれのそのような開示のリスクも、わずかであることが可能である。
【0059】
ユーザが、ブラウザ264、ならびに入出力256に結合されたモニタを介して、またはセッション外などで、カスタマイズ情報を受け取ると、ユーザは、その情報を使用して、Webサイトの認証を行い、カスタマイズが、欠落している場合、または前述したとおりユーザが選択した、または提供したカスタマイズ情報と異なる場合、機密情報などの情報を提供するのを差し控えること、またはそのWebサイトを使用することを控えることができる。カスタマイズ情報が、登録されたもの、または別の形で、本明細書で説明するとおり予期されるものであった場合、ユーザは、Webアプリケーション240によって提供されるWebページを介して機密情報を提供すること、それらのWebページから受け取られた情報を信じること、またはその両方ができる。
【0060】
カスタマイズ情報は、各ユーザに関する単一のインスタンスを有するものとして本明細書で説明されているが、カスタマイズ情報の複数の異なるインスタンスが、ユーザらの数名または全員の各々に関して登録されて、カスタマイズ情報の各インスタンスが、異なる意味を有してもよく、例えば、1つのインスタンスは、ユーザが、セキュリティで保護された情報を提供してもOKであることを意味することが可能であり、同一のユーザに関するカスタマイズ情報の異なるインスタンスは、ページ上の情報が、真正のソースから提供されたものとして検証されていることを意味する。カスタマイズ情報の各インスタンスを、ユーザの識別子、ならびにそのインスタンスの識別子に関連付けることが、本明細書で説明するとおり実行されることが可能であり、ユーザに関するカスタマイズ情報の各インスタンスは、そのユーザに関するその他のインスタンスとは知覚的に異なることが可能である。Webアプリケーション240が、次に、カスタマイズ情報プロバイダ244に、ユーザの識別子、ならびに提供されるべきカスタマイズ情報のインスタンスの識別子を提供し、カスタマイズ情報プロバイダ244は、ユーザの識別子、およびインスタンスの識別子を使用して、各ユーザに関するカスタマイズ情報の単一のインスタンスに関して前述したのと同一の形で、カスタマイズ情報の適切なインスタンス、またはそのようなインスタンスへの参照を取り出し、ユーザに提供する。
【0061】
(ユーザは、事前確認されることが可能である)
ユーザは、ユーザが、ブラウザ264を使用して、機密情報をユーザが提供することを要求するページへのサイトに移動した際に、ユーザのクライアントコンピュータ260に単に物理的アクセスを有し、そのサイトに移動する誰かに、カスタマイズ情報を提供しないように、ユーザのカスタマイズ情報が提供されることを望まない可能性がある。このため、一実施形態では、カスタマイズ情報は、ユーザが、有効なユーザ識別子をWebアプリケーション240に提供するまで、提供されない。
【0062】
図5Aは、本発明の一実施形態によるWebアプリケーション240をより詳細に示す。次に、図2Aおよび図5Aを参照すると、そのような実施形態では、ユーザが、ブラウザ264を使用して、Webアプリケーション240によって運用されるWebサイトに移動すると、Webアプリケーション240のユーザ名プロンプタ(user name prompter)510が、ユーザのユーザ識別子は要求するが、ユーザのパスワード、または他の機密情報は要求しないWebページをブラウザ264に提供する。ユーザのカスタマイズ情報は、このページとともには、ブラウザ264に供給されない。ユーザは、ブラウザ264を使用して、ユーザ識別子をWebアプリケーション240に供給する。Webアプリケーション240のユーザ識別子プロンプタ510は、CGIなどの従来の技術を介して、ユーザ識別子を読み取り、暗号化されたパーシステント ファイルを制限する。
【0063】
ユーザ識別子プロンプタ512は、暗号化されたパーシステント ファイル、ならびに、オプションとして、ユーザのIPアドレスまたはMACアドレスをパーシステント ファイル バリデータ242に送り、バリデータ242は、パーシステント ファイルを検証し、この検証は、オプションとして、前述したとおり、IPアドレスもしくはMACアドレス、および/または証明書を検証することを含む。パーシステント ファイル バリデータ242は、パーシステント ファイルの残りの部分に対応する署名を検証し(例えば、署名を構築するのに使用されたのと同一のハッシュ アルゴリズムおよびハッシュ キーを使用して、パーシステント ファイルの残りの部分を再ハッシングし、そのハッシュ結果を署名と比較することにより)、パーシステント ファイルが、有効であることを示すか、またはパーシステント ファイルが有効でないことを示す(例えば、パーシステント ファイル バリデータ242が生成したハッシュ結果が、署名と一致しない場合、または、オプションとして、ユーザ識別子プロンプタ510から受け取られたIPアドレスまたはMACアドレスが、パーシステント ファイルの中に格納されているIPアドレスまたはMACアドレスと一致しない場合、そのようなIPアドレスが、静的であることが示される場合、あるいは証明書が、従来の技術を使用して適切に認証されることが可能でない場合)。パーシステント ファイル バリデータ242は、パーシステント ファイル バリデータ242が、署名を介してユーザを認証した場合(例えば、バリデータ242が生成したハッシュ結果が、署名と一致し、オプションとして、IPアドレスまたはMACアドレスが、一致し、かつ/または証明書が、認証された場合)、パーシステント ファイルからのユーザの識別子、ならびにパーシステント ファイルの中に格納されていることが可能な他の情報をユーザ識別子プロンプタ510に提供する。
【0064】
パーシステント ファイルが有効でないことをパーシステント ファイル バリデータ242が示した場合、ユーザ識別子プロンプタ510は、要求されたWebページを含め、Webサイトの一部またはすべてへのアクセスを拒否することができる。示さなかった場合、ユーザ識別子プロンプタ510は、パーシステント ファイル バリデータ242からユーザ識別子を受け取り、ユーザによって供給されたユーザ識別子を、パーシステント ファイル バリデータ242から受け取られたユーザ識別子と比較し、その2つのユーザ識別子が一致しなかった場合、ユーザ識別子プロンプタ510は、そのWebサイトの一部またはすべてへのアクセスを拒否することができる。
【0065】
それらのユーザ識別子が一致した、あるいは、パーシステント ファイルが有効であるという指示を受け取った後、マッチングが実行されなかった場合、ユーザ識別子プロンプタ510は、パスワード プロンプタ512にシグナルし、プロンプタ510が受け取ったユーザのユーザ識別子を提供する。シグナルされると、パスワード プロンプタ512は、ユーザ識別子、ならびにパスワードをユーザに求めるWebページを、前述したカスタマイズ情報プロバイダ244に提供する。カスタマイズ情報プロバイダ244は、ユーザ識別子を使用して、前述したカスタマイズ情報データベース244からカスタマイズ情報を要求し、受け取られたカスタマイズ情報を、直接に、セッション外で、あるいは前述した1つまたは複数のリンク、タグ、またはコードを介して、ブラウザ264に提供し、Webページは、パスワード、または他の機密情報を求める入力要求を含む。
【0066】
ユーザは、このようにして受け取られたカスタマイズ情報を使用して、機密情報(すなわち、パスワード)を要求しているWebサイトを認証して、そのカスタマイズ情報が、そのWebサイトから予期されるカスタマイズ情報に対応するとユーザが考えるかどうかに基づき、パスワードなどの機密情報を提供するか、またはそのような機密情報を提供しないことができる。ユーザがそのように考える場合、ユーザは、ブラウザ264を介して、パスワードを提供し、パスワード プロンプタ512が、CGIなどの従来の技術を使用して、そのパスワードを受け取り、そのパスワードを、前述したとおり受け取られたユーザ識別子に関する格納されたパスワードまたは口座データベース248と比較することなどにより、従来の技術を使用して、そのパスワード検証する。パスワードが一致した場合、パスワード プロンプタ512は、要求されたWebページを含め、Webサイトの残りの部分の一部またはすべてへのアクセスを許す。
【0067】
(ユーザは、代替のコンピュータシステムを、すなわち、ローミングを使用することができる)
一実施形態では、ユーザは、1つのクライアントコンピュータシステム261を使用して、最初に登録し、その後、異なるクライアントコンピュータシステム260を使用して、サーバ202を使用しようと試みることができる。図2Aは、クライアントコンピュータシステム260の諸要素262〜268と同様の、または同一の諸要素を含むクライアントコンピュータシステム261を示す。ユーザが、前述したとおり、クライアントコンピュータシステム261を使用して、最初に登録し、その後、前述したとおり、クライアントコンピュータシステム260を使用して、Webアプリケーション240から情報を要求しようと試みた場合、パーシステント ファイルは、前述したとおり、ユーザが登録した際に、クライアントコンピュータシステム261のファイル ストレージの中に格納されており、ファイル ストレージ266の中には存在しない。その結果、ユーザは、前述したとおり、ログインすることを許されないか、カスタマイズ情報を見ることを許されないか、またはその両方を許されない。
【0068】
そのような実施形態では、Webアプリケーション240は、ログインするのにユーザが使用しているクライアントコンピュータシステム260からのローミングを手配することを、ユーザが所望することを明らかにするようユーザに促す。これは、前述したとおり、ユーザが、ユーザのユーザ識別子を供給するのに使用するページ上のチェックボックスを介して実行されてもよく、あるいはWebアプリケーション240が、前述したとおり、使用するためのパーシステント ファイルを探し出すことができない場合に、自動的に実行されてもよい。ユーザまたはWebアプリケーション240が、そのように明らかにした場合、Webアプリケーション240は、ユーザを、登録マネージャ222によって提供されるWebページにリダイレクトする。
【0069】
登録マネージャ222は、本明細書で説明するとおり、ユーザが登録することを可能にする、または既に登録済みのユーザによって使用されているコンピュータシステム260からのローミングを許すWebページを提供する。ユーザは、本明細書で説明するとおり、登録しようと試みるか、またはユーザのユーザ識別子を提供し(またはユーザ識別子は、リダイレクト コマンドの一部として登録マネージャ222によって受け取られてもよい)、ローミングが所望されることを示すことができる(または、Webアプリケーション240によって最初に提供されるWebページ上に表示されていた登録チェックボックスおよびローミング チェックボックスによって示される、そのようなステータスが、登録マネージャ222によって受け取られてもよく、そのようなステータスを、Webアプリケーション240が、従来のCGI技術を介して受け取り、例えば、リダイレクト コマンドの中のパラメータを介して、登録マネージャ222に提供する)。
【0070】
登録マネージャ222が、ユーザ識別子および/またはパスワードをユーザに求める場合(Webアプリケーション240からユーザ識別子を受け取るのではなく)、登録マネージャ222は、入力要求を使用してWebページ上にカスタマイズ情報を提供すること、および/または1つのWebページは、ユーザ識別子を要求して、カスタマイズ情報を表示せず、第2のWebページは、ユーザのパスワードを要求して、カスタマイズ情報を表示する、2つのWebページに入力要求を分割することを含め、そのような情報を求めるための、本明細書で説明する諸技術のいずれかを使用する1つまたは複数のWebページを介して、ユーザに求める。登録マネージャ222が、Webアプリケーション240からパスワードを受け取る場合、一実施形態では、登録マネージャ222は、カスタマイズ情報プロバイダ244を介してパスワードをユーザに求めて、カスタマイズ情報を表示することが可能である。別の実施形態では、ユーザは、ユーザのパスワードを求められない。
【0071】
ローミングが所望される場合、一実施形態では、ユーザは、登録マネージャ222によって提供されるWebページを介して、以下のいずれかを示すことができる。すなわち、A)ユーザが、ローミングを行う出発点のコンピュータシステムは、そのユーザに「割り当て」られなければならない(例えば、サーバ202が、そのコンピュータシステムからのユーザを認証することができるように)、B)ユーザが、ローミングを行う出発点のコンピュータシステムは、ユーザによって示された、ある期間にわたって、そのユーザに割り当てられなければならない、またはC)ローミングが所望される出発点のコンピュータシステムは、そのセッションに関してだけ、ユーザに割り当てられなければならない。
【0072】
ローミングが所望されるケースでは、登録マネージャ222が、その指示、およびユーザ識別子(およびオプションとして、前述したとおり、ユーザのカスタマイズ情報が提供されることが可能なWebページから受け取られたパスワード)を受け取り、その指示、ならびに口座ストレージ248の中に格納されているユーザ識別子に関するパスワードに対応するパスワードに応答して、登録マネージャ222に対してユーザを認証する、ユーザによって使用されることが可能な代替のパスワードを生成する。一実施形態では、生成された代替のパスワードは、ユーザの通常のパスワードとは異なる。
【0073】
登録マネージャ222は、マネージャ222が生成する代替のパスワードを、電子メールアドレス、電話機、PDA、あるいは登録マネージャ222によって格納された口座レコードの中の、または口座ストレージ248の中の、そのユーザに関して格納されている識別子(例えば、電子メールアドレスまたは電話番号)を有する他のデバイスへの伝送などの、セッション外通信手段を介して、ユーザに提供する。セッション外識別子は、本明細書で説明する初期登録プロセス中に、システム管理者によって、またはユーザによって、前もって登録マネージャ222に提供されることが可能である。代替として、ユーザは、セッション外識別子、ならびに運転免許証番号のような検証されることが可能な情報などの、ユーザを認証するのに使用されることが可能な他の情報を提供することができ、これらを、登録マネージャ222は、前述したとおり、検証することができる。すべてのそのような情報は、暗号化通信マネージャ212によって扱われるSSL接続を介して受信されることが可能である。
【0074】
登録マネージャ222は、オプションとして、代替のパスワードが、セッション外手段を介して取り出されるように用意されていることをユーザに通知するWebページを提供する。登録マネージャ222は、これを、あるタイプのセッション外識別子、例えば、電子メールアドレスに関して行うが、他のタイプ、例えば、電話番号に関しては行わないことが可能である。ユーザが、代替のパスワードを取り出し、登録マネージャ222は、Webページを介して、マネージャ222が提供した代替のパスワードをユーザに求める。ユーザは、その代替のパスワードを供給し、登録マネージャ222は、そのパスワードを、例えば、従来のCGI技術を使用して受け取る。
【0075】
登録マネージャ222によって受け取られたパスワードが、マネージャ222が生成したパスワードと一致しない場合、またはそのようなパスワードが受け取られなかった場合、登録マネージャ222は、以下により詳細に説明するさらなるアクションを行わない。登録マネージャ222によって受け取られたパスワードが、そのユーザのためにマネージャ222が生成した代替のパスワードと一致した場合、登録マネージャ222は、ユーザによって使用されているコンピュータシステムが、そのユーザに割り当てられているべきことをユーザが示しているかどうかに依存して、2つのアクションのいずれかを実行する。
【0076】
ユーザによって使用されているコンピュータシステムが、そのユーザに無期限に割り当てられているべきことをユーザが示している場合、登録マネージャ222は、前述したとおり、パーシステント ファイル ビルダ230、パーシステント ファイル サイナ232、パーシステント ファイル インクリプタ234、および暗号化通信マネージャ212を介して、ユーザが、前述したとおり、登録した際にクライアント オリジナル コンピュータシステム261に提供されたパーシステント ファイルのコピーをブラウザ264に提供する。ブラウザ264は、前述したとおり、SSL接続を介して、そのパーシステント ファイルを受信し、そのファイルをファイル ストレージ266の中に格納する。本明細書で説明するとおり、本明細書で説明するパーシステント ファイルと同様の、または同一の情報を含むFlashローカル共有オブジェクトなどの、他のタイプのパーシステント ファイルが、例えば、登録マネージャ222によってブラウザ264に提供されるFlashムービーを介して、ファイル ストレージ266の中に格納されてもよい。登録マネージャ222は、再びログインするようにユーザに指示するか、またはユーザが、登録マネージャ222にリダイレクトされた元のログイン ページにユーザのブラウザ264をリダイレクトし、登録マネージャ222は、ユーザが、リダイレクトされた際にそのWebページのアドレスを格納しており、そのアドレスは、オプションとして、登録マネージャ222へのリダイレクトのパラメータとして提供されている。
【0077】
一実施形態では、前述したとおり、パーシステント ファイルを構築し、格納する前に、登録マネージャ222は、そのWebサイトに関してクライアントコンピュータシステム上に格納されている既存のパーシステント ファイルが存在すれば、そのファイルを読み取ろうと試みる。そのようなパーシステント ファイルが存在する場合、登録マネージャ222は、そのファイルをパーシステント ファイル ビルダ230に送り、ビルダ230は、ビルダ230が取り出した、そのパーシステント ファイルからの情報と、ローミング ユーザに関する情報とを含む複合パーシステント ファイルを生成し、そのパーシステント ファイルを、前述したとおり、クライアントコンピュータシステム260上に格納するために提供する。一実施形態では、そのような複合パーシステント ファイルを生成する際、登録マネージャ222は、取り出されたパーシステント ファイルから、オペレーティング システム(図示せず)から登録マネージャ222が要求する現在の日付と時刻に先立つ、失効の日付と時刻を有する情報を除去する。
【0078】
別の実施形態では、登録マネージャ222が、パーシステント ファイルを読み取り、そのパーシステント ファイル、または複合パーシステント ファイルを格納する代りに、登録マネージャ222は、パーシステント ファイルを生成するのに使用されることが可能な情報をWebアプリケーション240に送り(例えば、暗号化されることが可能な1つまたは複数のパラメータとして)、Webアプリケーション240は、パーシステント ファイルを読み取ろうと試み、その情報をパーシステント ファイル ビルダ230に送り、ビルダ230は、前述したとおり、パーシステント ファイルまたは複合パーシステント ファイルを構築し、そのファイルが、ファイル ストレージに格納されるようにすることを、登録マネージャ222が、前述したとおり、そのプロセスを開始するのではなく、行う。
【0079】
ユーザによって使用されているクライアントコンピュータシステム260が、そのユーザに無期限に割り当てられているべきことをユーザが示しておらず、ローミングが所望された出発点のコンピュータシステムが、そのセッションの間だけ、または限られた期間にわたってだけユーザに割り当てられているべきことをユーザが示していた場合、一実施形態では、登録マネージャ222は、情報をパーシステント ファイル ビルダ230に送り、ビルダ230が、それらの制限をパーシステント ファイルの中で符号化するか、または、以下により詳細に説明するとおり、それらの制限を口座データベース248の中に格納する。例えば、制限をパーシステント ファイルの中で符号化するのに、登録マネージャ222は、パーシステント ファイルの中で、「残りの使用回数」カウンタを1に設定する、またはオペレーティング システムから、現在の日付と時刻を取り出し、コンピュータシステム260が、限られた期間にわたってユーザに割り当てられているべきことを示すのにユーザが使用したWebページ上でユーザによって指定された期間を追加して、失効時刻をもたらし、その失効時刻をパーシステント ファイルの中に含める。登録マネージャ222は、前述したとおり、格納および使用のために、パーシステント ファイルをブラウザ264に送ることを開始する。
【0080】
前述したのと同様の形で、いずれのそのような制限されたパーシステント ファイルもコンピュータシステム260上に格納する前に、登録マネージャ222は、登録マネージャに対応するWebサイトに関する既存のパーシステント ファイルがあれば、そのファイルを読み取ろうと試み、クライアントコンピュータシステムが、前述したとおり、そのWebサイトに関する既存のパーシステント ファイルを含む場合、パーシステント ファイル ビルダ230、パーシステント ファイル サイナ232、パーシステント ファイル インクリプタ234、および暗号化通信マネージャ212が、複合パーシステント ファイルを構築し、クライアントコンピュータシステム260上に格納するようにさせることができる。やはり、前述したとおり、登録マネージャ222は、パーシステント ファイルに追加されるべき情報をWebアプリケーション240に提供することができ、アプリケーション240は、既存のパーシステント ファイルがあれば、そのファイルを読み取ろうと試み、パーシステント ファイルまたは複合パーシステント ファイルをクライアントコンピュータシステム260上に格納することを、登録マネージャ222が、それらの機能のすべてを実行するのではなく、行うことができる。
【0081】
Webアプリケーション240は、ユーザがログインしようと試みた際に、パーシステント ファイルに課せられた制限を実施する。例えば、Webアプリケーション240は、オペレーティング システム クロック(図示せず)から日付と時刻を取り出し、パーシステント ファイルが、失効の日付と時刻を有する場合、パーシステント ファイルの中のそのような失効の日付と時刻と比較する。システム クロックからの日付と時刻が、パーシステント ファイルの中の失効の日付と時刻より後である場合、Webアプリケーション240は、前述したとおり、ユーザがログインすることを許さない。
【0082】
1回限りの使用に関して、一実施形態では、ユーザがログインすると、Webアプリケーション240は、パーシステント ファイルに、1回限りの使用のためのマークが付けられている場合、パーシステント ファイルの署名または通し番号、またはその他の署名を、口座データベース248の中でユーザの口座番号を保持するレコードの中に格納する。ユーザ、または別の当事者が、ログインしようと試みた場合、Webアプリケーション240は、署名または通し番号を、そのユーザに関して格納されている署名または通し番号と比較して、パーシステント ファイルの中の署名が、そのユーザに関して格納されている署名の1つと一致する場合、ユーザがログインすることを許さない。一実施形態では、1回限りの使用として指定されているパーシステント ファイルは、パーシステント ファイルが生成された日付と時刻から1週間のような、既定の期間を使用して、パーシステント ファイルとともに格納されることが可能な失効の日付と時刻も有する。Webアプリケーション240はまず、前述したとおり、失効の日付と時刻を調べ、次に、前述したとおり、パーシステント ファイルが、それまでに使用されていないことを検証する。これにより、ユーザに関して格納されている署名が、既定の期間の後、口座データベース248からパージされることが可能になる。
【0083】
さらに別の諸実施形態では、クライアントコンピュータシステム260の使用に課せられた制限は、他の手段を使用して実施される。例えば、パーシステント ファイルの失効の日付と時刻、ならびに通し番号は、失効の日付と時刻をパーシステント ファイルの中に格納する代わりに、登録マネージャ222によって口座ストレージ248の中に格納されてもよい。そのような実施形態では、各ユーザのパーシステント ファイルには、そのユーザに固有の通し番号が割り当てられ、通し番号は、パーシステント ファイルの中に格納され、パーシステント ファイルの署名の一部としてハッシングされる。ユーザが、パーシステント ファイルを使用しようと試みた際、Webアプリケーション240は、パーシステント ファイル バリデータ242を介して、パーシステント ファイルから通し番号を取り出し、次に、口座ストレージ248の中で、パーシステント ファイルのユーザおよび通し番号に対応する失効の日付と時刻を調べ、システム クロックから現在の日付と時刻を取り出す。システム クロックからの現在の日付と時刻が、パーシステント ファイルに関する失効の日付と時刻より後である場合、または、そのユーザ、およびその通し番号に関してエントリが全く格納されていない場合、Webアプリケーション240は、ユーザが、ログインすることを許さず、またはそれ以外の形でパーシステント ファイルを無効として扱い、エントリが存在するが、現在の日付と時刻が、そのユーザ、およびその通し番号に関して格納されている失効の日付と時刻より後である場合、Webアプリケーション240は、そのユーザに関する、そのパーシステント ファイルに関する通し番号、および失効の日付と時刻を含むエントリを、口座データベース248から削除する。
【0084】
(キーストローク キャプチャの防止)
一実施形態では、コンピュータシステムにインストールされている可能性があり、ユーザがコントロールを有さない可能性があるコンピュータシステム上でローミングしているユーザのユーザ識別子およびパスワードを、侵入者が内密にキャプチャすることを許すキーストローク キャプチャ プログラムに対して防御するため、一実施形態では、登録マネージャ222が、前述したとおり、代替のパスワードをユーザに提供する際に、その代替のパスワードが、登録マネージャ222によって、口座データベースの中のユーザ識別子に対応するユーザ レコードの中に格納されることが可能である。ユーザは、前述したとおり、ローミングのためにパーシステント ファイルを使用する際に、ユーザの通常のパスワードの代わりに、そのパスワードを使用することができる。Webアプリケーション240は、前述したとおり、1回限りの使用、または限られた期間の使用のマークが付けられているパーシステント ファイルを検出した場合、ユーザの代替のパスワードをユーザに求め、ユーザの通常のパスワードを使用しないようにユーザに警告する。その場合、Webアプリケーションは、前述したとおり、ユーザによって供給されたパスワードを比較する際、ユーザの通常のパスワードの代わりに、口座データベース248の中に格納された代替のパスワードを使用する。
【0085】
さらに別の実施形態では、Webアプリケーション240は、ユーザが、ユーザ識別子を供給することによってログインしようと試みて、Webアプリケーション240が、コンピュータシステム260上で、失効していない、限られた期間のパーシステント ファイルを検出するたびに、前述したチャネル外の通信方法を介して、異なる代替のパスワードを供給する。Webアプリケーション240は、次に、チャネル外の通信方法からユーザのパスワードを取り出すようユーザに指示することにより、ユーザのパスワードをユーザに求め、ユーザの通常のパスワードを使用しないよう、ユーザにやはり警告する。Webアプリケーション240は、次に、ユーザが、その方法を使用してログインしようとした場合にはいつでも、ユーザによって供給されたパスワードを、その新たな代替のパスワードと照合する。
【0086】
一実施形態では、登録マネージャ222は、コンピュータシステム260に対するユーザの信頼に基づき、前述の諸方法のいずれか1つを選択するようユーザに促し、登録マネージャ222は、ユーザが選択した方法のタイプ、およびパーシステント ファイルの通し番号とともに、ユーザのレコードを口座ストレージ248の中に記録する。Webアプリケーション240は、次に、前述したパーシステント ファイルの通し番号を検出した場合にはいつでも、ユーザ識別子に対応する、口座ストレージ240の中のレコードに関する格納されたタイプに基づき、前述した方法を実行する。
【0087】
(カスタマイズ情報なしのローミング)
一実施形態では、ユーザが、クライアントコンピュータシステム261上で登録して、その後、格納されたパーシステント ファイルを有さない、異なるクライアントコンピュータシステム260を使用してログインしようと試みる際に、ユーザが、登録して、前述した様々なタイプのパーシステント ファイルの1つを受け取ることは、必要ない。
【0088】
例えば、所望される場合、ユーザは、全くパーシステント ファイルなしに、クライアントコンピュータシステム260を単に使用することができる。ユーザは、本明細書で説明するとおり、Webページ、またはその他の通信を見ることができるが、そのユーザのカスタマイズ情報が、そのような通信とともに表示されるのは見ない。以下により詳細に説明するとおり、通信をこのように見る際、パスワードが要求される場合、ユーザは、1回限りのパスワードなどの、代替のパスワードを獲得することができ、Webアプリケーション240が、代替のパスワードを比較して、ユーザの通常のパスワードが、前述したとおり、キーストローク ログ記録プログラムによって記録されるのを防止し、あるいはユーザは、ユーザの通常のパスワードを引き続き使用することができる。
【0089】
例えば、Webアプリケーション240が、パーシステント ファイルを検出することができない、またはアプリケーション240が検出するパーシステント ファイルが、ユーザ識別子と一致しない場合、単一のセッション中にそのようなユーザからのWebページを求める最初の要求に応答するのに、Webアプリケーション240は、カスタマイズ情報が、そのコンピュータシステム260から入手できないことをユーザに知らせるWebページを提供することができ、そのコンピュータシステムを登録せずに、そのコンピュータシステムを使用している間、そのWebサイトへのリンクは、辿られる、またはペーストされるのではなく、常にタイプ入力されなければならないことをユーザに警告し、ユーザが、前述したとおり、ローミングパーシステント ファイルを要求することを許す、登録マネージャ222へのリンク、ならびにユーザが、カスタマイズ情報を見ることなしに続けることを可能にするリンクを含む。ユーザが、登録マネージャ222へのリンクをクリックした場合、動作は、前述したとおり、継続し、前述したとおり、コンピュータシステム260が、登録されて、パーシステント ファイルを受け取ることを許す。
【0090】
ユーザが、カスタマイズ情報を見ることなしに続けることを選択した場合、Webアプリケーション240は、ユーザが、ユーザ識別子およびパスワードを使用して、ログインし、Webページを見ることを許す。しかし、Webアプリケーションは、そのWebページをカスタマイズ情報プロバイダ244に送る際、ユーザのカスタマイズ情報が示されてはならないこと(および、カスタマイズ情報プロバイダ244も、カスタマイズ情報サーバ238も、プロバイダ244およびサーバ238が、パーシステント ファイルを使用して、ユーザを認証しようと試みる諸実施形態では、そうしようと試みてはならないこと)を示す、ユーザの実際のユーザ識別子とは異なる特別なユーザ識別子を提供する。カスタマイズ情報プロバイダ244は、メッセージをWebページの中に含めることによるか、またはカスタマイズ情報サーバ238への参照を含む1つまたは複数のリンク、タグ、またはコンピュータコードを含めることにより、ユーザのカスタマイズ情報の代わりのメッセージを提供する。ユーザのカスタマイズ情報を明らかにする、含められるコードは、カスタマイズ情報プロバイダ244によって、データベース224の中の事前定義されたメッセージへのコードで置き換えられ、ユーザが、Webページの要求を行っているコンピュータシステム260は、登録されていないことをユーザに知らせ、そのWebサイトへのリンクを辿る、またはコピーすることをせず、代わりに、URLをブラウザに直接にタイプ入力することなどにより、そのようなコンピュータを使用する際に、より注意を払うように、そのユーザに催促する。ユーザのブラウザが、前述したとおり、1つまたは複数の要求をカスタマイズ情報サーバ238に送信する場合、カスタマイズ情報サーバ238は、各々のそのような要求に関して、ユーザのカスタマイズ情報の代わりに、そのメッセージを提供する。
【0091】
一実施形態では、そのようにパスワードを要求するページを表示する前に、Webアプリケーション240はまず、前述した警告を含む、さらなるWebページを、ユーザが、1回限りの使用のパスワードを得ることを可能にする登録マネージャ222へのリンクとともに提供してから、前述したとおり、ユーザのパスワードを提供するよう、ユーザに促して、ユーザが、メッセージを見ることを確実にすることができる。
【0092】
ユーザが、前述した登録マネージャへのリンクをクリックした場合、登録マネージャ222は、代替のパスワードを生成し、口座データベース248の中に格納し、口座データベース248の中で、そのユーザに関して格納されているユーザのチャネル外の識別子を介してユーザに提供する。登録マネージャ222は、次に、代替のパスワード、ならびに、ユーザが、ログイン シーケンスを完了するようにWebアプリケーション240に戻るリンクを取り出すよう、ユーザに指示する。Webアプリケーション240は、代替のパスワードを使用してユーザの認証を行い、ユーザによって提供されたパスワードが、格納されている代替のパスワードと一致した場合、Webアプリケーション240は、Webサイトへのアクセスを提供することを続け、前述したとおり、ユーザのカスタマイズ情報の代わりに、警告とともに一部のWebページ、またはすべてのWebページを表示することを続け、Webアプリケーションは、口座データベース248の中のユーザのレコードから、代替のパスワードを削除する。ユーザによって提供されたパスワードが、格納されている代替のパスワードと一致しない場合、Webアプリケーション240は、要求されたページを含め、Webサイトの一部、またはすべてへのアクセスを拒否する。
【0093】
(データベースは、一元化されることが可能である)
一実施形態では、データベース224は、サーバ202の中には存在せず、代わりに、1つまたは複数のサーバ202が、ネットワーク254を介してアクセスすることができ、それ以外では、データベース224として動作する、データベース224Aによって置き換えられる。各々のそのような複数のサーバが、サーバ202と同一のWebサイト、または異なるWebサイトを提供することが可能である。そのような実施形態では、複数のサーバ202が存在し、各サーバが、ユーザを登録して、前述したとおり、カスタマイズ情報を提供するが、データベース224の代わりに中央データベース224Aを共用するか、またはサーバ群202の一部だけが、ユーザを登録し、他のサーバは、ユーザが、そのような登録サーバに明らかにし、提供する、または前述したとおり、そのような登録サーバによって提供されるカスタマイズ情報を利用する。
【0094】
一実施形態では、各サーバ202は、ユーザの社会保障番号などの、ユーザ識別子に付加されるWebサイト番号またはサーバ番号などの、同一のユーザに関して、様々なサーバの間で固有である番号を使用して、データベース224Aの中のユーザのレコードにアクセスする。そのような実施形態では、複数のサーバ202がアクセスすることができるカスタマイズ情報プロバイダ244Aおよびカスタマイズ情報サーバ238Aが、カスタマイズ情報プロバイダ244およびカスタマイズ情報サーバ238の代わりに使用されることが可能であり、したがって、いずれのサーバ202も、ユーザのカスタマイズ情報にアクセスする必要がない。カスタマイズ情報プロバイダ244Aおよびカストマイズ情報サーバ238Aは、カスタマイズ情報プロバイダ244およびカスタマイズ情報サーバ238と同一の形で動作して、Webページとともにカスタマイズ情報をユーザに送信する。カスタマイズ情報サーバ238Aは、暗号化通信マネージャ212と同様の独自の暗号化能力を含むことが可能であり、したがって、カスタマイズ情報は、暗号化されたSSLセッションを介して送信されることが可能であり、データベース224A、カスタマイズ情報プロバイダ244A、およびカスタマイズ情報サーバ238Aのそれぞれが、通信インタフェース210と同様の、または同一の通信インタフェース(図示せず)を介してネットワークに結合されることが可能である。
【0095】
一実施形態では、データベース224A、またはカスタマイズ情報プロバイダ244A、またはカスタマイズ情報サーバ238A、およびWebアプリケーション240またはカスタマイズ情報プロバイダ244が、従来の認証技術を使用して、カスタマイズ情報を求める要求を認証するか、またはカスタマイズ情報を有するWebページを送信することを要求する。そのような認証技術は、パスワード、署名、デジタル証明書、または他の従来の技術を含むことが可能である。そのような要求は、暗号化通信マネージャ212を介して送信されることが可能であり、したがって、従来のSSL接続が、セキュリティを強化するのに使用されることが可能である。
【0096】
(電子メールメッセージは、カスタマイズ情報が表示されるようにして、ユーザが、電子メールメッセージを認証することができるようにすることができる)
図2Aのシステムを使用して、ユーザが、電子メールメッセージを認証することができるようにされることが可能である。一実施形態では、メッセージは、以下により詳細に説明するとおり、ユーザのカスタマイズ情報が、表示されるようにするHTMLコードを含むことが可能である。カスタマイズ情報は、電子メールメッセージの一部として、または電子メールメッセージとともに供給されたリンクを、ユーザが、ユーザのブラウザをクリックした際、もしくはユーザのブラウザの中にペーストした際、表示されることが可能である。前述したとおり、ユーザ識別子、パスワード、ならびにWebアプリケーション240によって格納されるものとして前述した、その他の口座情報が、口座データベース248の中に格納される。さらに、口座データベース248は、数百万も存在する可能性がある、システム200の各ユーザに関する電子メールアドレスを含む。電子メールアドレスは、例えば、本明細書で説明する登録プロセス中に、ユーザによって供給され、登録マネージャ222によって受け取られることが可能であり、マネージャ222は、そのアドレスを口座データベース248の中に格納し、あるいはシステム管理者が、任意の従来のデータ転送技術を使用して、ユーザの電子メールアドレスを口座データベース248の中に格納することができる。
【0097】
メッセージ マネージャ246は、複数のユーザの各ユーザ向けの情報を含むメッセージを準備し、各々のそのようなメッセージは、一般的な情報、ならびにそのユーザ向け、またはユーザのグループの中の各ユーザ向けに準備されたカスタム情報を含むことが可能である。メッセージは、電子メールメッセージの形態であっても、あるいは、メッセージの本文だけを含み、そのような本文が、カスタマイズ情報プロバイダ244によって、完成した電子メールメッセージの中に組み込まれてもよい。一実施形態では、メッセージは、HTML電子メールメッセージ、またはそのようなメッセージの本文として符号化される。メッセージ マネージャ264が、メッセージ、電子メールアドレスとしてメッセージが符号化されていない場合に、メッセージが送信されるべき電子メールアドレス、およびメッセージが送信されるユーザのユーザ識別子を、カスタマイズ情報プロバイダ244に送る。
【0098】
カスタマイズ情報プロバイダ244は、ユーザ識別子に関連するカスタマイズ情報を取り出し、その情報をメッセージに追加する。カスタマイズ情報プロバイダ244は、テキスト、リンク、または1つまたは複数のタグ(例えば、IMGタグ)、あるいは以上のいずれか、またはすべての形態で、カスタマイズ情報を提供することができ、リンク、または各々のそのようなタグが、カスタマイズ情報サーバ238に戻るようにつながったリンクを含み、カスタマイズ情報サーバ238が、オプションとして、暗号化通信マネージャ212を使用するセキュリティで保護されたセッションを介して、ユーザのカスタマイズ情報を提供するようにさせる(例えば、ユーザのカスタマイズ情報に関連して格納されているコードを使用して)。カスタマイズ情報プロバイダ244が、カスタマイズ情報が表示されるようにするFlash(商標、以下同)、Java(商標、以下同)、Javascript(商標、以下同)、またはその他のコンピュータコードをメッセージの中に含めてもよく、あるいはカスタマイズ情報サーバ238が、1つまたは複数のタグまたはリンクの各々からもたらされる要求に応答して、そのようなコンピュータコードを提供してもよい。
【0099】
リンク、または1つまたは複数のタグ、またはコンピュータコードが使用される場合、カスタマイズ情報プロバイダ244は、データベース224の中で、リンクに、または1つまたは複数のタグ、またはコードの中の各リンクに、ユーザを識別するのに使用されることが可能なコードを割り当てる。例えば、カスタマイズ情報プロバイダ244は、ユーザ識別子に固有である35文字の識別子を選択して、ユーザ識別子に関連付けられた、その35文字の識別子をデータベース224の中に格納し、また、その35文字の識別子をリンク、1つまたは複数のタグ、またはコードの中にも、例えば、ファイル名として、またはカスタマイズ情報サーバ238に対する参照(例えば、URL)の中のパラメータとして格納することができる。
【0100】
一実施形態では、カスタマイズ情報プロバイダ244は、プロバイダ244が受け取ったメッセージを電子メールメッセージに構築することを、プロバイダ244が受け取ったメッセージが、既にそのようなフォーマットになっていない場合、行う。メッセージをアドレス指定するのに、カスタマイズ情報プロバイダ244は、メッセージ マネージャ246によって供給された電子メールアドレスを使用するか、またはプロバイダ244が受け取ったユーザ識別子に対応するレコードの中の電子メールアドレスを、口座データベース248から取り出す。一実施形態では、メッセージは、登録プロセス中にユーザから受け取られ、登録マネージャ222によって口座データベース248の中に格納された設定に基づき、HTML電子メールまたはテキスト電子メールに構築される。
【0101】
カスタマイズ情報プロバイダ244は、その電子メールメッセージを通信インタフェース210に提供し、インタフェース210は、そのメッセージを、ネットワーク254を介して、そのメッセージの電子メールアドレスに対応する適切な電子メール サーバ(図示せず)に転送する。ユーザは、電子メール クライアント268を使用して、メッセージを取り出し、通信インタフェース262の入出力256を介してメッセージを見る。メッセージは、カスタマイズ情報をテキストとして、リンクとして、またはリンクを含む1つまたは複数のタグとして、あるいはコード(例えば、JavascriptまたはJava)、もしくは1つまたは複数のリンクを加えたコードとして含むことが可能である。電子メール クライアント268は、通信インタフェース262、210に送られた1つまたは複数の要求を介して、メッセージを表示し、任意のコードを動作させ、1つまたは複数のリンクによって指定されたカスタマイズ情報を取り出し、表示する(リンク、タグ、またはコードとして)ことができる。通信インタフェース210は、要求をカスタマイズ情報サーバ238に転送する。
【0102】
前述したとおり、要求は、ユーザの口座番号に対応するリンクからの符号化された情報(例えば、35文字の識別子)を含み、その情報を、カスタマイズ情報サーバ238は、データベース224から、そのユーザに関するカスタマイズ情報を取り出すのに使用する。カスタマイズ情報サーバ238は、次に、暗号化通信マネージャ212および通信インタフェース210、262を介して、カスタマイズ情報を電子メール クライアント268に送信する。電子メール クライアント268は、前述したとおり、メッセージとともにカスタマイズ情報を表示する。
【0103】
電子メール クライアントが、カスタマイズ情報を表示する場合、ユーザは、メッセージの中に含まれるリンクをクリックし、これにより、ブラウザ264が、既に実行されているのでない場合、起動させられ、前述したとおり、そのリンクに基づく要求を生成するようにさせられる。代替として、ユーザは、ブラウザ264の中にリンクをペーストし、ブラウザ264は、前述したとおり、そのリンクに基づく要求を生成し、その要求に応答して受け取られたカスタマイズ情報を表示する。
【0104】
すると、ユーザは、カスタマイズ情報を使用して、電子メールメッセージが真正であるかどうかを判定することができる。カスタマイズ情報が、ユーザによって予期されるカスタマイズ情報と一致した場合、ユーザは、そのメッセージの内容を信じる、またはそのメッセージが含むリンクをクリックするなどの、真正の電子メールメッセージに適切なアクションを行うことができる。カスタマイズ情報が、ユーザによって予期されるカスタマイズ情報と一致しない場合、ユーザは、メッセージを削除する、またはそのメッセージの内容を信じる、もしくはそのメッセージの中に含まれるリンクをクリックするのを控えるなどの、真正でないメッセージに適切なアクションを行うことができる。
【0105】
以下により詳細に説明する一実施形態では、メッセージ マネージャ246またはカスタマイズ情報プロバイダ244は、メッセージを複数部分のMIMEメッセージとして符号化し、カスタマイズ情報プロバイダ244は、メッセージのHTML符号化された部分に1つまたは複数のタグまたはコードを追加し、メッセージのテキスト符号化された交互部分に1つまたは複数のリンクを追加する。
【0106】
一実施形態では、カスタマイズ情報サーバ238は、要求を受け取る際、ファイル ストレージ266の中に格納されたパーシステント ファイルも受け取る。カスタマイズ情報サーバ238は、パーシステント ファイルを検証し(これを、サーバ238は、パーシステント ファイル バリデータ242を介して行う)、パーシステント ファイルの中のある情報を、データベース224または口座データベース248の中に格納された情報などの、他の情報と比較し、その比較の結果に基づき、カスタマイズ情報を提供するか、または提供しない。例えば、カスタマイズ情報サーバ238は、パーシステント ファイルの中の口座番号が、要求の中のコードが対応する口座番号と一致することを検証することができる。それらの口座番号が一致しない場合、カスタマイズ情報サーバ238は、前述したとおり、その要求に応答せず、それらの口座番号が一致した場合、カスタマイズ情報サーバ238は、前述したとおり、それらの要求に応答する。
【0107】
一実施形態では、カスタマイズ情報サーバ238が、前述したとおり、パーシステント ファイルを使用すべきかどうかについての標識が、データベース224または口座データベース248の中に格納される。カスタマイズ情報サーバ238は、サーバ238が、前述したとおり、パーシステント ファイルを使用すべきかどうかに関して、リンクの中の符号化された情報に対応する、データベース224または248の中のエントリを調べる。パーシステント ファイルが受け取られていないが、パーシステント ファイルが要求されることを標識が示す場合、カスタマイズ情報サーバ238は、カスタマイズ情報を提供しない。
【0108】
標識は、システム管理者によって、あるいは、ユーザの電子メール クライアントが、クッキーをサポートするタイプのものであるかどうかをユーザに尋ねることができる登録マネージャ222によって、データベース224または口座データベース248の中に入れられることが可能である。登録マネージャ222は、ユーザの電子メール クライアントが、クッキーの使用をサポートしていない場合でも、クッキーを、本明細書で説明するとおり使用するために、登録プロセスの一環として格納しようと試みることができる。
【0109】
別の実施形態では、標識は、前述したとおり、データベース224または口座データベース248の中で初期設定されるか、またはユーザが、登録する際に、パーシステント ファイルを要求しないように初期設定される。カスタマイズ情報サーバ238は、前述したとおり、電子メールに応答して生成された要求に応答して適切なパーシステント ファイルが受け取られると、パーシステント ファイルを要求するようにデータベース224またはデータベース248の中の標識を変更する。このようにして、ユーザが、登録の後にユーザの電子メール クライアント268をアップグレードした場合、それが、検出され、以降、要求される。
【0110】
(テキスト電子メールを認証すること)
前述したとおり、ユーザの電子メール クライアント268が、HTML電子メールをサポートしない場合に、リンクを使用して、ユーザが、ブラウザ264を使用してメッセージを認証することを可能にすることができる。そのような実施形態では、カスタマイズ情報プロバイダ244が、メッセージ マネージャ248からメッセージを受け取ると、カスタマイズ情報プロバイダ244は、前述した1つまたは複数のタグと、リンクをともに、メッセージの中に入れることができる。リンクは、Webページに対応することが可能であり、カスタマイズ情報サーバ238が、前述したとおり、カスタマイズ情報を識別することを可能にすることができる前述した符号化された情報も含むことが可能である。そのような実施形態では、ブラウザ264がメッセージを認証することをリンクが可能にするコードは、タグまたはコンピュータコードの中で使用されるのと同一のコードであっても、異なるコード(このコードを、カスタマイズ情報プロバイダ244は、前述したとおり、プロバイダ244が、メッセージ マネージャ248から受け取るユーザ識別子に関連付けられたデータベース224の中に格納する)であってもよく、リンクは、1つまたは複数のタグ、またはコンピュータコードの中で使用されるのと同一のリンクであっても、異なるリンクであってもよい。
【0111】
一実施形態では、メッセージ マネージャ246から受け取られるメッセージは、2つの部分の各々の中に2つの通信を含む。1つの部分は、HTML電子メールとして符号化された通信を含み、他方の部分は、テキスト電子メールとして符号化された同一の通信、または異なる通信を含む。カスタマイズ情報プロバイダ244は、1つまたは複数のタグを第1の部分に追加し、リンクを第2の部分に追加する。2つの部分は、次に、第1の部分が、HTML電子メールメッセージとして符号化され、第2の部分が、テキスト電子メールとして符号化された代替の符号化として使用されて、単一の電子メールメッセージとして伝送される。メッセージは、複数部分のMIMEメッセージとして符号化されても、任意の他の従来の電子メール符号化を使用してもよい。
【0112】
別の実施形態では、メッセージは、第2の部分だけを含み、前述した第1の部分は、含まない。メッセージ マネージャ246は、前述したとおり、登録時にユーザによって指定された、ユーザの電子メール クライアントが、HTML電子メールを扱うことができるかどうかを示す、各ユーザに関する口座データベース248の中のフィールドに応答して、メッセージの第2の部分だけを生成することができる。電子メール クライアント268が、HTML電子メールを扱うことができないことを、口座データベース248の中のユーザに関するフィールドが示す場合、メッセージ マネージャ244は、メッセージの第2の部分だけを生成し、前述したとおり、第1の部分を省く。カスタマイズ情報プロバイダ244は、そのようなメッセージの中でリンクは提供するが、1つまたは複数のタグは提供しない。
【0113】
ユーザが、メッセージを閲覧する際、ユーザの電子メール クライアント268は、両方の部分が提供される場合、1つの部分、または他方の部分を表示し、第2の部分だけが提供される場合、その部分を表示する。ユーザの電子メール クライアント268が、テキスト部分だけを表示する場合、またはテキスト部分だけが、メッセージの中で与えられている場合、リンクは、メッセージの残りの部分と一緒に表示される。ユーザは、リンクをクリックして、またはリンクをブラウザ264の中にペーストして、これにより、ユーザのブラウザ264が、起動して、リンクに対応する要求を生成するようにさせられる(または、ユーザが、ブラウザ264を起動し、リンクをブラウザの中にカットアンドペーストして、ブラウザが、要求を生成するようにさせる。
【0114】
ブラウザ264は、通信インタフェース262、210を介して要求を送信する。通信インタフェース210は、要求をカスタマイズ情報サーバ238に転送する。要求は、要求の中に含まれるリンクからの符号化された情報を有し、カスタマイズ情報サーバ238は、その符号化された情報を使用して、前述したとおり、データベース224の中でカスタマイズ情報を探し出す。カスタマイズ情報サーバ238は、要求に応答して、暗号化通信マネージャ212、および通信インタフェース210、262を介して、前述したとおり、ユーザのカスタマイズ情報を提供する。通信インタフェース262は、応答をブラウザ264に転送し、ブラウザ264が、カスタマイズ情報を表示する。一実施形態では、リンクの中の他の情報(そのような他の情報は、前述した1つまたは複数のタグの一部ではない)は、カスタマイズ情報サーバ238が、前述したとおり、サーバ238が受け取ったカスタマイズ情報を、他の情報を含むWebページの一部として含めて、タグまたはコンピュータコードの代わりにリンクが使用される場合に、よりすっきりしたユーザ インタフェースを提供するようにさせる。
【0115】
ユーザは、次に、要求に対する応答を使用して、元の電子メールメッセージが真正であったかどうかを判定することができる。カスタマイズ情報が、予期されるとおりに受け取られた場合、ユーザは、例えば、メッセージの中に含まれる情報、またはメッセージにリンクされた情報を信じることにより、またはメッセージの中に含まれるリンク、またはメッセージにリンクされたリンクをクリックすることにより、メッセージを真正であるものとして扱うことができる。カスタマイズ情報が、予期されるとおりに提供されない場合、ユーザは、例えば、メッセージの中に含まれる情報、またはメッセージにリンクされた情報を無視することにより、またはメッセージの中に含まれるリンク、またはメッセージにリンクされたリンクをクリックしないことにより、あるいはメッセージを破棄することにより、メッセージを真正でないものとして扱うことができる。
【0116】
(Flash)
一実施形態では、電子メールとともに提供されるコンピュータコードは、従来のFlash.swfムービー ファイル、または他の同様のコンピュータコードを含むことが可能である。コンピュータコードは、メッセージの残りの部分、カスタマイズ情報、またはその両方を表示することが可能である。そのような実施形態では、メッセージ マネージャ246によって生成されるメッセージは、ユーザの電子メール クライアント268またはブラウザ264によってユーザに表示されるべき、Flashムービー ファイル、またはFlashムービー ファイルへの参照(Javascriptコードを介して指定されることが可能なOBJECTタグまたはEMBEDタグを介するなどの)を、メッセージの残りの部分に加えて、またはメッセージの残りの部分の代わりに含むことが可能である。一実施形態では、コンピュータコードをメッセージの中に含めるのではなく、カスタマイズ情報プロバイダ244は、コンピュータコードに対する参照を提供し、この参照を、プロバイダ244は、データベース248の中に格納する。参照は、コンピュータコードが格納されているデータベース224の中のレコードを明らかにするコードをリンクが含む、従来のOBJECTタグまたはEMBEDタグであることが可能である。
【0117】
コードは、ユーザが、メッセージを読み取ろうと試みた際に、電子メール クライアント268によって、またはブラウザ264によって実行されることが可能である。コードは、一実施形態では、メッセージの中に含まれることが可能であるが、別の実施形態では、ユーザの電子メール クライアント268またはブラウザ264が、OBJECTタグまたはEMBEDタグの中で指定されたオブジェクトを要求すると、カスタマイズ情報サーバ238が、その要求に応答して、データベース224からコードを取り出すか、またはコード(例えば、カスタマイズ情報を含む.swfファイル)を構築し、そのコードを提供する。
【0118】
前述したとおり、他の諸実施形態では、.swfファイルは、カスタマイズ情報プロバイダ244が、前述したとおり、カスタマイズ情報をメッセージに追加する時点で、プロバイダ244が、メッセージ マネージャ246から受け取るユーザ識別子に関するカスタマイズ情報を使用して、プロバイダ244によって、または登録プロセス中にカスタマイズ情報が受け取られた後に、登録マネージャ222によって、要求に先立って生成され、データベース224の中に格納される。
【0119】
一実施形態では、パーシステント ファイルは、本明細書で説明するとおり、使用される。別の実施形態では、パーシステント ファイルの代わりに、またはパーシステント ファイルに加えて、.swfファイル自体が、パーシステント ファイルの中に符号化されている暗号化された情報を含むか、または登録マネージャ222が、パーシステント ファイル ビルダ230、パーシステント ファイル サイナ232、およびパーシステント ファイル インクリプタ234を介して、Flashローカル共有オブジェクトを構築し、暗号化通信マネージャ212によって提供されるSSL接続を介して、そのオブジェクトをファイル ストレージ266の中に、パーシステント ファイルとして格納するよう、ユーザのブラウザ264に命令する。クッキーをパーシステント ファイルとして使用する代わりに、Webアプリケーション240は、Flashムービーによって.swfファイルの中に符号化された情報を受け取るか、またはFlashムービーが、ファイル ストレージ266の中の格納されているFlashローカル共有オブジェクトから情報を取り出して、Webアプリケーション240に提供し、Webアプリケーション240が、その情報をパーシステント ファイル バリデータ242に提供し、バリデータ242が、前述したとおり、クッキーを処理するのと同一の形でその情報を処理する。他の諸要素は、クッキーの役割をする他のタイプのパーシステント ファイルを、同様の形で使用することができる。
【0120】
一実施形態では、前述したのと同様の形で、カスタマイズ情報が、Flashムービー、または他の同様のコードによってユーザに表示されるために提供される前に、ユーザがまず、ユーザ識別子を入力してもよく、あるいはFlashムービーが、Flashローカル共有オブジェクトから、ユーザ識別子とともに、ユーザ識別子のハッシュなどの他の情報、およびFlashローカル共有オブジェクトの中の他の情報を取り出すことによって、ユーザ対話なしに、ユーザ識別子を獲得してもよい。Flashムービーは、ユーザ識別子を受け取り、オプションとして、他の情報も受け取って、カスタマイズ情報を求める要求を、カスタマイズ情報サーバ238に送り、符号化された情報が、前述したとおり、カスタマイズ情報を識別し、そのような要求は、前述したとおり、カスタマイズ情報プロバイダ244によってFlashムービーに符号化されている。
【0121】
カスタマイズ情報サーバ238が、要求を受け取り、CGIなどの従来の技術を介して、Flashムービーから、Flashムービーがユーザから受け取ったユーザ識別子、およびFlashローカル共有オブジェクトからの情報を要求し、カスタマイズ情報サーバ238は、そのような情報を、その情報を検証して、ユーザ識別子を戻すようにパーシステント ファイル バリデータ242に送る。パーシステント ファイル バリデータ242は、ユーザ識別子を解読し、パーシステント ファイルに関連して本明細書で説明するのと同一の形で、IPアドレスまたはMACアドレス、および/または証明書を調べて、Flashローカル共有オブジェクトが有効でない場合、カスタマイズ情報サーバ238にシグナルし、それ以外の場合、ユーザ識別子、およびその他の情報を提供する。カスタマイズ情報サーバ238は、復号化されたユーザ識別子を、要求の中の符号化された情報(例えば、35文字のコード)に対応するユーザ識別子と比較する。
【0122】
ユーザ識別子が、前述したとおり、認証された場合、カスタマイズ情報サーバ238は、暗号化通信マネージャ212を介して、Flashムービーに組み込まれるべきテキスト、イメージ、またはムービー クリップを含むファイルの形態で、適切なカスタマイズ情報を提供する(ユーザ識別子が一致しない場合、カスタマイズ情報プロバイダ244が、誤りを示す、異なるテキスト、異なるイメージ、または異なるムービー クリップを提供してもよく、Flashムービーが、ユーザのユーザ識別子をユーザに再び求めてもよい)。Flashムービーは、受け取られたカスタマイズ情報を表示して、ユーザが、電子メールメッセージの送信側を認証することを可能にする。
【0123】
さらに別の実施形態では、電子メールメッセージの中でメッセージ マネージャ246および/またはカスタマイズ情報プロバイダ244によって提供される1つまたは複数のFlashムービーは、自己完結型であり、カスタマイズ情報を表示するのにカスタマイズ情報サーバ238の使用を要求しない。そのような実施形態では、カスタマイズ情報プロバイダ244は、以下に説明するとおり動作するFlashムービーを構築し、プロバイダ244が、メッセージ マネージャ246から受け取るメッセージを組み込むこと、またはそのメッセージに加えて提供されることが可能である。Flashムービーは、メッセージ マネージャ246によって、電子メール クライアント268またはブラウザ264によって表示されるように、電子メールメッセージの中で提供され、クライアント268とブラウザ264のいずれかは、カリフォルニア州サンフランシスコ所在のマクロメディア株式会社から市販されるFlash Player(商標、以下同)プラグインを実行している。
【0124】
次に、図10Aを参照すると、本発明の一実施形態による、電子メールメッセージおよびカスタマイズ情報を表示するのに使用されるFlashムービー、または他のデバイスの概略ブロック図が示されている。ユーザ識別子レシーバ1010が、オペレーティング システム(図示せず)を介してユーザのユーザ識別子をユーザに求める編集可能なテキスト要素を含むページを生成する。ユーザは、ユーザ識別子をオペレーティング システムに提供し、オペレーティング システムは、そのユーザ識別子をユーザ識別子レシーバ1010に提供する。ユーザ識別子レシーバ1010は、そのユーザ識別子をユーザ識別子コンパレータ1012に提供する。別の実施形態では、ユーザ識別子レシーバ1010は、ユーザに入力要求しない。代わりに、ユーザ識別子は、図2Aのカスタマイズ情報プロバイダ244によってユーザ識別子レシーバ1010の中に符号化され、ユーザ識別子レシーバ1010が、そのユーザ識別子をユーザ識別子コンパレータ1012に提供する。
【0125】
ユーザ識別子コンパレータ1012は、ユーザ識別子を受け取ると、共有オブジェクト デクリプタ(shared object decrypter)1014にシグナルする。シグナルされると、共有オブジェクト デクリプタ1014は、共有オブジェクト ストレージ1016からのローカル共有オブジェクトから、またはユーザ識別子を含むFlashムービーの部分から、暗号化されたユーザ識別子を取り出し、その暗号化されたユーザ識別子を解読し、その識別子の1つまたは複数の部分を再ハッシングして、結果を、その識別子の中に含まれる署名と比較することにより、その識別子を検証する。共有オブジェクト デクリプタ1014は、次に、Flashローカル共有オブジェクトが有効であった場合、解読されたユーザ識別子をユーザ識別子コンパレータ1012に提供し、Flashローカル共有オブジェクトが有効でなかった場合、ユーザ識別子プロンプタ1010にシグナルして、誤りを明らかにする。
【0126】
共有オブジェクト デクリプタ1014が、ユーザ識別子をユーザ識別子コンパレータ(user identifier comparator)1012に提供した場合、ユーザ識別子コンパレータ1012は、ユーザ識別子レシーバ1010から受け取られたユーザ識別子と、共有オブジェクト デクリプタ1014から受け取られたユーザ識別子とを比較する。それら2つのユーザ識別子が一致した場合、ユーザ識別子コンパレータ1012は、カスタマイズ情報デクリプタ1018にシグナルし、一致しなかった場合、ユーザに再入力要求するようにユーザ識別子レシーバにシグナルする。
【0127】
シグナルされると、カスタマイズ情報デクリプタ1018は、従来のメモリまたはディスク ストレージであることが可能なカスタマイズ情報/メッセージ ストレージ1020の中に格納された、カスタマイズ情報を取り出し、解読して、その情報をメッセージ/カスタマイズ情報ディスプレーヤ1022に提供する。メッセージ/カスタマイズ情報ディスプレーヤ1022は、解読されたカスタマイズ情報を受け取り、その情報、ならびに前述したとおり、ユーザによって使用されるためのオペレーティング システム(図示せず)を介するメッセージを表示する。
【0128】
(ユーザおよび支払い機構の認証)
一実施形態では、ユーザは、1つまたは複数の支払いを許可する目的で、前述したとおり、ユーザが登録したカスタマイズ情報を使用して、Webサイトを認証することができ、ユーザは、パーシステント ファイルを使用して、Webサイト、またはその他のコンピュータシステムに対して認証されることが可能である。
【0129】
次に、図2Bを参照すると、本発明の別の実施形態による、支払い、あるいはクレジットカードのような支払い手段が関わる他の取引を許可する目的で、ユーザが、コンピュータシステムを認証することを可能にするためのシステム、ならびにユーザを認証する同一のコンピュータシステム、または異なるコンピュータシステムが、示されている。図2Bのシステム270は、いくつかの要素が、以下に説明するとおり、追加されていること以外は、図2Aのシステム200と同一の形で動作する。サーバ272は、Webアプリケーション240が、支払いアプリケーション274によって置き換えられていること以外は、サーバ202と同一であり、アプリケーション274は、本明細書で説明する特徴および動作に加え、Webアプリケーション240の諸機能の一部、またはすべてを有して、アプリケーション240と同様の形で動作することが可能である。サーバ272は、図2Aの1つまたは複数のサーバ202も含むシステムにおいて使用されることが可能である。
【0130】
ユーザは、商人Webアプリケーション274を使用して取引を開始することが可能である。商人Webアプリケーションは、ユーザが、商品をブラウズし、商品をショッピング カートに追加し、または1つまたは複数の品物またはサービスに関する購入または使用許諾またはレンタルの受諾を別の形で示し、その取引の代金を支払うことをユーザが所望することを示すのに使用することができるオンライン ショッピングWebサイトを運用するための、従来のアプリケーション プログラムを含む。商人Webアプリケーション274は、次に、銀行クレジットカード、デビットカード、当座預金口座などの、金融機関の口座に料金請求されるべき合計金額を計算する。
【0131】
商人Webアプリケーション274は、次に、具体的には支払いアプリケーション276に対応し、より広くは、サーバ272に対応するWebアドレスまたはURLを含むリダイレクト コマンドなどの、リダイレクト コマンドをブラウザ264に提供する。一実施形態では、同一のサーバ272上、または異なるサーバ272上に、異なる支払いアプリケーション276が存在して、各々のそのような支払いアプリケーション276が、特定のタイプの支払い手段(例えば、MASTERCARD(商標、以下同)、DISCOVER(商標、以下同)、PAYPAL(商標、以下同)、その他)を処理することが可能である。別の実施形態では、同一の支払いアプリケーション276が、様々なタイプの支払い手段に関する支払いを処理して、各タイプの支払い手段は、異なるWebアドレスもしくはURL、またはアドレスもしくはURLの中のパラメータに対応する。以上の実施形態のいずれにおいても、Web商人アプリケーション274は、Web商人アプリケーション274によって提供されるWebページ上でユーザによって行われた、使用する支払い手段のタイプの選択に基づき、適切なURLまたはアドレスを構築する。さらに別の実施形態では、単一の支払いアプリケーション276が、すべてのタイプの支払い手段に関して使用され、支払いアプリケーション276は、ユーザが、支払い手段のタイプを選択することを可能にするWebページを提供するか、またはそのユーザに関する、あらかじめ格納されたタイプの支払い手段を使用する。
【0132】
Web商人アプリケーション274は、リダイレクト コマンドにおいて使用されるWebアドレスまたはURLに対するいくつかのパラメータを、リダイレクト コマンドの中に組み込む。それらのパラメータは、支払いアプリケーション276に対して商人を一意に識別する商人識別子、商人アプリケーション274に対して取引を一意に識別する取引識別子、および支払い手段に料金請求が行われる取引の金額に対応することが可能である。一実施形態では、Web商人アプリケーション274は、それらのパラメータをハッシングして、ハッシュ結果を署名として、リダイレクト コマンドのURLの中に含めることも行う。
【0133】
ブラウザ264は、本明細書で説明するとおり、リダイレクト コマンドで指定され、パラメータを含むURLまたはアドレスに対する要求を、ネットワーク254および通信インタフェース262を介して通信インタフェース210に送信することにより、リダイレクト コマンドを受け取り、実行する。通信インタフェース210は、その要求を受け取り、その要求を支払いアプリケーション276に転送する。複数の支払いアプリケーション276が、同一のサーバ272上に存在する諸実施形態では、通信インタフェース210は、その要求に対応する支払いアプリケーションに要求を送る。
【0134】
支払いアプリケーション276は、以下に述べる点を除き、前述したWebアプリケーション240の一部またはすべてと同様の形で動作する従来のWebアプリケーション プログラムである。支払いアプリケーション276は、要求からのパラメータを内部に格納し、それらのパラメータを再ハッシングして、結果を、要求とともに受け取られた署名と比較することにより、それらのパラメータを検証する。パラメータが、有効である場合、支払いアプリケーション276は、アプリケーション276が、口座データベース248の中に格納する商人識別子のセット、および口座番号に照らして、商人識別子を検証する。支払いアプリケーション276は、次に、図2AのWebアプリケーション240に関して説明したとおり、前述したユーザを認証するための形のいずれかで、ユーザを認証する。(それらの検証または認証のいずれかが不合格であった場合、支払いアプリケーション276は、エラー コードおよびトランザクション識別子、ならびに商人Webアプリケーション274に対応するURLを含むリダイレクト コマンドを、誤り処理のためにブラウザ264に与える。)
【0135】
一実施形態では、ユーザを認証するのに、支払いアプリケーション276は、パーシステント ファイルをパーシステント ファイル バリデータ242に提供し、バリデータ242は、前述したとおり、パーシステント ファイルを解読し、パーシステント ファイルを検証して、ユーザ識別子を支払いアプリケーション276に提供する。支払いアプリケーション276は、ユーザのユーザ識別子およびパスワードを入力するようユーザに要求する、1つまたは複数のWebページを提供する。ユーザ識別子およびパスワードを要求する、その1つまたは複数のWebページの少なくとも1つは、図2AのWebアプリケーション240に関連して前述した形で、通信インタフェース210を介して提供されることが可能であり、オプションとして、カスタマイズ情報プロバイダ244を介して提供されることが可能である。簡単に述べると、それらの形の1つの場合、支払いアプリケーション276は、ユーザ識別子を要求するWebページを、通信インタフェース210を介してブラウザ264に提供し、ユーザ識別子、およびパーシステント ファイルからの情報を受け取り、そのユーザ識別子を、パーシステント ファイルの中のユーザ識別子と比較し、それらのユーザ識別子が、同一であった場合、そのユーザ識別子と、パスワードを要求する別のWebページとを、前述したとおり処理するために、カスタマイズ情報プロバイダ244に送る。別の形では、支払いアプリケーション276は、パーシステント ファイルからのユーザ識別子と、パスワードとユーザ識別子をともに要求するWebページとを送る。カスタマイズ情報プロバイダ244は、プロバイダ244が受け取るあらゆるWebページに、直接にか、あるいはカスタマイズ情報サーバ238に関係し、ユーザのカスタマイズ情報を識別するコードを含む1つまたは複数のタグまたはリンク、またはコンピュータコードを介して、カスタマイズ情報を追加し、もたらされる1つまたは複数のWebページを、オプションとして、暗号化通信マネージャ212を介して、ブラウザ264に提供する。ブラウザ264は、前述したとおり、それらのWebページおよびカスタマイズ情報を表示して、提供されたカスタマイズ情報が、前述したとおり、カスタマイズ情報のユーザの予期と一致したかどうかに基づき、ユーザが、Webサイトの認証を行い、ユーザ識別子、パスワード、またはその両方を提供するかどうかを決めることができるようにする。
【0136】
一実施形態では、支払いアプリケーション276によって最初に生成されたWebページのいずれか、またはすべては、請求金額の表示、ならびに、ユーザが、ユーザ識別子、パスワード、またはその両方を提供しているという指示を含んで、示された支払い金額を許可し、あるいは、そのような指示、および許可を示すための手段は、さらに別のWebページ上で提供されてもよい。また、一実施形態では、支払いアプリケーション276は、そのユーザ識別子に関する口座データベース248の中に格納されている金融手段情報(例えば、クレジットカード番号の最後の4つの数字、ならびにVISA(商標、以下同)またはDISCOVER(商標、以下同)などの、カードのタイプ)の一部またはすべても、許可が指示されていることを示す、そのようなWebページのいずれかのWebページ、またはすべてのWebページ上で表示する。ユーザに関して格納されている複数の金融手段が存在する場合、既定の金融手段が使用されることが可能であり、取引のために使用されるべき様々な金融手段のなかから、ユーザが選択を行うことを可能にするWebページを、支払いアプリケーション276が生成するようにさせる、示されることが可能なオプションをともない、支払いアプリケーションは、選択された金融手段を内部で格納する。金融手段情報は、システム管理者によってデータベース248の中に格納されること、または前述したのと同様に、登録プロセス中にユーザによって入力されることが可能である。
【0137】
支払いアプリケーション276は、パスワードを受け取り、そのパスワードが、データベース248の中の、前述したとおりユーザに対応するパスワードと一致することを検証する。検査の結果が、肯定的であった場合、支払いアプリケーション276は、A)商人識別子に対応する、口座データベース248の中に格納された口座情報を使用して、受け取られた金額を金融手段に料金請求して、取引が許可されたことを示す許可識別子を生成するか、または受け取り、ブラウザ264が、要求を商人Webアプリケーション274に伝送するようにさせるリダイレクト コマンドをブラウザ264に与えるか、またはB)その金額を料金請求する許可を要求し、許可識別子を発行するか、または受け取り、オプションとして、取引金額、許可番号、および商人識別子を口座データベース248の中に格納し、次いで、ブラウザ264を商人Webアプリケーション274にリダイレクトする。リダイレクト コマンドは、取引番号、許可番号、ならびに、オプションとして、取引が成功したか、または失敗したかの指示を、以上の項目の一部またはすべてをハッシングすることによって生成された、以上の項目の署名とともに含むパラメータを含む。商人Webアプリケーション274は、それらのパラメータを格納し、署名を再生成し、その署名を、パラメータとして受け取られた署名と比較する。それらの署名が一致しない場合、商人Webアプリケーション274は、注文を処理することを続けず、一致した場合は、以下に説明するとおり、処理することを続ける。
【0138】
料金請求が、支払いアプリケーション276によって行われない場合(例えば、そのような料金請求の許可だけが、前述したとおり、獲得される)、料金請求は、許可識別子を、ネットワーク254に接続されていることが可能な支払いアプリケーション276に、または金融機関に、精算所、あるいは別のエンティティに、別のセッションを介して提供して、商人Webアプリケーション274によって、その時点で、または後の時点で行われることが可能である。商人Webアプリケーション274は、次に、ユーザへの品物またはサービスの提供を開始することができ(格納されている、またはユーザによって入力された名前およびアドレスを介して)、取引が完了したことを示すWebページをブラウザ264に提供することができ、電子メール クライアント268に同様の情報の電子メールを提供することができる。
【0139】
(信頼されるコンピューティング、およびユーザのバイオメトリック認証)
ユーザを認証するのにパーシステント ファイルを使用する必要はない。一実施形態では、ユーザを認証するのにクッキー、Flashローカル オブジェクト、または他のタイプのパーシステント ファイル、またはパーシステント ファイルの内容、および/またはユーザ識別子、パスワード、またはその両方を使用する、前述したエンティティのいずれも、他の手段を使用してユーザを認証することができ、そのような他の手段は、登録マネージャ222に関連して実行されることが可能である。例えば、バイオメトリック認証、または物理的トークン認証が、信頼されるコンピューティング、または他の同様な能力を介して使用されてもよい。
【0140】
次に、図2Aおよび図2Bを参照すると、一実施形態では、登録マネージャ222が、前述したとおり、ユーザを登録する際、パーシステント ファイルをユーザのコンピュータシステム上に置く代わりに、登録マネージャ222は、信頼されるコンピューティング サブシステム265を認証して、信頼されるコンピューティング サブシステム265から、信頼されるコンピューティング サブシステム265が、ユーザを認証している場合に、サブシステム265が提供することができる、信頼されるコンピューティング識別子を要求する。信頼されるコンピューティング サブシステム265が、存在しない、または応答しない、または検証されることが不可能である場合、登録マネージャ222は、前述したとおり、パーシステント ファイルを格納し、システム200または270の動作は、前述したとおりに進められる。一実施形態では、信頼されるコンピューティング サブシステム270が、存在していると応答するが、ユーザが、サブシステム270に対して、ユーザ自身の認証をまだ行っていない可能性がある。そのような実施形態では、登録マネージャ222は、信頼されるコンピューティング サブシステム265を使用して、ユーザ自身の認証を行うよう、ユーザに促すが、またはそのような入力要求を提供するように信頼されるコンピューティング サブシステム265に指示し、信頼されるコンピューティング サブシステム265が、それに応じる。
【0141】
信頼されるコンピューティング サブシステム265は、従来の技術を使用して、自らの認証を行うことができ、ユーザが使用して、ユーザ自身の認証を行うことができるハードウェアとソフトウェアから成ることが可能である。ユーザは、例えば、一意に番号が付けられたトークンを、通信インタフェース260のUSBポート261に挿入すること、またはユーザの指を、指紋リーダ263上に、またはUSBポート261を介して接続された声紋アナライザ、虹彩スキャナなどの、他のバイオメトリック情報リーダに置いて、信頼されるコンピューティング サブシステム265が、サブシステム265上に置かれた指紋を読み取ることを可能にすることにより、信頼されるコンピューティング サブシステム265に登録し、これは、より高い精度のために何回も繰り返されることが可能なプロセスである。
【0142】
ユーザが登録すると、信頼されるコンピューティング サブシステム265に対してユーザ自身の認証を行うのに、ユーザは、ユーザの一意に番号が付けられたトークンをUSBポート261に挿入すること、またはユーザの指を指紋リーダ263上に置くこと、またはそれ以外の形で、ユーザ自身を信頼されるコンピューティング サブシステム265に対して認証することができる。
【0143】
ユーザが、ユーザ自身の認証を行うと、信頼されるコンピューティング サブシステム265は、例えば、従来の公開キー証明書を使用して、サブシステム265の有効性の証拠を登録マネージャ222に提供し、信頼されるコンピューティング サブシステム265に固有であり、オプションとして、そのユーザにも固有である、信頼されるコンピューティング識別子を登録マネージャ222に提供する。登録マネージャ222は、従来の手段を使用して、デジタル証明書を調べ、信頼されるコンピューティング サブシステム265が、有効な証明書を有するとマネージャ222が判定した場合(本明細書で、信頼されるコンピューティング ファシリティ(computing facility)の認証または検証と呼ばれるプロセス)、登録マネージャ222は、信頼されるコンピューティング サブシステム265からマネージャ222が受け取った信頼されるコンピューティング識別子を、データベース224または口座データベース248の中に格納する。
【0144】
カスタマイズ情報プロバイダ244またはカスタマイズ情報サーバ238などのエンティティが、前述したとおり、カスタマイズ情報を提供する際、メッセージ マネージャ246などの、そうするようにそのエンティティに指示したエンティティは、信頼されるコンピューティング サブシステム265が、サブシステム265の真正性の証拠を提供し、カスタマイズ情報プロバイダ244またはカスタマイズ情報サーバ238が、公開キー証明書が関わる技術のような、従来の技術を使用して、そのような証拠を認証した場合、ユーザが、認証されていることを示す識別子を信頼されるコンピューティング サブシステム265から要求し、その識別子をカスタマイズ情報プロバイダ244またはカスタマイズ情報サーバ238に提供して、プロバイダ244またはサーバ238が、その識別子を、前述したとおり、プロバイダ244またはサーバ238が受け取ったユーザ識別子を有するユーザに関する、データベースの中の信頼されるコンピューティング識別子と比較する。受け取られた信頼されるコンピューティング識別子が、格納されている信頼されるコンピューティング識別子と一致した場合、カスタマイズ情報プロバイダ244またはカスタマイズ情報サーバ238は、前述したとおり、カスタマイズ情報を提供し、一致しなかった場合は、提供しない。他の諸実施形態では、カスタマイズ情報プロバイダ244またはカスタマイズ情報サーバ238自体が、信頼されるコンピューティング サブシステム265を認証し、信頼されるコンピューティング サブシステム265から信頼されるコンピューティング識別子を取り出し、その識別子を、口座データベース248の中でユーザ識別子に関して格納されている信頼されるコンピューティング識別子と比較し、そのような識別子は、ユーザが登録した際に、登録マネージャ222によって、そこに格納されている。信頼されるコンピューティング識別子が、ユーザに関して格納されている信頼されるコンピューティング識別子と一致しなかった場合、または信頼されるコンピューティング サブシステム265が、有効ではない場合、カスタマイズ情報プロバイダ244またはカスタマイズ情報サーバ238は、カスタマイズ情報の代わりに、エラー メッセージを提供する。
【0145】
さらに別の実施形態では、カスタマイズ情報を提供するようカスタマイズ情報プロバイダ244またはカスタマイズ情報サーバ238に要求するエンティティは、信頼されるコンピューティング サブシステム265を検証し、サブシステム265から信頼されるコンピューティング識別子を要求し、信頼されるコンピューティング識別子を受け取り、比較し、口座データベース248の中に格納されている識別子との比較を実行し、信頼されるコンピューティング サブシステム265が、真正であり、受け取られた信頼されるコンピューティング識別子が、口座データベース248の中でユーザに関して格納されている信頼されるコンピューティング識別子と一致すると判定された場合にだけ、そのような要求を行い、そのような信頼されるコンピューティング識別子は、登録プロセス中に、登録マネージャ222によって、口座データベース248の中でユーザの口座レコードの中に格納されている。この実施形態では、信頼されるコンピューティング識別子は、ユーザによって供給されるユーザ識別子、パスワード、またはその両方の代わりに使用されてもよく、あるいは、ユーザ識別子、パスワード、またはその両方に加えて使用されてもよい。
【0146】
前述したとおり、信頼されるコンピューティング識別子を取り出す試みが行われる際、信頼されるコンピューティング サブシステム265が、インストールされているが、ユーザが、ユーザ自身の認証を行っていないことをサブシステム265が示す場合、信頼されるコンピューティング識別子を要求するエンティティは、信頼されるコンピューティング サブシステムに対してユーザ自身の認証を行うようにユーザに指示するよう、信頼されるコンピューティング サブシステム265に指示するか、またはそのエンティティが、そうするようユーザに促す。全く応答が受け取られない場合、または信頼されるコンピューティング サブシステム265が、クライアント システム260上に全く存在しないことを示す応答が、受け取られた場合、要求を行うエンティティは、パーシステント ファイルを取り出そうと試み、前述したとおり、パーシステント ファイルを使用する。
【0147】
一実施形態では、ローミングは、信頼されるコンピューティング サブシステム265の少なくとも一部分を、1つのクライアントコンピュータシステム260から別のクライアントコンピュータシステム261に移動することによって実行され、したがって、パーシステント ファイルを、ローミング ユーザによって使用されているクライアントコンピュータシステム260にインストールすることは、必要ない。さらに別の実施形態では、ローミング プロセスは、ローミングのために使用される、前述した、さらなる信頼されるコンピューティング識別子を取り出し、ユーザの識別子に関連付けられて、データベース224または口座データベース248の中に格納することができる登録プロセスを使用し、信頼されるコンピューティング識別子は、前述したとおり、そのようなデータベースの中で、各パーシステント ファイルが、1回限りの使用向けである、または限られた期間の使用向けであると指定されると説明されたのと同じ形で、そのようなデータベースの中で、登録マネージャ222によって、そのように指定されることが可能である。そのような制限の実施は、前述したパーシステント ファイルの制限の実施と同一の形で作用する。
【0148】
(方法)
次に、図3Aを参照すると、本発明の一実施形態による、ユーザを登録して、ユーザが、コンピュータシステムからの通信を認証すること、コンピュータシステムが、ユーザを認証すること、またはその両方を可能にする方法を示す流れ図が、示されている。
【0149】
ユーザの身元の証拠が、前述したとおり、生成され、提供されることが可能である(310)。工程310で提供された証拠は、一実施形態では、前述したとおり、インターネットを介して、またはセッション外で(例えば、電子メール、電話機、または異なるセッションを介して)提供されることが可能であり、別の実施形態では、工程310は、省かれることが可能である。ユーザに対するセキュリティで保護された通信が、オプションとして、確立される(312)。ユーザの身元の十分な証拠が、要求され、ユーザの身元の証拠が、受け取られる(314)。証拠が十分でなかった場合(316)、図3Aの残りの工程の一部またはすべてへのアクセスは、拒否され(318)、方法は、工程314に進み、十分であった場合(316)、方法は、工程320に進む。
【0150】
工程320で、ユーザは、前述したとおり、カスタマイズ情報を選択する、または提供するように促され、カスタマイズ情報が、受け取られる。工程320は、工程312で確立されたSSL暗号化インターネット接続などの、セキュリティで保護された通信チャネルを介して実行されることが可能である。一実施形態では、工程320は、ユーザが、入力要求への応答を介して、使用されているインターネット接続が、T1、DSL,またはケーブル モデムのように、静的であることを示している場合、オプションとして、イーサネット カードのMACアドレス、または受信されたメッセージの送信元IPアドレスなどの、ユーザのコンピュータシステムの物理的識別子を獲得することを含む。カスタマイズ情報は、ユーザによって提供された内容、またはユーザの識別子に関連付けられる、サーバによって供給された1つまたは複数の内容の指示を含むことが可能である。カスタマイズ情報は、ユーザによって供給され、工程314で受け取られた証拠から探される、または工程322の一環として生成されることが可能な、ユーザの識別子とともに格納される322。一実施形態では、工程322は、ユーザ識別子に関連するコンピュータシステムの物理的識別子を格納することを含む。
【0151】
Flashローカル共有オブジェクトなどの、1つのセッションから別のセッションまでユーザのマシン上の状態を保存することができるパーシステント ファイル、または他の同様のデバイスが、ユーザ識別子、ならびにオプションとして、前述したコンピュータシステムの物理的識別子および/または証明書を使用して構築され324、パーシステント ファイルが、署名され326、暗号化され328、ユーザのシステム320上に格納されて、方法は、工程310に進む。クッキーが、パーシステント ファイルとして使用されることが可能であるが、Flashローカル共有オブジェクト、または他のファイルなどの、任意の他の同様のデバイスが、パーシステント ファイルとして使用されてもよい。
【0152】
次に、図3Bを参照すると、本発明の一実施形態による、ユーザの身元の証拠を提供し、受け取る方法を示す流れ図が、示されている。図3Bの工程が、例えば、図3Aの工程310〜318の一部またはすべての代わりに使用されることが可能である。
【0153】
ユーザは、ユーザ識別子や運転免許証番号などの、ユーザが、身元として示すとおりの人であることを検証するのに使用される情報を提供するよう、促される。ユーザによって提供されるそのような情報が、受け取られる(342)。例えば、ユーザ識別子を使用して、ユーザの名前、および在住の州を調べ、そのユーザの名前、および運転免許証番号を、ユーザの在住する州の車両管理局に送って、提供された運転免許証番号が、提供されたユーザ識別子に対応する名前と一致することを検証することにより、ユーザによって提供された情報を検証する試みが、行われることが可能である(344)。ユーザの情報の検証が、その検証を実行するのと同一の関係者から、または第三者から生成される、または受け取られる可能性も、提供された情報が一致することの否定が、同一の関係者、または第三者から生成される、または受け取られる可能性もある。受け取られるものが、ユーザによって提供された情報の様々な部分が、互いに一致したという検証であった場合(348)、方法は、工程350に進み、そうではなかった場合(348)、方法は、工程360に進む。
【0154】
工程350で、ユーザは、電話番号、電子メール、またはその他のセッション外通信識別子などの、セッション外識別子を求められることが可能であり、そのような識別子が受け取られるが(352)、別の実施形態では、そのような識別子は、工程340〜342の一環として求められ、受け取られ、さらに別の実施形態では、そのような入力要求は、全く使用されず、つまり、セッション外識別子が、工程352におけるユーザ識別子に対応する、データベースの中のレコードから取り出される。パスワードは、受け取られたセッション外識別子を使用して生成されて、提供され(354)、ユーザは、セッションを使用して、そのパスワードを入力するように促され、パスワードが、受け取られることが可能である(356)。
【0155】
工程354で生成されたパスワードが、工程356で受け取られたパスワードと一致しない場合、または工程356で、ある期間内に、パスワードが全く受け取られない場合(358)、ユーザは、本明細書で説明するとおり、カスタマイズ情報を登録することを許されず(360)、それ以外の場合(358)、ユーザは、本明細書で説明するとおり、カスタマイズ情報を登録することを許される(362)。工程362は、新たなパスワードを提供するようユーザに要求することを含むことが可能であり、そのようなパスワード、または提供されたパスワードは、前述したとおり、ユーザ識別子に関連付けられて格納されることが可能である。
【0156】
工程350〜358で、セッション外通信ブランチを使用することは必要ない。一実施形態では、工程342で受け取られたユーザ情報により、ユーザの身元が検証された場合(348)、方法は、図に破線で示されるとおり、工程362に進む。さらに別の実施形態では、セッション外識別子は、既知であり、その識別子を使用して、ユーザを認証することが可能であり、したがって、方法は、一実施形態では、工程354で始まり、あるいは工程354が、工程342の後に続き、工程340および342の検証可能な情報は、ユーザ識別子だけ、またはユーザ識別子およびパスワードだけを含む。
【0157】
次に、図3Cを参照すると、本発明の一実施形態による、コンピュータシステムが、ユーザを認証することを可能にし、かつ/またはユーザが、同一のコンピュータシステム、または異なるコンピュータシステムから受け取られた通信を認証することを可能にする方法を示す流れ図が、示されている。図3Cの工程は、図3Aの工程の一部またはすべての後に、実行されることが可能である。
【0158】
Webページを求める要求が、受け取られ(370)、暗号化されたパーシステント ファイルからの情報が、受け取られた要求の送信元のデバイスから読み取られ(372)、パーシステント ファイルが、解読される。パーシステント ファイルは、本明細書で説明するとおり、検証される(374)。パーシステント ファイルが、有効でないことを工程374が示した場合(376)、要求されたWebページへのアクセス、またはWebサイトの残りの部分へのアクセスが、拒否されることが可能であり(378)、方法は、工程370に進み、そのように示さなかった場合(376)、方法は、工程380に進む。
【0159】
工程380で、要求が、機密情報を要求しない、またはユーザが認証されることを所望する可能性がある情報を提供しないWebページを求める要求であった場合、要求されたWebページが、提供されることが可能であり(382)、方法は、工程370に進み、それ以外の場合(380)、方法は、工程384に進む。図に破線で示される別の実施形態では、工程380の試験は、実行されず、工程384は、無条件で、工程380の「有効」ブランチの後に続く。
【0160】
工程384で、工程372で取り出されたパーシステント ファイルの中に格納されている、またはユーザによって入力されたユーザ識別子を使用して、前述したとおり、そのユーザ識別子に関連付けられたカスタマイズ情報が取り出され、カスタマイズ情報は、オプションとして、要求されたWebページに組み込まれることが可能であり(386)、Webページおよびカスタマイズ情報は、カスタマイズ情報が、Webページと同一の接続を介して提供される場合、セキュリティで保護された接続を介して提供され、あるいはカスタマイズ情報は、前述したとおり、セッション外で提供されてもよい(388)。
【0161】
図6は、本発明の一実施形態による図3Cの方法の続きを示す流れ図である。次に、図6を参照すると、工程388の後、ユーザが、カスタマイズ情報を認識した後(610)、ユーザは、例えば、工程386で提供されたWebページを使用して、ユーザ識別子およびパスワード612を提供することが可能であり、ユーザ識別子が、受け取られ(614)、工程372で取り出されたユーザ識別子と比較されることが可能である(616)。ユーザが、カスタマイズ情報を認識しない場合(610)、ユーザは、ユーザ識別子、パスワード、またはその両方などの、機密情報を提供することを拒否することができる(618)。
【0162】
工程612でユーザから受け取られたユーザ識別子が、工程372で取り出されたユーザ識別子と一致しない場合(620)、ユーザは、Webサイトの一部またはすべて、あるいはユーザに関連する情報へのさらなるアクセスを拒否され(622)、一致した場合(620)、ユーザは、そのようなアクセス(624)を許可される。
【0163】
別の実施形態では、カスタマイズ情報は、ユーザが、ユーザ識別子、または他の同様の識別子を供給するまで、提供されない。次に、図5Bを参照すると、本発明の一実施形態による、コンピュータシステムに対してユーザの認証を行い、同一のコンピュータシステム、または異なるコンピュータシステムからの通信をユーザに対して認証する方法が、示されている。Webページを求める要求が、受け取られ(520)、ユーザ識別子を求める入力要求を含むWebページが、提供される(522)。工程522で提供されるWebページは、カスタマイズ情報も、カスタマイズ情報を求める入力要求も含まず、そのWebページの送信元のURL以外、ユーザが認証することを所望する可能性がある情報を供給する必要がない。
【0164】
ユーザ識別子、ならびに署名済みの暗号化されたパーシステント ファイルからの他の情報が、前述したとおり、受け取られる(524)。パーシステント ファイルは、前述したとおり、解読され、かつ/または検証され、ユーザ識別子は、Webページを介して供給されたユーザ識別子と比較される(526)。パーシステント ファイルが、有効でない、一致しない、またはユーザ識別子が、一致しない、またはその両方である場合、ユーザには、Webサイトの残りの部分へのアクセスが与えられない(530)。
【0165】
それ以外の場合(528)、ユーザ識別子に関連付けられたカスタマイズ情報が、取り出され(532)、パスワード要求を含むWebページが、工程532で取り出されたカスタマイズ情報でカスタマイズされる(534)。工程534でカスタマイズされたページは、セキュリティで保護された接続などを介して、ユーザに提供され、ユーザによって供給されたパスワードが、受け取られる(538)。例えば、ユーザ識別子を使用してデータベースから、正しいパスワードが取り出され、ユーザによって供給されたパスワードが、その正しいパスワードと比較される(540)。ユーザによって供給されたパスワードが、正しいパスワードと一致しない場合(542)、ユーザは、Webサイトのさらなる部分へのアクセスを拒否され(544)、一致した場合(542)、Webサイトへのアクセスが、許可される(546)。図5Bは、パスワードを使用するが、他の諸実施形態では、パスワードに加えて、またはパスワードの代わりに、任意の機密情報が使用されることが可能であり、工程538〜544の一部またはすべてが、実行されなくてもよい。
【0166】
一実施形態では、パーシステント ファイルは、デジタル証明書、および/またはネットワーク カードのMACアドレス、そのコンピュータシステムによって使用される静的IPアドレス、あるいは、ユーザによって使用されているコンピュータシステムが、前述したとおり、登録するのに使用されたコンピュータシステムと同一であることを、確実にではないが、少なくとも示すのに使用されることが可能な、他の同様な情報などの、コンピュータシステムの識別子を含む。工程542は、デジタル証明書、および/またはパーシステント ファイルからの識別子、およびコンピュータシステムからの同様の識別子を受け取ることを含むことが可能であり、工程526は、それら2つの識別子を比較すること、デジタル証明書を検証すること、またはその両方を含む。工程528で、以上に明記した諸条件に加えて、2つのコンピュータシステム識別子が一致しない場合、または証明書が、有効でない場合、Webサイトの一部またはすべてへのアクセスが拒否され、それ以外で、前述した他の諸条件が成立しない(署名が一致しない、またはユーザ識別子が一致しない)場合、方法は、工程532に進む。
【0167】
次に、図4を参照すると、本発明の一実施形態による、コンピュータシステムからの通信をユーザが認証する方法が、示されている。身元の十分な証拠が、オプションとして、受け取られ(例えば、セッション外で)、前述したとおり、提供される(410)。前述したとおり、カスタマイズ情報を提供すること、カスタマイズ情報を選択すること、またはカスタマイズ情報を受け取ることなどの、カスタマイズ情報が、識別される(412)。暗号化された署名済みのパーシステント ファイルが、前述したとおり、受け取られ、格納されることが可能である(414)。
【0168】
Webページを求める要求が、提供され、オプションとして、暗号化された署名済みのパーシステント ファイルからの情報が、提供される(416)。Webページ、ならびに、オプションとして、あるカスタマイズ情報が、受け取られ(418)、そのカスタマイズ情報が、工程412で提供された、または選択されたものと比較される(420)。受け取られたカスタマイズ情報が、工程412で識別されたカスタマイズ情報に対応する場合(422)、(例えば、カスタマイズ情報が、一致する、またはそれ以外の形で予期されるため)情報が、受け取られ、信じられる、または提供されることが可能であり(426)、対応しない場合、ユーザは、情報を受け取ることを拒否する、または受け取られた情報を信じることを拒否する、または要求された情報を提供することを拒否することができる(426)。
【0169】
次に、図7Aおよび図7Bから成る図7を参照すると、本発明の一実施形態による、前述したとおり、ユーザが、登録を行うのに使用したコンピュータシステム以外のコンピュータシステムから、ローミング ユーザが、ログインすることを可能にする方法が示されている。ログイン ページを求める要求が、受け取られ、そのようなページが、提供される(710)。一実施形態では、ログイン ページは、ユーザが、ユーザのユーザ識別子を入力することを可能にするテキスト ボックスを含み、ユーザは、ユーザのユーザ識別子を入力し、リモート(すなわち、「ローミング」)ログインまたは登録を示す、Webページ上のチェックボックスにチェックマークをつけ、従来のCGI技術を使用することなどにより、テキスト ボックスの内容を戻すことができる。リモート/登録チェックボックスが、選択されない、あるいは登録またはローミング ログインが、それ以外で示されない場合(712)、本明細書で説明するログイン プロセスが、行われる(714)。それ以外の場合(712)、ユーザが、ローミングと呼ばれるプロセスである、そのコンピュータシステムから登録する、またはログインすることを所望していること、ならびにユーザが実行することを所望しているローミングのタイプを示すことを、ユーザが行うことができるようにする1つまたは複数のユーザ インタフェース要素を有するWebページが、提供される(716)。ユーザは、応答を入力し、例えば、従来のCGI技術を使用して、その応答を提供し、その応答が、受け取られる(718)。
【0170】
ユーザが、登録することを所望していることを応答が示す場合(720)、ユーザは、本明細書で説明するとおり、カスタマイズ情報を登録する(722)。それ以外の場合(720)、代替のパスワードが、生成され、工程712でユーザから受け取られたユーザ識別子に関連付けられて、あらかじめ格納されているセッション外識別子(例えば、電子メールアドレスまたは電話番号)を使用して、セッション外で(例えば、電子メールまたは電話を介して)提供され(724)、あるいはユーザが、ユーザの身元の十分な証拠を提供し、セッション外識別子を提供してもよい。工程724は、代替のパスワードが提供されていることをユーザに通知するWebページを提供することを含むことが可能であり、この工程は、識別子のタイプに依存して実行されることが可能であり、例えば、セッション外識別子が、例えば、電子メールを使用する、代替のパスワードが格納される識別子である場合、そのWebページを提供するが、代替のパスワードが、格納されない場合、例えば、セッション外識別子が、電話番号である場合、提供しない。
【0171】
代替のパスワードを入力するようユーザに要求するWebページが、提供され、応答が、受け取られて、工程724において提供された代替のパスワードと比較される(726)。一実施形態では、そのWebページは、前述したとおり、代替のパスワードが提供されているとユーザに通知するのに使用されたのと同一のWebページであってもよい。応答が、代替のパスワードと一致した場合(728)、方法は、工程740に進み、一致しない場合(728)、ユーザは、Webサイトを介して利用可能なある情報およびアクションへのアクセスを拒否される(730)。
【0172】
工程740で、ユーザが、工程718において、ユーザがログインを行っているコンピュータシステムが、そのユーザをログインするのに無期限に使用されることを許すローミングのタイプを指定している場合、ユーザのパーシステント ファイルのコピーが、コンピュータシステム742にコピーされ、ユーザは、前述したとおり、オプションとして、ログイン ページにリダイレクトされることにより、ログインすることができる(744)。
【0173】
一実施形態では、そのWebサイトに関するパーシステント ファイルが、そのコンピュータシステム上に既に存在する場合、そのパーシステント ファイルが、工程716で読み取られ、工程742は、取り出されたパーシステント ファイルに対応する1名または複数名のユーザ、ならびにローミング ユーザに関する情報を含む複合パーシステント ファイルを生成することを含む。パーシステント ファイルに記述される各ユーザに関する、異なる通し番号が、前述したとおり使用されるように、パーシステント ファイルに割り当てられることが可能である。このログイン プロセスは、パーシステント ファイルの中に格納されているすべてのユーザ識別子を調べ、ユーザのユーザ識別子が、パーシステント ファイルの中の情報に対応するユーザのいずれかのユーザに対応する場合、ユーザがログインすることを許すことを含む。パーシステント ファイルを組み合わせる際、現在の日付と時刻より前である失効の日付と時刻に対応するユーザらは、パーシステント ファイルから削除される。
【0174】
工程740で、工程718において示されたローミングのタイプが、1回限りの使用である場合、1回限りの使用のパーシステント ファイルとして指定されたパーシステント ファイルが、生成され、そのような指定は、パーシステント ファイルの中に入っている、またはデータベースの中に入っている(746)。また、一実施形態では、工程746は、失効の日付と時刻を計算し、パーシステント ファイルに関連付けることを、前述したとおり、その日付と時刻をパーシステント ファイルの中に格納すること、またはデータベースの中に、パーシステント ファイルの署名、およびユーザ識別子に関連付けて格納することにより、行うことも含む。工程746で生成されたパーシステント ファイルは、ユーザの情報を、前述したとおり、既存のパーシステント ファイルから読み取られた他のユーザらの情報と組み合わせる、複合パーシステント ファイルであることが可能であり、各ユーザは、異なる通し番号が割り当てられている、複合パーシステント ファイルの中に格納されたパーシステント ファイルに対応する。
【0175】
パーシステント ファイルは、コンピュータシステム上に格納され(748)、例えば、ユーザをログイン ページにリダイレクトすることにより、ユーザが、ログインすることを許され、方法は、図7Bの工程760に進む。工程748は、ユーザおよびパーシステント ファイルに通し番号を割り当て、その通し番号、ならびに提供されたパスワード、またはそのパーシステント ファイルとともに使用されるべき、異なるパスワードを格納することを含むことが可能であり、そのような格納は、ユーザ識別子に関連付けられる。
【0176】
工程718で示されたローミングのタイプが、限られた期間のローミングである場合740、その期間は、工程716において提供されるWebページ上のユーザ インタフェース要素を使用して、ユーザによって指定されることが可能であり、期間は、工程718における応答の一環として受け取られる。パーシステント ファイルが、生成され、そのパーシステント ファイルに関する失効の日付と時刻が、現在の時刻に、ユーザによって指定された期間を加算することによって(または、ユーザによって指定された期間の代わりに、ユーザによって指定された有効期限を使用することにより)計算され、失効の日付と時刻は、その日付と時刻をパーシステント ファイルに含めることにより、または失効の日付と時刻、ならびにパーシステント ファイルの署名を、ユーザ識別子に関連付けて、データベースに加えることにより、パーシステント ファイルに関連付けられて格納される(750)。パーシステント ファイルは、コンピュータシステム上に格納され、オプションとして、前述したとおり、別のパーシステント ファイルからの情報と組み合わされ(各ユーザは、異なる通し番号が割り当てられている、複合パーシステント ファイルの中に格納されたパーシステント ファイルに対応する)、例えば、ユーザをログイン ページにリダイレクトすることにより、ユーザが、ログインすることを許される(752)。工程752は、ユーザおよびパーシステント ファイルに通し番号を割り当て、その通し番号、ならびに提供されたパスワード、またはそのパーシステント ファイルとともに使用されるべき、異なるパスワードを格納することを含むことが可能であり、そのような格納は、ユーザ識別子に関連付けられる。
【0177】
工程760(図7Bに示された)で、ログインする要求が、受け取られる。1つまたは複数のログイン ページが、ユーザに提供されることが可能であり、ログイン ページは、前述したとおり、ユーザに関して登録されたカスタマイズ情報とともに提供されている、ユーザのパスワードを要求し、パーシステント ファイル、ユーザのユーザ識別子、およびパスワードが、受け取られる(762)。パーシステント ファイルは、前述したとおり、検証され、ユーザによって供給されたユーザ識別子が、そのパーシステント ファイルの中に格納されているユーザ識別子と比較されることが可能であり、受け取られたパスワードは、通常のパスワードであるか、またはパーシステント ファイルの通し番号に基づいて工程724で提供されたパスワードである、ユーザ識別子に関して格納されているパスワードと照合され、パーシステント ファイルが調べられて、そのパーシステント ファイルが、特定の特徴に対応するかどうか、例えば、そのパーシステント ファイルが、前述したとおり、1回限りのパーシステント ファイル、もしくは限られた期間のパーシステント ファイルであるかどうかが確認される(764)。
【0178】
パーシステント ファイルが、有効であり、ユーザ識別子が、一致し、受け取られたパスワードが、ユーザの通常のパスワード、またはユーザ識別子、パーシステント ファイルの通し番号に対応するパスワードと一致した場合(766)、方法は、工程770に進み、それ以外の場合(766)、一部の情報へのアクセスが、拒否される(768)。
【0179】
工程770で、パーシステント ファイルが、1回限りのファイル、または限られた期間のファイルとしての特別な特徴に対応していない場合、ユーザは、Webサイトの情報および/または活動へのアクセスを許される772。パーシステント ファイルが、特別な特徴に対応する場合(770)、パーシステント ファイルが、失効の日付を過ぎている場合(780)、方法は、工程768に進む。そうではなく(780)、パーシステント ファイルが、期限付きである(ただし、1回限りの使用のパーシステント ファイルではない)場合(782)、方法は、工程772に進む。
【0180】
パーシステント ファイルが、1回限りの使用のパーシステント ファイル(782)であり、パーシステント ファイルが、それまでに使用されている場合(784)、方法は、工程768に進み、使用されていない場合(784)、パーシステント ファイルには、使用済みというマークが付けられ(786)、方法は、工程772に進む。
【0181】
前述した方法は、1回限りの使用のパーシステント ファイルも、限られた期間のものであると想定している。1回限りの使用のパーシステント ファイルが、限られた期間のものではないケースでは、工程782および780は、逆の順序で実行されることが可能であり、工程780は、工程782の「時間」ブランチに関してだけ実行され、工程780における「いいえ」ブランチの後には、工程772が続く。
【0182】
次に、図3Dおよび図3Eを参照すると、本発明の一実施形態による、ユーザが、オプションとして、コンピュータシステムからの1つまたは複数の通信を認証すること、およびコンピュータシステムが、オプションとして、ユーザを認証することを可能にし、情報を表示する方法が、示されている。図3Dおよび図3Eの工程は、以下に述べる点を除き、図3Cの工程と同一である。
【0183】
工程372の代わりに、パーシステント ファイルから情報を読み取り、解読しようとする試みが、行われる(371)。試みが、成功した場合373、方法は、工程374に進み、成功しなかった場合373、方法は、工程389に進む。一実施形態では、図に破線で示されるとおり、パーシステント ファイルが、有効ではない場合、方法は、一実施形態では、工程389に進むことが可能であり、あるいは別の実施形態では、工程378に進むことが可能である。
【0184】
工程389で、要求されたページが、そのユーザに対するセッションにおける最初のページであった場合(389)、コンピュータシステムが、登録されておらず、要求されているサイトへのリンクが、辿られる、またはブラウザの中にペーストされるべきではなく、代わりにタイプ入力されるべきことをユーザに警告し、ユーザが、前述したとおり、ローミングのためにコンピュータシステムを登録することを可能にするリンクを含むWebページが、提供される(390)。ユーザが、登録のためのリンクをクリックした場合(391)、方法は、図7Aの工程710または716に進み、あるいは図7Aまたは図7Bの別の工程に進む。ユーザが、登録するリンクをクリックしなかった場合(391)、またはページが、そのユーザに対するセッションにおける最初のページではなかった場合(389)、方法は、一実施形態では、図3Eの工程392に進み、あるいは別の実施形態では、図3Eの工程399Cに進む。
【0185】
図3Eの工程392で、Webページが、パスワードを要求しない場合(392)、方法は、工程399Cに進み、要求する場合(392)、コンピュータシステムが、キーストロークをログ記録する可能性があることをユーザに警告し、1回限りの使用のパスワード、または他の代替のパスワードを受け取るリンクを提供するWebページが、提供される。ユーザが、代替のパスワードを受け取るリンクを選択しなかった場合(394)、方法は、工程399Cに進む。選択した場合(394)、電子メールアドレスまたは電話番号などのセッション外識別子が、取り出され(395)、代替のパスワードが、生成され、ユーザ識別子に関連付けられて格納され、セッション外識別子を介して提供される(396)。ユーザは、その代替のパスワードを取り出して、そのパスワードを入力するように促され、そのパスワードが、受け取られて、生成された代替のパスワードと比較される(397)。受け取られたパスワードが、代替のパスワードと一致した場合(398)、ユーザは、Webサイトの一部またはすべてへのアクセスを許可され(399A)、方法は、工程370に進み、一致しなかった場合(398)、ユーザは、Webサイトの一部またはすべてへのアクセスを拒否される。工程399Cで、要求されたWebページが、カスタマイズ情報の代わりに、前述した警告とともにユーザに提供され、方法は、工程370に進む。一実施形態では、ユーザが、前述したとおり、ユーザを登録するのに使用されたのと同一のコンピュータシステム上でWebページを閲覧していたとすれば、カスタマイズ情報を含んでいたであろうWebページだけが、警告を含み、他のページは、警告を含まない。
【0186】
次に、図8Aを参照すると、本発明の一実施形態による、ユーザが、電子メールメッセージを認証することを可能にする方法が、示されている。方法は、数名のユーザの各々に関して繰り返されることが可能である。
【0187】
カスタマイズ情報が、ユーザによって受け取られ、または指定され(810)、そのカスタマイズ情報が、前述したとおり、そのユーザに関するユーザ識別子に関連付けられて格納される(812)。電子メールメッセージが、そのユーザ向けに準備されて、メッセージ、ユーザ識別子、ならびに、オプションとして、ユーザの電子メールアドレスが、提供される(814)。1つまたは複数のカスタマイズ情報識別子が、生成され、リンク、または1つまたは複数のタグ、または1つまたは複数のリンクを含むコード、あるいは以上のいずれか、またはすべてに組み込まれ、前述したとおり、メッセージに追加され、カスタマイズ情報識別子は、ユーザ識別子、あるいはそのユーザ識別子に関するカスタマイズ情報に関連付けられて格納される(816)。メッセージは、オプションとして、電子メールメッセージに組み込まれ(そのメッセージが、電子メールメッセージに既に組み込まれているのでない場合)、その電子メールメッセージが、アドレスに送信される(818)。前述したリンクのいずれか(例えば、リンク、タグの中のリンク、またはコンピュータコードの中のリンク)に対応する情報を求める要求が、ユーザが、メッセージを開いたため、またはリンクをクリックしたため、またはリンクをペーストしたため、またはコンピュータコードを動作させたために、受け取られる(820)。
【0188】
そのリンクまたはリンク群に対応するカスタマイズ情報が、要求に応答して探し出され、提供され(840)、ユーザは、そのカスタマイズ情報を使用して、メッセージを認証することを可能にされる(842)。提供されたカスタマイズ情報が、ユーザによって予期されるカスタマイズ情報であった場合(844)、ユーザは、そのメッセージを真正であるものとして扱うことができる(848)。そうではなかった場合、または全くカスタマイズ情報が受け取られなかった場合、またはカスタマイズ情報が、予期されたものではなかった場合(844)、ユーザは、そのメッセージを真正でないものとして扱うことができる(846)。
【0189】
次に、図8Bを参照すると、本発明の一実施形態による、ユーザが、電子メールメッセージを認証すること、およびコンピュータシステムが、ユーザを認証することを可能にする方法が、示されている。図8Bは、工程820と工程840の間における要素および流れ以外は、図8Aと同一である。一実施形態では、工程840が、工程820の後に続く代わりに、工程830が、工程820の後に続き、工程830〜836が、以下のとおり追加される。
【0190】
工程830で、パーシステント ファイルからの情報が、受け取られる。パーシステント ファイルは、前述したとおり、検証され、パーシステント ファイルからの、ユーザ識別子などの情報が、工程820で要求とともに受け取られたカスタマイズ情報識別子に関連するユーザ識別子などの情報と比較される(832)。パーシステント ファイルが、有効であり、前述したとおり比較された情報が、一致した場合(834)、方法は、工程840に進み、一致しなかった場合(834)、要求は、破棄されるか(836)、またはエラー メッセージが応答で提供されることが可能である。
【0191】
パーシステント ファイルからの情報を格納された情報とクロスチェック(cross check)することは、ユーザの電子メールクライアントが、パーシステント ファイルを、または、特にクッキーをサポートするかどうかなどの、ユーザの口座識別子に関連付けられて格納された一部の情報に応答して行われることが可能である。図に破線で示されるとおり、一実施形態では、工程830が、工程820の後に続く代わりに、工程822が、工程820の後に続く。
【0192】
工程822で、ユーザ識別子とともに格納されている情報が調べられて、ユーザの電子メール クライアントが、パーシステント ファイルを、または、特にクッキーをサポートしているかどうかが確かめられる。サポートしている場合(824)、方法は、工程830に進み、サポートしていない場合(824)、方法は、工程840に進む。ユーザ識別子とともに格納されている情報は、ユーザによって、またはシステム管理者によって、そこに置かれていることが可能であり、あるいは、前述したとおり、パーシステント ファイルの以前の読み取りまたは操作の結果であることが可能である。
【0193】
次に、図10Bを参照すると、本発明の一実施形態による電子メールメッセージを提供し、表示する方法が、示されている。第1のユーザが、選択され(1030)、ユーザ向けに個人用設定されていることが可能なメッセージのためのテキスト、FlashコードまたはJavascriptコードなどの、工程1040〜1050を実施するコード、および暗号化されたカスタマイズ情報を含む、電子メールメッセージが、その選択されたユーザ向けに構築される(1032)。メッセージは、電子メールメッセージの中に組み込まれ、選択されたユーザの電子メールアドレスに送信される(1034)。さらなるユーザが存在する場合(1036)、別のユーザが、選択され(1038)、方法は、その新たな選択されたユーザを使用して、工程1032に進み、存在しない場合(1036)、方法は、終了する(1040)。
【0194】
メッセージは、工程1034に関連して前述したとおり、ユーザに送信された後、工程1050〜1060で説明され、工程1034と工程1050の間の破線で示されるとおり、例えば、ユーザが、メッセージを開こうと試みる際に、任意のそのようなユーザによって操作されることが可能である。
【0195】
工程1050で、ユーザは、ユーザ識別子を求められ、ユーザは、ユーザ識別子を供給する。Flashローカル共有オブジェクト、または他の類似のファイルが、読み取られて、解読され、署名が、そのファイルからの情報を使用して生成され、そのファイルの中に格納されている署名と比較され、ユーザから受け取られたユーザ識別子が、Flashローカル共有オブジェクトの中のユーザ識別子と比較される(1052)。署名が、一致し、工程1050で受け取られたユーザ識別子が、ファイルの中に含まれるユーザ識別子と一致した場合(1054)、暗号化されたカスタマイズ情報が、解読され(1056)、解読されたカスタマイズ情報、およびメッセージ テキストが表示されて、ユーザが、メッセージの送信元を認証することを可能にし(1058)、それ以外の場合(1054)、エラーが示されることが可能である(1060)。別の実施形態では、メッセージ自体が、暗号化されたユーザ識別子を含み、工程1052は、そのユーザ識別子(Flashローカル共有オブジェクトからのユーザ識別子ではなく)を解読すること、およびそのユーザ識別子を、ユーザから受け取られたユーザ識別子と比較することから成る。
【0196】
(セキュリティで保護された取引)
次に、図9Aを参照すると、本発明の一実施形態による、インターネットを介して取引の代金を支払う方法が、示されている。取引が、前述したとおり、開始される(910)。ユーザのユーザ識別子を要求するWebページが、オプションとして、受け取られる(912)。ユーザのカスタマイズ情報を含み、パスワードおよび/または口座番号などの機密情報を提供することにより、前述したとおり、支払いの許可を要求する1つまたは複数のWebページが、受け取られる(914)。そのカスタマイズ情報が、予期されるカスタマイズ情報に照らして調べられる(916)。カスタマイズ情報が、受け取られない場合、または予期されるカスタマイズ情報と一致しない場合(918)、許可は、与えられず(920)、一致した場合(918)、許可が、与えられ(922)、ユーザの金融手段に対する料金請求が、受け取られ、取引の確認が、受け取られる(924)。
【0197】
前述したとおり、工程912と工程914は、ユーザ識別子および機密情報が、ユーザのカスタマイズ情報を含む単一のページを介して要求され、提供されることが可能であるように、組み合わせられてもよい。
【0198】
次に、図9Bを参照すると、本発明の一実施形態による、ユーザの金融手段に料金請求する許可を受け取る方法が、示されている。料金請求が行われる品物および/またはサービスの品質などの、取引情報が、金融手段に料金請求する明確な、または暗黙の要求とともに受け取られる(930)。
【0199】
別の形で、商人の識別子、または別の形で、支払いが受け取られるべき口座を示す識別子、取引の識別子、および取引金額のいずれか、またはすべてを含む、パラメータの形態で、または別の形で符号化されていることが可能な情報を含むリダイレクト コマンドが、提供され(932)、実行される。また、それらの項目の1つまたは複数の項目の署名、または情報の検証を可能にする別のコードも、コマンドの中で提供されることが可能である。リダイレクト コマンドの実行により、前述したとおり、要求が生成させられ、符号化された情報を含む要求が、受け取られる(934)。一実施形態では、要求は、工程932でコマンドを送ったエンティティとは異なる商業エンティティによって受け取られる。
【0200】
商人の、または支払いを受け取るべき他の口座の署名および/または識別子が、前述したとおり、検証され(936)、その署名または識別子が、有効ではなかった場合(938)、支払いの処理は、終了され、ユーザを元のWebサイト940に戻すリダイレクト コマンドが、提供されることが可能である。リダイレクト コマンドは、ユーザのリダイレクトが最初に行われた起点のWebサイトによって扱われることが可能であるように、エラーを示すことが可能である。署名、および商人識別子、およびその他の類似の識別子が、有効であった場合(938)、パーシステント ファイルが、解読され、検証される(942)。パーシステント ファイルが、有効であった場合(944)、ユーザは、前述したとおり、Webページを介してユーザ識別子を求められ、ユーザ識別子が、受け取られ、パーシステント ファイルからのユーザ識別子、および/または登録されたユーザ識別子のなかからのユーザ識別子と比較され(946)、方法は、工程948に進み、有効でなかった場合(944)、方法は、工程940に進む。
【0201】
工程948で、工程946において受け取られたユーザ識別子が、パーシステント ファイルの中のユーザ識別子、登録されたユーザ識別子、またはその両方と一致した場合、ユーザによって認識される、またはそれ以外で予期されるカスタマイズ情報に対応するカスタマイズ情報が、パスワード、金融機関における口座番号、またはそれらの両方を求めるWebページ上で提供され、機密情報が、受け取られて、ユーザに関して格納されている機密情報と比較され(950)、方法は、工程952に進み、一致しなかった場合(948)、方法は、工程940に進む。
【0202】
工程952で、工程950で受け取られた機密情報が、比較された機密情報と一致した場合、許可識別子が、生成される、または受け取られることが可能であり、料金請求が、ユーザの金融手段(そのユーザに関して格納されている金融手段、またはそのユーザによって指定された金融手段)に行われることが可能であり、取引識別子や許可識別子などの、符号化された情報を含むことが可能であり、オプションとして、検証されることが可能なそれらの識別子の署名を含むことが可能なリダイレクト コマンドが、提供される。工程954は、1つのエンティティから別のエンティティに許可識別子を送ること、およびそのエンティティが、その許可識別子を受け取ることを含むことが可能である。リダイレクトの結果は、取引が行われたことを確認するWebページまたは電子メールが、ユーザに向けられることであることが可能である(956)。工程950の比較が、失敗した場合(952)、方法は、工程940に進む。
【0203】
次に、図11Aを参照すると、本発明の一実施形態によるユーザを登録する方法が、示されている。ユーザの身元の証拠、およびユーザ識別子が、前述したとおり、受け取られる(1110)。カスタマイズ情報が、受け取られ、ユーザの識別子に関連付けられる(1112)。バイオメトリック サブシステムなどの、信頼されるコンピューティング ファシリティと通信する試みが、行われる(1114)。応答が、信頼されるコンピューティング ファシリティから受け取られ、オプションとして、その信頼されるコンピューティング ファシリティ自体が、検証された場合(1116)、ユーザが、現在、認証されていることを、その信頼されるコンピューティング ファシリティが示す場合(1118)、信頼されるコンピューティング識別子が、受け取られ(1122)、その信頼されるコンピューティング識別子が、ユーザ識別子に関連付けられる(1124)。ユーザが、認証されていない場合(1118)、ユーザは、信頼されるコンピューティング ファシリティに対してユーザ自身の認証を行うように促される。信頼されるコンピューティング ファシリティからの応答が全くない場合、またはそのファシリティを検証できない場合(1116)、前述したとおり、パーシステント ファイルが、生成され、ユーザのコンピュータシステム上に格納される。
【0204】
次に、図11Bを参照すると、本発明の一実施形態によるユーザを認証する方法が、示されている。バイオメトリック サブシステムなどの、信頼されるコンピューティング ファシリティと通信する試みが、行われる(1140)。応答が、信頼されるコンピューティング ファシリティから受け取られ、オプションとして、その信頼されるコンピューティング ファシリティが、検証された場合(1142)、ユーザが、現在、認証されていることを、その信頼されるコンピューティング ファシリティが示す場合(1144)、信頼されるコンピューティング識別子が、取り出され(1148)、その信頼されるコンピューティング識別子が、格納されている識別子と比較される(1150)。工程1150が、すべてのユーザに関して格納されている、すべての信頼されるコンピューティング識別子、あるいは、例えば、ユーザ識別子を使用して、またはパラメータもしくは一意のリンクを含む要求を介して、自分の身元を提示した特定のユーザに関して格納されている、信頼されるコンピューティング識別子のすべてを走査することにより、実行されることが可能である。一致が生じた場合1152、カスタマイズ情報が、提供され(1154)、また、カスタマイズ情報の提供者によるユーザの認証の後に続く、他の図のいずれかに関連して本明細書で説明した他の工程も、実行されることが可能である(1156)。一致が生じなかった場合(1152)、パーシステント ファイルを使用することなどの、他の図のいずれかに関連して本明細書で説明した他の工程が、実行されて、ユーザの認証が行われることが可能である(1158)。
【0205】
工程1144で、ユーザが、信頼されるコンピューティング サブシステムに対して認証されない場合、ユーザは、ユーザ自身の認証を行うように促され(1146)、方法は、工程1144に進む。工程1142で、信頼されるコンピューティング ファシリティが、応答しない場合、または有効ではない場合、方法は、工程1158に進む。図に破線で示される一実施形態では、前述したとおり工程1158が実行される代わりに、カスタマイズ情報へのアクセスが、拒否される(1160)。
【0206】
図11Bの方法が、ユーザ識別子、パスワード、またはその両方を提供するようにユーザに促す代わりに、またはパーシステント ファイルの中に格納されているユーザ識別子を受け取り、認証し、比較する代わりに、あるいは以上のいずれか、またはすべての代わりに、前述したユーザ プロセスの認証の一環として実行されることが可能である。
【0207】
前述した案は、任意の形で組み合わせされることが可能であり、したがって、1つの流れ図、または概略図の一部分に関連して説明したいくつかの工程は、別の流れ図、または概略図の他の部分に関連して実行されてもよい。
【0208】
いずれの出願の請求項も、その出願、および親出願の出願履歴に関連してだけ限定されるべきであり、そのような出願または親出願を継続する、または一部継続することが可能な、他のいずれの出願の、特許査定後の出願履歴によっても限定されるべきではない。
【図面の簡単な説明】
【0209】
【図1】従来のコンピュータシステムの概略ブロック図である。
【図2A】本発明の一実施形態による、ユーザが、コンピュータシステムからの1つまたは複数の通信を認証することを可能にするため、および同一のコンピュータシステム、もしくは異なるコンピュータシステムが、そのユーザを認証することを可能にするためのシステムの概略ブロック図である。
【図2B】本発明の一実施形態による、支払いを許可する目的で、ユーザが、コンピュータシステムを認証することを可能にするため、および同一のコンピュータシステム、もしくは異なるコンピュータシステムが、そのユーザを認証することを可能にするためのシステムの概略ブロック図である。
【図3A】本発明の一実施形態による、ユーザを登録して、ユーザが、コンピュータシステムからの通信を認証することを可能にする、コンピュータシステムが、ユーザを認証することを可能にする、またはその両方をできるようにする方法を示す流れ図である。
【図3B】本発明の一実施形態によるユーザの身元の証拠を提供し、受け取る方法を示す流れ図である。
【図3C】本発明の一実施形態による、コンピュータシステムが、ユーザを認証することを可能にし、かつ/またはユーザが、同一のコンピュータシステム、もしくは異なるコンピュータシステムから受信された通信を認証することを可能にする方法を示す流れ図である。
【図3D】本発明の一実施形態による、ユーザが、コンピュータシステムからの1つまたは複数の通信をオプションとして認証することを可能にし、コンピュータシステムが、ユーザをオプションとして認証することを可能にし、情報を表示する方法を示す流れ図である。
【図3E】本発明の一実施形態による、ユーザが、コンピュータシステムからの1つまたは複数の通信をオプションとして認証することを可能にし、コンピュータシステムが、ユーザをオプションとして認証することを可能にし、情報を表示する方法を示す流れ図である。
【図4】本発明の一実施形態によるコンピュータシステムからの通信をユーザが認証する方法を示す流れ図である。
【図5A】本発明の一実施形態による図2のWebアプリケーション240の概略ブロック図である。
【図5B】本発明の一実施形態による、コンピュータシステムに対してユーザを認証し、同一のコンピュータシステム、もしくは異なるコンピュータシステムからのユーザへの通信を認証する方法の方法を示す流れ図である。
【図6】本発明の一実施形態による図3Cの続きの流れ図である。
【図7A】本発明の一実施形態による、ローミング ユーザが、ユーザが登録を行ったコンピュータシステム以外のコンピュータシステムからログインすることを可能にする方法を示す流れ図である。
【図7B】本発明の一実施形態による、ローミング ユーザが、ユーザが登録を行ったコンピュータシステム以外のコンピュータシステムからログインすることを可能にする方法を示す流れ図である。
【図8A】本発明の一実施形態による、ユーザが、電子メールメッセージを認証することを可能にする方法を示す流れ図である。
【図8B】本発明の一実施形態による、ユーザが、電子メールメッセージを認証することを可能にし、同一のコンピュータシステム、もしくは異なるコンピュータシステムが、そのユーザを認証することを可能にする方法を示す流れ図である。
【図9A】本発明の一実施形態によるインターネットを介した取引の代金を支払う方法を示す流れ図である。
【図9B】本発明の一実施形態によるユーザの金融手段に料金請求することの許可を受け取る方法を示す流れ図である。
【図10A】本発明の一実施形態による電子メールメッセージおよびカスタマイズ情報を表示するのに使用されるFlashムービー、または他のデバイスの概略ブロック図である。
【図10B】本発明の一実施形態による電子メールメッセージを提供し、表示する方法を示す流れ図である。
【図11】本発明の一実施形態によるユーザを登録する方法を示す流れ図である。
【特許請求の範囲】
【請求項1】
コンピュータシステムに対してユーザを認証するのに役立つ情報を受信する方法であって、
前記コンピュータシステムからユーザ識別子の入力要求を前記ユーザに与える工程と、
前記ユーザから前記ユーザ識別子を受信する工程と、
前記受信した前記ユーザ識別子に応答して、
前記コンピュータシステムから機密情報の入力要求を前記ユーザに与える工程と、
前記ユーザに知覚可能であり、そして提供されたカスタマイズ情報が前記ユーザによって予期されるカスタマイズ情報に認識可能な形で対応するときに前記ユーザが前記コンピュータシステムを認証することを可能にする、受信した前記ユーザ識別子に対応する前記カスタマイズ情報を前記ユーザに提供する工程とを含み、
前記カスタマイズ情報は、前記コンピュータシステムからユーザ識別子の入力要求を前記ユーザに与える前記工程と、前記ユーザ識別子を受信する前記工程との間においては前記ユーザに提示せず、そして、
前記ユーザ識別子に対するカスタマイズ情報の前記対応は通常公知ではないことを特徴とする方法。
【請求項2】
前記ユーザ識別子の入力要求を前記ユーザに与える前記工程の前に、前記カスタマイズ情報が前記ユーザによって識別されていることを特徴とする請求項1に記載の方法。
【請求項3】
前記カスタマイズ情報を前記ユーザに提供する前記工程は、識別子と、前記ユーザによって使用されるコンピュータシステムから受け取られたパーシステント ファイルの一部分とから選択された少なくとも1つにさらに応答して、受け取られた前記ユーザ識別子を提供することを特徴とする請求項1に記載の方法。
【請求項4】
前記カスタマイズ情報を前記ユーザに提供する前記工程は、前記ユーザによって使用されるコンピュータシステムに対応する識別子の少なくとも一部分にさらに応答して、受け取られた前記ユーザ識別子を提供することを特徴とする請求項1に記載の方法。
【請求項5】
前記ユーザ識別子がセッションを介して受信され、そして、
前記カスタマイズ情報は少なくとも部分的に前記セッション以外の通信チャネルを介して提供されることを特徴とする請求項1に記載の方法。
【請求項6】
前記ユーザ識別子が、前記ユーザをコンピュータシステムにログインするプロセスの一部として受信されることを特徴とする請求項1に記載の方法。
【請求項7】
前記ユーザ識別子が、支払いを許可するプロセスの一部として受信されることを特徴とする請求項1に記載の方法。
【請求項8】
コンピュータシステムに対してユーザを認証するのに役立つ情報を受信するコンピュータ読み取り可能プログラムコードを収録するコンピュータ使用可能媒体を含むコンピュータプログラム製品であって、前記コンピュータプログラム製品は、コンピュータシステムに、
前記コンピュータシステムからユーザ識別子の入力要求をユーザに与えさせ、
前記ユーザから前記ユーザ識別子を受信させ、
前記受信した前記ユーザ識別子に応答して、
前記コンピュータシステムから機密情報を求める入力要求を前記ユーザに与えさせ、そして、
前記ユーザに知覚可能であり、そして提供されたカスタマイズ情報が前記ユーザによって予期されるカスタマイズ情報に認識可能な形で対応するときに前記ユーザが前記コンピュータシステムを認証することを可能にする、受信した前記ユーザ識別子に対応する前記カスタマイズ情報を前記ユーザに提供させる、よう構成されたコンピュータ構成されたコンピュータ読み取り可能プログラムコードデバイスを含み、
前記カスタマイズ情報は、前記コンピュータシステムに前記コンピュータシステムから前記ユーザ識別子の入力要求を前記ユーザに与えさせるように構成された前記コンピュータ読み取り可能プログラムコードの動作と、前記コンピュータシステムに前記ユーザ識別子を受信するようにさせる動作との間においては、前記ユーザに提示されず、そして
前記ユーザ識別子に対するカスタマイズ情報の前記対応は通常公知ではないことを特徴とする製品。
【請求項9】
コンピュータシステムに対してユーザを認証するのに役立つ情報を受け取るシステムであって、
前記コンピュータシステムから前記ユーザにユーザ識別子の入力要求を与え、そして前記ユーザから前記ユーザ識別子を受信する入出力を有するユーザ識別子プロンプタを含み、前記ユーザ識別子プロンプタは、受信した前記ユーザ識別子を出力において提供するものであり、さらに、
前記ユーザ識別子プロンプタ出力に結合された入力を有するパスワード プロンプタを含み、前記パスワード プロンプタは、受信した前記ユーザ識別子に応答して、
機密情報の入力要求と、
前記ユーザに知覚可能であり、そして提供されたカスタマイズ情報が前記ユーザによって予期されるカスタマイズ情報に認識可能な形で対応するときに前記ユーザが前記コンピュータシステムを認証することを可能にする、受信した前記ユーザ識別子に対応する前記カスタマイズ情報とを、前記ユーザに出力を介して提供するものであり、
前記カスタマイズ情報は、前記ユーザ識別子の入力要求が前記ユーザ識別子プロンプタによって与えられる第1の時点と、前記ユーザ識別子プロンプタが前記ユーザ識別子を受信する第2の時点との間において、前記カスタマイズ情報は前記ユーザに提示されず、そして、
前記ユーザ識別子に対するカスタマイズ情報の前記対応は通常公知ではないことを特徴とするシステム。
【請求項10】
ユーザによって認証が可能な電子メールを提供する方法であって、
ユーザからの少なくとも1つの命令に応答して、前記ユーザの識別子にカスタマイズ情報を関連付ける工程を含み、前記関連付けは、前記ユーザと前記関連付けを実行する関係者以外には一般に知られていないものであり、さらに、
前記カスタマイズ情報に関係する情報に関連付けられた電子メールメッセージを前記ユーザに提供する工程を含み、前記情報は、前記関連付けを実行した前記関係者に少なくとも関係している関係者によって送出されているとして前記電子メールメッセージを認証するのに役立つものであり、さらに、
前記電子メールメッセージに応答して、前記カスタマイズ情報に関係する前記情報を閲覧する要求をコンピュータシステムから受信する工程と、
前記要求、および前記コンピュータシステムに関連付けられた識別子に応答して、前記カスタマイズ情報に対応する前記情報を提供する工程とを含むことを特徴とする方法。
【請求項11】
ユーザによって認証可能な電子メールを提供するコンピュータ可読プログラムコードを収録するコンピュータ使用可能媒体を含むコンピュータプログラム製品であって、前記コンピュータプログラム製品は、コンピュータシステムに、
ユーザからの少なくとも1つの命令に応答して、前記ユーザの識別子にカスタマイズ情報を関連付けるようにさせるものであり、前記関連付けは、前記ユーザと前記関連付けを実行する関係者以外には一般に知られていないものであり、さらに、
前記カスタマイズ情報に関係する情報に関連付けられた電子メールメッセージを前記ユーザに提供するようにさせるものであり、前記情報は、前記関連付けを実行した前記関係者に少なくとも関係している関係者によって送出されているとして前記電子メールメッセージを認証するのに役立つものであり、さらに、
前記電子メールメッセージに応答して、前記カスタマイズ情報に関係する前記情報を閲覧する要求をコンピュータシステムから受け取るようにさせ、
前記要求、および前記コンピュータシステムに関連付けられた識別子に応答して、前記カスタマイズ情報に対応する前記情報を提供させる、よう構成されたコンピュータ読み取り可能プログラムコードデバイスを含むことを特徴とするコンピュータプログラム製品。
【請求項1】
コンピュータシステムに対してユーザを認証するのに役立つ情報を受信する方法であって、
前記コンピュータシステムからユーザ識別子の入力要求を前記ユーザに与える工程と、
前記ユーザから前記ユーザ識別子を受信する工程と、
前記受信した前記ユーザ識別子に応答して、
前記コンピュータシステムから機密情報の入力要求を前記ユーザに与える工程と、
前記ユーザに知覚可能であり、そして提供されたカスタマイズ情報が前記ユーザによって予期されるカスタマイズ情報に認識可能な形で対応するときに前記ユーザが前記コンピュータシステムを認証することを可能にする、受信した前記ユーザ識別子に対応する前記カスタマイズ情報を前記ユーザに提供する工程とを含み、
前記カスタマイズ情報は、前記コンピュータシステムからユーザ識別子の入力要求を前記ユーザに与える前記工程と、前記ユーザ識別子を受信する前記工程との間においては前記ユーザに提示せず、そして、
前記ユーザ識別子に対するカスタマイズ情報の前記対応は通常公知ではないことを特徴とする方法。
【請求項2】
前記ユーザ識別子の入力要求を前記ユーザに与える前記工程の前に、前記カスタマイズ情報が前記ユーザによって識別されていることを特徴とする請求項1に記載の方法。
【請求項3】
前記カスタマイズ情報を前記ユーザに提供する前記工程は、識別子と、前記ユーザによって使用されるコンピュータシステムから受け取られたパーシステント ファイルの一部分とから選択された少なくとも1つにさらに応答して、受け取られた前記ユーザ識別子を提供することを特徴とする請求項1に記載の方法。
【請求項4】
前記カスタマイズ情報を前記ユーザに提供する前記工程は、前記ユーザによって使用されるコンピュータシステムに対応する識別子の少なくとも一部分にさらに応答して、受け取られた前記ユーザ識別子を提供することを特徴とする請求項1に記載の方法。
【請求項5】
前記ユーザ識別子がセッションを介して受信され、そして、
前記カスタマイズ情報は少なくとも部分的に前記セッション以外の通信チャネルを介して提供されることを特徴とする請求項1に記載の方法。
【請求項6】
前記ユーザ識別子が、前記ユーザをコンピュータシステムにログインするプロセスの一部として受信されることを特徴とする請求項1に記載の方法。
【請求項7】
前記ユーザ識別子が、支払いを許可するプロセスの一部として受信されることを特徴とする請求項1に記載の方法。
【請求項8】
コンピュータシステムに対してユーザを認証するのに役立つ情報を受信するコンピュータ読み取り可能プログラムコードを収録するコンピュータ使用可能媒体を含むコンピュータプログラム製品であって、前記コンピュータプログラム製品は、コンピュータシステムに、
前記コンピュータシステムからユーザ識別子の入力要求をユーザに与えさせ、
前記ユーザから前記ユーザ識別子を受信させ、
前記受信した前記ユーザ識別子に応答して、
前記コンピュータシステムから機密情報を求める入力要求を前記ユーザに与えさせ、そして、
前記ユーザに知覚可能であり、そして提供されたカスタマイズ情報が前記ユーザによって予期されるカスタマイズ情報に認識可能な形で対応するときに前記ユーザが前記コンピュータシステムを認証することを可能にする、受信した前記ユーザ識別子に対応する前記カスタマイズ情報を前記ユーザに提供させる、よう構成されたコンピュータ構成されたコンピュータ読み取り可能プログラムコードデバイスを含み、
前記カスタマイズ情報は、前記コンピュータシステムに前記コンピュータシステムから前記ユーザ識別子の入力要求を前記ユーザに与えさせるように構成された前記コンピュータ読み取り可能プログラムコードの動作と、前記コンピュータシステムに前記ユーザ識別子を受信するようにさせる動作との間においては、前記ユーザに提示されず、そして
前記ユーザ識別子に対するカスタマイズ情報の前記対応は通常公知ではないことを特徴とする製品。
【請求項9】
コンピュータシステムに対してユーザを認証するのに役立つ情報を受け取るシステムであって、
前記コンピュータシステムから前記ユーザにユーザ識別子の入力要求を与え、そして前記ユーザから前記ユーザ識別子を受信する入出力を有するユーザ識別子プロンプタを含み、前記ユーザ識別子プロンプタは、受信した前記ユーザ識別子を出力において提供するものであり、さらに、
前記ユーザ識別子プロンプタ出力に結合された入力を有するパスワード プロンプタを含み、前記パスワード プロンプタは、受信した前記ユーザ識別子に応答して、
機密情報の入力要求と、
前記ユーザに知覚可能であり、そして提供されたカスタマイズ情報が前記ユーザによって予期されるカスタマイズ情報に認識可能な形で対応するときに前記ユーザが前記コンピュータシステムを認証することを可能にする、受信した前記ユーザ識別子に対応する前記カスタマイズ情報とを、前記ユーザに出力を介して提供するものであり、
前記カスタマイズ情報は、前記ユーザ識別子の入力要求が前記ユーザ識別子プロンプタによって与えられる第1の時点と、前記ユーザ識別子プロンプタが前記ユーザ識別子を受信する第2の時点との間において、前記カスタマイズ情報は前記ユーザに提示されず、そして、
前記ユーザ識別子に対するカスタマイズ情報の前記対応は通常公知ではないことを特徴とするシステム。
【請求項10】
ユーザによって認証が可能な電子メールを提供する方法であって、
ユーザからの少なくとも1つの命令に応答して、前記ユーザの識別子にカスタマイズ情報を関連付ける工程を含み、前記関連付けは、前記ユーザと前記関連付けを実行する関係者以外には一般に知られていないものであり、さらに、
前記カスタマイズ情報に関係する情報に関連付けられた電子メールメッセージを前記ユーザに提供する工程を含み、前記情報は、前記関連付けを実行した前記関係者に少なくとも関係している関係者によって送出されているとして前記電子メールメッセージを認証するのに役立つものであり、さらに、
前記電子メールメッセージに応答して、前記カスタマイズ情報に関係する前記情報を閲覧する要求をコンピュータシステムから受信する工程と、
前記要求、および前記コンピュータシステムに関連付けられた識別子に応答して、前記カスタマイズ情報に対応する前記情報を提供する工程とを含むことを特徴とする方法。
【請求項11】
ユーザによって認証可能な電子メールを提供するコンピュータ可読プログラムコードを収録するコンピュータ使用可能媒体を含むコンピュータプログラム製品であって、前記コンピュータプログラム製品は、コンピュータシステムに、
ユーザからの少なくとも1つの命令に応答して、前記ユーザの識別子にカスタマイズ情報を関連付けるようにさせるものであり、前記関連付けは、前記ユーザと前記関連付けを実行する関係者以外には一般に知られていないものであり、さらに、
前記カスタマイズ情報に関係する情報に関連付けられた電子メールメッセージを前記ユーザに提供するようにさせるものであり、前記情報は、前記関連付けを実行した前記関係者に少なくとも関係している関係者によって送出されているとして前記電子メールメッセージを認証するのに役立つものであり、さらに、
前記電子メールメッセージに応答して、前記カスタマイズ情報に関係する前記情報を閲覧する要求をコンピュータシステムから受け取るようにさせ、
前記要求、および前記コンピュータシステムに関連付けられた識別子に応答して、前記カスタマイズ情報に対応する前記情報を提供させる、よう構成されたコンピュータ読み取り可能プログラムコードデバイスを含むことを特徴とするコンピュータプログラム製品。
【図1】
【図2A】
【図2B】
【図3A】
【図3B】
【図3C】
【図3D】
【図3E】
【図4】
【図5A】
【図5B】
【図6】
【図7A】
【図7B】
【図8A】
【図8B】
【図9A】
【図9B】
【図10A】
【図10B】
【図11】
【図2A】
【図2B】
【図3A】
【図3B】
【図3C】
【図3D】
【図3E】
【図4】
【図5A】
【図5B】
【図6】
【図7A】
【図7B】
【図8A】
【図8B】
【図9A】
【図9B】
【図10A】
【図10B】
【図11】
【公表番号】特表2007−527059(P2007−527059A)
【公表日】平成19年9月20日(2007.9.20)
【国際特許分類】
【出願番号】特願2006−552293(P2006−552293)
【出願日】平成17年2月4日(2005.2.4)
【国際出願番号】PCT/US2005/003686
【国際公開番号】WO2006/028488
【国際公開日】平成18年3月16日(2006.3.16)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.フロッピー
2.イーサネット
【出願人】(506267086)アールエスエー セキュリティ インク. (1)
【Fターム(参考)】
【公表日】平成19年9月20日(2007.9.20)
【国際特許分類】
【出願日】平成17年2月4日(2005.2.4)
【国際出願番号】PCT/US2005/003686
【国際公開番号】WO2006/028488
【国際公開日】平成18年3月16日(2006.3.16)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.フロッピー
2.イーサネット
【出願人】(506267086)アールエスエー セキュリティ インク. (1)
【Fターム(参考)】
[ Back to top ]