特許第5651112号(P5651112)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ マイクロソフト コーポレーションの特許一覧

特許5651112デジタルIDを用いたフォーム入力および自動パスワード生成
<>
  • 特許5651112-デジタルIDを用いたフォーム入力および自動パスワード生成 図000002
  • 特許5651112-デジタルIDを用いたフォーム入力および自動パスワード生成 図000003
  • 特許5651112-デジタルIDを用いたフォーム入力および自動パスワード生成 図000004
  • 特許5651112-デジタルIDを用いたフォーム入力および自動パスワード生成 図000005
  • 特許5651112-デジタルIDを用いたフォーム入力および自動パスワード生成 図000006
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5651112
(24)【登録日】2014年11月21日
(45)【発行日】2015年1月7日
(54)【発明の名称】デジタルIDを用いたフォーム入力および自動パスワード生成
(51)【国際特許分類】
   G06F 21/41 20130101AFI20141211BHJP
   H04L 9/32 20060101ALI20141211BHJP
【FI】
   G06F21/20 141
   H04L9/00 673A
【請求項の数】11
【全頁数】21
(21)【出願番号】特願2011-522116(P2011-522116)
(86)(22)【出願日】2009年7月28日
(65)【公表番号】特表2011-530740(P2011-530740A)
(43)【公表日】2011年12月22日
(86)【国際出願番号】US2009051996
(87)【国際公開番号】WO2010017066
(87)【国際公開日】20100211
【審査請求日】2012年7月24日
(31)【優先権主張番号】12/188,971
(32)【優先日】2008年8月8日
(33)【優先権主張国】US
【前置審査】
(73)【特許権者】
【識別番号】500046438
【氏名又は名称】マイクロソフト コーポレーション
(74)【代理人】
【識別番号】100140109
【弁理士】
【氏名又は名称】小野 新次郎
(74)【代理人】
【識別番号】100075270
【弁理士】
【氏名又は名称】小林 泰
(74)【代理人】
【識別番号】100101373
【弁理士】
【氏名又は名称】竹内 茂雄
(74)【代理人】
【識別番号】100118902
【弁理士】
【氏名又は名称】山本 修
(72)【発明者】
【氏名】タリク シャリフ
(72)【発明者】
【氏名】アルン ケー.ナンダ
(72)【発明者】
【氏名】ロベルト エー.フランコ
(72)【発明者】
【氏名】リチャード ランドール
【審査官】 脇岡 剛
(56)【参考文献】
【文献】 米国特許出願公開第2005/0177731(US,A1)
【文献】 特開2006−011894(JP,A)
【文献】 特開2003−186734(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/41
H04L 9/32
(57)【特許請求の範囲】
【請求項1】
コンピューティングシステムの1個または複数個のプロセッサによって実行されるとき、
フォームの複数のフォームフィールドを指定するフォームフィールド仕様をウェブサイトから得る動作と、
前記フォームの前記複数のフォームフィールドのうちの少なくとも1つの中に、少なくとも1つの値を与えるために使用されるデジタルIDを選択しまたは作成するよう、前記コンピューティングシステムのユーザを促す動作であって、前記デジタルIDが、1つ以上のIDプロバイダにより格納された前記デジタルIDに関連したデータにアクセスするために、前記1つ以上のIDプロバイダに接続するコードを前記コンピューティングシステムが実行できるようにし、前記デジタルIDに関連した前記データが、前記ユーザに関する情報と、前記複数のフォームフィールドの内の前記少なくとも1つを埋めるのに使用されるデータとを含む、動作と、
前記IDプロバイダは、自己発行IDプロバイダとサードパーティIDプロバイダのいずれかであって、
前記コンピューティングシステムのユーザが、サードパーティIDプロバイダに格納されたデータに関連したデジタルIDを選択した場合には、ネットワークを介して前記デジタルIDに関連したデータが格納される前記サードパーティIDプロバイダに接続する動作と、前記デジタルIDを使用して、前記サードパーティIDプロバイダから、前記フォームの前記複数のフォームフィールドのうちの前記少なくとも1つを埋めるために使用される前記データを含む、前記デジタルIDに関連した前記データを得る動作を行い、
前記コンピューティングシステムのユーザが、自己発行IDプロバイダに格納されたデータに関連したデジタルIDを選択した場合は、前記デジタルIDに関連したデータが格納される自己発行IDプロバイダから、前記フォームの前記複数のフォームフィールドのうちの前記少なくとも1つを埋めるために使用される前記データを含む、前記デジタルIDに関連した前記データを得る動作を行い、
少なくとも1つの埋められたフォームフィールドを生成するために、得られた前記データを用いて前記フォームの前記複数のフォームフィールドのうちの前記少なくとも1つを埋める動作と、
前記少なくとも1つの埋められたフォームフィールドを前記ウェブサイトに提出する動作とを行い、
前記デジタルIDに関連した前記データを前記サードパーティIDプロバイダから得た場合には、少なくとも1つの埋められたフォームフィールドを生成するために、得られた前記データを用いて前記フォームの前記複数のフォームフィールドのうちの前記少なくとも1つを埋める動作は、前記デジタルIDに関連した前記データを解析して前記フォームの前記複数のフォームフィールドのうちの前記少なくとも1つを埋めるために互換性を有する入力となるように変換させるものであって、前記デジタルIDに関連した前記データは各種のフォーマットのいずれかのフォーマットであって、前記データフォームの複数のフォームフィールドを指定するフォームフィールド仕様に従って前記デジタルIDに関連した前記データを解析して互換性を有するよう変換させること、
を前記コンピューティングシステムに実行させるコンピュータ実行可能命令を有することを特徴とする1つまたは複数のコンピュータ可読記憶媒体。
【請求項2】
前記フォームは、前記ウェブサイトにおいて新たなアカウントを登録するためのものであることを特徴とする請求項1に記載のコンピュータ可読記憶媒体。
【請求項3】
前記フォームは、前記ウェブサイトにログインし、または別の方法で前記ウェブサイトにおいて認証するためのものであることを特徴とする請求項1に記載のコンピュータ可読記憶媒体。
【請求項4】
前記フォームの前記フォームフィールドの前記少なくとも1つのうちの、1つまたは複数は、パスワードフィールドであることを特徴とする請求項1に記載のコンピュータ可読記憶媒体。
【請求項5】
前記フォームフィールド仕様は、前記フォームの前記フォームフィールドのうちの1つまたは複数に関する、1つまたは複数のフォームフィールド制限も指定することを特徴とする請求項1に記載のコンピュータ可読記憶媒体。
【請求項6】
得られた前記データを用いて前記フォームの前記フォームフィールドのうちの前記少なくとも1つを埋める前記動作において、前記フォームフィールド仕様の中で指定される前記1つまたは複数のフォームフィールド制限が満たされることを特徴とする請求項6に記載のコンピュータ可読記憶媒体。
【請求項7】
複数のデジタルIDは、情報カードとして前記ユーザに提示され、前記ユーザは、前記複数のデジタルIDのうちの少なくとも1つを選択するように促されることを特徴とする請求項2に記載のコンピュータ可読記憶媒体。
【請求項8】
ブラウザクライアントコンピューティングシステム、および少なくとも1つのウェブページを提供する、少なくとも1つのページサーバコンピューティングシステムを含むネットワークにおいて、前記ブラウザクライアントコンピューティングシステムが、前記少なくとも1つのページサーバコンピューティングシステムにデータを提供する方法であって、前記方法は、
前記ブラウザクライアントコンピューティングシステムが、フォームの複数のフォームフィールド、および前記フォームの前記フォームフィールドのそれぞれに対してゼロ以上のフォームフィールド制限を指定する、前記少なくとも1つのウェブページのフォームフィールド仕様を得るステップと、
前記ブラウザクライアントコンピューティングシステムが、デジタルIDを選択または作成するよう、ユーザを促すステップであって、前記デジタルIDが、1つ以上のIDプロバイダにより格納された前記デジタルIDに関連したデータにアクセスするために、前記1つ以上のIDプロバイダに接続するコードを前記クライアントコンピューティングシステムが実行できるようにし、前記デジタルIDに関連した前記データが、前記ユーザに関する情報と、前記フォームの前記フォームフィールドの内の少なくとも1つを埋めるのに使用されるデータとを含む、ステップと、
前記ブラウザクライアントコンピューティングシステムが、前記デジタルIDを使用して前記1つ以上のIDプロバイダの内の少なくとも1つに接続するステップと、
前記IDプロバイダは、自己発行IDプロバイダとサードパーティIDプロバイダのいずれかであって、
前記ブラウザクライアントコンピューティングシステムのユーザが、サードパーティIDプロバイダに格納されたデータに関連したデジタルIDを選択した場合には、前記ブラウザクライアントコンピューティングシステムが、前記デジタルIDを使用して、ネットワークを介して、前記デジタルIDに関連したデータが格納される前記サードパーティIDプロバイダから、前記フォームの前記フォームフィールドのうちの少なくとも1つを埋めるために使用される前記データを含む、前記デジタルIDに関連した前記データを得るステップと、
前記ブラウザクライアントコンピューティングシステムのユーザが、自己発行IDプロバイダに格納されたデータに関連したデジタルIDを選択した場合は、前記デジタルIDに関連したデータが格納される自己発行IDプロバイダから、前記フォームの前記複数のフォームフィールドのうちの前記少なくとも1つを埋めるために使用される前記データを含む、前記デジタルIDに関連した前記データを得る動作を行うステップと、
前記ブラウザクライアントコンピューティングシステムが、得られた前記データを用いて前記フォームの前記フォームフィールドのうちの前記少なくとも1つを埋めるステップと、
前記ブラウザクライアントコンピューティングシステムが、前記フォームの前記少なくとも1つの埋められたフォームフィールドを、前記少なくとも1つのページサーバコンピューティングシステムに自動的に提出するステップを有し、
前記デジタルIDに関連した前記データを前記サードパーティIDプロバイダから得た場合には、少なくとも1つの埋められたフォームフィールドを生成するために、得られた前記データを用いて前記フォームの前記複数のフォームフィールドのうちの前記少なくとも1つを埋める動作は、前記デジタルIDに関連した前記データを解析して前記フォームの前記複数のフォームフィールドのうちの前記少なくとも1つを埋めるために互換性を有する入力となるように変換させるものであって、前記デジタルIDに関連した前記データは各種のフォーマットのいずれかのフォーマットであって、前記データフォームの複数のフォームフィールドを指定するフォームフィールド仕様に従って前記デジタルIDに関連した前記データを解析して互換性を有するよう変換させること
を含むことを特徴とする方法。
【請求項9】
前記フォームの前記フォームフィールドのうちの前記少なくとも1つを埋めるために得られる前記データは、前記ユーザが選択したまたは作成した前記デジタルIDを使用して得られるデータを含むことを特徴とする請求項8に記載の方法。
【請求項10】
前記フォームの前記フォームフィールドのうちの前記少なくとも1つを埋めるために得られる前記データは、動的に生成されるユーザ名とパスワードとの対を含むことを特徴とする請求項8に記載の方法。
【請求項11】
前記フォームの前記フォームフィールドのうちの前記少なくとも1つを埋めるために得られる前記データは、以前に生成したユーザ名とパスワードとの対を含むことを特徴とする請求項8に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
ウェブサイトは、ウェブサイトが提供するサービスを使用するために、ユーザが個人情報を提供することをしばしば要求する。例えば、ウェブサイトは、ユーザの新たなアカウントを登録し、ユーザを認証し、またはユーザの支払いを処理するために個人情報を集める場合がある。ユーザからこの情報を集めるために、ウェブサイトは多くの場合、ユーザに「フォーム」を提示する。フォームまたはウェブフォームとは、情報を入力するために確保される「フォームフィールド」と呼ばれるスペースを含む構造化ウェブドキュメントである。フォームは、World Wide Web上でユーザの入力を集めるための普遍的な手段である。
【背景技術】
【0002】
人々がフォームを介してウェブサイトに個人情報を提供することが習慣的になるにつれ、IDの盗難が増加した。IDの窃盗犯は、多くの場合信頼できるウェブサイトのウェブフォームに似た、またはそうしたウェブフォームを正確にミラーリングする、個人情報を要求するウェブフォームをユーザに提示することができる。すると疑っていないユーザは、パスワード、クレジットカード番号、または他の個人情報を犯人に与える可能性がある。
【0003】
ウェブサイト認証のために、ユーザ名およびパスワードのフォームを使用することに固有の他の問題がある。人々は、辞書の中の言葉や名前に基づく短いパスワードを多くの場合選ぶ。これらの種類のパスワードは、非常に長く、ランダム化されたパスワードよりも容易に推測しまたは破ることができる。さらに、人々は一般に複数のウェブサイトに対して同じパスワードを使用し、このことは、1つのウェブサイトのパスワードが危害を受ける場合にさらされるリスクのレベルを高める。ある人物が、非常に長く、ランダム化され、一意のパスワードを使用することを望む場合、その人物はそれらのパスワードを書き留めることなく覚えておくのに苦労する可能性があるので、個人パスワードを管理することは相当な雑事になる。
【0004】
より安全、均一かつユーザフレンドリなデジタル情報の交換を容易にするために、デジタルIDの、拡張可能(open−ended)相互運用システムが開発されてきた。このデジタルIDのシステムは、多くの場合「IDメタシステム」と呼ばれる。
【発明の概要】
【発明が解決しようとする課題】
【0005】
少なくとも1つの従来の実装形態では、このIDメタシステムは安全な機構を提供し、ユーザは、その安全な機構によりデジタルIDを管理し使用することができる。このIDメタシステムは、デジタル情報の交換をより均一かつユーザフレンドリにし、ユーザがインターネットを介して検証可能な相手方に情報を提供するための安全な手段を提供することにより、IDの盗難防止に役立つ。ユーザのデジタルIDの一部は自己発行することができるのに対し、他のデジタルIDは信頼できるサードパーティによって提供され得る。ユーザであろうとサードパーティであろうと、デジタルIDを発行するエンティティは「IDプロバイダ」と呼ばれる。デジタルIDを要求し、デジタルIDの情報を使用するウェブサイトなどの当事者は、「証明書利用者」と呼ばれる。ユーザが合法の証明書利用者であるウェブサイトに移動する場合、ブラウザに埋め込まれる「IDセレクタ」ソフトウェアは、そのサイトに送信すべきデジタルIDに相当する情報カードをユーザが選択できるようにする。デジタルIDが選択されると、IDセレクタは、IDプロバイダと証明書利用者との間で、「セキュリティトークン」と呼ばれるデジタルIDデータの暗号化済みパッケージを安全に交換することを助ける。MICROSOFT(登録商標)WINDOWS CARDSPACE(登録商標)は、IDセレクタソフトウェアの一例である。
【課題を解決するための手段】
【0006】
本明細書に記載する諸実施形態は、フォームフィールドのデータを埋め、提出するためにデジタルIDを使用することに関する。こうした実施形態は、前に実施されてきたように、ウェブサイトをIDメタシステムと互換性があるようにすることに伴う開発努力より少ない開発努力で、ウェブサイトにデジタルIDとの互換性を与える可能性を有する。本明細書に記載する諸実施形態は、ユーザ名およびパスワードの自動生成/保守のための機構も提供する。
【0007】
一実施形態例では、コンピュータアプリケーションが、フォームを有するウェブサイトからフォームフィールド仕様を得る。このフォームフィールド仕様は、デジタルIDを使用してデータを与えることができる、フォームのフォームフィールドを識別する。フォームフィールド仕様を得ると、コンピュータアプリケーションが、デジタルIDを選択しまたは作成するようユーザを促す。コンピュータアプリケーションは、このデジタルIDを使用して、フォームのフォームフィールドのうちの1つまたは複数を埋めるためのデータを得る。コンピュータアプリケーションは、得られたデータを用いてフォームのフォームフィールドを埋め、その後、フォームフィールドデータはウェブサイトに提出される。
【0008】
別の実施形態例では、コンピュータアプリケーションが、ウェブサイトまたはアプリケーションから、ユーザ名パラメーターおよびパスワードパラメーターを得る。このコンピュータアプリケーションは、指定されたパラメーターに適合するユーザ名およびパスワードを自動生成する。生成されるユーザ名とパスワードとの対は、このコンピュータアプリケーションによって安全に記憶される。このコンピュータアプリケーションは、ウェブサイトまたはアプリケーションとの将来の認証のために、このユーザ名とパスワードとの対を呼び出すことができる。
【0009】
この発明の概要は、特許請求の範囲に記載の主題の重要な特徴または不可欠な特徴を特定することを意図せず、特許請求の範囲に記載の主題の範囲を決定する際の助けとして使用されることも意図しない。
【図面の簡単な説明】
【0010】
本発明の、上記に列挙したおよび他の利点/特徴を得ることができる方法について記載するために、添付図面を参照することにより様々な実施形態のより具体的な説明を行う。これらの図面は諸実施形態のサンプルを描くに過ぎず、よって本発明の範囲の限定であるとみなすべきでないことを理解し、添付図面を使用することにより、諸実施形態を一層の特定性および詳細により記載し説明する。
図1】本明細書に記載する諸実施形態を用いるために使用することができるコンピューティングシステムの一例を示す図である。
図2】デジタルIDを使用するフォーム入力技法、および自動パスワード技法を実現することができる環境を示す図である。
図3】デジタルIDを用いて得られるデータを使用する、ウェブフォーム入力方法のフローチャートである。
図4】安全なユーザ名とパスワードとの対を自動生成し、記憶するための方法のフローチャートである。
図5】デジタルIDを使用する、ウェブフォーム入力および自動パスワード生成の両方を取り入れる方法のフローチャートである。
【発明を実施するための形態】
【0011】
本明細書に記載する少なくとも一部の実施形態は、デジタルIDを使用するフォーム入力および/または安全なパスワードの自動生成に関する。本明細書に記載する諸実施形態は、前に実施されてきたように、ウェブサイトをIDメタシステムと互換性があるようにすることに伴う開発努力より少ない開発努力で、ウェブサイトにデジタルIDとの互換性を与える可能性を有する。さらに、本明細書に記載する諸実施形態は、パスワードに基づく認証機構を効率化し、そうした認証機構のセキュリティを高め、複数のウェブサイトおよびアプリケーションのパスワードを管理することにかかわる負担からコンピュータユーザを解放することができる。一部の実施形態をウェブサイトに関して記載するが、本明細書に記載する技法は、様々な種類のウェブアプリケーションおよびスタンドアロンコンピュータアプリケーションを含む、他のアプリケーションに適用できることを当業者なら理解されよう。
【0012】
以下にさらに詳細に説明するように、一実施形態では、フォームを有するウェブサイトは、フォームの中に含まれるフォームフィールドに関する情報を入手できるようにする。この情報は、フォームフィールドに入力することができるデータの種類および形式に関する一定の制限をオプションで含むことができる。ユーザは、デジタルIDを選択しまたは作成するよう促される。選択されるデジタルIDは、ユーザに関する一定の情報に関連付けられることができ、フォームの様々なフォームフィールドを埋めるために使用されることができる。選択されるデジタルIDのデータは、ウェブサイトによって指定されている任意の制限に適合するようにフォーマットされる。次いで、そのデータがウェブサイトに提出される。
【0013】
あるいは、またはそれに加え、別の実施形態では、ウェブサイトまたはアプリケーションにおける登録で使用し、ウェブサイトまたはアプリケーションにおいて将来認証するために、安全なユーザ名とパスワードとの対を生成することができる。この安全なユーザ名とパスワードとの対は、デジタルIDに関連付けられることができる。
【0014】
まず、図1に関して、本明細書に記載する様々な原理を使用することができるコンピューティングシステムを記載する。次いで、図2〜5に関して、デジタルIDを使用してフォームを入力すること、ならびに/または安全なユーザ名およびパスワードを生成することをもたらす様々な実施形態を記載する。
【0015】
図1は、コンピューティングシステム100の一例を示す。コンピューティングシステムは、今ではますます多様な形式を取りつつある。コンピューティングシステムは、例えばハンドヘルドデバイス、アプライアンス、ラップトップコンピュータ、デスクトップコンピュータ、メインフレーム、分散コンピューティングシステム、または従来はコンピューティングシステムとみなされなかったデバイスとすることさえできる。この記述および特許請求の範囲では、用語「コンピューティングシステム」は、少なくとも1個のプロセッサ、およびプロセッサによって実行され得るコンピュータ実行可能命令をその上に有することができるメモリを含む、任意のデバイスまたはシステム(あるいはその組合せ)を含むものとして広範に定義される。このメモリは任意の形を取ることができ、コンピューティングシステムの性質および形式に依拠することができる。コンピューティングシステムは、ネットワーク環境上に分散することができ、複数の構成コンピューティングシステムを含むことができる。
【0016】
図1に示されているように、コンピューティングシステム100は、最も基本的な構成では、少なくとも1個の処理ユニット102およびメモリ104を典型的には含む。メモリ104は、揮発性、不揮発性とすることができる物理システムメモリ、またはその2つの何らかの組合せとすることができる。用語「メモリ」は、物理記憶媒体などの不揮発性大容量記憶装置を指すために本明細書で使用することもできる。このコンピューティングシステムが分散される場合、処理能力、メモリ能力、および/または記憶能力も同様に分散され得る。本明細書で使用するとき、用語「モジュール」または「コンポーネント」は、このコンピューティングシステム上で実行されるソフトウェアオブジェクトまたはルーチンを指すことができる。本明細書に記載する様々なコンポーネント、モジュール、エンジン、およびサービスは、このコンピューティングシステム上で(例えば個別のスレッドとして)実行されるオブジェクトまたはプロセスとして実装することができる。
【0017】
以下の記述では、1つまたは複数のコンピューティングシステムによって実行される動作に関して、諸実施形態を説明する。そうした動作がソフトウェアによって実装される場合、コンピュータ実行可能命令を実行したことに応答して、その動作を実行する関連するコンピューティングシステムの1個または複数個のプロセッサがコンピューティングシステムの動作を指図する。そうした動作の一例は、データを操作するものである。このコンピュータ実行可能命令(および操作されたデータ)は、コンピューティングシステム100のメモリ104に記憶することができる。
【0018】
コンピューティングシステム100は、コンピューティングシステム100が例えばネットワーク110を介して他のメッセージプロセッサと通信することを可能にする、通信チャネル108も含むことができる。通信チャネル108は通信媒体の例である。通信媒体は、典型的にはコンピュータ可読命令、データ構造、プログラムモジュール、または搬送波や他のトランスポート機構などの変調データ信号内の他のデータを具体化し、任意の情報配信媒体を含む。限定ではなく例として、通信媒体には、有線ネットワークや直接有線接続などの有線媒体、およびアコースティック、無線、赤外線や他の無線媒体などの無線媒体が含まれる。本明細書で使用するとき、用語「コンピュータ可読媒体」は、記憶媒体および通信媒体の両方を含む。
【0019】
本発明の範囲内の諸実施形態は、コンピュータ実行可能命令もしくはデータ構造を保有し、またはその上に記憶させるためのコンピュータ可読媒体も含む。そうしたコンピュータ可読媒体は、汎用コンピュータまたは専用コンピュータによってアクセスすることができる、どんな利用可能な媒体でもよい。限定ではなく例として、そうしたコンピュータ可読媒体には、RAM、ROM、EEPROM、CD−ROMや他の光ディスク記憶媒体、磁気ディスク記憶装置や他の磁気記憶デバイス、所望のプログラムコード手段をコンピュータ実行可能命令またはデータ構造の形で保有しもしくは記憶するために使用することができ、汎用コンピュータまたは専用コンピュータによってアクセスすることができる他の任意の媒体など、物理記憶媒体および/またはメモリ媒体が含まれ得る。ネットワークまたは他の通信接続(ハードワイヤード、無線、またはハードワイヤードもしくは無線の組合せ)を介してコンピュータに情報が転送されもしくは提供されるとき、コンピュータはその接続をコンピュータ可読媒体と適切にみなす。したがって、そうした任意の接続をコンピュータ可読媒体と適切に呼ぶ。上記のものの組合せも、コンピュータ可読媒体の範囲内に含めるべきである。
【0020】
コンピュータ実行可能命令は、例えば、汎用コンピュータ、専用コンピュータ、または専用処理デバイスに、特定の機能もしくは機能群を実行させる命令およびデータを含む。この主題を構造的特徴および/または方法論的動作に固有の用語で記載してきたが、添付の特許請求の範囲の中で定義するこの主題は、必ずしも本明細書に記載する特定の特徴または動作に限定されないことを理解すべきである。むしろ、本明細書に記載する特定の特徴および動作は、特許請求の範囲を実施する形態例として開示するものである。
【0021】
図2は、本明細書に記載の、デジタルIDを使用するフォーム入力技法を行うことができるサンプル環境200を示す。このサンプル環境200内では、自動化された安全なパスワード生成技法も実行することができる。図2は、例えば図1のコンピューティングシステム100のように構造化され得る、クライアントコンピューティングシステム201を含む。このクライアントコンピューティングシステム201はネットワーク205に接続される。ネットワーク205は、インターネットとすることができ、またあるいはネットワーク205は、図2に図示し以下に記載するこの環境の他のコンポーネントにクライアントコンピューティングシステム201を接続する任意のネットワークとすることができる。
【0022】
図1のコンピューティングシステム100のように構造化することができるウェブサーバ202は、コンピュータ実行可能命令を含み、このコンピュータ実行可能命令によりウェブサーバ202は、クライアントコンピュータ201がネットワーク205を介してアクセス可能なウェブサイト210をホストする。ウェブサイト210は、1つまたは複数のウェブページ211A〜D(この説明の中では一括して「ウェブページ211」と呼ぶ場合もある)を含むことができる。ウェブページ211のそれぞれは、メタデータ215と、可視の対話型エレメントおよび可視の非対話型エレメントの両方を含み得る可視エレメント216とを含むことができる。ウェブページ211は、従来の手法ではHTMLを使用して記述することができ、またあるいは、当技術分野で知られているまたは将来開発される他の言語、スクリプト、プロトコル、もしくはフォーマットでクライアントコンピューティングシステムに提供することができる。
【0023】
代替的構成では、ウェブサイト210を、図示されているウェブサーバ202と同様であり得る複数のウェブサーバにわたってホストすることができる。さらに、ウェブサイト210および/またはウェブページ211は、例えばより多くのユーザ数、より大きい帯域幅の可用性、より速い接続速度等を促進するために、ウェブページおよび他のコンテンツをミラーリングし、複数のウェブサーバにわたって分散できるようにする機構を実装する分散アーキテクチャなどの、分散アーキテクチャによって提供することができる。事実、本明細書に記載する技法は、この環境を実装するウェブサーバ(もしあれば)の数または種類に関係なく、かつウェブページおよび他のコンテンツをこの環境内のエンドユーザに分散することができる手段に関係なく、フォームを使用する任意の環境と互換性があり得る。
【0024】
ウェブサイト210、またはウェブサイトのウェブページ211のうちの1つもしくは複数は、複数のフォームフィールドを含むフォームを含む。例えばフォーム212を含むウェブページ211Aの場合、フォーム212は、フォームフィールド213A〜213D(一括して「フォームフィールド213」と呼ぶ)を含むものとして図示される。ウェブページ211Aを少し詳しく図示するが、ウェブページ211Aに起因する機能の一部またはすべては、オプションで他のウェブページ211に同様に起因することができる。例えば、他のウェブページ211のうちの1つまたは複数もフォームを有することができる。しかし、典型的にはフォーム内のフォームフィールドの数、ID、およびレイアウトは、往々にしてフォームごとに異なる可能性がある。
【0025】
概して、本明細書でこの用語を使用するとき、およびこの用語が当技術分野で知られているように、「フォーム」とは、ユーザが情報を入力するために確保されるスペースを含む構造化ドキュメントであり、「フォームフィールド」とは、ユーザまたは他のエンティティが特定の情報項目を入力することができるフォーム内のスペースである。フォームフィールド213を含むフォーム212を含むことに加え、ウェブサイト210のウェブページ211Aは、フォームフィールド213の(必ずしもすべてではないが)1つまたは複数を参照するフォームフィールド仕様214も含むことができる。このフォームフィールド仕様214およびその中に含まれる参照は、本明細書に記載するフォーム入力方法およびフォーム入力技法によって埋められるべきフォームフィールドを識別する情報をクライアントコンピューティングシステム201に提供する。
【0026】
フォーム212、フォームフィールド213、およびフォームフィールド仕様214は、すべて単一のウェブページ211Aの中に含めることができ、またあるいは、図示されているウェブページ211などの複数のウェブページの一部とされることができる。あるいは、フォーム212、フォームフィールド213、およびフォームフィールド仕様214は、ウェブサーバ202とクライアントコンピューティングシステム201との間の直接の情報交換や、伝統的なウェブページであるとみなされないウェブアプリケーションを含むアプリケーションによってなど、従来のグラフィカルに表現されるウェブページ以外の手段により、クライアントコンピューティングシステム201に提供することができる。
【0027】
少なくとも、フォームフィールド仕様214が、1つまたは複数のウェブページ211の一部としてクライアントコンピューティングシステム201に提供される実施形態では、フォームフィールド仕様214は、ウェブページのメタデータ215の一部として含まれ得る。フォームフィールド仕様214内のデータは、当技術分野で知られているまたはまだ開発されていない複数の種類のデータ構造のうちの任意の構造として編成されることができる。例えば、1つの従来型の機構は、例えばXMLデータ構造やHTMLデータ構造などにおいて、マークアップ言語を使用してデータ構造を編成することである。あるいは、フォームフィールド仕様214は、ウェブページを記述する(HTMLなどの)マークアップ言語内の1つまたは複数のタグ内に単純に記述されることができる。
【0028】
ウェブページのメタデータ215の一部としてフォームフィールド仕様214をクライアントコンピューティングシステム201に提供する別の代替策として、例えばTCPやUDPなどの知られているプロトコルを使用してネットワーク上を送信されるデータパケットを含む、当技術分野で知られているまたはまだ開発されていない様々な手段のいずれかなどにより、ネットワーク205を介して、フォームフィールド仕様214をより直接的な方法でクライアントコンピューティングシステムに提供することができる。ただし、ネットワーク上でデータを送信するために使用することができる他の機構はいくらでもある。それらの機構のいずれかを使用して、本明細書に記載の原理に矛盾することなく、クライアントコンピューティングシステム201にフォームフィールド仕様214を送信することができる。
【0029】
フォームフィールド仕様214は、その中で参照されるフォームフィールドに関する、1つまたは複数のフォームフィールド制限をオプションで指定することができる。これらのフォームフィールド制限は、多くの場合、フォームフィールド仕様214が参照するフォームフィールドの中に入力することができるデータについてのパラメーターまたは限度である。フォームフィールド制限の例には(これだけに限定されないが)、指定されるフォームフィールドが要求されるかどうか、フォームフィールドへのデータ入力に関する最低長さ制限および/または最大長さ制限、フォームフィールドを埋めるときに使用すべき所要の文字セット、所要のまたは禁止された文字の種類などが含まれる。フォームフィールド仕様214は、フォームフィールド仕様214内で参照されるユーザ名およびパスワードのフォームフィールドに固有のフォームフィールド制限も含むことができる。これは、図4に関して以下に論じる「ユーザ名およびパスワード仕様」の一例である。
【0030】
クライアントコンピューティングシステム201は、ウェブブラウザソフトウェア218の一実装形態の中にウェブページ211Aの可視エレメント216を表示することができ、ウェブブラウザソフトウェア218の一実装形態は、ウェブブラウザが一般に実行する機能に加え、以下により詳細に説明する、デジタルIDを使用してフォームを入力するための記載の方法および技法をクライアントコンピューティングシステム201に実行させるコンピュータ可読命令を含む。ユーザ230は、クライアントコンピューティングシステム201、とりわけウェブブラウザソフトウェア218と対話することができる。本明細書に記載の諸実施形態は、ウェブブラウザソフトウェア218に関連して説明するが、本明細書に記載する技法のいずれかをクライアントコンピューティングシステム201に実行させるコンピュータ実行可能コードを、ソフトウェアおよび/またはハードウェア内に実装されるアプリケーションを含む、様々な種類のコンピュータアプリケーションに組み込めることが理解されよう。
【0031】
クライアントコンピューティングシステム201は、ユーザが自由裁量で有することができる1つまたは複数のデジタルIDを参照する、1つまたは複数のデジタルID参照220A〜E(一括して「デジタルID参照220」と呼ぶ)を含む。これらのデジタルID参照220は、図1に関して前に記載した様々なコンピュータ可読媒体に記憶されることができる。例えば、デジタルID参照220は、クライアントコンピューティングシステム201にとってローカルな不揮発性記憶媒体に記憶されることができ、またあるいはデジタルID参照220は、フラッシュメモリドライブやスマートカードなどのポータブルデバイス上に記憶されることができる。ただし、デジタルID参照220を記憶することができる方法について制限はない。
【0032】
デジタルID参照220は、クライアントコンピューティングシステム201によって実行されるコンピュータ実行可能コードが、IDプロバイダ203A〜Dおよび203S(以下、「IDプロバイダ203」と呼ぶ)によって図示されている1つまたは複数のIDプロバイダに接続することを可能にする情報を含む。デジタルID参照220A〜Dによって参照されるサードパーティIDプロバイダ203A〜Dは、図1に示されているコンピューティングシステム100のように構造化されるサーバによって実装されることができる。これらのサードパーティIDプロバイダへの接続は、ネットワーク205を介してクライアントコンピューティングシステム201に与えられる。サードパーティIDプロバイダ203A〜Dの例には、デジタルIDを提供する政府機関、クレジットカードプロバイダ、ユーザ230がメンバーシップまたはつながりをもつクラブやグループ、VERISIGN(登録商標)INC.などの証明書発行機関などが含まれる。これらはサードパーティIDプロバイダのほんの数例であり、デジタルIDの形でユーザに情報を提供する事実上どんなエンティティも、サードパーティIDプロバイダとみなされることができる。
【0033】
さらに、デジタルID参照220Eによって図示されているような一部のデジタルID参照は、自己発行IDプロバイダ203S(「自己発行IDプロバイダソフトウェア203S」とも呼ばれる)によって発行される自己発行デジタルIDを参照することができる。自己発行IDプロバイダ203Sは、クライアントコンピューティングシステム201のメモリ内に存在し、実行されるとき、ユーザ230に関する何らかの情報を含むデジタルIDをユーザが作成し、記憶し、かつ/またはアクセスできるようにするコンピュータ実行可能コードによって実装されることができる。自己発行IDプロバイダ203Sを含むコンピュータ実行可能コードは、ウェブブラウザソフトウェア218の一部として、(以下に詳細に論じる)IDセレクタソフトウェア219の一部として、別のソフトウェア製品の一部として、またあるいは、スタンドアロンソフトウェアとして組み込まれることができる。この自己発行IDプロバイダ203Sの管理における柔軟性は、図2の中で、自己発行IDプロバイダ203Sをウェブブラウザソフトウェア218と部分的にしか重複させないことにより記号的に表される。
【0034】
クライアントコンピューティングシステム201は、IDセレクタソフトウェア219を含むことができる。IDセレクタソフトウェア219は、グラフィカルインターフェイスをユーザ230に提示し、その中でデジタルID参照220(およびそれにより対応するID)のグラフィカル表現が表示される。IDセレクタソフトウェア219は、表示されているデジタルID参照のグラフィカル表現から、ユーザ230が選択を行うことができる手段も提供する。IDセレクタソフトウェア219は、ウェブブラウザソフトウェア218の一部として組み込まれることができ、またあるいは、別個のアプリケーションもしくはスタンドアロンアプリケーションの一部とされることができる。このことは、図2の中で、IDセレクタソフトウェア219をウェブブラウザソフトウェア218と部分的にしか重複させないことにより記号的に表す。IDセレクタソフトウェア219がウェブブラウザソフトウェア218の外部に組み込まれる一部の実装形態では、クライアントコンピューティングシステム201上にウェブブラウザソフトウェア218が存在する必要さえない場合がある。
【0035】
デジタルID参照220は、IDセレクタソフトウェア219により、情報カードまたはデジタルIDの他の視覚的表現としてユーザに提示されることができる。それぞれの情報カードは、カードが表すデジタルIDに関する情報の視覚的表示をユーザに提供することができる。本明細書に記載の原理を使用してそうしたカードが表すことができるデジタルIDの種類について実際に制限はない。しかし、具体例を使用することは、本明細書に記載のより広範な原理を明瞭にするのに役立つことができる。したがって、専ら一例として、デジタルIDは、ユーザが一定の年齢であることを主張する、政府が発行するデジタルIDに相当することができる。この例では、デジタルID参照は、例えばサードパーティIDプロバイダ203A〜Dのうちの1つとされることができる、政府のIDプロバイダへの参照を含むことができる。この例では、政府のIDプロバイダがユーザの年齢の主張を保証し、確認する用意があると仮定されたい。その場合、この例を続けると、デジタルID参照を表す情報カードは、デジタルID参照が参照するデジタルIDを提供するIDプロバイダが年齢確認IDを発行する能力を有することをユーザに明らかにする、グラフィカル表示を提供することができる。
【0036】
本明細書で論じる実施形態の一部は、ウェブページおよびウェブ環境(例えば図2に示されているウェブページ211)に関連して記載するが、この説明を読んだ後、本明細書に記載の実施形態によって実施される概念および技法は、従来のウェブページを取り入れない可能性がある様々な環境および技術に適用できることを当業者なら理解されよう。例えば、フォームの使用を伴う実施形態に関して、フォームは、ウェブページではない様々なコンピュータアプリケーションにおいてよく使用される。フォームは、WORDPERFECT(登録商標)ドキュメントや、MICROSOFT(登録商標)OFFICEドキュメントにおいて使用することができる。フォームは、MACROMEDIA(登録商標)FLASH(登録商標)技術を使用して開発されるウェブアプリケーションなど、典型的には「ウェブページ」であると考えられない様々なウェブアプリケーションにおいて使用されることができる。事実、フォームは、ユーザにデータ入力を要求する、実質的にいかなるスタンドアロンアプリケーションまたは他のコンピュータアプリケーションにおいても使用されることができる。
【0037】
上記に述べた環境200の一部のコンポーネントは、当技術分野で知られている他のコンピューティング環境およびアプリケーションにおいて実装されているが、ほとんどの場合、本明細書に記載の機能とは異なる機能で実装される。例えば、IDセレクタおよびIDプロバイダを使用することを含む、デジタルIDを交換するための方法を使用するプラットフォームは、当技術分野において「IDメタシステム」として一般に知られている。さらなる例として、MICROSOFT(登録商標)WINDOWS CARDSPACE(登録商標)はとりわけ、IDプロバイダによって提供される1つまたは複数のデジタルIDへの参照を含む情報カードをユーザに提示する、IDセレクタソフトウェアの実装を含む。このことについては、本明細書に記載の原理に適合させるために適切な修正を加えてではあるが、本明細書に開示する有用な技法および機構の一部を、既存のIDメタシステム構造および当技術分野で知られている他の構造とともに実装できることを説明するために背景技術によって言及している。
【0038】
図3は、デジタルIDを使用して得られるデータを用いてフォームフィールドを埋めるための方法300を示す。この方法300は、図2に示されている環境200と同様の環境において実行されることができる。クライアントコンピューティングシステム201、およびネットワーク205を介してクライアントコンピューティングシステム201に接続される他のコンピューティングシステムなど、1つまたは複数のコンピューティングシステムが、方法300に記載の動作を1つまたは複数のコンピューティングシステムに実行させるコンピュータ可読媒体上に含まれるコンピュータ実行可能命令を、実行することができる。
【0039】
方法300は、フォームのフォームフィールドを指定するフォームフィールド仕様をウェブサイトから得る、動作301を含む。例えば、図2との関連で、クライアントコンピューティングシステム201は、フォーム212のフォームフィールド仕様214をウェブサイト210から得ることができる。フォーム212は、いくつかのフォームフィールド213を指定し、フォームフィールド仕様214はフォームフィールド213のうちの1つまたは複数を参照できることを思い出されたい。さらに、前に論じたように、フォームフィールド仕様214は、フォーム212のフォームフィールド213のうちの1つまたは複数に関する、1つまたは複数のフォームフィールド制限をオプションで指定することができる。
【0040】
一例として、動作301で得られるフォームフィールド仕様214は、ウェブサイト210においてユーザ230の新たなアカウントを登録するためのものである、フォーム(本明細書では「登録フォーム」と呼ぶ)212のフォームフィールド213を参照することができる。ウェブサイト210は、代わりにまたはそれに加えて、ウェブサイト210に対して認証しまたはログインするためのものである、やはりフォーム212と同様の形式の別のフォーム(本明細書では「ログインフォーム」と呼ぶ)を含むことができる。ただし、フォームは、これらの目的または他の様々な目的のうちのいずれか1つもしくは複数のために使用されることができる。どんな場合でも、フォームフィールド213の1つは、登録フォームの場合は新たなパスワードのための、またはログインフォームの場合は既存のパスワードのためのパスワードフィールドとされることができる。あり得るフォームフィールド213の他の例は、ユーザ名フィールド、クレジットカード情報フィールド、パスポート識別子フィールド、国籍フィールド、年齢フィールド、配偶者関係フィールド、住所情報フィールド、犯罪歴フィールド、職業フィールド等とされることができる。ただし、本明細書に記載の原理は、フォームフィールド213に関連して記載する情報の種類に限定されることはない。少なくとも1つの実施形態では、フォームフィールド213はテキスト情報からなることができる。しかし一部の実施形態では、専ら例として、その情報はそれに加えてまたは代わりにファイル、リスト、グラフィカルに表示されるオブジェクト、カレンダー日付選択、または他の任意の種類の情報とされることができる。本明細書に記載の原理は、利用される情報の種類について制限はなく、諸実施形態は様々な異なる種類の情報の1つまたは複数を利用することができる。
【0041】
図3に示されている方法300は、フォームのフォームフィールドのうちの少なくとも1つの中に、少なくとも1つの値を与えるために使用されるデジタルIDを選択しまたは作成するようコンピューティングシステムのユーザを促す、動作302も含む。ユーザ230は、ユーザが利用できる1つまたは複数のデジタルID参照220から1つのデジタルID参照を選択するよう、IDセレクタソフトウェア219によって促され得る。前に論じたように、デジタルID参照220は、情報カードまたはデジタルIDの他のグラフィカル表現の形でユーザに提示されることができ、それぞれのグラフィカル表現は、例えば、グラフィカル表現が表すデジタルIDの簡潔な概要をユーザ230に提示することができる。
【0042】
少なくとも1つの実施形態では、ユーザ230は、既存のデジタルIDを選択するのではなく、新たなデジタルIDを作成することに決めることができる。この選択が行われる場合、自己発行IDプロバイダソフトウェア203Sをアクティブ化することができ、ユーザ230は、方法300で使用されるデジタルIDを作成するために自己発行IDプロバイダソフトウェア203Sが使用することができる入力を、例えばグラフィカルインターフェイスを介して行うことができる。ユーザが新たなデジタルIDを作成することができる、他の様々な機構があり得る。あるいは、新たなデジタルIDを作成することに決めるのではなく、ユーザ230は、1組の既存のデジタルID参照220A〜Eのうちの1つを選択することに決めることができる。選ばれるデジタルID参照は、サードパーティIDプロバイダ203A〜Dからの既存のデジタルIDを参照することができ、またあるいは、自己発行IDプロバイダ203SからのデジタルIDを参照することができる。
【0043】
方法300における次の動作303は、前の動作302でユーザが選択しまたは作成したデジタルID参照を使用して、フォーム212のフォームフィールド213のうちの1つまたは複数を埋めるために使用することができるデータを得ることからなる。
【0044】
この動作303の1つの応用例についての説明の例として、ユーザ230が、例えばサードパーティIDプロバイダ203Aが提供するデジタルIDを参照するデジタルID参照220Aを、動作302において前に選択した場合、クライアントコンピューティングシステム201は、ネットワーク205を介して、選択されたデジタルID参照220Aが参照するサードパーティIDプロバイダ203Aに接続する。サードパーティIDプロバイダ220Aは、選択されたデジタルIDが含むデータフィールド(「要求(claims)」としても知られる)をクライアントコンピューティングシステム201に提供することができる。このデータは、当技術分野で知られているまたは将来開発される何らかの安全な手段もしくはプロトコルによって転送することができる。このデータは、この説明および当技術分野の両方において集合的にセキュリティトークンと呼ばれる、様々な異なる種類のパッケージのいずれかへとパッケージ化されることができる。セキュリティトークンは、例えばSAMLトークンなどの安全なデータパッケージを含む、当技術分野で知られているまたは将来開発され得るどんな種類のデータパッケージでもよい。
【0045】
前の段落の説明のための例を続けると、ユーザが前に(動作302で)自己発行デジタルIDを参照するデジタルID参照220Eを選択したか、新たな自己発行デジタルIDを作成することに決めた場合、クライアントコンピューティングシステム201上に存在する自己発行IDプロバイダ203Sは、ユーザが選択したまたはユーザが作成したデジタルIDの中に含まれるデータを表すセキュリティトークンを提供することができる。前の段落で論じたように、このデータは、セキュリティトークンと同様であり得るパッケージにカプセル化することができる。あるいは、自己発行デジタルIDから得られるデータは、方法300を実行しているソフトウェアに直接伝達することができる。
【0046】
動作303においてデータを受け取ると、方法300は、得られたデータを用いて、フォームフィールド仕様214内で指定されるフォームフィールド213のうちの1つまたは複数を埋める、動作304を含む。前の動作303で受け取るデータは、フォームフィールド213のうちの1つを埋めるために使用することができる前に、セキュリティトークンから抽出しかつ/または変換する必要があり得る。例えば、セキュリティトークンをIDプロバイダ203から受け取る実施形態では、フォーム仕様214内で指定されるフォームフィールド213に対する互換性のある入力である、単純なテキストデータまたは(非テキストフォームフィールドの場合)他のデータを抽出するために、セキュリティトークンを「開き」かつ/または解析する必要があり得る。さらに、フォームフィールド仕様214内に示されるオプションのフォームフィールド制限のいずれかまたはすべてに適合するよう、データをフォーマットしまたは変換することができる。
【0047】
フォームフィールド仕様214内で指定されたフォームフィールド213のうちの1つまたは複数を埋めるために、動作304においてデータが使用されると、方法300は、埋められたフォームフィールドをウェブサイト210に提出する、動作305を含む。データを提出するこの動作305は、クライアントコンピューティングシステム201が自動的に、かつ前の動作302でユーザ230がデジタルIDを選択したときに生じ得るユーザ対話以上のさらなるユーザ対話なしに実行することができる。あるいは、ユーザ230は、埋められたフォームフィールドを提出することができる前に、クライアントコンピューティングシステム201に対して何らかのさらなる対話を行う必要があり得る。一例では、ユーザ230は、フォーム212を提出する準備ができていることを確認するために、ダイアログボックスの中の確認ボタンをクリックする必要があり得る。ただし、ダイアログボックスの中のボタンをクリックすることはユーザ対話の1つの一般的な例だが、この動作305でデータをウェブサイト210に提出する前に、ユーザは、ユーザ230とクライアントコンピューティングシステム201との間の可能な多くの対話のうちの1つまたは複数を行うように要求される場合がある。
【0048】
1つまたは複数の実施形態では、埋められたフォームフィールドをウェブサーバ202に提出する方法は、ユーザ230がフォーム212にデータを手入力し、フォームをウェブサイト230に提出した場合にデータが提出されることになるのと同じ方法で、クライアントコンピューティングシステム上のウェブブラウザソフトウェア218が、ウェブサーバ202にデータを提出するものとすることができる。この例では、ウェブブラウザソフトウェア218は、ユーザが「提出」ボタンをクリックすることまたは同様のユーザインターフェイス要素と対話することをシミュレートすることができる。あるいは、ウェブブラウザソフトウェア218は、埋められたフォームフィールド情報を含むウェブサーバ202に、HTTP要求を単に送信することができる。これらはウェブサーバにフォームフィールドを提出する2つの実装形態例だが、クライアントコンピューティングシステム201が、埋められたフォームフィールドデータをネットワーク205を介してウェブサーバ202に提出することができる、当技術分野で知られているまたは将来開発され得る他の様々な手段がある。
【0049】
1つまたは複数の実施形態では、方法300を実行する過程の前にまたはその最中に、ウェブブラウザソフトウェア218および/またはIDセレクタソフトウェア219は、方法300を始める前にウェブサイト210が方法300の技法と互換性があることを検出しようと試みることができる。この互換性の検出を行うことができる方法の一例として、ウェブブラウジングソフトウェア218は、方法300の実行を開始する前に、ウェブページ211Aが、適切にフォーマットされたフォームフィールド仕様214を含むことを検出することができる。その一方で、ウェブブラウジングソフトウェア218は、ウェブページ211Aが適切にフォーマットされたフォームフィールド仕様を有さないことを認識し、方法300の実行を開始しないことができる。このフォームフィールド仕様検出技法は、本明細書に記載の方法および技法を何らかの条件があること基づいて選択的に実行することができる方法の単なる一例であり、本明細書に記載の技法は、この説明のための例で使用した条件と異なりまたはその条件に加えることができる1つもしくは複数の条件に潜在的に依拠することができる。さらに、この段落で記載した例において説明したような何らかの条件を検出することは、方法300および本明細書に記載の他の技法にとって完全にオプションであり、どんな条件があることにも一切依拠しない実施形態も存在することができる。
【0050】
図4は、ユーザ名とパスワードとの対を、自動的にかつ安全に生成するための方法400のフローチャートを示す。
【0051】
方法400は、アプリケーションまたはウェブサイトのユーザ名およびパスワード仕様を得る、動作401を含む。ウェブサイト210の場合、ユーザ名およびパスワード仕様は、フォームフィールド仕様214の中に含まれる可能性があり、または前に論じたように、ネットワーク205上でデータを転送する他の手段によって伝達することができる。アプリケーションの場合、このユーザ名およびパスワード仕様は、アプリケーションの機能の少なくとも一部にアクセスするためにユーザ名およびパスワードが要求されることをアプリケーションが指示する、他の何らかの構造を含むことができる。さらに、このユーザ名およびパスワード仕様は、アプリケーションまたはウェブサイトに提供されるユーザ名およびパスワードについての様々な制限をオプションで指定することができる。例えば、(最低または最大)長さ制限、所要のもしくは限定された文字セット、所要のもしくは禁止された文字の種類、辞書の言葉や名前もしくはそれらの単純な改変形態を使用することについての制限、または生成されるユーザ名およびパスワードが特定の事例において適応すべき、他の多くの考えられる制限もしくはパラメーターがあり得る。
【0052】
次に方法400は、得たユーザ名およびパスワード仕様に準拠するユーザ名とパスワードとの対を自動生成する、動作402を含む。生成されるユーザ名およびパスワードは、もし少しでも含まれていれば、ユーザ名およびパスワード仕様の中に含まれていた制限、限度、およびパラメーターのすべてに適合すべきである。
【0053】
この生成プロセスは、このプロセスによって生成することができるユーザ名およびパスワードに対し、ユーザ名およびパスワード仕様の中で指定される制限に加え、自らの制限をオプションで課すこともできる。例えば、この生成プロセスは、辞書の言葉もしくは名前を使用することに対して自らの制限を課すことができ、またはウェブサイトもしくはアプリケーションがサポートする最大長のパスワードを常に作成することができる。そうした例では、仕様の制限が生成プロセスによって追加され、またはより制限の大きなものにされる。自らが課す制限の別の例として、この生成プロセスは、生成される任意のユーザ名とパスワードとの対が、他のアプリケーションまたはウェブサイト用に以前作成したユーザ名とパスワードとの対と重複すべきでないという制限を、生成プロセス中に課すことができる。自らが課す制限についてのこれらの例は、パスワード生成プロセスに対して課すことができる多岐にわたるあり得る制限のうちのいくつかに過ぎない。一部の実施形態では、自らが課す制限は完全にオプションであり、または存在しないものとすることができる。
【0054】
動作402でユーザ名とパスワードとの対を生成した後、生成プロセス400は、アプリケーションまたはウェブサイトにおいて将来認証するためにコンピューティングシステムがその対を呼び出すことができるよう、生成したユーザ名およびパスワードを記憶する、動作403を含む。ユーザ名およびパスワードは、ローカルに、またあるいは、クライアントコンピューティングシステム201に含まれないデバイス上もしくは記憶媒体上に記憶することができる。ユーザ名およびパスワードを記憶し得る方法について制限はない。一部の実施形態では、記憶済みのユーザ名とパスワードとの対を生成したアプリケーションだけが、その対を将来使うために復号できるように、ユーザ名およびパスワードを暗号化し安全な方法で記憶することができる。
【0055】
代替的実施形態では、ユーザ名とパスワードとの対を1箇所以上に記憶することができ、例えばユーザは、クライアントコンピューティングシステムと、ラップトップ、PDA、携帯電話などのポータブルコンピューティングデバイスとの両方に記憶済みのユーザ名およびパスワードを有することができる。別の可能性は、この対を、フラッシュメモリなどのポータブル記憶媒体上にまたはスマートカードなどのポータブルデバイス上に安全に記憶できることであり、これにより、ユーザ230がアクセスする機会がある任意のコンピュータ上で、生成済みのユーザ名とパスワードとの対を使用することができる。これらは、本明細書に記載の技法によって生成されるユーザ名およびパスワードを記憶し、使用することができる方法の多くの可能性のほんのいくつかに過ぎない。
【0056】
生成したユーザ名とパスワードとの対を、ウェブサイトまたはアプリケーションにおいて将来認証するために呼び出すことができる方法で記憶すると、生成された対に関して行うことができるさらなるオプションのステップ404がある。
【0057】
例えば、動作411に図示されているあるオプションステップでは、生成したユーザ名とパスワードとの対を使用して、その対が生成された対象のウェブサイトまたはアプリケーションに対して自動的に認証することができる。ウェブサイト210を使用する実施形態では、ユーザ230が、(動作401〜403に関して論じたように)ユーザ名およびパスワードを以前生成した対象のウェブサイト210に戻るとき、クライアントコンピューティングシステム201上のコンピュータ実行可能コードは、ウェブサイト210に自動的にログインするために生成済みの対を使用させることができる。あるいは、本明細書に記載の技法を使用するために有効にすることができる多くの異なる種類のアプリケーションのうちのあるアプリケーションを含む、ウェブサイト以外のアプリケーションを使用する実施形態では、アプリケーションに自動的にログインするために、生成済みのユーザ名とパスワードとの対を動作411で使用することができる。
【0058】
ウェブサイト認証用のパスワード生成に固有の実施形態では、生成した対を記憶すると、(動作421に図示されているように)コンピューティングシステムが、生成したユーザ名とパスワードとの対に関連させるデジタルIDを選択しまたは作成するようユーザを促すことができる。生成した対に関連させるためのデジタルIDをユーザが選択しまたは作成すると、動作422に図示されているように、生成された対は、デジタルIDに関連付けられる。デジタルIDに関連付けられていることに加え、生成した対はウェブサイトにオプションで関連付けられることができ、これにより、その後、ウェブサイトに訪問するとき、ユーザ名およびパスワードは、ウェブサイトに対して知られている関連付けを有し、この関連付けを使用して、ウェブブラウザソフトウェア218や、IDセレクタソフトウェア219などのアプリケーションに追加の認証機能を提供することができる。
【0059】
方法400の代替的構成では、オプションの動作421および422は、生成したユーザ名とパスワードとの対を記憶する動作403の前に実行することができる。どんな場合でも、オプションの動作421〜423を含む実施形態では、将来の認証での使用の例として、ユーザ230が本明細書に記載の技法と互換性があるウェブサイト210に移動し、ウェブサイト210が、その中に含まれる特定の機能にアクセスするためにユーザ230が認証することを要求する場合、ユーザは動作423でデジタルIDを選択するように促される。このデジタルIDを選択するように促すことは、方法300の動作302に関して前に記載したのと同様の方法で行うことができる。ユーザ230が、ウェブサイトのユーザ名とパスワードとの対に関連するデジタルIDを選択すると、動作411に図示し上記に述べた動作と同様に、ユーザ230は自動的にウェブサイトに対して認証されまたはログインする。そうした実施形態では、例えばユーザ230がデジタルIDを選択した後に、ウェブサイト210において自動的に認証するために生成済みの対を使用することを含む動作423は、図3に示されている方法300の動作303〜305に図示されているフォームフィールドデータを埋め、提出するための技法と同様に、後にウェブサイト210に提出されるフォームフィールド213を埋めるために、ユーザ名とパスワードとの対を使用することを含むことができる。
【0060】
図4に示されている方法400を使用する実施形態の1つの利点は、ユーザ230が、生成したユーザ名とパスワードとの対を記憶しまたは書き留めておく必要がないことである。さらに、不正使用するために他人がユーザ名およびパスワードを得ることは困難または不可能である。
【0061】
方法400は、ユーザ名とパスワードとの対の一般化された概念との関連で論じたが、パスワードを利用する様々な異なる認証機構があることが理解されよう。そうしたシステムでは、パスワードは多くの場合、何らかの補足的識別情報に結合され、補足的識別情報は、ユーザ名、図4の説明および本明細書の考察の全体にわたって使用する例とすることができるが、代わりに他の様々な識別手段のいずれかとすることもできる。識別手段の別の一般的な例は、電子メールアドレスを認証用のパスワードとともに使用することである。例えばスマートカードや生体認証技術などのより洗練された機構を含む、ユーザを識別するための他の機構がある。しかし、これらはパスワードを使用する技術のうちの、ごくわずかな説明のための例に過ぎない。本明細書に記載の技法は、パスワードの安全な自動生成から利益を受けることができる任意の認証システムに、そのシステムがユーザ名とパスワードとのペアリング、またはユーザ識別およびユーザ認証の他の何らかの方法を使用するかどうかに関係なく適用することができる。
【0062】
一部の実施形態では、ウェブサイトにユーザ名およびパスワードを供給するために方法400を使用することができ、その場合、図2の環境が当てはまる。そうした実施形態では、ユーザ名およびパスワードはフォーム212によってウェブサイト210に供給することができる。したがって、図4の技法は、図3の方法などの方法とともに利用することができる。例えば、ユーザ名およびパスワード仕様を、動作301で得るフォームフィールド仕様214の一部としてウェブサイト210から得ることができる。さらなる例として、生成したユーザ名およびパスワードは、動作305に図示し、動作305に関して本明細書で説明するのと同様の方法でフォーム212に提出することができる。さらに、一部の実施形態では、クライアントコンピューティングシステム201は、ウェブブラウザソフトウェア218を含むことができ、方法400を、ウェブブラウザソフトウェア218またはIDセレクタソフトウェア219の一部として、もしくはそれらに関連して実行されるコンピュータ実行可能コードによって実行することができる。
【0063】
代替的実施形態では、方法400は、この方法を実行するコンピュータ実行可能命令を含む、スタンドアロンアプリケーションによって実行することができ、またはこの方法は、より大きいアプリケーションライブラリもしくはコードライブラリの一部であるコードモジュールによって実行することができる。
【0064】
図2に示されている環境と同様の環境で実行されるとき、図3および図4に示されている方法/技法300と400とを組み合わせて、方法300のフォーム入力の両方を行い、方法400で示されている安全なユーザ名およびパスワードの自動生成を組み込むハイブリッドシステムを作成することができる。そうした方法500は、図5に示し、いくつかある利益の中でとりわけ、ウェブサイト210によって提供される機能にアクセスするために一般的に使用される、登録プロセスおよび認証プロセスの両方を著しく自動化することを可能にすることができる。
【0065】
例えば、図2の環境200によって示されるような環境では、方法500は、フォーム212の複数のフォームフィールド213を指定するフォームフィールド仕様214を得る、動作501を含むことができる。前に説明したように、フォームフィールド仕様214は、フォーム212のフォームフィールド213のうちの1つまたは複数に関するフォームフィールド制限を含むことができる。この動作501は、図3に示されている動作301に似ている。次に動作502で、ユーザ230がデジタルIDを選択しまたは作成するよう、クライアントコンピューティングシステム201によって促される。その後、動作503で、デジタルIDを使用して、フォームフィールド仕様214の中で指定される、フォーム212のフォームフィールド213のうちの少なくとも1つを埋めるためのデータを得る。この動作は、サードパーティIDプロバイダ203A〜Dまたは自己発行デジタルIDプロバイダ203SからのデジタルIDを使用するものとすることができ、動作303に関連して前に論じたセキュリティトークンの転送および解析を含むことができる。
【0066】
ウェブサイト210が要求するデータの種類に応じて、動作503に図示されているように、様々な異なるソースからデータを得るためにデジタルIDを使用することができる。これについては、図5の中で動作503を表すボックスに含まれる3つのボックス511、512、および513によってさらに説明する。したがって、動作503のパフォーマンスは、511、512、および513に記載、図示し、以下に説明する動作のうちのいずれか1つまたは複数で構成され得る。
【0067】
あるシナリオでは、動作511に図示されているように、ユーザ230がウェブサイト210にアクセスしており、ウェブサイト210がユーザ230に関する情報を要求している場合、デジタルIDの中に含まれる情報またはデジタルIDによって表される情報からデータを直接得ることができる。例えば、ユーザは新たなアカウントを登録するためにウェブサイト210にアクセスしている可能性があり、ウェブサイトは、新たなアカウントを登録するために、ユーザに関する情報を要求している可能性がある。デジタルIDからデータを得るための技法は、例えば図3の動作303に関して上記に述べた技法と同様のものとすることができる。
【0068】
ウェブサイト210がユーザに新たなユーザ名およびパスワードを供給するように要求している、動作512に図示されている別のシナリオでは、方法400に関連して前に論じたプロセスと同様のプロセスを使用して新たなかつ一意のユーザ名とパスワードとの対を生成するために、デジタルIDを使用することができる。この動作512は、動作511および/または動作513の代わりに、もしくはそれらの動作に加えて行うことができる。
【0069】
ユーザ230が、自身が以前訪問したウェブサイト210に戻り、ウェブサイト210が認証目的でユーザ230に既存のユーザ名およびパスワードを提供することを要求している、動作513に図示されているシナリオでは、前に生成したユーザ名とパスワードとの対を取得し、ユーザ230を認証するためにこの生成済みの対をウェブサイト210に供給するために、デジタルIDを使用することができる。
【0070】
上記に論じたデータのいずれかを得るためにデジタルIDを使用すると、動作504で、そのデータを使用してフォームフィールド仕様214の中で指定された、フォーム212のフォームフィールド213のうちの1つまたは複数を埋める。最後に、動作505に図示されているように、埋められたフォームフィールドが自動的に提出される。動作504および動作505は、方法300の動作304および動作305に近い類似性を有し、図3に関連して行った説明を適用できる場合がある。
【0071】
したがって、本明細書に記載した原理は、デジタルIDを使用するフォーム入力ならびに/または安全なユーザ名およびパスワードを自動生成するための柔軟な機構を提供する。本発明は、その趣旨または本質的特徴から逸脱することなく他の特定の形態で実施することができる。記載した実施形態は、あらゆる面で限定的でなく専ら説明的であるとみなすべきである。したがって本発明の範囲は、上述の説明によってではなく、添付の特許請求の範囲によって示される。特許請求の範囲の等価物の意味および範囲に含まれるあらゆる変更は、特許請求の範囲に記載の範囲に包含されるべきである。
図1
図2
図3
図4
図5