(57)【要約】      （修正有）【課題】分散されたおよび／または非集中化されたデータ集約のための装置、システム及び方法を提供する。【解決手段】システムにおいて、方法は、複数の第３者のサービスプロバイダに対するユーザの電子認証情報を決定することと、第３者のサービスプロバイダからユーザと関連付けられたデータをダウンロードするために、ユーザの電子認証情報を使用して、ユーザと関連付けられたハードウェアデバイスから複数の第３者のサービスプロバイダのそれぞれにアクセスすることと、第３者のサービスプロバイダからのダウンロードデータを集約することと、集約されたダウンロードデータに基づいて、ハードウェアデバイス上で１つまたは複数の通信をユーザに提供することと、を含む。【選択図】図７
2020017298.tif 000002
【特許請求の範囲】
【請求項１】
複数の第３者のサービスプロバイダに対するユーザの電子認証情報を決定するステップと、
前記第３者のサービスプロバイダのそれぞれに、前記ユーザと関連付けられたハードウェアデバイスから、前記ユーザの決定された電子認証情報を使用して、前記ユーザと関連付けられたデータを前記第３者のサービスプロバイダからダウンロードするためにアクセスするステップと、
前記第３者のサービスプロバイダからダウンロードされた前記データを集約し、１つまたは複数の通信を、前記ユーザに、前記ハードウェアデバイス上で、集約されたダウンロードされた前記データに基づいて提供するステップと
を含む方法。
【請求項２】
請求項１に記載の方法であって、前記ハードウェアデバイスからダウンロードされた前記データを、前記第３者のサービスプロバイダとは別の異なるデバイスに提供するステップをさらに含む方法。
【請求項３】
請求項１に記載の方法であって、前記第３者のサービスプロバイダのうちの１つまたは複数の上の１つまたは複数の他の場所にアクセスするステップであって、前記１つまたは複数の他の場所へのアクセスと前記データのダウンロードとの間に１つまたは複数の遅延を人工的に導入し、それによって、前記第３者のサービスプロバイダのうちの前記１つまたは複数に対する前記ユーザの使用パターンをエミュレートするようにアクセスするステップをさらに含む、方法。
【請求項４】
請求項３に記載の方法であって、エミュレートされる前記使用パターンは、前記第３者のサービスプロバイダのうちの前記１つまたは複数にウェブブラウザを使用してアクセスする複数の他のユーザの行動において識別された平均パターンと、前記第３者のサービスプロバイダのうちの前記１つまたは複数にウェブブラウザを使用してアクセスする前記ユーザの行動において識別されたパターンとのうちの１つまたは複数に基づいて決定される、方法。
【請求項５】
請求項１に記載の方法であって、
前記第３者のサービスプロバイダのうちの１つまたは複数から前記ユーザと関連付けられた前記データへのアクセスが利用不可能であることを検出するステップと、
前記第３者のサービスプロバイダのうちの利用不可能な前記１つまたは複数のウェブサイト上の、前記ユーザの電子認証情報の入力場所および前記ユーザと関連付けられた前記データの場所のうちの１つまたは複数を、前記ユーザがグラフィカルに識別することを可能にするインターフェースを前記ユーザに提供するステップと
をさらに含む方法。
【請求項６】
請求項５に記載の方法であって、
前記ウェブサイトの１つまたは複数のページを処理するステップと、
前記ユーザの電子認証情報の前記入力場所および前記ユーザと関連付けられた前記データの前記場所のうちの１つまたは複数の推定を、前記ユーザに前記インターフェースにおいて表示して、前記インターフェースを使用して前記推定が正しいかどうかを前記ユーザが確認するようにするステップと
をさらに含む方法。
【請求項７】
請求項６に記載の方法であって、
複数の異なるユーザについて前記第３者のサービスプロバイダのうちの利用不可能な前
記１つまたは複数に、前記ユーザからの前記識別に基づいて、前記異なるユーザの電子認証情報を使用してアクセスしようと試みるステップと、
前記ユーザからの前記識別を、追加のユーザに、前記追加のユーザと関連付けられたデータにアクセスするために、前記異なるユーザと関連付けられたデータはアクセス可能であると前記ユーザからの前記識別を使用して判定することに応答して提供するステップとをさらに含む方法。
【請求項８】
請求項１に記載の方法であって、
前記ユーザと関連付けられた前記ハードウェアデバイスが利用可能であるかどうかを、前記ユーザと関連付けられた前記データをダウンロードするために判定するステップと、
前記第３者のサービスプロバイダのうちの１つまたは複数に、異なるデバイスから、前記ユーザの電子認証情報を使用して、前記ユーザと関連付けられた前記データを前記異なるデバイスにダウンロードするために、前記ユーザと関連付けられた前記ハードウェアデバイスは利用不可能であると判定することに応答してアクセスするステップと、
をさらに含む方法。
【請求項９】
請求項１に記載の方法であって、
前記第３者のサービスプロバイダのそれぞれに対する前記ユーザの１つまたは複数の異なるセキュアな電子認証情報を生成し管理するステップと、
前記ユーザの生成された前記１つまたは複数の異なるセキュアな電子認証情報を、前記ユーザと関連付けられた前記ハードウェアデバイス上にセキュアに格納するステップと
をさらに含む方法。
【請求項１０】
異なるユーザのハードウェアデバイス上に配置された複数の集約モジュールであって、前記複数の集約モジュールは、複数の異なる第３者のサービスプロバイダに対する前記異なるユーザからの電子認証情報を受信し、前記異なるユーザと関連付けられたデータを、前記異なる第３者のサービスプロバイダから、受信された前記電子認証情報を使用してダウンロードする、複数の集約モジュールと、
前記異なるユーザと関連付けられ、前記異なる第３者のサービスプロバイダからダウンロードされた前記データを受信し、前記異なるユーザのそれぞれについて、前記複数の異なる第３者のサービスプロバイダからの前記データを別々に集約し、１つまたは複数の通信を、別々に集約された前記データに基づいて、個別に前記異なるユーザに、１つまたは複数の通信チャネルを通じて提供するバックエンドサーバと
を含むシステム。
【請求項１１】
請求項１０に記載のシステムであって、前記異なるユーザについての前記ハードウェアデバイスであって、前記集約モジュールのコンピュータ実行可能プログラムコードを実行するプロセッサと、前記コンピュータ実行可能プログラムコードを格納する非一時的コンピュータ可読ストレージ媒体と、前記第３者のサービスプロバイダと通信して、前記異なるユーザと関連付けられた前記データをダウンロードするためのネットワークインターフェースとを備える前記ハードウェアデバイスをさらに含む、システム。
【請求項１２】
オペレーションを実施するためにプロセッサによって実行可能なコンピュータ使用可能プログラムコードを格納する非一時的コンピュータ可読ストレージ媒体を含むコンピュータプログラム製品であって、前記オペレーションは、
前記ユーザのハードウェアデバイス上で第３者のサービスプロバイダに対するユーザの電子認証情報を決定するステップと、
第３者のサービスプロバイダのサーバに、前記ユーザの前記ハードウェアデバイスから、前記ユーザの電子認証情報を使用して前記アクセスするステップと、
前記ユーザと関連付けられたデータを前記第３者のサービスプロバイダの前記サーバか
ら前記ユーザの前記ハードウェアデバイスにダウンロードするステップと、
前記ユーザの前記ハードウェアデバイスからのダウンロードされた前記データを、前記第３者のサービスプロバイダに加入していないリモートデバイスのためにパッケージングするステップ、および、ダウンロードされた前記データを前記リモートデバイスに提供するステップのうちの１つまたは複数と
を含む、コンピュータプログラム製品。
【請求項１３】
請求項１２に記載のコンピュータプログラム製品であって、前記オペレーションは、
前記サーバ上の複数の場所の順序付きリストを、前記サーバにアクセスするために決定するステップと、
前記場所へのアクセス間に待機するための、前記直接アクセスモジュールのための１つまたは複数の遅延を決定するステップと
をさらに含む、コンピュータプログラム製品。
【請求項１４】
請求項１３に記載のコンピュータプログラム製品であって、前記複数の場所および前記１つまたは複数の遅延は、前記第３者のサービスプロバイダにウェブブラウザを使用してアクセスする複数の他のユーザの行動において識別された平均パターンに基づいて選択される、コンピュータプログラム製品。
【請求項１５】
請求項１３に記載のコンピュータプログラム製品であって、前記複数の場所および前記１つまたは複数の遅延は、前記第３者のサービスプロバイダにウェブブラウザを使用してアクセスする前記ユーザの行動において識別されたパターンに基づいて選択される、コンピュータプログラム製品。
【請求項１６】
請求項１２に記載のコンピュータプログラム製品であって、前記オペレーションは、
前記第３者のサービスプロバイダの前記サーバおよび前記ユーザと関連付けられた前記データのうちの１つまたは複数へのアクセスにおける変更を検出するステップと、
前記ユーザの電子認証情報の入力場所および前記ユーザと関連付けられた前記データの場所のうちの１つまたは複数を、前記ユーザがグラフィカルに識別することを可能にするインターフェースを前記ユーザに提供するステップと
をさらに含む、コンピュータプログラム製品。
【請求項１７】
請求項１６に記載のコンピュータプログラム製品であって、前記オペレーションは、
前記サーバの１つまたは複数のページを処理するステップと、
前記ユーザの電子認証情報の前記入力場所および前記ユーザと関連付けられた前記データの前記場所のうちの１つまたは複数の推定を、前記ユーザに前記インターフェースにおいて表示して、前記インターフェースを使用して前記推定が正しいかどうかを前記ユーザが確認するようにするステップと
をさらに含む、コンピュータプログラム製品。
【請求項１８】
請求項１６に記載のコンピュータプログラム製品であって、前記オペレーションは、
複数の異なるユーザについて前記第３者のサービスプロバイダの前記サーバへ、前記ユーザからの前記識別に基づいて、前記異なるユーザの電子認証情報を使用してアクセスしようと試みるステップと、
前記ユーザからの前記識別を使用して前記異なるユーザと関連付けられたデータがアクセス可能であるかどうかを判定するステップと
をさらに含む、コンピュータプログラム製品。
【請求項１９】
請求項１８に記載のコンピュータプログラム製品であって、前記オペレーションは、前記ユーザからの前記識別を使用してデータがアクセス可能である前記異なるユーザの量が
閾値を満足することに応答して、前記第３者の前記サーバにアクセスするために、前記ユーザからの前記識別を前記コンピュータプログラム製品の他のインスタンスに提供するステップをさらに含む、コンピュータプログラム製品。
【請求項２０】
請求項１２に記載のコンピュータプログラム製品であって、前記オペレーションは、前記第３者のサービスプロバイダの前記サーバに前記ユーザの電子認証情報を使用してアクセスし、前記ユーザと関連付けられた前記データをダウンロードするための命令の複数の異なるセットの順序付きリストを受信するステップを提供するステップをさらに含む、コンピュータプログラム製品。
【請求項２１】
請求項２０に記載のコンピュータプログラム製品であって、命令の前記異なるセットのうちの１つまたは複数は、前記ユーザの電子認証情報をエンターするための場所と、前記ユーザの電子認証情報をサブミットするための命令と、前記ユーザと関連付けられた前記データの１つまたは複数の場所とを含む、コンピュータプログラム製品。
【請求項２２】
請求項１２に記載のコンピュータプログラム製品であって、前記オペレーションは、前記サーバに、前記第３者のサービスプロバイダのアプリケーションインターフェースおよび認証手続きを使用してアクセスするように構成される、コンピュータプログラム製品。
【請求項２３】
請求項１２に記載のコンピュータプログラム製品であって、前記オペレーションは、
前記ユーザの前記ハードウェアデバイスおよび前記ユーザの別のデバイスのうちの１つまたは複数が、前記ユーザと関連付けられた前記データを、前記第３者のサービスプロバイダの前記サーバからダウンロードするために利用可能であるかどうかを判定するステップと、
前記第３者のサービスプロバイダの前記サーバに、異なるデバイスから、前記ユーザの電子認証情報を使用して、前記ユーザと関連付けられた前記データを、前記第３者のサービスプロバイダの前記サーバから異なるデバイスにダウンロードするために、前記ユーザの前記ハードウェアデバイスは利用不可能であると判定したことに応答してアクセスするステップと
をさらに含む、コンピュータプログラム製品。
【請求項２４】
請求項２３に記載のコンピュータプログラム製品であって、前記オペレーションは、前記ユーザに、１つまたは複数の通信を、前記ユーザの前記ハードウェアデバイス上で、前記ユーザと関連付けられ前記異なるデバイスにダウンロードされた前記データに基づいて提供するステップをさらに含む、コンピュータプログラム製品。
【請求項２５】
請求項２３に記載のコンピュータプログラム製品であって、前記異なるデバイスは、別のユーザの個人的なハードウェアデバイスを含み、前記オペレーションは、
前記ユーザの電子認証情報の暗号化されたコピーを前記異なるデバイスに送信するステップと、
ダウンロードされた前記データを、前記異なるデバイス上で、前記他のユーザが前記ダウンロードされた前記データにアクセスできないように暗号化するステップと
をさらに含む、コンピュータプログラム製品。
【請求項２６】
請求項１２に記載のコンピュータプログラム製品であって、前記オペレーションは、前記オペレーションが前記第３者のサービスプロバイダの前記サーバにアクセスする頻度をセットするステップをさらに含む、コンピュータプログラム製品。
【請求項２７】
請求項２６に記載のコンピュータプログラム製品であって、前記オペレーションは、前記頻度を、前記第３者のサービスプロバイダに加入していない前記リモートデバイスから
の入力に基づいて、前記リモートデバイスが、複数の異なるユーザおよび前記第３者のサービスプロバイダの前記サーバにアクセスする異なるハードウェアデバイスに対して頻度を決定するように決定するステップをさらに含む、コンピュータプログラム製品
【請求項２８】
請求項２６に記載のコンピュータプログラム製品であって、前記頻度は、前記ユーザからの、前記ユーザの前記ハードウェアデバイス上で受信された入力に基づいて決定される、コンピュータプログラム製品。
【請求項２９】
請求項１２に記載のコンピュータプログラム製品であって、前記オペレーションは、
前記第３者のサービスプロバイダを含む複数の第３者のサービスプロバイダに対する前記ユーザの電子認証情報を管理するステップと、
前記複数の第３者のサービスプロバイダのそれぞれからの前記ユーザと関連付けられたデータにアクセスしダウンロードするステップと
をさらに含む、コンピュータプログラム製品。
【請求項３０】
請求項２９に記載のコンピュータプログラム製品であって、前記オペレーションは、
前記複数の第３者のサービスプロバイダのそれぞれに対する異なるセキュアな認証情報を生成するステップと、
前記ユーザについての生成された前記認証情報を前記ユーザの前記ハードウェアデバイス上にセキュアに格納するステップと
をさらに含む、コンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
[0001]本出願は、Ｊｏｈｎ  Ｒｙａｎ  Ｃａｌｄｗｅｌｌに対する、２０１６年５月２７日に出願された「ＤＩＳＴＲＩＢＵＴＥＤ，ＤＥＣＥＮＴＲＡＬＩＺＥＤ  ＤＡＴＡ  ＡＧＧＲＥＧＡＴＩＯＮ（分散された、非集中化されたデータ集約）」という名称の米国特許出願第１５／１６７，６５０号、Ｊｏｈｎ  Ｒｙａｎ  Ｃａｌｄｗｅｌｌに対する、２０１５年１１月１２日に出願された「ＤＩＳＴＲＩＢＵＴＥＤ  ＤＡＴＡ  ＡＧＧＲＥＧＡＴＩＯＮ（分散されたデータ集約）」という名称の米国仮特許出願第６２／２５４，７０８号、およびＲｙａｎ  Ｃａｌｄｗｅｌｌに対する、２０１６年１月１８日に出願された「ＤＩＳＴＲＩＢＵＴＥＤ，ＤＥＣＥＮＴＲＡＬＩＺＥＤ  ＤＡＴＡ  ＡＧＧＲＥＧＡＴＩＯＮ（分散された、非集中化されたデータ集約）」という名称の米国仮特許出願第６２／２８０，０７０号の利益を主張し、これらのそれぞれは、全体としてすべての目的に関して参照により本明細書に組み込まれる。
【０００２】
[0002]本発明は、ユーザのデータの所有および収集に関し、より詳細には、ユーザと関連付けられたハードウェアデバイスからの、複数のユーザのデータの、分散されたおよび／または非集中化された集約に関する。
【背景技術】
【０００３】
[0003]ますます多くのユーザのデータがクラウドに移動するにつれ、ユーザ自身の個人的なデータを、ユーザが制御、ダウンロード、および／または使用することが次第に困難になってきた。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
サービスプロバイダのエコシステムの外側にあるユーザのデータに、ユーザがアクセスするのを防ぐ複数の技術的な措置をとることがあるサービスプロバイダのウォールドガーデンから、ユーザがデータをエクスポートするのが特に困難なことがある。たとえ第３者がユーザの権限およびログイン認証情報を有していても、アグリゲータサービスなどの第３者の１つまたは複数のインターネットプロトコル（ＩＰ）アドレスが、サービスプロバイダからユーザのデータにアクセスするのを、サービスプロバイダはブロックすることがある。
【課題を解決するための手段】
【０００５】
[0004]分散されたおよび／または非集中化されたデータ集約のために、方法が提案される。１つの実施形態において、方法は、複数の第３者のサービスプロバイダに対するユーザの電子認証情報を決定することを含む。さらなる実施形態において、方法は、ユーザと関連付けられたデータを第３者のサービスプロバイダからダウンロードするために、ユーザの電子認証情報を使用して、ユーザと関連付けられたハードウェアデバイスから第３者のサービスプロバイダにアクセスすることを含む。一定の実施形態において、方法は、第３者のサービスプロバイダからのダウンロードデータを集約し、集約されたダウンロードデータに基づいて、ハードウェアデバイス上で１つまたは複数の通信をユーザに提供することを含む。
【０００６】
[0005]分散されたおよび／または非集中化されたデータ集約のために、システムが提案される。１つの実施形態において、複数の集約モジュールは、異なるユーザのハードウェアデバイス上に配置される。一定の実施形態において、複数の集約モジュールは、複数の
異なる第３者のサービスプロバイダに対する異なるユーザからの電子認証情報を受信する。１つの実施形態において、複数の集約モジュールは、受信された電子認証情報を使用して、異なる第３者のサービスプロバイダから異なるユーザと関連付けられたデータをダウンロードする。さらなる実施形態において、バックエンドサーバは、異なる第３者のサービスプロバイダからの異なるユーザと関連付けられたダウンロードデータを受信する。一定の実施形態において、バックエンドサーバは、複数の異なる第３者のサービスプロバイダからの異なるユーザのデータを別々に集約する。１つの実施形態において、バックエンドサーバは、別々に集約されたデータに基づいて、１つまたは複数の通信チャネルを通じて１つまたは複数の通信を異なるユーザに個別に提供する。
【０００７】
[0006]分散されたおよび／または非集中化されたデータ集約のために、装置が提案される。１つの実施形態において、認証モジュールは、ユーザのハードウェアデバイス上で、第３者のサービスプロバイダに対するユーザの電子認証情報を決定するように構成される。一定の実施形態において、直接アクセスモジュールは、ユーザの電子認証情報を使用して、ユーザのハードウェアデバイスから第３者のサービスプロバイダのサーバにアクセスするように構成される。さらなる実施形態において、直接アクセスモジュールは、第３者のサービスプロバイダのサーバからユーザのハードウェアデバイスにユーザと関連付けられたデータをダウンロードするように構成される。１つの実施形態において、インターフェースモジュールは、第３者のサービスプロバイダに加入していないリモートデバイスのために、ユーザのハードウェアデバイスからのダウンロードデータをパッケージにするように構成される。さらなる実施形態において、インターフェースモジュールは、ダウンロードデータをリモートデバイスに提供するように構成される。
【０００８】
[0007]別の実施形態において、装置は、開示の方法、装置、およびシステムに関して説明される様々なステップおよびオペレーションを実施する手段を含む。コンピュータ可読ストレージ媒体を含むコンピュータプログラム製品が提案される。一定の実施形態において、コンピュータ可読ストレージ媒体は、開示の方法、装置、およびシステムに関して説明されるオペレーションの１つまたは複数を実施することを実行可能なコンピュータ使用可能プログラムコードを格納する。
【０００９】
[0008]本発明の利点が容易に理解されるように、上記で簡単に説明された本発明のより多くの特別な説明は、添付の図面に示された具体的な実施形態を参照することによって表現される。これらの図面は本発明の典型的な実施形態のみを描写し、したがって、その範囲を限定するものとみなされるべきではないことを理解して、本発明は、添付の図面の使用を通じて、追加の特殊性および詳細と共に説明され、解説される。
【図面の簡単な説明】
【００１０】
【図１】[0009]分散された／非集中化されたデータ集約のためのシステムの１つの実施形態を示す概略ブロック図である。
【図２】[0010]集約モジュールの１つの実施形態の概略ブロック図である。
【図３】[0011]集約モジュールの別の実施形態の概略ブロック図である。
【図４Ａ】[0012]分散された／非集中化されたデータ集約のためのシステムの追加の実施形態を示す概略ブロック図である。
【図４Ｂ】[0013]分散された／非集中化されたデータ集約のためのシステムのさらなる実施形態を示す概略ブロック図である。
【図４Ｃ】[0014]分散された／非集中化されたデータ集約のためのシステムの一定の実施形態を示す概略ブロック図である。
【図５Ａ】[0015]ユーザインターフェースの１つの実施形態を示す概略ブロック図である。
【図５Ｂ】[0016]ユーザインターフェースの別の実施形態を示す概略ブロック図である。
【図６】[0017]分散された／非集中化されたデータ集約のための方法の１つの実施形態を示す概略流れ図である。
【図７】[0018]分散された／非集中化されたデータ集約のための方法のさらなる実施形態を示す概略流れ図である。
【図８】[0019]分散された／非集中化されたデータ集約のための方法の別の実施形態を示す概略流れ図である。
【発明を実施するための形態】
【００１１】
[0020]「１つの実施形態」、「実施形態」、または類似の言葉への本明細書の全体を通じた参照は、実施形態に関連して説明される特別な特性、構造、または特徴が、少なくとも１つの実施形態に含まれることを意味する。このように、句「１つの実施形態において」、「実施形態において」、および類似の言葉の、本明細書の全体を通じた出現は、すべて同じ実施形態を指してよいが、必ずしも指なくてもよく、明確に明示されない限り、「１つまたは複数の実施形態だが、すべての実施形態というわけではない」を意味する。用語「含む」、「備える」、「有する」、およびこれらの変形は、明確に明示されない限り、「含むが限定されない」を意味する。項目の列挙された一覧は、明確に明示されない限り、項目のいずれかまたはすべてが、相互に排他的および／または相互に包括的であることを含意しない。用語「ａ」、「ａｎ」、および「ｔｈｅ」は、明確に明示されない限り、「１つまたは複数」も指す。
【００１２】
[0021]その上、実施形態の説明される特性、利点、および特徴は、任意の適切な手法で組み合わされてよい。特別な実施形態の具体的な特性または利点の１つまたは複数を伴わずに、実施形態が実践されてよいことを、当業者は認識するであろう。他の例において、追加の特性および利点は、すべての実施形態において提案されることがない一定の実施形態において認識されることがある。
【００１３】
[0022]実施形態のこれらの特性および利点は、以下の説明および添付の特許請求の範囲からより十分に明らかになり、または以下に示されるような実施形態の実践によって確かめられることがある。当業者によって理解されるように、本発明の態様は、システム、方法、および／またはコンピュータプログラム製品として具体化されてよい。それに応じて、本発明の態様は、全面的にハードウェアの実施形態、（ファームウェア、常駐ソフトウェア、マイクロコード、他を含む）全面的にソフトウェアの実施形態、または本明細書で「回路」、「モジュール」、もしくは「システム」と、すべて全体的に呼ばれることがあるソフトウェアの態様とハードウェアの態様を組み合わせる実施形態の形をとってよい。その上、本発明の態様は、１つまたは複数のコンピュータ可読媒体上で具体化されるプログラムコードを有する１つまたは複数のコンピュータ可読媒体の中で具体化されるコンピュータプログラム製品の形をとってよい。
【００１４】
[0023]本明細書において説明される機能ユニットの多くは、その実装形態の独立性をより特別に強調するために、モジュールとしてラベル付けされた。例えば、モジュールは、カスタムＶＬＳＩ回路もしくはゲートアレイ、ロジックチップ、トランジスタなどの市販の半導体、または他のばらばらな構成要素を含むハードウェア回路として実装されてよい。モジュールは、フィールドプログラマブルゲートアレイ、プログラマブルアレイロジック、プログラマブル論理回路、または同様のものなどのプログラマブルハードウェアデバイスに実装されてもよい。
【００１５】
[0024]モジュールは、様々なタイプのプロセッサによる実行のためにソフトウェアの中に実装されてもよい。例えば、プログラムコードの識別されたモジュールは、例えば、オブジェクト、手続き、または関数として編成されることがあるコンピュータ命令の１つま
たは複数の物理ブロックまたは論理ブロックを含んでよい。それにもかかわらず、識別されたモジュールの実行ファイルは、物理的に一緒に配置される必要はなく、論理的に一緒に結合されたとき、モジュールを含み、モジュールに対する決められた目的を実現する、異なる場所に格納された完全に異なる命令を含んでよい。
【００１６】
[0025]事実として、プログラムコードのモジュールは、単一の命令または多くの命令であってよく、いくつかの異なるコードのセグメントにわたって、異なるプログラムの間に、およびいくつかのメモリデバイスを跨いで分散されたとしてもよい。同様に、オペレーション上のデータは、本明細書においてモジュール内部で識別され、図示されてよく、任意の適切な形で具体化され、任意の適切なタイプのデータ構造の内部で編成されてよい。オペレーション上のデータは、単一のデータセットとして収集されてよく、または異なるストレージデバイスにわたることを含む異なる場所にわたって分散されてよく、少なくともある程度は、システムまたはネットワーク上の電子信号として単に存在してよい。モジュールまたはモジュールの一部が、ソフトウェアに実装される場合、プログラムコードは、１つまたは複数のコンピュータ可読媒体に格納され、および／または伝播され続けてよい。
【００１７】
[0026]コンピュータプログラム製品は、本発明の態様をプロセッサに遂行させるために、その上にコンピュータ可読プログラム命令を有するコンピュータ可読ストレージ媒体（または複数の媒体）を含んでよい。
【００１８】
[0027]コンピュータ可読ストレージ媒体は、命令実行デバイスによる使用のために命令を保持し、格納できる有形のデバイスであってよい。例えば、コンピュータ可読ストレージ媒体は、電子ストレージデバイス、磁気ストレージデバイス、光ストレージデバイス、電磁気ストレージデバイス、半導体ストレージデバイス、または前述の任意の適切な組合せであってよいが、これらに限定されない。コンピュータ可読ストレージ媒体の、より具体的な例の、完全に網羅されていないリストは、以下、すなわち、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ（「ＲＡＭ」）、リードオンリメモリ（「ＲＯＭ」）、消去可能プログラマブルリードオンリメモリ（「ＥＰＲＯＭ」またはフラッシュメモリ）、スタティックランダムアクセスメモリ（「ＳＲＡＭ」）、ポータブルコンパクトディスクリードオンリメモリ（「ＣＤ−ＲＯＭ」）、デジタル多用途ディスク（「ＤＶＤ」）、メモリスティック、フロッピーディスク、パンチカードまたはそこに記録された命令を有する溝の中に起こされた構造などの機械的にエンコードされたデバイス、および前述の任意の適切な組合せを含む。本明細書で使用されるように、コンピュータ可読ストレージ媒体は、電波もしくは他の自由に伝播する電磁波、導波路もしくは他の伝送媒体を通じて伝播する電磁波（例えば、光ファイバケーブルを通過する光パルス）、またはワイヤを通じて伝送される電気信号などの、一時的な信号自体として解釈されるべきではない。
【００１９】
[0028]本明細書で説明されるコンピュータ可読プログラム命令は、コンピュータ可読ストレージ媒体から個々のコンピューティングデバイス／処理デバイスにダウンロードされてよく、またはネットワーク、例えば、インターネット、ローカルエリアネットワーク、広域ネットワーク、および／またはワイヤレスネットワークを介して、外部コンピュータまたは外部ストレージデバイスにダウンロードされてよい。ネットワークは、銅の伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ、および／またはエッジサーバを含んでよい。それぞれのコンピューティングデバイス／処理デバイスの中のネットワークアダプタカードまたはネットワークインターフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、個々のコンピューティングデバイス／処理デバイスの内部のコンピュータ可読ストレージ媒体に格納するために、コンピュータ可読プログラム命令を転送する。
【００２０】
[0029]本発明のオペレーションを遂行するためのコンピュータ可読プログラム命令は、アセンブラ命令、インストラクションセットアーキテクチャ（ＩＳＡ）命令、機械語命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、またはＳｍａｌｌｔａｌｋ、Ｃ＋＋、もしくは同様のものなどのオブジェクト指向プログラミング言語、および「Ｃ」プログラミング言語または類似のプログラミング言語などの従来型の手続き型プログラミング言語を含む、１つまたは複数のプログラミング言語の任意の組合せで書かれたソースコードまたはオブジェクトコードのどちらかであってよい。コンピュータ可読プログラム命令は、ユーザのコンピュータ上で全面的に、ユーザのコンピュータ上で部分的に、スタンドアロンソフトウェアパッケージとして、ユーザのコンピュータ上で部分的に、およびリモートコンピュータ上で部分的に、またはリモートコンピュータもしくはサーバ上で全面的に実行してよい。後者のシナリオにおいて、リモートコンピュータは、ローカルエリアネットワーク（ＬＡＮ）もしくは広域ネットワーク（ＷＡＮ）を含む、任意のタイプのネットワークを通じてユーザのコンピュータに接続されてよく、または（例えば、インターネットサービスプロバイダを使用して、インターネットを通じて）外部コンピュータに対して接続が行われてよい。いくつかの実施形態において、例えば、プログラマブル論理回路機器、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、またはプログラマブル論理回路アレイ（ＰＬＡ）を含む電子回路機器は、本発明の態様を実施するために、コンピュータ可読プログラム命令の状態情報を利用して電子回路機器を個人専用にすることによって、コンピュータ可読プログラム命令を実行してよい。
【００２１】
[0030]本発明の態様は、本発明の実施形態による、方法、装置（システム）、およびコンピュータプログラム製品の流れ図および／またはブロック図を参照しながら本明細書で説明される。流れ図および／またはブロック図のそれぞれのブロック、ならびに流れ図および／またはブロック図におけるブロックの組合せは、コンピュータ可読プログラム命令によって実装されてよいことが理解されよう。
【００２２】
[0031]これらのコンピュータ可読プログラム命令は、汎用コンピュータ、特殊用途のコンピュータ、または機械を生み出す他のプログラマブルデータ処理装置のプロセッサに提供されてよく、その結果、コンピュータまたは他のプログラマブルデータ処理装置のプロセッサを介して実行する命令は、流れ図および／またはブロック図のブロックまたは複数のブロック内で明示された機能／作用を実装するための手段を作成する。これらのコンピュータ可読プログラム命令は、コンピュータ、プログラマブルデータ処理装置、および／または特別な手法で機能する他のデバイスに指図できるコンピュータ可読ストレージ媒体に格納されてもよく、その結果、そこに格納された命令を有するコンピュータ可読ストレージ媒体は、流れ図および／またはブロック図のブロックまたは複数のブロック内で明示された機能／作用の態様を実装する命令を含む製造品を含む。
【００２３】
[0032]コンピュータ可読プログラム命令は、コンピュータ、他のプログラマブルデータ処理装置、または他のデバイス上にロードされ、コンピュータ、他のプログラマブル装置、または他のデバイス上で実施されることになる一連のオペレーション上のステップに、コンピュータで実装される処理を生み出すことを行わせ、その結果、コンピュータ、他のプログラマブル装置、または他のデバイス上で実行する命令は、流れ図および／またはブロック図のブロックまたは複数のブロック内で明示された機能／作用を実装する。
【００２４】
[0033]本明細書において説明される機能ユニットの多くは、その実装形態の独立性をより特別に強調するために、モジュールとしてラベル付けされた。例えば、モジュールは、カスタムＶＬＳＩ回路もしくはゲートアレイ、ロジックチップ、トランジスタなどの市販の半導体、または他のばらばらな構成要素を含む、ハードウェア回路として実装されてよい。モジュールは、フィールドプログラマブルゲートアレイ、プログラマブルアレイロジ
ック、プログラマブル論理回路、または同様のものなどの、プログラマブルハードウェアデバイスに実装されてもよい。
【００２５】
[0034]モジュールは、様々なタイプのプロセッサによる実行のためにソフトウェアに実装されてもよい。例えば、プログラム命令の識別されたモジュールは、例えば、オブジェクト、手続き、または関数として編成されることがあるコンピュータ命令の１つまたは複数の物理ブロックまたは論理ブロックを含んでよい。それにもかかわらず、識別されたモジュールの実行ファイルは、物理的に一緒に配置される必要はなく、論理的に一緒に結合されたとき、モジュールを含み、モジュールに対する決められた目的を実現する、異なる場所に格納された完全に異なる命令を含んでよい。
【００２６】
[0035]図における概略流れ図および／または概略ブロック図は、本発明の様々な実施形態による、アーキテクチャ、機能性、ならびに装置、システム、方法、およびコンピュータプログラム製品の可能な実装形態の動作を示す。この点については、概略流れ図および／または概略ブロック図におけるそれぞれのブロックは、明示された論理機能を実装するために、プログラムコードの１つまたは複数の実行可能命令を含む、モジュール、セグメント、またはコードの一部を表してよい。
【００２７】
[0036]いくつかの代替実装形態において、ブロックに記された機能は、図に記された順序を外れて発生してよいことにも留意されたい。例えば、連続して示された２つのブロックは、実際は、実質的に並行に実行されてよく、またはブロックは、時として、逆の順序で実行されてよく、関与する機能性に依存する。他のステップおよび方法は、示された図の１つまたは複数のブロックまたはその一部と、機能、ロジック、または効果が同じであると想像され得る。
【００２８】
[0037]様々な矢印のタイプおよび線のタイプが、流れ図および／またはブロック図で用いられることがあるが、これらは、対応する実施形態の範囲を限定しないことが理解される。事実として、いくつかの矢印または他のコネクタは、描写された実施形態の論理フローを示すためだけに使用されることがある。例えば、矢印は、描写された実施形態の列挙されたステップ間の明示されていない継続時間の待機期間または監視期間を示してよい。ブロック図および／または流れ図のそれぞれのブロック、ならびにブロック図および／または流れ図におけるブロックの組合せは、明示された機能もしくは作用を実施する特殊用途のハードウェアベースのシステムによって、または特殊用途のハードウェアとプログラムコードの組合せによって実装されてよいことも記される。
【００２９】
[0038]図１は、分散されたおよび／または非集中化されたデータ集約のためのシステム１００の１つの実施形態を描写する。１つの実施形態において、システム１００は、１つまたは複数のハードウェアデバイス１０２、１つまたは複数の集約モジュール１０４（例えば、バックエンド集約モジュール１０４ｂ、および／または１つもしくは複数のハードウェアデバイス１０２上に据え付けられた複数の集約モジュール１０４ａ）、１つまたは複数のデータネットワーク１０６または他の通信チャネル、１つまたは複数の第３者のサービスプロバイダ１０８（例えば、１つもしくは複数のサービスプロバイダ１０８の１つもしくは複数のサーバ１０８、１つもしくは複数のクラウドもしくはネットワークサービスプロバイダ、または同様のもの）、ならびに／あるいは１つまたは複数のバックエンドサーバ１１０を含む。一定の実施形態において、たとえ具体的な数のハードウェアデバイス１０２、集約モジュール１０４、データネットワーク１０６、第３者のサービスプロバイダ１０８、および／またはバックエンドサーバ１１０が、図１に描写されるとしても、任意の数のハードウェアデバイス１０２、集約モジュール１０４、データネットワーク１０６、第３者のサービスプロバイダ１０８、および／またはバックエンドサーバ１１０が、分散されたデータ集約のためのシステム１００に含まれてよいことを、本開示の観点から当業者は認識するであろう。
【００３０】
[0039]１つの実施形態において、システム１００は、１つまたは複数のハードウェアデバイス１０２を含む。ハードウェアデバイス１０２（例えば、コンピューティングデバイス、情報処理デバイス、または同様のもの）は、デスクトップコンピュータ、ラップトップコンピュータ、モバイルデバイス、タブレット型コンピュータ、スマートフォン、セットトップボックス、ゲーム機、スマートＴＶ、スマートウォッチ、フィットネスバンド、光ヘッドマウントディスプレイ（例えば、仮想現実ヘッドセット、スマートグラス、または同様のもの）、ＨＤＭＩ（登録商標）または他の電子ディスプレイドングル、パーソナルデジタルアシスタント、ならびに／あるいは、プロセッサ（例えば、中央処理装置（ＣＰＵ）、プロセッサコア、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）もしくは他のプログラマブル論理回路、特定用途向け集積回路（ＡＳＩＣ）、コントローラ、マイクロコントローラ、および／もしくは別の半導体集積回路デバイス）、揮発性メモリ、ならびに／または不揮発性ストレージ媒体を含む別のコンピューティングデバイスの１つまたは複数を含んでよい。一定の実施形態において、ハードウェアデバイス１０２は、下記に説明されるデータネットワーク１０６を介して、１つもしくは複数の第３者のサービスプロバイダ１０８の１つもしくは複数のサーバ１０８、および／または１つもしくは複数のバックエンドサーバ１１０と通信状態にある。さらなる実施形態において、ハードウェアデバイス１０２は、様々なプログラム、プログラムコード、アプリケーション、命令、機能、または同様のものを実行することができる。
【００３１】
[0040]１つの実施形態において、集約モジュール１０４は、１つまたは複数の第３者のサービスプロバイダ１０８に対するユーザの電子認証情報（例えば、ユーザ名およびパスワード、指紋スキャン、網膜スキャン、デジタル証明書、個人識別番号（ＰＩＮ）、チャレンジレスポンス、セキュリティトークン、ハードウェアトークン、ソフトウェアトークン、ＤＮＡ配列、署名、顔認識、音声パターン認識、生体電気信号、２要素認証の認証情報、または同様のもの）を決定および／または受信するように構成される。一定の実施形態において、集約モジュール１０４は、ユーザの電子認証情報を使用して第３者のサービスプロバイダ１０８のサーバ１０８にアクセスし、ユーザの写真、ユーザのソーシャルメディアの投稿、ユーザの医療記録、ユーザの金融取引記録もしくは他の金融データ、ならびに／またはユーザと関連付けられ、および／もしくはユーザによって所有されるが、第３者のサービスプロバイダ１０８のサーバ１０８によって格納される（例えば、ユーザによって所有されず、維持されず、および／もしくは制御されないハードウェアによって格納される）他のデータなどの、ユーザと関連付けられたデータをサーバ１０８からダウンロードする。様々な実施形態において、集約モジュール１０４は、（例えば、ハードウェアデバイス１０２の電子ディスプレイにデータを表示して）ダウンロードデータをユーザにローカルに提供すること、ユーザのハードウェアデバイス１０２からのダウンロードデータを、リモートサーバ１１０（例えば、バックエンド集約モジュール１０４ｂ）もしくは第３者のサービスプロバイダ１０８に加入していないことがある他のリモートデバイス（例えば、ユーザの別のハードウェアデバイス１０２、異なるユーザのハードウェアデバイス１０２、もしくは同様のもの）に提供し、および／またはこれらのリモートサーバ１１０もしくは他のリモートデバイスのためにデータをパッケージにすること、ダウンロードデータに基づいて、（例えば、ハードウェアデバイス１０２上で）１つまたは複数のアラート、メッセージ、広告、または他の通信をユーザに提供すること、あるいは同様のことを行ってよい。
【００３２】
[0041]一定の実施形態において、システム１００は、（例えば、１つもしくは複数のハードウェアデバイス１０２のハードウェア、および／または１つもしくは複数のハードウェアデバイス１０２上で動く実行コードを含む）複数の異なるユーザのハードウェアデバイス１０２上に据え付けられた／配置された複数の集約モジュール１０４を含む。複数の集約モジュール１０４は、分散されたおよび／または非集中化されたシステム１００として作用してよく、地理的に拡散され、異なるＩＰアドレスを使用する複数のハードウェアデバイス１０２に跨って実行し、それぞれは、分散されたおよび／または非集中化された手法で、データ（例えば、写真、ソーシャルメディアの投稿、医療記録、金融取引記録、他の金融データ、および／または他のユーザデータ）を別々にダウンロードし、および／または集約する。第３者のサービスプロバイダ１０８（例えば、金融機関、銀行、信用組合、および／もしくは他のオンライン銀行取引プロバイダ、またはソーシャルメディアサイト、または医療提供者、または写真ホスティングサイト、または同様のもの）は、単一の場所（例えば、単一のＩＰアドレス、ＩＰアドレスの単一のブロック、または同様のもの）から複数のユーザのデータに、データ集約サービスまたは他のエンティティがアクセスするのをブロックすることがあるが、一定の実施形態において、分散されたおよび／または非集中化された大量の多くの集約モジュール１０４は、第３者のサービスプロバイダ１０８にとってブロックするのがより一層困難なことがある。
【００３３】
[0042]１つの実施形態において、ハードウェアデバイス１０２は、インターネットブラウザを含みおよび／または実行してよく、（例えば、インターネットブラウザ内で第３者のサービスプロバイダ１０８のウェブページをロードすることによって）第３者のサービスプロバイダ１０８のサーバ１０８にアクセスするために、ユーザはインターネットブラウザを使用してよい。一定の実施形態において、集約モジュール１０４の少なくとも一部は、ユーザの個人的なハードウェアデバイス１０２のインターネットブラウザに対するプラグインおよび／またはインターネットブラウザの拡張を含むことがあり、その結果、第３者のサービスプロバイダ１０８は、第３者のサービスプロバイダ１０８のサーバ１０８に集約モジュール１０４がアクセスするのをブロックすることはなく、インターネットブラウザを使用してサーバ１０８にユーザ自身がアクセスするのをブロックすることもない。例えば、ユーザがインターネットブラウザを通じて第３者のサービスプロバイダ１０８のサーバ１０８にアクセスするときに使用するであろうものと同じクッキー、ＩＰアドレス、保存された認証情報、または同様のものを、集約モジュール１０４は使用してよい。一定の実施形態において、集約モジュール１０４は、（例えば、異なるハードウェアデバイス１０２上の）複数の異なるタイプのインターネットブラウザとの統合をサポートしてよい。
【００３４】
[0043]一定の実施形態において、集約モジュール１０４は、集約モジュール１０４によるサーバ１０８へのアクセスと、ユーザによるサーバ１０８へのアクセスを、第３者のサービスプロバイダ１０８が区別し得るという可能性を低減させるために、第３者のサービスプロバイダ１０８のサーバ１０８にアクセスする際に、ユーザの行動パターンを模倣またはコピーしてよい。例えば、集約モジュール１０４は、たとえ１つまたは複数の場所のそれぞれからデータをダウンロードすることを集約モジュール１０４が意図しなくても、第３者のサービスプロバイダ１０８のサーバ１０８の１つもしくは複数の場所（例えば、ウェブページ）を訪れること、異なる場所をアクセスする間に一定の遅延時間、待機すること、一定のスクロールパターンを使用すること、または同様のことを行ってよく、ユーザのデータを集約モジュール１０４がダウンロードすることおよび／または集約することを隠し、第３者のサービスプロバイダ１０８によって検出され、および／またはブロックされる機会を低減させる。
【００３５】
[0044]１つの実施形態において、集約モジュール１０４の少なくとも一部は、個人的な財務管理アプリケーション（例えば、複数の金融機関からのユーザの金融取引を表示すること、ユーザの財務予算および／もしくは財政目標を決定および／もしくは表示すること、ユーザの勘定残高を決定および／もしくは表示すること、ユーザの純資産を決定および／もしくは表示すること、または同様のことを行うためのコンピュータの実行コード）、写真ビューア、医療アプリケーション、保険アプリケーション、会計アプリケーション、ソーシャルメディアアプリケーション、あるいは同様のものなどの、ハードウェアデバイス１０２上で実行する別のアプリケーションと統合されるか、またはそうでなければ、別のアプリケーションの一部であってよく、これらのアプリケーションは、第３者のサービスプロバイダ１０８のサーバ１０８から集約モジュール１０４がダウンロードするデータを使用してよい。
【００３６】
[0045]１つの実施形態において、集約モジュール１０４ａは、分散されたシステム１００を含み、集約モジュール１０４ａおよび／または関連付けられたハードウェアデバイス１０２は、実質的に非従属的にデータをダウンロードすることおよび／または集約すること（例えば、構成要素の独立の成功および／または失敗によって、グローバルクロックがない状態で、並行または非並行にデータをダウンロードすること）を行う。分散された集約モジュール１０４ａは、互いにおよび／またはバックエンド集約モジュール１０４ｂにメッセージを渡し、ユーザのデータのこれらの分散集約を調和させる。１つの実施形態において、集約モジュール１０４ａは、１つまたは複数の集約機能を実施する集中型サーバまたは他のデバイスに排他的に依存するのではなく、非集中化される（例えば、ユーザと関連付けられたハードウェアデバイス１０２は、データをダウンロードすることなどの１つまたは複数の集約機能を実施する）。
【００３７】
[0046]一定の実施形態において、分散されたおよび／または非集中化されたシステム１００において、バックエンド集約モジュール１０４ｂおよび／またはバックエンドサーバ１１０などの中心エンティティは、ユーザの認証情報を使用して第３者のサービスプロバイダ１０８のサーバ１０８にアクセスするための命令を含む１つもしくは複数のメッセージ、または同様のものを、１つまたは複数の集約モジュール１０４ａにさらに提供することがある。例えば、バックエンド集約モジュール１０４ｂは、ユーザの電子認証情報をエンターする（ｅｎｔｅｒｉｎｇ；入力する）ための場所（例えば、テキストボックス、フィールド、ラベル、座標、もしくは同様のもの）、ユーザの電子認証情報をサブミットする（ｓｕｂｍｉｔｔｉｎｇ；提示する、送信する）ための命令（例えば、押すボタン、クリックするリンク、もしくは同様のもの）、ユーザと関連付けられたデータの１つもしくは複数の場所（例えば、テーブルもしくはチャートの行、テーブルもしくはチャートの列、ユニフォームリソースロケータ（ＵＲＬ）もしくは他のアドレス、座標、ラベル、または同様のもの）、および／あるいは他の命令または情報などの、第３者のサービス１０８のサーバ１０８にアクセスするための命令の１つまたは複数のセットを、１つまたは複数のハードウェアデバイス１０２の１つまたは複数の集約モジュール１０４ａに提供し、これらを使用して、集約モジュール１０４ａは、ユーザのデータにアクセスし、ダウンロードしてよい。
【００３８】
[0047]さらなる実施形態において、１つまたは複数の集約モジュール１０４ａは、ピアツーピアの手法で互いに、ユーザの認証情報を使用して第３者のサービスプロバイダ１０８のサーバ１０８にアクセスするための命令、または同様のものなどの、メッセージを渡してよい。別の実施形態において、バックエンド集約モジュール１０４ｂなどの中心エンティティは、初めに、ユーザの認証情報を使用して第３者のサービスプロバイダ１０８のサーバ１０８にアクセスするための命令の１つまたは複数のセットを、１つまたは複数の集約モジュール１０４ａにまいてよく、１つまたは複数の集約モジュール１０４ａは、命令の１つまたは複数のセットを他の集約モジュール１０４ａに送信してよい。
【００３９】
[0048]しかし、一定の実施形態において、ユーザのデータにアクセスするための命令は、（例えば、アップグレード、異なるユーザに対する異なるサービスレベルもしくはサーバ１０８、異なる第３者のサービスプロバイダ１０８の買収および／もしくは合併、または同様のものにより）時とともに変更させること、第３者のサービスプロバイダ１０８の異なるユーザによって変化させること、あるいは同様のことを行ってよく、時とともにおよび／または一定のユーザに対して一定の命令を失敗させ、集約モジュール１０４がユーザのデータにアクセスし、ダウンロードするのを防ぐ。１つの実施形態において、バックエンド集約モジュール１０４ｂは、命令の複数のセットの階層リストを１つまたは複数の集約モジュール１０４ａに提供してよく、第３者のサービスプロバイダ１０８のサーバ１０８からユーザのデータにアクセスできるようになったことが知らされる。集約モジュール１０４ａがユーザのデータにアクセスできるまで、ハードウェアデバイス１０２上の集約モジュール１０４ａは階層順に命令の異なるセットを試行してよい。
【００４０】
[0049]一定の実施形態において、集約モジュール１０４は、ユーザの電子認証情報の入力場所、ユーザの電子認証情報をサブミットするための命令、ユーザと関連付けられたデータの場所、または同様のものをグラフィカルに識別することによって、ユーザのデータにアクセスするための失敗した命令を、ユーザが修復することまたは直すことを可能にするインターフェースをユーザに提供してよい。１つの実施形態において、集約モジュール１０４は、ユーザの電子認証情報の入力場所、ユーザの電子認証情報をサブミットするための命令、ユーザと関連付けられたデータの場所、または同様のものについて、集約モジュール１０４が決定した推定を、強調またはそうでなければ示唆すること（例えば、太字にすること、色を付けること、視覚コメントもしくはラベルを描写すること、または同様のこと）を行ってよい。例えば、集約モジュール１０４は、第３者のサービスプロバイダ１０８のサーバ１０８のウェブページを処理すること（例えば、ハイパーテキストマークアップランゲージ（ＨＴＭＬ）ファイルを解析することおよび／または調査すること）を行い、ユーザの電子認証情報の入力場所、ユーザの電子認証情報をサブミットするための命令、ユーザと関連付けられたデータの場所、または同様のものを推定してよい。
【００４１】
[0050]一定の実施形態において、集約モジュール１０４は、第３者のサービスプロバイダ１０８のサーバ１０８からユーザのデータにアクセスするための壊れたおよび／または失敗した命令をグラフィカルに修復するために、先進的なインターフェースをユーザに提供してよく、これはウェブページのコード（例えば、ＨＴＭＬまたは同様のもの）を閲覧し、ウェブページのコードの内部で、ユーザの電子認証情報の入力場所、ユーザの電子認証情報をサブミットするための命令、ユーザと関連付けられたデータの場所、または同様のものを識別することを、ユーザが行うことを可能にする。１つの実施形態において、集約モジュール１０４は、サーバ１０８のウェブページまたは他の場所に基本的なインターフェースを被せることによって、第３者のサービスプロバイダ１０８のサーバ１０８からユーザのデータにアクセスするための壊れたおよび／または失敗した命令をグラフィカルに修復するために、基本的なインターフェースをユーザに提供してよく、（例えば、ウェブページのＨＴＭＬまたは他のコードを閲覧することをユーザに要求することなく）ユーザの電子認証情報の入力場所、ユーザの電子認証情報をサブミットするための命令、ユーザと関連付けられたデータの場所、または同様のものを、ユーザはグラフィカルに識別する。一定の実施形態において、集約モジュール１０４は、壊れたおよび／または欠落した命令、場所、または同様のものの選択可能なリストを含むインターフェースを提供してよく、リストから項目をユーザが選択するのに応答して、候補をグラフィカルに強調および／または表示してよい。
【００４２】
[0051]１つの実施形態において、集約モジュール１０４は、（例えば、不正ユーザが間違ったまたは正しくない命令を発行するのを防ぐために）発行された命令を使用することを集約モジュール１０４ａのそれぞれが可能にする前に、（例えば、テストセットを使用して）ユーザによって発行された命令をテストしてよい。集約モジュール１０４は、ユーザが提供した命令の成功率に基づいてユーザを採点または評価してよく、より高い採点または評価を伴うユーザからの命令の使用を促進すること（例えば、より多くの集約モジュール１０４ａおよび／またはユーザに提供すること）を行ってよい。一定の実施形態において、集約モジュール１０４の分散ネットワークは、それによって、自己解決および／または自己テストを行ってよく、たとえアクセス命令が変わるか、または壊れた状態になるとしても、１つまたは複数の第３者のサービスプロバイダ１０８からユーザのデータへの継続アクセスおよび／または集約を可能にする。
【００４３】
[0052]一定の実施形態において、１つまたは複数の集約モジュール１０４は、１つまたは複数の他のエンティティ（例えば、第３者のサービスプロバイダ１０８に加入していないリモートサーバ１１０もしくは他のハードウェアデバイス１０２、バックエンド集約モジュール１０４ｂ、または同様のもの）に、１つまたは複数の第３者のサービスプロバイダ１０８のサーバ１０８からのダウンロードされたおよび／または集約されたユーザデータを提供するために、インターフェース（例えば、アプリケーションプログラミングインターフェース（ＡＰＩ））を提供してよい。１つの実施形態において、インターフェースは、ユーザのハードウェアデバイス１０２の集約モジュール１０４ａと、１つまたは複数のバックエンド集約モジュール１０４ｂとの間のプライベートインターフェースを含む。例えば、これは、たとえデータをダウンロードしたユーザのハードウェアデバイス１０２が切られている、電池切れ、データネットワーク１０６に接続されていない、または同様の状態だとしても、複数の場所で、複数のハードウェアデバイス１０２上に、複数のチャネルを通じて、または同様のもので、ダウンロードされたおよび／または集約されたユーザデータへのアクセスを、バックエンド集約モジュール１０４ｂがユーザに提供することを可能にすることがある。別の実施形態において、インターフェースは、公的なおよび／またはオープンなインターフェースを含み、これはセキュアにされることがあり、データを格納、処理、および／またはそうでなければ使用するために、集約モジュール１０４からのユーザのダウンロードされたデータを１つまたは複数の他のツール、サービス、および／または他のエンティティに、ユーザが配ることを可能にする。
【００４４】
[0053]様々な実施形態において、集約モジュール１０４は、ハードウェア、ソフトウェア、またはハードウェアとソフトウェアのいくつかの組合せとして具体化されてよい。１つの実施形態において、集約モジュール１０４は、ハードウェアデバイス１０２、バックエンドサーバ１１０、または同様のもののプロセッサ上での実行のために、非一時的コンピュータ可読ストレージ媒体上に格納される実行可能プログラムコードを含んでよい。例えば、集約モジュール１０４は、ハードウェアデバイス１０２、バックエンドサーバ１１０、前述の１つもしくは複数の組合せ、または同様のものの１つまたは複数上で実行する実行可能プログラムコードとして具体化されてよい。このような実施形態において、下記に説明されるような、集約モジュール１０４のオペレーションを実施する様々なモジュールは、ハードウェアデバイス１０２、バックエンドサーバ１１０、この２つの組合せ、および／または同様のものの上に配置されてよい。
【００４５】
[0054]様々な実施形態において、集約モジュール１０４は、バックエンドサーバ１１０上に、ユーザのハードウェアデバイス１０２（例えば、ドングル、ワイヤレスでおよび／もしくはＵＳＢもしくは固有の通信ポートなどのデータポートで電話１０２もしくはタブレット１０２と通信状態にあるケース内部の１つもしくは複数の半導体集積回路デバイスを含む電話１０２もしくはタブレット１０２の保護ケース、または別の周辺デバイス）上に、あるいはデータネットワーク１０６上のおよび／またはユーザのハードウェアデバイス１０２とコロケートされた他の場所にインストールまたは配置されることがある、ハードウェア機器として具体化されてよい。一定の実施形態において、集約モジュール１０４は、有線接続（例えば、ＵＳＢ接続）もしくはワイヤレス接続（例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）、Ｗｉ−Ｆｉ（登録商標）、近距離無線通信（ＮＦＣ：ｎｅａｒ−ｆｉｅｌｄ  ｃｏｍｍｕｎｉｃａｔｉｏｎ）、もしくは同様のもの）のどちらかによって、ラップトップコンピュータ、サーバ、タブレット型コンピュータ、スマートフォン、もしくは同様のものなどの別のハードウェアデバイス１０２に付随する状態、電子ディスプレイデバイス（例えば、ＨＤＭＩポート、ＤｉｓｐｌａｙＰｏｒｔポート、ＭｉｎｉＤｉｓｐｌａｙＰｏｒｔポート、ＶＧＡポート、ＤＶＩポート、もしくは同様のものを使用するテレビもしくはモニタ）に付随する状態、データネットワーク１０６上で実質的に非従属的に動作する状態、または同様の状態にある、セキュアなハードウェアドングルまたは他のハードウェア機器デバイス（例えば、セットトップボックス、ネットワーク機器、または同様のもの）などのハードウェアデバイスを含んでよい。集約モジュール１０４のハードウェア機器は、電力インターフェース、有線および／またはワイヤレスネットワークインターフェース、ディスプレイデバイスに出力するグラフィカルインターフェース（例えば、１つもしくは複数のディスプレイポートを有するグラフィックカードおよび／もしくはＧＰＵ）、ならびに／または下記に説明されるような半導体集積回路デバイスを含んでよく、集約モジュール１０４に関して本明細書で説明される機能を実施するように構成される。
【００４６】
[0055]このような実施形態において、集約モジュール１０４は、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）もしくは他のプログラマブル論理回路、ＦＰＧＡもしくは他のプログラマブル論理回路のためのファームウェア、マイクロコントローラ上での実行のためのマイクロコード、特定用途向け集積回路（ＡＳＩＣ）、プロセッサ、プロセッサコア、または同様のものなどの、半導体集積回路デバイス（例えば、１つもしくは複数のチップ、ダイ、もしくは他のばらばらのロジックハードウェア）または同様のものを含んでよい。１つの実施形態において、集約モジュール１０４は、（例えば、揮発性メモリ、不揮発性ストレージ媒体、ネットワークインターフェース、周辺デバイス、グラフィカルインターフェース／ディスプレイインターフェースへの、１つまたは複数の電気回線または電気接続を有するプリント回路基板上にマウントされてよい。ハードウェア機器は、（例えば、プリント回路基板または同様のものの１つまたは複数の電気回線と通信状態にある）データを送信および受信するように構成された１つまたは複数のピン、パッド、または他の電気接続を含んでよく、１つまたは複数のハードウェア回路および／または他の電気回路は、集約モジュール１０４の様々な機能を実施するように構成される。
【００４７】
[0056]一定の実施形態において、集約モジュール１０４の半導体集積回路デバイスまたは他のハードウェア機器は、１つまたは複数の揮発性メモリ媒体を含みおよび／またはこれらに通信連結され、１つまたは複数の揮発性メモリ媒体は、ランダムアクセスメモリ（ＲＡＭ）、ダイナミックＲＡＭ（ＤＲＡＭ）、キャッシュ、または同様のものを含んでよいがこれらに限定されない。１つの実施形態において、集約モジュール１０４の半導体集積回路デバイスまたは他のハードウェア機器は、１つまたは複数の不揮発性メモリ媒体を含みおよび／またはこれらに通信連結され、１つまたは複数の不揮発性メモリ媒体は、ＮＡＮＤフラッシュメモリ、ＮＯＲフラッシュメモリ、ナノランダムアクセスメモリ（ナノＲＡＭもしくはＮＲＡＭ）、ナノ結晶ワイヤベースのメモリ（ｎａｎｏｃｒｙｓｔａｌ  ｗｉｒｅ−ｂａｓｅｄ  ｍｅｍｏｒｙ）、酸化ケイ素ベースのサブ１０ナノメートルプロセスメモリ（ｓｉｌｉｃｏｎ−ｏｘｉｄｅ  ｂａｓｅｄ  ｓｕｂ−１０  ｎａｎｏｍｅｔｅｒ  ｐｒｏｃｅｓｓ  ｍｅｍｏｒｙ）、グラフェンメモリ、シリコン−酸化物−窒化物−酸化物−シリコン（ＳＯＮＯＳ：Ｓｉｌｉｃｏｎ−Ｏｘｉｄｅ−Ｎｉｔｒｉｄｅ−Ｏｘｉｄｅ−Ｓｉｌｉｃｏｎ）、抵抗変化型ＲＡＭ（ＲＲＡＭ（登録商標）：ｒｅｓｉｓｔｉｖｅ  ＲＡＭ）、プログラマブルメタライゼーションセル（ＰＭＣ：ｐｒｏｇｒａｍｍａｂｌｅ  ｍｅｔａｌｌｉｚａｔｉｏｎ  ｃｅｌｌ）、導電性ブリッジＲＡＭ（ＣＢＲＡＭ：ｃｏｎｄｕｃｔｉｖｅ−ｂｒｉｄｇｉｎｇ  ＲＡＭ）、磁気抵抗性ＲＡＭ（ＭＲＡＭ：ｍａｇｎｅｔｏ−ｒｅｓｉｓｔｉｖｅ  ＲＡＭ）、ダイナミックＲＡＭ（ＤＲＡＭ）、相変化ＲＡＭ（ＰＲＡＭ（ｐｈａｓｅ  ｃｈａｎｇｅ  ＲＡＭ）、もしくはＰＣＭ）、磁気ストレージ媒体（例えば、ハードディスク、テープ）、光ストレージ媒体、または同様のものを含んでよいがこれらに限定されない。
【００４８】
[0057]１つの実施形態において、データネットワーク１０６は、デジタル通信を伝送す
るデジタル通信ネットワークを含む。データネットワーク１０６は、ワイヤレスセルラーネットワークなどのワイヤレスネットワーク、および／またはＷｉ−Ｆｉネットワーク、Ｂｌｕｅｔｏｏｔｈ（登録商標）ネットワーク、近距離無線通信（ＮＦＣ）ネットワーク、アドホックネットワークなどのローカルワイヤレスネットワーク、および／または同様のものを含んでよい。データネットワーク１０６は、広域ネットワーク（ＷＡＮ）、ストレージエリアネットワーク（ＳＡＮ）、ローカルエリアネットワーク（ＬＡＮ）、光ファイバネットワーク、インターネット、または他のデジタル通信ネットワークを含んでよい。データネットワーク１０６は、２つ以上のネットワークを含んでよい。データネットワーク１０６は、１つまたは複数のサーバ、ルータ、スイッチ、および／または他のネットワーク機器を含んでよい。データネットワーク１０６は、ハードディスクドライブ、光学ドライブ、不揮発性メモリ、ＲＡＭ、または同様のものなどの１つまたは複数のコンピュータ可読ストレージ媒体を含んでもよい。
【００４９】
[0058]１つの実施形態において、１つまたは複数の第３者のサービスプロバイダ１０８は、１つまたは複数のウェブサイトをホストする１つまたは複数のウェブサーバ、企業イントラネットシステム、アプリケーションサーバ、アプリケーションプログラミングインターフェース（ＡＰＩ）サーバ、認証サーバ、または同様のものなどの、１つまたは複数のネットワークアクセス可能なコンピューティングシステムを含んでよい。１つまたは複数の第３者のサービスプロバイダ１０８は、様々な機関または組織に関連したシステムを含んでよい。例えば、第３者のサービスプロバイダ１０８は、金融機関、大学、政府機関、公益事業会社、電子メールプロバイダ、ソーシャルメディアサイト、写真共有サイト、動画共有サイト、データストレージサイト、医療提供者、またはユーザと関連付けられたデータを格納する別のエンティティへの電子アクセスを提供するシステムを含んでよい。第３者のサービスプロバイダ１０８は、ユーザと関連付けられたデータをアップロード、閲覧、作成、および／または修正するためのユーザアカウントを、ユーザが作成するのを可能にすることがある。それに応じて、第３者のサービスプロバイダ１０８は、ウェブサイト、アプリケーション、または類似のフロントエンドのログインエレメントまたはページなどの権限付与システムを含んでよく、ここで、ユーザのデータにアクセスするために、ユーザはユーザ名／パスワードの組合せなどの認証情報を提供できる。
【００５０】
[0059]１つの実施形態において、１つまたは複数のバックエンドサーバ１１０および／または１つまたは複数のバックエンド集約モジュール１０４ｂは、ネットワーク化された大量の集約モジュール１０４ａの中央管理を提供する。例えば、１つまたは複数のバックエンド集約モジュール１０４ｂおよび／またはバックエンドサーバ１１０は、集約モジュール１０４ａからのダウンロードされたユーザデータを中心に格納すること、ユーザ認証情報を使用して１つまたは複数の第３者のサービスプロバイダ１０８からのユーザデータに、集約モジュール１０４ａがアクセスするための命令を提供すること、または同様のことを行ってよい。バックエンドサーバ１１０は、ハードウェアデバイス１０２および／または１つもしくは複数の第３者のサービスプロバイダ１０８からリモートに配置された１つまたは複数のサーバを含んでよい。バックエンドサーバ１１０は、図２および図３の集約モジュール１０４に関して下記に説明されるモジュールもしくはサブモジュールの少なくとも一部を含むこと、集約モジュール１０４のハードウェアを含むこと、１つもしくは複数の非一時的なコンピュータ可読ストレージ媒体に集約モジュール１０４の実行可能プログラムコードを格納すること、ならびに／またはそうでなければ、分散された手法で、１つもしくは複数の第３者のサービスプロバイダからのユーザデータを集約するために、本明細書で説明される集約モジュール１０４の様々なオペレーションの１つまたは複数を実施することを行ってよい。
【００５１】
[0060]図２は、集約モジュール１０４の１つの実施形態を描写する。描写された実施形態において、集約モジュール１０４は、認証モジュール２０２、直接アクセスモジュール
２０４、およびインターフェースモジュール２０６を含む。
【００５２】
[0061]１つの実施形態において、認証モジュール２０２は、ユーザのハードウェアデバイス１０２上で、第３者のサービスプロバイダ１０８に対するユーザの電子認証情報をユーザから受信する。さらなる実施形態において、認証モジュール２０２は、（例えば、異なるハードウェアデバイス１０２から、バックエンド集約モジュール１０４から、または同様のものから）異なるユーザの電子認証情報を受信してよく、これは、暗号化され、および／またはそうでなければセキュアにされることがあり、その結果、直接アクセスモジュール２０４は、異なるユーザのデータをダウンロードしてよい（例えば、単一のユーザのハードウェアデバイス１０２から複数のユーザのデータをダウンロードする）。
【００５３】
[0062]例えば、分散された／非集中化されたシステム１００において、１つのユーザのハードウェアデバイス１０２が、切られている、スリープ中、電池切れ、第３者のサービスプロバイダ１０８によってブロックされている、または同様の状態である場合、一定の実施形態において、異なるユーザのハードウェアデバイス１０２上のおよび／またはバックエンドサーバ１１０上の集約モジュール２０２は、１つのユーザの電子認証情報を使用して１つのユーザのデータをダウンロードしてよく、１つのユーザのハードウェアデバイス１０２にデータを送信すること、１つのユーザのハードウェアデバイス１０２にアラートおよび／もしくはプッシュ通知を送信すること、または同様のことを行ってよい。この手法で、１つの実施形態において、ユーザは、たとえユーザ自身のハードウェアデバイス１０２がブロックされている、利用不可能である、または同様の状態であるとしても、データを集約すること、アラートおよび／もしくはプッシュ通知を受信すること、または同様のことを継続してよい。一定の実施形態において、１つまたは複数の認証モジュール２０２と協働して、集約モジュール１０４ａ、１０４ｂは、セキュアなおよび／もしくは暗号化されたプロトコルを使用して互いに通信してよく、ならびに／またはセキュアなおよび／もしくは暗号化された手法で電子認証情報を格納してよく、その結果、別のユーザの電子認証情報、ダウンロードデータ、または他のプライベートデータおよび／もしくは機密データを見ることおよび／またはこれらにアクセスすることを、ユーザが行うことはない。
【００５４】
[0063]集約モジュール１０４がハードウェア（例えば、ＦＰＧＡ、ＡＳＩＣ、または同様のものなどの半導体集積回路デバイス）を含む場合の実施形態において、認証モジュール２０２は、セキュアでないバス、もしくは暗号キーを格納するストレージに、解読されたデータを出力しないセキュアクリプトプロセッサ（例えば、１つもしくは複数の物理的なセキュリティ対策のあるパッケージに埋め込まれたチップもしくはマイクロプロセッサ上の専用コンピュータ）、セキュアストレージデバイスなどの、電子認証情報、ダウンロードデータ、ならびに／または他の機密データおよび／もしくはプライベートデータを格納および／または処理するための専用のセキュリティハードウェア、あるいはＴＰＭチップおよび／またはＴＰＭセキュリティデバイスなどのトラステッドプラットフォームモジュール（ＴＰＭ）、あるいはセキュアブートＲＯＭまたは他のタイプのＲＯＭ、あるいは認証チップ、あるいは同様のものを含んでよい。別の実施形態において、認証モジュール２０２は、専用のセキュリティハードウェアを用いてまたは用いずに、（例えば、ＲＡＭ、ＮＡＮＤ、および／または他の汎用ストレージ内のデータを暗号化する）ユーザの既存のハードウェアデバイス１０２のソフトウェアおよび／またはハードウェアを使用して、セキュアなおよび／または暗号化された方式で、電子認証情報、ダウンロードデータ、および／または他の機密データを格納および／または処理してよい。一定の実施形態において、認証モジュール２０２は、（例えば、データネットワーク１０６または同様のもので、第１のユーザのハードウェアデバイス１０２から）第２（例えば、異なる）ユーザのハードウェアデバイス１０２によって受信され、処理され、および／または格納される、第１のユーザと関連付けられたデータ（例えば、電子認証情報、ダウンロードデータ）を暗号化しおよび／またはセキュアにしてよく、第１のユーザのデータが、異なるユーザのハードウェアデバイス１０２からダウンロードされおよび／または集約されることをさらに可能にしながら、第２のユーザが第１のユーザのデータにアクセスするのを防ぐ。
【００５５】
[0064]１つの実施形態において、上述のように、電子認証情報は、ユーザ名およびパスワード、指紋スキャン、網膜スキャン、デジタル証明書、個人識別番号（ＰＩＮ）、チャレンジレスポンス、セキュリティトークン、ハードウェアトークン、ソフトウェアトークン、ＤＮＡ配列、署名、顔認識、音声パターン認識、生体電気信号、２要素認証の認証情報、またはユーザのアイデンティティおよび／もしくはユーザの権限を、認証モジュール２０２が認証および／または検査し得る他の情報の１つまたは複数を含んでよい。
【００５６】
[0065]一定の実施形態において、認証モジュール２０２は、複数の異なる第３者のサービスプロバイダ１０８からユーザのデータを、集約モジュール１０４がダウンロードし、集約し、および／または組み合わせることができるように、異なる第３者のサービスプロバイダ１０８（例えば、異なるソーシャルネットワーク、異なる写真共有サイト、異なる金融機関）を用いて、ユーザの異なるアカウントに対するユーザからの異なる認証情報を受信してよい。１つの実施形態において、図３のパスワードマネージャモジュール３０６に関して下記に説明されるように、ユーザから１つまたは複数のパスワードまたは他の電子認証情報を受信することの代わりにおよび／またはこれらに加えて、認証モジュール２０２は、１つまたは複数の第３者のサービスプロバイダ１０８に対するユーザの１つまたは複数のパスワードまたは他の電子認証情報を管理および／または決定してよい。例えば、一定の実施形態において、認証モジュール２０２は、第３者のサービスプロバイダ１０８を用いて、ユーザのアカウントに対するユーザからの電子認証情報の初期セット（例えば、ユーザ名およびパスワード）を受信してよく、認証モジュール２０２は、電子認証情報の初期セットを使用して、第３者のサービスプロバイダ１０８を用いてユーザのアカウントにアクセスし、認証モジュール２０２によって決定された新しいパスワードをセットしてよい。１つの実施形態において、認証モジュール２０２は、ユーザによって典型的に作成されるおよび／またはユーザに記憶しやすいパスワードまたは他の電子認証情報よりセキュア（例えば、より長い、より多くの数字、大文字と小文字のより多くのバリエーション、より頻繁に変わった、または同様のもの）である、パスワードまたは他の電子認証情報を決定してよい。
【００５７】
[0066]１つの実施形態において、直接アクセスモジュール２０４は、（例えば、ハードウェアデバイス１０２と関連付けられたユーザに関する、異なるユーザに関する、または同様のものに関する）認証モジュール２０２からのユーザの電子認証情報を使用して、ユーザのハードウェアデバイス１０２から、および／またはバックエンドサーバ１１０から、１つまたは複数の第３者のサービスプロバイダ１０８の１つまたは複数のサーバ１０８にアクセスする。一定の実施形態において、直接アクセスモジュール２０４は、１つまたは複数の第３者のサービスプロバイダ１０８の１つまたは複数のサーバ１０８から、ユーザと関連付けられたデータ（例えば、ユーザのソーシャルメディアの投稿、ユーザの写真、ユーザの金融取引、または同様のもの）を、（例えば、ダウンロードデータと関連付けられたユーザの、またはダウンロードデータを処理するために、および／もしくはダウンロードデータと関連付けられたユーザのハードウェアデバイス１０２に伝達するために異なるユーザの、または同様のものの）ユーザのハードウェアデバイス１０２に、ならびに／あるいは（例えば、ユーザのハードウェアデバイス１０２の可用性に基づいて、または第２の場所にデータをバックアップするために、または同様のもののために）ユーザのハードウェアデバイス１０２に、データを直接ダウンロードすることの代わりにまたはこれらに加えて、直接アクセスモジュール２０４と関連付けられたバックエンドサーバ１１０に、ダウンロードする。
【００５８】
[0067]一定の実施形態において、直接アクセスモジュール２０４は、第３者のサービスプロバイダ１０８のサーバ１０８のウェブページのインターフェースを使用し、ユーザの電子認証情報を使用してサーバ１０８にアクセスすること、および／またはユーザと関連付けられたデータをダウンロードすることを行ってよい。一定の実施形態において、例えば、直接アクセスモジュール２０４は、第３者のサービスプロバイダ１０８のサーバ１０８からウェブページをダウンロード／ロードすること、ウェブページ上のフォーム内のテキストボックスに、ユーザのユーザ名およびパスワードもしくは他の電子認証情報をエンターすること、サブミットボタンもしくはウェブページの他のインターフェースエレメントを使用して、ユーザ名およびパスワードもしくは他の電子認証情報をサブミットすること、ならびに／またはそうでなければ、サーバ１０８上のユーザと関連付けられたデータへの権限付与されたアクセスを得るためにウェブサイトを使用して電子認証情報をサブミットすることを行ってよい。下記に説明されるように、パターンモジュール３０８は、直接アクセスモジュール２０４がサーバ１０８にアクセスするのを可能にする命令（例えば、電子認証情報をサブミットするための場所もしくは方法、または同様のもの）を受信および／または提供してよい。
【００５９】
[0068]ユーザの電子認証情報で第３者のサービスプロバイダ１０８のサーバ１０８を用いて正常に認証すること、およびユーザの電子認証情報で第３者のサービスプロバイダ１０８のサーバ１０８に正常にアクセスすることに応答して、直接アクセスモジュール２０４は、ユーザと関連付けられたハードウェアデバイス１０２に、バックエンドサーバ１１０に、ユーザの代理でデータをダウンロードする別のユーザのハードウェアデバイス１０２に、または同様のものに、（例えば、ユーザのアカウントまたは同様のものからの）ユーザと関連付けられたデータを、サーバ１０８からダウンロードしてよい。一定の実施形態において、下記に説明されるように、パターンモジュール３０８は、第３者のサービスプロバイダ１０８のサーバ１０８からユーザと関連付けられたデータを、直接アクセスモジュール２０４がダウンロードすることを可能にする命令（例えば、ＵＲＬもしくはデータの場所への他のリンク、１つもしくは複数のウェブページもしくは他のデータ構造の内部にデータを配置するためのラベルもしくは他の識別子、または同様のもの）を受信および／または提供してよい。一定の実施形態において、直接アクセスモジュール２０４は、パターンモジュール３０８からの命令に従い、スクリーンスクレイピングの手法で、サーバ１０８からの１つまたは複数のウェブページからデータを認証しおよび／またはアクセスしてよく、１つまたは複数のウェブページを解析してエントリ場所を配置することおよび／もしくは電子認証情報をサブミットすること、ユーザと関連付けられたデータを検索、ダウンロード、および／もしくは抽出すること、または同様のことを行う。
【００６０】
[0069]１つの実施形態において、直接アクセスモジュール２０４は、電子認証情報を送信もしくはそうでなければサブミットし、および／または第３者のサービスプロバイダ１０８のサーバ１０８のＡＰＩもしくは他のアクセスプロトコルを使用して、データを受信しまたはそうでなければダウンロードする。例えば、直接アクセスモジュール２０４は、第３者のサービスプロバイダ１０８のサーバ１０８（例えば、ＡＰＩサーバ１０８）によって明示された、および／またはサーバ１０８と互換性のあるフォーマットでリクエストを送信してよい。送信されたリクエストは、ユーザの電子認証情報もしくはその一部（例えば、ユーザ名および／もしくはパスワード）を含んでよく、後続のリクエストは、（例えば、第１のリクエストに対するサーバ１０８からの肯定応答を受信すること、もしくは同様のものに応答して）ユーザの電子認証情報もしくはその一部を含んでよく、ならびに／または直接アクセスモジュール２０４は、サーバ１０８の異なるアクセスプロトコルを使用してよい。
【００６１】
[0070]直接アクセスモジュール２０４からのデータのリクエストに応答して（例えば、直接アクセスモジュール２０４が、サーバ１０８のアクセスプロトコルを使用してユーザ
を認証するのに応答して）、第３者のサービスプロバイダ１０８のサーバ１０８は、（例えば、１つもしくは複数のメッセージ、パケット、ペイロードの中で、または直接アクセスモジュール２０４がデータを取り出してよい場所へのＵＲＬもしくは他のポインタとして、または同様のもので）ユーザと関連付けられたデータを送信および／または返送してよい。様々な実施形態において、直接アクセスモジュール２０４は、データネットワーク１０６で第３者のサービスプロバイダ１０８のサーバ１０８から、ユーザと関連付けられたデータを直接的に受信してよく、第３者のサービスプロバイダ１０８のサーバ１０８から、ユーザと関連付けられたデータの場所へのポインタ、ＵＲＬ、もしくは他のリンクを受信してよく、（例えば、第３者のサービスプロバイダ１０８のサーバ１０８から他のエンティティもしくは同様のものへのリクエストに応答して）データネットワーク１０６上の別のエンティティから、ユーザと関連付けられたデータを受信してよく、またはそうでなければ第３者のサービスプロバイダ１０８のアクセスプロトコルに従って、ユーザと関連付けられたデータを受信してよい。
【００６２】
[0071]１つの実施形態において、第３者のサービスプロバイダ１０８は、直接アクセスモジュール２０４にＡＰＩまたは他のアクセスプロトコルを提供する。さらなる実施形態において、直接アクセスモジュール２０４は、第３者のサービスプロバイダ１０８のアプリケーション（例えば、モバイルアプリケーション）のためのラッパー、および／またはアプリケーションのプラグインもしくは拡張として作用することがあり、アプリケーションは、第３者のサービスプロバイダ１０８のＡＰＩまたは他のアクセスプロトコルにアクセスできることがある。別の実施形態において、直接アクセスモジュール２０４は、第３者のサービスプロバイダ１０８のアプリケーションまたは同様のものの観察を通じて、第３者のサービスプロバイダ１０８のアプリケーション（例えば、モバイルアプリケーション）として、同じ手法で、ＡＰＩまたは他のアクセスプロトコルを使用するように構成されてよい。一定の実施形態において、直接アクセスモジュール２０４は、第３者のサービスプロバイダ１０８のアプリケーション、第３者のサービスプロバイダ１０８のサービスにユーザがアクセスするウェブブラウザ、または同様のものと協働して、（例えば、アプリケーションおよび／もしくはユーザによって既にダウンロードされたデータにアクセスすること、アプリケーションおよび／もしくはウェブブラウザのデータベースもしくは他のデータストアにアクセスすること、ユーザがウェブページにアクセスするように第３者のサービスプロバイダ１０８のウェブページをスキャンおよび／もしくはスクリーンスクレイピングすること、または同様のことを行って）ユーザと関連付けられたデータにアクセスしてよい。
【００６３】
[0072]一定の実施形態において、直接アクセスモジュール２０４は、異なる手法で、異なる第３者のサービスプロバイダ１０８にアクセスしてよい。例えば、第１の第３者のサービスプロバイダ１０８は、直接アクセスモジュール２０４にＡＰＩまたは他のアクセスプロトコルへのアクセスを認めることがある一方、ウェブページのインターフェース（例えば、スクリーンスクレイピング）を使用して、第２の第３者のサービスプロバイダ１０８からのデータに、直接アクセスモジュール２０４がアクセスし、ダウンロードすること、または同様のことを行うことがある。１つの実施形態において、リモートバックエンドサーバ１１０は、第１者のサービスプロバイダ１１０（例えば、集約モジュール１０４のベンダおよび／またはプロバイダ）と関連付けられてよく、直接アクセスモジュール２０４は、第１者のサービスプロバイダ１１０と１つまたは複数の第３者のサービスプロバイダ１０８の両方から、ユーザと関連付けられたデータをダウンロードしてよく、単一のインターフェースおよび／またはアプリケーション内で、ユーザがデータにアクセスできるようにデータを一緒に集約する。例えば、インターフェースモジュール２０６に関して下記に説明されるように、インターフェースモジュール２０６は、単一の写真アプリケーションの内部で複数の第３者のクラウドストレージプロバイダ１０８からのユーザの写真へのアクセスをユーザに提供すること、単一の個人的な財務管理アプリケーションおよび／もしくはオンライン銀行取引アプリケーションの内部でユーザの個人的な財務情報へのアクセスをユーザに提供すること、単一のソーシャルネットワーキングアプリケーションの内部で複数のソーシャルネットワークからの投稿へのアクセスをユーザに提供すること、または同様のことを行ってよい。
【００６４】
[0073]一定の実施形態において、直接アクセスモジュール２０４は、１つまたは複数の第３者のサービスプロバイダ１０８からのダウンロードされたおよび／または集約されたデータを非従属的に格納してよい。例えば、直接アクセスモジュール２０４は、ユーザのハードウェアデバイス１０２、ユーザによってアクセス可能なバックエンドサーバ１１０、または同様のものに、ユーザのダウンロードされたおよび／または集約されたデータを格納してよい。一定の実施形態において、この手法で、たとえ第３者のサービスプロバイダ１０８が閉鎖しているか、もしくは利用可能でなくても、ユーザのデータを制御することおよび／もしくはユーザのデータにアクセスすること、またはたとえ第３者のサービスプロバイダ１０８によって使用がサポートされていなくても、ユーザよって望まれるあらゆる手法でユーザのデータを使用すること、または同様のことを、ユーザは行ってよい。
【００６５】
[0074]１つの実施形態において、１つまたは複数の第３者のサービスプロバイダ１０８からデータをダウンロードすることに加えておよび／またはこの代わりに、直接アクセスモジュール２０４は、ユーザ入力または同様のものに応答して、１つまたは複数の第３者のサービスプロバイダ１０８の１つまたは複数の環境にデータをアップロードし、および／または環境を変更してよい。例えば、データが写真を含む実施形態において、直接アクセスモジュール２０４は、ユーザのハードウェアデバイス１０２から１つまたは複数の第３者のサービスプロバイダ１１０に、写真（例えば、ハードウェアデバイス１０２または同様のものでユーザが編集したダウンロードされた写真）をアップロードしてよい。データがソーシャルメディアの投稿または他のコンテンツを含む実施形態において、直接アクセスモジュール２０４は、ユーザからの入力（例えば、写真、テキストの投稿、１つもしくは複数の絵文字、ビデオ、ドキュメントもしくは他のファイル、または同様のもの）を受信し、１つまたは複数の第３者のサービスプロバイダ１０８（例えば、ソーシャルメディアサイトまたは同様のもの）に受信された入力をアップロードしてよい。データが金融取引または他の金融のデータを含む実施形態において、直接アクセスモジュール２０４は、請求書の支払いもしくは他の支払いもしくは資金移動をスケジュールすること、（例えば、小切手の前面および／もしくは裏面の写真をアップロードすること、または同様のことを行うことによって）小切手をリモートに預金すること、ならびに／あるいは別のアクションを実施することを行ってよい。
【００６６】
[0075]直接アクセスモジュール２０４は、アカウントタイプもしくは計画、クレジットカードもしくはアカウントと関連付けられた他の支払情報、アカウントと関連付けられた電話番号もしくは住所もしくは他の連絡先情報、アカウントのパスワードもしくは他の電子認証情報、および／または第３者のサービスプロバイダ１０８に対するユーザの他のアカウント情報などの、第３者のサービスプロバイダ１０８に関するユーザのアカウント情報を更新または変更してよい。直接アクセスモジュール２０４は、（例えば、第３者のサービスプロバイダ１０８に対するユーザの電子認証情報を決定すること、第３者のサービスプロバイダ１０８のサーバ１０８にアクセスすること、第３者のサービスプロバイダ１０８にデータをアップロードおよび／もしくは提供すること、または同様のことを行う、）データをダウンロードするために本明細書で説明される手法に実質的に類似の手法で、データを更新および／またはアップロードしてよい。
【００６７】
[0076]１つの実施形態において、インターフェースモジュール２０６は、（例えば、異なるユーザのハードウェアデバイス１０２によって、ユーザの１つのハードウェアデバイス１０２から同じユーザの別のハードウェアデバイス１０２に、データがダウンロードさ
れることに応答して）ダウンロードデータと関連付けられたユーザのハードウェアデバイス１０２、またはデータがダウンロードされた第３者のサービスプロバイダ１０８に加入していない（例えば、第３者のサービスプロバイダ１０８によって所有されていない、運用されていない、制御されていない、もしくは同様の状態にある）リモートサーバ１１０もしくは他のリモートデバイス１０２、または同様のものなどの別のエンティティに、ユーザの（例えば、ダウンロードデータと関連付けられたユーザの、異なるユーザの）ハードウェアデバイス１０２から、直接アクセスモジュール２０４によってダウンロードされたユーザのデータを提供する。例えば、ユーザのハードウェアデバイス１０２、バックエンド集約モジュール１０４ｂ、バックエンドサーバ１１０、異なる第３者のサービスプロバイダ１０８、ユーザの異なる／第２のハードウェアデバイス１０２、または同様のものに、ユーザのダウンロードされたおよび／または集約されたデータを提供するために、インターフェースモジュール２０６はＡＰＩまたは他のインターフェースを提供してよい。
【００６８】
[0077]一定の実施形態において、どのハードウェアデバイス１０２、１１０がユーザと関連付けられたデータをダウンロードしたかは、（例えば、明らかでない）ユーザに対して明白および／または実質的に明白であってよい。例えば、インターフェースモジュール２０６は、ユーザの１つのハードウェアデバイス１０２からユーザの別のハードウェアデバイス１０２に、またはユーザのハードウェアデバイス１０２から（例えば、ウェブブラウザ、アプリケーション、もしくは同様のものを使用して、ユーザがデータにアクセスすることがある）バックエンドサーバ１１０に、またはバックエンドサーバ１１０からユーザのハードウェアデバイス１０２に、または同様に、ユーザと関連付けられたダウンロードデータを提供してよく、データがダウンロードされた先の場所とは異なる場所から、ユーザがデータにアクセスするのを可能にする。
【００６９】
[0078]一定の実施形態において、インターフェースモジュール２０６は、ユーザのハードウェアデバイス１０２上にグラフィカルユーザインターフェース（ＧＵＩ）を提供し、（例えば、ユーザがデータを直接閲覧することを可能にすること、データに基づいて１つもしくは複数の通知および／もしくは推奨をユーザに提供すること、データに基づいて１つもしくは複数のテーブルもしくはチャートをユーザに提供すること、データに関連した１つもしくは複数の統計情報の概要もしくはデータに関連した１つもしくは複数の統計情報を提供すること、または同様のことを行い、）ＧＵＩを通じてユーザと関連付けられたダウンロードデータをユーザに提供する。様々な実施形態において、インターフェースモジュール２０６は、データがダウンロードされた先の同じハードウェアデバイス１０２から、またはデータがダウンロードされた先のハードウェアデバイス１０２、１１０とは異なるハードウェアデバイス１０２上で、または同様のもので、ＧＵＩをユーザに提供してよい。
【００７０】
[0079]例えば、１つの実施形態において、ユーザと関連付けられたデータが写真を含む場合、インターフェースモジュール２０６は、写真管理インターフェース、写真編集インターフェース、または同様のものを提供してよく、ユーザは、ユーザのダウンロードされたおよび／または集約された写真を閲覧しおよび／またはそうでなければこれらにアクセスしてよい。さらなる実施形態において、ユーザと関連付けられたデータが、ユーザの金融取引履歴（例えば、銀行、信用組合、金貸し、または同様のものなどの、１つまたは複数の金融機関１０８からダウンロードされた購入品および／または他の金融取引）を含む場合、インターフェースモジュール２０６は、取引のリスト、１つもしくは複数の予算、１つもしくは複数の財政目標、負債管理インターフェース、純資産インターフェース、ならびに／あるいはユーザのダウンロードされたおよび／もしくは集約された金融取引履歴、および／またはそれらに基づくアラートもしくは推奨を、ユーザが閲覧し得る別の個人的な財務管理インターフェースを、個人的な財務管理インターフェースに提供してよい。別の実施形態において、ユーザと関連付けられたデータがソーシャルメディアの投稿を含む場合、インターフェースモジュール２０６は、（例えば、複数のソーシャルネットワーク１０８から、ユーザの異なる連絡先または友人から、または同様のものからの、ダウンロードされたおよび／または集約されたソーシャルメディアの投稿を）ユーザが閲覧するために、ストリーム、フィード、および／またはソーシャルメディアの投稿のウォールを含むＧＵＩをユーザに提供してよい。
【００７１】
[0080]一定の実施形態において、インターフェースモジュール２０６は、１つまたは複数のアクセス制御をユーザに提供してよく、どのデバイス１０２、ユーザ、第３者のサービスプロバイダ１１０、または同様のものが、どのデータにアクセスしてよいかを、ユーザが規定するのを可能にする。例えば、インターフェースモジュール２０６は、一定のモバイルアプリケーション、第３者のサービスのための一定のＡＰＩ、一定のプラグインもしくは拡張、一定のユーザ、一定のハードウェアデバイス１０２、ならびに／あるいは（例えば、第３者のサービスプロバイダ１０８もしくは他のデータソースによる、データタイプによる、アクセスをリクエストするエンティティによる、および／または別の粒度でのアクセス制御によって）１つまたは複数の第３者のサービスプロバイダ１０８からユーザのためにダウンロードされたデータにアクセスするための１つまたは複数の他のエンティティを、許容および／または制約するためにインターフェースをユーザに提供してよい。この手法で、一定の実施形態において、集約モジュール１０４は、１つまたは複数の他のデバイス１０２および／またはサービスが、ユーザの許可によってアクセスおよび使用してよい、集約されたデータのローカルリポジトリを含んでよい。
【００７２】
[0081]図３は、集約モジュール１０４の別の実施形態を描写する。描写された実施形態において、集約モジュール１０４は、認証モジュール２０２、直接アクセスモジュール２０４、およびインターフェースモジュール２０６を含み、ルートモジュール３１４、頻度モジュール３１６、およびテストモジュール３１８をさらに含む。描写された実施形態において、認証モジュール２０２は、ローカル認証モジュール３０２、ネットワーク認証モジュール３０４、およびパスワードマネージャモジュール３０６を含む。描写された実施形態において、直接アクセスモジュール２０４は、パターンモジュール３０８、アクセス修復モジュール３１０、および階層モジュール３１２を含む。
【００７３】
[0082]１つの実施形態において、ローカル認証モジュール３０２は、ダウンロードデータ、格納されたパスワード、ならびに／あるいはユーザのハードウェアデバイス１０２に伝達されたおよび／もしくはユーザのハードウェアデバイス１０２から伝達されたユーザのハードウェアデバイス１０２上の他のデータ、または同様のものへのユーザのアクセスをセキュアにしおよび／または認証する。例えば、ローカル認証モジュール３０２は、ＰＩＮ、パスワード、指紋認証、顔認識、またはハードウェアデバイス１０２にアクセスするためにユーザによって使用される他の電子認証情報などの、ユーザのハードウェアデバイス１０２の１つまたは複数のセキュリティおよび／または認証システムと協働してよい。さらなる実施形態において、ローカル認証モジュール３０２は、ダウンロードされた／集約されたデータおよび／またはアラートもしくは他のメッセージへのユーザアクセスを、インターフェースモジュール２０６が提供するのを許容する前に、ユーザを認証してよい。例えば、ローカル認証モジュール３０２は、集約モジュール１０４と関連付けられた、ユーザの電子認証情報を管理し、および／またはアクセスしてよく、集約モジュール１０４のアプリケーションおよび／またはサービスにユーザがアクセスするのに応答してユーザを認証してよい。
【００７４】
[0083]一定の実施形態において、ローカル認証モジュール３０２は、異なるユーザと関連付けられた電子認証情報および／またはダウンロードデータを、ユーザのハードウェアデバイス１０２上で暗号化および／またはそうでなければセキュアにしてよく、その結果、異なるユーザと関連付けられたデータにユーザがアクセスすることはなく、一旦、異なるユーザのハードウェアデバイス１０２、バックエンドサーバ１１０、または同様のものにデータが伝送されると、異なるユーザはデータにアクセスしてよい。異なるハードウェアデバイス１０２、１１０のローカル認証モジュール３０２は、１つのハードウェアデバイス１０２、１１０から別のハードウェアデバイス１０２、１１０に、データ（例えば、１つもしくは複数の電子認証情報、ダウンロードデータ、または同様のもの）をデータネットワーク１０６でセキュアに伝達するために協働してよい。さらなる実施形態において、ローカル認証モジュール３０２は、ユーザの電子認証情報および／またはダウンロードデータが、単一のハードウェアデバイス１０２上に残っていて（例えば、データネットワーク１０６上で伝送されておらず）セキュアなリポジトリまたは同様のものにあること、ならびにバックエンドサーバ１１０、別のユーザのハードウェアデバイス１０２、または同様のものに格納されておらずおよび／またはこれらにアクセス可能ではないことを保証してよい。
【００７５】
[0084]１つの実施形態において、ネットワーク認証モジュール３０４は、ユーザのハードウェアデバイス１０２、バックエンドサーバ１１０、または同様のもので、１つまたは複数の第３者のサービスプロバイダ１０８に対するユーザの電子認証情報を受信および／または格納する。様々な実施形態において、ネットワーク認証モジュール３０４は、ユーザ、ユーザのハードウェアデバイス１０２、バックエンドサーバ１１０、または同様のものから、ユーザの電子認証情報を受信してよい。ネットワーク認証モジュール３０４は、直接アクセスモジュール２０４と協働して、ユーザの電子認証情報を第３者のサービスプロバイダ１０８のサーバ１０８に提供してよい（例えば、ネットワーク認証モジュール３０４は、サーバ１０８に提供するために、電子認証情報を直接アクセスモジュール２０４に提供してよい、ネットワーク認証モジュール３０４は、電子認証情報をサーバ１０８に直接提供してよい、または同様のもの）。
【００７６】
[0085]一定の実施形態において、ネットワーク認証モジュール３０４は、第３者のサービスプロバイダ１０８のサーバ１０８、または同様のものに提供されている間、ローカル認証モジュール３０２と協働して、ユーザのハードウェアデバイス１０２上で、データネットワーク１０６上で、異なるユーザのハードウェアデバイス１０２上で、バックエンドサーバ１１０上で、１つまたは複数の第３者のサービスプロバイダ１０８に対するユーザの電子認証情報を暗号化および／またはそうでなければセキュアにしてよい。さらなる実施形態において、ネットワーク認証モジュール３０４は、ユーザの電子認証情報が、ユーザのハードウェアデバイス１０２に格納され、ユーザのハードウェアデバイス１０２から第３者のサービスプロバイダ１０８のサーバ１０８に送信されるだけであること、およびバックエンドサーバ１１０、異なるユーザのハードウェアデバイス１０２、または同様のものに、ユーザの電子認証情報を格納しないことを保証する。別の実施形態において、ネットワーク認証モジュール３０４は、バックエンドサーバ１１０、異なるユーザのハードウェアデバイス１０２、または同様のものに、第３者のサービスプロバイダ１０８に対するユーザの電子認証情報を（例えば、セキュア暗号化を使用して）セキュアに格納してよく、その結果、ルートモジュール３１４に関して下記に説明されるように、たとえユーザのハードウェアデバイス１０２が利用不可能である、ブロックされている、または同様の状態であっても、直接アクセスモジュール２０４は、ユーザと関連付けられたデータにアクセスし、および／またはダウンロードしてよい。一定の実施形態において、異なるユーザのハードウェアデバイス１０２、バックエンドサーバ１１０、または同様のものに、電子認証情報が送信されることおよび／またはこれらよって格納されることを、ネットワーク認証モジュール３０４および／またはローカル認証モジュール３０２が許容するかどうかは、ユーザ入力に基づいて規定される環境に基づいてよく、その結果、ユーザは、セキュリティのレベル、または同様のものを判定してよい。
【００７７】
[0086]１つの実施形態において、パスワードマネージャモジュール３０６は、複数の第
３者のサービスプロバイダ１０８に対するユーザの電子認証情報を管理および／または格納してよく、その結果、直接アクセスモジュール２０４は、複数の第３者のサービスプロバイダ１０８のそれぞれからユーザと関連付けられたデータに、アクセスしおよび／またはダウンロードしてよい。一定の実施形態において、パスワードマネージャモジュール３０６は、複数の第３者のサービスプロバイダ１０８のそれぞれに対する異なるセキュアな認証情報を、生成および／またはそうでなければ管理してよい。
【００７８】
[0087]１つの実施形態において、パスワードマネージャモジュール３０６は、ユーザのハードウェアデバイス１０２上にユーザの生成された認証情報をセキュアに格納してよく、その結果、ユーザは、生成された電子認証情報を覚えて、エンターする必要はない。例えば、生成された電子認証情報を使用して、直接アクセスモジュール２０４が第３者のサービスプロバイダ１０８にアクセスすることを許容することに加えて、パスワードマネージャモジュール３０６は、電子認証情報をユーザが手動でエンターすることなく、ウェブブラウザ内のウェブページまたは同様のものをユーザが訪れるのに応答して、ウェブページ上のフォームの１つまたは複数のインターフェースエレメントに、ユーザの電子認証情報（例えば、ユーザ名、パスワード）を自動的にポピュレートしてよい。一定の実施形態において、パスワードマネージャモジュール３０６は、ユーザリクエストに応答して、第３者のサービスプロバイダ１０８からのリクエストに応答して、および／または別の時間周期で、もしくは別の周期的なトリガに応答して、毎週、毎月、２か月毎、３か月毎、４か月毎、５か月毎、６か月毎、毎年、２年毎など、ユーザの電子認証情報を周期的に更新してよい（例えば、異なるパスワードなどの異なる認証情報を再生成し、第３者のサービスプロバイダ１０８に関するユーザのアカウントを、再生成された異なる認証情報で更新してよい）。
【００７９】
[0088]１つの実施形態において、パスワードマネージャモジュール３０６は、ユーザの異なるハードウェアデバイス１０２、ウェブブラウザ、または同様のものを跨って、（例えば、ユーザによって提供された、パスワードマネージャモジュール３０６によって生成された、または同様のものによる）ユーザの電子認証情報を同期してよい。例えば、パスワードマネージャモジュール３０６に応答して、および／またはユーザが電子認証情報を更新またはそうでなければ変更させることに応答して、パスワードマネージャモジュール３０６は、１つもしくは複数の他のパスワードマネージャモジュール３０６に、ユーザの異なるハードウェアデバイス１０２上に、または同様のものに、更新／変更を伝播させてよい。
【００８０】
[0089]１つの実施形態において、パターンモジュール３０８は、（例えば、ユーザのデータが格納されるおよび／もしくはアクセス可能なところ以外の場所を含み得る）サーバに、直接アクセスモジュール２０４がアクセスするための、第３者のサービスプロバイダ１０８の１つもしくは複数のサーバ１０８の複数の場所の順序付きリスト（例えば、パターン、スクリプト、もしくは同様のもの）、ならびに／またはサーバ１０８上の場所にアクセスする間に、直接アクセスモジュール２０４が待機するための１つもしくは複数の遅延、ならびに／またはサーバのデータにアクセスするためのアクセスパターンの他の構成要素を決定する。一定の実施形態において、場所は、ウェブページ、ウェブページの一部、画像もしくは他のデータファイル、データベースもしくは他のデータストア、モバイルアプリケーションのページもしくはセクション、または同様のものなどの、第３者のサービスプロバイダ１０８の１つもしくは複数のサーバ、または同様のものによって提供される、対処可能なおよび／またはアクセス可能な、コンテンツおよび／または資産を非従属的に含む。１つの実施形態において、パターンモジュール３０８は、所望のデータをダウンロードするために、直接アクセスモジュール２０４がアクセスまたは使用する必要がない１つまたは複数の場所および／または遅延を収めるパターン／順序付きリストを決定するが、その代わり、パターン／順序付きリストは、第３者のサービスプロバイダ１０８のサーバにアクセスする直接アクセスモジュール２０４と、第３者のサービスプロバイダのサーバにアクセスするユーザを、第３者のサービスプロバイダ１０８が区別するのを、困難または不可能にすることがある。
【００８１】
[0090]１つの実施形態において、パターンモジュール３０８は、ウェブブラウザ、モバイルアプリケーション、または同様のものを使用して、第３者のサービスプロバイダ１０８にアクセスする複数のユーザの行動の中でまたは行動に基づいて識別された平均パターンまたは組み合わされたパターンに基づいて、複数の場所および／または１つもしくは複数の遅延（例えば、パターン／順序付きリスト）を、決定および／または選択してよい。１つの実施形態において、パターンモジュール３０８は、１人または複数のユーザが第３者のサービスプロバイダ１０８のサーバにアクセスするときに、（例えば、所定の時間帯または同様のものの間、）１人または複数のユーザを監視してよく、どのリンク、データ、ウェブページ、および／もしくは他の場所を１人もしくは複数のユーザがアクセスするか、どの程度長く１人もしくは複数のユーザが異なる場所にアクセスするか、１人もしくは複数のユーザが場所をアクセスする順序、または同様のものを追跡する。一定の実施形態において、１人または複数の監視されるユーザは、第３者のサービスプロバイダ１０８のサーバにアクセスするのに使用するために、より現実的なアクセスパターンを直接アクセスモジュール２０４に提供するために、ユーザのアクセスを一時的にまたは永久に監視する権限をパターンモジュール３０８に提供したボランティアであってよい。
【００８２】
[0091]さらなる実施形態において、パターンモジュール３０８は、ウェブブラウザ、モバイルアプリケーションもしくはデスクトップアプリケーション、またはユーザのハードウェアデバイス１０２の他のインターフェースを使用して第３者のサービスにアクセスする、パターンモジュール３０８が据え付けられたハードウェアデバイス１０２と関連付けられたユーザの行動の中で識別されたパターンに基づいて、複数の場所および／または異なる場所にアクセスする間の１つまたは複数の遅延を決定および／または選択する。例えば、パターンモジュール３０８は、ユーザのハードウェアデバイス１０２のネットワークハードウェア（例えば、データおよび／または第３者のサービスプロバイダ１０８のサーバとの対話を監視するために、データネットワーク１０６と通信状態にある、ネットワークアクセスカードおよび／もしくはチップ、プロセッサ、ＦＰＧＡ、ＡＳＩＣ、または同様のもの）、ウェブブラウザのプラグインまたは拡張、ユーザのハードウェアデバイス１０２のプロセッサ上で実行させるモバイルアプリケーションおよび／またはデスクトップアプリケーション、あるいは同様のものを含んでよい。ユーザのハードウェアデバイス１０２から、１つまたは複数の第３者のサービスプロバイダ１０８の１つまたは複数のサーバに関してユーザの活動を監視するために、パターンモジュール３０８は、ユーザから権限をリクエストおよび受信してよい。
【００８３】
[0092]一定の実施形態において、パターンモジュール３０８は、１人または複数のユーザまたは同様のもののアクセスパターンの検出された変更に基づいて、パターン／順序付きリストを時とともに更新してよい。１つの実施形態において、パターンモジュール３０８は、下記に説明されるアクセス修復モジュール３１０と協調および／または協働して、第３者のサービスプロバイダ１０８のサーバ１０８および／またはユーザと関連付けられたデータが、壊れた状態になるおよび／またはアクセス不能になることに応答して、パターン／順序付きリストを更新してよい。
【００８４】
[0093]１つの実施形態において、アクセス修復モジュール３１０は、第３者のサービス１０８のサーバ１０８および／またはユーザと関連付けられたデータへのアクセスが、壊れているおよび／またはアクセス不能になることを検出する。一定の実施形態において、アクセス修復モジュール３１０は、インターフェースをユーザに提供し、ユーザの電子認証情報の入力場所、ユーザと関連付けられたデータの場所、または同様のものを、ユーザ
がグラフィカルに識別することを可能にする。例えば、アクセス修復モジュール３１０は、ＧＵＩ、コマンドラインインターフェース（ＣＬＩ）、ＡＰＩ、および／もしくは電子認証情報の入力場所、電子認証情報をサブミットするためのアクション、データの場所、または同様のものを、エンドユーザが識別することを可能にする別のインターフェースを提供してよい。１つの実施形態において、アクセス修復モジュール３１０は、ユーザのハードウェアデバイス１０２上でユーザにインターフェースを提供する。
【００８５】
[0094]例えば、一定の実施形態において、アクセス修復モジュール３１０は、図５Ａ〜図５Ｂに関して以下により詳細に説明されるように、ユーザのハードウェアデバイス１０２の電子ディスプレイ画面上の、第３者のサービスプロバイダ１０８のウェブサイトの１つまたは複数のページにインターフェースを被せてよい。アクセス修復モジュール３１０は、１つまたは複数のインターフェース（例えば、ＧＵＩ、ＣＬＩ、ＡＰＩ、オーバレイ、または同様のもの）を複数のユーザに提供してよく、（例えば、分散されたおよび／または非集中化された手法で、異なるハードウェアデバイス１０２または同様のものから、ネットワーク１０６で）第３者のサービスプロバイダ１０８のサーバへのアクセスに対する修復および／または更新を、複数のユーザが規定することを可能にする。
【００８６】
[0095]一定の実施形態において、アクセス修復モジュール３１０は、（例えば、基本的なインターフェース、標準的なインターフェース、冒頭のユーザインターフェース、または同様のものにおいて）確認または変更／訂正のどちらかをユーザが行ってよい、ユーザに対する１つまたは複数の候補５０４および／または推奨５０４を、決定および／または表示してよい。例えば、アクセス修復モジュール３１０は、ユーザがユーザ名をエンターする示唆された場所、ユーザがパスワードをエンターする示唆された場所、示唆された認証情報サブミットアクション、ユーザと関連付けられたデータの示唆された場所を伴う１つもしくは複数のインターフェースエレメント、および／または第３者のサービスプロバイダ１０８のウェブサイトの内部の１つもしくは複数の場所を、ユーザがグラフィカルに識別することを可能にする１つまたは複数の他のインターフェースエレメントを表示してよい。
【００８７】
[0096]一定の実施形態において、アクセス修復モジュール３１０は、サーバ１０８の１つまたは複数のページおよび／またはサーバ１０８上の他の場所（例えば、１つもしくは複数のウェブサイト、ウェブアプリ、または同様のもの）を処理し、ユーザの電子認証情報の入力場所、ユーザの電子認証情報をサブミットするためのアクション、ユーザと関連付けられたデータの場所、または同様のものの推定および／または予測を決定する。１つの実施形態において、アクセス修復モジュール３１０は、（例えば、ウェブサイトの１つもしくは複数のページにアクセスする他のユーザからの入力に基づいて、ウェブサイトの１つもしくは複数のページとのユーザの以前の対話、ウェブサイトの機械学習および／もしくは人工知能分析を使用してなされた予測に基づいて、ウェブサイトのおよび／または１つもしくは複数の類似のウェブサイトの１つまたは複数のページに対する履歴上の変更の統計的解析に基づいて、あるいは同様のものに基づいて、ウェブサイトの１つまたは複数のページをスキャンすることおよび／または解析することによって）１つまたは複数の場所および／またはアクションを推定してよい。アクセス修復モジュール３１０は、インターフェースを使用して推定および／または予測が正しいかどうかをユーザが確認できるように、ユーザの電子認証情報の入力場所、ユーザと関連付けられたデータの場所、または同様のものの、推定および／または予測をインターフェース内でユーザに表示してよい。
【００８８】
[0097]アクセス修復モジュール３１０は、場所への矢印もしくは他のポインタで、場所のリンクもしくは他の識別子で、ボックスもしくは場所周辺の他の強調で、テキストを太字、イタリック体、および／もしくは下線付きにして場所に対するテキストのラベル付け
を変えることによって、または同様のもので、１つまたは複数の推定される場所および／またはアクションを示してよい。一定の実施形態において、ユーザは、場所をクリック、選択、またはそうでなければ識別して、アクセス修復モジュール３１０によって示唆された場所を確認または変更／訂正のどちらかを行ってよい。例えば、ユーザは、場所および／またはアクションと関連付けられたインターフェースエレメントをクリックまたはそうでなければ選択することがあり、ならびに場所をクリックもしくはそうでなければ選択し、および／またはアクションを実施することがあり、これらをアクセス修復モジュール３１０は、（例えば、異なるユーザのために、場所および／またはアクションを識別するテキストフィールドを自動的にポピュレートすること、ユーザなしにアクションが自動的に繰り返されるのを可能にするマクロを記録すること、または同様のことを行って）記録してよい。
【００８９】
[0098]一定の実施形態において、標準的な、基本的な、または冒頭のユーザインターフェースの代わりにまたはこれらに加えて、アクセス修復モジュール３１０は、ウェブサイトのソースコードおよび／またはウェブサイトの他の詳細を伴う先進的なインターフェースを、熟練したユーザまたは同様のものに提供してよい。例えば、１つの実施形態において、先進的なアクセス修復インターフェースは、ウェブサイト自体の中の、可視でなくおよび／または容易に明らかでない、ウェブサイトのソースコードの内部で１つまたは複数の場所および／またはアクションを、１つまたは複数の先進的なユーザが識別することを可能にしてよい。一定の実施形態において、アクセス修復モジュール３１０は、標準的なユーザインターフェースまたはビューか、先進的なユーザインターフェースまたはビューかを、ユーザが選択することおよび／または切り替えることを可能にするユーザインターフェースエレメントを提供してよい。
【００９０】
[0099]１つの実施形態において、テストモジュール３１８は、アクセス修復モジュール３１０と協働して、ユーザからの１つまたは複数の受信された場所および／または命令が正確であるかどうか（例えば、第３者のサービスプロバイダ１０８のサーバからデータにアクセスするのに使用できるかどうか）を照合する。一定の実施形態において、テストモジュール３１８は、異なるユーザまたは同様のものの電子認証情報を使用して、アクセス修復モジュール３１０が単一のユーザから受信した識別に基づいて、複数の異なるユーザ（例えば、サンプルグループまたはテストセット）に対して、第３者のサービスプロバイダ１０８のサーバ１０８にアクセスしようと試みる。
【００９１】
[0100]一定の実施形態において、テストモジュール３１８は、単一のユーザからの識別を使用して異なるユーザ（例えば、サンプルグループまたはテストセット）と関連付けられたデータが、アクセス可能であるかどうかを決定する。アクセス修復モジュール３１０が（例えば、異なるハードウェアデバイス１０２上で）異なるユーザから受信した（および、データネットワーク１０６で単一のハードウェアデバイス１０２上のテストモジュール３１８に送信された、データネットワーク１０６で異なるハードウェアデバイス１０２上の複数のテストモジュール３１８に送信された、中心のバックエンドサーバ１１０上のテストモジュール３１８に送信された、または同様のものの）識別を使用して、テストモジュール３１８は、第３者のサービスプロバイダ１０８からのデータに繰り返しアクセスしようと試みることがある。
【００９２】
[0101]１つの実施形態において、テストモジュール３１８は、単一のユーザからの識別を使用してデータがアクセス可能である、かなりの量の異なるユーザ（例えば、サンプルグループまたはテストセット）が閾値を満足することに応答して、第３者のサービスプロバイダ１０８のサーバ１０８にアクセスするために、ユーザからの１つまたは複数の識別を直接アクセスモジュール２０４の他のインスタンス（例えば、他のテストモジュール３１８）に提供する。例えば、事前定義された数の他のテストユーザ（例えば、２ユーザ、１０ユーザ、１００ユーザ、１０００ユーザ、テストユーザの５０％、テストユーザの７５％、および／または別の事前定義された閾値の数のテストユーザ）が第３者のサービスプロバイダ１０８からテストユーザのデータにアクセスすることを、単一のユーザからの識別が正常に可能にする場合、テストモジュール３１８は、より多くのユーザ（例えば、すべての、もしくは実質的にすべてのユーザ、または同様のもの）に対する識別に基づいて、命令を提供してよい。
【００９３】
[0102]一定の実施形態において、テストモジュール３１８は、単一のユーザからの識別を使用して、第３者のサービスプロバイダ１０８からユーザのデータにアクセスするための命令を、テストモジュール３１８が提供する多くのユーザを含むテストサイズを連続的に増加させてよい（例えば、１つまたは複数のテストユーザで開始し、２以上、３以上、４以上、５以上、１０以上、２０以上、３０以上、４０以上、５０以上、１００以上、５００以上、１０００以上、５０００以上、１００００以上、１０００００以上、１００００００以上、および／または他の連続的に増加する数のテストユーザに増加させる）。１つの実施形態において、テストモジュール３１８は、階層モジュール３１２に関して下記でより詳細に説明されるように、第３者のサービスプロバイダ１０８のサーバ１０８にアクセスするための命令の複数の異なるセットの順序付きリスト内の単一のユーザからの識別に基づく命令を含む。
【００９４】
[0103]一定の実施形態において、テストモジュール３１８は、１人または複数のユーザの１つまたは複数の信頼ファクタ（例えば、採点または同様のもの）に基づいて、１人または複数のユーザからの識別に優先順位をつけるように構成される。１つの実施形態において、信頼ファクタは、ユーザの識別が正しいという可能性を示す採点または他のメタデータを含んでよい。例えば、様々な実施形態において、信頼ファクタは、（例えば、正しいもしくは正しくない）ユーザの以前の識別の履歴、１つもしくは複数の集約モジュール１０４のプロバイダ（例えば、製作者、ベンダ、所有者、売り手、転売人、製造業者、バックエンドサーバ１１０、もしくは同様のもの）へのユーザの加入、他のユーザからの肯定的な指標および／もしくは否定的な指標（例えば、投票、いいね！、使用、フィードバック、星、支持、もしくは同様のもの）、ならびに／またはユーザの識別が正しいと思われるかどうかの他の指標の１つまたは複数を含んでよくおよび／またはこれらに基づいてよい。テストモジュール３１８は、ユーザと関連付けられた１つまたは複数の信頼ファクタに基づいて、ユーザの識別をどれだけの他のユーザに提供するかを決定してよい（例えば、より高い信頼ファクタに応じて、ユーザの識別が他のユーザに提供される割合を上げること、より低い信頼ファクタに応じて、ユーザの識別が他のユーザに提供される割合を下げること、または同様のことを行う）。
【００９５】
[0104]テストモジュール３１８は、オーバーライドインターフェースを提供し、アドミニストレータ、モデレータユーザ、または同様のものが、識別を削除すること、識別を調節および／もしくはオーバーライドすること、ユーザの信頼ファクタを調節および／もしくはオーバーライドすること、ユーザが識別を提供するのを禁止すること、ならびに／またはそうでなければユーザもしくはユーザの識別をオーバーライドすることを可能にする。様々な実施形態において、テストモジュール３１８は、アドミニストレータおよび／またはモデレータに、オーバーライドインターフェースをＧＵＩ、ＡＰＩ、ＣＬＩ、または同様のものとして提供してよい。
【００９６】
[0105]一定の実施形態において、テストモジュール３１８は、最も効果的なソリューション、または同様のもの（例えば、１人または複数のユーザからの指示に基づく命令のセット）をテストし、使用するように、１つまたは複数の集約モジュール１０４およびこれらの集約サービスに、自己解決、自己テスト、および／または漸増的に自己配置することを行わせる。
【００９７】
[0106]１つの実施形態において、階層モジュール３１２は、ユーザと関連付けられたデータ、または同様のものをダウンロードするために、ユーザの電子認証情報を使用して第３者のサービスプロバイダ１０８のサーバ１０８にアクセスするための命令の複数の異なるセットの順序付きリストを、直接アクセスモジュール２０４に提供する。一定の実施形態において、命令のそれぞれの異なるセットは、ユーザの電子認証情報をエンターする場所、ユーザの電子認証情報をサブミットするための命令、ユーザと関連付けられたデータの１つもしくは複数の場所、または同様のものを含む。
【００９８】
[0107]１つの実施形態において、階層モジュール３１２は、バックエンドサーバ１１０（例えば、バックエンドサーバ１１０のバックエンド集約モジュール１０４ｂ）から、ピアツーピアの手法で別のユーザハードウェアデバイス１０２（例えば、ユーザハードウェアデバイス１０２の集約モジュール１０４ａ）から、テストモジュール３１８から、または同様のものから、命令の１つまたは複数のセットを受信してよい。一定の実施形態において、階層モジュール３１２は、異なるユーザハードウェアデバイス１０２および／もしくはユーザによる命令の異なるセットの成功および／もしくは不成功の使用の履歴、または同様のものに基づいて、順序付きリスト（例えば、グローバルな階層順）に既にある命令の複数の異なるセットを受信してよい。１つの実施形態において、階層モジュール３１２は、（例えば、ユーザの１つまたは複数のハードウェアデバイス１０２からの）ユーザによる命令の異なるセットの成功および／または不成功の使用の履歴に基づいて、単一のユーザに対する命令の複数の異なるセットから、順序付きリストの階層（例えば、カスタムのまたは特色のある階層）を決定しおよび／または順序付きリスト作成してよい。
【００９９】
[0108]１つの実施形態において、直接アクセスモジュール１０４は、命令のセットの１つが成功であり、直接アクセスモジュール１０４が第３者のサービスプロバイダ１０８からデータにアクセスし、および／またはダウンロードできるまで、第３者のサービスプロバイダ１０８のサーバ１０８にアクセスするための命令の複数のセットの順序付きリストを通じて、リストの順序で反復してよい。１つの実施形態において、階層モジュール３１２は、命令の最近正常に使用されたセットを（例えば、試行すべき第１のセットとして）最上位に置いてよい。例えば、直接アクセスモジュール２０４が、命令のセットを使用して第３者のサービスプロバイダ１０８からデータに正常にアクセスし、および／またはダウンロードすることに応答して、ユーザのハードウェアデバイス１０２の階層モジュール３１２は、（例えば、時とともにリストの順序を調節して）第３者のサービスプロバイダ１０８にアクセスするための命令のセットをリストの最上位に置いてよい。一定の実施形態において、階層モジュール３１２は、第３者のサービスプロバイダ１０８のサーバ１０８にアクセスするための命令の複数の異なるセットの順序付きリストを、第１の順序（例えば、グローバルな順序）で受信してよく、（例えば、ユーザ／ハードウェアデバイス１０２に対して、命令のセットを使用するアクセスが成功である場合、リスト内で命令のセットを上に移動させること、ユーザ／ハードウェアデバイス１０２に対して、命令のセットを使用するアクセスが不成功である場合、リスト内で命令のセットを下に移動させること、または同様のことを行って）単一のユーザの／ハードウェアデバイス１０２の使用に基づいて、命令の異なるセットを時とともに動的に調節および／または再配列してよい。
【０１００】
[0109]一定の実施形態において、階層モジュール３１２は、（例えば、ピアツーピアの手法で他のユーザのハードウェアデバイス１０２に対して直接的に、バックエンドサーバ１１０のバックエンド集約モジュール１０４ｂで間接的に、または同様のもので）データネットワーク１０６で、別のユーザのハードウェアデバイス１０２の階層モジュール３１２によって、命令の１つまたは複数のセット、命令の複数のセットの順序付きリスト、または同様のものを共有するように構成されてよい。様々な実施形態において、異なるアカウントタイプ、異なるアカウント設定、異なる発信システム（例えば、企業買収もしくは同様のもののために、同じ第３者のサービスプロバイダ１０８の異なるユーザは、１つもしくは複数の異なる設定、異なるアクセス方法、もしくは同様のものを有することがある）、システム変更もしくはアップグレード、および／または同じ第３者のサービスプロバイダ１０８の異なるユーザのアカウント、サービス、もしくは同様のものにおける別の相違のために、命令の異なるセットは、異なるユーザに対して成功または不成功であってよい。
【０１０１】
[0110]１つの実施形態において、ルートモジュール３１４は、第３者のサービスプロバイダ１０８のサーバ１０８から、ユーザと関連付けられたデータをダウンロードするために、ユーザのハードウェアデバイス１０２が直接アクセスモジュール２０４に対して利用可能であるかどうかを決定する。一定の実施形態において、ユーザのハードウェアデバイス１０２が利用不可能であることをルートモジュール３１４が決定することに応答して、ルートモジュール３１４は、ユーザの電子認証情報を使用してリモートバックエンドサーバ１１０から第３者のサービスプロバイダ１０８のサーバ１０８にアクセスし、サーバ１０８からリモートバックエンドサーバ１１０にユーザと関連付けられたデータをダウンロードしてよい。１つの実施形態において、ルートモジュール３１４は、リモートバックエンドサーバ１１０にダウンロードされたユーザと関連付けられたデータに基づいて、ユーザのハードウェアデバイス１０２上で、１つまたは複数のアラート（例えば、第３者のサービスプロバイダ１０８からのダウンロードデータ、第３者のサービスプロバイダ１０８からのデータに基づいて決定された推奨もしくは候補、第３者のサービスプロバイダ１０８からのデータ内で検出されたイベントもしくは他のトリガに基づく通知もしくは他のアラート、または同様のもの）をユーザに提供する。
【０１０２】
[0111]一定の実施形態において、ルートモジュール３１４は、単一のユーザおよび／またはアカウントと関連付けられた複数のハードウェアデバイス１０２のリストを維持および／または格納する。ユーザおよび／またはアカウントと関連付けられた１つのハードウェアデバイス１０２が利用不可能（例えば、電源が切られている、機内モード、データネットワーク１０６に接続されていない、または同様の状態）であることを決定することに応答して、ルートモジュール３１４は、ユーザおよび／またはアカウントの異なる利用可能なハードウェアデバイス１０２から、第３者のサービスプロバイダ１０８のサーバ１０８にアクセスすること、異なる利用可能なハードウェアデバイス１０２上で１つもしくは複数の通知もしくは他のアラートを提供すること、または同様のことを行ってよい。様々な実施形態において、図４Ａ〜図４Ｃに関して下記に説明されるように、ルートモジュール３１４は、ユーザの１つもしくは複数のハードウェアデバイス１０２、異なるユーザの１つもしくは複数のハードウェアデバイス１０２、１つもしくは複数のバックエンドサーバ１１０、および／または別のハードウェアデバイスなどの複数のハードウェアデバイス間で、第３者のサービスプロバイダ１０８からユーザのデータをダウンロードするルートを、セキュアな手法で動的に指定してよい。
【０１０３】
[0112]１つの実施形態において、ルートモジュール３１４は、第３者のサービスプロバイダ１０８から同じユーザのデータを周期的にダウンロードするために、（例えば、同じユーザの、異なるユーザの、または同様のものの）複数のハードウェアデバイス１０２、１１０の間で代替または交替させてよい。例えば、データがダウンロードされる元のデバイス１０２、１１０を交替および／または代替させることは、詐欺的または不法なものとしてダウンロードすることが誤って解釈される可能性を減少させることがある。別の実施形態において、ルートモジュール３１４は、同じデバイス１０２、１１０（例えば、ユーザの主要なハードウェアデバイス１０２、バックエンドサーバ１１０、または同様のもの）からデータをダウンロードしてよく、同じデバイス１０２、１１０は、信頼されるデバイス、または同様のものとして、第３者のサービスプロバイダ１０８によって権限付与され、および／または識別されてよい。
【０１０４】
[0113]１つの実施形態において、頻度モジュール３１６は、直接アクセスモジュール２０４が第３者のサービスプロバイダ１０８のサーバ１０８にアクセスする頻度をセットする。一定の実施形態において、頻度モジュール３１６は、アクセスされる第３者のサービスプロバイダ１０８に加入していないことがあるリモートバックエンドサーバ１１０からの入力に基づいて頻度を決定し、その結果、リモートバックエンドサーバ１１０（例えば、リモートバックエンドサーバ１１０上で実行する頻度モジュール３１６）は、異なるユーザおよび／または異なるハードウェアデバイス１０２に対する複数の直接アクセスモジュール２０４のための頻度を決定する。例えば、頻度モジュール３１６は、ある時間周期内に許容された回数の閾値（例えば、１０分毎に１回、３０分毎に１回、１時間毎に１回、１日２回、１日３回、１日４回、または同様のもの）以上、単一のユーザおよび／またはハードウェアデバイス１０２が同じ第３者のサービスプロバイダ１０８にアクセスするのを制限してよい。一定の実施形態において、頻度モジュール３１６は、第３者のサービスプロバイダ１０８、または同様のものによる、サービスの不注意による拒否を防ぐために、アクセス頻度を制限する。
【０１０５】
[0114]一定の実施形態において、頻度モジュール３１６は、第３者のサービスプロバイダ１０８にユーザおよび／またはハードウェアデバイス１０２がアクセスしてよい頻度を、時とともに動的に調節してよい。例えば、頻度モジュール３１６は、複数のユーザ（例えば、すべてのユーザ、利用可能なユーザ、アクティブユーザ、または同様のもの）によるアクセスおよび／またはダウンロードを監視し、（例えば、いずれの単一の第３者のサービスプロバイダ１０８または同様のものも圧倒しないように）異なる第３者のサービスプロバイダ１０８のそれぞれに対して、トータルアクセスおよび／またはダウンロード帯域幅に、上限を定めるかまたは制限してよい。１つの実施形態において、この手法で、ユーザおよび／またはハードウェアデバイス１０２は、より少ない他のユーザおよび／またはハードウェアデバイス１０２がデータに、アクセスしおよび／またはダウンロードしているとき（例えば、低いピーク時）に、より高い頻度でデータにアクセスしおよび／またはダウンロードしてよいが、より多くの他のユーザおよび／またはハードウェアデバイス１０２が、データにアクセスしおよび／またはダウンロードしているとき（例えば、高いピーク時）に、より低い上限またはアクセス頻度に制限されてよい。
【０１０６】
[0115]さらなる実施形態において、頻度モジュール３１６は、ユーザからの入力に基づいて頻度を決定し、他のユーザおよび／またはバックエンドサーバ１１０のアクセス頻度を、ユーザが非従属的にセットすることを可能にする。頻度モジュール３１６は、１つまたは複数のハードウェアデバイス１０２を使用して、１つまたは複数の第３者のサービスプロバイダ１０８からデータをダウンロードするために、ユーザがアクセス頻度をセットおよび／または調節することを可能にする（例えば、異なる第３者のサービスプロバイダ１０８、ユーザの異なるハードウェアデバイス１０２、または同様のものに対して、ユーザが異なるアクセス頻度をセットすることを可能にする異なる設定を提供する）、ユーザインターフェース（例えば、ＧＵＩ、ＣＬＩ、ＡＰＩ、または同様のもの）を提供してよい。
【０１０７】
[0116]図４は、分散された／非集中化されたデータ集約のためのシステム４００の１つの実施形態を描写する。描写された実施形態において、システム４００は、集約モジュール１０４ａを有する単一のユーザハードウェアデバイス１０２を含む。一定の実施形態において、集約モジュール１０４ａの認証モジュール２０２は、ユーザのハードウェアデバイス１０２上で、電子ユーザ認証情報をローカルに格納しおよび／もしくは管理してよく、直接アクセスモジュール２０４は、（例えば、データネットワーク１０６で）ユーザのハードウェアデバイス１０２から１つまたは複数の第３者のサービスプロバイダ１０８に直接アクセスし、ユーザと関連付けられたデータをユーザのハードウェアデバイス１０２にダウンロードしてよく、インターフェースモジュール２０６は、ユーザのハードウェアデバイス１０２からのデータおよび／もしくはデータに基づく１つもしくは複数のアラート／メッセージをユーザに提供してよく、または同様のことを行ってよい。描写されたシステム４００において、集約モジュール１０４ａは、ユーザの認証情報、ユーザのデータ、または同様のものを、異なるユーザのハードウェアデバイス、バックエンドサーバ１１０、または同様のものに提供することなく、ユーザのハードウェアデバイス１０２上で１つまたは複数の第３者のサービスプロバイダ１０８からのユーザのデータのローカルリポジトリを作成してよい。
【０１０８】
[0117]図４Ｂは、分散された／非集中化されたデータ集約のためのシステム４０２の１つの実施形態を描写する。描写された実施形態において、システム４０２は、異なるユーザと関連付けられた、集約モジュール１０４ａを有する複数のユーザハードウェアデバイス１０２を含む。一定の実施形態において、第１の集約モジュール１０４ａ（例えば、第１の集約モジュール１０４ａの認証モジュール２０２）は、データネットワーク１０６または同様のもので、第１のユーザのハードウェアデバイス１０２ａからの第１のユーザの暗号化されたユーザ認証情報を第２の集約モジュール１０４ａ（例えば、第２の集約モジュール１０４ａの認証モジュール２０２）にセキュアに提供してよく、その結果、第２の集約モジュール１０４ａの直接アクセスモジュール２０４は、（例えば、データネットワーク１０６で）第２のユーザのハードウェアデバイス１０２ｂから１つまたは複数の第３者のサービスプロバイダ１０８にアクセスし、第１のユーザと関連付けられたデータをダウンロードしてよい。
【０１０９】
[0118]例えば、第２のユーザのハードウェアデバイス１０２ｂは、ルートモジュール３１４、または同様のものによって決定されるように、第１のユーザのハードウェアデバイス１０２ａが、電源を切られている、スリープ中である、１つもしくは複数の第３者のサービスプロバイダ１０８にアクセスするのをブロックされている、または同様の状態であることに応答して、第１のユーザのデータをダウンロードしてよい。第２の集約モジュール１０４ａのインターフェースモジュール２０６は、ダウンロードデータに基づいて、１つもしくは複数のアラート／メッセージを第１のユーザに提供してよく、および／またはダウンロードデータを第１のユーザに（例えば、第１のユーザのハードウェアデバイス１０２ａが利用可能になるのに応答して、第１のユーザと関連付けられた異なるハードウェアデバイス１０２に、第１のユーザがアクセスしたバックエンドサーバ１１０に、もしくは同様のものに）提供してよい。上述のように、一定の実施形態において、認証モジュール２０２、直接アクセスモジュール２０４、インターフェースモジュール２０６、および／またはルートモジュール３１４は、第１のユーザのデータ（例えば、第１のユーザの電子認証情報、第１のユーザと関連付けられたダウンロードデータ、第１のユーザに対するアラート／メッセージ）を暗号化し、および／またはそうでなければセキュアにしてよく、その結果、第２のユーザが第１のユーザのデータにアクセスすることが困難または不可能になり、それによって第１のユーザのデータへの無許可アクセスを防ぎおよび／または最小化する一方、第１のユーザのデータがダウンロードされる元のデバイス１０２および／または場所により大きな柔軟性を提供する。
【０１１０】
[0119]図４Ｃは、分散された／非集中化されたデータ集約のためのシステム４０４の１つの実施形態を描写する。描写された実施形態において、システム４０４は、１つまたは複数の集約モジュール１０４ａを有する１つまたは複数のユーザハードウェアデバイス１０２を含み、１つまたは複数のバックエンドサーバ１１０は、１つまたは複数のバックエンド集約モジュール１０４ｂを含む。一定の実施形態において、集約モジュール１０４ａの認証モジュール２０２は、データネットワーク１０６または同様のもので、バックエンドサーバ１１０上でバックエンド集約モジュール１０４ｂ（例えば、バックエンド集約モジュール１０４ｂの認証モジュール２０２）に、ユーザのハードウェアデバイス１０２からのユーザの暗号化されたユーザ認証情報をセキュアに提供してよく、その結果、バックエンド集約モジュール１０４ｂの直接アクセスモジュール２０４は、（例えば、データネットワーク１０６で）バックエンドサーバ１１０から１つまたは複数の第３者のサービスプロバイダ１０８にアクセスし、ユーザと関連付けられたデータをダウンロードしてよい。
【０１１１】
[0120]例えば、バックエンドサーバ１１０は、ルートモジュール３１４または同様のものによって決定されるように、ユーザのハードウェアデバイス１０２ａが、電源を切られている、スリープ中である、１つもしくは複数の第３者のサービスプロバイダ１０８にアクセスするのをブロックされている、または同様の状態であることに応答して、ユーザのデータをダウンロードしてよい。バックエンド集約モジュール１０４ｂのインターフェースモジュール２０６は、ダウンロードデータに基づいて、１つもしくは複数のアラート／メッセージをユーザに提供してよく、ならびに／あるいはユーザに（例えば、ユーザのハードウェアデバイス１０２ａが利用可能になるのに応答して、第１のユーザと関連付けられた異なるハードウェアデバイス１０２に、ウェブページとしておよび／もしくは専用のアプリケーションを通じてバックエンドサーバ１１０から直接的に、または同様にして）ダウンロードデータを提供してよい。
【０１１２】
[0121]図５Ａは、ユーザインターフェース５００の１つの実施形態を描写する。一定の実施形態において、インターフェース５００は、ハードウェアデバイス１０２の電子ディスプレイ画面上に、アクセス修復モジュール３１０によってユーザに提供され、ユーザの認証情報の１つまたは複数の入力場所（例えば、ユーザ名の場所、パスワードの場所、または同様のもの）、ユーザの認証情報を送信および／またはサブミットするための方法（例えば、ＡＰＩ仕様、サブミットボタンの場所、または同様のもの）、ユーザと関連付けられたデータの場所（例えば、ＵＲＬもしくは他のリンク、リンクにおけるウェブページ上の場所、平易なテキストおよび／もしくはウェブページ５０６のソースコード内部のラベル、タグ、もしくは他の識別子、または同様のもの）をグラフィカルに識別すること、ならびに／あるいは第３者のサービスプロバイダ１０８からユーザと関連付けられたデータにアクセスするための１つまたは複数の他の命令をグラフィカルに識別することを、ユーザが行うことを可能にする。
【０１１３】
[0122]描写された実施形態において、アクセス修復モジュール３１０は、ユーザのハードウェアデバイス１０２の電子ディスプレイ画面上で、第３者のサービスプロバイダ１０８のウェブサイト５０６の１つまたは複数のページにインターフェース５０２を被せる。上述のように、様々な実施形態において、アクセス修復モジュール３１０は、インターネットブラウザの内部にインターフェース５０２を提供するブラウザのプラグインおよび／もしくは拡張を含んでよく、アクセス修復モジュール３１０のアプリケーションの内部に埋め込まれたブラウザを含んでよく、またはそうでなければ、インターネットブラウザと統合されるかおよび／もしくは通信状態になってよい。
【０１１４】
[0123]描写された実施形態において、アクセス修復モジュール３１０は、ユーザが確認または変更／訂正のどちらかを行ってよい、ユーザに対する１つまたは複数の候補５０４および／または推奨５０４を決定および／または表示してよい。例えば、アクセス修復モジュール３１０は、ユーザがユーザ名をエンターするための示唆された場所を有するインターフェースエレメント５０４ａ、ユーザがパスワードをエンターするための示唆された場所を有するインターフェースエレメント５０４ｂ、示唆された認証情報サブミットアクションを有するインターフェースエレメント５０４ｃ、ユーザと関連付けられたデータの示唆された場所を有するインターフェースエレメント５０４ｄ、および／または第３者のサービスプロバイダ１０８のウェブサイト５０６の内部の１つまたは複数の場所をユーザがグラフィカルに識別することを可能にする１つまたは複数の他のインターフェースエレ
メントを表示してよい。
【０１１５】
[0124]１つの実施形態において、インターフェースエレメント５０４は、場所への矢印もしくは他のポインタ、場所のリンクもしくは他の識別子、ボックスもしくは場所周辺の他の強調、テキストを太字、イタリック体、および／もしくは下線付きにするために場所に対するテキストのラベル付けを変えること、または同様のものなどの、（例えば、ウェブサイト５０６の１つまたは複数のページにアクセスする他のユーザからの入力に基づいて、ウェブサイト５０６の１つまたは複数のページとのユーザの以前の対話、ウェブサイト５０６の機械学習および／または人工知能分析を使用してなされた予測に基づいて、ウェブサイト５０６のおよび／または１つもしくは複数の類似のウェブサイトの１つまたは複数のページに対する履歴上の変更の統計的解析に基づいて、あるいは同様のものに基づいて、ウェブサイト５０６の１つまたは複数のページをスキャンおよび／または解析することによって）アクセス修復モジュール３１０が決定した推定される場所および／またはアクションの１つまたは複数の識別子を含んでよい。一定の実施形態において、ユーザは、アクセス修復モジュール３１０によって示唆された場所を、確認または変更／訂正のどちらかを行うために場所を、クリック、選択、またはそうでなければ識別してよい。例えば、ユーザは、（例えば、選択されたインターフェースエレメント５０４を活性化するために）場所および／またはアクションと関連付けられたインターフェースエレメント５０４をクリックまたはそうでなければ選択してよく、この場所をクリックもしくはそうでなければ選択しおよび／またはこのアクションを実施してよく、これをアクセス修復モジュール３１０は記録してよい（例えば、この場所および／もしくはアクションを識別するテキストフィールドを自動的にポピュレートし、ユーザなしにアクションが自動的に繰り返されることを可能にするマクロを記録し、または同様のことを行う）。
【０１１６】
[0125]１つの実施形態において、１つもしくは複数の場所を検索および／もしくは識別すること、１つもしくは複数のアクションを実施すること、または同様のことを行うために、ユーザはウェブサイト５０６と対話してよい。例えば、一定の実施形態において、ユーザは、ウェブサイト５０６の内部の１つもしくは複数の異なるページにナビゲートすること、ウェブサイト５０６に対するユーザの電子認証情報を使用してウェブサイト５０６にログインすること、異なるウェブサイト５０６にナビゲートすること、ウェブサイト５０６にナビゲートすることおよび／もしくはウェブサイト５０６からユーザと関連付けられたデータをダウンロードすること、いつもの手法でウェブサイト５０６を使用すること、または同様のことを行ってよい。パターンモジュール３０８に関して上記に説明されたように、１つの実施形態において、パターンモジュール３０８は、ウェブサイト５０６に対するユーザのアクセスパターンを監視してよく、ウェブサイト５０６にアクセスする際、ウェブサイト５０６からユーザと関連付けられたデータをダウンロードする際、または同様の際に、直接アクセスモジュール２０４がユーザのアクセスパターンを少なくともある程度はエミュレートすることを可能にする。描写された実施形態において、アクセス修復モジュール３１０（および／または関連付けられたブラウザ）は、ウェブサイト５０６の片側または同様のものに、ウェブサイト５０６の上に表示されるインターフェース５０２を追加し、インターネットブラウザがウェブサイト５０６を表示するであろう方法を実質的に表示した、テキスト、画像、および／または他のエレメントと共に、ウェブサイト５０６のブラウザビューを表示する。
【０１１７】
[0126]図５Ｂは、ユーザインターフェース５１０の１つの実施形態を描写する。図５Ｂのインターフェース５１０の１つの実施形態において、上述のユーザインターフェース５００が、ウェブサイト５０６の１つまたは複数のページの表現されたブラウザビューを含むと同時に、アクセス修復モジュール３１０（および／または関連付けられたブラウザ）は、ウェブサイト５０６のソースコード５１６を表示する。例えば、１つの実施形態において、ユーザインターフェース５００は、標準的なアクセス修復インターフェースを含んでよく、ユーザインターフェース５１０は、先進的なアクセス修復インターフェースを含んでよく、ウェブサイト５０６自体の中で可視におよび／または容易に明らかにできない、ウェブサイト５０６のソースコード５１６内部の１つまたは複数の場所および／またはアクションを、１つまたは複数の先進的なユーザが識別するのを可能にする。一定の実施形態において、ユーザは、標準的なユーザインターフェース５００またはビューか、先進的なユーザインターフェース５１０またはビューかを、選択しおよび／または切り替えてよい。
【０１１８】
[0127]描写された実施形態において、アクセス修復モジュール３１０は、上述のように、１つまたは複数の場所、アクション、または同様のものを、ユーザが実質的に識別するのを可能にする１つまたは複数のインターフェースエレメント５１４ａ〜５１４ｄと共に、表示されたソースコード５１６の上におよび／またはその隣にユーザインターフェース５１２を表示する。描写された実施形態において、アクセス修復モジュール３１０は、ユーザが確認および／または変更／訂正することができる場所および／またはアクションの１つまたは複数の候補および／または推定を表示する。様々な実施形態において、ユーザは、インターフェースエレメント５１４を選択および／または活性化させ、ソースコード５１６の一部を選択することによって、ソースコード５１６の一部をドラッグし、その部分をインターフェースエレメント５１４上にドロップすることによって、ソースコード５１６の一部をインターフェースエレメント５１４にカットおよびペーストすることによって、ならびに／またはそうでなければ、ソースコード５１６に基づいて場所および／もしくはアクションを識別することによって、ソースコード５１６内の場所および／またはアクションを識別してよい。
【０１１９】
[0128]一定の実施形態において、（例えば、電子認証情報をエンターするため、サブミットするため、および／もしくは送信するために、データを検索および／もしくはダウンロードするために、または同様のもののために）１つまたは複数の場所および／またはアクションをユーザが識別することに応答して、アクセス修復モジュール３１０は、インターフェース５００、５１０が可視でありおよび／またはユーザによって使用中である間に、識別された１つまたは複数の場所および／またはアクションの妥当性および／または有効性を決定するために、テストモジュール３１８と協働して、識別された１つまたは複数の場所および／またはアクションの、ライブのおよび／またはリアルタイムのテストを実施してよく、提供された情報を、同じセッション中にユーザが変更および／または訂正することを可能にする。例えば、アクセス修復モジュール３１０は、テストボタンまたは他のユーザインターフェースエレメントをユーザに表示し、ユーザはこれを選択および／または活性化し、テストに着手してよい。別の実施形態において、アクセス修復モジュール３１０は、テストボタンまたは他のユーザインターフェースエレメントを、ユーザが選択することおよび／または活性化させることなく、ユーザが場所および／またはアクションを提供することに応答して、テストを自動的に実施してよい。さらなる実施形態において、テストモジュール３１８は、アクセス修復モジュール３１０の機能性を、テストしながら、またはテストせずに、アクセス修復モジュール３１０から独立した１つまたは複数のテストを実施してよい。
【０１２０】
[0129]図６は、分散されたデータ集約のための方法６００の１つの実施形態を描写する。方法６００は始まり、認証モジュール２０２は、ユーザのハードウェアデバイス１０２上で、ユーザから、第３者のサービスプロバイダ１０８に対するユーザの電子認証情報を６０２で受信する。直接アクセスモジュール２０４は、ユーザの電子認証情報を使用して、ユーザのハードウェアデバイス１０２から、第３者のサービスプロバイダ１０８のサーバ１０８に６０４でアクセスする。直接アクセスモジュール２０４は、第３者のサービスプロバイダ１０８のサーバ１０８からユーザのハードウェアデバイス１０２に、ユーザと関連付けられたデータを６０６でダウンロードする。
【０１２１】
[0130]図７は、分散されたおよび／または非集中化されたデータ集約のための方法７００の１つの実施形態を描写する。方法７００は始まり、認証モジュール２０２は、複数の第３者のサービスプロバイダ１０８に対するユーザの電子認証情報を７０２で決定する。直接アクセスモジュール２０４は、７０２で決定された電子認証情報を使用して、複数の第３者のサービスプロバイダ１０８のサーバに７０４でアクセスする。直接アクセスモジュール２０４は、複数の第３者のサービスプロバイダ１０８の７０４でアクセスされたサーバから、ユーザと関連付けられたデータを７０６でダウンロードする。
【０１２２】
[0131]直接アクセスモジュール２０４は、複数の異なる第３者のサービスプロバイダ１０８からの７０６でダウンロードされたデータを７０８で集約する。インターフェースモジュール２０６は、（例えば、ユーザのハードウェアデバイス１０２上にデータを表示すること、アラートもしくは他のメッセージをユーザのハードウェアデバイス１０２に送信すること、ウェブインターフェースおよび／もしくはＡＰＩを使用してユーザがアクセスできる、第３者のサービスプロバイダ１０８に加入していないリモートバックエンドサーバ１１０にデータを送信すること、または同様のことを行って）７０８で集約されたデータをユーザに７１０で提供し、方法７００は終了する。
【０１２３】
[0132]図８は、分散されたおよび／または非集中化されたデータ集約のための方法８００の別の実施形態を描写する。方法８００は始まり、ネットワーク認証モジュール３０４は、１つまたは複数の第３者のサービスプロバイダ１０８に対するユーザの電子認証情報を８０２で受信する。パスワードマネージャモジュール３０６は、１つまたは複数の第３者のサービスプロバイダ１０８に対する新しいおよび／または異なる電子認証情報を８０４で生成し、１つまたは複数の第３者のサービスプロバイダ１０８に関するユーザのアカウントを、８０４で生成された電子認証情報で更新する。
【０１２４】
[0133]アクセス修復モジュール３１０は、１つまたは複数の第３者のサービスプロバイダ１０８に対するアクセスに変更があるかどうか（例えば、アクセスが途切れ途切れであるかもしくは利用不可能であるかどうか、アクセスが部分的であるかもしくは不完全であるかどうか、アクセス帯域幅が以前に決定されたものより遅いかどうか、および／またはアクセスに別の変更が発生したかどうか）を８０６で決定する。第３者のサービスプロバイダ１０８に対するアクセスが変更したことをアクセス修復モジュール３１０が８０６で決定する場合、アクセス修復モジュール３１０は、グラフィカルユーザインターフェース５００、５１０をユーザに８０８で提供する。ユーザを認証し、および／または第３者のサービスプロバイダ１０８からデータをダウンロードするために、アクセス修復モジュール３１０は、提供された８０８のグラフィカルユーザインターフェース５００、５１０を通じて、１つまたは複数の場所および／またはアクションの識別を８１０で受信する。テストモジュール３１８は、１つまたは複数の場所および／またはアクションの８１０で受信された識別を使用して、第３者のサービスプロバイダ１０８へのアクセスを８１２でテストする。テストモジュール３１８によって８１２でテストが成功したことに応答して、テストモジュール３１８および／またはパターンモジュール３０８は、１つまたは複数の場所および／またはアクションの８１０で受信された識別に基づいて、１つまたは複数の異なるユーザと関連付けられた１つまたは複数の直接アクセスモジュール２０４に、第３者のサービスプロバイダ１０８からのデータにアクセスしおよび／またはダウンロードするための命令を８１４で提供する。
【０１２５】
[0134]ルートモジュール３１４は、ユーザと関連付けられたハードウェアデバイス１０２が利用可能であるかどうかを８１６で決定する。ユーザと関連付けられたハードウェアデバイス１０２が利用可能であることを、ルートモジュール３１４が８１６で決定することに応答して、直接アクセスモジュール２０４は、ユーザと関連付けられた利用可能なハードウェアデバイス１０２から、１つまたは複数の第３者のサービスプロバイダ１０８からのユーザと関連付けられたデータを８１８でダウンロードする。
【０１２６】
[0135]ユーザと関連付けられたハードウェアデバイス１０２が利用可能ではないことをルートモジュール３１４が８１６で決定することに応答して、異なるデバイス（例えば、異なるユーザのハードウェアデバイス１０２、バックエンドサーバ１１０、または同様のもの）の直接アクセスモジュール２０４は、異なるデバイスから、１つまたは複数の第３者のサービスプロバイダ１０８からユーザと関連付けられたデータを８２０でダウンロードする。（例えば、異なるデバイス１０２、１１０上の）ルートモジュール３１４は、８２０でダウンロードされたデータに基づいて、アラートまたは他のメッセージがユーザに利用可能であるかどうかを８２２で決定し、アラートまたは他のメッセージが利用可能であることを８２２で決定したことに応答して、ユーザと関連付けられたデバイス１０２（例えば、利用不可能なデバイス１０２）に、アラートまたは他のメッセージを８２４でプッシュしおよび／またはそうでなければ送信する。例えば、１つの実施形態において、ユーザのハードウェアデバイス１０２は、データをダウンロードするために利用不可能（例えば、電源が切られている、オフライン、スリープ中、Ｗｉ−Ｆｉの代わりにモバイルデータを使用している、または同様のもの）であってよいが、（例えば、異なるチャネルで、テキストメッセージ、ボイスメール、電子メール、プッシュ通知、もしくは同様のものなどの、）８２４でプッシュされたアラートもしくは他のメッセージをいずれにしても受信してよく、および／またはその後になって利用可能になったことに応答して、８２４でプッシュされたアラートもしくは他のメッセージを受信してよい。
【０１２７】
[0136]インターフェースモジュール２０６は、（例えば、ユーザのハードウェアデバイス１０２上にデータを表示すること、ユーザのハードウェアデバイス１０２上に８２４でプッシュ／送信されたアラートもしくは他のメッセージを表示すること、ウェブインターフェースおよび／もしくはＡＰＩを使用してユーザがアクセスできる、第３者のサービスプロバイダ１０８に加入していないリモートバックエンドサーバ１１０にデータを送信すること、または同様のことを行って）８１８、８２０でダウンロードされたデータおよび／または８２４でプッシュされたアラートをユーザに８２６で提供する。一定の実施形態において、方法８００は、第３者のサービスプロバイダ１０８に対するアクセスに変更があるかどうかを８０６で決定すること、ユーザのハードウェアデバイス１０２が利用可能であるかどうかを８１６で決定すること、ユーザと関連付けられたデータを８１８、８２０でダウンロードすること、ならびに／またはダウンロードデータおよび／もしくは８２４でプッシュされたアラートもしくは他のメッセージをユーザに８２６で提供すること、または同様のことを周期的に継続する。
【０１２８】
[0137]様々な実施形態において、ユーザのハードウェアデバイス１０２上で第３者のサービスプロバイダ１０８に対するユーザの電子認証情報を決定する手段は、ハードウェアデバイス１０２、バックエンドサーバ１１０、認証モジュール２０２、ローカル認証モジュール３０２、ネットワーク認証モジュール３０４、パスワードマネージャモジュール３０６、集約モジュール１０４、プロセッサ（例えば、中央処理装置（ＣＰＵ）、プロセッサコア、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）もしくは他のプログラマブル論理回路、特定用途向け集積回路（ＡＳＩＣ）、コントローラ、マイクロコントローラ、および／または別の半導体集積回路デバイス）、ＨＤＭＩまたは他の電子ディスプレイドングル、ハードウェア機器または他のハードウェアデバイス、他のロジックハードウェア、ならびに／あるいはコンピュータ可読ストレージ媒体上に格納される他の実行コードの１つまたは複数を含んでよい。他の実施形態は、ユーザのハードウェアデバイス１０２上で第３者のサービスプロバイダ１０８に対するユーザの電子認証情報を決定する類似のまたは同等の手段を含んでよい。
【０１２９】
[0138]様々な実施形態において、ユーザの電子認証情報を使用してユーザのハードウェアデバイス１０２から第３者のサービスプロバイダ１０８のサーバ１０８にアクセスする手段は、ハードウェアデバイス１０２、バックエンドサーバ１１０、直接アクセスモジュール２０４、パターンモジュール３０８、アクセス修復モジュール３１０、階層モジュール３１２、集約モジュール１０４、ネットワークインターフェース、プロセッサ（例えば、中央処理装置（ＣＰＵ）、プロセッサコア、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）もしくは他のプログラマブル論理回路、特定用途向け集積回路（ＡＳＩＣ）、コントローラ、マイクロコントローラ、および／または別の半導体集積回路デバイス）、ＨＤＭＩまたは他の電子ディスプレイドングル、ハードウェア機器または他のハードウェアデバイス、他のロジックハードウェア、ならびに／あるいはコンピュータ可読ストレージ媒体上に格納される他の実行コードの１つまたは複数を含んでよい。他の実施形態は、ユーザの電子認証情報を使用してユーザのハードウェアデバイス１０２から第３者のサービスプロバイダ１０８のサーバ１０８にアクセスする類似のまたは同等の手段を含んでよい。
【０１３０】
[0139]様々な実施形態において、ユーザと関連付けられたデータを第３者のサービスプロバイダ１０８のサーバ１０８からユーザのハードウェアデバイス１０２にダウンロードする手段は、ハードウェアデバイス１０２、バックエンドサーバ１１０、直接アクセスモジュール２０４、パターンモジュール３０８、アクセス修復モジュール３１０、階層モジュール３１２、集約モジュール１０４、ネットワークインターフェース、プロセッサ（例えば、中央処理装置（ＣＰＵ）、プロセッサコア、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）もしくは他のプログラマブル論理回路、特定用途向け集積回路（ＡＳＩＣ）、コントローラ、マイクロコントローラ、および／または別の半導体集積回路デバイス）、ＨＤＭＩまたは他の電子ディスプレイドングル、ハードウェア機器または他のハードウェアデバイス、他のロジックハードウェア、ならびに／あるいはコンピュータ可読ストレージ媒体上に格納される他の実行コードの１つまたは複数を含んでよい。他の実施形態は、ユーザと関連付けられたデータを第３者のサービスプロバイダ１０８のサーバ１０８からユーザのハードウェアデバイス１０２にダウンロードする類似のまたは同等の手段を含んでよい。
【０１３１】
[0140]様々な実施形態において、データがダウンロードされた元の第３者のサービスプロバイダ１０８に加入していないリモートデバイス１１０、１０２のために、ユーザのハードウェアデバイス１０２からのダウンロードデータをパッケージにする手段は、ハードウェアデバイス１０２、バックエンドサーバ１１０、インターフェースモジュール２０６、集約モジュール１０４、プロセッサ（例えば、中央処理装置（ＣＰＵ）、プロセッサコア、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）もしくは他のプログラマブル論理回路、特定用途向け集積回路（ＡＳＩＣ）、コントローラ、マイクロコントローラ、および／または別の半導体集積回路デバイス）、ＨＤＭＩまたは他の電子ディスプレイドングル、ハードウェア機器または他のハードウェアデバイス、他のロジックハードウェア、ならびに／あるいはコンピュータ可読ストレージ媒体上に格納される他の実行コードの１つまたは複数を含んでよい。他の実施形態は、データがダウンロードされた元の第３者のサービスプロバイダ１０８に加入していないリモートデバイス１１０、１０２のために、ユーザのハードウェアデバイス１０２からのダウンロードデータをパッケージにする類似のまたは同等の手段を含んでよい。
【０１３２】
[0141]様々な実施形態において、データがダウンロードされた元の第３者のサービスプロバイダ１０８に加入していないリモートデバイス１１０、１０２に、ユーザのハードウェアデバイス１０２からのダウンロードデータを提供する手段は、ハードウェアデバイス１０２、バックエンドサーバ１１０、インターフェースモジュール２０６、集約モジュール１０４、プロセッサ（例えば、中央処理装置（ＣＰＵ）、プロセッサコア、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）もしくは他のプログラマブル論理回路、特定用途向け集積回路（ＡＳＩＣ）、コントローラ、マイクロコントローラ、および／または別の半導体集積回路デバイス）、ＨＤＭＩまたは他の電子ディスプレイドングル、ハードウェア機器または他のハードウェアデバイス、他のロジックハードウェア、ならびに／あるいはコンピュータ可読ストレージ媒体上に格納される他の実行コードの１つまたは複数を含んでよい。他の実施形態は、データがダウンロードされた元の第３者のサービスプロバイダ１０８に加入していないリモートデバイス１１０、１０２に、ユーザのハードウェアデバイス１０２からのダウンロードデータを提供する類似のまたは同等の手段を含んでよい。
【０１３３】
[0142]様々な実施形態において、本明細書で説明された他の方法ステップを実施する手段は、ハードウェアデバイス１０２、バックエンドサーバ１１０、認証モジュール２０２、ローカル認証モジュール３０２、ネットワーク認証モジュール３０４、パスワードマネージャモジュール３０６、直接アクセスモジュール２０４、パターンモジュール３０８、アクセス修復モジュール３１０、階層モジュール３１２、インターフェースモジュール２０６、ルートモジュール３１４、頻度モジュール３１６、テストモジュール３１８、集約モジュール１０４、ネットワークインターフェース、プロセッサ（例えば、中央処理装置（ＣＰＵ）、プロセッサコア、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）もしくは他のプログラマブル論理回路、特定用途向け集積回路（ＡＳＩＣ）、コントローラ、マイクロコントローラ、および／または別の半導体集積回路デバイス）、ＨＤＭＩまたは他の電子ディスプレイドングル、ハードウェア機器または他のハードウェアデバイス、他のロジックハードウェア、ならびに／あるいはコンピュータ可読ストレージ媒体上に格納される他の実行コードの１つまたは複数を含んでよい。他の実施形態は、本明細書で説明された方法ステップの１つまたは複数を実施する類似のまたは同等の手段を含んでよい。
【０１３４】
[0143]本発明は、本発明の精神または本質的な特徴から逸脱することなく、他の具体的な形で具体化されてよい。説明された実施形態は、すべての点において、単に例証的なものとしてかつ限定的ではないものとして考えられるべきである。したがって、本発明の範囲は、前述の説明によってではなく添付の特許請求の範囲によって示される。特許請求の範囲の等価の意味および範囲に入るすべての変更は、これらの範囲の中に受容されるべきである。
【図１】
2020017298.tif 000003
【図２】
2020017298.tif 000004
【図３】
2020017298.tif 000005
【図４Ａ】
2020017298.tif 000006
【図４Ｂ】
2020017298.tif 000007
【図４Ｃ】
2020017298.tif 000008
【図５Ａ】
2020017298.tif 000009
【図５Ｂ】
2020017298.tif 000010
【図６】
2020017298.tif 000011
【図７】
2020017298.tif 000012
【図８】
2020017298.tif 000013
【手続補正書】
【提出日】令和1年10月17日(2019.10.17)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ユーザのための、複数の第３者のサービスプロバイダから集約されたデータのローカルリポジトリを含むハードウェアデバイス
を含む装置であって、
前記ハードウェアデバイスは、前記ハードウェアデバイス上で、集約された前記データおよび前記複数の第３者のサービスプロバイダについての前記ユーザの電子認証情報をセキュアにするように構成されたローカル認証モジュールを含み、
前記ハードウェアデバイスは、アクセス制御を前記ユーザに提供するように構成されたインターフェースモジュールを含み、前記アクセス制御は、複数の他の第３者のサービスプロバイダのどれを前記ユーザが認可するのかを定め、前記認可は、集約された前記データにアクセスし、集約された前記データを認可された前記他の第３者のサービスプロバイダに提供するためのものである、
装置。
【請求項２】
請求項１に記載の装置であって、前記インターフェースモジュールは、アクセス制御を前記ユーザに提供するように構成され、前記アクセス制御は、複数の他のハードウェアデバイスのどれを前記ユーザが認可するのかを定め、前記認可は、集約された前記データにアクセスし、集約された前記データを認可された前記他のハードウェアデバイスに提供するためのものである、装置。
【請求項３】
請求項１に記載の装置であって、前記インターフェースモジュールは、前記データを、前記ハードウェアデバイスから、認可された前記他の第３者のサービスプロバイダへと、アプリケーションプログラミングインターフェースを用いて提供するように構成された、装置。
【請求項４】
請求項１に記載の装置であって、前記ローカル認証モジュールは、前記ユーザが、異なるユーザの集約されたデータおよび電子認証情報にアクセスできないように、前記異なるユーザの集約された前記データおよび電子認証情報をセキュアにするように構成され、前記インターフェースモジュールは、前記異なるユーザの集約された前記データを、前記異なるユーザのハードウェアデバイスに提供するように構成された、装置。
【請求項５】
請求項１に記載の装置であって、前記インターフェースモジュールは、様々なモバイルアプリケーション、アプリケーションプログラミングインターフェース、ユーザおよびハードウェアデバイスのうちの１つまたは複数のどれが、集約された前記データのどの部分にアクセスしてよいかを、前記アクセス制御に基づき許可および制限するように構成された、装置。
【請求項６】
請求項１に記載の装置であって、前記ハードウェアデバイスは、前記ハードウェアデバイスおよび１つまたは複数の追加のハードウェアデバイスの間で、前記複数の第３者のサービスプロバイダからのデータのダウンロードを交替するように構成されたルートモジュールを含む、装置。
【請求項７】
請求項１に記載の装置であって、前記ハードウェアデバイスは、前記複数の第３者のサービスプロバイダの各々に。前記ハードウェアデバイスから、前記ユーザの前記電子認証情報を用いてアクセスして、集約された前記データを前記第３者のサービスプロバイダからダウンロードするように構成された直接アクセスモジュールを含む、装置。
【請求項８】
請求項７に記載の装置であって、前記直接アクセスモジュールは、前記複数の第３者のサービスプロバイダのうちの１つまたは複数における１つまたは複数の他の場所に、前記１つまたは複数の他の場所へのアクセスと集約された前記データのダウンロードとの間に人工的に導入された１つまたは複数の遅延とともにアクセスし、それによって、前記複数の第３者のサービスプロバイダのうちの前記１つまたは複数に対して前記ユーザの使用パターンをエミュレートするように構成された、装置。
【請求項９】
請求項１に記載の装置であって、前記ハードウェアデバイスはパスワードマネージャモジュールを更に含み、前記パスワードマネージャモジュールは、
前記ユーザのための１つまたは複数の異なるセキュアな電子認証情報を、前記複数の第３者のサービスプロバイダの各々について生成し管理し、
前記ユーザのために生成された前記１つまたは複数の異なるセキュアな電子認証情報を、前記ハードウェアデバイスにセキュアに格納する
ように構成された、装置。
【請求項１０】
ハードウェアデバイス上のローカルレポジトリのための手段であって、前記ローカルレポジトリは、ユーザのための、複数の第３者のサービスプロバイダから集約されたデータを含む、手段と、
前記ハードウェアデバイス上で、集約された前記データおよび前記複数の第３者のサービスプロバイダについての前記ユーザの電子認証情報をセキュアにするための手段と、
複数の他の第３者のサービスプロバイダのどれを前記ユーザが認可するかを定めるアクセス制御のための手段であって、前記認可は集約された前記データにアクセスするためのものである、手段と、
集約された前記データを認可された前記他の第３者のサービスプロバイダに提供するための手段と
を含む装置。
【請求項１１】
請求項１０に記載の装置であって、
複数の他のハードウェアデバイスのどれを前記ユーザが認可するかを定めるアクセス制御のための手段であって、前記認可は集約された前記データにアクセスするためのものである、手段と、
集約された前記データを認可された前記他のハードウェアデバイスに提供するための手段と
を更に含む装置。
【請求項１２】
請求項１０に記載の装置であって、
前記ユーザが、異なるユーザの集約されたデータおよび電子認証情報にアクセスできないように、前記異なるユーザの集約された前記データおよび電子認証情報をセキュアにするための手段と、
前記異なるユーザの集約された前記データを、前記異なるユーザの前記ハードウェアデバイスに提供するための手段と
を更に含む装置。
【請求項１３】
請求項１０に記載に装置であって、様々なモバイルアプリケーション、アプリケーションプログラミングインターフェース、ユーザおよびハードウェアデバイスのうちの１つまたは複数のどれが、集約された前記データのどの部分にアクセスしてよいかを、前記アクセス制御に基づき許可および制限するための手段を更に含む装置。
【請求項１４】
請求項１０に記載の装置であって、前記ハードウェアデバイスおよび１つまたは複数の追加のハードウェアデバイスの間で、前記複数の第３者のサービスプロバイダからのデータのダウンロードを交替するための手段を更に含む装置。
【請求項１５】
請求項１０に記載の装置であって、前記複数の第３者のサービスプロバイダの各々に。前記ハードウェアデバイスから、前記ユーザの前記電子認証情報を用いてアクセスして、集約された前記データを前記第３者のサービスプロバイダからダウンロードするための手段を更に含む装置。
【請求項１６】
請求項１０に記載の装置であって、
前記ユーザのための１つまたは複数の異なるセキュアな電子認証情報を、前記複数の第３者のサービスプロバイダの各々について生成し管理し、
前記ユーザのために生成された前記１つまたは複数の異なるセキュアな電子認証情報を、前記ハードウェアデバイスにセキュアに格納する
ための手段を更に含む装置。
【請求項１７】
非一時的コンピュータ可読記憶媒体を含むコンピュータプログラム製品であって、前記非一時的コンピュータ可読記憶媒体は、動作を実行するためにプロセッサにより実行可能なコンピュータ使用可能プログラムコードを記憶し、前記動作は、
ハードウェアデバイス上で、ユーザのために、複数の第３者のサービスプロバイダから集約されたデータと、前記複数の第３者のサービスプロバイダについての前記ユーザの電子認証情報とを含むローカルリポジトリをセキュアにすることと、
複数の他の第３者のサービスプロバイダのどれを前記ユーザが認可するのかを定めるアクセス制御を前記ユーザに提供することであって、前記認可は集約された前記データにアクセスするためのものである、提供することと、
集約された前記データを認可された前記他の第３者のサービスプロバイダに提供することと
を含む、コンピュータプログラム製品。
【請求項１８】
請求項１７に記載のコンピュータプログラム製品であって、前記動作は、
複数の他のハードウェアデバイスのどれを前記ユーザが認可するのかを定めるアクセス制御を前記ユーザに提供することであって、前記認可は集約された前記データにアクセスするためのものである、提供することと、
集約された前記データを認可された前記他のハードウェアデバイスに提供することと
を更に含む、コンピュータプログラム製品。
【請求項１９】
請求項１７に記載のコンピュータプログラム製品であって、前記動作は、
前記ユーザが、異なるユーザの集約されたデータおよび電子認証情報にアクセスできないように、前記異なるユーザの集約された前記データおよび電子認証情報をセキュアにすることと、
前記異なるユーザの集約された前記データを、前記異なるユーザのハードウェアデバイスに提供することと
を更に含むコンピュータプログラム製品。
【請求項２０】
請求項１７に記載のコンピュータプログラム製品であって、前記動作は、
前記ユーザのための１つまたは複数の異なるセキュアな電子認証情報を、前記複数の第３者のサービスプロバイダの各々について生成し管理することと、
前記ユーザのために生成された前記１つまたは複数の異なるセキュアな電子認証情報を前記ハードウェアデバイスにセキュアに格納することと
を更に含む、コンピュータプログラム製品。