IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ ファセット・インコーポレーテッドの特許一覧

特許7566824メディア・ストリーミング・システムおよび方法
<>
  • 特許-メディア・ストリーミング・システムおよび方法 図1
  • 特許-メディア・ストリーミング・システムおよび方法 図2
  • 特許-メディア・ストリーミング・システムおよび方法 図3
  • 特許-メディア・ストリーミング・システムおよび方法 図4
  • 特許-メディア・ストリーミング・システムおよび方法 図5
  • 特許-メディア・ストリーミング・システムおよび方法 図6
  • 特許-メディア・ストリーミング・システムおよび方法 図7
  • 特許-メディア・ストリーミング・システムおよび方法 図8
  • 特許-メディア・ストリーミング・システムおよび方法 図9
  • 特許-メディア・ストリーミング・システムおよび方法 図10
  • 特許-メディア・ストリーミング・システムおよび方法 図11A
  • 特許-メディア・ストリーミング・システムおよび方法 図11B
  • 特許-メディア・ストリーミング・システムおよび方法 図12
  • 特許-メディア・ストリーミング・システムおよび方法 図13
  • 特許-メディア・ストリーミング・システムおよび方法 図14
  • 特許-メディア・ストリーミング・システムおよび方法 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-04
(45)【発行日】2024-10-15
(54)【発明の名称】メディア・ストリーミング・システムおよび方法
(51)【国際特許分類】
   G06F 21/10 20130101AFI20241007BHJP
   G06F 21/62 20130101ALI20241007BHJP
【FI】
G06F21/10
G06F21/62 318
【請求項の数】 17
(21)【出願番号】P 2022110190
(22)【出願日】2022-07-08
(62)【分割の表示】P 2019527818の分割
【原出願日】2017-11-22
(65)【公開番号】P2022141757
(43)【公開日】2022-09-29
【審査請求日】2022-07-13
(31)【優先権主張番号】62/426,021
(32)【優先日】2016-11-23
(33)【優先権主張国・地域又は機関】US
【前置審査】
(73)【特許権者】
【識別番号】518357715
【氏名又は名称】ファセット・インコーポレーテッド
(74)【代理人】
【識別番号】100118902
【弁理士】
【氏名又は名称】山本 修
(74)【代理人】
【識別番号】100106208
【弁理士】
【氏名又は名称】宮前 徹
(74)【代理人】
【識別番号】100196508
【弁理士】
【氏名又は名称】松尾 淳一
(74)【代理人】
【識別番号】100138759
【弁理士】
【氏名又は名称】大房 直樹
(72)【発明者】
【氏名】クリスマス,コイ
(72)【発明者】
【氏名】マルパス,ルーク
【審査官】平井 誠
(56)【参考文献】
【文献】米国特許出願公開第2016/0100279(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/00-88
(57)【特許請求の範囲】
【請求項1】
コンテンツ記憶システムであって、
コンテンツ・レポジトリ・デバイスであって、
プロセッサと、
コンテンツを格納し、前記コンテンツを送信するように構成された記憶モジュールであって、前記コンテンツが、オーディオ、ビデオ、画像、または文書の内少なくとも1つを含む、記憶モジュールと、
通信モジュールであって、
第1ワイヤレス・ネットワーク・プロトコルを通じて通信するように構成された第1ワイヤレス・チップと、
第2ワイヤレス・ネットワーク・プロトコルを通じて通信するように構成された第2ワイヤレス・チップと、
を備える、通信モジュールと、
を備える、コンテンツ・レポジトリ・デバイスと、
前記第1ワイヤレス・ネットワーク・プロトコルまたは前記第2ワイヤレス・ネットワーク・プロトコルの内少なくとも1つを通じて、前記コンテンツ・レポジトリ・デバイスと通信するように構成されたコンピューティング・デバイスと、
を備え、
前記コンテンツが、前記コンテンツをロックするまたは前記コンテンツを前記コンピューティング・デバイスから削除することの内少なくとも1つを行うために、前記コンテンツ・レポジトリ・デバイスによって誘起することができるアクセス制御を含み、
前記コンピューティング・デバイスは、さらに、データグラムを標準通信プロトコルに従うものとして識別するための標準通信プロトコル・ヘッダーをパケットとともに送信することによって、前記コンテンツ・レポジトリ・デバイスと通信するように構成され、
前記標準通信プロトコルは、前記コンテンツ・レポジトリ・デバイスを発見し、生データの転送を要求し、データの受信に対する確認を送信する、前記コンピューティング・デバイスの能力を定義し、
前記コンテンツ・レポジトリ・デバイスは、ディジタル・メディア・ファイルのためのディジタル権利管理を前記コンピューティング・デバイスに対して有効にするように構成される、
コンテンツ記憶システム。
【請求項2】
請求項1記載のコンテンツ記憶システムであって、更に、前記コンピューティング・デバイスおよび前記コンテンツ・レポジトリ・デバイスと電子通信するコンテンツ・サポート・システムを備え、前記コンテンツ・サポート・システムが、前記コンピューティング・デバイスから前記コンテンツを受信し、前記コンテンツ・レポジトリ・デバイスに前記コンテンツを送信するように構成される、コンテンツ記憶システム。
【請求項3】
請求項1記載のコンテンツ記憶システムにおいて、前記コンピューティング・デバイスが、前記コンテンツを生成したことに応答して、前記コンテンツを前記コンテンツ・レポジトリ・デバイスに送信し、
前記コンピューティング・デバイスは、前記第1ワイヤレス・チップを用いて前記コンテンツの第1部分を前記コンテンツ・レポジトリ・デバイスに送信し、前記第2ワイヤレス・チップを用いて前記コンテンツの第2部分を前記コンテンツ・レポジトリ・デバイスに送信する、コンテンツ記憶システム。
【請求項4】
請求項1記載のコンテンツ記憶システムにおいて、前記コンテンツ記憶システムが前記コンテンツを暗号化するように構成され、
前記コンテンツ・レポジトリ・デバイスが、前記暗号化されたコンテンツを前記コンピューティング・デバイスに送信するように構成され、前記コンピューティング・デバイスが、前記暗号化されたコンテンツをランダム・アクセス・メモリに格納するように構成される、コンテンツ記憶システム。
【請求項5】
請求項記載のコンテンツ記憶システムにおいて、前記コンテンツ・レポジトリ・デバイスが、鍵を前記コンピューティング・デバイスに送信するように構成され、前記コンピューティング・デバイスが、前記鍵を使用して、前記暗号化されたコンテンツを解読するように構成される、コンテンツ記憶システム。
【請求項6】
請求項1記載のコンテンツ記憶システムにおいて、前記コンテンツ・レポジトリ・デバイスが、前記コンピューティング・デバイス上において所定の期間前記コンテンツがストリーミングされたことに応答して、制御信号を前記コンピューティング・デバイスに送信する、コンテンツ記憶システム。
【請求項7】
請求項1記載のコンテンツ記憶システムにおいて、前記第1ワイヤレス・ネットワーク・プロトコルは802.11プロトコル・ファミリーを含み、前記第2ワイヤレス・ネットワーク・プロトコルはパーソナル・エリア・ネットワーク・プロトコルを含む、コンテンツ記憶システム。
【請求項8】
ディジタル・コンテンツのストリーミング方法であって、
コンテンツ・レポジトリ・デバイスによって、ディジタル・メディア・ファイルを求める要求をコンピューティング・デバイスから受けるステップと、
前記コンテンツ・レポジトリ・デバイスによって、前記ディジタル・メディア・ファイルを前記コンピューティング・デバイスに送信するステップと、
前記コンテンツ・レポジトリ・デバイスによって、データグラムを標準通信プロトコルに従うものとして識別するための標準通信プロトコル・ヘッダーをパケットとともに送信するステップであって、前記コンピューティング・デバイスはさらに、前記標準通信プロトコル・ヘッダーを認識することによって、および、前記パケットを受信することに応答して前記標準通信プロトコルを通じて通信することによって、前記コンテンツ・レポジトリ・デバイスと通信するように構成される、ステップと、
前記コンテンツ・レポジトリ・デバイスによって、前記ディジタル・メディア・ファイルのためのディジタル権利管理を前記コンピューティング・デバイスに対して有効にするステップと、
を含み、
前記標準通信プロトコルは、前記コンテンツ・レポジトリ・デバイスを発見し、生データの転送を要求し、データの受信に対する確認を送信する、前記コンピューティング・デバイスの能力を定義し、
前記コンテンツが、前記コンテンツをロックするまたは前記コンテンツを前記コンピューティング・デバイスから削除することの内少なくとも1つを行うために、前記コンテンツ・レポジトリ・デバイスによって誘起することができるアクセス制御を含み、
前記コンピューティング・デバイスは、第1ワイヤレス・ネットワーク・プロトコルを通じて通信するように構成された第1ワイヤレス・チップを用いて前記ディジタル・メディア・ファイルの第1部分を前記コンテンツ・レポジトリ・デバイスに送信し、第2ワイヤレス・ネットワーク・プロトコルを通じて通信するように構成された第2ワイヤレス・チップを用いて前記ディジタル・メディア・ファイルの第2部分を前記コンテンツ・レポジトリ・デバイスに送信する、
ディジタル・コンテンツのストリーミング方法。
【請求項9】
請求項8記載の方法であって、更に、
前記コンピューティング・デバイスによって、コンテンツを生成したことに応答してコンテンツを前記コンテンツ・レポジトリ・デバイスに送信するステップであって、前記コンテンツは、オーディオ、ビデオ、画像、または文書の内少なくとも1つを含む、ステップと、
前記コンテンツ・レポジトリ・デバイスによって、前記コンテンツを前記コンテンツ・レポジトリ・デバイスのハード・ドライブに格納するステップと、
前記コンテンツ・レポジトリ・デバイスによって、前記コンテンツを暗号化するステップと、
前記コンテンツ・レポジトリ・デバイスによって、鍵を前記コンピューティング・デバイスへ送信するステップと、
を含み、
前記コンピューティング・デバイスが前記コンテンツを一時的にランダム・アクセス・メモリに格納し、
前記コンピューティング・デバイスが前記鍵を用いて前記コンテンツを解読し、
前記コンピューティング・デバイスが前記ランダム・アクセス・メモリにおける前記コンテンツを表示する、
方法。
【請求項10】
請求項8記載の方法であって、前記第1ワイヤレス・ネットワーク・プロトコルは802.11プロトコル・ファミリーを含み、前記第2ワイヤレス・ネットワーク・プロトコルはパーソナル・エリア・ネットワーク・プロトコルを含む、方法。
【請求項11】
請求項8記載の方法であって、更に、前記コンテンツ・レポジトリ・デバイスによって、前記コンピューティング・デバイス上で前記ディジタル・メディア・ファイルをロックするための制御信号を前記コンピューティング・デバイスに送信するステップを含む、方法。
【請求項12】
請求項8記載の方法において、前記コンピューティング・デバイスが、前記アクセス制御が誘起されたことに応答して、前記ディジタル・メディア・ファイルを前記コンピューティング・デバイスから消去する、方法。
【請求項13】
命令が格納されたコンピュータ読み取り可能記憶媒体であって、前記命令がコンテンツ記憶システムによって実行されたことに応答して、前記コンテンツ記憶システムに、
コンテンツ・レポジトリ・デバイスによって、ディジタル・メディア・ファイルを求める要求をコンピューティング・デバイスから受けるステップと、
前記コンテンツ・レポジトリ・デバイスによって、データグラムを標準通信プロトコルに従うものとして識別するための標準通信プロトコル・ヘッダーをパケットとともに送信するステップであって、前記コンピューティング・デバイスはさらに、前記標準通信プロトコル・ヘッダーを認識することによって、および、前記パケットを受信することに応答して前記標準通信プロトコルを通じて通信することによって、前記コンテンツ・レポジトリ・デバイスと通信するように構成される、ステップと、
前記コンテンツ・レポジトリ・デバイスによって、前記ディジタル・メディア・ファイルのためのディジタル権利管理を前記コンピューティング・デバイスに対して有効にするステップと、
を含む動作を実行させ、
前記標準通信プロトコルは、前記コンテンツ・レポジトリ・デバイスを発見し、生データの転送を要求し、データの受信に対する確認を送信する、前記コンピューティング・デバイスの能力を定義し、
前記コンテンツが、前記コンテンツをロックするまたは前記コンテンツを前記コンピューティング・デバイスから削除することの内少なくとも1つを行うために、前記コンテンツ・レポジトリ・デバイスによって誘起することができるアクセス制御を含み、
前記コンピューティング・デバイスは、第1ワイヤレス・ネットワーク・プロトコルを通じて通信するように構成された第1ワイヤレス・チップを用いて前記ディジタル・メディア・ファイルの第1部分を前記コンテンツ・レポジトリ・デバイスに送信し、第2ワイヤレス・ネットワーク・プロトコルを通じて通信するように構成された第2ワイヤレス・チップを用いて前記ディジタル・メディア・ファイルの第2部分を前記コンテンツ・レポジトリ・デバイスに送信する、
コンピュータ読み取り可能記憶媒体。
【請求項14】
請求項13記載のコンピュータ読み取り可能記憶媒体であって、前記動作は、更に、
前記コンピューティング・デバイスによって、コンテンツを生成したことに応答してコンテンツを前記コンテンツ・レポジトリ・デバイスに送信するステップであって、前記コンテンツは、オーディオ、ビデオ、画像、または文書の内少なくとも1つを含む、ステップと、
前記コンテンツ・レポジトリ・デバイスによって、前記コンテンツを前記コンテンツ・レポジトリ・デバイスのハード・ドライブに格納するステップと、
前記コンテンツ・レポジトリ・デバイスによって、前記コンテンツを暗号化するステップと、
前記コンテンツ・レポジトリ・デバイスによって、鍵を前記コンピューティング・デバイスへ送信するステップと、
を含み、
前記コンピューティング・デバイスが前記コンテンツを一時的にランダム・アクセス・メモリに格納し、
前記コンピューティング・デバイスが前記鍵を用いて前記コンテンツを解読し、
前記コンピューティング・デバイスが前記ランダム・アクセス・メモリにおける前記コンテンツを表示する、
コンピュータ読み取り可能記憶媒体。
【請求項15】
請求項13記載のコンピュータ読み取り可能記憶媒体であって、前記第1ワイヤレス・ネットワーク・プロトコルは802.11プロトコル・ファミリーを含み、前記第2ワイヤレス・ネットワーク・プロトコルはパーソナル・エリア・ネットワーク・プロトコルを含む、コンピュータ読み取り可能記憶媒体。
【請求項16】
請求項13記載のコンピュータ読み取り可能記憶媒体であって、前記動作は、更に、前記コンテンツ・レポジトリ・デバイスによって、前記コンピューティング・デバイス上で前記ディジタル・メディア・ファイルをロックするための制御信号を前記コンピューティング・デバイスに送信するステップを含む、コンピュータ読み取り可能記憶媒体。
【請求項17】
請求項13記載のコンピュータ読み取り可能記憶媒体において、前記コンピューティング・デバイスが、前記アクセス制御が誘起されたことに応答して、前記ディジタル・メディア・ファイルを前記コンピューティング・デバイスから消去する、コンピュータ読み取り可能記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願に対する相互引用
[0001] 本願は、2016年11月23日に出願され、"SYSTEMS AND METHODS FOR STREAMING MEDIA"(メディア・ストリーミング・システムおよび方法)と題する米国仮特許
出願第62/426,021号の優先権および権利を主張する。この出願をここで引用したことにより、その内容は事実上本願にも含まれるものとする。
分野
[0002] 本開示は、一般的には、携帯用記憶デバイスに関し、更に特定すれば、携帯用記憶デバイスからメディアをストリーミングするためのシステムおよび方法に関する。
【背景技術】
【0002】
[0003] デバイス間の通信は、インターネットまたはローカル・エリア・ネットワークのような、ネットワークを通じて行われるのが通例である。ユーザは、例えば、Netflixのようなストリーミング・サービスを通じてコンテンツにアクセスすることができる。これらのサービスは、通例、ユーザから離れて位置し、ウェブサイトまたはアプリケーションを通じてアクセス可能な1つ以上のサーバを有する。ユーザがオンライン・サービスから音楽、ビデオ、またはその他のメディアをストリーミングするとき、コンテンツにアクセスするには、彼らのインターネット接続に委ねられる。しかしながら、インターネット・アクセスは、種々の理由のために制限される可能性がある。国際便の飛行機に搭乗しているユーザはアクセスできない場合がある。国内便の飛行機に搭乗しているユーザは、比較的高い費用と交換に、アクセスできる場合もある。また、セルラ・サービスや陸線を欠く遠隔エリアにいるユーザも、インターネット・アクセスを発見するために悪戦苦闘する場合がある。
【0003】
[0004] サービスが利用可能であっても、高品質のコンテンツをストリーミングするには遅すぎるということもあり得る。多くのケーブル・インターネット・プロバイダは、例えば、基本パッケージで提供する帯域幅を少なくして、高速アクセスには高い料金を徴収する(charge)。このような場合、ストリーミング・サービスは、コンテンツにリアル・タイムのアクセスを付与するために、コンテンツの品質を落とさなければならないこともある。更に、ユーザが複数のデバイスを有することも多い。ストリーミング・サービスは、アクティブでいることができるデバイスの数を制限することができる。このようなサービスについてのログイン情報を共有することは、サービスの利用規程(terms)違反になるお
それがある。つまり、場合によっては、ユーザは、彼らの制御を超える要因に基づいて、彼らが選択したデバイス上で彼らのコンテンツにアクセスすることを制限されることもある。
【0004】
[0005] ストリーミング・サービスの代用になるものにダウンロードがあり、これらは1つのデバイス上に格納され、ディジタル権利管理(DRM)によって管理される。大抵の場合、メディア・ファイルを格納することができるデバイスの数が制限される。多くの場合、ユーザは1つのファイルを1つのデバイスにしか格納することはできない。メディアを第2デバイスにダウンロードするためには、ユーザは、通例、そのファイルを元のデバイスから削除しなければならないか、または元のデバイスを使用不可にしなければならない。複数のデバイス上におけるアクセスは問題を孕む。
【発明の概要】
【0005】
[0006] コンテンツ記憶システムを提供する。このコンテンツ記憶システムは、プロセッサと、記憶モジュールと、通信モジュールとを備える携帯用コンテンツ・レポジトリ・
デバイスを含むことができる。記憶モジュールは、種々のコンピューティング・デバイスからのコンテンツ(例えば、オーディオ、ビデオ、画像、または文書)を格納し、これらのコンテンツを種々のコンピューティング・デバイスに送信することができる。通信モジュールは、802.11ワイヤレス・チャネルを通じて通信するように構成された第1ワイヤレス・チップと、Bluetoothチャネルを通じて通信するように構成された第2ワイヤレス・チップとを含むことができる。コンピューティング・デバイスは、Bluetoothチャネルおよび/または802.11ワイヤレス・チャネルを通じてコンテンツ・レポジトリ・デバイスと通信することができる。コンピューティング・デバイスは、コンテンツを生成したことに応答して、そのコンテンツを格納するために、コンテンツ・レポジトリ・デバイスに送信する。コンテンツは、アクセス制御を含むことができ、このアクセス制御は、コンテンツをコンピューティング・デバイスからロックする(lock)または削除することの内少なくとも1つを実行するために、コンテンツ・レポジトリ・デバイスによって誘起する(trigger)ことができる。また、コンテンツ・サポート・システム
もコンピューティング・デバイスおよびコンテンツ・レポジトリ・デバイスと電子通信することができる。コンテンツ・サポート・システムは、コンテンツをコンピューティング・デバイスから受信し、コンテンツをコンテンツ・レポジトリ・デバイスに送信することができる。
【0006】
[0007] ディジタル・コンテンツをストリーミングする方法は、コンテンツ・レポジトリ・デバイスによって、ディジタル・メディア・ファイルをコンテンツ・レポジトリ・デバイスのハード・ドライブに格納するステップと、コンテンツ・レポジトリ・デバイスによって、ディジタル・メディア・ファイルを暗号化するステップと、コンテンツ・レポジトリ・デバイスによってコンピューティング・デバイスから、ディジタル・メディア・ファイルを求める要求を受けるステップと、コンテンツ・レポジトリ・デバイスによってコンピューティング・デバイスに、ディジタル・メディア・ファイルを送信するステップと、コンテンツ・レポジトリ・デバイスによってコンピューティング・デバイスに鍵を送信するステップとを含んでもよく、コンピューティング・デバイスは、一時的に、ディジタル・メディア・ファイルをランダム・アクセス・メモリに格納し、コンピューティング・デバイスが、鍵を使用して、ディジタル・メディア・ファイルを解読する。
【0007】
[0008] 種々の実施形態において、ディジタル・メディア・ファイルはビデオを含むことができ、コンピューティング・デバイスはディジタル・メディア・ファイルをランダム・アクセス・メモリにおいて再生することができる。
【0008】
[0009] コンテンツ・レポジトリ・デバイスは、第1チップを使用して、ディジタル・メディア・ファイルの第1部分をコンピューティング・デバイスに送信することができ、コンテンツ・レポジトリ・デバイスは、第2チップを使用して、ディジタル・メディア・ファイルの第2部分をコンピューティング・デバイスに送信することができる。この方法は、コンテンツ・レポジトリ・デバイスによって、ディジタル・メディア・ファイルをコンピューティング・デバイスから受信するステップを含んでもよく、コンピューティング・デバイスはディジタル・メディア・ファイルをネットワークを通じてダウンロードする(downloaded)。この方法は、コンテンツ・レポジトリ・デバイスによって、ディジタル・メディア・ファイルに対するディジタル権利管理を、コンピューティング・デバイスに対して有効にするステップを含んでもよい。この方法は、コンテンツ・レポジトリ・デバイスによってコンピューティング・デバイスに、このコンピューティング・デバイス上でディジタル・メディア・ファイルをロックするための制御信号を送信するステップを含んでもよい。コンピューティング・デバイスは、アクセス制御が起動されたことに応答して、ディジタル・メディア・ファイルをコンピューティング・デバイスから消去する(wipe)ことができる。
【図面の簡単な説明】
【0009】
[0010] 詳細な説明および特許請求の範囲を参照し、図と関連付けて検討することによって、一層完全な理解が得られるであろう。図面において、同様の参照番号は図全体を通じて同様の要素を指す。
図1図1は、本開示の種々の実施形態によるメッセージ送信システムの模式図を示す。
図2図2は、種々の実施形態にしたがって、デバイス間でデータを送信するプロセスを示す。
図3図3は、種々の実施形態によるファイル送信プロトコルのプロセスを示す。
図4図4は、種々の実施形態による発見プロトコルを示す。
図5図5は、種々の実施形態による発見プロトコルについての定義を示す。
図6図6は、種々の実施形態によるファイル転送要求についての定義を示す。
図7図7は、種々の実施形態によるファイル転送要求に対する応答についての定義を示す。
図8図8は、種々の実施形態による携帯用記憶デバイスを示す。
図9図9は、種々の実施形態にしたがって、デバイスと通信する携帯用記憶デバイスを示す。
図10図10は、種々の実施形態にしたがって、サーバと同期する携帯用記憶デバイスを示す。
図11A図11Aは、種々の実施形態による、保護用外装筐体を有する携帯用記憶デバイスを示す。
図11B図11Bは、種々の実施形態による、エッジ・ピン構成を備える携帯用記憶デバイスを示す。
図12図12は、種々の実施形態にしたがって、種々のコンピューティング・デバイスのためのメディア・レポジトリとして機能する携帯用記憶デバイスを示す。
図13図13は、種々の実施形態にしたがって、アクセス制御を有するメディアを携帯用記憶デバイスからコンピューティング・デバイスに配給する(serve)プロセスを示す。
図14図14は、種々の実施形態にしたがって、ワイヤレス通信範囲外にあるコンピューティング・デバイスからコンテンツを受信するために、コンテンツ・サポート・システムと通信するコンテンツ・レポジトリ・デバイスを示す。
図15図15は、種々の実施形態にしたがって、コンピューティング・デバイスからコンテンツ・レポジトリ・デバイスに、コンテンツ・サポート・システムを通じて、コンテンツを移動するプロセスを示す。
【発明を実施するための形態】
【0010】
[0027] 本明細書において、例示的な実施形態の詳細な説明は、例示として種々の実施形態を示す添付図面および絵図(pictures)を参照する。当技術分野に習熟した者が本開示を実施することを可能にするために、これらの種々の実施形態について十分に詳しく説明するが、他の実施形態も実現できること、そして本開示の趣旨および範囲から逸脱することなく、論理的および機械的変更がなされてもよいことは、理解されてしかるべきである。つまり、本明細書における詳細な説明は、例示のみを目的にするのであって、限定を目的とするのではない。例えば、方法またはプロセスの説明のいずれにおいて記載される(recite)ステップも、任意の順序で実行されてもよく、提示される順序に限定されるのではない。更に、機能またはステップはいずれも、1つ以上のサード・パーティに委託されてもよく、または1つ以上のサード・パーティによって実行されてもよい。更にまた、単数形に言及するときはいつでも、複数の実施形態も含み、1つよりも多いコンポーネントに言及するときは、いつでも1つの実施形態を含むことができる。
【0011】
[0028] 本開示は、システム、方法、およびコンピュータ・プログラム製品に関する。
本明細書における詳細な説明では、「種々の実施形態」、「一実施形態」(one embodiment)、「実施形態」(an embodiment)、「実施形態例」(example embodiment)等に言及する
ときは、説明する実施形態が特定の機能(feature)、構造、または特性を含むとして差し
支えないが、あらゆる実施形態がこれらの特定の機能、構造、または特性を必ずしも含む訳ではないことを示す。その上、このような語句は、必ずしも同じ実施形態に言及するとは限らない。更に、特定の機能、構造、または特性が実施形態に関連付けて説明されるとき、このような機能、構造、または特性を他の実施形態に関連付けて実現することは、明示的に記載されているか否かには関係なく、当技術分野に習熟した者の知識の範囲内であることを具申する。この説明を読んだ後には、本開示を代替実施形態においてどのように実現するかは、関連技術(1つまたは複数)に習熟した者には明白になるであろう。
【0012】
[0029] 本明細書では、携帯用コンテンツ・レポジトリとコンピューティング・デバイスとの間における通信のためのシステムおよび方法について開示する。携帯用記憶デバイスは、他のデバイスによるアクセスのためにコンテンツを保持することによって、コンテンツ・レポジトリとして機能する(serve)ことができる。種々のコンピューティング・デ
バイスは、携帯用記憶デバイス上に格納されているコンテンツを読むこと、書くこと、および/または実行することができる。携帯用記憶デバイスは「永続的に」コンテンツを格納することができるが、携帯用記憶デバイス上のコンテンツにアクセスする種々のコンピューティング・デバイスは、一時的に、コンテンツをアクセス制御と共に/なしで、適所に保持する。つまり、携帯用記憶デバイスは、コンテンツ・レポジトリ・デバイスと記述されてもよい。本開示のコンテンツ・レポジトリ・デバイスは、本明細書において説明するような、標準化通信システム(「SCS」)を使用してもよい。
【0013】
[0030] 本明細書において開示するシステムおよび方法は、インターネットにも、SCSを使用するその他のネットワークにも接続することなく、デバイス間における通信を可能にすることができる。標準化通信システム(「SCS」)が、本開示のコンピューティング・デバイス上で動作可能であるのはもっともである。SCSは、ハードウェアおよび/またはソフトウェアの任意の組み合わせを含んでもよい。SCSは、802.11または802.2(2)ワイヤレス・チップおよびBluetooth(登録商標)システムのような、デバイスの既存の物理コンポーネントを、他のデバイスと通信するために利用することができる。SCSは、IP、TCP/UDP、Bl(登録商標)、生のマンチェスタ符号化(raw Manchester encoding) 、および任意のその他の形態のワイヤレス通信というような、あらゆる通信プロトコルに適しているとして差し支えない。
【0014】
[0031] SCSは、種々の種類およびプラットフォームのデバイス間における通信に対応する(allow)ことができる。加えて、通信は、ネットワークを跨いでデータを送信する
ことなく、デバイス間で直接行うことができるので、ネットワークが利用できないときでも、通信が利用可能であり、ネットワーク上の盗聴者から通信を保護することもできる。更に、デバイス間の直接通信は、セルラ・データ・プランにおけるデータ課金(data charges)を回避することができる。
【0015】
[0032] 図1を参照すると、種々の実施形態によるメッセージ送信システム100が示されている。種々の実施形態にしたがって、SCS112を備える第1デバイス110、およびSCS122を備える第2デバイス120が示されている。種々の実施形態では、SCS112およびSCS122は、第1デバイス110および第2デバイス120上にインストールされているアフターマーケット・ソフトウェア・プログラムであってもよい。例えば、ユーザがSCSアプリをスマートフォンまたはその他のデバイスにダウンロードするのでもよい。しかしながら、種々の実施形態では、SCS112およびSCS122は、第1デバイス110および/または第2デバイス120において、802.11ワイヤレス・チップのような、チップ内に埋め込まれていてもよい。
【0016】
[0033] 種々の実施形態では、SCSは標準化通信プロトコル(「SCP」)をデバイス上に実装することができる。SCPは、データグラム150をSCPデータグラムとして識別するために、SCPヘッダ152をパケットに添付することができる。第1デバイス110は、SCPを通じて、第2デバイス120と通信することができる。SCSは、SCPヘッダを認識することができ、SCPに従うことができる。SCPは、デバイスが互いに発見し合う、生データの転送を要求する、データの受信に対して確認を送信する、およびデータの送信に関与する任意の他のステップを実行する能力を定めることができる。
【0017】
[0034] 種々の実施形態において、SCSはオープン・システム相互接続(「OSI」)モデルにおけるネットワーク・レイヤ(またはTCP/IPモデルにおけるインターネット・レイヤ)において実装することができる。トランスポート・レイヤにおいて使用されるプロトコル(例えば、TCP、UDP、SCTP、DCCP)には関係なく、SCPヘッダは、SCSを備えるデバイスがSCPを通じて通信することを可能にすることができる。
【0018】
[0035] 種々の実施形態において、第1デバイス110および第2デバイス120の内少なくとも1つがスマートフォンを含んでもよい。しかしながら、種々の実施形態において、第1デバイス110および第2デバイス120は、データを送信および/または受信することができる任意の種類のデバイスを含んでもよい。
【0019】
[0036] 図2を参照すると、種々の実施形態にしたがって、デバイス間でデータを送信するプロセス200が示されている。種々の実施形態において、第1ユーザが第1デバイス110から第2デバイス120にデータを送信することを望むとしてもよい。データは、テキスト・メッセージ、画像、ビデオ、テキスト文書、または任意の他の型式のファイルというような、任意の型のデータを含むことができる。
【0020】
[0037] 第1デバイス110は、利用可能なデバイスを発見することができる(ステップ210)。第1デバイス110は、種々の方法によって、他のデバイスを発見しようとしてもよい。種々の実施形態において、第1デバイス110は、カメラまたはその他の光学デバイスによって他のデバイスを発見することもできる。種々の実施形態において、第2デバイス120は、QR-コード、バーコード、またはテキストのようなシンボルを表示することができる。シンボルは、第2デバイス120についての識別特性を含むことができる。例えば、種々の実施形態において、識別特性は、デバイス名、デバイスのIPアドレス、所有者名、デバイスのエンドポイント、およびデバイス上で利用可能なトランスポート・レイヤの内少なくとも1つを含んでもよい。第1デバイス110は、カメラを使用してシンボルをスキャンすることもできる。第1デバイス110は、シンボルから識別特性を得て、データを第2デバイス120に送信するためにこの識別特性を使用することができる。
【0021】
[0038] 種々の実施形態において、第1デバイス110上のSCSは、第1デバイス110におけるワイヤレス・チップを使用して、他のデバイスを検索することができる。SCSを備えるデバイスは、ブロードキャスト・メッセージを送信することができる。ブロードキャスト・メッセージは、デバイスの識別特性を含むことができる。種々の実施形態において、第1デバイス110は第2デバイス120の送信範囲以内に入っていればよい。送信範囲は、第1デバイス110および第2デバイス120におけるワイヤレス・チップの具体的な種類によって異なる場合もある。しかしながら、種々の実施形態において、送信範囲は約200フィートから300フィートまでであるとして差し支えない。SCSは、第1デバイス110上のソケットを開き、ブロードキャスト・メッセージを待ち受け
ることができる。ブロードキャスト・メッセージは、種々のハードウェアによって送られてもよい。例えば、ブロードキャスト・メッセージは、802.11ワイヤレス・チップ、Bluetooth(登録商標)チップ、またはNFCによって送信されてもよい。
【0022】
[0039] 種々の実施形態において、第1デバイス110および第2デバイス120は、互いの送信範囲以内にないこともあり得る。しかしながら、ホットスポット技術を装備したスマートフォンのような仲介デバイスが、第1デバイス110の送信範囲内にあればよい。第1デバイス110は、メッセージを仲介デバイスに送信し、利用可能なデバイスを捜すように仲介デバイスに命令することによって、利用可能なデバイスを検索することができる。仲介デバイスは、ブロードキャスト・メッセージを第2デバイス120から受信することができ、仲介デバイスはこのブロードキャスト・メッセージを第1デバイス110に送信することができる。このように、第1デバイス110が第2デバイス120の送信範囲内になくても、インターネットやセルラ・ネットワークに接続することなく、第2デバイス120を発見することができる。種々の実施形態において、第1デバイスが一連の仲介デバイスを通じてデータを送信することによって、何マイルも離れた第2デバイス120を発見することができるように、任意の数の仲介デバイスをデイジー・チェーン状に繋げることができる。
【0023】
[0040] 第1デバイス110は、発見された全てのデバイスのリストをユーザに表示することができる。ユーザは、データを第2デバイス120に送信するために、第2デバイス120を選択することができる。ユーザは、第2デバイス120に送信するファイルまたはメッセージを選択することができる。
【0024】
[0041] 第1デバイス110上のSCS112は、送信のために利用する送信ハードウェアを決定することができる(ステップ220)。種々の実施形態において、第1デバイス110および第2デバイス120は、各々、802.11ワイヤレス・チップのような、一種類の送信ハードウェアしか有していない場合もあり、したがって、SCS112は、データを送信するために、802.11ワイヤレス・チップを選択すればよい。しかしながら、種々の実施形態において、複数の送信経路が第1デバイス110と第2デバイス120との間で利用可能な場合がある。例えば、第1デバイス110および第2デバイス120が各々802.11ワイヤレス・チップおよびBluetooth(登録商標)チップを備える場合もある。種々の実施形態において、SCS112は最も速い送信経路を判定することができ、次いでデータを送信するために最も速い送信経路を選択することができる。種々の実施形態において、送信経路は、デフォルト設定によって選択されてもよい。例えば、SCS112は利用可能なときは常に802.11ワイヤレス経路を送信のために選択するのでもよく、802.11ワイヤレス経路が利用可能でない場合に、SCS112はBluetooth(登録商標)経路を選択するのでもよい。しかしながら、種々の実施形態において、第1デバイス110上のSCS112は、利用可能な各送信経路を通じて速度検査メッセージを第2デバイス120に送信することができ、SCS112は、この速度検査結果に基づいて、最も速い送信経路を選択することができる。
【0025】
[0042] 種々の実施形態において、SCS112は、複数の送信経路を通じてデータを第2デバイス120に送るように、第1デバイス110に命令することができる。メッセージは、複数のパケットに分割されてもよい。SCS112は、利用可能な送信経路を分析し、メッセージ全体の送信を捗らせるために、複数の送信経路を通じてメッセージを送ることもできる。例えば、SCS112は、メッセージを最も速く送信する方法は、パケットの90%を802.11ワイヤレス経路を通じて送信し、パケットの10%をBluetooth(登録商標)経路を通じて送信することであると判断してもよい。SCS112は、802.11ワイヤレスかBluetooth(登録商標)かには関係なく、第2デバイス120に送信される各パケットにSCPヘッダを添付することができる。この
ため、第2デバイス120上のSCS122は、パケットがSCPによって受信されるものとして認識することができ、SCS122は、メッセージ全体を再現するために、パケットを再度組み立てることができる。種々の実施形態において、SCS112は、最も速い送信方法を選択するために、複数の802.11ワイヤレス・チップ、Bluetooth(登録商標)チップ、NFC、PDQ、または任意の他の送信経路を含むがこれらには限定されない全ての利用可能な送信経路を分析することができる。第1デバイス110上のSCSは、ファイル送信プロトコルを開始し、データを第2デバイス120に送信することができる(ステップ230)。
【0026】
[0043] 種々の実施形態において、第1デバイス110および第2デバイス1120は、同じローカル・ネットワークに接続されてもよい。第1デバイス110は、QR-コードのようなリンクを、セルラ・ネットワークまたはローカル・ネットワークを通じて、第2デバイス120に送信することができる。種々の実施形態において、リンクは、10kb以下のデータで構成されてもよい。第2デバイス120は、このリンクを使用して、ファイル転送を要求することまたは受け入れることができる。第1デバイス110は、ローカル・ネットワークを通じてファイルを送信することができる。種々の実施形態において、TCP/IPを使用してローカル・ネットワークを通じてファイルを直接転送することができる。
【0027】
[0044] 種々の実施形態において、第2デバイス120はインターネット接続にアクセスすることができる。第1デバイス110は、セルラ送信経路を通じて、リンクを第2デバイス120に送信することができ、第2デバイス120は、このリンクを使用して、クラウドおよび/またはサーバ上に格納されているファイルを、インターネットを通じてダウンロードすることができる。種々の実施形態において、第2デバイス120は、TCP/IPを使用して、ファイルをダウンロードすることができる。
【0028】
[0045] 種々の実施形態において、第1デバイス110はそのコンテンツをクラウド・データベースと同期させることができる。種々の実施形態において、第1デバイス110はSCSフォルダを備えることができ、SCSフォルダに格納されているファイルだけをデータベースと同期させることができる。第1デバイス110は、セルラ送信経路を通じて、データベース上に格納されているファイルを識別するリンクを第2デバイス120に送信することができる。種々の実施形態において、第2デバイス120は、第2デバイス120がリンクを受信したときに、802.11ワイヤレス・ネットワークにアクセスできない場合もある。第2デバイス120は、セルラ・データ課金を防ぐために、第2デバイス120が802.11ワイヤレス・ネットワークへのアクセスを獲得したときはいつでも、ファイルにアクセスするためにこのリンクを使用することができる。種々の実施形態において、第2デバイスは、リンクを使用して、セルラ・ネットワークを通じてファイルにアクセスすることができる。種々の実施形態において、第2デバイス120は、セルラ・ネットワークまたは802.11ワイヤレス・ネットワークのいずれかを通じて、ファイルの全部または一部をストリーミングすることができる。
【0029】
[0046] 種々の実施形態において、第1デバイス110はオンライン・フォルダを第2デバイス120と共有することができる。第1デバイス110は、第2デバイス120がオンライン・フォルダにアクセスできることを示すことができる。第1デバイス110は、オンライン・フォルダと同期して、第1デバイス110上に格納されているファイルをオンライン・フォルダにアップロードすることができる。第2デバイス120は、オンライン・フォルダと同期して、オンライン・フォルダに格納されているファイルを第2デバイス120にダウンロードすることができる。
【0030】
[0047] 図3を参照すると、種々の実施形態によるファイル送信プロトコルのプロセス
300が示されている。第1デバイス110は、第2デバイス120との接続を確立する要求を送信することができる(ステップ310)。種々の実施形態において、この接続はTCP接続を含んでもよい。しかしながら、種々の実施形態において、接続は、デバイス間でデータを送信するための任意の型式の接続を含むことができる。第2デバイス120は接続要求を受け入れることができる(ステップ320)。種々の実施形態において、この接続は、第1デバイス110および第2デバイス120上のセキュア・ソケット間であってもよい。
【0031】
[0048] 種々の実施形態において、第1デバイス110は、暗号ブック(cypher book)
を含むメッセージを第2デバイス120に送信することができる(ステップ330)。暗号ブックは、ワンタイム暗号のリストを含むことができ、第2デバイス120が、ワンタイム暗号を使用して、セキュア・ソケット接続を通じて第2デバイス120に送られたデータを解読することを可能にすることができる。種々の実施形態において、第1デバイス110は、暗号ブックを含むメッセージを、高度暗号規格(「AES」:Advanced Encryption Standard)またはRSA暗号化のような、既知の暗号化方法を使用して暗号化することができる。しかしながら、転送セッション中における後続のメッセージは、暗号ブックに収められているワンタイム暗号を使用して暗号化することができる。ワンタイム暗号を使用して暗号化されたメッセージは、AESまたはRSAによって暗号化されたメッセージよりも、遙かに少ない処理パワーおよび時間を使用して、暗号化および解読することができる。加えて、ワンタイム暗号を使用して送られたメッセージは、暗号ブックを有していない(containing)者(parties)には解読できないのはもっともである。
【0032】
[0049] 第1デバイス110は、ファイル転送要求を送ることができる(ステップ340)。ファイル転送要求の例については、図5を参照のこと。第2デバイス120は、ファイル転送要求を受け入れることができる(ステップ350)。第2デバイス120がファイル転送要求を受け入れたことに応答して、第1デバイス110はファイルをセグメントに分解し、これらのセグメントを第2デバイス120に送信し始めることができる(ステップ360)。第1デバイス110がファイルの全てのセグメントを送信した後、第1デバイス110は、第2デバイス120が全てのセグメントを受信したことの確認を待てばよい。第2デバイス120は、確認メッセージを第1デバイス110に送信し、全てのセグメントを受信したことを示すことができる(ステップ370)。第2デバイス120は、ファイルを再現するために、SCPにしたがってセグメントを解読し再度組み立てることができる(ステップ380)。
【0033】
[0050] 図4を参照すると、種々の実施形態による発見プロトコル400の例が示されている。発見プロトコル400は、TCP/UDPを使用して、トランスポート・レイヤ上に実装することができる。しかしながら、種々の実施形態において、発見プロトコルは、Bluetooth(登録商標)シリアル・ポート、RS-232を使用して実装することもでき、あるいはデータグラムまたはWindows(登録商標)ソケットAPI(「WSA」)上で全体的に送ることもできる。図示する実施形態におけるLocalClientは、デバイス名、ユーザ名、プレビュー画像、およびエンドポイント(この場合、IPアドレスおよびポート)というような、デバイスの識別特性が記入された(filled in)IDiscoveredClient(図5において定義する)の新たなインスタン
スであってもよい。第1デバイス110は、ブロードキャスト・メッセージのために新たなソケットを開くことができる(410)。第1デバイス110は、ブロードキャスト・メッセージに対する応答のために第1デバイス110が 待ち受けるIPアドレスを送信
することができる(420)。第1デバイス110は、応答メッセージを待ち受けるために、新たなデータグラム・ソケットを開くことができる(430)。応答メッセージを受信した後、第1デバイス110は、応答メッセージを解読して、第1デバイス110が送った元のIDiscoveredClientメッセージを得ることができる(440)
【0034】
[0051] 図5を参照すると、種々の実施形態による発見プロトコル例500についての定義が示されている。この定義は、IDiscoveredClientと呼ばれる1つの共通クラスとしてもよく、送信元デバイスおよび受信先デバイスによって実装することができる。種々の実施形態において、この定義は、カスタム・フィールド、およびユーザが望むかもしれない任意の他の情報を含むために、拡大することができる。種々の実施形態において、この定義は、デバイスの名称(510)、デバイスのIPアドレス(520)、デバイスの所有者(530)、およびデバイスのエンドポイント(540)、ならびにデバイスが発見されたトランスポート・レイヤ(550)で構成することができる。しかしながら、使用される特定のフィールドが任意の所望のフィールドに変更されてもよいことは、当技術分野に習熟した者には認められよう。
【0035】
[0052] 図6を参照すると、種々の実施形態によるファイル転送要求プロトコル例600についての定義が示されている。この定義は、「IFileTransferRequest」と呼ぶことができる。種々の実施形態において、この定義は、ファイルを送信するデバイスの名称(610)、送られるファイル名(620)、ファイルのサイズ(630)、ファイルを受信するデバイス(640)、ファイル転送の一意の識別(650)、およびファイル転送に関連するトランスポート・レイヤ(660)で構成することができる。
【0036】
[0053] 図7を参照すると、種々の実施形態によるファイル転送要求に対する応答700についての定義が示されている。受信先デバイスは、この受信先デバイスがファイル転送を受け入れる用意があることを示すために、IFileTransferResponseと呼ばれる定義で応答することができる。種々の実施形態において、IFileTransferRequestは、ユーザからの応答(710)、およびファイル転送の一意の識別(720)で構成することができる。送信元デバイスは、受信先デバイスからこの応答を受信することができ、そして送信元デバイスはファイルを受信先デバイスに送信する処理を進めることができる。一旦完全なファイル転送が行われたなら、受信先デバイスは確認を送信元デバイスに送信することができる(730)。
【0037】
[0054] 図8を参照すると、種々の実施形態による携帯用記憶デバイス(「PSD」)800が示されている。PSD800は、図8に示すような腕輪またはブレスレットのような、ウェアラブル・デバイスであってもよい。しかしながら、PSDは、情報を格納することができる任意の種類の携帯用デバイスとすることができる。例えば、PSDは、腕時計、ネックレス、電話ケース、スマートフォン、埋め込みチップ、衣服、財布等を含んでもよい。
【0038】
[0055] PSD800は、記憶モジュール810、通信モジュール820、プロセッサ830、およびバッテリ840を備えることができる。記憶モジュール810は、メモリ・カードを含んでもよい。例えば、記憶モジュール810は、SDカード、xDカード、CompactFlashカード、または任意の他の適したメモリ・カードを含んでもよい。記憶モジュール810は、iSSD、SSD、iNAND、またはフラッシュSDのような、内部メモリを含んでもよい。通信モジュール820は、ワイヤレス通信が可能な1つ以上のコンポーネントを備えてもよい。例えば、通信モジュールは、802.11または802.2(2)ワイヤレス・チップ、Bluetooth(登録商標)チップ、NFCチップ等を含んでもよい。プロセッサ830は、記憶モジュール810および通信モジュール820に命令を供給することができるハードウェアおよび/またはソフトウェアの任意の組み合わせを含むことができる。種々の実施形態において、記憶モジュール810、通信モジュール820、およびプロセッサ830は、PSD800内部に埋め込まれ
て、目に見える電子コンポーネントをPSD800が全く有さないようにしてもよい。種々の実施形態において、PSD800はゴムまたはシリコーンのような防水コーティングを備えてもよい。
【0039】
[0056] PSD800は、本明細書において既に説明したような、標準的な通信システム(「SCS」)を含むことができる。SCSは、本明細書において既に説明したような、標準的な通信プロトコル(「SCP」)によって通信することができるハードウェアおよび/またはソフトウェアの任意の組み合わせであってもよい。種々の実施形態において、SCSは、記憶モジュール810、通信モジュール820、またはプロセッサ830の内少なくとも1つに実装されてもよい。
【0040】
[0057] PSD800は、スマートフォン、テレビジョン、ゲーム・コンソール、タブレット、パーソナル・コンピュータ、プリンタ等のような、他のデバイスからファイルおよび通信を、ワイヤレスで受信および送信することができる。SCSのために、PSD800が、任意の特定のブランドまたは製造業者のデバイスとの通信に限定されることはないとしてよい。対照的に、PSD800は、Apple(登録商標)デバイス、Android(登録商標)デバイス、Windows(登録商標)デバイス、UNIX(登録商標)デバイス、または任意の他の適したデバイスというように、プラットフォームを跨いで通信することができる。
【0041】
[0058] 種々の実施形態において、PSD800は、ユーザが行くところではどこでも、彼らのファイルにユーザがアクセスすることを可能にすることができる。例えば、ユーザがラップトップ・コンピュータ上に格納された文書を有するとしてもよい。ユーザは、SCSを使用して、この文書をラップトップ・コンピュータからPSD800に送信することができる。PSD800は、この文書を記憶モジュール810に格納することができる。次いで、ユーザは、SCSを使用して、この文書をPSD800からスマートフォンのような他のデバイスに送信することができる。
【0042】
[0059] 種々の実施形態において、PSD800は、ネットワークを使用せずに、他のデバイスと直接通信することができる。つまり、PSD800と他のデバイスとの間において情報を安全に送信することができる。しかしながら、種々の実施形態において、PSD800は、通信モジュール820におけるワイヤレス・チップを使用して、ネットワークを通じて通信することもできる。通信モジュール820は、2つのワイヤレス・チップを備えてもよく、PSD800が、同時に、第1ワイヤレス・チップ上でネットワークを通じて通信し、更に第2ワイヤレス・チップ上で他のデバイスと直接通信することを可能にする。
【0043】
[0060] 種々の実施形態において、PDS800は、データをデバイス上に格納することなく、デバイスからPSD800にデータを転送することを可能にすることができる。例えば、スマートフォンが、このスマートフォンのRAMを使用して、映像(picture)を
キャプチャし、スマートフォンのハード・ドライブ上に映像を格納することなく、この映像を直接PSD800に送信することができる。このように、スマートフォンが紛失しても、盗まれても、販売されても、または寄付されても、第三者が映像、またはPSD800上に格納されているがスマートフォンには格納されていない他のデータを入手する危険性はない。同様に、ユーザはラップトップのようなデバイス上でSCSを開始し、このデバイスを使用して、PSD800上に格納されているファイルを開くことができる。ユーザは、デバイス上でファイルを編集し、編集したファイルをデバイス上に保存することなく、直接PSD800上に、編集したファイルを保存することができる。
【0044】
[0061] ユーザは、ユーザのファイルの全てを格納するためにPSD800を使用する
こともできる。PSD800上のファイルにアクセスするためにユーザがどのデバイスを使用しているかには関係なく、ユーザは、パーソナル・コンピュータのような他のデバイスを使用して、PSD800上で直接ファイルを作成、編集、および削除することができる。
【0045】
[0062] 種々の実施形態において、PSD800はネットワーク・ドライブをエミュレートすることができる。つまり、PSD800は、カスタム・ソフトウェアをダウンロードすることもインストールもすることができないデバイスと通信することができるとして差し支えない。例えば、PSD800はDLNAメディア・サービス、またはWindows(登録商標)ネットワークをエミュレートすることができる。PSD800は、デバイス上でパスワードを入力することを要求してもよく、次いでデバイスは、PSD800上に格納されているファイルにアクセスすることができる。
【0046】
[0063] 図9を参照すると、種々の実施形態による、PSD910、およびSCS922を備えるデバイス920が示されている。種々の実施形態において、デバイス920は、図1を参照して説明した第1デバイス110としてもよい。しかしながら、デバイス920は、SCPを使用してPSD910と通信することができる任意のデバイスを備えてもよい。ユーザは、SCS922にログインすることができ、デバイス920はアクセス鍵を要求することができる。種々の実施形態において、デバイス920は、インターネットまたはセルラ接続を通じて、サーバにアクセス鍵を要求してもよい。しかしながら、種々の実施形態において、PSD910は、PSD910上に1つ以上のアクセス鍵を格納しておくことができ、デバイス920は、格納されているアクセス鍵をPSD910に要求すればよい。PSD910は、格納されているアクセス鍵をデバイス920に送信することができ、デバイス920は、格納されている鍵を使用して、デバイス920とPSD910との間で送信されるデータを暗号化および/または解読することができる。種々の実施形態において、アクセス鍵は、ある設定時間の後期限切れになることができる一時鍵であってもよい。ユーザは、PSD910上に格納されているファイルを見ることができ、ユーザは、PSD910とデバイス920との間でファイルをアップロードまたはダウンロードすることができる。種々の実施形態において、PSD910は、オーディオ・ファイルまたはビデオ・ファイルのようなファイルを、デバイス920にストリーミングすることができる。一旦ファイルがPSD910上に格納されたなら、ユーザは、PSD910の通信範囲内にある任意のデバイスによって、ファイルにアクセスすることができる。種々の実施形態において、プラットフォームを跨いでファイルをストリーミングすることができる。例えば、ユーザが、Apple(登録商標)デバイス上でiTunes(登録商標)を通じてオーディオ・ファイルを購入するのでもよい。ユーザは、SCPを使用して、オーディオ・ファイルをPSD910に送信することができる。PSD910は、オペレーティング・システムには関係なく、SCPを使用して、オーディオ・ファイルをPSD910からApple(登録商標)以外のデバイスにストリーミングすることができる。
【0047】
[0064] 図10を参照すると、種々の実施形態にしたがって、PSD1010上にデータをバックアップするためのシステム1000を示す。PSD1010は、デバイス1020との接続を確立することができる。種々の実施形態において、デバイス1020は、サーバ1030と通信することができる任意の種類のデバイスを含めばよい。例えば、デバイス1020はパーソナル・コンピュータ、スマートフォン、またはワイヤレス・ルータを含んでもよい。デバイス1020は、ネットワークを通じて、サーバ1030と通信することができる。種々の実施形態において、サーバ1030はクラウド・コンピューティング・システムを含んでもよい。
【0048】
[0065] デバイス1020は、SCSを備えることができる。PSD1010は、SC
Sを利用して、デバイス1020と通信することができる。ユーザは、デバイス1020上でSCSにログインし、サーバ1030と同期するように、PSD1010に命令することができる。PSD1010は、任意の新しいファイルまたは編集したファイルをサーバ1030に、デバイス1020を通じて送信することができる。ファイルをユーザ・アカウントと関連付けて、サーバ1030上に格納することができる。種々の実施形態において、ユーザ・アカウントと関連付けられた任意の新たなファイルまたは編集済みのファイルをサーバ1030からダウンロードし、デバイス1020を通じてPSD1010に送信することができる。一旦PSD1010がサーバ1030と同期したなら、ユーザは、インターネットを通じて任意のデバイスでユーザ・アカウントにログインすることによって、ファイルにアクセスすることができ、またはユーザは、デバイスでPSD1010にアクセスすることによって、ファイルにアクセスすることができる。
【0049】
[0066] 種々の実施形態において、PSD1010は、充電する(charging)ときに自動的に同期することができ、更にワイヤレスでまたは充電ケーブル上で充電することもできる。PSD1010は、予め定められたバッテリ・レベルに達した後に、同期を開始することができる。例えば、充電器上に載せられると、PSD1010は、バッテリ・レベルが少なくとも50%または少なくとも90%に達したことに応答して、同期を開始するとしてもよい。PSD1010は、サーバ1030、ローカル・デバイス、またはその他のPSDというような、ユーザによって指定される任意の場所(location)に同期することができる。
【0050】
[0067] 図11Aを参照すると、種々の実施形態による携帯用記憶デバイス1100が示されている。携帯用記憶デバイス1100は、本明細書において説明する特徴的機能(feature)および機能(functionality)を種々に含むことができる。携帯用記憶デバイス1100は、保護用外装筐体1102を有してもよい。保護用外装筐体1102は、金属、プラスチック、および/またはゴムを含む材料で作られればよい。例えば、保護用外装筐体1102はアルミニウムで作ってもよい。
【0051】
[0068] 保護用外装筐体1102は、矩形外形を有し、角を丸めた表面1104を含むのでもよい。また、表面1104は、突出する外周1106、および沈んだ中央部1108も含んでもよい。表面1104の各辺の長さは、例えば、約48mmにしてもよい。また、携帯性を高めるために、タイ・ループ1110も携帯用記憶デバイス1100に取り外し可能に結合されるとよい。
【0052】
[0069] 表面1112および表面1114は、テーパー面に沿って、表面1104に接することができる。表面1112および表面1114は、最小限の重量増加によって強度を高めるために、うねり外面(ribbed feature)1116を含んでもよい。側面は、約48mm×23mmの矩形外形とすればよい。つまり、携帯用記憶デバイス1100の矩形外形は、6つの側面を含み、各側面が、長さ0.5cm未満の縁を有するのでもよい。
【0053】
[0070] 表面104は、i/oパネル1118を含むことができる。i/oパネル1118は、携帯用記憶デバイス1100を、オン、オフ、およびスタンバイを含む電力設定(power configuration)間で切り替えるために、ボタン1120および1122を含むこ
とができる。ボタン1120および/または1122は、例えば、コンピューティング・デバイスとのワイヤレス・ペアリング、またはワイヤレスLANへの加入のために使用することもできる。i/oパネル1118は、i/oパネル1118の表面を通して照らすために照明するライト1124も含むことができる。ライト1124は、電力、ペアリング、ネットワーク活動、セルラ活動等についてのステータス・インディケータとして役割を果たすこともでき、更にデバイス・ステータスを示すために、色、明るさ、明滅、一様(solid)、およびその他の光特性を変化させることができる。携帯用記憶デバイス110
0は、うねり外面1116と、表面1112および表面1114と同様の矩形外形とを有する追加の表面を有することもできる。また、携帯用記憶デバイス1100は、表面1104の逆側に、同様の外形を有し、突出する外周1106および沈んだ中央部1108がある他の正方形表面も含むことができる。保護用外装筐体1102の1つ以上の表面は、交換可能なバッテリを露出するために取り外し可能にするとよい。また、保護用外装筐体1102の1つ以上の表面は、ワイヤレス充電を容易にするために、バッテリに電子的に結合されたコイルも含んでもよい。
【0054】
[0071] 図11Bを参照すると、種々の実施形態による、エッジ・ピン構成を含む携帯
用記憶デバイス1150の斜視図が示されている。携帯用記憶デバイス1150は、図11Aを参照して説明した携帯用記憶デバイス1100と同様または同一の機能を実行する
ことができる。携帯用記憶デバイス1150は、プロセッサ、ハード・ドライブ、ワイヤレス・チップ、バッテリ等のような、コンピューティング・コンポーネントを備えることができる。携帯用記憶デバイス1150は、一般に、携帯用記憶デバイス1150が6つの側面を含み、その各々が矩形となるような、直方体の形状をなしてもよい。携帯用記憶デバイス1150は、第1ピン集合1160および第2ピン集合1170を含むことができる。第1ピン集合1160および第2ピン集合1170は、携帯用記憶デバイス1150の上面1152と前面1154との間の接合部に配置されてもよい。第1ピン集合1160および第2ピン集合1170は、電話ケースまたは外部バッテリのような、副ジュールにおいて対応するピンと接触するように構成することができる。
【0055】
[0072] 携帯用記憶デバイス1150は、更に、接続ポート1180も含むことができる。接続ポート1180は、携帯用記憶デバイス1150を、コンピュータ、カメラ、プリンタ等のような他のコンポーネントに接続するためのコードを受けるように構成することができる。種々の実施形態において、接続ポート1180は、USB型式のCポート、任意の他のUSB型式のポート、シリアル・ポート、または他のデバイスに接続することができる任意の他の型式の接続ポートであってもよい。しかしながら、USB型式のCポートは、主モジュールを非常に薄いパッケージ内に組み立てることを可能にする。例えば、種々の実施形態において、携帯用記憶デバイス1150の高さは、0.3インチ未満である。種々の実施形態において、接続ポート1180は、携帯用記憶デバイス1150の前面1154上に、第1ピン集合1152と第2ピン集合1154との間に配置してもよい。
【0056】
[0073] 図12を参照すると、種々の実施形態によるコンテンツ配信システム1200が示されている。コンテンツ配信システム1200は、少なくとも1つのコンテンツ・レポジトリ・デバイス1202を備える。コンテンツ・レポジトリ・デバイス1202は、例えば、図11Aの携帯用記憶デバイス1100、または図11Bの携帯用記憶デバイス1150のような、携帯用記憶デバイスでもよい。コンテンツ・レポジトリ・デバイス1202は、1つ以上のコンピューティング・デバイス1204にワイヤレスで接続することができる。
【0057】
[0074] 本明細書において使用する場合、「コンピューティング・デバイス」とは、携帯用コンテンツ・レポジトリと電子通信することができる任意のデバイスを指すとすればよい。本明細書において説明するコンピューティング・デバイスには、コンピュータまたはプロセッサ、あるいは携帯用コンテンツ・レポジトリと電子通信することができるパーソナル・コンピュータのような、1組のコンピュータ/プロセッサが含まれる。しかしながら、他の種類のコンピューティング・デバイスを使用してもよく、ラップトップ1206、ノートブック、ハンドヘルド・コンピュータ、デスクトップ・コンピュータ1208、パーソナル・ディジタル・アシスタント、セルラ・フォン、スマートフォン1210(例えば、iPhone(登録商標)、BlackBerry(登録商標)、Androi
d(登録商標)等)、タブレット1212、ウェアラブル1214、もののインターネット(IoT)デバイス1216、自動車用情報娯楽システム(automotive infotainment system)、カメラ、あるいはコンテンツ・レポジトリ・デバイス1202に送信するおよび/またはコンテンツ・レポジトリ・デバイス1202から受信することができる任意の他のデバイスが含まれる。
【0058】
[0075] コンテンツ・レポジトリ・デバイス1202と通信する種々のコンピューティング・デバイス1204は、移動してコンテンツ・レポジトリ・デバイスのワイヤレス通信範囲に出入りすることができる。コンテンツ・レポジトリ・デバイス1202は、デバイスが対にされるBluetoothのようなワイヤレス規格を使用して、それと対をなすコンピューティング・デバイス1204毎に接続情報を格納することができる。また、コンテンツ・レポジトリ・デバイス1202は、アクセス・ポイント識別子および/またはパスワードのような、ワイヤレスLANの詳細も格納することができる。同様に、コンピューティング・デバイス1204は、コンテンツ・レポジトリ・デバイス1202の識別子および/またはパスワードも格納することができる。コンピューティング・デバイス1204がコンテンツ・レポジトリ・デバイス1202のワイヤレス通信範囲に入ると、格納されている接続の詳細を使用して、ワイヤレス接続を再確立することができる。
【0059】
[0076] コンテンツは、コンテンツ・レポジトリ・デバイス1202と電子通信するコンピューティング・デバイス1204によって開始されるトランザクションによって、購入およびダウンロードすることもできる。また、格納のために、コンピューティング・デバイス1204からコンテンツ・レポジトリ・デバイス1202にコンテンツを直接転送することもできる。コンテンツは、コンテンツ・レポジトリ・デバイス1202上の格納のために暗号化することもできる。転送されたコンテンツは、そのコンテンツと共に規定されるディジタル権利管理規則に従うために、元のコンピューティング・デバイスから削除されなければならない。コンテンツ・レポジトリ・デバイス1202上に格納されたコンテンツには、コンテンツ・レポジトリ・デバイスと通信する任意のコンピューティング・デバイス1204によってアクセスすることができる。例えば、カメラが写真をキャプチャし、格納のために、この写真をコンテンツ・レポジトリ・デバイス1202にワイヤレスで送信することもできる。ラップトップ1206およびスマートフォン1210は、写真がコンテンツ・レポジトリ・デバイス1202に転送されたことに応答して、この写真をワイヤレスで見ることができる。
【0060】
[0077] このように、コンテンツ・レポジトリ・デバイス1202は、コンテンツ・レポジトリ・デバイス1202と通信する種々のコンピューティング・デバイスから、コンテンツを受信することができる。コンテンツは、見直し、表示、再生、編集、または種々のデバイスへのその他のアクセスのために利用可能であるのはもっともである。コンテンツは、コンピューティング・デバイス1204上で作成され、コンテンツ・レポジトリ・デバイス1202上に永続的に格納され、コンテンツにアクセスする種々のコンピューティング・デバイス上にキャッシュされてもよい。コンテンツは、再生の間種々のコンピューティング・デバイスのRAMに、例えば、ビットストリームとして格納されてもよい。また、コンテンツ・レポジトリ・デバイス1202は、互換性のあるデバイスに対して、新たなコンテンツが生成されコンテンツ・レポジトリ・デバイス1202上に格納されたことを示すために、プッシュ通知によって、コンピューティング・デバイスに通知を送信することもできる。
【0061】
[0078] これより図13を参照すると、種々の実施形態にしたがって、コンテンツ・レポジトリ・デバイス1202からコンピューティング・デバイス1204にメディアをストリーミングするためのプロセス1300が示されている。プロセス1300は、コンテンツ・レポジトリ・デバイス1202および/またはコンピューティング・デバイス12
04上で実行するコンテンツ配信システム1200のソフトウェア上で実行可能であればよい。コンピューティング・デバイス1204については、ソフトウェアは、ブラウザに基づくアプリケーション、またはネーティブで実行するアプリケーション(natively running application)を含んでもよい。コンピューティング・デバイス1204は、コンテンツ・レポジトリ・デバイス1202からストリーミングするために利用可能なメディアのリストを要求することができる。
【0062】
[0079] コンテンツ・レポジトリ・デバイス1202は、要求に応答して、ストリーミングするために利用可能なメディアのリストを、コンピューティング・デバイス1202に返すことができる(ステップ1302)。要求は、例えば、APIを使用して、コンテンツ・レポジトリ・デバイス1202と互換性のあるコンピューティング・デバイス1204上における実行のためのアプリケーションを、第三者が書くことを可能にするために行われてもよい。リストは、コンピューティング・デバイス1204上における表示のために利用可能な任意の種類のメディアを含むことができる。コンテンツ・レポジトリ・デバイス1202は、コンテンツを見るためにコンピューティング・デバイス1204上にインストールされているアプリケーションを考慮して、コンピューティング・デバイス1204がインストールしてある視聴用ソフトウェアに合ったメディアに限定されたリストを返すことができる。また、コンテンツ・レポジトリ・デバイス1202は、コンテンツ・レポジトリ・デバイス1202上に格納されているメディアの包括リストを、ストリーミングのために返すこともできる。コンテンツ・レポジトリ・デバイス1202は、メディア・リストおよび/またはストリームを複数のコンピューティング・デバイスに同時に提供することができる。
【0063】
[0080] コンテンツ・レポジトリ・デバイス1202は、コンピューティング・デバイス1204上で利用可能なメディアのリストから、指定メディア・ファイル(identified media file)が選択されたことに応答して、コンピューティング・デバイス1204から
、指定メディア・ファイルを求める要求を受けることができる(ステップ1304)。指定メディア・ファイルは、コンピューティング・デバイス1204にストリーミングするのに適したコンテンツ・ファイルであればよい。コンピューティング・デバイス1204は、アクセスを容易にするために、コンテンツを一時的に格納することができる。コンテンツの一時的な格納は、例えば、メモリ、ストレージ・ドライブ上におけるホット・スワップ空間、および/またはキャッシュ・ストレージにおける格納を含むことができる。メディア・ファイルは、メディア・ファイルへのアクセスをロックする、および/またはコンピューティング・デバイス1204にメディア・ファイルを削除させることができる権利管理制御の対象となる可能性がある。コンテンツ・レポジトリ・デバイス1202は、指定メディア・ファイルを、暗号化フォーマットでコンピューティング・デバイス1204に送信することができる。コンテンツ・レポジトリ・デバイス1202は、鍵をコンピューティング・デバイス1204に送信することができる。コンピューティング・デバイス1204は、この鍵を利用して、ネーティブ・アプリケーションまたはブラウザ内部でメディア・ファイルを解読することができる。
【0064】
[0081] コンテンツ・レポジトリ・デバイス1202は、指定メディア・ファイルを、コンピューティング・デバイス1204に、アクセス制御と共に送信することができる(ステップ1306)。アクセス制御は、コンテンツ・レポジトリ・デバイス1202からコンピューティング・デバイス1204にストリーミングされるコンテンツに対してディジタル権利管理を有効にする(enable)ことができる。ディジタル権利管理は、コンピューティング・デバイス1204上で実行するネーティブ・ソフトウェア・アプリケーションおよび/またはブラウザに基づくアプリケーションの一部として実行されてもよく、コンテンツ・レポジトリ・デバイス1202から配給されたメディア・ファイルに対してアクセス制御を規定することができる。アクセス制御は、例えば、メディア・ファイルへのア
クセスを、6時間、12時間、24時間、48時間、1週間、または任意のその他の所望の時間枠というような、所定の期間に限定する有効期限(time-to-live)フィールドとしてもよい。
【0065】
[0082] メディア・ファイルをストリーミングするコンテンツ・レポジトリ・デバイス1202および/またはコンピューティング・デバイス1204は、所定の条件に応答して、メディア・ファイルへのアクセスをロックすることができる(ステップ1308)。例えば、コンピューティング・デバイス1204が、所定の期間コンテンツ・レポジトリ・デバイス1202と連絡が取れなかったことに応答して、メディア・ファイルへのアクセスを削除および/または制限することができる。これに関して、コンピューティング・デバイス1204は、現在のタイムスタンプを、コンピューティング・デバイス1204とコンテンツ・レポジトリ・デバイス1202との間における最後の通信を表す最終連絡タイムスタンプと比較することができる。コンピューティング・デバイス1204は、現在のタイムスタンプと、所定の閾値を超える最終連絡タイムスタンプとの間の差に応答して、ファイルを削除および/またはロックすることもできる。
【0066】
[0083] メディア・ファイルに適用可能なアクセス制御は、コンテンツ・レポジトリ・デバイス1202によって離れて呼び出すこともできる。コンテンツ・レポジトリ・デバイス1202は、コンピューティング・デバイス1204上に存在する個々のメディア・ファイルおよび/またはメディア・ファイルのライブラリをロックおよび/または削除するために、コンピューティング・デバイス1204に制御信号を送信することができる。コンテンツ・レポジトリ・デバイス1202は、ファイルが所定期間にわたってストリーミングされたことに応答して、DRM制御に応答して、コンピューティング・デバイス1204からのユーザ・ロック要求に応答して、または他の適したトリガに応答して、制御信号を送信することができる。メディア・ファイルは、例えば、コンピューティング・デバイス1204上のメモリおよび/またはスワップ空間内に、アクセスのために存在することができ、アクセス制御が誘起されたことに応答して、コンピューティング・デバイス1204から消去することができる。
【0067】
[0084] 図14は、種々の実施形態にしたがって、コンピューティング・デバイス1406からコンテンツ・レポジトリ・デバイス1202にコンテンツを移動させるためのコンテンツ記憶システム1400を示す。コンピューティング・デバイス1406は、コンテンツを生成することができるデバイスであればよい。例えば、コンピューティング・デバイス1406は、本明細書において説明したコンピューティング・デバイスの内任意のものでもよい。コンテンツ・レポジトリ・デバイス1402は、図12を参照して説明したコンテンツ・レポジトリ・デバイス1202と同様である。種々の実施形態において、コンテンツ・レポジトリ・デバイス1402は、LAN、WAN、またはインターネットのようなネットワークを通じて、コンテンツ・サポート・システム1404と通信することができる。コンテンツ・サポート・システム1404は、インターネットを通じた通信のために利用可能なサーバのような、コンピューティング・デバイスであってもよい。
【0068】
[0085] コンテンツ・サポート・システム1404は、コンテンツのコンテンツ・レポジトリ・デバイスへの移動を容易にするために、各コンテンツ・レポジトリ・デバイス1402と関連付けられたユーザ・アカウントを有することができる。コンピューティング・デバイス1406は、コンテンツ・レポジトリ・デバイス1402上における格納のためにコンテンツが生成されたときに、コンテンツ・レポジトリ・デバイス1402からワイヤレス範囲(例えば、Bluetoothまたは802.11通信チャネルの)の外側にあってもよい。これに関して、コンテンツ・サポート・システム1404は、コンピューティング・デバイス1406からコンテンツ・レポジトリ・デバイス1402にデータを移動させることができる。
【0069】
[0086] 図15を参照すると、種々の実施形態にしたがって、コンピューティング・デバイス1406がワイヤレス範囲の外側にあることに応答して、コンテンツをコンテンツ・レポジトリ・デバイス1402に転送するためのプロセス1500が示されている。コンピューティング・デバイス1406は、コンテンツ・レポジトリ・デバイス1402上における格納に適したコンテンツを生成することができる(ステップ1502)。コンテンツは、ビデオ、オーディオ、文書、画像、またはコンテンツ・レポジトリ・デバイス1402上における格納に適したその他のコンテンツであってもよい。コンテンツ・レポジトリ・デバイス1402は、コンテンツ・サポート・システム1404によって維持されるアカウントと関連付けることができる。つまり、アカウントに関係するコンテンツをコンテンツ・レポジトリ・デバイスに送信することができるように、アカウントを個々のコンテンツ・レポジトリ・デバイス1402に関連付けることができる。コンテンツ・レポジトリ・デバイス1402は、コンピューティング・デバイス1406からコンテンツ・レポジトリ・デバイス1402へのコンテンツの送信を容易にするために、コンテンツ・サポート・システム1404との接続を維持することができる。また、コンテンツ・レポジトリ・デバイス1402は、コンテンツのダウンロードをチェックするために、周期的にコンテンツ・サポート・システム1404にポールすることもできる。
【0070】
[0087] コンピューティング・デバイス1406は、コンテンツ・サポート・システム1404によって認証することができる(ステップ1504)。認証は、パスワード、生物計量、ワンタイム・コード、またはその他の認証技法を含んでもよい。認証は、コンピューティング・デバイス1406がコンテンツ・レポジトリ・デバイス1402にデータをプッシュすることを許可されていることを証明することができる。コンテンツをコンテンツ・レポジトリ・デバイス1402にプッシュすることを制限するおよび/または許可するために、コンテンツ・サポート・システム1404の共有設定をアカウントまたはデバイス・レベルで設定することができる。
【0071】
[0088] コンピューティング・デバイス1406は、コンテンツをコンテンツ・サポート・システム1404に送信することができる(ステップ1506)。これに関して、コンテンツ・サポート・システム1404は、コンテンツの仲介として作用することができる。コンピューティング・デバイス1406は、コンテンツを送信する前に、本明細書において説明したように、コンテンツ・レポジトリ・デバイス1402にはわかる方法で、コンテンツを暗号化することができる。コンテンツは、コンテンツ・レポジトリ・デバイス1402上において、暗号化されたフォーマットまたは平文フォーマットで格納することができる。コンテンツ・サポート・システム1404は、移行(transit)の間コンテン
ツのセキュリティを保護するために、コンテンツ・レポジトリ・デバイス1402に送信されるコンテンツの平文バージョンまたは解読バージョンには露出されなくてもよい。
【0072】
[0089] コンテンツ・レポジトリ・デバイス1402は、コンテンツ・サポート・システム1404からコンテンツを受信することができる(ステップ1508)。コンテンツ・レポジトリ・デバイス1402のセルラ接続、および/または802.11ワイヤレス・チャネルを通りルータまたは他のアクセス・ポイントを介して提供されるインターネット接続を使用して、コンテンツ・サポート・システム1404からコンテンツ・レポジトリ・デバイス1402にインターネットを通じて、コンテンツを送信することができる。コンテンツ・サポート・システム1404は、コンテンツ・レポジトリ・デバイス1402への遠隔送信のためのコンテンツ・ファイルのサイズを、例えば、1MB、50MB、100MB、200MB、または任意の他の適したファイル・サイズ制限というような、所定の閾値に制限することができる。また、コンテンツ・サポート・システム1404は、ある時間間隔では1つのアカウントを総帯域幅の数値(total bandwidth number)に制限することもできる。例えば、コンテンツ・サポート・システム1404は、ある時間期間
では、コンテンツ送信を1GB、5GB、10GB、または任意の適した帯域幅量に制限するのでもよい。コンテンツ・レポジトリ・デバイス1402によって受信されたコンテンツは、コンピューティング・デバイス1406がワイヤレス通信範囲に入ったことに応答して、ワイヤレス通信範囲内にある、コンピューティング・デバイス1406を含む複数のコンピューティング・デバイスに配給することができる。
【0073】
[0090] 以上で説明したシステムおよび方法では、種々のコンピューティング・デバイスが移動してコンテンツ・レポジトリ・デバイスの範囲に入ると、種々のコンピューティング・デバイスからのコンテンツ・ファイルへのアクセスを可能にする。コンテンツ・レポジトリ・デバイスは、アクセスに対するユーザ制御を高めることを可能にし、種々のDRM規格に準拠するために、アクセス制御をコンテンツ・ファイルに適用することができる。つまり、コンテンツ・レポジトリ・デバイスは、文書ファイルの1つのソースとして作用し、ファイルがアクセスされる各コンピューティング・デバイス上における重複ファイルを減らすことができる。
【0074】
[0091] 種々の実施形態において、本明細書において説明した方法は、本明細書において説明した種々の特定の機械を使用して実装される。本明細書において説明した方法は、以下の特定の機械および今後開発されるものを使用して、当技術分野に習熟した者には直ちに認められるような、任意の適した組み合わせで実装することができる。更に、本開示から明らかなように、本明細書において説明した方法によって、特定の品目(certain article)の様々な変形を得るという結果に至ることができる。
【0075】
[0092] 簡潔さのために、従来のデータ・ネットワーキング、アプリケーション開発、および本システムの他の機能的側面(ならびにシステムの個々の動作コンポーネントのコンポーネント)は、本明細書では詳しく説明されていない場合もある。更に、本明細書に含まれる種々の図において示す接続線は、種々のエレメント間の例示的な機能的関係および/または物理的結合を表すことを意図している。尚、実際のシステムには、多くの代わりのまたは追加の機能的関係あるいは物理的接続が存在し得ることは、注記してしかるべきである。
【0076】
[0093] 本明細書において論じた種々のシステム・コンポーネントは、以下の内1つ以上を含むことができる。ディジタル・データを処理するためのプロセッサを含むホスト・サーバまたは他のコンピューティング・システム、ディジタル・データを格納するためにプロセッサに結合されたメモリ、ディジタル・データを入力するためにプロセッサに結合された入力ディジタイザ、プロセッサによってディジタル・データの処理を指令するためにメモリに格納されプロセッサによってアクセス可能なアプリケーション・プログラム、プロセッサによって処理されたディジタル・データから得られる情報を表示するためにプロセッサおよびメモリに結合されたディスプレイ・デバイス、ならびに複数のデータベース。本明細書において説明した種々のデータベースは、クライアント・データ、商用データ(merchant data)、金融機関データ、および/またはシステムの動作において有用な同
様のデータを含むことができる。当技術分野に習熟した者には認められようが、ユーザ・コンピュータは、オペレーティング・システム(例えば、WindowsNT、Windows95/98/2000、Windows XP、Windows Vista、Windows 7、OS2、UNIX、Linux、Solaris、MacOS等)、更には、コンピュータに付随するのが通例である種々の従来からのサポート・ソフトウェアおよびドライバを含むことができる。
【0077】
[0094] ネットワークは、任意のクラウド、クラウド・コンピューティング・システム、あるいはハードウェアおよび/またはソフトウェア・コンポーネントを組み込んだ電子通信システムもしくは方法を含むことができる。関係者(parties)間の通信は、例えば、
電話ネットワーク、エクストラネット、イントラネット、インターネット、相互作用点デバイス(point of interaction device)(ポイント・オブ・セール・デバイス)、パーソ
ナル・ディジタル・アシスタント(例えば、iPhone(登録商標)、Palm Pilot(登録商標)、Blackberry(登録商標)、セルラ・フォン、キオスク等)、オンライン通信、衛星通信、オフライン通信、ワイヤレス通信、トランスポンダ通信、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)、仮想プライベート・ネットワーク(VPN)、ネットワーク接続またはリンク接続デバイス、キーボード、マウス、および/または任意の適した通信もしくはデータ入力様式
(modality)というような任意の適した通信チャネルを通じて遂行することができる。更
に、本明細書では、本システムはTCP/IP通信プロトコルによって実装されるものとして繰り返し(frequently)説明したが、本システムは、IPX、Appletalk、IP-6、NetBIOS、OSI、任意のトンネリング・プロトコル(例えば、IPsec、SSH)、あるいは任意の数の既存のまたは今後のプロトコルを使用しても実装することができる。ネットワークが、インターネットのような、公衆ネットワークの性質を帯びる場合、ネットワークが安全でなく盗聴者に開かれていると仮定することは有益であろう。インターネットと関連付けて利用されるプロトコル、規格、およびアプリケーション・ソフトウェアに関する特定的な情報は、通常、当技術分野に習熟した者には知られており、したがって、本明細書において詳しく説明する必要はない。例えば、DILIP NAIK(ディリップ ナイク)、INTERNET STANDARDS AND PROTOCOLS(インターネット規格およびプロトコル)(1998)、 種々の著者によるJAVA 2 COMPLETE (Sybex 1999)、DEBORAH RAY AND
ERIC RAY(デボラ レイおよびエリック レイ)、 MASTERING HTML 4.0(HTML4.0の習得) (1997)、ならびにLOSHIN(ロシン)、TCP/IP CLEARLY EXPLAINED (TCP/IPの明快な説明)(1997)、および DAVID GOURLEY AND BRIAN TOTTY(デヴィッド グーリーおよびブライアン トッティ)、 HTTP, THE DEFINITIVE GUIDE (HTTP、決定的な指南書)(2002)を参照のこと。これらの文献をここで引用したことにより、その内容は本願にも含まれるものとする。
【0078】
[0095] 種々のシステム・コンポーネントは、データ・リンクを通じてネットワークに、独立して、別個に、または集合的に相応しく結合することができる。データ・リンクに含まれるのは、例えば、通例標準的なモデム通信と共に使用されるような、ローカル・ループを通じたインターネット・サービス・プロバイダ(ISP)への接続、ケーブル・モデム、ディッシュ・ネットワーク(dish network)、ISDN、ディジタル加入者回線(DSL)、または種々のワイヤレス通信方法である。例えば、GILBERT HELD(ギルバート ヘルド)、UNDERSTANDING DATA COMMUNICATIONS(データ通信の理解)(1996)を参照のこ
と。この文献をここで引用したことにより、その内容は本願にも含まれるものとする。尚、ネットワークは、インタラクティブ・テレビジョン(ITV)ネットワークのような、他の型式のネットワークとして実現してもよいことを注記しておく。更に、本システムは、本明細書において説明した同様の機能を有する任意のネットワークを通じた任意の商品、サービス、または情報の使用、販売、および流通も想定している。
【0079】
[0096] 本明細書において論じた通信、送信、および/またはチャネルはいずれも、コンテンツ(例えば、データ、情報、メタデータ等)を配信するための任意のシステムまたは方法、および/またはコンテンツ自体を含むことができる。コンテンツは、任意の形態または媒体で提示することができ、種々の実施形態において、コンテンツは電子的に配信することができ、および/または電子的に提示することができる。例えば、チャネルは、ウェブサイト、ユニフォーム・リソース・ロケータ(「URL」)、文書(例えば種類、Microsoft Word文書、Microsoft Excel文書、Adobe.pdf文書等)、「電子書籍」、「電子雑誌」、アプリケーションまたはマイクロアプリケーション(以下で説明する)、SMSまたは他の型式のテキスト・メッセージ、電子メール、Facebook、twitter、MMS、および/または他の種類の通信技
術を含むことができる。種々の実施形態において、チャネルはデータ・パートナーによってホストされても、または提供されてもよい。種々の実施形態において、分散チャネル(distribution channel and/or the)は、商用ウェブサイト、ソーシャル・メディア・ウェ
ブサイト、提携または共同(partner)ウェブサイト、外部販売業者、移動体デバイス通信
、ソーシャル・メディア・ネットワーク、および/または土地に根ざしたサービス(ocation based service)の内少なくとも1つを含むことができる。分散チャネルは、商用ウェ
ブサイト、ソーシャル・メディア・サイト、提携または共同ウェブサイト、外部販売業者、および移動体デバイス通信の内少なくとも1つを含むことができる。ソーシャル・メディア・サイトの例には、Facebook(登録商標)、foursquare(登録商標)、Twitter(登録商標)、MySpace(登録商標)、LinkedIn(登録商標)等が含まれる。更に、移動体デバイス通信の例には、テキスト(texting)、電
子メール、およびスマートフォン用移動体アプリケーションが含まれる。
【0080】
[0097] 本システム、あるいはその任意の部分(1つまたは複数)または機能(1つまたは複数)は、ハードウェア、ソフトウェア、またはその組み合わせを使用して実装することができ、1つ以上のコンピュータ・システムまたは他の処理システムにおいて実装することもできる。しかしながら、実施形態によって実行される操作(manipulation)は、多くの場合、人間の操作員によって行われる知的活動(mental operation)と一般に関連付けられる照合(matching)または選択というような用語で言及されていた。このような人間の操作員の能力は、殆どの場合、本明細書において説明した動作のいずれにも、必要でも望ましくもない。むしろ、これらの動作は機械動作であるとしてよい。種々の実施形態を実行するために有用な機械には、汎用ディジタル・コンピュータまたは同様のデバイスが含まれる。
【0081】
[0098] 実際、種々の実施形態において、実施形態は、本明細書において説明した機能を実行することができる1つ以上のコンピュータ・システムを対象とする。コンピュータ・システムは、1つ以上のプロセッサを含む。プロセッサは、通信インフラストラクチャ(例えば、通信バス、クロス・オーバー・バー、またはネットワーク)に接続される。種々のソフトウェア実施形態について、この例示的なコンピュータ・システムに関して説明した。この説明を読んだ後には、他のコンピュータ・システムおよび/またはアーキテクチャを使用して、どのように種々の実施形態を実現するのか、関連技術(1つまたは複数)に習熟した者には明白になるであろう。コンピュータ・システムは、ディスプレイ・ユニット上における表示のために、グラフィクス、テキスト、およびその他のデータを通信インフラストラクチャから(または図示しないフレーム・バッファから)転送するディスプレイ・インターフェースを含むことができる。
【0082】
[0099] また、コンピュータ・システムは、例えば、ランダム・アクセス・メモリ(RAM)のような、主メモリも含み、更に副メモリも含むことができる。副メモリは、例えば、ハード・ディスク・ドライブ、および/またはフロッピ・ディスク・ドライブ、磁気テープ・ドライブ、光ディスク・ドライブ等を代表するリムーバブル・ストレージ・ドライブを含むことができる。リムーバブル・ストレージ・ドライブは、周知の方法で、リムーバブル・ストレージ・ユニットから読み出し、および/またはリムーバブル・ストレージ・ドライブに書き込む。リムーバブル・ストレージ・ユニットは、フロッピ・ディスク、磁気テープ、光ディスク等を代表し、リムーバブル・ストレージ・ドライブによって読み出しおよび書き込みが行われる。認められるであろうが、リムーバブル・ストレージ・ユニットは、内部にコンピュータ・ソフトウェアおよび/またはデータが格納されているコンピュータ使用可能記憶媒体を含む。
【0083】
[00100] 種々の実施形態において、副メモリは、コンピュータ・プログラムまたはそ
の他の命令をコンピュータ・システムにロードすることを可能にするために、他の同様の
デバイスを含んでもよい。このようなデバイスは、例えば、リムーバブル・ストレージ・ユニットおよびインターフェースを含むことができる。このようなものの例には、プログラム・カートリッジおよびカートリッジ・インターフェース(ビデオ・ゲーム・デバイスにおいて見られるもの等)、リムーバブル・メモリ・チップ(消去可能プログラマブル・リード・オンリ・メモリ(EPROM)またはプログラマブル・リード・オンリ・メモリ(PROM)等)および付随するソケット、ならびにその他のリムーバブル・ストレージ・ユニットおよびインターフェースを含むことができ、ソフトウェアおよびデータをリムーバブル・ストレージ・ユニットからコンピュータ・システムに転送することを可能にする。
【0084】
[00101] また、コンピュータ・システムは通信インターフェースを含むこともできる
。通信インターフェースは、ソフトウェアおよびデータを、コンピュータ・システムと外部デバイスとの間で転送することを可能にする。通信インターフェースの例には、モデム、ネットワーク・インターフェース(イーサネット・カード等)、通信ポート、パーソナル・コンピュータ・メモリ・カード国際連合(PCMCIA)スロットおよびカード等を含むことができる。通信インターフェースを通じて転送されるソフトウェアおよびデータは、通信インターフェースによって受信することができる電子信号、電磁信号、光信号、またはその他の信号であってもよい、信号の形態をなす。これらの信号は、通信経路(例えば、チャネル)を通じて、通信インターフェースに供給される。このチャネルは、信号を搬送し、ワイヤ、ケーブル、光ファイバ、電話線、セルラ・リンク、無線周波数(RF)リンク、ワイヤレス、およびその他の通信チャネルを使用して実装することができる。
【0085】
[00102] 「コンピュータ・プログラム媒体」および「コンピュータ使用可能媒体」と
いう用語は、ハード・ディスク・ドライブ内に設置されたリムーバブル・ストレージ・ドライブおよびハード・ディスクというような媒体を総合的に指すために使用される。これらのコンピュータ・プログラム製品は、ソフトウェアをコンピュータ・システムに提供する。
【0086】
[00103] コンピュータ・プログラム(コンピュータ制御ロジックとも呼ぶ)は、主メ
モリおよび/または副メモリに格納される。また、コンピュータ・プログラムは、通信インターフェースを通じて受信されてもよい。このようなコンピュータ・プログラムは、実行されると、コンピュータ・システムが、本明細書において論じたような特徴的機能(feature)を実行することを可能にする。具体的には、コンピュータ・プログラムは、実行さ
れると、プロセッサが種々の実施形態の特徴的機能を実行することを可能にする。したがって、このようなコンピュータ・プログラムはコンピュータ・システムのコントローラを表す。
【0087】
[00104] 種々の実施形態において、ソフトウェアは、コンピュータ・プログラム製品
に保管され(store)、リムーバブル・ストレージ・ドライブ、ハード・ディスク・ドライ
ブ、または通信インターフェースを使用して、コンピュータ・システムにロードすることができる。制御ロジック(ソフトウェア)は、プロセッサによって実行されると、プロセッサに、本明細書において説明した種々の実施形態の機能を実行させる。種々の実施形態において、特定用途集積回路(ASIC)のようなハードウェア・コンポーネント。本明細書において説明した機能を実行するようにハードウェア状態機械を実装することは、関連技術(1つまたは複数)に習熟した者には明白であろう。
【0088】
[00105] 種々の実施形態において、サーバはアプリケーション・サーバ(例えば、W
Eb SPHERE、WEB LOGIC、JBOSS)を含んでもよい。種々の実施形態において、サーバはウェブ・サーバ(例えば、APACHE、IIS、GWS、SUN
JAVA SYSTEM WEB SERVER)を含んでもよい。
【0089】
[00106] 当技術分野に習熟した者には認められるだろうが、デバイスは、オペレーテ
ィング・システム(例えば、Windows NT、95/98/2000/CE/Mobile、OS2、UNIX、Linux、Solaris、MacOS、PalmOS等)、ならびにコンピュータに付随するのが通例である種々の従来からのサポート・ソフトウェアおよびドライバを含むことができるが、これらに限定されるのではない。デバイスは、任意の適したパーソナル・コンピュータ、ネットワーク・コンピュータ、ワークステーション、パーソナル・ディジタル・アシスタント、セルラ・フォン、スマートフォン、ミニコンピュータ、メインフレーム等を含むことができるが、これらに限定されるのではない。デバイスは、ネットワークにアクセスすることができる家庭または仕事環境に存在することができる。種々の実施形態において、アクセスは、ネットワークまたはインターネットを通じて、市販のウェブ・ブラウザ・ソフトウェア・パッケージによって行われる。デバイスは、セキュア・ソケット・レイヤ(SSL)およびトランスポート・レイヤ・セキュリティ(TLS)のようなセキュリティ・プロトコルを実装することもできる。デバイスは、http、https、ftp、およびsftpを含む、様々なアプリケーション・レイヤ・プロトコルを実装することもできる。
【0090】
[00107] 種々の実施形態において、システム100のコンポーネント、モジュール、
および/またはエンジンは、マイクロアプリケーション、即ち、マイクロアプリ(micro-app)として実装されてもよい。マイクロアプリは、通例、移動体オペレーティング・シス
テムのコンテキストにおいてデプロイされ、移動体オペレーティング・システムには、例えば、Palm移動体オペレーティング・システム、Windows移動体オペレーティング・システム、Androidオペレーティング・システム、Apple iOS、Blackberryオペレーティング・システム等が含まれる。マイクロアプリは、種々のオペレーティング・システムおよびハードウェア・リソースの動作を管理する(govern)1組の所定の規則によって、もっと大きなオペレーティング・システムのリソースおよび関連するハードウェアを利用するように構成することができる。例えば、マイクロアプリが、移動体デバイスまたは移動体オペレーティング・システム以外のデバイスまたはネットワークと通信することを望む場合、このマイクロアプリは、移動体オペレーティング・システムの所定の規則の下で、オペレーティング・システムの通信プロトコルおよび関連するデバイス・ハードウェアを利用することができる。更に、マイクロアプリがユーザからの入力を望む場合、マイクロアプリは、オペレーティング・システムに応答を要求するように構成することができ、オペレーティング・システムは、種々のハードウェア・コンポーネントを監視し、次いで、検出された入力をハードウェアからマイクロアプリに伝達する。
【0091】
[00108] 「クラウド」または「クラウド・コンピューティング」は、構成設定可能な
コンピューティング・リソース(例えば、ネットワーク、サーバ、ストレージ、アプリケーション、およびサービス)の共有プール(shared pool)への便利なオンデマンド・ネッ
トワーク・アクセスを可能にするモデルを含み、コンピューティング・リソースは、最小限の管理業務(management effort)またはサービス・プロバイダの相互作用で、容易にプ
ロビジョニングおよび開示することができる。クラウド・コンピューティングは、場所に独立したコンピューティングを含むことができ、これによって、共有サーバはリソース、ソフトウェア、およびデータを、要求に応じて、コンピュータおよびその他のデバイスに供給する。クラウド・コンピューティングに関するこれ以上の情報については、http://csrc.nist.gov/groups/SNS/cloud-computing/cloud-def-vl5.doc (2011年2月4日に訪問したのが最後である)にあるNIST(米国標準技術局:National Institute of Standards and Technology)のクラウド・コンピューティングの定義を参照のこと。この文献をここで引用したことにより、その内容全体が本願にも含まれるものとする。
【0092】
[00109] 本明細書において使用する場合、「送信する」(transmit)は、電子データを
1つのシステム・コンポーネントから他のものに送ることを含んでもよい。加えて、本明細書において使用する場合、「データ」(data)は、コマンド、クエリ、ファイル、格納用データ等のような、包括的情報(encompassing information)も、ディジタル形態または任意の他の形態で含むこともできる。
【0093】
[00110] 本システムは、ウェブ・サービス、ユーティリティ・コンピューティング、
普及したコンピューティングおよび個別化したコンピューティング、セキュリティおよび識別の解決策、自律コンピューティング、クラウド・コンピューティング、コモディティ・コンピューティング、移動およびワイヤレスの解決策、オープン・ソース、生物計量、グリッド・コンピューティング、および/またはメッシュ・コンピューティングと関連する使用を想定する。
【0094】
[00111] 本明細書において論じたデータベースはいずれも、リレーショナル、階層状
、グラフィカル、またはオブジェクト指向構造、および/または任意の他のデータベース構成を含んでもよい。データベースを実装するために使用することができる共通のデータベース製品には、IBM(NY州、Armonk)によるDB2、Oracle Corporation(CA州、Redwood Shores)から入手可能な種々のデータベース製品、Microsoft Corporation(Washington州、Redmond)によるMicrosoft AccessまたはMicrosoft
SQLサーバ、MySQL AB(スエーデン、Uppsala)によるMySQL、または任意の他の適したデータベース製品が含まれる。更に、データベースは、任意の適した方法で、例えば、データ表または参照表として編成することもできる。各レコードは、1つのファイル、一連のファイル、一連のリンクされたデータ・フィールド、または任意の他のデータ構造であってもよい。特定のデータの関連付けは、当技術分野において知られているもの、または実際に使用されているもののような、任意の所望のデータ関連付け技法によって行えばよい。例えば、関連付けは、手作業でまたは自動的に行うこともできる。自動関連付け技法には、例えば、データベース検索、データベース融合、GREP、AGREP、SQL、表におけるキー・フィールドを使用した検索の高速化、全ての表およびファイルにわたる連続検索、探索(lookup)を簡略化するための既知の順序に応じたファイル内におけるレコードの並び替え等(and/or the like)を含むことができる。関連
付けステップは、データベース融合機能によって、例えば、予め選択されたデータベースまたはデータ・セクタにおいて「キー・フィールド」を使用することによって、行うことができる。データベースの性能を最適化するために、種々のデータベース調整(tuning)ステップも考えられる。例えば、インデックスのように頻繁に使用されるファイルは、入力/出力(「I/O」)ボトルネックを減らすために、別個のファイル・システム上に置いてもよい。
【0095】
[00112] また、セキュリティ上の理由により、システムのデータベース、システム、
デバイス、サービス、またはその他のコンポーネントはいずれも、1つの場所または複数の場所において、それらの任意の組み合わせで構成されてもよいことも、当技術分野に習熟した者には認められよう。各データベースまたはシステムは、ファイアウォール、アクセス・コード、暗号化、解読、圧縮、解凍等のような、種々の適したセキュリティ機能(features)の内任意のものを含む。
【0096】
[00113] 暗号化は、現在当技術分野において利用可能な技法または利用可能になるか
もしれない技法の内任意のもの、例えば、Twofish、RSA、El Gamal、Schorr signature、DSA、PGP、PKI、GPG(GnuGP)、ならびに対称および非対称暗号システムによって実行することができる。
【0097】
[00114] デバイスのコンピューティング・ユニットには、更に、標準的なダイアルア
ップ、ケーブル、DSL、または当技術分野において知られている任意の他のインターネット・プロトコルを使用してインターネットまたはイントラネットに接続されるインターネット・ブラウザを装備することもできる。デバイスにおいて開始するトランザクションは、他のネットワークのユーザからの不正アクセスを防止するために、ファイアウォールを通過することができる。更に、セキュリティを一層強化するために、システムの可変コンポーネント間にも追加のファイアウォールをデプロイしてもよい。
【0098】
[00115] ファイアウォールは、ACSコンポーネントおよび/または企業のコンピュ
ーティング・リソースを他のネットワークのユーザから保護するように適切に構成された任意のハードウェアおよび/またはソフトウェアを含むことができる。更に、ファイアウォールは、ウェブ・サーバを通じて接続するデバイスのために、ファイアウォールの背後において種々のシステムおよびコンポーネントへのアクセスを限定または制限するように構成することもできる。ファイアウォールは、とりわけ、ステートフル・インスペクション、プロキシに基づくアクセス制御リスト、およびパケット・フィルタリングを含む可変構成内に内在することもできる。ファイアウォールは、ウェブ・サーバまたは任意の他のACSコンポーネント内に統合することもでき、あるいは更に別個のエンティティとして存在することもできる。ファイアウォールは、ネットワーク・アドレス変換(「NAT」)および/またはネットワーク・アドレス・ポート変換(「NAPT」)を実施することもできる。ファイアウォールは、種々のトンネリング・プロトコルに対応し、仮想プライベート・ネットワーキングにおいて使用されるような、安全な通信を促進することができる。ファイアウォールは、インターネットのような公衆ネットワークとの通信を容易にするために、非武装地帯(「DMZ」:demimilarized zone)を実装することもできる。ファイアウォールは、ソフトウェアとして、インターネット・サーバ、任意の他のアプリケーション・サーバ・コンポーネント内に統合されてもよく、あるいは他のコンピューティング・デバイス内に内在してもよく、あるいは単体ハードウェア・コンポーネントの形態を取ってもよい。
【0099】
[00116] 本明細書において論じたコンピュータは、適したウェブサイトまたは他のイ
ンターネットに基づくグラフィカル・ユーザ・インターフェースを提供することもでき、このグラフィカル・ユーザ・インターフェースはユーザによってアクセス可能である。種々の実施形態において、Microsoftインターネット情報サーバ(IIS)、Microsoftトランザクション・サーバ(MTS)、およびMicrosoft SQLサーバが、Microsoftオペレーティング・システム、Microsoft NTウェブ・サーバ・ソフトウェア、Microsoft SQLサーバ・データベース・システム、およびMicrosoft商用サーバと共に使用される。加えて、アクティブ・データ・オブジェクト(ADO)準拠のデータベース管理システムを提供するために、AccessまたはMicrosoft SQLサーバ、Oracle Sybase、Informix MySQL、Interbase等のようなコンポーネントを使用することもできる。種々の実施形態において、Apacheウェブ・サーバが、Linuxオペレーティング・システム、MySQLデータベース、ならびにPerl、PHP、および/またはPythonプログラミング言語と共に使用される。
【0100】
[00117] 本明細書において論じた通信、入力、ストレージ、データベース、または表
示はいずれも、ウェブ・ページを有するウェブサイトによって使いやすくすることができる。「ウェブ・ページ」という用語は、本明細書において使用する場合、ユーザと対話処理するために使用される場合がある文書およびアプリケーションの種類を限定することを意図するのではない。例えば、典型的なウェブサイトは、標準的なHTML文書に加えて、種々の形態、Javaアプレット、JavaScript、アクティブ・サーバ・ページ(ASP)、共通ゲートウェイ・インターフェース・スクリプト(CGI)、拡張可能
マークアップ言語(XML)、動的HTML、カスケード型シート(CSS:cascading style sheet)、AJAX(非同期JavascriptおよびXML)、ヘルパー・ア
プリケーション、プラグイン等を含むことができる。サーバは、ウェブ・サーバから要求を受けるウェブ・サービスを含むことができ、この要求は、URL(http://yahoo.com/stockquotes/ge)およびIPアドレス(123.56.789.234)を含む。ウェブ・サーバは、該当す
るウェブ・ページを引き出し、これらのウェブ・ページのためのデータまたはアプリケーションをIPアドレスに送る。ウェブ・サービスとは、インターネットのような通信手段を通じて、他のアプリケーションと相互作用することができるアプリケーションである。ウェブ・サービスは、通例、XML、SOAP、AJAX、WSDL、およびUDDIのような、規格またはプロトコルに基づく。ウェブ・サービス方法は、当技術分野ではよく知られており、多くの規格文書(standard text)において十分に説明されている(cover)。例えば、ALEX NGHIEMの IT WEB SERVICES: A ROADMAP FOR THE ENTERPRISE(ITウェブ
・サービス:企業のためのロードマップ) (2003)を参照のこと。この文献をここで引用
したことにより、その内容は本願にも含まれるものとする。
【0101】
[00118] ミドルウェアは、全く異なるコンピューティング・システム間における通信
および/またはプロセス・トランザクションを容易にするように相応しく構成された任意のハードウェアおよび/またはソフトウェアを含むことができる。ミドルウェア・コンポーネントは、市販されており、当技術分野では知られている。ミドルウェアは、市販されているハードウェアおよび/またはソフトウェアによって、カスタム・ハードウェアおよび/またはソフトウェア・コンポーネントによって、あるいはその組み合わせによって実装することができる。ミドルウェアは、種々の構成の中に内在することもでき、単体システムとして存在することもでき、あるいはインターネット・サーバに内在するソフトウェア・コンポーネントとすることもできる。ミドルウェアは、アプリケーション・サーバの種々のコンポーネントと、本明細書において開示した目的のいずれかのための任意の数の内部または外部システムとの間におけるトランザクションを処理するように構成することができる。IBM(NY州、Armonk)によるWebSphere MQTM(以前のMQSeries)は、市販されているミドルウェア製品の例である。企業サービス・バス(「ESB」)アプリケーションは、ミドルウェアの他の例である。
【0102】
[00119] また、実践者には、ブラウザに基づく文書内にデータを表示するための方法
は多数あることが認められよう。データは、標準的テキストとして、または固定リスト、スクロール可能なリスト、ドロップダウン・リスト、編集可能なテキスト・フィールド、固定テキスト・フィールド、ポップアップ・ウィンドウ等の中に表現することができる。同様に、例えば、キーボード、メニュー項目の選択、チェック・ボックス、オプション・ボックス等を使用する自由テキスト入力のように、ウェブ・ページにおいてデータを修正するために利用可能な方法も数多くある。
【0103】
[00120] システムおよび方法は、本明細書では、機能的ブロック・コンポーネント、
スクリーン・ショット、随意の選択、および種々の処理ステップに関して説明することができる。尚、このような機能的ブロックは、指定された機能を実行するように構成された任意の数のハードウェアおよび/またはソフトウェア・コンポーネントによって実現できることは認められてしかるべきである。例えば、システムは、1つ以上のマイクロプロセッサまたは他の制御デバイスの制御下で、種々の機能を実行することができる、種々の集積回路コンポーネント、例えば、メモリ・エレメント、処理エレメント、ロジック・エレメント、参照表等を採用することができる。同様に、システムのソフトウェア・エレメントは、C、C++、C#、Java、JavaScript、VBScript、Macromedia Cold Fusion、COBOL、Microsoft Active Server Pages、アセンブリ、PERL、PHP、awk、Python、Visual Basic、SQL Stored Procedures、PL/
SQL、任意のUNIXシェル・スクリプト、および拡張可能マークアップ言語(XML)のような任意のプログラミングまたはスクリプティング言語によって実装することができ、種々のアルゴリズムは、データ構造、オブジェクト、プロセス、ルーチン、またはその他のプログラミング・エレメントの任意の組み合わせによって実装される。更に、システムは、データ送信、シグナリング、データ処理、ネットワーク制御等のために、任意の数の従来からの技法を採用できることは注記してしかるべきである。更にまた、システムは、JavaScript、VBScript等のような、クライアント側のスクリプティング言語に伴うセキュリティ問題を検出または防止するために使用することができる。暗号およびネットワーク・セキュリティの基本的な概論については、以下の参考文献のいずれかを参照のこと。(1)Bruce Schneier(ブルース シュナイアー)による、"Applied Cryptography: Protocols, Algorithms, And Source Code In C" (応用暗号:プロトコル、アルゴリズム、およびCで書いたソース・コード)(John Wiley & Sons(ジョン
ワイリー アンド サン)から出版) (第2版、1995)、(2) Jonathan Knudson(ジョナサン クルードソン)による、"Java Cryptography"(Java暗号)(O'Reilly & Associates(オレリー アンド アソシエーツ)から出版)(1998)、(3) William Stallings(ウィリアム ストーリングス)による、"Cryptography & Network Security: Principles & Practice"(暗号およびネットワーク・セキュリティ:原理と実践)(Prentice Hall(プレンティス ホール)から出版)。これらの文献をここで引用したこ
とにより、その内容は本願にも含まれるものとする。
【0104】
[00121] 当技術分野に習熟した者には認められようが、システムは、既存のシステム
のカスタム化、アドオン製品、アップグレードされたソフトウェアを実行する処理機器、単体システム、分散型システム、方法、データ処理システム、データ処理用デバイス、および/またはコンピュータ・プログラム製品として具体化することができる。したがって、システムの任意の部分またはモジュールは、コードを実行する処理機器、インターネットに基づく実施形態、全体的にハードウェアの実施形態、またはインターネット、ソフトウェア、およびハードウェアの態様を組み合わせた実施形態という形を取ることができる。更に、システムは、コンピュータ読み取り可能記憶媒体上のコンピュータ・プログラム製品という形を取ることもでき、コンピュータ読み取り可能プログラム・コード手段が記憶媒体内に具体化される。ハード・ディスク、CD-ROM、光記憶デバイス、磁気記憶デバイス等を含む、任意の適したコンピュータ読み取り可能記憶媒体を利用することができる。
【0105】
[00122] 本明細書では、システムおよび方法は、種々の実施形態による方法、機器(
例えば、システム)、およびコンピュータ・プログラム製品のスクリーン・ショット、ブロック図、およびフローチャート表現(flowchart illustration)を参照しながら説明した。尚、ブロック図およびフローチャート表現の各機能ブロック、ならびにブロック図およびフローチャート表現における機能ブロックの組み合わせは、それぞれ、コンピュータ・プログラム命令によって実装できることは理解されよう。
【0106】
[00123] これらのコンピュータ・プログラム命令は、機械を生産するために、汎用コ
ンピュータ、特殊目的コンピュータ、またはその他のプログラマブル・データ処理機器上にロードすることができ、コンピュータまたはその他のプログラマブル・データ処理機器上で実行する命令が、フローチャートの1つ以上のブロックにおいて指定される機能を実行する(implement)ための手段を生み出す(create)ようになっている。また、これらのコ
ンピュータ・プログラム命令は、コンピュータ読み取り可能メモリに格納することもでき、コンピュータ読み取り可能メモリ内に格納されている命令が、1つまたは複数のフローチャート・ブロックにおいて指定される機能を実行する命令手段を含む製品を生成するように、コンピュータ・プログラム命令は、コンピュータまたはその他のプログラマブル・データ処理機器に、特定の様式で機能するように命令することができる。また、コンピュ
ータ・プログラム命令は、コンピュータまたはその他のプログラマブル・データ処理機器上にロードされ、コンピュータまたはその他のプログラマブル・データ処理機器上で一連の動作ステップを実行させ、コンピュータまたはその他のプログラマブル・データ処理機器上で実行する命令が、フローチャートの1つまたは複数のブロックにおいて指定された機能を実行するためのステップを規定する(provide)ように、コンピュータ実装プロセス
を生成することができる。
【0107】
[00124] したがって、ブロック図およびフローチャート表現の機能ブロックは、指定
された機能を実行するための手段の組み合わせ、指定された機能を実行するためのステップの組み合わせ、および指定された機能を実行するためのプログラム命令手段をサポートする。また、ブロック図およびフローチャート表現の各機能ブロック、ならびにブロック図およびフローチャート表現における機能ブロックの組み合わせは、指定された機能またはステップを実行する特殊目的のハードウェア・ベース・コンピュータ・システム、または特殊目的ハードウェアおよびコンピュータ命令の適した組み合わせのいずれかによって実装できることも理解されよう。更に、プロセス・フローの図およびその説明は、ユーザ・ウィンドウ、ウェブ・ページ、ウェブサイト、ウェブ・フォーム、プロンプト等を参照することもできる。本明細書において説明し例示したステップは、ウィンドウ、ウェブ・ページ、ウェブ・フォーム、ポップアップ・ウィンドウ、プロンプト等の使用を含む任意の数の構成に含まれて(comprise)もよいことは、実践者には認められよう。更に、複数のステップとして図示または説明されたものは、簡略化のために展開されただけであり、1つのウェブ・ページおよび/またはウィンドウに組み合わされてもよいことも認められてしかるべきである。他の場合では、1つのプロセス・ステップとして図示および説明されたステップは、簡略化のために組み合わされただけであり、複数のウェブ・ページおよび/またはウィンドウに分離されてもよい。
【0108】
[00125] 「非一時的」(non-transitory)という用語は、伝搬する一時的な信号自体だ
けを、特許請求の範囲から除外するように理解されてしかるべきであり、伝搬する一時的な信号自体というだけではない全ての標準的なコンピュータ読み取り可能媒体に対する権利を放棄するのではない。言い換えると、「非一時的コンピュータ読み取り可能媒体」および「非一時的コンピュータ読み取り可能記憶媒体」という用語の意味は、In RE Nuijtenにおいて、35U.S.C.§101に基づく特許可能な主題の範囲から逸脱すると認められた種類の一時的コンピュータ読み取り可能媒体のみを除外するように解釈してしかるべきである。
【0109】
[00126] 以上、本明細書では、特定の実施形態に関して便益、他の利点、および問題
に対する解決策について説明した。しかしながら、便益、利点、問題に対する解決策、および任意の便益、利点、または解決策を得させるあるいは一層顕著にさせるかもしれない要素はいずれも、本開示の肝要な、必須の、あるいは本質的な特徴としても要素としても解釈されないものとする。単数形の要素を引用するときは、明示的に述べられていなければ、「唯一無二」を意味することを意図するのではなく、「1つ以上」を意味することを意図している。更に、「A、B、およびCの内少なくとも1つ」または「A、B、またはCの内少なくとも1つ」に似た語句が請求項または明細書において使用される場合、この語句は、実施形態においてAだけがあればよい、実施形態においてBだけがあればよい、実施形態においてCだけがあればよい、または要素A、B、およびCの任意の組み合わせが1つの実施形態にあってもよい、例えば、AおよびB、AおよびC、BおよびC、またはAおよびBおよびCがあってもよいことを意味するように解釈されることを意図している。本開示は方法を含むが、方法は、磁気メモリまたは光メモリあるいは磁気ディスクまたは光ディスクのような、有形コンピュータ読み取り可能担体上のコンピュータ・プログラム命令として具体化できることも考えられる。以上で説明した例示的な実施形態の要素の構造的、化学的、および機能的な均等物について、当技術分野に習熟した者に知られて
いるものは全て、ここで引用したことにより、本願にも明示的に含まれるものとし、本願の請求項に含まれることを意図している。更に、デバイスまたは方法に必要なのは、本開示によって解決されることが求められる各問題およびあらゆる問題に取り組むことではなく、本願の請求項によって包含されることである。更に、本開示における要素、コンポーネント、または方法ステップはいずれも、これらの要素、コンポーネント、または方法ステップが明示的に請求項において記載されているか否かには関係なく、一般公開に献上されることは意図していない。本願の請求項において、「~のための手段」という語句を使用して明示的に要素が記載されていないならば、その要素は、35U.S.C.112(f)の規定の下で解釈されないものとする。本明細書において使用される場合、「備える」(comprises)、「備えている」(comprising)という用語、またはそのあらゆるその他の
変形は、要素のリストを構成するプロセス、方法、品目、または機器が、これらの要素のみを含むのではなく、明示的に列挙されない他の要素、あるいはこのようなプロセス、方法、品目、または機器に内在的な他のエレメントも含むことができるように、 非排他的
な包含に該当する(cover)ことを意図している。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11A
図11B
図12
図13
図14
図15