"コンピューティングデバイスのユーザをベンダコンピューティングデバイスに対して認証するために、前記ベンダコンピューティングデバイスから複数の認証制約を受信するベンダ認証モジュールと、前記ユーザを前記ベンダコンピューティングデバイスに対して認証するために、認証データを前記複数の認証制約の関数として生成する認証データ生成モジュールとを備えるコンピューティングデバイスであって、前記ベンダ認証モジュールは、生成された前記認証データを前記ベンダコンピューティングデバイスに提供することにより、前記ユーザを前記ベンダコンピューティングデバイスに対して認証する、コンピューティングデバイス。前記ベンダコンピューティングデバイスは、金融データサーバ、電子商取引サーバ、及びクラウドベースのサービスサーバのうち1つを含む、請求項1に記載のコンピューティングデバイス。前記コンピューティングデバイスは、モバイルコンピューティングデバイスを含む、請求項1に記載のコンピューティングデバイス。前記複数の認証制約は、前記ユーザを前記ベンダコンピューティングデバイスに対して認証するためのユーザパスワードを生成するための複数のパスワード制約を含む、請求項1に記載のコンピューティングデバイス。前記複数のパスワード制約は、前記パスワードのための文字の最小長さ、及びアルファベットではない文字要件のうち少なくとも1つを含む、請求項4に記載のコンピューティングデバイス。前記複数の認証制約は更に、前記ユーザを前記ベンダコンピューティングデバイスに対して認証するためのユーザネームを生成するための複数のユーザネーム制約を含む、請求項4に記載のコンピューティングデバイス。前記複数のユーザネーム制約は、前記ユーザネームのための文字の最小長さ、及びアルファベットではない文字要件のうち少なくとも1つを含む、請求項6に記載のコンピューティングデバイス。前記ベンダ認証モジュールは、予め構築されたプロトコルに従って前記ベンダコンピューティングデバイスから前記複数の認証制約を受信する、請求項1に記載のコンピューティングデバイス。前記ベンダ認証モジュールは、前記複数の認証制約を受信するべく、前記ベンダコンピューティングデバイスとの間でセキュアな通信チャネルを構築する、請求項8に記載のコンピューティングデバイス。前記認証データ生成モジュールは、前記複数の認証制約を満たすパスワードを生成する、請求項1に記載のコンピューティングデバイス。前記認証データ生成モジュールは、前記複数の認証制約を満たすユーザネームを生成する、請求項10に記載のコンピューティングデバイス。前記認証データが格納されたセキュアなデータストレージを更に備え、前記ベンダ認証モジュールは更に、前記ベンダコンピューティングデバイスからログオンプロンプトを受信して、前記セキュアなデータストレージから前記認証データを取得して、前記ユーザを前記ベンダコンピューティングデバイスに対して認証するために、前記認証データを前記ベンダコンピューティングデバイスに提供する、請求項1に記載のコンピューティングデバイス。前記認証データ生成モジュールは更に、新たな認証データを、前記複数の認証制約の関数として定期的に生成する、請求項1に記載のコンピューティングデバイス。前記ベンダ認証モジュールは更に、前記ベンダコンピューティングデバイスから、前記認証データを更新せよとの要求を受信し、前記認証データ生成モジュールは、前記ユーザからの入力なく、新たな認証データを前記複数の認証制約の関数として生成する、請求項1に記載のコンピューティングデバイス。前記認証データ生成モジュールは更に、ユーザを前記ベンダコンピューティングデバイスに対して認証するための複数の新たな認証制約を受信して、前記新たな認証データを前記複数の新たな認証制約の関数として生成する、請求項14に記載のコンピューティングデバイス。前記認証データ生成モジュールは、前記ユーザからの入力なく、前記認証データを前記複数の認証制約の関数として生成する、請求項1に記載のコンピューティングデバイス。前記認証データは、前記コンピューティングデバイスのハードウェアコンポーネントのハードウェア識別番号から形成されたデジタル身元データを含む、請求項1に記載のコンピューティングデバイス。前記デジタル身元データは、前記ハードウェア識別番号のハッシュ値である、請求項17に記載のコンピューティングデバイス。前記ユーザを前記コンピューティングデバイスに対して認証するための、デバイス認証モジュールを更に備える、請求項1に記載のコンピューティングデバイス。前記デバイス認証モジュールは、前記ベンダ認証モジュールが、生成された前記認証データを前記ベンダコンピューティングデバイスに提供する前に、前記コンピューティングデバイスに対して前記ユーザを認証する、請求項19に記載のコンピューティングデバイス。前記デバイス認証モジュールは、ユーザ識別子、ユーザネーム、パスワード、バイオメトリックデータ、及びキートークンのうち少なくとも1つを入力するよう前記ユーザを促し、前記ユーザ識別子、前記ユーザネーム、前記パスワード、前記バイオメトリックデータ、及び前記キートークンのうち前記少なくとも1つの関数として前記ユーザを認証する、請求項20に記載のコンピューティングデバイス。前記ベンダ認証モジュールは更に、複数の更なるベンダコンピューティングデバイスから複数の認証制約を受信して、前記認証データ生成モジュールは更に、前記ユーザからの入力なく、前記ユーザを前記複数の更なるベンダコンピューティングデバイスのそれぞれに対して認証するために、前記複数の更なるベンダコンピューティングデバイスのそれぞれのための一意の認証データを、対応する前記複数の認証制約の関数として生成する、請求項1に記載のコンピューティングデバイス。前記ベンダ認証モジュールは、認証データを近距離通信リンクを介して前記ベンダコンピューティングデバイスに送信させることによって、前記ユーザを認証する、請求項1に記載のコンピューティングデバイス。セキュアなストレージを更に備え、前記認証データ生成モジュールは更に、前記認証データの身元を前記ユーザに通知することなく、生成された前記認証データを前記セキュアなストレージに格納する、請求項1に記載のコンピューティングデバイス。複数のベンダコンピューティングデバイスと、前記複数のベンダコンピューティングデバイスのそれぞれとネットワークを介して通信するモバイルコンピューティングデバイスとを備えるシステムであって、前記モバイルコンピューティングデバイスは、前記モバイルコンピューティングデバイスのユーザを前記複数のベンダコンピューティングデバイスのそれぞれに対して認証するために、前記複数のベンダコンピューティングデバイスのそれぞれから複数の認証制約を受信するベンダ認証モジュールと、前記複数のベンダコンピューティングデバイスのそれぞれのための一意の認証データを、前記ユーザをそれぞれ対応するベンダコンピューティングデバイスに対して認証するために、対応する前記複数の認証制約の関数として生成する認証データ生成モジュールとを有する、システム。前記複数のベンダコンピューティングデバイスのそれぞれは、金融データサーバ、電子商取引サーバ、及びクラウドベースのサービスサーバのうち1つを含む、請求項25に記載のシステム。前記複数の認証制約は、前記ユーザを各ベンダコンピューティングデバイスに対して認証するためのユーザパスワードを生成するための複数のパスワード制約を含む、請求項25に記載のシステム。前記複数のパスワード制約は、前記パスワードのための文字の最小長さ、及びアルファベットではない文字要件のうち少なくとも1つを含む、請求項27に記載のシステム。前記複数の認証制約は更に、前記ユーザを各ベンダコンピューティングデバイスに対して認証するためのユーザネームを生成するための複数のユーザネーム制約を含む、請求項25に記載のシステム。前記複数のユーザネーム制約は、前記ユーザネームのための文字の最小長さ、及びアルファベットではない文字要件のうち少なくとも1つを含む、請求項29に記載のシステム。前記ベンダ認証モジュールは、予め構築されたプロトコルに従って前記ベンダコンピューティングデバイスから複数の認証制約を受信する、請求項25に記載のシステム。前記ベンダ認証モジュールは、前記複数の認証制約を受信するべく、前記ベンダコンピューティングデバイスとの間でセキュアな通信チャネルを構築する、請求項31に記載のシステム。前記認証データ生成モジュールは、各対応するベンダコンピューティングデバイスの前記複数の認証制約を満たす各ベンダコンピューティングデバイスのためのパスワードを生成する、請求項25に記載のシステム。前記認証データ生成モジュールは、各ベンダコンピューティングデバイスの前記複数の認証制約を満たす各ベンダコンピューティングデバイスのためのユーザネームを生成する、請求項33に記載のシステム。前記認証データ生成モジュールは更に、各ベンダコンピューティングデバイスのための新たな認証データを、対応する前記複数の認証制約の関数として定期的に生成する、請求項25に記載のシステム。前記ベンダ認証モジュールは更に、前記複数のベンダコンピューティングデバイスの1つから、前記認証データを更新せよとの要求を受信し、前記認証データ生成モジュールは、前記ユーザからの入力なく、新たな認証データを対応する前記複数の認証制約の関数として生成する、請求項25に記載のシステム。前記認証データ生成モジュールは、前記ユーザからの入力なく、前記認証データを前記複数の認証制約の関数として生成する、請求項25に記載のシステム。前記認証データは、前記コンピューティングデバイスのハードウェアコンポーネントのハードウェア識別番号から形成されたデジタル身元データを含む、請求項25に記載のシステム。前記デジタル身元データは、前記ハードウェア識別番号のハッシュ値である、請求項38に記載のシステム。前記モバイルコンピューティングデバイスは、前記ユーザを前記モバイルコンピューティングデバイスに対して認証するための、デバイス認証モジュールを更に有する、請求項25に記載のシステム。前記デバイス認証モジュールは、ユーザ識別子、ユーザネーム、パスワード、バイオメトリックデータ、及びキートークンのうち少なくとも1つを入力するよう前記ユーザを促し、前記ユーザ識別子、前記ユーザネーム、前記パスワード、前記バイオメトリックデータ、及び前記キートークンのうち前記少なくとも1つの関数として前記ユーザを認証する、請求項40に記載のシステム。前記モバイルコンピューティングデバイスは更にセキュアなストレージを有し、前記認証データ生成モジュールは更に、前記認証データの身元を前記ユーザに通知することなく、生成された前記認証データを前記セキュアなストレージに格納する、請求項25に記載のシステム。第1のコンピューティングデバイスで、ユーザを第2のコンピューティングデバイスに対して認証するために、複数の認証制約を受信する段階と、前記第1のコンピューティングデバイスで、前記ユーザを前記第2のコンピューティングデバイスに対して認証するために、認証データを前記複数の認証制約の関数として生成する段階と、前記ユーザを前記第2のコンピューティングデバイスに対して認証するために、前記認証データを前記第2のコンピューティングデバイスに対して送信する段階とを備える方法。前記複数の認証制約を受信する段階は、前記ユーザを前記第2のコンピューティングデバイスに対して認証するためのユーザパスワードを生成するための複数のパスワード制約を受信する段階を有する、請求項43に記載の方法。前記複数のパスワード制約は、前記パスワードのための文字の最小長さ、及びアルファベットではない文字要件のうち少なくとも1つを含む、請求項44に記載の方法。前記複数の認証制約を受信する段階は、前記ユーザを前記第2のコンピューティングデバイスに対して認証するためのユーザネームを生成するための複数のユーザネーム制約を受信する段階を有する、請求項44に記載の方法。前記複数のユーザネーム制約は、前記ユーザネームのための文字の最小長さ、及びアルファベットではない文字要件のうち少なくとも1つを含む、請求項46に記載の方法。前記複数の認証制約を受信する段階は、予め構築されたプロトコルに従って前記第2のコンピューティングデバイスから前記複数の認証制約を受信する段階を有する、請求項43に記載の方法。前記複数の認証制約を受信するべく、前記第2のコンピューティングデバイスとの間でセキュアな通信チャネルを構築する段階を更に備える、請求項48に記載の方法。前記認証データを生成する段階は、前記複数の認証制約を満たすパスワードを生成する段階を有する、請求項43に記載の方法。前記認証データを生成する段階は、前記複数の認証制約を満たすユーザネームを生成する段階を有する、請求項50に記載の方法。前記認証データを生成する段階は、モバイルコンピューティングデバイス上で前記認証データを生成する段階を有する、請求項43に記載の方法。前記複数の認証制約を受信する段階は、前記ユーザを金融データサーバ、電子商取引サーバ、及びクラウドベースのサービスサーバのうち少なくとも1つに対して認証するために、前記金融データサーバ、前記電子商取引サーバ、及び前記クラウドベースのサービスサーバのうち前記少なくとも1つから前記複数の認証制約を受信する段階を有する、請求項43に記載の方法。前記第2のコンピューティングデバイスからログオンプロンプトを受信する段階と、前記第1のコンピューティングデバイスのセキュアなデータストレージから前記認証データを取得する段階と、前記ユーザを前記第2のコンピューティングデバイスに対して認証するために、前記認証データを前記第2のコンピューティングデバイスに送信する段階とを更に備える、請求項43に記載の方法。前記第2のコンピューティングデバイスから、前記認証データを更新せよとの要求を受信する段階と、前記第1のコンピューティングデバイス上で、前記ユーザからの入力なく、新たな認証データを前記複数の認証制約の関数として生成する段階とを更に備える、請求項43に記載の方法。前記第1のコンピューティングデバイスで、ユーザを前記第2のコンピューティングデバイスに対して認証するための複数の新たな認証制約を受信する段階を更に備え、前記新たな認証データを生成する段階は、前記新たな認証データを前記複数の新たな認証制約の関数として生成する段階を有する、請求項55に記載の方法。前記ユーザを前記第1のコンピューティングデバイスに対して認証する段階を更に備える、請求項43に記載の方法。前記ユーザを前記第1のコンピューティングデバイスに対して認証する段階は、前記認証データを前記第2のコンピューティングデバイスに送信する前に、前記ユーザを前記第1のコンピューティングデバイスに対して認証する段階を有する、請求項57に記載の方法。前記ユーザを認証する段階は、前記第1のコンピューティングデバイスで、ユーザ識別子、ユーザネーム、パスワード、バイオメトリックデータ、及びキートークンのうち少なくとも1つを入力するよう前記ユーザを促す段階と、前記ユーザ識別子、前記ユーザネーム、前記パスワード、前記バイオメトリックデータ、及び前記キートークンのうち前記少なくとも1つの関数として、前記ユーザを前記第1のコンピューティングデバイスに対して認証する段階とを有する、請求項58に記載の方法。複数の第3のコンピューティングデバイスから前記第1のコンピューティングデバイスで複数の認証制約を受信する段階と、前記第1のコンピューティングデバイスで、前記ユーザからの入力なく、前記複数の第3のコンピューティングデバイスのそれぞれに対して前記ユーザを認証するために、前記複数の第3のコンピューティングデバイスのそれぞれのための一意の認証データを、対応する前記複数の認証制約の関数として生成する段階とを更に備える、請求項43に記載の方法。前記認証データを前記第2のコンピューティングデバイスに送信する段階は、前記ユーザからの入力なく、前記認証データを利用して、前記ユーザを前記第2のコンピューティングデバイスに自動的にログインさせる段階を有する、請求項43に記載の方法。前記複数の認証制約を受信する段階は、前記ユーザが前記第2のコンピューティングデバイス上にユーザアカウントを有さないことに呼応して、前記複数の認証制約を受信する段階を有する、請求項43に記載の方法。前記認証データを送信する段階は、前記認証データを近距離通信リンクを介して送信する段階を有する、請求項43に記載の方法。前記認証データの身元を前記ユーザに通知することなく、生成された前記認証データを、前記第1のコンピューティングデバイスのセキュアなストレージに格納する段階を更に備える、請求項43に記載の方法。前記認証データを生成する段階は、前記ユーザの入力なく、前記認証データを前記複数の認証制約の関数として生成する段階を有する、請求項43に記載の方法。前記認証データを生成する段階は、前記コンピューティングデバイスのハードウェアコンポーネントのハードウェア識別番号から形成されたデジタル身元データを生成する段階を有する、請求項43に記載の方法。プロセッサと、前記プロセッサにより実行されると、モバイルコンピューティングデバイスに請求項43から66のいずれか一項に記載の方法を実行させる複数の命令が格納されたメモリとを備える、モバイルコンピューティングデバイス。実行されることに呼応してモバイルコンピューティングデバイスに請求項43から66のいずれか一項に記載の方法を実行させる複数の命令が格納された1又は複数の機械可読媒体。本開示の思想は、様々な変形例及び代替形態を許容するが、図面では特定の例示的な実施形態を例示しており、ここで詳細に説明する。しかし、本開示の思想を、開示されている特定の形態に限定する意図はなく、むしろその反対に、本開示及び添付請求項と矛盾しないすべての変形例、均等物、及び代替物をカバーすることを意図していることを理解されたい。以下の説明では、論理実装、オペコード、オペランド指定手段、リソースパーティション/共有/重複実装、システムコンポーネント間のタイプ及び相互関係、及び、論理パーティション/統合の選択肢等の数多くの特定の詳細を述べて、本開示のより完全な理解を提供している。しかし、当業者は、本開示の実施形態がこれら特定の詳細なしに実行可能であることを理解する。他の場合には、制御構造、ゲートレベル回路及び完全なソフトウェア命令シーケンスを詳述せずに、本発明を曖昧にすることがないようにしていることもある。当業者が、含まれている説明を読めば、不当な実験なしに適切な機能を実行することができる。明細書において一実施形態ある実施形態例示的な実施形態といった言い回しは、記載されている実施形態が特定の特徴、構造、又は特性を含むことを意味しているが、必ずしも全ての実施形態が特定の特徴、構造、又は特性を含まなくてもよい。更に、これらの言い回しは必ずしも同じ実施形態のことを意味しているわけではない。更に、特定の特徴、構造、又は特性がある実施形態との関連で記載されているときには、明示されていてもいなくても、他の実施形態との関連で、このような特定の特徴、構造、又は特性を実行することは当業者の知識の範囲内であるとする。本発明の実施形態は、ハードウェア、ファームウェア、ソフトウェア、又はこれらの任意の組み合わせで実装されてよい。コンピュータシステムに実装される本発明の実施形態は、コンポーネント間の1又は複数のバスベースのインターコネクト、及び/又は、コンポーネント間の1又は複数のポイントツーポイントインターコネクトを含んでよい。本発明の実施形態は更に、一時的又は非一時的な機械可読媒体によって搬送されたり、格納されたりする命令として実装することもでき、1又は複数のプロセッサによって読み出し、実行可能である。機械可読媒体は、任意のデバイス、メカニズム、又は、機械例えばコンピューティングデバイスが可読な形で情報を格納又は送信するための物理的構造として具体化が可能である。例えば、機械可読媒体は、読み出し専用メモリROM、ランダムアクセスメモリRAM、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリデバイス、ミニ又はマイクロSDカード、メモリスティック、電気信号及びその他として具体化が可能である。図面では、デバイス、モジュール、命令ブロック及びデータエレメントを表すもののような概略を示すエレメントの特定の配置又は順序を、説明の便宜上示している場合がある。しかし、当業者であれば、図面における概略を示すエレメントの特定の配置又は順序が、処理の特定の順序もしくはシーケンス、又は処理の分離が必要であることを示唆しているわけではないことを理解するべきである。更に、図面において概略を示すエレメントが含まれているからといって、これは、これらのエレメントが、全ての実施形態に必要である、又は、これらのエレメントが表す特徴が、幾つかの実施形態に含まれたり、幾つかの実施形態の他のエレメントと組み合わせられたりしてはならないことを示唆しているわけではない。一般的には、命令ブロックを表すために利用される、概略を示すエレメントは、任意の適切な形態の機械可読命令、例えばソフトウェア又はファームウェアアプリケーション、プログラム、関数、モジュール、ルーチン、プロセス、プロシージャ、プラグイン、アプレット、ウィジェット、コードフラグメント及び/又はその他を利用して実装することができ、これら命令はそれぞれが、任意の適切なプログラミング言語、ライブラリ、アプリケーションプログラミングインタフェースAPI、及び/又は、その他のソフトウェア開発ツールを利用して実装することができる。例えば、幾つかの実施形態は、Java登録商標、C、及び/又はその他のプログラミング言語を利用して実装することができる。同様に、データ又は情報を表すために利用される概略を示すエレメントは、任意の適切な電子配置又は構造、例えばレジスタ、データ格納器、テーブル、レコード、アレイ、インデックス、ハッシュ、マップ、ツリー、リスト、グラフ、ファイル任意のファイルタイプをもつ、フォルダ、ディレクトリ、データベース、及び/又はその他、を利用して実装することができる。更に、実線もしくは波線、又は実線もしくは波線の矢印等の接続エレメントを利用して、2又はそれ以上の他の概略を示すエレメントの間の接続、関係、又は関連を示している図面では、これらの接続エレメントのいずれかがない場合に、接続、関係、又は関連が存在し得ないことを示唆しているわけではない。言い換えると、エレメント間の幾つかの接続、関係、又は関連は、開示を曖昧にしないために、図面に示さない場合がある。加えて、例示を容易にするために、単一の接続エレメントを利用して、エレメント間の複数の接続、関係、又は関連を表している場合もある。例えば、ある接続エレメントが、信号、データ、又は命令の通信を表している場合、当業者であれば、これらエレメントが、通信を実現するために、適宜、1又は複数の信号経路例えばバスを表すことができることを理解するべきである。図1を参照すると、ユーザ認証を管理するためのシステム100は、コンピューティングデバイス102と複数の遠隔ベンダサーバ104とを含む。コンピューティングデバイス102は、任意で、ネットワーク106を介してベンダサーバ104それぞれと通信することができてよい。利用に際して、コンピューティングデバイス102は、コンピューティングデバイス102のユーザを、遠隔ベンダサーバ104それぞれに対して認証するための認証データを生成及び維持するよう構成されている。認証データは、それぞれの遠隔ベンダサーバ104が、自身に対してユーザを認証するために必要な任意のタイプのデータを含んでよい。一実施形態では、例えば、認証データは、ユーザネーム及びパスワードとして実現される。しかし、コンピューティングデバイス102のユーザではなく、コンピューティングデバイス102が認証データを生成及び維持するので、各遠隔ベンダサーバ104のためのユーザネーム及びパスワードは、遠隔ベンダサーバ104の間で例外的に強く一意のものとなるように選択することができる。この代わりに、他の実施形態では、認証データは、ハードウェア識別番号等のハッシュ等の、デジタル身元データとして実現されてもよい。後で詳述するように、コンピューティングデバイス102は、ベンダサーバ104からの認証制約を受信又は推論することによって認証データを生成する。認証制約は、認証データのフォーマット、サイズ、主題、置き換え、オーダ、利用可能な文字、フォント、固有性、又はその他の品質等の認証データの任意の品質を定義又は制限する任意のタイプのデータとして実現されてよい。例えば、幾つかの実施形態では、認証制約は、最小のパスワード長、及び、1又は複数の特殊文字例えばアンパサンド文字がそのパスワードに含まれねばならないという要件を定義してよい。コンピューティングデバイス102は、遠隔ベンダサーバ104のそれぞれから受け取った認証制約を満たすように認証データを生成する。幾つかの実施形態では、コンピューティングデバイス102が、ユーザの入力無く又はほんの少しのユーザの入力で、認証データを生成及び管理する例えば、ユーザは、生成されたユーザネーム及びパスワードのことを知らなくてよい。加えて、認証データのセキュリティを更に増すべく、又は、ベンダサーバ104の要件に呼応して、コンピューティングデバイス102は、認証データを定期的に又は応答可能なようにresponsively更新または変更してよい。生成されると、コンピューティングデバイス102は、生成された認証データを利用して、遠隔ベンダサーバ104に対するユーザの認証プロセス例えばログインプロセスを自動化してよい。こうするために、コンピューティングデバイス102は、幾つかの実施形態において、最初に、コンピューティングデバイス102自身に対してユーザを認証する。コンピューティングデバイス102は、パスワードメカニズム、バイオメトリックデータ、顔/音声認識、キートークン、及び/又はその他を含む任意の適切な方法を利用してユーザを認証する。幾つかの実施形態では、ユーザは、コンピューティングデバイス102に対して一度だけ認証が必要である。しかし、他の実施形態では、コンピューティングデバイス102は、定期的に又は遠隔ベンダサーバ104の1つと通信せよとの要求に呼応して、ユーザに対して、コンピューティングデバイス102に対する認証を行うよう要求してよい。いずれにしても、ユーザが、各ベンダサーバ128に対してではなくコンピューティングデバイス102のみに対して認証することが必要であることから、ユーザは、単一の強いパスワード又は他のセキュリティ対策を選択することができ、これは、複数の強いパスワード又はデバイスよりも覚えやすく及び/又は管理しやすい。ユーザのコンピューティングデバイス102に対する認証に成功した場合には、ユーザは、コンピューティングデバイス102を操作して、遠隔ベンダサーバ104のうちいずれかにアクセスすることが許可される。この際に、コンピューティングデバイス102は、対応するベンダサーバ104のために生成された認証データを取得して、さもなくば、それぞれのベンダサーバ104に対して認証データを送信又は提供することによりユーザをベンダサーバ104に対して認証することによって、ユーザの認証を自動化するよう構成されている。このようにすることで、コンピューティングデバイス102は、強く、一意の認証データを、ベンダサーバ104それぞれに対して生成及び維持し、ユーザのセキュリティを全体的に増す。コンピューティングデバイス102は、ここで説明する機能を実行することができる任意のタイプのコンピューティングデバイスとして実現されてよい。ある1つの具体的な実施形態では、コンピューティングデバイス102が、スマートフォン、タブレットコンピュータ、ラップトップコンピュータ、モバイルインターネットデバイスMID、情報携帯端末、又はその他のモバイルコンピューティング又は電子デバイス等のモバイルコンピューティングデバイスとして実現される。他の実施形態では、コンピューティングデバイス102は、デスクトップコンピュータ、スマート機器及び/又はその他のような実質的に固定されたコンピューティング又は電子デバイスとして実現されてもよい。図1に示す実施形態では、コンピューティングデバイス102が、プロセッサ110、I/Oサブシステム114、メモリ116、通信回路118、データストレージ120、セキュリティエンジン130、及び1又は複数の周辺デバイス160を含む。幾つかの実施形態では、前述したコンポーネントの幾つかが、コンピューティングデバイス102のマザーボードの上に組み込まれてよく、他のコンポーネントが、例えば周辺ポートを介してマザーボードに通信可能に連結されてよい。更に、コンピューティングデバイス102は、説明の明瞭性を期して図1には記載されていないが、モバイルコンピューティングデバイスによく見られる、他のコンポーネント、サブコンポーネント、及びデバイスを含んでよい。コンピューティングデバイス102のプロセッサ110は、マイクロプロセッサ、デジタル信号プロセッサ、マイクロコントローラ等のソフトウェア/ファームウェアを実行可能な任意のタイプのプロセッサとして実現されてよい。プロセッサ110は、例示として、プロセッサコア112をもつシングルコアプロセッサとして実現される。しかし他の実施形態では、プロセッサ110が、複数のプロセッサコア112をもつマルチコアプロセッサとして実現されてもよい。加えて、コンピューティングデバイス102は、1又は複数のプロセッサコア112をもつ更なるプロセッサ110を含んでよい。コンピューティングデバイス102のI/Oサブシステム114は、プロセッサ110及び/又はコンピューティングデバイス102の他のコンポーネントとの入出力処理を促すための回路及び/又はコンポーネントとして実現されてよい。幾つかの実施形態では、I/Oサブシステム114は、メモリコントローラハブMCH又はノースブリッジ、入出力コントローラハブICH又はサウスブリッジ及びファームウェアデバイスとして実現されてよい。これらの実施形態では、I/Oサブシステム114のファームウェアデバイスは、基本入出力システムBIOSデータ及び/又は命令及び/又は他の情報例えばコンピューティングデバイス102の起動時に利用されるBIOSドライバを格納するためのメモリデバイスとして実現されてよい。しかし他の実施形態では、他の構成をもつI/Oサブシステムが利用されてよい。例えば幾つかの実施形態では、I/Oサブシステム114は、プラットフォームコントローラハブPCHとして実現されてよい。これらの実施形態では、メモリコントローラハブMCHは、プロセッサ110内に組み込まれていたり、さもなくばプロセッサ110に関連付けられていてよく、プロセッサ110は、メモリ116と直接通信してよい図1の破線に示すように。加えて、他の実施形態では、I/Oサブシステム114が、システムオンチップSoCの一部を形成してよく、プロセッサ110及びコンピューティングデバイス102の他のコンポーネントとともに、単一の集積回路チップの上に組み込まれてよい。プロセッサ110は、複数の信号経路を介してI/Oサブシステム114に通信可能に連結される。これら信号経路及び図1に示すその他の信号経路が、コンピューティングデバイス102のコンポーネント間の通信を促すことができる任意のタイプの信号経路として実現されてよい。例えば、信号経路は、任意の数のポイントツーポイントリンク、ワイヤ、ケーブル、ライトガイド、プリント回路基板トレース、ビア、バス、介在デバイス及び/又はその他として実現されてよい。コンピューティングデバイス102のメモリ116は、1又は複数のメモリデバイス又はデータ格納位置として実現されてよく、又は該1又は複数のメモリデバイス又はデータ格納位置を含んでよく、該1又は複数のメモリデバイス又はデータ格納位置は、例えば、ダイナミックランダムアクセスメモリデバイスDRAM、シンクロノスダイナミックランダムアクセスメモリデバイスSDRAM、ダブルデータレートシンクロノスダイナミックランダムアクセスメモリデバイスDDRSDRAM、マスク読み出し専用メモリROMデバイス、消去可能プログラム可能ROMEPROM、電気的消去可能プログラム可能ROMEEPROMデバイス、フラッシュメモリデバイス、及び/又はその他の揮発性及び/又は不揮発性メモリデバイスを含む。メモリ116は、複数の信号経路を介してI/Oサブシステム114に通信可能に連結される。単一のメモリデバイス116が図1には示されているが、コンピューティングデバイス102は、他の実施形態では更なるメモリデバイスを含んでもよい。様々なデータ及びソフトウェアがメモリ116に格納されてよい。例えば、プロセッサ110が実行するソフトウェアスタックを構成する1又は複数のオペレーティングシステム、アプリケーション、プログラム、ライブラリ、及びドライバが、実行中にメモリ116内に存在していてよい。コンピューティングデバイス102の通信回路118は、コンピューティングデバイス102と遠隔ベンダサーバ104との間のネットワーク106を介した通信を可能とするための任意の数のデバイス及び回路を含んでよい。コンピューティングデバイス102は、例えば特定のタイプのネットワーク106に応じて、ネットワーク106を介してベンダサーバ104と通信する任意の適切な通信プロトコルを利用してよい。ネットワーク106は、任意の数の様々な有線及び/又は無線通信ネットワークとして実現されてよい。例えばネットワーク106は、ローカルエリアネットワークLAN、ワイドエリアネットワークWAN、又は、インターネット等の公的にアクセス可能な、グローバルネットワークとして実現されても、これらを含んでもよい。加えて、ネットワーク106は、コンピューティングデバイス102と遠隔ベンダサーバ104との間の通信を促すための任意の数の更なるデバイスを含んでよい。幾つかの実施形態では、通信回路118が、更に、近距離無線通信NFC回路又はBluetooth登録商標通信回路等の非接触通信メカニズムを含んでよい。これらの実施形態では、ユーザを遠隔ベンダサーバ104に対して認証するときに利用されるものに類似した様式で、コンピューティングデバイス102が、非接触通信メカニズムを利用して、コンピューティングデバイス102のユーザを認証するために1又は複数のローカルベンダサーバ180と通信してもよい。データストレージ120は、例えばメモリデバイス及び回路、メモリカード、ハードディスクドライブ、固体ドライブ、又はその他のデータ格納デバイス等の、データを短期的又は長期的に格納するよう構成された任意のタイプのデバイス1つ又は複数として実現されてよい。オペレーティングシステム及び関連するソフトウェアアプリケーション等の様々なソフトウェアプログラムが、コンピューティングデバイス102の処理中に、データストレージ120に格納されたり、データストレージ120からロードされてよい。セキュリティエンジン130は、後で詳述するようなセキュリティ、暗号化、及び/又は認証機能を実行するよう構成されている任意のタイプのハードウェア及び関連するファームウェアとして実現されてよい。例えばセキュリティエンジン130は、コンピューティングデバイス102上にセキュアな環境を構築するために利用可能な、セキュリティコプロセッサ、アウトオブバンドプロセッサ、トラステッドプラットフォームモジュールTPM、及び/又は他のセキュリティ向上ハードウェア及び/又は関連するソフトウェアモジュールとして実現されてもよいし、さもなくばこれらを含んでもよい。例示的な実施形態では、セキュリティエンジン130は、ユーザ認証モジュール140、セキュアなストレージ150、及び暗号化エンジン156を含む。しかし、セキュリティエンジン130は、他の実施形態では、更なるモジュール及び/又はデバイスを含んでもよいことを理解されたい。ユーザ認証モジュール140は、コンピューティングデバイス102のユーザをベンダサーバ104、180に対して認証するよう構成された、様々なソフトウェア、ファームウェア、及び/又は関連するハードウェア例えば論理ユニットとして実現されてよい。こうするために、後で詳述するように、ユーザ認証モジュール140は、ベンダサーバ104、180から認証制約を受信又は推論して、認証データ152を、このような認証制約の関数として生成する。加えて、ユーザ認証モジュール140は、ユーザのコンピューティングデバイス102自身への認証を制御及び管理する。上述したように、認証データは、ベンダサーバ104、180が、それぞれのベンダサーバ104、180に対してユーザを認証例えばログインするために必要とする、ユーザネーム及び関連するパスワード等の任意のタイプのデータとして実現されてよい。ユーザ認証モジュール140は、セキュアなストレージ150に認証データを格納してよく、セキュアなストレージ150は、セキュリティエンジン130のローカルなセキュアなメモリ又はメモリ116のセキュアなパーティションとして実現されてよい。幾つかの実施形態では、セキュリティエンジン130は、更に、対応する暗号化キー154を利用して様々な暗号化機能を実行するための暗号化エンジン156を含んでもよい。例えば幾つかの実施形態では、コンピューティングデバイス102とベンダサーバ104、180との間の通信が、暗号化エンジン156を利用して暗号化されてよい。幾つかの実施形態では、コンピューティングデバイス102は、1又は複数の周辺デバイス160を含んでもよい。これらの周辺デバイスは、任意の数の更なる入出力デバイス、インタフェースデバイス、及び/又は他の周辺デバイスを含んでよい。例えば幾つかの実施形態では、周辺デバイス160が、コンピューティングデバイス102のユーザに対して情報を表示するためのディスプレイ、及び、ユーザからの入力を受信するためのキーボード又は他の入力デバイスを含んでよい。ベンダサーバ104、180は、任意のタイプのデータサーバ、コンピューティングデバイス、又は、コンピューティングデバイス102のユーザの認証を必要とする他の電子デバイスとして実現されてよい。例えば幾つかの実施形態では、遠隔ベンダサーバ104の1又は複数が、オンライン取引を促すよう構成された銀行サーバ、電子商取引サーバ等の金融データサーバ、又は、コンピューティングデバイス102に対してクラウドベースのサービスを提供するよう構成されたクラウドベースのサービスサーバとして実現されてよい。加えて、幾つかの実施形態では、ローカルベンダサーバ180が、金融コンピューティングデバイス、例えば、現金自動預入支払機ATM、又は、コンピューティングデバイス102のユーザの認証を必要とするその他の金融コンピューティングデバイスとして実現されてよい。ベンダサーバ104、180はここではベンダサーバと称されているが、サーバ104、180は、コンピューティングデバイス102のユーザの認証を必要とする任意のタイプの電子デバイスとして実現されてよい。つまり、幾つかの実施形態では、ベンダサーバ104、180は、スタンドアロンデータサーバとして実現されなくてもよいし、ユーザに特定のプロダクト又はサービスを提供しなくてもよい。例えば、幾つかの実施形態では、ベンダサーバ104、180は、スマート機器、家庭用コンピュータ、その他の、ユーザの認証を必要とする電子デバイスとして実現されてよい。ベンダサーバ104、180は、説明の明瞭性を期して図1には記載されていないが、1又は複数のプロセッサ、メモリデバイス、I/Oサブシステム、データ格納デバイス、及び、様々な周辺デバイス等の、サーバ、コンピューティングデバイス、及びその他の電子デバイス内によく見られるデバイス及び構造を含んでよい。例えば遠隔ベンダサーバ104のそれぞれは、ネットワーク106を介したコンピューティングデバイス102との通信を促すための通信回路172を含んでよい。同様に、ローカルベンダサーバ180は、上述したような、コンピューティングデバイス102との間の非接触通信を促すための非接触通信回路等の通信回路182を含んでよい。図2を参照すると、利用において、コンピューティングデバイス102は、オペレーティング環境200を構築してよい。環境200は、1又は複数のソフトウェアアプリケーション202を例示として含み、この1又は複数のソフトウェアアプリケーション202は、セキュリティエンジン130のユーザ認証モジュール140と、1又は複数のアプリケーションプログラムインタフェース204APIを介して通信又は相互通信するよう構成されてよい。ソフトウェアアプリケーション202は、コンピューティングデバイス102上で実行可能であり例えばコンピューティングデバイス102のオペレーティングシステム上で実行可能である、後述するようにユーザ認証モジュール140の認証機能の利用を必要とする、任意のタイプのソフトウェアアプリケーションとして実現されてよい。例えば、ソフトウェアアプリケーション202は、1又は複数のウェブブラウザ、金融管理アプリケーション、電子商取引アプリケーション、又は、コンピューティングデバイス102のユーザの1又は複数のベンダサーバ104、180に対する認証を必要とする又は促すその他のソフトウェアアプリケーションを含んでよい。上述したように、ユーザ認証モジュール140は、コンピューティングデバイス102のユーザのベンダサーバ104、180に対する、及び、コンピューティングデバイス102自身に対する認証を制御及び管理する。このような機能を促すために、図2の例示的な実施形態では、ユーザ認証モジュールは、デバイス認証モジュール210、ベンダ認証モジュール212、認証データ生成モジュール214、イベントログモジュール216、及びセキュアなストレージ150を含む。デバイス認証モジュール210は、コンピューティングデバイス102自身に対するユーザの認証を促進及び管理する。例えば後で詳述するように、デバイス認証モジュール210は、パスワード、バイオメトリックデータ、音声又は顔認識、セキュリティトークン等の認証データ、又はその他の認証データを、ユーザに対して要求して、これらのユーザ認証データをセキュアなストレージ150に格納してよい。デバイス認証モジュール210は、コンピューティングデバイス102に対してユーザの認証を定期的に又は応答可能なように要求してよく、セキュアなストレージ150に格納されているユーザ認証データに基づいてユーザの身元を検証してよい。このようにすることで、コンピューティングデバイス102のユーザは、認証データの1つのインスタンス例えば単一のパスワードを利用することでコンピューティングデバイス102に対して認証することが要求され、これにより、ユーザ認証データがより強くなるだろう。例えば、ユーザは、後述するように複数のベンダサーバ104、180に対して自身を認証するために、単一のパスワードを覚えておくことのみが必要であるので、ユーザは、コンピューティングデバイス102に対して認証するために、より強いパスワードを利用することができる。ベンダ認証モジュール212は、コンピューティングデバイス102のユーザのベンダサーバ104、180に対する認証を管理及び制御する。こうするために、ベンダ認証モジュール212は、最初に、ベンダサーバ104、180から、認証データの様々な側面又は品質例えばパスワードの長さ、フォーマット等を定義する認証制約を得る例えば受信、取得、又は推論する。ベンダ認証モジュール212は、このような認証制約を、認証データ生成モジュール214に渡し、認証データが認証制約の関数として生成される。つまり、認証データ生成モジュール214は、コンピューティングデバイス102のユーザをそれぞれのベンダサーバ104、180に認証するために利用されてよい認証データ例えばユーザネーム及びパスワードを生成して、生成された認証データをセキュアなストレージ150に格納する。こうするために、認証データ生成モジュール214は、認証データを生成するために任意の適切な方法又はアルゴリズムを利用してよい。例えば一実施形態では、認証データ生成モジュール214は、ランダムなrandomized認証データが認証制約を満たすように、認証データをランダムに生成してよい。このような実施形態では、認証データ生成モジュール214は、認証データの任意の側面又は品質をランダム化してよい。例えば認証データがユーザネーム及び/又はパスワードである実施形態では、認証データ生成モジュール214は、ランダムな長さのランダムな文字及び/又はランダムな大文字をもつユーザネーム及び/又はパスワードを生成してよく、これらは、生成後も、依然としてベンダサーバ104、180の認証制約を満たしている。加えて、幾つかの実施形態では、認証データ生成モジュール214は、生成された認証データの履歴を記録して、各生成される認証データが、前に生成された認証データに対して一意であり、認証データが繰り返されないように保証する。認証データ生成モジュール214が、特定のベンダサーバ104、180のための認証データを生成すると、ベンダ認証モジュール212は、セキュアなストレージ150から認証データを取得して、認証データを利用して、ユーザをそれぞれのベンダサーバ104、180に対して認証例えばログインしてよい。例えば、ベンダ認証モジュール212は、認証データをネットワーク106を介して送信することにより、認証データを遠隔ベンダサーバ104に提供してよい。幾つかの実施形態では、ユーザ認証モジュール140は、イベントログモジュール216を含んでもよい。イベントログモジュール216は、ユーザ認証モジュール140の処理を監視して、後の分析のために様々なイベントを記録するlog。例えば、何らかのセキュリティイベントが生じた場合例えばユーザがコンピューティングデバイス102に対して自身を認証できない、イベントログモジュール216は、このようなセキュリティイベントを記録してよい。加えて、幾つかの実施形態では、セキュリティイベントの発生が参照閾値に達すると、イベントログモジュール216、又は、セキュリティエンジン130の他のセキュリティモジュールが、コンピューティングデバイス102をロックする、通信回路118を遮断する及び/又はその他等の1又は複数のセキュリティ機能を実行するよう構成されてよい。図3を参照すると、上述したように、コンピューティングデバイス102は、ユーザをコンピューティングデバイス102自身に認証するためのローカルなユーザ認証データを構築するための方法300を実行してよい。方法300は、例えばユーザ認証モジュール140のデバイス認証モジュール210によって実行されてよい。方法300は、ブロック302で、デバイス認証モジュール210が、ユーザがコンピューティングデバイス102に対して新たなユーザであるかを判断することから開始される。幾つかの実施形態では、コンピューティングデバイス102は、複数のユーザをサポートしてよく、各ユーザは、異なる認証データを用いて同じ又は異なるベンダサーバ104、180に対して認証されてよい。デバイス認証モジュール210は、ユーザが新たなユーザであるかを、予め構築されたユーザ認証データの入力及び/又は他の適切な方法に基づいて、このような情報のユーザを促進することにより判断してよい。ユーザが新たなユーザではない場合、方法300はブロック304に進み、デバイス認証モジュール210が、既存のユーザが、自身の既存の認証データを更新又は変更したいかを判断する。幾つかの実施形態では、ユーザは、認証データの更新又は変更を開始してよい。あるいは、デバイス認証モジュール210が、ユーザをコンピューティングデバイス102に対して認証するために利用されるユーザ認証データに対する定期的な更新/変更を必要としてよい。ユーザ認証データに対する更新/変更が必要ない場合には、方法300が完了する。しかしユーザが新たなユーザである場合ブロック302、又は既存のユーザが既存の認証データの更新/変更を望んでいる又は促された場合にはブロック304、方法300はブロック306に進んで、デバイス認証モジュール210が、ローカルユーザ認証データを構築する。上述したように、ユーザ及び/又はデバイス認証モジュール210は、例えばコンピューティングデバイス102のタイプ及び/又はその意図する機能に応じて、任意のタイプの認証データを利用して、ユーザをコンピューティングデバイス102に認証してよい。例えば上述したように、ユーザ認証データは、パスワードデータ、バイオメトリックデータ、顔/音声認識データ、キートークンデータ、及び/又はその他として実現されてよい。ユーザは、認証データをデバイス認証モジュール210に、コンピューティングデバイス102自身を利用して入力又は供給してよい。ブロック308で、デバイス認証モジュール210は、幾つかの実施形態では、ユーザ認証データを暗号化してよい。こうするために、デバイス認証モジュール210は、ユーザ認証データを暗号化するために暗号化エンジン156を利用してよい。いずれにしてもRegardless、ブロック310で、デバイス認証モジュール210は、ユーザ認証データを、セキュリティエンジン130のセキュアなストレージ150に格納する。コンピューティングデバイス102が複数のユーザをもつ実施形態では、デバイス認証モジュール210が、後述するように、それぞれのユーザの識別データに関連付けて、及び/又は、ベンダサーバ104、180に対してユーザを認証するために生成された認証データに関連付けて、セキュアなストレージ150にユーザ認証データを格納してよい。図4を参照すると、利用に際して、コンピューティングデバイス102は、コンピューティングデバイス102のユーザを1又は複数のベンダサーバ104、180に対して認証するための方法400を実行してよい。方法400は、ブロック402で、ユーザ認証モジュール140のベンダ認証モジュール212が、ユーザが、ベンダサーバ104、180との取引を望んでいるかを判断することから始まる。ベンダ認証モジュール212は、このような判断を、例えば、コンピューティングデバイス102と対応するベンダサーバ104、180との間の通信トラフィック、ユーザまたはアプリケーション及び/又はその他から受信した要求に基づいて行ってよい。ベンダサーバ104、180との取引が望まれている場合、方法400はブロック404に進み、ベンダ認証モジュール212がベンダを特定する。こうするために、ベンダ認証モジュール212は、再度、コンピューティングデバイス102とベンダサーバ104、180との間の通信トラフィックを監視してよく、又は、監視は、ユーザ及び/又はアプリケーションからの要求によって開始されてもよい。あるいは、幾つかの実施形態では、ベンダサーバ104、180が、コンピューティングデバイス102に、自身の身元を、例えば識別子又は識別データに基づいて通知してもよい。ブロック406で、ベンダ認証モジュール212は、現在のベンダが既存のベンダかつまり認証データが特定のベンダについて生成されているかを判断する。こうするために、ベンダ認証モジュール212は、現在のベンダが既存のベンダかを判断するための任意の適切な方法を利用してよい。例えば幾つかの実施形態では、生成された認証データがセキュアなストレージ150に、対応するベンダの識別データと関連付けて格納される。幾つかの実施形態では、ベンダ認証モジュール212は、識別データを分析して、現在のベンダが既存のベンダかを判断する。あるいは、ベンダ認証モジュール212は、既存のベンダのリストを維持し、これは、セキュアなストレージ150に格納されていてよい。ベンダ認証モジュール212が現在のベンダが既存のベンダではないと判断すると、幾つかの実施形態では、方法400はブロック408に進む。ブロック408で、コンピューティングデバイス102は、ユーザに、コンピューティングデバイス102に対して認証するよう要求する。つまり一部の実施形態では、デバイス認証モジュール210が、ユーザに対して、1又は複数のベンダサーバ104、180のとの間の各取引についてコンピューティングデバイス102に対して認証するよう要求してよい。あるいは、他の実施形態では、デバイス認証モジュール210は、ユーザに対して、コンピューティングデバイスに対して一度だけ認証するよう要求してもよい例えば1セッションについて一回。ユーザをコンピューティングデバイス102に対して認証するために、コンピューティングデバイス102のデバイス認証モジュール210は、図5に示すようなユーザ認証方法500を実行してよい。方法500は、ブロック502で、デバイス認証モジュール210が、ユーザをコンピューティングデバイス102に対して認証するかを判断することから始まる。判断結果が肯定的である場合には、方法500は、ブロック504に進み、デバイス認証モジュール210がユーザに対してユーザ認証データを入力するよう要求する。このような要求の形態は、例えば、ユーザを認証するために利用されるユーザ認証データのタイプに応じていてよい。例えばユーザがパスワードを入力するよう要求される実施形態では、デバイス認証モジュール210は、ユーザに対して、コンピューティングデバイス102の表示スクリーンにパスワードを入力するよう促してよいあるいは、ユーザ認証データが顔又は音声認識データとして実現されている実施形態では、デバイス認証モジュール210が、ユーザにコンピューティングデバイス102のカメラをのぞき込み、又は、コンピューティングデバイス102のマイクに向かって話しかけるよう要求してよい。いずれにしても、ブロック506で、デバイス認証モジュール210は、ユーザの認証データを受信する。ブロック508で、デバイス認証モジュール210は、予め構築されたローカルユーザ認証データをセキュアなストレージ150から取得する。上述したように、デバイス認証モジュール210は、図3の方法300を利用して、ユーザをコンピューティングデバイス102に対して認証するためにローカルユーザ認証データを生成してもよい。ユーザの予め構築された認証データが、暗号化された状態で格納されている場合には、デバイス認証モジュール210は、ブロック510で、暗号化エンジン156を利用して認証データを復号してよい。ブロック512で、デバイス認証モジュール210は、取得され、予め構築されたユーザ認証データを、ブロック506でコンピューティングデバイス102に供給されたユーザ認証データと比較する。デバイス認証モジュール210は、認証データが合致しないと判断すると、方法500がブロック514に進み、デバイス認証モジュール210が、ユーザの認証を拒否する。幾つかの実施形態では、イベントログモジュール216は、上述したように、認証の拒否をセキュリティイベントとして記録して、及び/又は、更なるセキュリティ対策をとってよい。しかしデバイス認証モジュール210が、認証データが合致すると判断した場合には、方法500がブロック516に進み、デバイス認証モジュール210が、ユーザをコンピューティングデバイス102に対して認証する。図4の方法400に戻ると、ブロック408においてユーザのコンピューティングデバイス102に対する認証に成功すると、方法400はブロック410に進み、ベンダ認証モジュール212が、ベンダサーバ104、180に対して新たなユーザ登録を要求する。あるいは、幾つかの実施形態では、ブロック412で、新たなユーザ登録要求がベンダサーバ104、180から受け取られてよい。いずれにしても、ブロック414で、ベンダ認証モジュール212は、ベンダサーバ104、180のための認証制約を判断する。例えば幾つかの実施形態では、ベンダ認証モジュール212が、ブロック416で、ベンダサーバ104、180に直接、認証制約を要求してよい。これに呼応して、ベンダサーバ104、180は、認証制約をコンピューティングデバイス102に送信してよい。例えば幾つかの実施形態では、コンピューティングデバイス102及びベンダサーバ104、180が、予め構築されたプロトコルを利用して、認証制約を転送してよい。こうするために、コンピューティングデバイス102は、ベンダサーバ104、180に、認証制約を要求するようクエリしてよい。認証制約応答は、予め構築されたフォーマット例えばuseriddeviceid、パスワードの長さ、パスワードの期限切れ等を、認証制約プロトコルの一部として持っていてよく、又は、コンピューティングデバイス102とベンダサーバ104、180との間で、適切なハンドシェークプロトコルを利用して決定されてよい。認証制約要求をコンピューティングデバイス102から受信することに呼応して、ベンダサーバ104、180は、共有秘密又はRivestShamirAdleman公開鍵対等の任意の適切なセキュリティメカニズムを利用してコンピューティングデバイス102との間にセキュアなチャネルを構築してよい。認証制約自身とともに認証制約を構築するためのデータの転送は、対称又は非対称鍵暗号化アルゴリズムを利用して暗号化されてよい。あるいは、幾つかの実施形態では、ベンダ認証モジュール212は、ブロック416で認証制約を推論してもよい。こうするために、ベンダ認証モジュール212は、ベンダサーバ104、180に対してユーザを認証するために利用される認証データの制約を推論するための任意の適切な方法又はアルゴリズムを利用してよい。例えば幾つかの実施形態では、ベンダ認証モジュール212が、ベンダサーバ104,180のウェブサイト又はユーザスクリーンのメタデータ又はテキストから情報を抽出してもよい。上述したように、認証制約は、上述したようにユーザをベンダサーバ104、180に認証するために利用される認証データの何らかの品質を定義するまたはこれに制限を課す任意のタイプのデータとして実現されてよい。幾つかの実施形態では、コンピューティングデバイス102のユーザは、クラウド又は遠隔サーバ上に認証データを生成するために認証制約及び/又はユーザポリシーを格納してよい。認証制約及び/又はユーザポリシーのクラウド格納又はバックアップによって、ユーザは、認証制約、ユーザポリシー、及び認証データを複数のデバイス間で同期することができるようになる。ベンダ認証モジュール212が、ベンダサーバ104、180のための認証制約を判断すると、ベンダ認証モジュール212は、このような認証制約を認証データ生成モジュール214に提供してよい。次いでブロック418で、認証データ生成モジュール214は、ユーザをベンダサーバ104、180に対して認証するための認証データを、認証制約の関数として生成する。上述したように、認証データ生成モジュール214は、認証データを生成するために任意の適切な方法又はアルゴリズムを利用してよい。ある1つの特定の実施形態では、ユーザ認証データがユーザネーム及び関連するパスワードとして実現される。このような実施形態では、例えば、ベンダ認証モジュール212は、上述したように、任意の適切な方法を利用して例えばランダム化方法、ユーザネーム及びパスワードのそれぞれを生成してよい。パスワードに加えてユーザネームを認証データ生成モジュール214によって生成することから、認証データのセキュリティを増すことができる点を理解されたい。これに加えて又はこれに代えて、幾つかの実施形態では、認証データは、コンピューティングデバイス102を一意に特定するデジタル身元データとして実現されてよい。これらデジタル身元データは、コンピューティングデバイス102によって、プロセッサ110の識別番号のハッシュ、Ethernet登録商標又はWiFi登録商標マシンアクセス制御MACアドレスのハッシュ、別のハードウェアデバイス識別番号、又は、例えばセキュリティエンジン130が生成した一意の乱数又はパスキー等のハードウェアプラットフォームのルートオブトラストrootoftrustに基づいて生成されてよい。これらハードウェアベースのデジタル身元データのこの利用は、更に、対応するベンダサーバ104、180の、コンピューティングデバイス102の特定のプラットフォームへのアクセスに制約を課すだろう。認証データ生成モジュール214が、コンピューティングデバイス102のユーザをそれぞれのベンダサーバ104,180に認証するために認証データを生成した後で、方法400はブロック422に進み、認証データ生成モジュール214が、新たに生成された認証データをセキュアなストレージ150に格納する。上述したように、幾つかの実施形態では、認証データ生成モジュール214は、暗号化エンジン156の助けを得て、生成された認証データを暗号化された状態で格納する。幾つかの実施形態では、生成された認証データが、ベンダ識別データに関連付けて格納され、各ベンダサーバ104、180のための正しい認証データの取得を可能としてよい。加えて、幾つかの実施形態では、コンピューティングデバイス102のユーザが生成された認証データを見ることを許可されずに、認証データが生成され格納される。つまり、幾つかの実施形態では、認証データが常にセキュアである。ブロック422で、認証データ生成モジュール214が新たに生成された認証データを格納した後で、コンピューティングデバイス102は、ブロック424で新たなベンダとの認証プロセスを完了してよい。こうするために、ベンダ認証モジュール212は、生成された認証データをセキュアなストレージ150から取得してよく、認証データをそれぞれのベンダサーバ104、180に送信又は提供してよい。幾つかの実施形態では、ベンダサーバ104、180は、しばしば、ブロック426で、ユーザに認証データを更新又は変更するよう例えばユーザネーム又はパスワードを更新するよう要求してよい。こうするために、方法400は、ブロック414にループバックして、ベンダ認証モジュール212が、ベンダサーバ104、180のための認証制約変更されている可能性があるを判断して、認証データ生成モジュール214は、ブロック418で、新たな又は前の認証制約に基づいて新たな認証データを生成する。しかし、認証データに更新が必要ない場合には、方法400はブロック428に進み、コンピューティングデバイス102が認証又はログインプロセスを完了する。次いでユーザはコンピューティングデバイス102を作動して、通常通りにベンダサーバ104、180と相互通信する。ブロック406を参照すると、ベンダ認証モジュールが、ベンダが既存のベンダであると判断した場合、幾つかの実施形態では、方法400はブロック430に進む。ブロック430で、コンピューティングデバイス102は、ユーザに、コンピューティングデバイス102に対して認証を行うように要求する。ブロック408に関して上述したように、コンピューティングデバイス102のデバイス認証モジュール210は、ユーザをコンピューティングデバイス102に対して認証するためにユーザ認証方法500を実行してよい図5参照。ユーザのコンピューティングデバイス102に対する認証に成功した後で又はユーザ認証が不要な場合、方法400はブロック432に進み、ベンダ認証モジュール212が、セキュアなストレージ150から既存のベンダに対応している、前に生成された認証データを取得する。上述したように、認証データは、コンピューティングデバイス102のユーザを認証するために、ベンダサーバ104、180が必要とする任意のタイプのデータとして実現されてよい。例えば幾つかの実施形態では、認証データは、ユーザネーム及び関連するパスワードとして実現される。幾つかの実施形態では、ベンダ認証モジュール212が、ブロック434において、既存のベンダに対するユーザネーム及びパスワードを取得する。上述したように、幾つかの実施形態では、認証データが、セキュアなストレージ150に、暗号化された状態で格納されてよい。この場合、ベンダ認証モジュール212は、ブロック436で、暗号化エンジン156を利用して、認証データを復号してよい。方法400は、次いでブロック424に進み、ベンダ認証モジュール212は、認証データをそれぞれのベンダサーバ104、180に送信または提供する。ここでもブロック426で、ベンダサーバ104、180は、ユーザに、認証データを更新又は変更するよう要求してよい。この場合、方法400はブロック414にループバックして、ベンダ認証モジュール212は、ベンダサーバ104、180のための認証制約変更されている場合があるを判断する。しかし認証データに対して更新が必要ではない場合、方法400はブロック428に進み、コンピューティングデバイス102が認証又はログインプロセスを完了する。このようにして、コンピューティングデバイス102のユーザは、複数のベンダサーバ104、180に対する強い認証データを、これら認証データの作成及び/又は維持に対して殆どまたは全く相互通信することなく、生成及び管理してよい。開示を図面及び前述した記載に詳細に示し説明してきたが、これらの例示及び記載は、例として捉えられるべきであり、その性質上限定ではなく、例示的な実施形態のみが示され説明されており、本開示及び記載される請求項と一貫性を持つ全ての変形例及び変更例が保護されることを希望する。"