(57)【要約】      （修正有）【課題】モバイル装置のユーザのために、セキュリティ保護されたモバイルアプリケーションを開発するための、統合化された開発プラットフォームを構築する。【解決手段】暗号化された形態で保護データを格納するよう構成されたパブリッシャデータベースと、パブリッシャデータベースに連結された第１サーバ３２と、第１サーバに連結された第２サーバ３６、４０であって、保護データに対するアクセスについての暗号的に強力な認証を提供するよう構成された第２サーバと、第１セキュリティ保護チャネルに対するインターフェースと、第１サーバとカスタマアプリケーションとの間に位置する、第２セキュリティ保護チャネルに対するインターフェースとを含み、第１サーバは、第１セキュリティ保護チャネルを介して通信端末と保護データを交換することと、第２セキュリティ保護チャネルを介してカスタマアプリケーションと保護データを交換する。【選択図】図１
2015213319.tif 000002
【特許請求の範囲】
【請求項１】
保護データに対するアクセスを通信端末に提供するシステムであって、
パブリッシャデータベースに連結された第１サーバであって、前記パブリッシャデータベースは保護データを暗号化された形態で格納するよう構成された、第１サーバと、
前記第１サーバに連結された第２サーバであって、暗号的に強力なアクセスの認証を前記保護データに提供するよう構成された、第２サーバと、
前記第１サーバと前記通信端末との間に位置する、第１セキュリティ保護チャネルに対するインターフェースと、
前記第１サーバとカスタマアプリケーションとの間に位置する、第２セキュリティ保護チャネルに対するインターフェースと、
を含み、
前記第１サーバは、前記第１セキュリティ保護チャネルを介して前記通信端末と保護データを交換すること、および前記第２セキュリティ保護チャネルを介して前記カスタマアプリケーションと保護データを交換すること、を行うよう構成された、
システム。
【請求項２】
前記第１サーバは、データグループ、データセット、および前記カスタマアプリケーションのＵＲＬのうちの少なくとも１つの構成を受け取るよう構成され、前記第２サーバは、前記データグループからのデータが影響を受けた場合に前記カスタマアプリケーションに通知を提供するようさらに構成された、請求項１に記載のシステム。
【請求項３】
前記第１サーバは前記通信端末に書き込まれるべき更新済みアプリケーション構成を受け取るよう構成された、請求項１に記載のシステム。
【請求項４】
前記通信端末は、パスワードまたは暗号鍵を前記通信端末に格納することなく、ユーザパスワードおよび受け取られたセキュリティクレデンシャルを使用して前記セキュリティ保護ストレージに対する暗号鍵を導出するよう構成された、請求項１に記載のシステム。
【請求項５】
前記通信端末は、前記第１サーバおよび前記第２サーバのうちの少なくとも１つからアプリケーション構成およびロジックを受け取る、請求項１に記載のシステム。
【請求項６】
前記通信端末は暗号化されたワイヤレスチャネルを使用することによりアプリケーション構成およびロジックを受け取る、請求項１に記載のシステム。
【請求項７】
前記第１サーバは、対応するデータが影響されたとき、通知を待ち行列に入れて前記カスタマアプリケーションに供給するために、待ち行列を含む、請求項１に記載のシステム。
【請求項８】
前記第１サーバは、保護データをカスタマアプリケーションと交換することと、アプリケーションが監視を割り当てられた前記保護データのみにアクセスすることを前記アプリケーションに許可することと、を行うために、Ｓｅｃｕｒｅｄ  Ｗｅｂ  Ｓｅｒｖｉｃｅ  Ｉｎｔｅｒｆａｃｅコールを受け取るよう構成された、請求項１に記載のシステム。
【請求項９】
前記カスタマアプリケーションは、前記パブリッシャデータベース内で変更された情報を発見するために前記第１サーバと双方向に通信するよう構成されたアプリケーションを含む、請求項１に記載のシステム。
【請求項１０】
構成アプリケーションに対するアクセスは前記通信端末のユーザのグループメンバー資格に基づく、請求項１に記載のシステム。
【請求項１１】
前記モバイルプロセッサは第１モバイルアプリケーションおよび第２モバイルアプリケーションを提供するようさらに構成され、前記第２モバイルアプリケーションは暗号化モジュールおよびデータの使用を前記第１モバイルアプリケーションと共有するよう構成された、請求項１に記載のシステム。
【請求項１２】
前記通信端末はそれぞれの種類のユーザに対して複数のアプリケーション構成をダウンロードするよう構成された、請求項１に記載のシステム。
【請求項１３】
前記セキュリティ保護されたストレージは、セキュリティ保護された情報の遠隔自動消去と、利用不能なセキュリティ保護されたストレージの遠隔復元と、をサポートするよう構成された、請求項１に記載のシステム。
【請求項１４】
前記第１サーバは複数組織使用をサポートするよう構成された、請求項１に記載のシステム。
【請求項１５】
前記第１サーバは、ＳＳＬと使用可能な非ＳＳＬセキュリティ保護された通信チャネルを介して前記通信端末およびカスタマアプリケーションに対するインターフェースを含む、請求項１に記載のシステム。
【請求項１６】
前記第１サーバは、それぞれに対して独立的な複数の通信端末をサポートする情報を発行するよう構成された、請求項１に記載のシステム。
【請求項１７】
保護データに対するアクセスを通信端末に提供する方法であって、
パブリッシャデータベースに連結された第１サーバにより、暗号化された形態で保護データを格納することと、
保護データにアクセスするための要求を、通信端末から、受け取ることであって、前記要求は申し立てられたクレデンシャルを含む、保護データにアクセスするための要求を受け取ることと、
前記申し立てられたクレデンシャルを暗号的に強力な認証により認証するために、前記申し立てられたクレデンシャルを第２サーバに伝送することと、
申し立てられたクレデンシャルが認証された場合、通信端末と保護データとの間のアクセスを許可することと、
カスタマアプリケーションとパブリッシャデータベースとの間で保護データを通信することと、
通信端末とパブリッシャデータベースとの間で保護データを通信することと、
を含む、方法。
【請求項１８】
データグループ、データセット、および前記カスタマアプリケーションのＵＲＬのうちの少なくとも１つの構成を受け取ることと、
前記データグループからのデータが影響されている場合、前記カスタマアプリケーションに通知を提供することと、
をさらに含む、請求項１７の方法。
【請求項１９】
前記通信端末に発信されるべき更新済みアプリケーション構成を受け取ることをさらに含む、請求項１７に記載の方法。
【請求項２０】
前記通信端末は第１モバイルアプリケーションおよび第２モバイルアプリケーションを提供するよう構成され、前記第２モバイルアプリケーションは暗号化モジュールおよびデータの使用を前記第１モバイルアプリケーションと共有するよう構成された、請求項１７に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、全般には、セキュリティ保護されたアプリケーション開発プラットフォームに関し、さらに詳細には、健康情報などの機密データにアクセするためのセキュリティ保護されたモバイルアプリケーションを開発するためのシステムおよび方法に関する。
【背景技術】
【０００２】
モバイルヘルス（「ｍＨｅａｌｔｈ」）とは、モバイルフォン、患者監視装置、携帯情報端末（ＰＤＡ）、および他のモバイル装置またはワイヤレス装置などの通信端末によりサポートされる医療保健および公衆保健の実践に対する用語である。ｍＨｅａｌｔｈでは、音声およびショートメッセージサービス（ＳＭＳ）の使用の他にも、モバイルデータ通信システム（例えば３Ｇ、４Ｇ、４ＧＬＴＥ、その他）、全地球測位システム（ＧＰＳ）、およびＢｌｕｅｔｏｏｔｈ（登録商標）技術などのより複雑な技術も使用される。
【０００３】
一般的にインターネットの使用に対して最適化されたスマートフォンの高度な計算能力により、機密データ、個人情報、およびアドバイス（健康および医療ケアに関する情報を含むがこれらに限定されない）を個人が常時、任意の場所からアクセスすることが可能である。スマートフォンでは、ラップトップでは利用不可能な機能（例えば移動中のセンサから情報を取り込む能力など）も提供され、ＧＰＳ機能およびカメラ機能も追加される。機密データ、個人情報、およびアドバイスは、異なる意味が、明示的に、または語法の脈絡により、示されない限り、本明細書では機密個人情報と総称される。
【０００４】
モバイルアプリケーション（モバイルアプリ）は、スマートフォン、タブレットコンピュータ、および他のモバイル装置上で実行されるよう設計されたソフトウェアアプリケーションである。いくつかのモバイルアプリは、ヘルスケア情報などの機密個人情報を消費者に供給すること、または健康状況情報を消費者から収集し、ヘルスケア提供者に送信することを実行するために、使用される。機密個人情報の交換に関連するモバイルアプリ（例えばヘルスケアの分野で開発されたアプリなど）の全部が、必ずしも広く消費者に利用可能であるわけではない。最も高度な医療用アプリのなかには、一般消費者を対象として設計されていないものもある。モバイルアプリのなかには、ヘルスケア従事者用に設計されたものもあり、患者用に設計されては入るが処方が必要となるものもあり、患者のごく一部のみをターゲットとするものもある。モバイルアプリのなかには、米国食品医薬品局（ＦＤＡ）の承認が必要であるものもある。モバイルアプリは、基盤となるオペレーティングシステムに移植済み（例えばＡｎｄｒｏｉｄからＷｉｎｄｏｗｓ（登録商標）またはｉＯＳに）であるならば、パーソナルコンピュータ（ＰＣ）などの他のプラットフォーム上での実行も可能である。本明細書で使用される「モバイルアプリ」または「モバイルアプリケーション」という用語は、記載される利益がモバイル性によりもたらされないならば、または語法の脈絡により明らかに制限されることがないならば、必ずしもモバイル装置に限定されることなく、ＰＣ（例えば、デスクトップ型、タワー型、ラップトップ型、ネットブック型、その他）または他の汎用の消費者用計算装置上で実行されるアプリケーションを含み得る。
【０００５】
患者の健康情報などの特定の機密個人情報は法律（例えば合衆国においては、医療保険の相互運用性と説明責任に関する法律（合衆国法典第４２編第３０0ｇｇ条ならびに合衆国法典第２９編第１１８１条以下および合衆国法典第４２編第１３２０ｄ条以下に収録される「ＨＩＰＡＡ」））の保護下にあり、患者のプライバシーが保たれる形での取り扱いが必要である。係る情報は保護医療情報（ＰＨＩ）と呼称される。ＰＨＩに関しては、モバイルアプリケーションに入力されるデータがどのように使用されるかに関する透明性および認識の両方が存在すべきことと、ＰＨＩデータの使用に対する患者の同意が得られるべきことと、が重要である。ヘルスケアモバイルアプリがＰＨＩを収集、格納、および／または伝送する場合、ＨＩＰＡＡおよび当該国の他のあらゆる適用可能な法律または規制に完全に準拠してモバイルアプリがＰＨＩの収集、格納、および／または伝送を行うことが肝要である。電子医療記録（ＥＨＲ）またはパーソナルヘルスレコード（ＰＨＲ）に接続される（係る接続によりユーザは、モバイル装置とＥＨＲ／ＰＨＲとの間で患者情報の送受信を行うことが可能である）ことが意図される任意のモバイルアプリは、セキュリティ保護された様式で接続されなければならず、関与する利害関係者の全員が、ＥＨＲ／ＰＨＲ内に含まれるＰＨＩデータを保護するために自らの責務を負わなければならない。
【０００６】
データセキュリティは、それぞれ情報ライフサイクルの異なるレベルにおける、機密性（例えば暗号化の使用による）、整合性、可用性、信憑性、否認防止、およびアクセス制御などの、セキュリティのいくつかの側面を含む。データセキュリティは暗号化の使用により提供される。暗号化はデータおよび通信のプライバシーを確保するための標準的なツールである。保護情報をセキュリティ保護するための様々な暗号化方式（例えば、アメリカ国立標準技術研究所（ＮＩＳＴ）によりＦｅｄｅｒａｌ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｐｒｏｃｅｓｓｉｎｇ  Ｓｔａｎｄａｒｄｓ  Ｐｕｂｌｉｃａｔｉｏｎ  １９７，  Ｎｏｖｅｍｂｅｒ  ２６，  ２００１として公表されているＡｄｖａｎｃｅｄ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄ（ＡＥＳ）など）が商業的に入手可能である。ＡＥＳは対称性暗号化方式であって、同一の暗号鍵が符号化および複合化の両方に対して使用される。ＡＥＳ方式自体の複数の変形例（例えば、ＡＥＳカウンタモード、ＡＥＳ暗号ブロック連鎖（ＣＢＣ）＋ｃｉｐｈｅｒ  ｔｅｘｔ  ｓｔｅａｌｉｎｇ（ＣＴＳ）、ＲＳＡ、その他）が存在する。ＡＥＳのいくつかの変形例については、Ｒｅｑｕｅｓｔ  ｆｏｒ  Ｃｏｍｍｅｎｔ  （ＲＦＣ）  ３９６２，  ”Ａｄｖａｎｃｅｄ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄ  （ＡＥＳ）  Ｅｎｃｒｙｐｔｉｏｎ  ｆｏｒ  Ｋｅｒｂｅｒｏｓ  ５，”  Ｆｅｂｒｕａｒｙ  ２００５および、同文献内で挙げられた引用文献で説明され得る。
【０００７】
モバイルアプリケーションは、顧客および部品製造業者とのビジネスを行う上で、多くの企業で重要度が増しつつある。健康情報などの機密個人情報を処理する組織の場合では、直接的に患者と接触するためにモバイル性が大いに望まれるが、その一方では、ＨＩＰＡＡにより要求されるセキュリティおよびアーキテクチャに関する全要件に準拠するモバイルアプリケーションの構築は非常に困難である。
【０００８】
モバイルアプリケーションは、基盤となるオペレーティングシステムにより直接的にはサポートされないタスク（例えばセキュリティ保護されたメッセージ伝達および調査など）を、およびモバイル装置の外部に存在するがモバイル装置との通信接続性を有する装置（例えばＢｌｕｅｔｏｏｔｈ（登録商標）装置、ＧＰＳ、その他）との通信を伴うタスクを、アプリケーションが実行することを可能にするインターフェースも含む。モバイル装置は時間の経過とともに発展し、新しい機能が追加されてきた。したがって新しい機能をサポートするために新しいインターフェースがモバイル装置に追加されるであろう。新しい機能をサポートするにあたってはオペレーティングシステムおよびアプリケーション開発ツールに対する更新が必要となる場合があるが、係る更新が実行される頻度は、モバイル装置上のアプリケーションプログラムに対する構成上の変更の頻度と比較すると、さほど高くはない。
【発明の概要】
【発明が解決しようとする課題】
【０００９】
モバイル装置のサポートに関する主要な難点は、モバイル装置上で採用されるアプリケーションプログラムのバージョン更新に関するポリシーおよび手順である。更新済みのアプリケーションプログラムが利用可能になったとき、当該アプリケーションプログラムを所有する全ユーザは各ユーザのモバイル内のアプリケーションプログラムのバージョンを更新しなければならない。ＵＳ安定性、動的なマーケット、技術的ＯＳ要件、その他などの要因の長いリストに応じて、バージョニング時間（特定バージョンが現行バージョンである時間の長さ）が短いアプリケーションプログラムもあり、長いアプリケーションプログラムもある。アプリケーションプログラムバージョンの更新では通常、モバイル装置のユーザがオンライン・アプリ格納領域などのサーバと通信し、アプリケーションプログラムの新しいコピーを取得することが必要となる。このプロセスは、アプリ格納領域がアプリケーションプログラムを制限する傾向にあり、アプリケーションプログラムの新規バージョン公開プロセスを遅らせる傾向にあるため、低速且つ困難である。
【００１０】
さらにモバイルアプリケーション開発に対する大部分のシステムは、それぞれ統合化のレベルに欠陥を有する。モバイル装置に対するアプリケーションの現行実装はグラフィカル・ユーザ・インターフェース（ＧＵＩ）、データ構造、およびロジックを事前定義またはハードコードし、アプリケーションが格納領域またはホスティングサーバからダウンロードされるとき、これらが一緒にまとめられる。他種類のモバイルアプリケーションは、モバイル装置がサーバに接続されている間、ＧＵＩ、データ構造、およびロジックを取得または使用するにあたってはクライアント／サーバ・モードで完全にオンライン上で動作し、サーバに対してデータ接続されない状態では効果的な動作が不可能である。他のアプリケーションでは、それぞれのＧＵＩ、データ構造、およびロジックがハードコードされており、データを同期するにあたってはサーバへの接続が許可される。クライアントとして使用されるモバイル装置は、事前定義されたセットの機能のみを実行し得、事前定義されたＧＵＩを有し得る。
【００１１】
モバイルアプリケーション開発用の周知のシステムのなかには、（例えばＧＵＩロジックおよびデータに対する）機能を動的に作成すること、および、これらの機能をワイヤレスで供給すること、は可能であるが、通信、ストレージ、および処理における統合化されたセキュリティが欠如しているものもある。また係るシステムでは、サーバが、データ復元、セキュリティ管理、およびモバイル装置からの情報への他種類のアクセスの採用を提供するにあたってのシステムの重要部分であることが考慮されていない。
【００１２】
したがってモバイル装置のユーザのための暗号的にセキュリティ保護されたモバイルアプリケーションを開発するための、統合化された開発プラットフォームが必要である。なお係るアプリケーションは、ｍＨｅａｌｔｈ用途、ＨＩＰＡＡおよびＮＩＳＴ／ＦＩＰＳなどの政府セキュリティ規格を実装するアプリケーション、動的にＧＵＩ、ロジック、およびデータを更新するにあたりサーバアプリケーションと通信するアプリケーション、オンラインおよびオフラインで動作するアプリケーション、モバイル装置の紛失または交換の場合に状態およびデータを再構築することが可能なアプリケーション、その他を含むが、これらに限定されない。
【課題を解決するための手段】
【００１３】
本開示に係る実施形態は、単一のプラットフォームにおいて従来は利用不能であった複数の機能を統合する、モバイルアプリケーション開発プラットフォームを提供する。係る統合化は、アプリケーションを構築するための簡単なインターフェースを開発者に提供し、それによりセキュリティ、アプリケーションの配布および管理に関連する複雑性を取り除くことにより、相乗効果をもたらす。統合化された機能は、組み込まれたセキュリティと、サーバ同期と、ソフトウェア開発者が様々なモバイル用のオペレーティングシステムのプログラミングに関する詳細な知識および／または低レベルな知識を有することを必要としない、共通の開発ツールの使用と、を含み得る。
【００１４】
実施形態は、ＨＩＰＡＡ準拠を可能にするアプリケーションコンテナを提供することにより規格準拠アプリケーションの開発を簡略化する。このプラットフォームを使用する構築は、１セットのＨＴＭＬ／ＣＳＳ・Ｊａｖａ（登録商標）Ｓｃｒｉｐｔアプリケーションのみに集中すればよい。係る１セットのＨＴＭＬ／ＣＳＳ・Ｊａｖａ（登録商標）Ｓｃｒｉｐｔアプリケーションが、サポートされるあらゆるモバイルプラットフォーム上で動作し、それにより開発努力および認証負荷が軽減されることとなる。
【００１５】
１つの実施形態では、システムは、暗号化された形態で保護データを格納するよう構成されたパブリッシャデータベースと、パブリッシャデータベースに連結されたパブリッシングサーバと、カスタマアプリケーションに対する通信インターフェースと、パブリッシングサーバに連結された認証サーバであって、パブリッシングサーバを通して提供されたアクティベーションコードを認証すること、モバイル認証ワンタイムパスワードを検証すること、および装置からのデータを解読するためのセキュリティ保護されたセッションキーを生成すること、を行うよう構成された認証サーバと、を含み得、カスタマアプリケーションはモバイル装置から情報を受け入れること、およびモバイル装置に情報を発信すること、を行うよう構成される。モバイル装置は、モバイルアプリケーションコンテナ（またはコンテナ）と、モバイルコンテナに連結されたセキュリティ保護されたストレージと、を含み、モバイルコンテナは、第１モバイル構成アプリケーション（または構成）および内部セキュアウェブサーバを実行するよう構成される。
【００１６】
アプリケーションコンテナは、いくつかのアプリケーション構成の使用をホストおよびサポートすることが可能なモバイルアプリケーションである。各構成は、ＧＵＩ外観、アプリケーションフロー、ロジック、およびデータについて記述する。コンテナは、第１構成として特定される１つの構成で始まり得る。第１構成は、使用するべき他の構成をユーザが選択することを可能にし得る。
【００１７】
本開示に係る実施形態は、保護データへのアクセスを通信端末に対して提供するためのシステムおよび方法を提供し得る。なおこのシステムは、暗号化された形態で保護データを格納するよう構成されたパブリッシャデータベースと、パブリッシャデータベースに連結されたパブリッシングサーバと、パブリッシングサーバに連結された認証サーバであって、保護データに対するアクセスについての暗号的に強力な認証を提供するよう構成された認証サーバと、パブリッシングサーバと通信端末との間に存在する、第１セキュリティ保護チャネルに対するインターフェースと、パブリッシングサーバとカスタマアプリケーションとの間に存在する、第２セキュリティ保護チャネルに対するインターフェースと、を含み、カスタマアプリケーションは、第１セキュリティ保護チャネルおよび第２セキュリティ保護チャネルを介して、通信端末から情報を受け入れること、および通信端末に情報を発信すること、を行うよう構成される。
【００１８】
本開示の１つの実施形態に係る方法は、パブリッシャデータベースに連結されたパブリッシングサーバにより、暗号化された形態で保護データを格納することと、保護データにアクセスするための要求を、通信端末から、受け取ることであって、前記要求は申し立てられたクレデンシャルを含む、保護データにアクセスするための要求を受け取ることと、申し立てられたクレデンシャルを暗号的に強力な認証により認証するために、申し立てられたクレデンシャルを認証サーバに伝送することと、申し立てられたクレデンシャルが認証された場合、通信端末と保護データとの間のアクセスを許可することと、カスタマアプリケーションとパブリッシャデータベースとの間で保護データを通信することと、通信端末とパブリッシャデータベースとの間で保護データを通信することと、を含み得る。
【００１９】
これまで、本開示のいくつかの態様の理解を提供するために、本開示の実施形態の簡単な概要を述べてきた。この概要は、本開示およびその様々な実施形態に関する、広範な概略でもなく、また網羅的な概略でもない。本開示の主要な要素または重要な要素を特定すること、または本開示の範囲を示すことを意図するものではなく、本開示の選択された概念を簡略化された形態で、以下で提示されるより詳細な説明に対する導入として、提示することを意図するものである。理解されるように、上述の特徴または以下で詳細に説明する特徴のうちの１つまたは複数を、単独で、または組み合わせて、利用することにより、本開示の他の実施形態も可能である。
【００２０】
上述した本発明の特徴ならびに特長、およびさらなる本発明の特徴ならびに特長は、特に以下に添付する図面とあわせて、本明細書の実施形態に関する以下のより詳細な説明を考慮すると明らかになるであろう。なおこれらの図面では、様々な図面における同様の参照番号は同様の構成要素を示すために使用される。
【００２１】
本明細書で使用される表題は組織化のみを目的とするものであり、本発明の範囲または請求項の範囲を限定するために使用されることを意図するものではない。本願を通じて使用される「得る」という語は、強制的意味（すなわち「〜が必須である」を意味する）よりも、むしろ許容的意味（すなわち「〜となる可能性がある」を意味する）で使用される。同様に「含む」、「含んで」、「含み」という語は、「〜を含むが、これに限定されない」を意味する。理解を支援するために、同様の参照番号は、可能な場合、図面全体に共通する同様の要素を指すために、使用される。図面の省略可能な部分は、語法の脈絡が別段の内容を示さない限り、破線または点線を使用して図示され得る。
【図面の簡単な説明】
【００２２】
【図１】本発明の１つの実施形態に係るモバイル通信ネットワークを示すブロック図である。
【図２Ａ】本発明の１つの実施形態に係るモバイル装置を示すシステムレベルのブロック図である。
【図２Ｂ】本発明の１つの実施形態に係るエンドユーザの非モバイル装置を示すシステムレベルのブロック図である。
【図３】本開示の１つの実施形態に係るシステム３００の全体図である。
【図４】本発明の１つの実施形態に係る開発プラットフォームの内部アーキテクチャおよび露出されたインターフェースを、相対的により高いレベルの詳細で示す図である。
【図５】本開示の１つの実施形態に係る、アプリケーションを発行するプロセスを示す図である。
【図６】本開示の１つの実施形態に係る、ユーザをアプリケーションに登録するプロセスを示す図である。
【図７】本開示の１つの実施形態に係る、アプリケーションを検索するプロセスを示す図である。
【図８】本開示の１つの実施形態に係る、通信端末上のアプリケーションを起動および使用するプロセスを示す図である。
【図９】本開示の１つの実施形態に係る、アプリケーションを同期および更新するプロセスを示す図である。
【発明を実施するための形態】
【００２３】
本開示について、代表的なデジタル情報システムと組み合わせて以下で例示する。例えばサーバ（単数または複数）および／またはデータベース（単数または複数）を使用するシステムとともに使用することが好適ではあるが、本開示は、いかなる特定のシステムまたはシステム要素の構成とともに使用されることにも限定されない。当業者は、情報にアクセスするための、または決定を制御するための、移転可能な許可が提供されることが望ましい任意のシステムまたはプロセスにおいて、開示される技術が使用され得ることを理解するであろう。
【００２４】
本開示の代表的なシステムおよび方法について、ソフトウェア、モジュール、および関連するハードウェアに関連して説明する。しかし本開示を不必要に不明瞭化することを回避するために、以下の説明では、ブロック図形式で図示され得るか、周知であるか、または別様に要約される、周知の構造、構成要素、装置については省略する。
【００２５】
以下の詳細な説明では、多数の特定的な詳細が、実施形態に関する、または本明細書で説明される他の事例に関する、完全な理解を提供するために説明される。いくつかの事例では、周知の方法、手順、構成要素、および回路については、以下の説明が不明瞭化されることを避けるために、詳細な説明を加えない。さらに開示される事例は単に説明を目的とするものであり、開示される事例に代わり、または開示される事例と組み合わせて、他の事例も用いられ得る。他の事例が等しく効果的となることが可能であり、他の事例が等しく効果的となる可能性もあるため、本発明の実施形態の範囲を限定するものであるとして、本開示で提示される事例を解釈すべきではない。
【００２６】
本明細書で使用される「モジュール」という用語は全般に、ステップ、プロセス、またはコンポーネントの論理的なシーケンスまたは関連づけを指す。例えばソフトウェアモジュールは、コンピュータプログラム内における１セットの関連付けられたルーチンまたはサブルーチンを含み得る。代替的にモジュールは実質的に内蔵型のハードウェア装置を含み得る。モジュールは、ソフトウェア実装またはハードウェア実装に関わらず、プロセスの論理的なセットも含み得る。
【００２７】
本明細書で使用される「送信器」という用語は、全般に、信号の送信を行う能力を有する任意のデバイス、回路、または装置を含み得る。本明細書で使用される「受信器」という用語は、全般に、信号の受信を行う能力を有する任意のデバイス、回路、または装置を含み得る。本明細書で使用される「送受信器」という用語は、全般に、信号の受信および受信を行う能力を有する任意のデバイス、回路、または装置を含み得る。本明細書で使用される「信号」という用語は、電気信号、無線信号、光信号、音響信号、その他のうちの１つまたは複数を含み得る。
【００２８】
本明細書で使用される「コンピュータ可読媒体」という用語は、命令を格納することに関与する、および／または実行のためにプロセッサに命令を提供することに関与する、任意の有形ストレージ媒体および／または伝送媒体を指し得る。係る媒体は、不揮発性媒体、揮発性媒体、および伝送媒体を含むがこれらに限定されない多数の形態を取り得る。不揮発性媒体は例えばＮＶＲＡＭまたは磁気ディスクもしくは光ディスクを含む。揮発性媒体はメインメモリなどのダイナミックメモリを含む。コンピュータ可読媒体の一般的な形態としては、例えばフロッピディスク、フレキシブルディスク、ハードディスク、磁気テープ、もしくは他のあらゆる磁気媒体、磁気・光媒体、ＣＤ−ＲＯＭ、他のあらゆる光媒体、パンチカード、紙テープ、パターン化された穴を有する他のあらゆる物理的媒体、ＲＡＭ、ＰＲＯＭ、ＥＰＲＯＭ、フラッシュＥＥＰＲＯＭ、メモリカードなどのソリッドステート媒体、他のあらゆるメモリチップもしくはカートリッジ、後述する搬送波、または、コンピュータが読み出し可能な任意の他の媒体挙げられる。電子メールに添付されるデジタルファイルまたは他の内蔵型の情報アーカイブまたは１セットのアーカイブは、有形ストレージ媒体と等価である配布媒体とみなされる。コンピュータ可読媒体がデータベースとして構成される場合、データベースは任意種類のデータベース（例えばリレーショナル、階層型、オブジェクト指向、および／またはその他）であり得ることを理解すべきである。したがって本開示は、本開示のソフトウェア実装が格納される、有形ストレージ媒体または配布媒体、および、先行技術で認識される均等物および継承媒体を含むものと考えられる。
【００２９】
図１は、通信端末（例えばモバイル装置および非モバイル装置）と、通信端末上で実行されるアプリケーションを使用し、通信端末を使用して機密個人情報にアクセスし得る関連ユーザと、の分散システムを図示する。セルラ通信を介してセルラ基地局２４とワイヤレス通信するいくつかのモバイル装置２０が図示される。セルラ基地局２４により、大規模な公衆ネットワーク（例えばインターネット２８）上で１つまたは複数のセルラ通信キャリア（図示せず）により運用されるいくつかの中間サーバを介して通信を行うことが可能である。図１はさらに、インターネット２８と通信するいくつかの非モバイル計算装置２１も図示する。トランザクションサーバ３２もインターネット２８と通信し得る。トランザクションサーバ３２はプライベートネットワーク上で検証サーバ３６とも通信し得る。加えてトランザクションサーバ３２は、機密情報の１つまたは複数のリポジトリ、または係る機密情報を処理するシステム、（例えば医療組織または財政組織４０など）とも、通信し得る。なお係る組織４０では、モバイル装置２０および／または非モバイル計算装置２１のユーザはビジネスまたはヘルスケアなどの何らかの関係を有し得る。
【００３０】
本開示に係る実施形態は、図１に図示するモバイル装置２０および／または非モバイル計算装置２１の種類に限定されない。実施形態は、ＰＣ、ＭａｃＢｏｏｋ、タブレットコンピュータ、シンクライアント、またはネットワークを介してアクセス可能な実質的に他のあらゆる種類の計算装置を含む実質的にあらゆる種類の入出力装置または通信端末とともに使用され得る。
【００３１】
図１に図示する要素の構成は、単に例示を目的とするものであること、および、本発明の実施形態を、いかなる特定的構成の要素にも限定するものでないと解釈すべきであることは、強調されるべきである。
【００３２】
サーバは、処理ユニット（ＣＰＵ）、マイクロプロセッサ、もしくはソフトウェアを実行する他種類のデジタルデータプロセッサ、または特定用途集積回路（ＡＳＩＣ）、ならびに係る要素の様々な部分もしくは組み合わせを含む、ソフトウェアの制御によるシステムであり得る。メモリは、ランダムアクセスメモリ（ＲＡＭ）、リードオンリーメモリ（ＲＯＭ）、またはこれらの組み合わせ、および他種類の電子メモリ装置を含み得る。本発明の実施形態は、ソフトウェア、ハードウェア（ロジック回路を含むがこれに限定されない）、またはこれらの組み合わせとして実装され得る。
【００３３】
図２Ａを参照すると、モバイル装置２０のいくつかの構成要素が図示される。図示のように、この実施形態では、モバイル装置２０は、基本的な機能を有する典型的なモバイルフォンである。モバイル装置２０はユーザからの入力を受け取るための入力インターフェース６０を有し、情報を視覚的にユーザに対して提示するためのディスプレイ６４が提供される。モバイル装置２０は、モバイル装置２０上で実行されるいくつかのアプリケーションおよびデータとともに、モバイル装置２０の主要機能を制御するオペレーティングシステムを格納するためのメモリ６８も含む。プロセッサ７２はオペレーティングシステムおよびアプリケーションを実行する。ＳＩＭカード７６は、アプリケーションおよびデータを格納するための追加的なメモリを提供し、アプリケーションおよびデータの格納を実行するためのマイクロプロセッサを有する。加えてＳＩＭカード７６は、モバイル装置２０の識別を許可する一意的なハードウェア識別コードを有する。インストールされると、ＳＩＭカード７６はモバイル装置２０の一部を形成する。他種類のモバイル装置はＳＩＭカード７６に代わって暗号化された装置メモリを有してもよく、係る装置メモリは等価な機能を提供する。通信インターフェース８０は音声およびデータに対するセルラネットワークとの通信を可能にする。
【００３４】
図２Ｂを参照すると、非モバイル計算装置２１のいくつかの構成要素が図示される。図示のようにこの実施形態では、非モバイル装置２１は基本的な機能を有する典型的なデスクトップ型またはタワー型のコンピュータである。非モバイル装置２１は、ユーザから入力を受け取るためのユーザ入力インターフェース２５１（例えばキーボード、タッチスクリーン、および／またはマイクロフォン）を有し、視覚的または音響的に情報をユーザに提示するためのユーザ出力インターフェース２５３が提供される。非モバイル装置２１は、非モバイル装置２１上で実行されるいくつかのアプリケーションおよびデータとともに、非モバイル装置２１の主要機能を制御するオペレーティングシステムを格納するためのメモリ２５５も含む。プロセッサ２５７はオペレーティングシステムおよびアプリケーションを実行する。非モバイル装置２１は、非モバイル装置２１の識別を可能にする一意的なハードウェア識別コード（例えば媒体アクセス制御（ＭＡＣ）アドレス）を有してもよい。メモリ２５５の少なくとも１部分は暗号化される場合がある。通信インターフェース２５９は、例えばイーサネット（登録商標）またはＷｉ−Ｆｉインターフェースにより、ＬＡＮまたはインターネット２８との通信を可能にする。
【００３５】
様々なシステム構成要素間でのセキュリティ設計の不十分な統合化しか提供しない周知のツールおよび方法とは対照的に、本開示に係る実施形態は、よりシームレスなインターフェース接続が提供されるよう、様々な構成要素間でのセキュリティ設計を統合化するために設計されたシステム構成要素を含み、それによりシステム構成要素の開発者は、セキュリティのインターフェース接続について過剰に苦慮することから解放されることとなる。実施形態はまた非認証ユーザによるアクセスから情報を保護する。
【００３６】
統合化は、緩やかに連結されたアプリケーション間での相乗効果を提供し得る。「緩やかに連結された」とは、アプリケーションが必ずしも相互に依存しないことを意味する。依存性が存在するならば、係る依存性の存在により、一方のアプリケーションの挙動は、他方の（すなわち依存する）アプリケーションが存在しない場合でさえも、影響を及ぼされるべきではない。係るアプリケーションは、独立的に使用されてもく、または一緒に使用されてもよく、しかし一緒に使用される場合には、相互に通信する場合がある。例えば２つのアプリケーションがコンテナ内で協働しているならば、これらのアプリケーションのうちの一方が、同期プロセスの後に更新された場合、他方のアプリケーションに影響が及ぶことはないあろうが、協働的な動作は影響される場合がある。アプリケーション間の緩やかに連結された関係は、省略可能なデータをアプリケーション間で共有することにより達成され得る。共有されるアプリケーションが存在する場合、両方のアプリケーションは、共有データを使用して相互作用するであろう。
【００３７】
本開示に係る実施形態は、既知の技術の開発プラットフォームにおける統合化された形態では利用不能であった機能の統合化を含むモバイルアプリケーション開発プラットフォームを提供する。実施形態により、ソフトウェアアプリケーション開発者は、異なるモバイルプラットフォームのソフトウェア開発環境に関する詳細な技術的知識を有することがなくても、またセキュリティに関しておよびモバイル通信に関して精通していなくても、ＨＴＭＬ、ＣＳＳ、およびＪａｖａ（登録商標）Ｓｃｒｉｐｔなどの一般的な開発ツールを使用して、よりセキュリティ保護されたモバイルアプリケーションの作成が可能となり得る。実施形態は、洗練されたクライアント／サーバ・アプリケーションを作成するにあたり必要なツールに、統合化されたエンドツーエンド・セキュリティを提供し得る。実施形態は、バックエンドサーバと通信することにより、モバイルアプリのクライアント内のデジタルコンテンツを同期および／または更新するための方法を提供し得る。なおこの方法は復元に対して（例えばモバイル装置が紛失または交換されたとき、またはソフトウェアアップグレードが予期しない問題を生じた場合に）有用である。モバイルアプリケーション開発プラットフォームは、セキュリティ保護されたモバイルストレージも提供する。係るモバイルストレージは、モバイルアプリがインターネットに接続されていない場合にモバイルアプリを使用することに対して有用である。
【００３８】
本開示の１つの実施形態に係るカスタマアプリケーションは、モバイル装置からの情報を送受信するためにパブリッシャ（例えばパブリッシングサーバ）と通信し得るサーバ側アプリケーションである。パブリッシングサーバは例えば、図１のトランザクションサーバ３２として図示され得る。本開示の１つの実施形態に係るモバイルアプリケーションは、クライアント（モバイルまたは非モバイルのクライアント）用に構築されたアプリケーションであり、エンドユーザとのインターフェースを提供し得る。例えばモバイルアプリケーションは血糖値計の測定値を追跡するための糖尿病用途を含み得、対応するカスタマアプリケーションは、血糖値計の測定値の受信および処理を行うサーバベースのプログラム（例えば電子カルテ（ＥＭＲ）プログラム）を含み得る。
【００３９】
本開示に係る実施形態は、通信経路を、および、モバイルアプリのクライアントとバックエンドサーバとの間の比較的良好に定義されたインターフェースを、提供し得る。モバイルアプリのクライアントの開発努力を１度行うだけで、その影響力は、それぞれの様々なモバイルプラットフォームのオペレーティングシステム（例えばＡｎｄｒｏｉｄ、Ｗｉｎｄｏｗｓ（登録商標）  Ｍｏｂｉｌｅ、ｉＯＳ、その他）上で実行されるモバイルアプリクライアントにも及び得る。汎用サーバが、モバイルアプリのクライアントと通信するために実施形態の一部として提供されたインターフェースを使用するバックエンドサーバアプリケーションをホストするために使用され得る。
【００４０】
モバイルアプリのクライアントとバックエンドサーバとの間のインターフェースはいくつかのレベルのインターフェースを含み得る。例えばクライアントアプリケーションは、モバイル装置内のセキュリティ保護された記憶領域にアクセスするためにＪａｖａ（登録商標）Ｓｃｒｉｐｔインターフェースを使用し得る。サーバ側アプリケーション（例えばカスタマアプリケーション）は、パブリッシングサーバと通信するために、（ＳＯＡＰ規格のセキュリティ機能を使用して構成されたＳＯＡＰ）ウェブサービスインターフェースなどのセキュリティ保護された通信インターフェースを使用し得る。ＳＯＡＰは、当業者により知られるように、Ｗｅｂ  Ｓｅｒｖｉｃｅｓ  Ａｃｔｉｖｉｔｙの一部であるＸＭＬ  Ｐｒｏｔｏｃｏｌ  Ｗｏｒｋｉｎｇ  Ｇｒｏｕｐにより生成されたＷ３Ｃ勧告として周知である。現行バージョンは２００７年４月２７日付のＳＯＡＰ１．２である。本開示に係る実施形態は、モバイル装置内のセキュリティ保護された記憶領域と、パブリッシングサーバと、を一緒にリンクし、それにより、モバイル装置アプリケーションとカスタマアプリケーションとの間に通信リンクが提供されることとなる。インターフェースのために使用される技術は、他種類のインターフェース技術を含み得る。
【００４１】
本開示に係る実施形態は、ユーザがアプリ格納領域からコンテナをダウンロードするのは１度のみとなるな形でモバイルアプリケーション開発プラットフォームを使用するためのプロセスを提供し得る。コンテナはいくつかのアプリケーション構成を保持することができ、モバイル装置は、モバイル装置およびユーザ選好に好適な構成を使用し、その使用に応じてユーザＧＵＩ、フロー、ロジック、およびデータが提示される。その後、アプリケーション構成の更新が関連サーバから直接的に実施される。これにより、次にアプリケーションプログラムがサーバにアクセスするためにユーザにより使用されるときに、ユーザは最新バージョンのアプリケーション構成を取得することが可能となる。例えばコンテナは、ＨＴＭＬ／ＣＳＳまたはＪａｖａ（登録商標）Ｓｃｒｉｐｔなどのコードによる、所定のモバイル装置に対するユーザＧＵＩ、フロー、ロジック、およびデータに関する記述を含み得る。コンテナは、モバイルプラットフォームに対して好適なコードを解釈し、モバイルプラットフォームに対するユーザＧＵＩ、フロー、ロジック、およびデータを提供し得る。
【００４２】
例えばコンテナがサーバに接続すると、コンテナはアプリケーション構成を受け取る。第１アプリケーション構成が最初にコンテナにより使用され、これによりユーザはアプリケーションを使用して作業を開始することが可能となる。アプリケーション構成は、サーバによりコンテナに送られた記述子、ロジック、およびデータ構造の１つのセットである。記述子、ロジック、およびデータ構造は、例えばＨＴＭＬ、ＣＳＳ、Ｊａｖａ（登録商標）Ｓｃｒｉｐｔ、およびＪＳＯＮを使用して、様々な方法で実装または通信され得る。他の技術も使用されてよい。
【００４３】
コンテナはサーバ内に格納された最新の構成を受け取る。サーバは、任意の時間に構成を構成することができ、構成が更新された場合、コンテナは最終（すなわち最新）のバージョンを受け取る。コンテナはいくつかのサーバに接続される場合がある。コンテナが（例えばアクティベーションコードの提供により）初期化されると、コンテナは関連サーバを識別し、関連サーバとの通信を開始することができる。ひとたび関連サーバが選択されると、コンテナは常に当該関連サーバを使用することになる。いくつかの実施形態では、モバイル装置は、複数の関連サーバと通信するよう構成される場合もあり、例えば１つの関連サーバが利用不能である場合でさえも、引き続き他の関連サーバと通信することができる。
【００４４】
本開示に係る実施形態は、外部アプリケーション（例えば「カスタマアプリケーション」）にインターフェースを提供することができ、外部アプリケーションは、パブリッシングサーバを介して、情報をモバイル装置から受け取ること、および情報をモバイル装置に発信すること、を行うことが可能である。カスタマアプリケーションは、モバイルクライアントからの情報を送受信するためにパブリッシングサーバと通信するサーバアプリケーションである。カスタマアプリケーションはセキュリティ保護されたサービスインターフェース（ＳＯＡＰ）を使用してパブリッシャに接続し得る。カスタマアプリケーションの例としては、モバイルユーザとの情報交換を行うためにパブリッシングサーバのＷＳＩインターフェースを使用するＥＭＲシステムが挙げられ得る。モバイルアプリケーション開発プラットフォームは、カスタマアプリケーションをモバイルアプリケーションから切り離すこと、およびカスタマアプリケーションの介在なしにユーザの情報の復元（モバイル内の情報が紛失した場合）を可能にすることを行うために、モバイル装置に発行されたカスタマアプリケーションからの実質的に全部の情報を、モバイルアプリ開発プラットフォームによりアクセス可能なセキュリティ保護されたデータベースに格納し得る。
【００４５】
カスタマアプリケーション開発プラットフォームは、少なくとも２つの異なる種類のカスタマアプリケーション、すなわちインタラクティブ・アプリケーションおよびポーリング・アプリケーション、を可能にする。インタラクティブ・アプリケーションに対しては、カスタマアプリケーションは、カスタマアプリケーションに関連付けられたデータがパブリッシャデータベース（例えば図４のパブリッシャデータベース４０２）内で変更されたとき、通知されるであろう。ポーリング・アプリケーションに対しては、ポーリング・カスタマアプリケーションはプラットフォームデータベース内のいずれの情報が変更されたかを周期的に検査し、カスタマアプリケーションの目的を実行するために、データの取得および処理を実行する。カスタマアプリケーションがそれ自体のライフサイクルを有することができるように開発プラットフォームが待ち行列機構を提供するため、インタラクティブ・カスタマアプリケーションは、オンラインであってもよく、またはオフラインであってもよい。
【００４６】
カスタマアプリケーションは通常、パブリッシングサーバに接続されたコンピュータサービスであり、パブリッシングサーバから通知を受け得る。特定の時間的期間の間、カスタマアプリケーションは、保守サイクルまたは通信障害のために、オフライン（例えば休止中）となる場合もある。モバイルアプリケーションを使用するユーザはオフライン時間的期間の間に依然として情報を変更（例えばデータの更新／追加／削除など）する場合があり、パブリッシングサーバは依然として当該変更についてカスタマアプリケーションに通知する必要がある。しかしカスタマアプリケーションがオフラインであるため、カスタマアプリケーションは通知を受けることができない。通知の損失を防止するために、実施形態は通知を待ち行列に入れなければならず、カスタマアプリケーションサービスがオンライン状態に戻ったとき、待ち行列は、オフライン時間中の間に生じた変更の全部に関する通知の供給を開始するであろう。ライフサイクルとは、カスタマアプリケーションを更新し、更新済みカスタマアプリケーションをモバイルアプリケーションユーザにアクセス可能な状態にする、スケジュールを指す。ライフサイクルは、ここではオフラインフェーズおよびオフラインフェーズに関して説明されるが、追加的に、他のフェーズも使用されてもよく、または利用可能となってもよい。
【００４７】
モバイルアプリケーション開発プラットフォームは、１つまたは複数の組織、ユーザグループ、およびアプリケーションをサポートし得る。各組織は、ユーザグループおよびアプリケーションの組織自体のセットを有し、係るユーザグループのメンバーには、当該ユーザグループに属さないエンティティと比較して、アプリケーション構成に対するより大きい信頼またはアクセスが与えられ得る。いくつかのユーザグループは第１セットのアプリケーション構成に対するアクセスを有し得、他のグループは第２セットのアプリケーション構成に対してアクセスを有し得る。複数の組織は、１つのシステムが複数のカスタマ（例えば病院ＡＢＣおよび病院ＸＹＺ）間で共有される場合、有用となる場合がある。病院ＡＢＣの患者が第１グループを形成し得、スタッフメンバーが第２ユーザグループを形成し得、その一方で、病院ＸＹＺは異なるユーザ組織を有し得る。これら２つの組織は同一の計算・通信機材（例えばサーバ）を使用するが、様々なグループのユーザ、アプリケーション、およびデータは、互いに対して独立的である。係る複数組織によるリソースの使用は、マルチテナント使用と呼称され得る。組織、ユーザグループ、およびアプリケーション間の不正アクセスを防止するために、アクセス制御が使用される。アクセス制御は、管理者によりユーザグループおよびアプリケーション間で割り当てられたアクセス権に基づく。
【００４８】
実施形態は、利用可能である場合、アウトオブバンドユーザ登録またはアプリ内ユーザ登録をサポートし得る。アウトオブバンドユーザ登録は、カスタマアプリケーションがユーザの登録を許可するとき、実行される。この場合、登録は、カスタマポータルを介して、または他のシステム（例えば人間リソースシステムなど）からの自動登録により、モバイルアプリケーションを使用せずに、実行される。対照的に、アプリ内登録では、ユーザがモバイルアプリケーションから自己登録することができる。
【００４９】
モバイルアプリケーション開発プラットフォームは、データ、状態、およびユーザ選好を共有することにより協働するよう設計された複数アプリケーション構成をサポートし得る。アプリケーション構成は、アプリケーションにより使用されるデータセットを含む場合があり、加えてこのデータセットは他のアプリケーション構成と共有され得る。共有可能なアプリケーション構成データセットは開発者に、複雑なアプリケーションをモジュール方式で構築するための、または複数のセグメント化されたアプリケーションを構築するための、フレキシビリティを提供する。なお、係るセグメント化されたアプリケーションは、他のセグメント化されたアプリケーションから比較的独立的に動作し得る。係るアプリケーションは、協調的アプリケーションまたは緩やかに連結されたアプリケーションと呼称され得る。
【００５０】
ユーザデータの観点からすると、モバイルアプリ開発プラットフォームは「ドキュメント」に対して作用する。ここで、ドキュメントは実質的にあらゆる種類の構造（例えば測定値、ドキュメント、スプレッドシート、テキスト、グラフ、画像、オーディオ、ビデオ、ストリーム媒体、その他）を有する実質的にあらゆる種類のデータであり得る。所望により、実質的にそれぞれのドキュメントは、ドキュメントの作成時または更新時に提供される１つまたは複数のラベルまたはタグにより識別され得る。ラベルおよびタグは、一意性が確保されるようシステムにより提供されてもよく、または記憶が容易となるよう命名上の便宜としてユーザにより提供されてもよい。ラベルまたはタグは、個々のドキュメントに対して、見出しを付与すること、識別すること、および発見することを容易にするために使用されてもよい。いくつかの実施形態では、ドキュメントは、ドキュメントの更新時に、そのラベルまたはタグを保持し得る。いくつかの実施形態では、ラベルおよびタグはユーザにより管理（例えば）変更、追加、除去）されてもよい。ラベルおよびタグはドキュメントが含むデータの種類（例えばＭＰ４ビデオ）を示すため使用されてもよい。モバイルアプリケーションがデータに対して作用する方法は限定されない。例えばデータがＨＴＭＬ／ＣＳＳ／ＪＳコードを含む場合、モバイルアプリケーションは、当該データに対して好適なフォーマットに変換するよう構成され得る。
【００５１】
本開示に係るいくつかの実施形態では、モバイルユーザは、アプリケーションをアクティブ化するにあたり使用されるアクティベーションコードを取得するために、または登録されたユーザに対して利用可能である追加的な機能または利益を有するモバイルアプリケーションを使用するために、アウトオブバンド通信機構を使用して（ウェブポータルなどの２次的通信チャネル、または本人が直接的に）、カスタマサービスエンティティに登録し得る。本開示に係る他の実施形態では、コントローラアプリケーションは、システム内のユーザ登録を制御し、ユーザがモバイルアプリケーションをアクティブ化することができるようユーザにアクティベーションコードを提供し得る。この第２オプションは、第１オプションに類似するが、パブリッシングサーバに登録され前にユーザがすでに他のシステムに登録されているという点が異なる。本開示に係る他の実施形態では、アクティブ化はモバイルアプリケーション自体から実行されてもよい。それにより、モバイル装置のユーザは、最初にモバイルアプリケーションを使用することによりアウトオブバンドで（例えば電子メールまたはＳＭＳテキストメッセージなどを介して）アクティベーションコードを要求してアクティベーションコードを受け取り、次に受け取ったコードを入力してアプリケーションをアクティブ化し、アクティブ化された機能の使用を進めることが可能となる。
【００５２】
様々な実施形態により解決される問題は、各モバイルプラットフォームに対して別個のソフトウェアコードを作成するという負荷を発生させることなく、オンラインおよびオフラインの両方に対して、本来的にセキュリティ保護されたモバイルアプリケーションを開発するかについてである。さらに、モバイルアプリケーションは、セキュリティ保護されたデータアプリケーションに関連するセキュリティ規格および仕様の実質的に全部に準拠して設計され、動作すべきである。モバイルアプリケーション開発プラットフォームを使用して開発される他のモバイルアプリケーションに関して、望ましい特性は、モバイルアプリケーションが、共同的であるべきこと、相互にデータの共有が可能であるべきこと、モジュール的に共有可能ならびにモバイル装置にアップロード可能であるべきこと、および動的に更新可能であること、を含む。モバイルアプリ開発プラットフォームはＧＵＩ記述言語を使用し、スクリプト言語（単数または複数）をサポートし得る。
【００５３】
本開示に係る実施形態は、機密情報の取り扱いおよび処理（例えば患者およびカスタマユーザに対する健康アプリケーション）の実行と、上述の望ましい特性を組み込むことと、を行うモバイルアプリケーションの開発およびサポートを可能にする。実施形態は、機密情報にアクセスする必要がある事業主体（例えば医療サービス提供者）が、機密データに関するより深い知識（例えば患者の挙動に関する改善された理解、処方または推選された医薬品に対する準拠、および患者の健康に対する薬物療法の影響など）を取得することを可能にする。本明細書で説明する実施形態は、患者などの人の関心を惹起し且つ患者が自信をもって自分のデータを入力するよう動機付けるモバイルアプリケーションの開発を可能する。健康用途のためのモバイルアプリケーションは、患者情報の漏洩または誤用がないように確実な保護を支援するために、ＨＩＰＡＡ準拠アプリケーションとなるであろう。
【００５４】
モバイルアプリケーションは患者の関心を惹起すべきであるため、モバイルアプリケーションおよびそのコンテンツは、変化する患者の使用、需要、期待に応じて調節され、それにより患者の関心が惹起され続けるように、比較的高い頻度で更新および改善されるべきである。多くの場合、ユーザは、更新および改善の利益を意識すべきである。したがって健康アプリケーションの場合、ユーザの医療関係の需要の多数または全部を解決しようとする１つの簡単ではあるが統合化されたモバイルアプリケーションを提供することにより、ユーザはモバイルアプリケーションを使用することに対する関心がより大きくなるであろう。患者が自分自身の健康管理に関してより大きい関心を抱くことの結果として、患者の健康が改善され得る。
【００５５】
本開示に係る実施形態は、アプリケーション開発者が、少なくともモバイルアプリケーションまたはモバイルアプリ開発プラットフォームの以下の特性を有する、モバイルアプリケーションを開発することを支援するモバイルアプリ開発プラットフォームを提供し得る。
【００５６】
実施形態は、例えばセキュア・ソケット・レイヤ（ＳＳＬ）に対して独立的である強力な転送セキュリティプロトコルを使用することにより、アプリケーション構成情報、データ、設定、その他のダウンロードをサポートし得る。セキュリティ保護された伝送機構は余分なＳＳＬ層の上でも使用され得る。
【００５７】
実施形態は、常時インターネット接続（ＷｉＦｉ、３Ｇ、４Ｇ、５Ｇ、その他）を、インターネット無接続を、または単発的インターネット接続を要求するモバイルアプリケーションの開発をサポートし得る。
【００５８】
実施形態はコンテナをアプリ格納領域からタウンロードする能力をサポートし得る。それにより、同一コンテナ内の複数のアプリケーション構成の実行がサポートされるであろう。
【００５９】
実施形態は、それぞれの異なる種類のユーザに対してサーバから複数のアプリケーション構成をダウンロードする能力をサポートし得る。
【００６０】
実施形態は、他のアプリケーションをインストールする必要なしに、および装置に対する異なるバージョンまたは更新されたバージョンのモバイルアプリケーションを取得する必要なしに、ユーザごとに複数のアプリケーション構成を構成する能力をサポートし得る。
【００６１】
実施形態は、データを共有するために、または独立的なデータセットを有するために、複数のモバイルアプリケーション構成を提供する能力をサポートし得る。データセットは、ユーザが情報を格納し得る、事前定義された論理ロケーションまたは区分であり得る。データセットは、階層的であってもよく、および／または再帰的であってもよい。データセットはアプリケーションごとに異なってもよく、またはデータセットはアプリケーション間で共有されてもよい。データセットは、データグループにグループ化されてもよい。例えば単一のユーザが、自分の論理スペースにおける異なるデータセット内に異なるドキュメントを（例えばＰＨＩデータセット内にＰＨＩドキュメントを、および測定値データセット内に血圧測定値ドキュメントを）有してもよい。異なるユーザは、たとえ同一データセット内に同様のドキュメントがあったとしても、異なる論理空間またはその関係構造（例えばフォルダツリー、または親／子フォルダ関係）を有し得る。
【００６２】
データグループはカスタマアプリケーションＵＲＬエントリーポイントを使用してカスタマアプリケーションと関連付けられる。カスタマアプリケーションは、データグループに加入し得、カスタマアプリケーションは、データグループから通知を得る必要がある。加入済みカスタマアプリケーションは、データグループに関連付けられたデータセットのドキュメントが作成、変更、または削除されたとき、通知され得る。
【００６３】
実施形態は、構成、ロジック、およびデータを格納するにあたり強力なセキュリティ保護されたストレージを使用するモバイルアプリケーションを開発する能力をサポートし得る。強力なストレージとは暗号化されたストレージの暗号的な強さを指す。係る強力なセキュリティ保護されたストレージは多くの場合、ＡＥＳまたは他の同様な強力なセキュリティ規格を使用する。
【００６４】
実施形態は、クライアントおよびサーバの両方におけるユーザデータの変更およびユーザデータ相互作用を追跡する能力を有するモバイルアプリケーションを開発する能力をサポートする。
【００６５】
実施形態は、データ復元、セキュリティクレデンシャル復元、ユーザ間のデータ共有をサポートするために、統合化されたサーバ相互作用を提供し、同一プラットフォームにおけるユーザ情報と相互作用するために、ポータルを許可し得る。統合化されたサーバ相互作用は、カスタマアプリケーションがパブリッシングサーバと相互作用することを可能にするＷＳＩインターフェースをパブリッシングサーバが提供するとき、存在する。ＷＳＩインターフェースは、サーバとカスタマポータルとを統合化するために、またはサーバとカスタマアプリケーション（例えば従来型アプリケーション、その他）とを統合化するために、使用され得る。ポータルは、エンドユーザが遠隔システムと相互作用することを可能にするアプリケーションプログラムとして知られる。ポータルは、ウェブアプリケーションとも呼称され得る。
【００６６】
実施形態は、外部サーバがユーザ変更の一部または全部に関する通知を受け取り、提供されたサービスインターフェースを介してユーザ情報の取得およびプッシュが可能となるための、統合化機構（例えば通信インターフェース）を提供し得る。係るサーバは、モバイル装置に情報を発行するために、およびモバイル装置から情報を取得するために、使用され得る。例えば外部サーバは、モバイル装置から送られた情報の受信および処理を行う。サーバは、セキュリティ保護されたウェブサービスインターフェース（ＷＳＩ）を使用してパブリッシングサーバと通信し、モバイル装置において生成された情報を取得する。ＷＳＩは、ＳＯＡＰ規格に基づくコール、パラメータ、およびデータ構造のミドルウェアとして知られる。本開示に係る実施形態はパブリッシングサーバと通信するにあたりＳＯＡＰ規格を使用する。
【００６７】
実施形態は、モバイル装置が紛失または盗難された旨の報告がなされた場合にモバイル装置上のセキュリティ保護された情報を自動消去することをサポートし得る。係る消去は、無線によるワイヤレスコマンドを介して、または無効パスワード入力の試行が数度なされた後に、遠隔で起動され得る。その後、ユーザは、新規装置をアクティブ化するためにアクティベーションコードを受け取り、次に、旧装置に格納されていたが現在は消去されてしまったセキュリティ保護されたコンテンツを復元するために、装置とパブリッシングサーバとを同期し得る。実施形態は、セキュリティ保護されたデータ格納領域が絶対にクローニングされない（すなわち、データ格納領域を保持する装置を最初に消去しない限り、または新規アクティベーションコードを取得しない限り、データ格納領域は複製されない）ように、セキュリティ機能を使用する。
【００６８】
実施形態は、秘密情報を保護するために、完全な法的遵守および規制的遵守（例えばＨＩＰＡＡ、Ｄｅｆｅｎｓｅ  Ｉｎｆｏｒｍａｔｉｏｎ  Ａｓｓｕｒａｎｃｅ  Ｃｅｒｔｉｆｉｃａｔｉｏｎ  ＆  Ａｃｃｒｅｄｉｔａｔｉｏｎ  Ｐｒｏｃｅｓｓ（ＤＩＡＣＡＰ）、および将来使用され得る他の遵守様式）を提供し得る。
【００６９】
実施形態はマルチテナントおよび複数ユーザグループをサポートし得る。
【００７０】
実施形態は、本開示に係る実施形態により開発されたアプリケーションにユーザグループのメンバーがアクセス権を付与することをサポートし得る。
【００７１】
実施形態は、本開示にしたがって、他のユーザに属するデータの読み出し、更新、削除、または共有を行うために他のユーザに属するデータにユーザがアクセス権を付与することをサポートし得る。
【００７２】
実施形態は、外部サーバ（例えばカスタマアプリケーション）とモバイル装置との間のセキュリティ保護された通信経路を提供し得る。カスタマアプリケーションおよびモバイルアプリケーション構成の開発者は、特定の実装に関して精通する必要がない。
【００７３】
実施形態は、カスタマアプリケーションに関連付けられたデータがプラットフォームデータベース内で変更されたとき、カスタマアプリケーションを更新するために、異なる方式（インタラクティブ方式およびポーリング方式の両方）をサポートし得る。
【００７４】
実施形態は、より新しいモバイル装置の機能を使用するネイティブアプリケーションおよびハイブリッドアプリケーションがサポートされるよう、アプリケーションプログラミングインタフェース（ＡＰＩ）を拡張する能力を提供し得る。
【００７５】
実施形態は、ユーザデータに対してドキュメント抽象化を使用することをサポートし、将来の検索性能を改善するために、ユーザがドキュメントメタ情報にタグを追加する能力を提供し得る。ドキュメント抽象化は、システムにより伝送される情報から実施形態が独立することを支援する。ドキュメントは、検索可能タグ、情報種類、その他を示し得るメタ情報フィールドを有する実質的にあらゆる種類のコンテンツであり得る。この情報は、主にカスタマアプリケーションサーバおよび対応するアプリケーション構成に対して、重要な意味を有するものである。
【００７６】
実施形態は、カスタマアプリケーションがプラットフォームデータベースを使用する能力を、および／またはカスタマアプリケーションがそれ自体のデータベースを有する能力を、提供し得る。
【００７７】
実施形態は、他の通信プロトコル（例えばＢｌｕｅｔｏｏｔｈ（登録商標））をサポートし、他の外部装置（例えばバイオメトリック装置）をサポートし得る。
【００７８】
実施形態は、実質的に任意の時間にカスタマアプリケーションからユーザプロファイル管理要求を受け取るよう構成されたパブリッシングサーバを含み得る。ユーザプロファイルの作成後、パブリッシングサーバはユーザプロファイルを登録し、認証サーバからアクティベーションコードを取得し得る。認証サーバは例えば、図１の検証サーバ３６として図示され得る。アクティベーションコードはカスタマアプリケーションに提供され得る。
【００７９】
実施形態は、実質的に常時、モバイル装置からユーザ登録要求を受け取るよう構成されたパブリッシングサーバを含み得る。ユーザ登録要求を受け取った後、パブリッシングサーバは認証サーバから認証コードを要求し、モバイル装置に認証コードを提供し得る。認証コードを受け取った後、モバイル装置はアクティベーションプロセスを進め得る。
【００８０】
実施形態は、セキュリティ保護されたストレージに対する暗号鍵を導出するにあたり、モバイル装置にパスワードまたは暗号鍵を格納することなく、ユーザパスワード、受け取られたセキュリティクレデンシャル、および内部モバイル情報を使用するよう構成されたモバイル装置を含み得る。
【００８１】
実施形態は、対応するデータが変更された（例えば作成、更新、または削除）ときに、通知を待ち行列に入れること、およびカスタマアプリケーションに供給することを行うよう構成されたパブリッシングサーバを含み得る。
【００８２】
実施形態は、カスタマアプリケーションからの情報を取得または発信するためのＳｅｃｕｒｅｄ  Ｗｅｂ  Ｓｅｒｖｉｃｅ  Ｉｎｔｅｒｆａｃｅコールを受け取るとアプリケーションの監視対象に割り当てられた情報のみがアプリケーションによりアクセス可能となるよう構成された、パブリッシングサーバを含み得る。アプリケーションは、変化に対してポーリングしてもよく、またはパブリッシャの通知に反応してもよい。
【００８３】
実施形態は、バイオメトリックリーダ（例えば指紋リーダ、虹彩スキャナ、その他）を含むモバイル装置を含む場合がある。モバイル装置は、Ｗｉ−Ｆｉ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＺｉｇＢｅｅ、Ｎｅａｒ  Ｆｉｅｌｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ（ＮＦＣ）、その他などの近距離無線インターフェースをさらに含む場合がある。
【００８４】
実施形態は、開発者に検査機能およびログ記録機能を提供するモジュールを含むモバイルアプリケーションを含む場合がある。実質的に全システム動作は検査目的のためにログ記録される場合がある。
【００８５】
実施形態は、ユーザデータに加えられた変更に関するセキュリティ保護された履歴を保持するよう構成されたパブリッシングサーバを含む場合がある。
【００８６】
実施形態は、それぞれに対して独立的な複数のモバイル装置をサポートする情報を発行するよう構成されたパブリッシングサーバを含む場合がある。
【００８７】
実施形態は、機能不全モジュールまたは例外的エラー（例えばプロセッサ障害またはオペレーティングシステム障害を生じさせるエラーであって、データ伝送エラーは含まない）を自己監視または検出するよう構成されたパブリッシングサーバを含む場合がある。パブリッシングサーバは、機能不全モジュールまたは例外的エラーを管理者に通知し得る。
【００８８】
実施形態は、レイジーダウンロード技法およびセキュリティ保護ダウンロード機構を使用してドキュメント添付を管理するよう構成されたパブリッシングサーバを含む場合がある。レイジーダウンロード技法は、受取ユーザが添付されたドキュメントにアクセスする必要がある場合のみに当該ドキュメントがダウンロードされる技法として知られ得る。
【００８９】
実施形態は、ストリーミングマルチメディアおよび大規模データを管理するよう構成されたパブリッシングサーバを含み得む場合がある。
【００９０】
実施形態は、カスタマモジュールと通信するために制御の反転（ＩＯＣ）を可能にする他のセットのインターフェースを提供するよう構成されたパブリッシングサーバを含む場合がある。カスタマモジュールは、パブリッシングサーバの一部とみなされ得るが、動作するにあたりパブリッシングサーバのＡＰＩおよびリソースを使用するカスタマロジックを含んでもよい。パブリッシングサーバは、必要時に（例えばユーザからの情報がシステムに到着したことをカスタマモジュールに知らせるために）カスタマモジュールを使用し得る。
【００９１】
実施形態は、ユーザ管理および認証機構（例えば、ライト・ウエイト・ディレクトリ・アクセス・プロトコル（ＬＤＡＰ）、Ｗｉｎｄｏｗｓ（登録商標）アクティブディレクトリ、その他）との統合化を提供するよう構成されたパブリッシングサーバを含む場合がある。ＬＤＡＰは、インターネットプロトコル（ＩＰ）ネットワーク上における分散ディレクトリ情報サービスにアクセスおよび維持するためのオープンなベンダー中立の業界標準のアプリケーションプロトコルである。
【００９２】
図３は本開示の１つの実施形態に係るシステム３００の全体図を図示する。システム３００は２つの主要な装置アプリケーション３１０および計算装置３０７を含む。計算装置３０７が相互作用する構成要素および装置アプリケーション３０７の構成要素自体がカスタマサーバアプリケーションの例である。このカスタマサブシステムにおいて、装置アプリケーション３０７は、インターネットブラウザ３０２にインターフェース３０４を提供する。なおインターフェース３０４は、計算装置３０７上にまたは計算装置３０７内に存在するカスタマアプリケーション３０６にユーザがアクセスすることを可能にするために、カスタマにより使用される。計算装置３０７はメモリに連結されたプロセッサを含み、このメモリは命令を格納するよう構成され、なおこの命令は、プロセッサにより実行されたとき、カスタマアプリケーション３０６の機能を提供する。カスタマアプリケーション３０６および／または計算装置３０７は、サーバコンピュータを含むか、またはサーバコンピュータによりホストされ得る。カスタマアプリケーション３０６は、１つまたは複数の個々のアプリケーション（例えばエンドユーザウェブポータル、ケース管理ポータル、その他）を表し得る。いくつかの実施形態では計算装置３０７はコンピューティングプラットフォームも提供する場合があり、そのコンピューティングプラットフォーム上でインターネットブラウザ３０２が実行される。いくつかの実施形態では、計算装置３０７またはカスタマアプリケーション３０６の構成を構成または制御するために、管理者インターフェース３０８が計算装置３０７または３０６に提供され得る。
【００９３】
システム３００は装置アプリケーション３１０をさらに含む。装置アプリケーションはサイト３１４とカスタマサブシステム３０７、３０６との間に通信インターフェース３１８を含む。通信インターフェース３１８はＬＡＮまたはインターネットなどのＷＡＮに対するイーサネット（登録商標）インターフェースを含み得る。ネットワーキング層において通信インターフェース３１８は、標準的ＳＯＡＰセキュリティ機能を使用するＳｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ（ＳＯＡＰ）などのセキュリティ保護された通信インターフェースを使用し得る。なお係る通信インターフェースでは、プロトコルのセキュリティはＳＳＬに依存しない。ＳＯＡＰは、集中化されていない分散型環境で情報を交換するための軽量プロトコル（すなわち計算的に強力でない）として当業者に周知である。ＳＯＡＰは３つの部分を含むＸＭＬベースのプロトコルであり、これらの３つの部分とは、メッセージの内容および内容の処理方法について記述するフレームワークを定義するエンベロープと、アプリケーションにより定義されるデータタイプの例を表現するための１セットの符号化規則と、遠隔手続き呼び出しおよび応答を表現するための規約と、である。ＳＯＡＰは、多様な他のプロトコルと組み合わせての使用が可能であり、ＨＴＴＰおよびＨＴＴＰ拡張との組み合わせでＳＯＡＰの使用方法について記述するバインディングが当業者により周知である。
【００９４】
サーバ３１４は、通信インターフェース３１８と通信的にインターフェース接続し、様々なサーバアプリケーションに対するサーバ（例えばパブリッシングマネージャサーバ、認証サーバ、プロビジョニングサーバなど）として動作するよう構成される。サーバ３１４は装置アプリケーション３１０に対する通信インターフェース３１２をサポートし得る。装置アプリケーション３１０は、１つまたは複数のアプリケーション構成を有するクライアント部分（またはコンテナ）をサポートまたは実行し、そのクライアント部分は計算装置３０７上で実行され得る。装置アプリケーション３１０は、保護情報のセキュリティ保護された（すなわち暗号化された）ストレージを提供すること、および通信インターフェース３１２を介してセキュリティ保護された通信を提供することを実行するよう構成され得る。いくつかの実施形態では装置アプリケーション３１０はサーバ３１４内に提供され得る。サーバ３１４は管理者３１６に対するインターフェース（例えばウェブインターフェース）をさらに含み得る。管理者３１６は、サーバ３１４および／または装置アプリケーション３１０を構成または制御するために使用され得る。サーバ３１４は、当該技術分野で周知のクラウドベースの健康関連サービス３２０（例えばＭｉｃｒｏｓｏｆｔ  Ｈｅａｌｔｈ  Ｖａｕｌｔ（登録商標）、Ｇｏｏｇｌｅ  Ｈｅａｌｔｈ（登録商標）、その他など）に対する通信インターフェースを、およびメッセージ送信、ファックス、その他などのための他のサービス（例えばＣｌｉｃｋａｔｅｌ（登録商標）およびＥｓｋｅｒ（登録商標）など）に対する通信インターフェースを、さらに含み得る。
【００９５】
図４は、特にパブリッシングサーバ４０６および認証サーバ４１０と通信するモバイルアプリケーション４１４のユーザに対してサーバ３１４により使用される内部アーキテクチャおよび露出されたインターフェースの実施形態４００を比較的詳細に図示する。いくつかの実施形態では単一のサーバが、パブリッシングサーバ４０６および認証サーバ４１０を実装するために使用される場合がある。
【００９６】
モバイルアプリケーション４１４および／または計算装置３１０は、セキュリティ保護された格納領域４１６に通信的に連結され得る。セキュリティ保護された格納領域４１６は計算装置３１０によりホストされてもよい。計算装置３１０は、ローカルウェブ構成およびビジネスロジックを管理するために使用される内部のセキュリティ保護されたウェブサーバおよびブラウザを含み得る。
【００９７】
パブリッシングサーバ４０６は通信インターフェース４０８を介して認証サーバ４１０に通信的に連結され得る。通信インターフェース４０８は電子メールサービスおよび、パブリッシングサーバ４０６と認証サーバ４１０との間の検証サービスをサポートするようさらに構成され得る。
【００９８】
さらにパブリッシングサーバ４０６は通信インターフェース４０４を介してパブリッシャデータベース４０２に通信的に連結され得る。通信インターフェース４０４はＪａｖａ（登録商標）  Ｄａｔａｂａｓｅ  Ｃｏｎｎｅｃｔｉｖｉｔｙ（ＪＤＢＣ）プロトコルをサポートするようさらに構成され得る。ＪＤＢＣは、Ｊａｖａ（登録商標）プログラミング言語と、広範囲なデータベース、ＳＱＬデータベースおよび他の表形式のデータソース（例えばスプレッドシートまたはフラットファイルなど）との間の、データベースに依存しない接続のための標準的プロトコルとして当該技術分野で周知である。ＪＤＢＣ・ＡＰＩは、ＳＱＬベースのデータベースアクセスに対してセルレベルのＡＰＩを提供する。他の通信プロトコルも通信インターフェース４０４に対して使用され得る。
【００９９】
さらにパブリッシングサーバ４０６は通信インターフェース４２４を介してカスタマアプリケーション４２６に通信的に連結され得る。通信インターフェース４２４はｗｅｂ  ｓｅｒｖｉｃｅｓ  ｉｎｔｅｒｆａｃｅ（ＷＳＩ）プロトコルをサポートするようさらに構成され得る。ＷＳＩは、ソースコードに変更を加えることなく、開発者が無数のタスクを大量に、または遠隔システムから実行することを可能にする、ＡＰＩに類似した機能を有するＸＭＬベースのツールとして当該技術分野で周知である。他のプロトコル（例えばＪＤＢＣ、ＲＥＳＴ、その他）も通信インターフェース４２４に対して使用され得、実施形態はこの点で限定されない。
【０１００】
認証サーバ４１０は通信インターフェース４２０を介してプロビジョニングデータベース４２２に通信的に連結され得る。通信インターフェース４２４はＪＤＢＣをサポートするようさらに構成され得る。他のプロトコルも通信インターフェース４２０に対して使用され得、実施形態はこの点で限定されない。プロビジョニングデータベース４２２はプロファイル、設定、および実施形態４００に関連する他の情報を格納するために使用され得、必要に応じて装置自動検出を使用してモバイルアプリケーションを格納および配布するためにも使用され得る。
【０１０１】
動作中、モバイルアプリケーション４１４および／または計算装置３１０は、それぞれ通信インターフェース４１２および通信インターフェース４１８を介する無線機構（例えばワイヤレス通信チャネル）を使用し、暗号的に強力な認証・暗号化方法を使用することにより、パブリッシングサーバ４０６からウェブ構成およびロジックを、認証サーバ４１０からセキュリティクレデンシャルを、受け取り得る。
【０１０２】
計算装置３１０は、セキュリティ保護されたストレージ４１６にウェブ構成およびロジックを格納するよう構成され得る。計算装置３０７内のセキュリティ保護されたウェブサーバは、必要な場合に点検および変更のためにウェブ構成およびロジックをユーザまたは他のコントローラに提供するために、ローカルなセキュリティ保護されたブラウザから要求されたページをサービスする。セキュリティ保護されたブラウザが動作する間は、外部サーバとの通信はまったく不必要であり、それにより計算装置３０７内のアプリケーションはオフラインで動作することが可能となり、情報をセキュリティ保護されたストレージ４１６内でセキュリティ保護された状態で保持されることが可能となる。内部ウェブサーバによりサービスされる構成およびロジックは、データ構造、提示機構、およびロジックを記述するにあたり、実質的にあらゆる種類の言語を使用し得る。例えば、構成およびロジックは、それぞれＪａｖａ（登録商標）Ｓｃｒｉｐｔ  Ｏｂｊｅｃｔ  Ｎｏｔａｔｉｏｎ（ＪＳＯＮ）、ＨＴＭＬおよびＪａｖａ（登録商標）Ｓｃｒｉｐｔにより表現され得る。実施形態はこの点で限定されず、他の実施形態は他の計算言語またはプロトコルを使用し得る。セキュリティ保護されたストレージ４１６内に格納されるデータ、構成、およびロジックは、アプリケーション４１４の起動時に、またはユーザ要求により、または周期的スケジュールで、パブリッシングサーバ４０６と同期し、パブリッシングサーバ４０６から更新され得る。パブリッシングサーバ４０６は、ユーザのデータにアクセスする許可を有するユーザに対してカスタマアプリケーション４２６を介してユーザからの要求を受け取る能力を含み得る。ユーザは、パブリッシングサーバのセキュリティ保護されたデータベース４０２に格納された情報の発信または読み出しを行い得る。ユーザは、所定のセキュリティ規則にしたがってセキュリティ保護されたデータベース４０２内の情報を共有し得る。
【０１０３】
ユーザは、計算装置３０７などのモバイル装置から、または従来のインターネットブラウザから、情報にアクセスし得る。パブリッシングサーバ４０６に対して利用可能である管理ツールは、発行されたデータに対するデータセキュリティの管理を、および発行されたデータにアクセスするためのユーザおよび装置の能力を管理することを、可能にする。クライアントとサーバとの間の通信は暗号化（例えばＡＥＳ）により本質的にセキュリティ保護され、ＳＳＬのみに依存しない。モバイルアプリケーション４１４は、旧モバイル装置の紛失または盗難の際には、新規装置において以前の動作状態に復元されることが可能である。旧モバイル装置は自動的に無効化され得、セキュリティ保護されたストレージ４１６内の全データは自動的に削除され得る。
【０１０４】
図５は、本開示の１つの実施形態に係るアプリケーションを発行するプロセス５００を示す図である。プロセス５００は、時間が図５の上部から底部に進行する状態で、開発者５０２と、カスタマアプリケーション５０４と、パブリッシャ５０６（例えばパブリッシングサーバ４０６）と、の間のメッセージのシーケンス図として示される。個々のメッセージは、それぞれのメッセージの起点の付近に位置する参照番号により参照される。モバイルアプリケーション４１４およびサーバアプリケーション（例えばカスタマアプリケーション）は直接的には通信しない。代わってパブリッシャ５０６がストレージを有するミドルウェアとして動作する。
【０１０５】
プロセス５００はステップ５１６から始まり、ステップ５１６において開発者５０２はアプリケーションを作成または変更する。この間、カスタマアプリケーションは通常、一般に、他によりアクセスまたは使用されない。ステップ５１６は無限は反復し得る。開発者がカスタマアプリケーションの作成または変更を終了し、アプリケーションの発行が十分に可能となったとき、ステップ５１６は完了する。
【０１０６】
次に、プロセス５００の制御はステップ５１８に移行し、ステップ５１８において開発者５０２は、パブリッシャ５０６（例えばパブリッシングサーバ４０６）により、展開されるかまたは別様に一般的に利用可能となるために、カスタマアプリケーションを構成し得る。
【０１０７】
次に、プロセス５００の制御はステップ５２０に移行し、ステップ５２０において開発者５０２は、カスタマアプリケーションがアクセスまたは変更するための許可を有するデータグループまたはメンバーになる許可を有するデータグループを識別するために、カスタマアプリケーションを構成し得る。
【０１０８】
次に、プロセス５００の制御はステップ５２２に移行し、ステップ５２２において開発者５０２は、カスタマアプリケーションがアクセスまたは変更する許可を有するデータセットを識別するために、カスタマアプリケーションを構成し得る。
【０１０９】
次に、プロセス５００の制御はステップ５２４に移行し、ステップ５２４において開発者５０２は、カスタマアプリケーションをパブリッシャ５０６に登録することが可能となるために、カスタマアプリケーションを構成し得る。
【０１１０】
次に、プロセス５００の制御はステップ５２６に移行し、ステップ５２６において開発者５０２は、モバイルアプリケーション構成を作成、変更、または保存し得る。構成はアプリケーションに関連付けられたデータセットおよびデータグループを含み得る。ステップ５２６は、構成の十分な変更が必要となるまで反復され得る。開発者が構成の作成、変更、または保存を終了し、アプリケーション構成の発行が十分に可能となったとき、ステップ５２６は完了する。
【０１１１】
次に、プロセス５００の制御はステップ５２８に移行し、ステップ５２８において開発者５０２は、アプリケーション構成が発行され、モバイルコンテナがアプリケーション構成を使用することが可能となるよう、パブリッシャ５０６と通信する。
【０１１２】
図６は本開示の１つの実施形態に係る、ユーザをアプリケーションに登録するプロセス６００を示す図である。プロセス６００は、全般的に、モバイルユーザ５１４が申し立てられたクレデンシャル（例えばワンタイムパスワード（ＯＴＰ））を提供することと、オーセンティケータ５０８が申し立てられたクレデンシャルを認証することと、申し立てられたクレデンシャルが信憑性を有する旨の証明書（例えば電子証明書、アクティベーションコード、その他）をオーセンティケータ５０８が提供すること、を行い、それにより、アクセス、特権、その他がモバイルユーザ５１４に許可されるようになる、暗号的に強力な認証方法を提供する。プロセス６００は、時間が図６の上部から底部に進行する状態で、カスタマアプリケーション５０４と、パブリッシャ５０６と、オーセンティケータ５０８（例えば認証サーバ４１０）と、モバイル装置５１０（例えば計算装置３０７）と、モバイルユーザ５１４と、の間のメッセージのシーケンス図として示される。個々のメッセージは、それぞれのメッセージの起点の付近に位置する参照番号により参照される。
【０１１３】
プロセス６００はステップ６０２から始まり、ステップ６０２において登録要求（または同等物）がモバイルユーザ５１４からカスタマアプリケーション５０４に送られる。登録要求メッセージは、要求を発するモバイルユーザ５１４を識別するクレデンシャルを含む。
【０１１４】
次に、プロセス６００の制御はステップ６０４に移行し、ステップ６０４においてＣｒｅａｔｅ  Ｕｓｅｒ  ａｎｄ  Ｐｏｓｔ  Ｄａｔａ（）メッセージ（または同等物）がカスタマアプリケーション５０４からパブリッシャ５０６に送られる。
【０１１５】
次に、プロセス６００の制御はステップ６０６に移行し、ステップ６０６においてパブリッシャ５０６はユーザ登録要求メッセージをオーセンティケータ５０８に送り得る。ユーザ登録要求メッセージは、要求を発するモバイルユーザ５１４を識別するクレデンシャルを含む。ステップ６０６は、モバイルユーザ５１４により提供されたクレデンシャルを認証すること、およびセキュリティ保護されたクレデンシャルを作成すること、を実行するようオーセンティケータ５０８に要求するにあたり有用である。
【０１１６】
次に、プロセス６００の制御はステップ６０８に移行し、ステップ６０８においてオーセンティケータ５０８はパブリッシャ５０６により提供されたクレデンシャルを認証し得る。クレデンシャルが認証された場合、オーセンティケータ５０８はセキュリティ保護されたクレデンシャルを作成し、アクティベーションコードを作成し得る。アクティベーションコードは、カスタマアプリケーションの使用を開始するにあたりモバイルユーザ５１４により使用されるためのものである。
【０１１７】
次に、プロセス６００の制御はステップ６１０に移行し、ステップ６１０においてアクティベーションコードメッセージ（または同等物）がオーセンティケータ５０８からパブリッシャ５０６に戻される。
【０１１８】
次にプロセス６００の制御はステップ６１２に移行し、ステップ６１２において、パブリッシャ５０６がアクティベーションコードを受け取った後、パブリッシャ５０６はユーザを内部的に作成またはアクティブ化し、戻し得る。
【０１１９】
次に、プロセス６００の制御はステップ６１４に移行し、ステップ６１４においてアクティベーションコードメッセージがパブリッシャ５０６からカスタマアプリケーション５０４に送られ得る。ステップ６１４は、モバイルユーザ５１４が今、カスタマアプリケーション５０４を使用する権限が与えられたことを、またはカスタマアプリケーション５０４により制御されるデータにアクセスする権限が与えられたことを、カスタマアプリケーション５０４に通知するにあたり有用である。
【０１２０】
次に、プロセス６００の制御はステップ６１６に移行し、ステップ６１６において、カスタマアプリケーション５０４はモバイルユーザ５１４にアクティベーションコードを提供し得る。それにより、カスタマアプリケーション５０４を使用する権限がモバイルユーザ５１４に与えられたこと、またはカスタマアプリケーション５０４により制御されるデータにアクセスする権限がモバイルユーザ５１４に与えられたこと、をモバイルユーザ５１４は認識することとなる。
【０１２１】
図７は、モバイルユーザ５１４がモバイル装置５１０上でもはや利用可能でないアプリケーションをアプリ格納領域５１２内で探すためのプロセス７００を図示する。プロセス７００は、時間が図７の上部から底部に進行する状態で、モバイル装置５１０（例えば計算装置３０７)とモバイルユーザ５１４と、の間のメッセージのシーケンス図として示される。個々のメッセージは、それぞれのメッセージの起点の付近に位置する参照番号により参照される。プロセス７００では、所望のアプリがモバイル装置５１０上ですでに利用可能でないものとして想定される。
【０１２２】
プロセス７００はステップ７０２で始まり、ステップ７０２においてモバイルユーザ５１４は、アプリ格納領域５１２内で所望のコンテナを探すために、モバイル装置５１０を制御する。モバイル装置５１０は通信的にアプリ格納領域５１２に連結される。制御は例えば、モバイルユーザ５１４がモバイル装置５１０を直接的に操作することにより、またはモバイルユーザ５１４がＳｅａｒｃｈ  Ｃｏｎｔａｉｎｅｒ  ｉｎ  Ａｐｐ  Ｓｔｏｒｅ（）コマンド（または同等物）をモバイル装置５１０に送ることにより、行われ得る。
【０１２３】
次にプロセス７００の制御はステップ７０４に移行し、ステップ７０４においてモバイル装置５１０は、要求したアプリをアプリ格納領域５１２内で見つけた後、要求したアプリをアプリ格納領域５１２からダウンロードする。
【０１２４】
次にプロセス７００の制御はステップ７０６に移行し、ステップ７０６においてモバイル装置５１０は、ステップ７０４の間にダウンロードされた要求されたアプリをインストールする。
【０１２５】
図８は、本開示の１つの実施形態に係る、使用する権限がモバイルユーザ５１４に与えられたモバイル装置５１０上のアプリケーションをモバイルユーザ５１４が起動および使用するためのプロセス８００を示す図である。プロセス８００は、時間が図８の上部から底部に進行する状態で、カスタマアプリケーション５０４と、パブリッシャ５０６と、オーセンティケータ５０８（例えば認証サーバ４１０）と、モバイル装置５１０（例えば計算装置３０７）と、モバイルユーザ５１４と、の間のメッセージのシーケンス図として示される。個々のメッセージは、それぞれのメッセージの起点の付近に位置する参照番号により参照される。
【０１２６】
プロセス８００はステップ８０２で始まり、ステップ８０２においてモバイルユーザ５１４は、モバイル装置５１０上で利用可能なアプリケーションの使用を希望する旨を示唆するために、モバイル装置５１０を制御する。この示唆は例えば、モバイルユーザ５１４がモバイル装置５１０を直接的に操作することにより、またはモバイルユーザ５１４がＳｔａｒｔ  Ｃｏｎｔａｉｎｅｒコマンド（または同等物）をモバイル装置５１０に送ることにより、行われ得る。
【０１２７】
次にプロセス８００の制御はステップ８０４に移行し、ステップ８０４においてモバイル装置５１０は、モバイルユーザがアプリケーションプログラムを使用することが可能となるよう、モバイルユーザ５１４とアクティベーションコード（または同等物）を共有することにより、ステップ８０２における要求に応答する。
【０１２８】
次にプロセス８００の制御はステップ８０６に移行し、ステップ８０６においてモバイルユーザ５１４は、アクティベーションコード（または同等物）をモバイル装置５１０に入力することにより、ステップ８０４のメッセージに応答し得る。このアクティベーションコードは、アプリケーションをアクティブ化するために使用される申し立てられたアクティベーションコードを含む。
【０１２９】
次に、プロセス８００の制御はステップ８０８に移行し、ステップ８０８においてモバイル装置５１０は、モバイルユーザ５１４により供給された申し立てられたアクティベーションコードを認証するために、Ｇｅｔ−Ｓｅｃｕｒｅ−Ｃｒｅｄｅｎｔｉａｌｓ（Ａｃｔｉｖａｔｅ  Ｃｏｄｅ）コマンド（または同等物）をオーセンティケータ５０８に送る。
【０１３０】
次に、プロセス８００の制御はステップ８１０に移行し、ステップ８１０においてオーセンティケータ５０８は、モバイルユーザ５１４により供給された申し立てられたアクティベーションコードの認証を試みる。
【０１３１】
次にプロセス８００の制御はステップ８１２に移行し、ステップ８１２においてオーセンティケータ５０８は、モバイルユーザ５１４により供給された申し立てられたアクティベーションコードがステップ８１０において信憑性があると認証された場合、Ｓｅｃｕｒｅ−Ｃｒｅｄｅｎｔｉａｌ応答（または同等物）をモバイル装置５１０に送り得る。
【０１３２】
次にプロセス８００の制御はステップ８１４に移行し、ステップ８１４においてモバイル装置５１０は、認証されたクレデンシャルと、クレデンシャルが信憑性を有する旨のステップ８１２におけるオーセンティケータ５０８からの示唆と、に基づいて、そのセキュリティ保護されたストレージを起動し得る。
【０１３３】
次に、プロセス８００の制御はステップ８１６に移行し、ステップ８１６においてモバイル装置５１０は、アプリケーションにより使用されるデータまたはコードをモバイル装置５１０とパブリッシャ５０６との間で同期するために、同期要求（または同等物）をパブリッシャ５０６に送り得る。
【０１３４】
次に、プロセス８００の制御はステップ８１８に移行し、ステップ８１８において、アプリケーションにより使用されるデータまたはコードがメッセージ８１６の結果として変更された場合、パブリッシャ５０６は通知メッセージをカスタマアプリケーション５０４に送り得る。
【０１３５】
次に、プロセス８００の制御はステップ８２０に移行し、ステップ８２０において、モバイル装置５１０がアプリケーションの現行バージョンと、アプリケーションに関連付けられた（またはアプリケーションにより使用される）現行データとを有することを確認するために、パブリッシャ５０６はＡｐｐｌｉｃａｔｉｏｎ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  ａｎｄ  Ｄａｔａ（）メッセージ（または同等物）をモバイル装置５１０に送り得る。
【０１３６】
次に、プロセス８００の制御はステップ８２２に移行し、ステップ８２２においてモバイル装置５１０は、ステップ８２０で説明したＡｐｐｌｉｃａｔｉｏｎ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  ａｎｄ  Ｄａｔａ（）メッセージ（または同等物）を介してパブリッシャ５０６から受け取られたアプリケーション構成及びデータ情報をモバイル装置５１０のセキュリティ保護されたストレージ内に格納し得る。
【０１３７】
次にプロセス８００の制御はステップ８２４に移行し、ステップ８２４においてモバイル装置５１０は、ステップ８２０で受け取られたデータを使用してステップ８２０で受け取られたアプリケーションを実行し得る。
【０１３８】
図９は、本開示の１つの実施形態に係る、使用する権限がモバイルユーザ５１４に与えられた、モバイル装置５１０上の設定アプリケーションおよびデータを同期および更新するためのプロセス９００を図示する。プロセス９００は、時間が図９の上部から底部に進行する状態で、カスタマアプリケーション５０４と、パブリッシャ５０６と、モバイル装置５１０（例えば計算装置３０７）と、モバイルユーザ５１４と、の間のメッセージのシーケンス図として示される。個々のメッセージは、それぞれのメッセージの起点の付近に位置する参照番号により参照される。
【０１３９】
プロセス９００はステップ９０２から始まり、ステップ９０２において、カスタマアプリケーション５０４は、カスタマアプリケーション５０４がカスタマアプリケーション５０４に関するコードまたはデータの更新を受け取ることを要求するために、Ｒｅｔｒｉｅｖｅ  Ｕｐｄａｔｅｓ（）メッセージ（または同等物）により要求をパブリッシャ５０６に送る。
【０１４０】
次にプロセス９００の制御はステップ９０４に移行し、ステップ９０４において、カスタマアプリケーション５０４に関連するコードまたばデータの更新を伝送するために、更新が利用可能であるならば、パブリッシャ５０６はＵｓｅｒ−Ｕｐｄａｔｅｄ−Ｄａｔａ（）応答メッセージ（または同等物）をカスタマアプリケーション５０４に送り得る。更新が利用可能でないならば、代わってパブリッシャ５０６は、更新が利用可能でないことをカスタマアプリケーション５０４に示唆し、その場合、プロセス９００は終了し得る。
【０１４１】
次にプロセス９００の制御はステップ９０６に移行し、ステップ９０６においてカスタマアプリケーション５０４は、メッセージ９０４により伝送された更新を受け取った後、例えばステップ９０４においてカスタマアプリケーション５０４により受け取られたメッセージにより提供されたコードまたはデータを更新することにより、更新を処理し得る。
【０１４２】
次にプロセス９００の制御はステップ９０８に移行し、ステップ９０８において、カスタマアプリケーション５０４は、ステップ９０６の間に更新を処理した後、ステップ９０６の一部としてカスタマアプリケーション５０４により実行されたプロセスの結果を伝送または発行するために、Ｐｏｓｔ  Ｄａｔａ（）メッセージ（または同等物）をパブリッシャ５０６に送り得る。
【０１４３】
次にプロセス９００の制御は省略可能なステップ９１０に移行し、ステップ９１０においてモバイルユーザ５１４は、モバイル装置５１０がモバイル装置５１０自体をパブリッシャ５０６から利用可能な現行コピーまたは現行バージョンのコードもしくはデータに同期させることを要求するために、Ｒｅｑｕｅｓｔ  Ｓｙｎｃｈｒｏｎｉｚａｔｉｏｎ（）メッセージ（または同等物）をモバイル装置５１０に送り得る。
【０１４４】
次にプロセス９００の制御はステップ９１２に移行し、ステップ９１２においてモバイル装置５１０は、ステップ９１０で受け取られたＲｅｑｕｅｓｔ  Ｓｙｎｃｈｒｏｎｉｚａｔｉｏｎ（）メッセージ（または同等物）の処理を開始し得る。
【０１４５】
次にプロセス９００の制御はステップ９１４に移行し、ステップ９１４においてモバイル装置５１０は、パブリッシャ５０６がパブリッシャ５０６から利用可能な現行コピーまたは現行バージョンのコードもしくはデータをモバイル装置５１０に送ることを、またはモバイル装置のセキュリティ保護された格納領域で利用可能な更新済み情報をモバイル装置５１０からパブリッシャ５０６に送ることを要求するために、Ｓｙｎｃｈｒｏｎｉｚｅ（）メッセージ（または同等物）をパブリッシャ５０６に送り得る。この情報は、現行コピー自体を含む場合もあり、またはモバイル装置５１０が同期された最終時点からの更新または差異のみを含む場合もある。
【０１４６】
次にプロセス９００の制御は省略可能なステップ９１６に移行し、ステップ９１６において、パブリッシャ５０６から利用可能なコードまたはデータが装置との同期プロセスの結果として変更された場合、パブリッシャ５０６は、更新済みコードまたはデータについてカスタマアプリケーション５０４に通知するために、カスタマアプリケーション５０４にＮｏｔｉｆｉｃａｔｉｏｎ（）メッセージ（または同等物）を送り得る。
【０１４７】
次にプロセス９００の制御は省略可能なステップ９１８に移行し、ステップ９１８においてパブリッシャ５０６は、発行されたコードまたはデータに対する更新についてモバイル装置５１０に通知するために、またはモバイル装置５１０が更新された最終時点からコードおよびデータに対する更新が存在しなかったことをモバイル装置５１０に通知するために、Ｕｐｄａｔｅ  Ａｐｐｌｉｃａｔｉｏｎ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  （ｉｆ  ｉｄｅｎｔｉｆｉｅｄ  ａｓ  ｃｈａｎｇｅｄ）  ａｎｄ  Ｄａｔａ（）メッセージ（または同等物）をモバイル装置５１０に送り得る。
【０１４８】
次にプロセス９００の制御はステップ９２０に移行し、ステップ９２０においてモバイル装置５１０は、ステップ９１８においてパブリッシャ５０６から受け取られた更新済みのアプリケーション構成およびデータを処理および格納し得る。
【０１４９】
次にプロセス９００の制御はステップ９２２に移行し、ステップ９２２においてモバイル装置５１０は、ステップ９１８においてパブリッシャ５０６から受け取られ、ステップ９２０においてモバイル装置５１０により格納された、更新済みアプリケーション構成を、必要に応じて更新済みデータを使用して、使用し得る。
【０１５０】
本発明の実施形態は、１つまたは複数のメモリに連結された１つまたは複数の処理ユニットを有するシステムを含む。１つまたは複数のメモリは、１つまたは複数の処理ユニットにより実行されたとき少なくとも図３〜図４および関連するテキストを含む本明細書で説明される実施形態の実行を可能にするソフトウェアを格納するよう構成され得る。
【０１５１】
開示される方法は、例えば、様々なコンピュータまたはワークステーションプラットフォームでの使用が可能なポータブルなソースコードを提供するオブジェクトまたはオブジェクト指向ソフトウェア開発環境を使用することなどにより、ソフトウェアにおいて容易に実装され得る。代替的に、開示されるシステムは、例えば標準的なロジック回路またはＶＬＳＩ設計を使用することにより、ハードウェアにおいて部分的にまたは完全に実装され得る。ソフトウェアまたはハードウェアが本発明の様々な実施形態に係るシステムを実装するために使用されるかどうかは、様々な考慮（例えばシステムの速度または効率の要件、特定的な機能、および利用される特定的なソフトウェアまたはハードウェアのシステムなど）に基づき得る。
【０１５２】
前述の内容は、本発明の実施形態を対象とするものであり、本発明の他の実施形態およびさらなる実施形態が、本発明の趣旨から逸脱することなく導き出され得る。本明細書で説明された様々な実施形態が、本明細書に含まれる趣旨から逸脱することなく、本明細書で説明される他の任意の実施形態との組み合わせで利用され得ることは理解されるであろう。さらに前述の説明は、網羅的であることを意図するものではなく、または発明を、開示された正確な形に限定することを意図するものでもない。様々な修正例および変化例が以上の教示に照らして可能であり、本発明の実施から得られる。特定の代表的な実施形態は、一覧項目がこれらの実施形態を代表すること、および一覧が、さらなる実施形態を除外する排他的な一覧を代表するものないことを意図することを示す表現を含む非限定的な一覧の使用により指定され得る。係る表現は、「例えば」、「など」、「例えば〜など」、「例として」、「その他」、「等」など、および周囲の脈絡から明らかとなる他の表現を含み得る。
【０１５３】
本願の説明において使用される要素、動作、または命令のいずれもが、明確な記述なき限り、本発明に対して不可欠または本質的であると解釈してはならない。また本明細書で用いられる不定冠詞「ａ」は、１つまたは複数の項目を含むことを意図するものである。ただ１つの項目が意図される場合、「単一の」または同様の言語が用いられる。さらに、本明細書で使用される、複数の項目の一覧に先行する、および／または複数のカテゴリーの項目の後に位置する「のうちの任意」という用語は、項目および／またはカテゴリーの項目の「〜のうちの任意」、「〜のうちの任意の組み合わせ」、「〜のうちの任意の複数」、および／または「〜のうちの複数の任意の組み合わせ」を、個別的に、または他の項目および／またはカテゴリーの項目と組み合わせて、含むことを意図するものである。
【０１５４】
さらに、請求項は、特記なき限り、説明される順序または要素に限定されるべきものと読んではならない。加えて任意の請求項における「手段」という用語の使用は、合衆国法典第３５巻第１１２条第６段落を呼び出すことを意図するものであり、「手段」という語を使用しないいかなる請求項も、係る意図は有さない。
【図１】
2015213319.tif 000003
【図２Ａ】
2015213319.tif 000004
【図２Ｂ】
2015213319.tif 000005
【図３】
2015213319.tif 000006
【図４】
2015213319.tif 000007
【図５】
2015213319.tif 000008
【図６】
2015213319.tif 000009
【図７】
2015213319.tif 000010
【図８】
2015213319.tif 000011
【図９】
2015213319.tif 000012
【手続補正書】
【提出日】平成27年6月30日(2015.6.30)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
保護データに対するアクセスを通信端末に提供するシステムであって、
パブリッシャデータベースに連結された第１サーバであって、前記パブリッシャデータベースは保護データを暗号化された形態で格納するよう構成された、第１サーバと、
前記第１サーバに連結された第２サーバであって、暗号的に強力なアクセスの認証を前記保護データに提供するよう構成された、第２サーバと、
前記第１サーバと前記通信端末との間に位置する、第１セキュリティ保護チャネルに対するインターフェースと、
前記第１サーバとカスタマアプリケーションとの間に位置する、第２セキュリティ保護チャネルに対するインターフェースと、
を含み、
前記第１サーバは、前記第１セキュリティ保護チャネルを介して前記通信端末と保護データを交換すること、および前記第２セキュリティ保護チャネルを介して前記カスタマアプリケーションと保護データを交換すること、を行うよう構成された、
システム。
【請求項２】
前記第１サーバは、データグループ、データセット、および前記カスタマアプリケーションのＵＲＬのうちの少なくとも１つの構成を受け取るよう構成され、前記第２サーバは、前記データグループからのデータが影響を受けた場合に前記カスタマアプリケーションに通知を提供するようさらに構成された、請求項１に記載のシステム。
【請求項３】
前記通信端末は、パスワードまたは暗号鍵を前記通信端末に格納することなく、ユーザパスワードおよび受け取られたセキュリティクレデンシャルを使用して前記セキュリティ保護ストレージに対する暗号鍵を導出するよう構成された、請求項１に記載のシステム。
【請求項４】
前記第１サーバは、保護データをカスタマアプリケーションと交換することと、アプリケーションが監視を割り当てられた前記保護データのみにアクセスすることを前記アプリケーションに許可することと、を行うために、Ｓｅｃｕｒｅｄ  Ｗｅｂ  Ｓｅｒｖｉｃｅ  Ｉｎｔｅｒｆａｃｅコールを受け取るよう構成された、請求項１に記載のシステム。
【請求項５】
前記カスタマアプリケーションは、前記パブリッシャデータベース内で変更された情報を発見するために前記第１サーバと双方向に通信するよう構成されたアプリケーションを含む、請求項１に記載のシステム。
【請求項６】
前記モバイルプロセッサは第１モバイルアプリケーションおよび第２モバイルアプリケーションを提供するようさらに構成され、前記第２モバイルアプリケーションは暗号化モジュールおよびデータの使用を前記第１モバイルアプリケーションと共有するよう構成された、請求項１に記載のシステム。
【請求項７】
前記第１サーバは、ＳＳＬと使用可能な非ＳＳＬセキュリティ保護された通信チャネルを介して前記通信端末およびカスタマアプリケーションに対するインターフェースを含む、請求項１に記載のシステム。
【請求項８】
保護データに対するアクセスを通信端末に提供する方法であって、
パブリッシャデータベースに連結された第１サーバにより、暗号化された形態で保護データを格納することと、
保護データにアクセスするための要求を、通信端末から、受け取ることであって、前記要求は申し立てられたクレデンシャルを含む、保護データにアクセスするための要求を受け取ることと、
前記申し立てられたクレデンシャルを暗号的に強力な認証により認証するために、前記申し立てられたクレデンシャルを第２サーバに伝送することと、
申し立てられたクレデンシャルが認証された場合、通信端末と保護データとの間のアクセスを許可することと、
カスタマアプリケーションとパブリッシャデータベースとの間で保護データを通信することと、
通信端末とパブリッシャデータベースとの間で保護データを通信することと、
を含む、方法。
【請求項９】
データグループ、データセット、および前記カスタマアプリケーションのＵＲＬのうちの少なくとも１つの構成を受け取ることと、
前記データグループからのデータが影響されている場合、前記カスタマアプリケーションに通知を提供することと、
前記通信端末に発信されるべき更新済みアプリケーション構成を受け取ることと、
をさらに含む、請求項８に記載の方法。
【請求項１０】
前記通信端末は第１モバイルアプリケーションおよび第２モバイルアプリケーションを提供するよう構成され、前記第２モバイルアプリケーションは暗号化モジュールおよびデータの使用を前記第１モバイルアプリケーションと共有するよう構成された、請求項８に記載の方法。
【外国語明細書】
2015213319000001.pdf