(57)【特許請求の範囲】
【請求項１】
ユーザに関連付けられたネットワーク識別とパスワードとを認証サーバが該ユーザのコンピュータから受信し、
前記ネットワーク識別と前記パスワードとの有効性を前記認証サーバが検証し、
前記ネットワーク識別と前記パスワードとの有効性が認定された場合には、前記ユーザが前記ネットワーク識別と前記パスワードとをその都度入力することなく１つか又は複数のウェブサーバに該ユーザがアクセスできるようにする、前記ユーザ用のパスキーを、前記認証サーバが生成し、及び、
前記パスキーを、前記ユーザの前記コンピュータ内に一時的に格納するために、前記ユーザの前記コンピュータに前記認証サーバが送信する
ことを含み、
前記ネットワーク識別は、前記ユーザを前記ネットワーク上において識別するための情報であり、
前記パスキーは、前記ネットワーク識別と前記パスワードとを含む情報に基づいて前記認証サーバが作成したクッキーであり、該クッキーは、所定期間だけ前記ユーザの前記コンピュータ内に一時的に格納され、
前記認証サーバが、リダイレクト要求を前記ユーザの前記コンピュータに送信し、及び、
前記リダイレクト要求に基づいて、前記パスキーが前記ユーザの前記コンピュータ内に格納されていることを前記認証サーバが判定することからなる、ネットワークユーザ認証方法。
【請求項２】
前記ネットワーク識別と前記パスワードの入力を、前記ユーザの前記コンピュータを介して前記ユーザに前記認証サーバが促すことを更に含むことからなる、請求項１に記載のネットワークユーザ認証方法。
【請求項３】
前記パスキーを前記ユーザの前記コンピュータに前記認証サーバが送信する前に、前記パスキーを前記認証サーバが暗号化することを更に含むことからなる、請求項１に記載のネットワークユーザ認証方法。
【請求項４】
前記所定期間は、前記ユーザの前記コンピュータ上において、ブラウザがオープンされてから該ブラウザがクローズされるまでの期間に対応することからなる、請求項１に記載のネットワークユーザ認証方法。
【請求項５】
前記認証サーバが、前記ユーザの前記コンピュータをウェブサーバにリダイレクトさせることを更に含むことからなる、請求項１に記載のネットワークユーザ認証方法。
【請求項６】
前記ネットワーク識別と前記パスワードとを前記認証サーバが検証することは、前記認証サーバが、
ユーザデータベースにアクセスし、
前記パスワードが満了していないことを確認し、及び、
前記パスワードが停止されていないことを確認する
ことを含むことからなる、請求項１に記載のネットワークユーザ認証方法。
【請求項７】
前記パスキーが、
ネットワーク識別と、
ＩＰアドレスと、
タイムスタンプと、
巡回冗長チェックと、
長さ情報
とを含むことからなる、請求項１に記載のネットワークユーザ認証方法。
【請求項８】
前記ユーザ用の前記パスキーを前記認証サーバが生成することは、前記認証サーバが、
前記ネットワーク識別、ＩＰアドレス、及びタイムスタンプを、データフィールドのストリングとしてバッファ内に一時的に格納し、
前記ストリング用の巡回冗長チェックを決定し、
前記決定した巡回冗長チェックを前記ストリングに付加し、
前記ストリングの長さを決定し、及び、
前記決定した長さ情報を前記ストリングに付加する
ことを含むことからなる、請求項１に記載のネットワークユーザ認証方法。
【請求項９】
前記ユーザの前記コンピュータ内に一時的に格納するために、前記パスキーを前記ユーザの前記コンピュータに前記認証サーバが送信することが、前記コンピュータのクッキーファイル内に一時的に格納するために前記ユーザの前記コンピュータに前記認証サーバが前記パスキーを送信することを含むことからなる、請求項１に記載のネットワークユーザ認証方法。
【請求項１０】
前記認証サーバが、リダイレクト要求を前記ユーザの前記コンピュータに送信し、
前記リダイレクト要求に基づいて、前記ユーザの前記コンピュータの前記クッキーファイルが非アクティブであることを前記認証サーバが判定し、
前記非アクティブであると判断された場合には、前記ユーザの前記コンピュータの前記クッキーファイルをアクティブにすることを前記ユーザに前記認証サーバが前記ユーザの前記コンピュータを介して促し、及び、
前記ユーザの前記コンピュータの前記クッキーファイル内に一時的に格納するために、前記パスキーを前記ユーザの前記コンピュータに前記認証サーバが再送信する
ことを更に含むことからなる、請求項９に記載のネットワークユーザ認証方法。
【請求項１１】
ウェブサーバにおいて、ユーザからの要求を、前記ユーザのコンピュータを介して受信し、
パスキーが、前記ユーザの前記コンピュータのクッキーファイル内に存在するか否かを前記ウェブサーバが判定し、
前記パスキーが前記ユーザの前記コンピュータの前記クッキーファイルには存在しないと判断された場合には、前記ウェブサーバが、前記ユーザの前記コンピュータを認証サーバにリダイレクトさせ、
ネットワーク識別とパスワードの入力を、前記認証サーバが、前記ユーザの前記コンピュータを介して前記ユーザに促し、
前記認証サーバにおいて、前記ネットワーク識別と前記パスワードとを前記ユーザの前記コンピュータから受信し、
前記ネットワーク識別と前記パスワードとを前記認証サーバが検証し、
前記ネットワーク識別と前記パスワードとの有効性が認定された場合には、前記ユーザ用の前記パスキーを前記認証サーバが生成し、該パスキーは、ネットワーク識別、ＩＰアドレス、タイムスタンプ、巡回冗長チェック、及び長さ情報を含むものであり、
前記パスキーを前記認証サーバが暗号化し、
前記クッキーファイル内に所定期間だけ一時的に格納するために前記認証サーバが、前記パスキーを前記ユーザの前記コンピュータに送信し、
前記認証サーバが、前記ユーザの前記コンピュータを前記ウェブサーバにリダイレクトさせ、
前記ウェブサーバにおいて、前記パスキーを前記クッキーファイルから検索し、
前記パスキーを前記ウェブサーバが解読し、
前記パスキーを前記ウェブサーバが検証し、及び、
前記ウェブサーバが前記パスキーの有効性を認定した時には、前記要求に対するレスポンスを前記ウェブサーバが前記ユーザの前記コンピュータに対して生成する
ことを含み、
前記認証サーバが、前記パスキーを前記ユーザの前記コンピュータに送信した後に、前記パスキーが前記クッキーファイル内に格納されていることを前記認証サーバが判定することからなる、ネットワークユーザ認証方法。
【請求項１２】
前記所定期間は、前記ユーザの前記コンピュータ上において、ブラウザがオープンされてから該ブラウザがクローズされるまでの期間に対応することからなる、請求項１１に記載のネットワークユーザ認証方法。
【請求項１３】
前記認証サーバが、前記パスキーを前記ユーザの前記コンピュータに送信した後に、前記コンピュータの前記クッキーファイルが非アクティブであることを前記認証サーバが判定し、
前記非アクティブであると判断された時には、前記コンピュータの前記クッキーファイルをアクティブにすることを前記ユーザに前記認証サーバが促し、及び、
前記クッキーファイル内に一時的に格納するために、前記パスキーを前記ユーザの前記コンピュータに前記認証サーバが再送信する
ことを更に含むことからなる、請求項１１に記載のネットワークユーザ認証方法。
【請求項１４】
前記ネットワーク識別と前記パスワードとを前記認証サーバが検証することは、前記認証サーバが、
ユーザデータベースにアクセスし、
前記パスワードが満了していないことを確認し、及び、
前記パスワードが停止されていないことを確認する
ことを含むことからなる、請求項１１に記載のネットワークユーザ認証方法。
【請求項１５】
前記ユーザ用の前記パスキーを前記認証サーバが生成することは、前記認証サーバが、
前記ネットワーク識別、前記ＩＰアドレス、及び前記タイムスタンプを、データフィールドのストリングとしてバッファ内に一時的に格納し、
前記ストリング用の前記巡回冗長チェックを決定し、
前記決定した巡回冗長チェックを前記ストリングに付加し、
前記ストリングの前記長さを決定し、及び、
前記決定した長さ情報を前記ストリングに付加する
ことを含むことからなる、請求項１１に記載のネットワークユーザ認証方法。
【請求項１６】
前記ウェブサーバが、前記長さを検証して前記巡回冗長チェックを検証することを、前記パスキーを前記ウェブサーバが検証することが含むことからなる、請求項１１に記載のネットワークユーザ認証方法。
【請求項１７】
前記パスキーを前記ウェブサーバが検証することは、前記ウェブサーバが、
前記長さを検証し、
前記巡回冗長チェックを検証し、
前記ネットワーク識別を検証し、
前記ＩＰアドレスを検証し、及び、
前記タイムスタンプを検証する
ことを含むことからなる、請求項１１に記載のネットワークユーザ認証方法。
【請求項１８】
前記タイムスタンプを検証することは、前記ウェブサーバが、
前記パスキーが生成されてから経過したタイムピリオドを、前記パスキー内の前記タイムスタンプと現在の時刻に関する情報とに基づいて決定し、
前記タイムピリオドを許容可能期間と比較し、及び、
前記経過したタイムピリオドが前記許容可能期間よりも短いことを判定する
ことを含むことからなる、請求項１７に記載のネットワークユーザ認証方法。
【請求項１９】
ネットワークユーザ認証システムであって、
ユーザに関連付けられたネットワーク識別とパスワードとを、該ユーザのコンピュータから受信し、接続されたユーザデータベース内に含まれたデータに基づいて該ネットワーク識別と該パスワードとの有効性を検証し、該ネットワーク識別と該パスワードとの有効性が認定された場合には、該ユーザ用のパスキーを生成し、及び、該パスキーを該ユーザの前記コンピュータに送信するよう動作する、認証サーバと、
前記パスキーを所定期間、前記ユーザの前記コンピュータのメモリのクッキーファイル内に格納する、前記ユーザの前記コンピュータと、
前記パスキーを前記クッキーファイルから検索し、前記パスキーを解読し、前記パスキーを検証し、及び、前記パスキーが認証された場合には、前記ユーザからの要求に対するレスポンスを生成するよう動作する、ウェブサーバ
とを備え、
前記パスキーは、ネットワーク識別と、前記ユーザの前記コンピュータのＩＰアドレスと、前記認証サーバにおいて前記パスキーが生成された時点を示すタイムスタンプと、巡回冗長チェックと、長さ情報とを含み、
前記ネットワーク識別は、前記ユーザをネットワーク上において識別するための情報であり、
前記パスキーは、前記ネットワーク識別と前記パスワードとを含む情報に基づいて前記認証サーバによって生成されたクッキーであり、
前記パスキーを検証することは、前記ウェブサーバによって得られた前記パスキーが、前記認識サーバにおいて生成された前記パスキーに対応することを、前記パスキー内に含まれる情報に基づいて、前記ウェブサーバが検証を行うことを含み、
前記巡回冗長チェックは、前記認証サーバにおいて生成されて前記パスキーに付加された情報であり、
前記長さは、前記認証サーバによって前記パスキーに付加された、前記パスキーの長さであり、及び、
前記認証サーバが、
前記パスキーを生成した後に、前記パスキーを前記ユーザの前記コンピュータに送信することにより、リダイレクト要求を前記ユーザの前記コンピュータに送信し、及び、
前記リダイレクト要求に基づいて、前記パスキーが受信された時には、前記パスキーが前記クッキーファイル内に格納されていると判断する
よう更に動作することからなる、ネットワークユーザ認証システム。
【請求項２０】
前記ユーザに関連付けられた前記ネットワーク識別と前記パスワードとを、前記ユーザの前記コンピュータから前記認証サーバが受信する前に、前記認証サーバが、前記ネットワーク識別と前記パスワードの入力を、前記ユーザの前記コンピュータを介して前記ユーザに促すよう更に動作する、請求項１９に記載のネットワークユーザ認証システム。
【請求項２１】
前記認証サーバが、
前記パスキーを生成した後に、前記パスキーを前記ユーザの前記コンピュータに送信することにより、リダイレクト要求を前記ユーザの前記コンピュータに送信し、
前記リダイレクト要求に基づいて、前記パスキーが受信されなかった時には、前記コンピュータの前記クッキーファイルが非アクティブであると判断し、
前記非アクティブと判断された時に、前記ユーザの前記コンピュータの前記クッキーファイルをアクティブにすることを前記ユーザの前記コンピュータを介して前記ユーザに促し、及び、
前記パスキーを前記ユーザの前記コンピュータに再送信する
よう更に動作することからなる、請求項１９に記載のネットワークユーザ認証システム。
【請求項２２】
前記ユーザの前記コンピュータによって前記パスキーが受信されたと前記認証サーバが判断した場合には、前記認証サーバが、前記ユーザの前記コンピュータを前記ウェブサーバにリダイレクトさせるよう更に動作する、請求項１９に記載のネットワークユーザ認証システム。
【請求項２３】
前記接続されたユーザデータベース内に含まれたデータに基づいて、前記ネットワーク識別と前記パスワードとの有効性を前記認証サーバが検証する時には、前記ユーザ用のパスキーを生成する前に、前記認証サーバが、
前記ユーザデータベースにアクセスし、
前記パスワードが満了していないことを確認し、及び、
前記パスワードが停止されていないことを確認する
よう更に動作する、請求項１９に記載のネットワークユーザ認証システム。
【請求項２４】
前記ユーザ用の前記パスキーを生成する際に、前記認証サーバが、
前記ネットワーク識別、前記ＩＰアドレス、及び前記タイムスタンプを、データフィールドのストリングとしてバッファ内に一時的に格納し、
前記ストリング用の前記巡回冗長チェックを決定し、
前記決定した巡回冗長チェックを前記ストリングに付加し、
前記ストリングの前記長さを決定し、及び、
前記決定した長さ情報を前記ストリングに付加する
よう更に動作することからなる、請求項１９に記載のネットワークユーザ認証システム。
【請求項２５】
前記パスキーを検証する前に、前記ウェブサーバが、前記パスキーを解読するよう更に動作する、請求項１９に記載のネットワークユーザ認証システム。
【請求項２６】
前記ウェブサーバが前記パスキーを前記クッキーファイルから検索した結果、前記パスキーが前記クッキーファイルには存在しないと判断された時には、前記ウェブサーバが、前記ユーザのコンピュータを前記認証サーバにリダイレクトさせるよう更に動作する、請求項１９に記載のネットワークユーザ認証システム。
【請求項２７】
前記ウェブサーバが前記パスキーを前記クッキーファイルから検索した結果、前記パスキーが前記クッキーファイルには存在しないと判断された時には、前記ウェブサーバが、
リダイレクト要求を前記ユーザの前記コンピュータに送信し、及び、
前記ユーザの前記コンピュータを前記認証サーバにリダイレクトさせる
よう更に動作することからなる、請求項１９に記載のネットワークユーザ認証システム。
【請求項２８】
前記ウェブサーバが、前記長さを検証し、及び、前記巡回冗長チェックを検証するよう更に動作することからなる、請求項１９に記載のネットワークユーザ認証システム。
【請求項２９】
前記ウェブサーバが、
前記長さを検証し、
前記巡回冗長チェックを検証し、
前記ネットワーク識別を検証し、
前記ＩＰアドレスを検証し、及び、
前記タイムスタンプを検証する
よう更に動作し、
前記巡回冗長チェックを検証することが、前記認証サーバにより生成されて前記パスキーに付加された、前記パスキーの巡回冗長チェック情報を用いて、巡回冗長チェックを実施することを含み、及び、
前記長さを検証することが、前記認証サーバよって前記パスキーに付加された情報であって、前記パスキーのデータフィールドのストリングの前記長さに関する該情報を用いることを含むことからなる、請求項１９に記載のネットワークユーザ認証システム。
【請求項３０】
前記ウェブサーバが、
前記パスキーが生成されてから経過したタイムピリオドを、前記パスキー内のタイムスタンプと現在の時刻に関する情報とに基づいて決定し、
前記タイムピリオドを許容可能期間と比較し、及び、
前記タイムピリオドが前記許容可能期間よりも短いことを判定する
よう更に動作することからなる、請求項２９に記載のネットワークユーザ認証システム。
【請求項３１】
前記ウェブサーバが、
前記パスキーが生成されてから経過したタイムピリオドを、前記パスキー内のタイムスタンプと現在の時刻に関する情報とに基づいて決定し、
前記タイムピリオドを許容可能期間と比較し、及び、
前記タイムピリオドが前記許容可能期間よりも長いことを判定する
よう更に動作することからなる、請求項２９に記載のネットワークユーザ認証システム。
【請求項３２】
ネットワークユーザ認証システムであって、
ユーザに関連付けられたネットワーク識別とパスワードとを、該ユーザのコンピュータから認証サーバが受信するための手段と、
前記ネットワーク識別と前記パスワードとを、前記認証サーバに接続されたユーザデータベース内に含まれたデータに基づいて、前記認証サーバが認証するための手段と、
前記ユーザ用のパスキーを前記認証サーバが生成するための手段であって、該パスキーが、前記ネットワーク識別と、前記ユーザの前記コンピュータのＩＰアドレスと、該認証サーバにおいて該パスキーが生成される時点を示すタイムスタンプと、前記パスキーに対する巡回冗長チェックと、前記パスキーの長さ情報とを含むことからなる、手段と、
前記パスキーを前記ユーザの前記コンピュータに前記認証サーバが送信するための手段と、
前記パスキーを、所定期間、格納するための、前記ユーザの前記コンピュータのメモリ手段と、
前記パスキーを前記メモリ手段内のクッキーファイルからウェブサーバが検索するための手段と、
前記パスキーを前記ウェブサーバが認証するための手段と、
情報に対する前記ユーザの要求に対する、レスポンスを、前記ウェブサーバが、前記ユーザの前記コンピュータに対して生成するための手段
とを備え、
前記ネットワーク識別は、前記ユーザをネットワーク上において識別するための情報であり、
前記パスキーを前記ウェブサーバが認証することは、前記ウェブサーバにより得られた前記パスキーが、前記認識サーバにおいて生成された前記パスキーに対応することを、前記パスキー内に含まれる情報に基づいて、前記ウェブサーバが検証することを含み、及び、
前記パスキーを前記ユーザの前記コンピュータに前記認証サーバが送信した後に、前記パスキーが前記クッキーファイル内に格納されていることを前記認証サーバが判定することからなる、ネットワークユーザ認証システム。
【請求項３３】
前記所定期間は、前記ユーザの前記コンピュータ上において、ブラウザがオープンされてから該ブラウザがクローズされるまでの期間に対応することからなる、請求項１９又は３２に記載のネットワークユーザ認証システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的にコンピュータネットワークに関し、特に、ネットワークユーザ認証システム（network  user  authentication  system）および方法に関する。
【背景技術】
【０００２】
コンピュータネットワークの利用の増加のため、会社、特に大会社は、大量の情報を電子形式で持っている。この電子情報は、典型的には、グローバルに配置された多数のサーバに蓄積される。この蓄積された情報の多くは要注意のものであるか秘密のものである。従って、会社はコンピュータセキュリティに非常に真剣に取り組んでいる。このことから、多くの会社の情報は安全な電気通信チャネルを通じて伝送される。
【０００３】
情報をサーバから従業員のコンピュータに伝送するために安全なチャネルを利用する際には、プロセッサ集中の暗号化がよく用いられる。このアプローチは、コストがかかり、多くの会社の情報は要注意なものでないことから不必要である。暗号化に必要な余分なプロセッササイクルは、重いユーザの負荷の下で、サーバの力をそぐ。
【０００４】
別のセキュリティとして、多くの会社は、従業員が特定のサーバにアクセスの際に認証されることを要求する。典型的には、この認証は、ユーザがサーバ上の希望する情報にアクセスできるように、ユーザに対してネットワーク識別とパスワードの入力を要求する。しかし、その従業員が別のサーバに蓄積された情報を希望するなら、その従業員はそのサーバ上の情報にアクセスするために、彼または彼女のネットワーク識別（network  identification）とパスワード（password）を再入力しなければならない。異なるサーバの度にネットワーク識別とパスワードを再入力することは、負担が重く、しばしば従業員にとって非常にいらだたしいものとなる。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
異なるサーバに対してネットワーク識別とパスワードの再入力をなくすることにある。
【課題を解決するための手段】
【０００６】
本発明の１つの実施例によれば、ネットワークユーザ認証方法は、ユーザに関するネットワーク識別（network  identification）とパスワード（password）を受信し、そのネットワーク識別とパスワードを検証し、ユーザ用のパスキーを生成し、そのパスキーをユーザに送信してユーザのコンピュータ内に一時的に蓄積する。
【０００７】
本発明の別の実施例によれば、ネットワークユーザ認証方法は、ユーザからの要求を受信し、ユーザのコンピュータのメモリ中のパスキーを検索し、そのパスキーを検証し、そのリクエストへのレスポンスを生成する。そのパスキーは、ネットワーク識別、ＩＰアドレス、タイムスタンプ、巡回冗長チェック、そして長さ情報を有する。
【０００８】
本発明の実施例は、多くの技術的利点を提供する。本発明の実施例は、これらの利点の全て、いくつかを含むか、または、これらの利点を含まない。本発明の１つの実施例とともに実施されるネットワークによれば、従業員が、別のサーバにアクセスすることを望む度に彼または彼女のネットワーク識別そして／またはパスワードを入力しなくてもよいようになる。これにより、認証ルールとネットワークセキュリティを維持または向上させつつ、ネットワークユーザの経験を改善する。ネットワーク識別そして／またはパスワードが、新たなサーバが出現する度に入力される必要がなくなるため、各サーバは、ユーザデータベースを持つ必要がなくなり、従って、集中ユーザデータベースを可能とする。加えて、大量のシステムリソースは、不必要なプロセッサ集中の暗号化がなくなるため、解放される。これによって、単一のサーバが認証されたユーザをより収容することができるようになる。
【０００９】
別の技術的利点は、以下の図、記述そしてクレームから当業者にとってすぐに明白となる。
【発明を実施するための最良の形態】
【００１０】
本発明の実施例とその利点は、同様の数字が同様の部分を示す図１〜４の描画を参照することによりよく理解される。
【００１１】
図１は、本発明の１つの実施例に従うネットワークユーザ認証システム１００を示すブロック図である。ネットワークユーザ認証システム１００は、インターネットやエキストラネット、他のイントラネットのような、任意の適合するネットワークまたは他の適合する複数のネットワークや多数のネットワークであるネットワーク１０４に接続するイントラネット１０２を含む。イントラネット１０２は、ローカルエリアネットワーク、広域ネットワーク、グローバルコンピューティングネットワークまたは他の適合するプライベートネットワークといった、会社の任意の適合するプライベートネットワークである。示された実施例では、イントラネット１０２は複数のクライアント１０６、複数のウェブサーバ１０８、複数の認証サーバ１１０、ユーザデータベース１１２そしてファイアウォール１１４を有する。イントラネット１０２は、図１に示す構成要素より少ないか、より多いか、異なる構成要素を有する。
【００１２】
図２Ａは、単一のクライアント１０６、単一のウェブサーバ１０８、そして単一の認証サーバ１１０を示すブロック図である。各々の１つのみが、記述を明確にするために示されている。クライアント１０６は、情報を要求し、受信するように動作するのに適した任意のコンピュータ装置、そして／またはソフトウェアである。１つの実施例においては、クライアント１０６は、パーソナルコンピュータ（「ＰＣ」）であるが、クライアント１０６はブラウザを実行するのに適した任意のタイプのコンピュータ装置である。クライアント１０６は、典型的には、会社の従業員のようなユーザに関係している。図２Ａに示されるように、クライアント１０６は、入力装置２００、出力装置２０２、プロセッサ２０４、ブラウザ２０８を蓄積しているメモリ２０６、そしてパスキー２１４を蓄積しているクッキーバッファ２１２を持つストレージエリア２１０を有する。
【００１３】
入力装置２００は、コマンドをクライアント１０６に入力するという目的のために、クライアント１０６と結合する。１つの実施例では、入力装置２００はキーボードであるが、入力装置２００は、マウスやスタイラスのような他の任意の適合する形をとる。出力装置２０２は、液晶ディスプレイ（「ＬＣＤ」）またはカソードレイチューブ（「ＣＲＴ」）ディスプレイのような任意の適合するビジュアルディスプレイ装置である。出力装置２０２は、また、任意の適合する情報をプリントするためのプリンター（図示せず）のような他の任意の装置に接続される。
【００１４】
プロセッサ２０４は、論理を実行する任意のタイプの処理装置から構成される。プロセッサ２０４の１つの機能は、メモリ２０６に蓄積されたブラウザ２０８を実行することである。プロセッサ２０４は、他の適合する機能を実行する。
【００１５】
メモリ２０６とストレージエリア２１０は、ファイル、スタック、データベース、または揮発性または不揮発性の他の適合する機構から構成される。メモリ２０６とストレージエリア２１０は、ランダムアクセスメモリ、リードオンリーメモリ、ＣＤ−ＲＯＭ、消去可能メモリ、または、データを蓄積し、そして／または検索できる他の任意の適合装置である。メモリ２０６とストレージエリア２１０は、交換可能であり、同様の機能を実行する。
【００１６】
ブラウザ２０８は、ネットスケープやインターネットエクスプローラーのような、ハイパーテキスト転送プロトコル（「ｈｔｔｐ」）、ハイパーテキスト転送プロトコルセキュア（ｈｔｔｐｓ）、ファイル転送プロトコル（「ｆｔｐ」）、またはユーザをしてウェブサーバ１０８、認証サーバ１１０または他の適合するサーバと通信することを可能とするのに適した他のプロトコルを利用する任意の適合するブラウザである。
【００１７】
クッキーバッファ２１２は、一時的にクッキーを蓄積するストレージエリア２１０中に含まれる任意のバッファである。クッキーは、サーバがトランザクション中にブラウザに送る１つの情報である。そして、ブラウザは、このクッキーを、そのブラウザがサーバにコネクトする度にそのサーバに返す。そのサーバは、一般的に数個のウェブページ相互にわたるユーザセッションを保持するために、そのクッキーを用いる。クッキーバッファ２１２は、また、ブラウザ２０８のディレクトリ構造のような、クライアント１０６上の他の適合するロケーションに一時的に蓄積される。
【００１８】
パスキー２１４は、本発明の教えるところに従って、クライアント１０６のユーザが、異なるウェブサーバ１０８にアクセスする度に、ネットワーク識別とパスワードを再入力することなく希望する任意のウェブサーバ１０８にアクセスできるようにする。１つの実施例によれば、パスキー２１４は、本質的には、以下により十分に説明されるように、認証サーバ１１０によって生成された時にクッキーバッファ２１２中に一時的に蓄積される非永続性のクッキーである。このコンテクストにおける非永続性とは、パスキー２１４が、ブラウザ２０８がクローズされるまで、ブラウザ２０８がオープンされている間の期間のみ蓄積されるということを意味する。パスキー２１４の１つの例は、図２Ｂに関して以下に説明される。
【００１９】
ウェブサーバ１０８は、ハイパーテキストマークアップ言語（「ＨＴＭＬ」）ファイル２１８といった情報または他の適合フォーマットの別の情報を蓄積するコンピュータシステムまたは他の適合するハードウェアそして／またはソフトウェアである。ウェブサーバ１０８は、また、パスキーインテグリティツール２２０のようなソフトウェアアプリケーションの実行のために動作する。ウェブサーバ１０８は、また、他の適合する機能を有する。ウェブサーバ１０８のさらなる機能の詳細は、図３と図４に関して以下により十分に説明される。ウェブサーバ１０８は、任意の適合するリンク２２６を介してクライアント１０６と接続している。リンク２２６は、ｈｔｔｐ、ｈｔｔｐｓ、そしてｆｔｐといった、任意のデータ通信プロトコルを介して情報を送信可能な、任意の適合する有線または無線のリンクである。
【００２０】
認証サーバ１１０は、ＩＤおよびパスワード検証ツール２２２と、パスキー生成ツール２２４といった１または複数のソフトウェアアプリケーションを実行可能なコンピュータシステムまたは他の適合するハードウェアそして／またはソフトウェアである。認証サーバ１１０は、また、ＩＤおよびパスワード検証ツール２２２を実行するために、データベース１１２にアクセスする。認証サーバ１１０は、また、他の適合する機能を有する。認証サーバ１１０のさらなる機能の詳細は、図３と図４に関して以下により十分に説明される。認証サーバ１１０は、任意の適合するリンク２２８を介してクライアント１０６と接続する。リンク２２８は、ｈｔｔｐ、ｈｔｔｐｓ、そしてｆｔｐといった任意のデータ通信プロトコルを介して、情報を送信可能な任意の適合する有線または無線のリンクである。
【００２１】
図１に戻って、ユーザデータベース１１２は、会社の従業員に関する情報を蓄積する任意の適合する蓄積媒体である。図示されるように、ユーザデータベース１１２は、以下により詳細に説明するように、ある従業員のネットワーク識別とパスワードを検証するために認証サーバ１１０によってアクセス可能となっている。
【００２２】
ファイアウォール１１４は、イントラネット１０２が外部のイントラネット１０２からの攻撃にさらされないようにするハードウェアそして／またはソフトウェアの任意の適合する組み合わせである。
【００２３】
図２Ｂは、本発明の教えるところに従ったパスキー２１４の１例を示す表である。一般的に、上述したように、パスキー２１４は、多数のフィールド５０１を有する。これらのフィールドは、長さ５００、巡回冗長チェック（「ＣＲＣ」）５０２、ネットワーク識別５０４、そしてＩＰアドレス５０６、タイムスタンプ５０８、そして／またはその任意の適合する組み合わせを含む。長さ５００は、ネットワーク識別５０４、ＩＰアドレス５０６、そしてタイムスタンプ５０８から成るストリングのような、データフィールドのストリングの文字数を定義する。このデータフィールドのストリングは、また、ＣＲＣ５０２を含む。ＣＲＣ５０２は、ＭＤ５アルゴリズムやハッシングのような任意の適合する自己チェック手法を用いて、パスキーのインテグレティを検証する。ネットワーク識別５０４は、特定のユーザを識別する。ＩＰアドレス５０６は、特定のクライアント１０６を識別する。典型的には、一人のユーザは、そのユーザが特定のセッションの間においてログインするコンピュータの１つのＩＰアドレスに関係付けられる。タイムスタンプ５０８は、いつパスキー２１４が発行されたかを示す。パスキー２１４は、より少ないか、より多いか、または、異なるデータフィールドを有する。
【００２４】
図３は、本発明の１つの実施例に従ったパスキーインテグリティツール２２０の動作の様々な詳細を示すフローチャートである。その方法は、ステップ３００において開始し、ある要求がユーザから受信される。例えば、クライアント１０６上のユーザは、ウェブサーバ１０８上に含まれるある情報を希望する場合がある。そのユーザは、特定のウェブサーバ１０８上の特定のファイルまたは他の情報にアクセスできるように、特定のユニフォームリソースロケーター（「ＵＲＬ」）を入力するためにブラウザ２０８を活用する。
【００２５】
ステップ３０２において、パスキーインテグリティツール２２０は、パスキー２１４がクライアント１０６のクッキーバッファ中に存在するかを判断する。パスキー２１４が存在しなければ、以下に説明するように、ステップ３１６に進む。パスキー２１２が存在するなら、ステップ３０４に進む。パスキー２１４は、以下に十分説明されるように、認証サーバ１１０によって生成された後にのみ存在する。ステップ３０４においては、パスキーインテグリティツール２２０は、任意の適合するプライベート暗号キーを用いてパスキー２１４を解読する。
【００２６】
一旦、パスキー２１４が解読されると、パスキー２１４中の様々なデータフィールドが検証される。パスキー２１４を構成するデータフィールドが図２Ｂに関して上述される。その検証は、ステップ３０６から３１２に関して以下に説明される。
【００２７】
ステップ３０６において、パスキー２１４の長さ５００が検証されたかが判断される。一般に、パスキーインテグリティツール２２０は、長さ５００が、認証サーバ１１０によって生成されてから変化したかを判断する。もし、長さ５００が変化したなら、下に示すように、ステップ３２０に進む。もし長さ５００が変化していないなら、長さ５００が検証され、ステップ３０８に進む。ステップ３０８において、ＣＲＣ５０２が検証されたかが判断される。一般に、パスキーインテグリティツールは、ＣＲＣ５０２が、認証サーバ１１０によって生成されてから変化したかを判断する。もしＣＲＣ５０２が変化したなら、下に示すように、ステップ３２０に進む。もしＣＲＣ５０２が変化していないなら、ＣＲＣ５０２は検証され、ステップ３１０に進む。ステップ３１０において、パスキー２１４のネットワーク識別５０４が検証されたかが判断される。一般に、パスキーインテグリティツール１０８は、ネットワーク識別５０４が、パスキー２１４が認証サーバ１１０によって生成されてから変化したかを判断する。もしネットワーク識別５０４が変化したなら、下に示すようにステップ３２０に進む。もしネットワーク識別５０４が変化していないなら、それは検証され、その方法はステップ３１２に進む。ステップ３１２において、ＩＰアドレス５０６が検証されたかが判断される。一般に、パスキーインテグリティツール１０８は、ＩＰアドレス５０６が、パスキー２１４が認証サーバ１１０によって生成されてから変化したかが判断される。もしＩＰアドレス５０６が変化したなら、下に示すように、ステップ３２０に進む。もしＩＰアドレス５０６が変化していないなら、それは検証され、その方法は最終ステップ３１４に進む。
【００２８】
最終ステップ３１４において、パスキー２１４が満了したかが判断される。一般に、パスキーインテグリティツール２２０は、パスキー２１４内のタイムスタンプ５０８と現時刻とを用いて、パスキー２１４が生成されてから経過したタイムピリオドを決定する。このタイムピリオドは、ウェブサーバ１０８上に蓄積された許容時間と比較される。そのタイムピリオドが許容時間より少ないか等しいなら、パスキー２１４は満了しておらず、ステップ３２２に進んでユーザの要求に対して情報提供がされる。言い換えると、ＸＭＬファイル２１６またはＨＴＭＬファイル２１８のようなユーザが望む情報がユーザに対して送られる。もしそのタイムピリオドが許容時間より大きいなら、ステップ３１５に進む。
【００２９】
ステップ３１５において、パスキー２１４は、満了しているため、クッキーバッファ２１２から消去される。ステップ３１６において、リダイレクト要求がクライアント１０６に送信される。このリダイレクト要求は、本質的には、クライアント１０６を認証サーバ１１０に向け直させる。そして、ステップ３１８において、クライアント１０６は認証サーバにコネクトされる。そして、その方法は、以下の図４に示すように続けられる。
【００３０】
図４は、本発明の実施例に従ったＩＤおよびパスワード検証ツール２２２の動作とパスキー生成ツール２２４の動作の様々な詳細を示すフローチャートである。ステップ４００において、ある要求がユーザから受信される。１つの実施例においては、この要求は上記ステップ３００においてウェブサーバ１０８によって受信された要求と同じ要求である。認証サーバ１１０がその要求を受信した時、ＩＤおよびパスワード検証ツール２２２は、ステップ４０２において、ユーザのネットワーク識別とパスワードの入力を促す。ＩＤおよびパスワード検証ツール２２２は、ステップ４０４においてユーザのネットワーク識別とパスワードを受信する。ステップ４０６において、ユーザのネットワーク識別とパスワードが有効かの判断がなされる。このステップにおいて、ＩＤおよびパスワード検証ツール２２２は、ユーザの識別とパスワードを検証するためにユーザデータベース１１２（図１）にアクセスする。もしそのネットワーク識別そして／またはパスワードが有効でないなら、ステップ４０２のユーザを促すステップに進む。ユーザは、有効な識別とパスワードが入力されなかったために、彼または彼女がパスキーを受信できないことを示すエラーメッセージがそのユーザに送信される前に、ある回数のトライアルが許される。もしユーザのネットワーク識別とパスワードがステップ４０６において有効とされると、ステップ４０８に進む。
【００３１】
ステップ４０８において、ユーザのパスワードが満了したかが判断される。もう一度、ＩＤおよびパスワード検証ツール２２２は、典型的には、そのパスワードが満了したか否かを判断するためにユーザデータベース１１２にアクセスする。もしそのパスワードが満了していたら、そのユーザは、ステップ４１０において彼または彼女のパスワードの変更を促され、上述したようにステップ４０２に進む。もしそのパスワードが満了していないなら、最終ステップ４１２に進み、そのパスワードが停止されているかの判断がなされる。ＩＤおよびパスワード検証ツール２２２は、そのパスワードが停止されているか否かを判断するため、もう一度ユーザデータベース１１２にアクセスする。もしそのパスワードが停止されていたら、ステップ４１４において、ユーザに対してエラーメッセージが送信され、処理は終了する。もしそのパスワードが停止されていないなら、ステップ４１６に進む。
【００３２】
ステップ４１６において、パスキー２１４が生成される。１つの実施例においては、パスキー２１４は以下のように生成される。ネットワーク識別５０４、ＩＰアドレス５０６、そしてタイムスタンプ５０８が、一時的にデータフィールドのストリングとしてバッファ（図示せず）に蓄積される。ネットワーク識別５０４は、ユーザによって入力され、ＩＤおよびパスワード検証ツール２２２によって検証されていることから、既知である。ＩＰアドレス５０６は、特定のクライアント１０６に特有のものであるため、既知である。タイムスタンプ５０８は、認証サーバ１１０によって、現時刻に基づいて決定される。次に、許可パスキー生成ツール２２４に格納された任意の適合アルゴリズムを用いて、そのデータフィールドのストリングに対するＣＲＣ５０２が決定される。データフィールドのストリングには、そのデータフィールドのストリングに対する長さ５００が決定される前にＣＲＣ５０２が付加される。そして、長さ５００がパスキー２１４を生成するためにデータフィールドのストリングに付加される。パスキー２１４を生成する他の適合する方法が用いられる。ネットワーク識別５０４、ＩＰアドレス５０６、そしてタイムスタンプ５０８を有するデータフィールドのストリングにおける長さ５００が決定される。別の実施例においては、ネットワーク識別５０４、ＩＰアドレス５０６、そしてＣＲＣ５０２を有するデータフィールドのストリングにおける長さ５００が決定される。パスキー生成ツール２２４は、パスキー２１４を暗号化するために任意の適合する暗号化技術を用いる。１つの実施例においては、８０ビット暗号化技術が用いられる。
【００３３】
一旦パスキー２１４がパスキー生成ツール２２４によって生成されると、ステップ４１８に進み、パスキー２１４が一時的に蓄積されるためにクライアント１０６に送信される。ステップ４１８において、認証サーバ１１０が、パスキー２１４がクライアント１０６のクッキーバッファ２１２中に蓄積されているか否かを判断するために、リダイレクト要求がクライアント１０６に送信される。ステップ４２０において、パスキー２１４がクライアント１０６から受信されたかが判断される。パスキー２１４が受信されていないなら、ステップ４２２において、そのユーザは、彼または彼女のクッキーバッファ２１２を起動（すなわち、活動）させるよう促す。最終ステップ４２４において、クッキーバッファが起動されているかが判断される。もしクッキーバッファ２１２が起動していないなら、処理は終了する。しかし、もしクッキーバッファ２１２が起動しているなら、上述したようにステップ４１８に進む。もしパスキー２１４がステップ４２０において認証サーバ１１０によって受信されると、ステップ４２６に進み、別のリダイレクト要求がクライアント１０６に送信される。このリダイレクト要求は、本質的には、クライアント１０６をウェブサーバ１０８に導く。ステップ４２８において、クライアント１０６はウェブサーバ１０８にコネクトされ、上記図３において説明したように、ステップ３００に進む。
【００３４】
上記図３において説明した方法は、イントラネット１０２中の任意のウェブサーバ１０８によって実行される。従って、一旦パスキー２１４がクライアント１０６のクッキーバッファ２１２に蓄積されると、その特定のユーザは、上記図３において説明された方法に従って、任意のウェブサーバ１０８にアクセスする。これによって、ユーザは、彼または彼女のネットワーク識別そしてパスワードをその都度再入力することなくウェブサーバ１０８からウェブサーバ１０８に「ジャンプ」することができるようになる。これによって、ユーザは考える時間とフラストレーションを小さくできる。加えて、会社の重要でない情報を送信する際には安全なチャネルが必ずしも必要でないため、様々なウェブサーバ１０８の相当な処理能力を解放できる。必要とされる安全なチャネルは、クライアント１０６から認証サーバ１１０までのチャネルのみである。別の実施例では、ウェブサーバ１０８は安全なチャネルを通じて重要な情報を送信するが、これは送信される情報のタイプによる。
【００３５】
本発明の実施例とそれらの利点が詳細に記述されてきたが、当業者は、添付されるクレームによって決定される本発明の思想および範囲を逸脱することなく、様々な変更と修正、そして削除をすることができる。
【図面の簡単な説明】
【００３６】
本発明およびその特徴と利点は、添付図面に関する下記の説明を参照することにより、より完全に理解される。  
【図１】本発明の１つの実施例に従ったネットワークユーザ認証システムを示すブロック図である。
【図２Ａ】本発明の１つの実施例によるクライアント、ウェブサーバ、そして認証サーバを示すブロック図である。
【図２Ｂ】本発明の教えるところに従ったパスキーの一例を示す表である。
【図３】本発明の１つの実施例に従ったパスキーインテグリティツールの様々な詳細を示すフローチャートである。
【図４】識別およびパスワード検証ツールとパスキー生成ツールの様々な詳細を示すフローチャートである。
【図１】
0004864289.tif 000002
【図２Ａ】
0004864289.tif 000003
【図２Ｂ】
0004864289.tif 000004
【図３】
0004864289.tif 000005
【図４】
0004864289.tif 000006