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

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

▶ モーラム エルエルシーの特許一覧

<>
  • 特許6702987-通信用のショートキーの生成 図000002
  • 特許6702987-通信用のショートキーの生成 図000003
  • 特許6702987-通信用のショートキーの生成 図000004
  • 特許6702987-通信用のショートキーの生成 図000005
  • 特許6702987-通信用のショートキーの生成 図000006
  • 特許6702987-通信用のショートキーの生成 図000007
  • 特許6702987-通信用のショートキーの生成 図000008
  • 特許6702987-通信用のショートキーの生成 図000009
  • 特許6702987-通信用のショートキーの生成 図000010
  • 特許6702987-通信用のショートキーの生成 図000011
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6702987
(24)【登録日】2020年5月11日
(45)【発行日】2020年6月3日
(54)【発明の名称】通信用のショートキーの生成
(51)【国際特許分類】
   G06F 21/31 20130101AFI20200525BHJP
【FI】
   G06F21/31
【請求項の数】18
【全頁数】15
(21)【出願番号】特願2017-540550(P2017-540550)
(86)(22)【出願日】2015年10月13日
(65)【公表番号】特表2018-500700(P2018-500700A)
(43)【公表日】2018年1月11日
(86)【国際出願番号】US2015055340
(87)【国際公開番号】WO2016061108
(87)【国際公開日】20160421
【審査請求日】2018年10月1日
(31)【優先権主張番号】14/515,677
(32)【優先日】2014年10月16日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】517134869
【氏名又は名称】モーラム エルエルシー
(74)【代理人】
【識別番号】100124039
【弁理士】
【氏名又は名称】立花 顕治
(74)【代理人】
【識別番号】100156845
【弁理士】
【氏名又は名称】山田 威一郎
(74)【代理人】
【識別番号】100179213
【弁理士】
【氏名又は名称】山下 未知子
(72)【発明者】
【氏名】ベルナルディーノ モーラム
【審査官】 吉田 歩
(56)【参考文献】
【文献】 特開2014−038612(JP,A)
【文献】 久野 真太郎,外3名,位置情報ベース暗号,暗号と情報セキュリティシンポジウム予稿集,日本,2012年 1月30日
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/31
(57)【特許請求の範囲】
【請求項1】
サーバーにおいて、第1のデバイスからショートキーの要求を受信し、該要求はロケーション情報を含むことと、
前記サーバーにおいて、前記ロケーション情報が1つ又は複数の領域に対応するか否かを判断することと、
前記ロケーション情報が1つの領域のみに対応する場合には、該1つの領域に隣接する領域のリストを作成し、該1つの領域と、該1つの領域に隣接する前記領域とにおけるアクティブなショートキーを含むように集合Aを定義することと、
又は、
前記ロケーション情報が2つ以上の領域に対応する場合には、該2つ以上の領域を統一された領域にグループ化し、該統一された領域に隣接する領域のリストを作成し、該統一された領域と、該統一された領域に隣接する前記領域とにおけるアクティブなショートキーを含むように前記集合Aを定義することと、
前記サーバーが生成することができる、値において最小のキーら、集合A内の値において最大のキー続くの値までの範囲を値に有するョートキーを含む集合Bを作成することと、
前記集合A及び前記集合Bが共通して有しないを含む集合Cを作成することと、
集合C内の値において最小のキーを選択し、前記集合C内の値において最小のキーと前記要求の日時とに基づいて前記第1のデバイスから要求された前記ショートキーを生成することと、
前記第1のデバイスから要求された前記ショートキーを、前記第1のデバイスが第2のデバイスと通信する認証キーとしての使用に備えて、前記第1のデバイスに送信することと、
を含む、ショートキーの生成及び使用の方法。
【請求項2】
前記値において最小のキー、システムオペレーターによって予め定められている、請求項1に記載の方法。
【請求項3】
前記ショートキーの要求は、以下のもの、すなわち、
プロファイル識別子コードと、
満了期間と、
バイタリティ属性と、
前記要求されたショートキーとともに用いられるプリケーションの識別情報と、
のうちの少なくとも1つを更に含む、請求項1に記載の方法。
【請求項4】
前記バイタリティ属性は、前記要求されたショートキーがいつ用いられたのかを判断するために前記サーバーによって使用可能である、請求項3に記載の方法。
【請求項5】
前記バイタリティ属性は、前記要求されたショートキーを無効化するために前記サーバーによって使用可能である、請求項3に記載の方法。
【請求項6】
前記バイタリティ属性は購入価格に基づいている、請求項3に記載の方法。
【請求項7】
前記バイタリティ属性は、前記要求されたショートキーが用いられる回数に基づいている、請求項3に記載の方法。
【請求項8】
前記バイタリティ属性は、以下の設定、すなわち、
ユーザーによる前記要求されたショートキーの使用回数と、
前記要求されたショートキーを用いることができる異なるユーザーの数と、
データ転送サイズと、
特定の値に達したときの前記要求されたショートキーの決済への使用と、
のうちの少なくとも1つを含む、請求項3に記載の方法。
【請求項9】
前記要求の時刻と前記満了期間の時刻との間の間の間に前記第1のデバイスへの前記ショートキーの使用を可能にすることを更に含む、請求項3に記載の方法。
【請求項10】
前記ロケーション情報は、前記第1のデバイスのロケーションに対応する、請求項1に記載の方法。
【請求項11】
前記ロケーション情報は、前記第1のデバイスのユーザーに関連付けられたリモートデバイスのロケーションに対応する、請求項1に記載の方法。
【請求項12】
前記ロケーション情報が1つの領域のみに対応する場合には、前記1つの領域のみにおいて、
又は、
前記ロケーション情報が前記2つ以上の領域に対応する場合には、前記統一された領域において、
前記第1のデバイスへの前記ショートキーの使用を可能にすることを更に含む、請求項1に記載の方法。
【請求項13】
前記要求されたショートキーとともに用いられるアプリケーションの識別情報と、第2のショートキーと、前記第2のデバイスのロケーションに対応する第2のロケーション情報とを第2のデバイスから受信すること、
を更に含む、請求項1に記載の方法。
【請求項14】
前記サーバーにおいて、前記第2のデバイスの前記ロケーションに対応する前記第2のロケーション情報が1つ又は複数の領域に対応するか否かを判断することと、
前記第2のデバイスの前記ロケーションに対応する前記第2のロケーション情報が1つの領域のみに対応する場合には、前記第2のショートキーと一致する1つ又は複数のアクティブなショートキーを識別するため、前記第2のショートキーを、前記第2のロケーション情報に対応する前記1つの領域と、該1つの領域に隣接する領域とにおけるアクティブなショートキーと比較することと、
又は、
前記第2のデバイスの前記ロケーションに対応する前記第2のロケーション情報が2つ以上の領域に対応する場合には、前記第2のショートキーと一致する1つ又は複数のアクティブなショートキーを識別するため、該2つ以上の領域を統一された領域にグループ化し、前記第2のショートキーを、前記第2のロケーション情報に対応する前記統一された領域と、該統一された領域に隣接する領域とにおけるアクティブなショートキーと比較すること、
を更に含む、請求項13に記載の方法。
【請求項15】
前記サーバーにおいて、識別された単一のアクティブなキーが前記第2のショートキーと一致すると判断されたとき、前記第1のデバイスと前記第2のデバイスとの間の通信を認可すること、
を更に含む、請求項14に記載の方法。
【請求項16】
前記1つの領域又は前記統一された領域のいずれかについて、識別されたアクティブなキーが前記第2のショートキーと一致しないと判断されたとき、エラーメッセージを前記第2のデバイスに送信すること、
を更に含む、請求項14に記載の方法。
【請求項17】
前記1つの領域又は前記統一された領域のいずれかについて、識別された2つ以上のアクティブなキーが前記第2のショートキーと一致すると判断されたとき、前記2つ以上のアクティブなキーに関連付けられたデバイスのリストを前記第2のデバイスに送信し、前記第2のデバイスのーザーが該リストから通信のためのデバイスを選択するようにすること、
を更に含む、請求項14に記載の方法。
【請求項18】
前記サーバーにおいて、前記第2のデバイスから、通信のための選択されたデバイスを受信することと、
前記選択されたデバイスと前記第2のデバイスとの間の通信を認可することと、
を更に含む、請求項17に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、包括的には、電子デバイスによる情報の交換に関する。より詳細には、本発明は、接続を確立するとき又は特定のロケーションにおける1つ若しくは複数のデバイスを用いて或る期間にわたり情報を共有することが所望されるときのショートキーの生成に関する。
【背景技術】
【0002】
データベースレコードを識別するには、通常、一意のキーが用いられる。例示的な一意のキーには、電話番号及びクレジット/デビットカード番号がある。電話番号は一意のキーとみなすことができ、その理由は、国番号、市外局番及び電話番号の組み合わせが常に2つとなく、そのため、この番号がダイヤルされるときは常に、ダイヤルデバイスは、その呼出が転送される場合に、同じエンドデバイス、宛先、又はエンドユーザーに接続するからである。クレジットカード番号又はデビットカード番号も、一意のキーとしての機能を果たすことができ、その理由は、アクティブ化されたカードの番号が、別のアクティブ化されたカードの番号と同じであることは決してないからである。
【発明の概要】
【発明が解決しようとする課題】
【0003】
一意のキーを用いた情報の交換には、ユーザーが非常に長いコードを用いるか又はそのようなコードに依拠することが必要とされ、このことは、このプロセスを困難なものとしている。このため、この技術分野においては、ユーザーが情報を交換するための一意のキーのサイズを削減することが必要とされている。換言すれば、時間及び空間において専用のコードを用いることが必要とされている。
【課題を解決するための手段】
【0004】
以下は、本発明の幾つかの態様の基本的理解を提供するために、本発明の簡略化した概要を提示する。この概要は、本発明を広範囲に概観したものではない。その目的は、本発明の主要な要素又は重要な要素を具体的に特定することでもなければ、本発明の範囲を描写することでもなく、とりわけ、後に提示されるより詳細な説明の序文として簡略化した形で本発明の幾つかの概念を提示することである。
【0005】
1つの実施の形態では、接続を確立するとき又は特定のロケーションにおける1つ若しくは複数のデバイスを用いて或る期間にわたり情報を共有することが所望されるときに、ショートキーが生成される。本発明は、デバイスロケーションに基づいてショートキーを生成するプロセスを含む。
【0006】
以下の説明及び付属の図面は、本発明の幾つかの特定の例示の態様を詳細に述べている。しかしながら、これらの態様は、本発明の原理を用いることができる様々な方法のほんの数例を示しているにすぎず、本発明は、そのような全ての態様及びそれらの均等なものを含むように意図されている。本発明の他の利点及び新規な特徴は、本発明の以下の説明を図面と併せて検討すると、当該説明から明らかになる。
【0007】
図面は、一般に、限定ではなく例示として、本明細書において論述される様々な実施形態を示している。図面において、同様の参照符号は類似の部分を表している。
【図面の簡単な説明】
【0008】
図1】1つの実施形態による領域の一例示的な配置を示す図である。
図2】1つの実施形態によるショートキー生成プロセスのフローチャートである。
図3】1つの実施形態によるショートキー生成プロセスのタイムラインである。
図4】1つの実施形態による、どの領域が、ショートキー生成目的で別の領域のプロセスを変更するのかを示す図である。
図5】1つの実施形態による幾つかのアクティブなショートキーを有する図4のスナップショットである。
図6】1つの実施形態による2つ以上の領域におけるデバイスを示す図である。
図7】1つの実施形態による幾つかのアクティブなショートキーを有する図6のスナップショットである。
図8】1つの実施形態によるショートキー検索プロセスのフローチャートである。
図9】1つの実施形態による全体のプロセスのフローチャートである。
図10】1つの実施形態による、決済へのショートキーの使用を説明するフローチャートである。
【発明を実施するための形態】
【0009】
次に、実施形態について詳細に言及する。これらの実施形態の例は、添付図面に示されている。以下の説明は添付図面を参照する。添付図面では、これに反する表現がない限り、種々の図面における同じ符号は類似の要素を表している。以下の説明において述べられる実施態様は、請求項に記載の発明と整合した全ての実施態様を表しているとは限らない。それよりもむしろ、それらの実施態様は、本発明に関係した幾つかの特定の態様と整合したシステム及び方法の一部の例にすぎない。
【0010】
「ショートキー」は、定められた時間及び空間において繰り返すことがなく、また、1つのデバイスが接続を作成するように動作されているとき又は特定のロケーションにおける他の1つ若しくは複数のデバイスを用いて或る期間にわたり情報を共有するように動作されているときに生成することができるキャラクター(数字、文字、又はそれらの組み合わせ)のシーケンスとして定義することができる。デバイスによってサーバーに送信されるステータスレポートは、接続の作成又は情報の共有を要求することができる。「期間」及び「特定のロケーション」の意味は、例示の実施形態を見直すことで当業者には明らかになる。
【0011】
本開示における1つの実施形態によれば、ショートキーの生成を要求するデバイスは、「第1のデバイス」と呼ばれる場合がある。ショートキーの使用を完了する他のデバイスは、「第2のデバイス」、「第3のデバイス」等と呼ばれる場合がある。ショートキーを生成するサーバー及びソフトウェアのグループは、「サーバー」と呼ばれる場合がある。
【0012】
デバイスは、コンピューター、スマートフォン、タブレット、キャッシャーマシン又は販売時点デバイス、ATM、プリンター等のインターネット接続又は他のネットワーク接続を有するデバイスを含むことができる。
【0013】
これらのデバイスは、人又は企業に対応するプロファイルを用いて構成することができる。1つのプロファイルを2つ以上のデバイスに設定又は関連付けることができる。例えば、ATMのプロファイルは銀行に対応することができ、キャッシャーマシンのプロファイルはストアに対応することができ、スマートフォンのプロファイルは人に対応することができる等である。1つの実施形態では、各プロファイルは、「ユーザー」と呼ばれる所有者を有する。デバイスを実際に用いるか又は動作させる人は、「オペレーター」と呼ばれる場合がある。デバイスは、同じ人であるユーザー及びオペレーターを有することもできるし、ユーザーと異なるオペレーターを有することもできる。「オペレーター」という用語は、本開示では、ユーザー及びオペレーターが異なる人であるときに一般に用いられる。それ以外の場合には、「ユーザー」という用語は、同じ人又はエンティティであるユーザー及びオペレーターを指すのに用いられる。
【0014】
ショートキーを生成するようにサーバーに要求する行為は、デバイス上のキー又はボタンを押下することによって、デバイスのタッチスクリーンをタッチすること(ジェスチャを含む)によって、デバイスによって受信される音声アクティブ化コマンドを通じて、デバイスが加速度計を含む場合にはデバイスを動かすことを通じて、リモート制御等によって行うことができる。「特定のロケーション」は、本開示では「領域」と呼ばれる場合がある。領域は、3D地理的座標又はデバイスを集合に分割又はグループ化する境界によって画定されるエリアとして定義することができる。このエリアは、3つの寸法で画定することができ、このため、エリアは、幅、長さ及び高さを有することができ、その結果、領域は、その前後左右、その上及びその下に隣接する/近傍の領域を有することができる。図のうちの幾つかは、説明を容易にするために2つの次元で領域を示している。
【0015】
領域を画定するプロセスは、ロケーション特定システムの可用性及び精度を考慮するサーバーが直接行うことができる。ロケーション特定システムは、GPS(全地球測位システム)、BDS(北斗衛星導航系統(BeiDou Navigation Satellite System))、ガリレオGNSS(全地球航法衛星システム)、iBeacon、セルラーネットワーク、Wi−Fi、特にユーザー提供されるインターネットIP、又はデバイスの測位を画定するのに用いることができる他の任意の方法を含むことができる。
【0016】
一般に、領域は、各点について他のロケーション特定システム向けに変換された緯度、経度及び高度を用いて設定することができるが、領域は、緯度、経度及び高度の情報を用いずに作成することもできる。時に、領域を作成するには、デバイスが通信するネットワークノードを指定する識別子で十分な場合がある。例えば、領域は、地下鉄列車エリアに関連付けられたインターネットIPだけを用いることによって作成される場合がある。なぜならば、そのエリアでは、GPS、BDS、又は他のロケーションシステムは、信号受信を有しない場合があるからである。
【0017】
図1は27個の立方体を示し、各立方体は異なる領域を表している。領域は、立方体の異なる形状を有する場合がある。影付きの立方体(105)は、(その下、上、及び前後左右に)隣接する立方体を有する。図1において、各領域は、幅、長さ及び高さの3つの寸法を有する。例えば、影付きの立方体(105)は、街路レベルによって設定された領域とすることができ、その上の立方体(110)は、建物の屋上に対応する領域とすることができ、その下の立方体(115)は、地下鉄の駅に対応する領域とすることができる。「領域」という用語は、通常はサービスプロバイダーによって六角形又は円形として画定される携帯電話領域に類似しているが、領域は、本明細書で用いられるとき、立方体、球体、多面体、球体、楕円体、円柱、錐体等の3D形状で構成される場合もある点が異なる。
【0018】
領域は、別の領域と部分的又は完全に重複することができる。その場合、それらの2つの領域は近傍とみなされる。或る領域内で境界が定められたゾーンは、ロケーション特定システムによって不確実な半径を用いて生成されるゾーンと正確に同じものとすることができ、このため、デバイスごとに領域が存在する。
【0019】
1つの実施形態では、上記で説明したロケーション特定システムは、不確実な半径を有するデバイスの位置を提供する場合もあるし、異なる信頼度を有する異なる半径を提供することもできる。それらのロケーション特定システムは、垂直精度と異なる水平精度を提供する場合もある。そのことは、識別されたロケーション又は定められたロケーションにデバイスが正確に存在することをロケーション特定システムが必ずしも保証するものではなく、立体幾何学体の内部の可能なロケーションを提供することができることを意味する。この幾何学体は、2つ以上の領域内に存在することができ、このことは、デバイスが2つ以上の領域に存在することを意味するものではないが、ロケーション特定システムの精度が、デバイスがどの領域に位置しているのかを近似的に決定することを意味する。デバイスがどの領域にいるのかをロケーション特定システムが決定することができない場合、サーバーは、デバイスが位置し得る可能性のある領域を統一し、この統一された領域をショートキー生成プロセスにおいて用いることができる。
【0020】
「期間」は、ショートキーをその満了まで用いることができる期間として定義することができる。第1のデバイスユーザーは、この満了時刻を設定することができる。各ショートキーは、異なる満了期間を有することができる。1つの実施形態では、第2のデバイスユーザー、第3のデバイスユーザー等は、ショートキーが生成された時刻とその満了との間の期間中しかショートキーを用いることができない。
【0021】
ショートキーは、種々のアプリケーションに用いることができる。同じ領域及び同じ時刻において、異なるアプリケーションを有するショートキーを有することが可能である。例示的なアプリケーションには、写真、ビデオ、音楽、又は連絡先の共有;ネットワークへの参加;プリンターへのデータの送信;モバイル決済;現金引き出し等がある。
【0022】
図2に示す実施形態では、ショートキー生成プロセスは、8つのステップを含むことができる。ステップ1(205)において、第1のデバイスは、サーバーにショートキーを要求する。この要求は、プロファイル識別子コード、デバイスロケーション(上記で説明したロケーション特定システムのうちの任意の1つによって提供される)、満了期間、ショートキーのアプリケーションの識別情報、バイタリティ属性(例えば、ショートキーが用いられたときを表示、特定又はフラグ設定するとともに、ショートキーを無効化するために用いることができるショートキーの設定又は属性)及び各アプリケーションの任意の追加の情報(210)とともにサーバーに送信される。ステップ2(215)において、サーバーは、第1のデバイスが幾つの領域に存在するのかを調べる。ステップ3(220)は、第1のデバイスが2つ以上の領域に存在する場合には、プロセスがステップ4(225)に進むことを決定し、デバイスが1つの領域にしか検出されない場合には、プロセスがステップ5(230)に進むことを決定する。ステップ4(225)は、第1のデバイスが存在する可能性がある全ての領域をグループ化する。ステップ5(230)は、第1のデバイス領域(単一のもの又は統一されたもの)の周囲の又はこれに隣接する全ての領域のリストを作成する。ステップ6(235)において、サーバーは、第1のデバイス領域及びその周囲の領域の全てにおけるその時点の全てのアクティブなショートキーをメンバーとして含む集合(集合A 250)を作成する。ステップ7(240)において、サーバーは、生成することができる全てのショートキーを含む集合(集合B 255)を作成する。集合Bは、システム内の可能な最小のショートキー値と、ステップ6(235)によって与えられた集合A(250)内の最大のキー値に続く次のキー値又はその後に予定されているキー値との間に制限される。例えば、ステップ7において、1つの実施形態では、どのショートキーを用いることができるのかを判断するために、システムは、用いることができる全ての可能なショートキーを有する集合を必要とし、その後、既に使用中のショートキーをこの集合から除去する。全ての可能なキーを有する集合は、性質上、無限とすることができるので、この集合は、システム内の最小のキー値と、集合Aの要素である使用中の最大のショートキー値に続く次のキー値との間の範囲の可能なキーを含むように制限される。1つの実施形態では、集合Bは、システム全体の可能な最小の値を有するキーと、集合A内の最大のキー値に続く次のキー値を有するキーとの間に含まれる範囲の全てのキーによって形成される範囲のキーを含む。数学形式では、これは、キーyをシステム全体における可能な最小の値を有するキーであると仮定すると、次のように表すことができる。すなわち、A={xl,x2,x3,x4...xN}であり、B=[y,xN+1]である。「[]」を用いて示される集合は、本明細書において用いられるときは閉区間を指す一方、「{}」を用いて示される集合は、集合内の具体的な要素を列挙している。
【0023】
ステップ8(245)において、サーバーは、集合B(255)から集合A(250)を除外したものとして定義される集合C(260)(C=B−A)からの最小のメンバーを用いるとともに、要求が受信された日付及び時刻とステップ1(205)において送信された満了期間とを用いて、ショートキーを生成する。このため、このショートキーは、第1のデバイスが要求した領域にとって、要求時刻とキー満了時刻との間の期間中において一意となる。
【0024】
図3は、ショートキー生成を示しており、領域I(305)、領域II(310)及び領域III(315)の3つの領域を有するタイムラインを用いている。領域I(305)は、隣接する領域として領域II(310)のみを有し、領域III(315)は、隣接する領域として領域II(310)のみを有し、領域II(310)は、隣接する領域として領域I(305)及び領域III(315)を有する。図3は、近傍の領域のショートキーが、或る特定の領域におけるショートキー生成プロセスをどのように変更するのかを示している。図3に示す実施形態では、ショートキーの生成を要求する6つのデバイスが存在する。単一のプロセスにおける各デバイスは、第1のデバイスとして特徴付けることができるが、図3では、説明を容易にするために、各デバイスは、A〜Fの文字によって指定されている。すなわち、図3は、「第1のデバイス」という用語がここで用いられるときは、幾つかの「第1のデバイス」を示しているが、それらのデバイスは、説明を容易にするために図3では文字を用いて指定されている。図3に示すタイムラインは第2のデバイスを含まない。この図示した実施形態では、各領域(領域I(305)、II(310)及びIII(315))は、0’〜27’の28個の異なる段階(t)に分割されたタイムラインを有することができる。デバイスAは、t=1’において領域I(310)内で6’のキー満了期間を有するショートキーを要求することができる(320)。そのことは、t>7’であるとき、このショートキーは、用いられなかった場合にサーバーによって満了したものとして設定されることを意味する。サーバーは、ショートキーとして01シーケンスを提供する。t=4’において、デバイスE(325)が、領域III(315)におけるショートキーを要求し、01キーを受信する。その後、上記に示した01に等しい2つのショートキーが存在するが、これらのショートキーは、異なる領域I(305)及びIII(315)に存在し、これらの領域は近傍ではない。t=5’において、デバイスAと同じ領域におけるデバイスB(330)がショートキーを要求し、02キーを受信する。なぜならば、01がt=5’においてアクティブであったので、02が次の利用可能なショートキーであったからである。t=7’において、ショートキー01が用いられている(335)。t=10’において、デバイスA及びBと同じ領域におけるデバイスCがショートキーを要求し、01ショートキーを受信する(345)。ショートキー01がt=1’においてデバイスAに提供され(320)、t=7’において用いられると(335)、このキーは再び利用可能になる。t=13’において、ショートキー02は満了する(350)。t=15’において、デバイスAは、領域I(310)におけるショートキーを要求し、キー02を受信する(355)。t=18’において、ショートキー01が領域I(310)において用いられる(360)。t=19’において、デバイスDが、領域II(310)におけるショートキーを要求し(365)、01キーを受信する。t=20’において、ショートキー02が領域I(305)において用いられ(370)、デバイスFが領域III(315)におけるショートキーを要求し(375)、キー02を受信する。なぜならば、ショートキー01は、領域IIにおいて既にアクティブであったからである。t=21’において、デバイスDがショートキーを要求し、03キーを受信する(380)。なぜならば、ショートキー01は同じ領域においてアクティブであり、ショートキー02は近傍の領域III(315)においてアクティブであったからである。
【0025】
図1を再び参照すると、影付きの立方体(105)によって指定された領域におけるショートキー生成プロセスは、周囲の領域(透明な立方体)における全てのアクティブなショートキーによって変更される。図1に示す実施形態では、26個の他の立方体が、影付きの立方体(105)に提供されるキーに影響を与える。
【0026】
図4は16個の領域を示し、各領域は、A〜Pに及ぶ文字によって設計された正方形によって表されている。領域F(412)、G(414)、H(416)、J(420)、L(424)、N(428)、O(430)及びP(432)は、領域K(422)におけるショートキー生成プロセスを変更するが、領域A(402)、B(404)、C(406)、D(408)、E(410)、I(418)及びM(426)は、領域K(422)のキー生成プロセスに影響を与えない。
【0027】
図5は、図4における領域に対応する特定の段階のスナップショットを示している。領域K(502)は、ショートキーを要求する最後のものであり、1つのアクティブなショートキー08を有する。なぜならば、ショートキー01、02、03、04、05、06、07及び10は、近傍の領域においてアクティブであるからである。ショートキーの集合は、A={01,02,03,04,05,06,07,10}である(例えば、集合Aは、領域Kを除くアクティブなショートキーで構成されている)。集合A内の可能な最小のショートキーと最大のショートキーとの間のショートキーに、その後に予定されている1つのキー値又は次のキー値を加えた集合が、集合B={01,02,03,04,05,06,07,08,09,10,11}である。演算B−A=C={08,09,11}を行うと、集合C内の最小のショートキーは08である。これらのショートキーが、領域Kにおける次の要求までアクティブであり続ける場合、次のショートキーは09となる。
【0028】
図6は、図4と同じ16個の領域であるが、別の時点における、2つの領域J(604)及びK(606)に1つのデバイス(602)を有する領域を示している。図7は、図6に示す実施形態のスナップショットを示している。円(702)によって表されたデバイスのショートキー生成プロセス中に、サーバーは、領域J(722)及びK(724)をグループ化し、その結果、近傍は、領域E(712)、F(714)、G(716)、H(718)、I(720)、L(726)、M(728)、N(730)、O(732)及びP(734)となる。領域F(714)、H(718)及びO(732)は、04によって指定されたショートキーを有するが、それらの領域が近傍ではなく、このため、デバイス(702)は、05をショートキーとして得ることができることに留意されたい。
【0029】
ショートキーは、柔軟な長さを有するキャラクターのシーケンスとすることができる。ショートキーの長さは、1桁から始まり、特定の領域において或る期間にわたって行われる要求の数に応じて拡張することができる。ショートキーのキャラクターは、英数字とすることができる。同じ領域において、ショートキーが異なる長さを有することが可能である。例えば、ニューヨーク市のタイムズスクエアにおけるデバイスは、或る農場におけるデバイスよりも長い長さを有するショートキーを受信する場合がある。ロケーション特定システムの精度は、ショートキーの長さに影響を有する場合もあるし、ショートキーの長さを変更する場合もある。なぜならば、それらのショートキーが十分に正確ではなく、デバイスが30個の領域に存在する可能性があるとシステムが判断した場合、ショートキー生成プロセスは、30個の全ての領域及びそれらの近傍による影響を受けるからである。ロケーションシステムは、不正確である可能性があり、方向を決定する手掛かり又はデバイスが、異なる領域に対応するエリア内に存在すると判断する可能性がある。ロケーションシステムの信頼性又は精度が低いほど、より多くの領域が、デバイスの可能性のあるロケーションエリアに関連付けられる場合があり、その結果として、ショートキーを作成するのに、より多くのキャラクターが必要とされる場合があり、その結果、ショートキーはより長くなる。
【0030】
サーバーは、ショートキーが満了時間内に用いられない場合に満了するようにそのショートキーを設定することを担当する。第1のデバイスのユーザーは、ショートキーの要求をキャンセルすることができ、このキャンセルが行われると、サーバーは、そのショートキーをキャンセル済みとして設定する。
【0031】
サーバーは、第1のデバイスによって構成されたバイタリティ属性が満たされているとき、ショートキーを使用済みとして設定する。バイタリティ属性は、購入価格若しくはキーの使用回数又はそれらの双方に同時に基づくこともできるし、それらによって決定することもできる。例えば、キーは、レストランの請求額の決済に関して用いられている場合、人々がその請求額を割り勘にする予定であるときに、2回までの使用及び100.00ドルの値に設定することができる。この構成の例には、1人のユーザーによるショートキーの使用回数;ショートキーを用いることができる異なるユーザーの数;データ転送サイズ;特定の値に達したときの決済へのショートキーの使用等があるが、これらに限定されるものではない。ショートキーが満了時刻に達すると、バイタリティ属性は重要ではなく、サーバーは、そのキーを満了済みとして設定する。例えば、ショートキーがレストランの決済用に生成されたとき、顧客らは、請求額を割り勘にする場合があり、そのため、各顧客は、その請求額の部分決済を同じショートキーを用いて行うことができる。サーバーは、請求額の総額に達したときに、そのショートキーを使用済みとして設定する。
【0032】
ショートキーは生成されるので、第1のデバイスは、ショートキーを構成するキャラクターのシーケンスをサーバーから受信する。このため、第2のデバイスのユーザーは、第2のデバイスを用いるためにこのショートキーを知る必要がある。これらのユーザーは、ディスプレイ上でショートキーを読み取ること、用紙からショートキーを読み取ること、第1のデバイスのユーザーと通信すること等によってショートキーを得ることができる。
【0033】
図8に示す実施形態では、第2のデバイスのユーザーは、ショートキーを所持すると、このショートキーを、タイプ入力、音声アクティブ化コマンド、又は第2のデバイスによってサポートされた他の入力方法を通じて第2のデバイスに入力することができる(805)。ショートキーを第2のデバイスに入力した後、先に進む許可を得るには、任意選択的なステップ(例えば、パスワード、指紋、音声認識、画像認識等)が必要となる可能性があり、その場合、ユーザーは、デバイス上のキー又はボタンを押下する行為、デバイスのタッチスクリーンをタッチする行為(ジェスチャを含む)、デバイスによって受信される音声アクティブ化コマンドを通じた行為、デバイスが加速度計を含む場合にはデバイスを動かす行為、リモート制御による行為等を、ステータスレポート(810)をサーバーに送信するために取ることができる。第2のデバイスによって送信されるこのステータスレポート(810)は、ショートキーの指定されたアプリケーション(ショートキーの生成及び使用を目的としたもの)と、ショートキーのキャラクターのシーケンスと、第2のデバイスロケーション(前述の手段のうちのいずれかによって与えられ、不確実な半径を考慮したもの)と、各アプリケーションの任意の追加の情報とを有することができる。
【0034】
サーバーは、ステータスレポートを第2のデバイスから受信した後、第2のデバイスがどの領域に存在するのかを判断する(815)。第1のデバイスと同様に、第2のデバイスは、2つ以上の領域に存在することができ(820)、そのため、サーバーは、正確な結果を保証するために、それらの可能性のある領域を結合する(825)。この領域(統一されたもの又は単一のもの)を用いて、サーバーは、ステータスレポート(810)において送信されたものと等しいアクティブなショートキーを検索する(830)。検索結果の数は、第2のデバイスのロケーション特定システムの精度に応じて変化し得る。第2のデバイスが、1つの領域のみ又はショートキーが一意である領域のグループに存在すると判断するのにロケーション精度が十分である場合(835)(すなわち、検索が1つのレコードのみを返す)、サーバーは接続を確立する(840)。第2のデバイスが、ショートキーが一意である領域のグループに存在すると判断するのに測位精度が十分でない場合(845)、検索は、2つ以上のレコードを返し、サーバーは、それらのレコードを有するリストを第2のデバイスに送信する(850)。次に、第2のデバイスのユーザーは、どのレコードと接続を行うのかを選ばなければならない場合がある(855)。すなわち、リストが第2のデバイスに送信された後、ユーザーは、このリストから、接続する項目を選ばなければならない。例えば、図5では、ショートキー5は、E、G及びMに登場している。第2のデバイスの精度が低く、16個の領域を包含する場合、キー05を要求した領域E、G、Mにおける第1のデバイスの名称を有するリストが、第2のデバイスに送信される。そのため、第2のユーザーは、第2のデバイスが、それらのうちのいずれと接続するのかを選ぶ。サーバーが、第2のデバイスによって送信された情報に適合するいずれのレコードも発見しない場合(832)、サーバーは、エラーメッセージを返す(860)。
【0035】
図9は、1つの実施形態による全体のプロセスのフローチャートである。ステップ(905)において、第1のデバイスはショートキーを要求する。ステップ(910)において、サーバーは、ショートキーを生成し、このショートキーを第1のデバイスに返信する。ステップ(915)において、第2のデバイスのユーザーは、第1のデバイスのディスプレイ、プリントアウト、第1のデバイスのユーザー、又は他の手段からショートキーを取得する。ステップ(920)において、第2のユーザーはショートキーを入力する。ステップ(925)において、サーバーは、第2のユーザーの同一性を(例えば、パスワードを用いて)検証するとともに、ショートキーの有効性を検証する。ステップ(930)において、サーバーは、ショートキーに適合したレジスタを検索する(例えば、図8のステップ805と830との間のステップ)。ステップ(935)において、サーバーが、一致する結果を発見しない場合、サーバーはエラーメッセージを送信する。ステップ(940)において、サーバーが2つ以上のショートキーを発見した場合、サーバーは、第2のデバイスにリストを送信し、第2のデバイスのユーザーが、そのリストから項目(例えば、通信する第1のデバイス)を選ぶことができるようにする(945)。サーバーが、1つの結果のみを発見した場合(950)、識別されたショートキーを追加の情報とともに第2のデバイスに送信することができる(955)。ステップ(960)において、追加の検証又は認証を(例えば、パスワードを用いて)行うことができる。ステップ(965)において、接続が確立される。ショートキーが満了した場合、サーバーはエラーメッセージを送信する(970)。
【0036】
図10を参照すると、ショートキーアプリケーションが決済であるときに実施されるステップは、ショートキー生成プロセス(1020)及びショートキー検索(1055)については同じままであるが、その後において、サーバーは、取引の総額、決済を受信するユーザーの名前、購入された商品のリスト等を有する追加の情報を第2のデバイスに送信する(1060)。第2のデバイスにおいてこの情報を用いて、ユーザーは、検証ステップによって購入を確認する(1065)。第2のデバイスのユーザーが購入を確認した場合、サーバーは、クレジットカード、デビットカード、プリペイドカード、関係プログラムポイント(relationship programs point)又は銀行振替を用いて決済を実行する(1070)。このため、サーバーは、購入が完了したことの確認を第1のデバイス及び第2のデバイスに送信する(1075)。第2のデバイスのユーザーが購入を確認しない場合、サーバーは、ユーザーが購入をキャンセルしたことの通知を第1のデバイスに送信する。第1のデバイスのユーザーは、第2のデバイスのユーザーがショートキーを取り出すだけであり、次に進まない場合には、ショートキーをアクティブな状態のままにセットアップすることもできるし、第2のデバイスのユーザーがショートキーを読み取るだけである場合には、ショートキーを無効化されるように設定することもできる。
【0037】
第1のデバイスと第2のデバイス(第3のデバイス、第4のデバイス等を含む)との間の通信は、サーバーを通じて行うこともできるし、中間デバイスを通じて行うこともできるし、それらのデバイス間で直接行うこともできる。この構成は、ショートキーアプリケーションの結果である。
【0038】
第1のデバイスのロケーションの代わりにリモートデバイスを用いることができる。このシナリオでは、第1のデバイスはショートキーを要求するが、データをサーバーに送信するとき、第1のデバイスのロケーションの代わりにリモートデバイスロケーションが送信される。このプロセスは、オペレーターが、第1のユーザーのデバイスと異なるデバイスを用いることを可能にする。例えば、コンピューターを用いる人は、インターネットを通じて商品を購入し、ショートキーを用いた決済に自身のスマートフォンを用いたい場合がある。第1のデバイスは、ウェブサイトをホストするコンピューターであってもよく、このウェブサイトは、クラウドに存在し、第2のデバイスと異なる未知のロケーションを有していてもよい。第2のデバイスは、スマートフォンであってもよい。オペレーターがサイトにアクセスするのに用いているコンピューターは、第1のデバイスにリモートアクセスするリモートデバイスである。第1のデバイスがショートキーを要求すると、このショートキーが第2のデバイスに入力されたときに、サーバーが第2のデバイスのロケーションを特定することができるように、リモートデバイスのロケーションを用いることができる。なぜならば、リモートデバイスの位置と第2のデバイスの位置とは同じであるからである。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10