(57)【特許請求の範囲】
【請求項１】
1つまたは複数のタグの近傍を検査するための方法であって、
前記タグが有する受信機を用いて、パートナータグから、当該パートナータグ上のパートナータイマ割り込みを用いて、一定時間間隔毎にブロードキャストされ、前記パートナータグを他のタグとは区別するために用いられる前記パートナータグのパートナー識別子を含む第1のタイプの第1のメッセージを、前記パートナータグとは別のタグ上に受信するステップと、
前記タグが有するプロセッサを用いて、前記別のタグ上の前記第1のタイプのメッセージから前記パートナータグの前記パートナー識別子を読み取るステップと、
前記プロセッサを用いて、前記読み取られたパートナー識別子に関するタグ遭遇回数を増分するステップと、
前記プロセッサを用いて、前記読み取られたパートナー識別子が前記別のタグ上のセンシティブタグのリストにある場合に、前記別のタグ上でアラームを鳴らすステップと、
前記別のタグから、前記別のタグ上のタイマ割り込みを用いて、一定時間間隔毎に、前記パートナータグが前記パートナータグ上でパートナータグ遭遇回数を増分するために受信し、用いる、前記別のタグの識別子を含む第2のメッセージであって、また、前記パートナータグが、前記別のタグの識別子が前記パートナータグのセンシティブタグのパートナーリストにある場合に、前記パートナータグがアラームを鳴らすために用いる、第2のメッセージを、前記タグが有する送信機を用いてブロードキャストするステップと、を有し、
前記別のタグの識別子は、他のタグから当該別のタグを区別するために用いられる、
方法。
【請求項２】
前記プロセッサを用いて、前記別のタグ上の前記タグ遭遇回数を、前記別のタグ上の第1のタイプのタグデータ構造の中に格納するステップと、
前記プロセッサを用いて、前記パートナータグ上の前記パートナータグ遭遇回数を、前記パートナータグ上のパートナータグデータ構造の中に格納するステップと、
をさらに含む請求項１に記載の方法。
【請求項３】
さらに、前記読み取られたパートナータグ識別子が、前記第1のタイプの前記データ構造内に既に存在しているのではない場合、前記プロセッサを用いて、前記データ構造の中で、前記読み取られたパートナータグ識別子に関するエントリを作成するステップを含む請求項２に記載の方法。
【請求項４】
前記別のタグ上の前記タグ遭遇回数を前記第1のタイプのタグデータ構造の中に格納するステップは、前記第1のタイプの前記第1のメッセージの中の前記読み取られたタグ識別子の署名が、検証された場合にだけ、実行される請求項２に記載の方法。
【請求項５】
前記増分するステップは、前記第1のタイプの前記第1のメッセージの中の時刻が、所定の時間内にある場合にだけ、実行される請求項２に記載の方法。
【請求項６】
前記所定の時間は、現在時刻から1分以内である請求項５に記載の方法。
【請求項７】
前記受信機が第2のタイプのメッセージを受信すると、前記送信機を用いて、前記第1のタイプの前記タグデータ構造を送信するステップをさらに含む請求項２に記載の方法。
【請求項８】
前記送信するステップは、前記第2のタイプの前記メッセージの中の署名が、検証された場合にだけ、実行される請求項７に記載の方法。
【請求項９】
前記プロセッサを用いて、前記第1のタイプの前記タグデータ構造を暗号化するステップをさらに含む請求項７記載の方法。
【請求項１０】
さらに、前記受信機を用いて、前記パートナータグ上に前記第2のメッセージを受信するステップと、
前記プロセッサを用いて、前記パートナータグ上の前記第2のメッセージから前記別のタグの識別子を読み取るステップと、
前記プロセッサを用いて、前記読み取られた別のタグの識別子に関し、前記パートナータグ上のパートナータグ遭遇回数を増分するステップと、
を含む請求項１に記載の方法。
【請求項１１】
前記第1のタイプの前記第1のメッセージは、前記第1のメッセージを送信した前記パートナータグの署名、前記第1のメッセージを送信したパートナータグのパートナー識別子、および現在時刻の1つまたは複数を含む請求項１に記載の方法。
【請求項１２】
前記アラームを鳴らすステップは、前記第1のタイプの前記第1のメッセージの中の署名が、検証された場合にだけ、実行される請求項１に記載の方法。
【請求項１３】
前記アラームを鳴らすステップは、前記第1のタイプの前記メッセージの中の時刻が、所定の期間内にある場合にだけ、実行される請求項１に記載の方法。
【請求項１４】
前記所定の期間は、現在時刻から1分以内である請求項１３に記載の方法。
【請求項１５】
さらに、前記受信機を用いて、第2のタイプのメッセージを受信するステップと、
前記プロセッサを用いて、前記第2のタイプの前記メッセージからタグ識別子を読み取るステップと、
前記プロセッサを用いて、前記タグ識別子を前記タグ上の前記センシティブタグのリストに追加するステップと、
を含む請求項１に記載の方法。
【請求項１６】
前記追加するステップは、前記第2のタイプの前記メッセージの中の署名が、検証された場合にだけ、実行される請求項１５に記載の方法。
【請求項１７】
さらに、前記受信機を用いて、第3のタイプのメッセージを受信するステップと、
前記プロセッサを用いて、前記第3のタイプの前記メッセージからタグ識別子を読み取るステップと、
前記プロセッサを用いて、前記タグ識別子を前記タグ上の前記センシティブタグのリストから削除するステップと、
を含む請求項１に記載の方法。
【請求項１８】
前記削除するステップは、前記第3のタイプの前記メッセージの中の署名が、検証された場合にだけ、実行される請求項１７に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概ね、何らかの形で任意のタイプのオブジェクトに関連付けられたタグに関するデータを格納するため、取得するため、および管理するための方法およびシステムに関する。より詳細には、本発明は、それらのタグにデータを書き込むこと、それらのタグからデータを読み取ること、ならびにそれらのタグに書き込まれたデータ、および/またはそれらのタグから読み取られたデータを管理することを行う。
【背景技術】
【０００２】
本発明には、物理的または抽象的な、生物または無生物の、任意のタイプのオブジェクトに任意のタイプの形で関連付けられた任意のタイプのタグに関するデータを格納するため、取得するため、および管理するための方法およびシステムが関わる。タグはデバイスであって、そのデバイスが監視している、またはタグが関連付けられている物が何であれ、それについてのデータを送信し、受信し、および/または格納する任意のデバイスであり、タグには、RFID(無線周波数識別デバイス)タグ、レーザタグ、セルラ電話機、テレビネットワークからの信号の受信および送信を行うデバイス、GPS(グローバルポジショニングシステム(Global Positioning System))などの任意のタイプの衛星通信ネットワーク、その他などの、多くの異なるタイプが含まれる。タグは、DC電源、AC電源、ソーラ、その他などの、任意のタイプの電源によって電力を供給されることが可能である。識別デバイスは、参照により内容が本明細書に組み込まれている「Electronic Identification & Recognition System」という名称の、チャールズウォルトン(Charles Walton)に発行された米国特許第3,752,960号でさらに説明されている。タグに関連付けられることが可能なタイプのオブジェクトには、人、動物、植物、任意の種類の物、家、土地、分譲マンション、移動住宅、およびタウンハウスなどの不動産、絵画、ダイヤモンド、宝飾品、腕時計、および骨董品などの高価な品目、自動車、飛行機、軍用車両、自転車、オートバイ、ボート、船、以上のコンポーネントなどの可動な品目、場所、環境条件、抽象概念、概念、現象、その他などが含まれるが、以上には限定されない。タグとオブジェクトの間の関連付けは、1対多、多対1または1対1、物理的、論理的、その他を含むが、以上には限定されない、任意のタイプであることが可能である。物理的関連付けには、タグを、タグの関連付けられたオブジェクトに付加し、および/または挿入することが含まれることが可能である。
【０００３】
本発明は、多種多様な用途に適合させられる。例えば、本発明の方法およびシステムを使用して、高価な品目を真贋鑑定すること、製造、サプライチェーン、流通、その他を経由して、売場、およびその先まで、任意の種類のオブジェクトを追跡することなどの、在庫を管理すること、人、動物、植物、可動な品目、その他などのオブジェクトの動きを追跡すること、高価な品目や不動産などの物から、価格履歴などの履歴データを取得すること、人および動物から、容体、治療履歴、投薬指示などの任意のタイプの健康データを取得すること、人および動物に関して、心拍数、脈拍数、体温、血液中の、酸素、糖、その他などの異なる物質の量などの、任意のタイプの健康状態を追跡することが可能である。
【０００４】
本発明の様々な用法から、多くの異なる利点が生じる可能性がある。例えば、本発明の使用により、高価な品目などの物の価値を特定する費用が低減される可能性がある。というのは、例えば、その品目に関する価格履歴、およびその他の類似のデータが、容易に格納され、その品目の関連付けられたタグから取得されることが可能だからである。家に関連付けられたタグからの価格履歴、ならびに同一の地域における他の家々からの価格履歴が入手可能であることにより、売り手が、その家の実際の価値の知識をほとんど、あるいは全く有していない買い手に、法外に高い金額の支払いを要求することが防止される可能性がある。本発明の使用により、高価な品目を模造品に、不正にすり換えることが防止される可能性がある。というのは、その品目の関連付けられたタグからの識別データを使用して、その品目の真正性を検証することが可能だからである。本発明の使用により、自動車の所有者が、損傷のある自動車を損傷のない自動車として、怪しまない買い手につかませることが防止される可能性がある。というのは、自動車の事故履歴が、格納され、自動車の関連付けられたタグから取得されることが可能だからである。本発明の使用により、軍事機密の盗難が防止される可能性がある。というのは、人物に関連付けられたタグから許可情報に容易にアクセスして、その人物が、そのような秘密へのアクセス（権）を有するべきかどうかが判定されることが可能だからである。本発明の使用により、運動選手が競技している間に生じる可能性がある、運動選手の負傷、または死亡さえ、回避される可能性がある。というのは、運動選手の心拍数、体温、およびその他の容体が、容易に監視されることが可能だからである。同様の理由で、コーチが、本発明を使用して、いずれの選手が、疲れ過ぎていて戦力にならない(too fatigued to be effective)かを迅速に判定することが可能であり、運動選手のスカウト(recruiter)が、本発明を使用して、いずれの選手が、競技の厳しさによりうまく対応することができるかを判定することが可能であり、運動選手のトレーナが、本発明を使用して、特定の運動選手に訓練プログラムを合わせることが可能である。本発明の使用により、裁判における証拠の真贋鑑定が容易になることが可能である。というのは、裁判において、証拠の関連付けられたタグから、書類受け渡し記録の管理(chain of custody)が容易に取得されることが可能だからである。本発明の使用により、在庫の管理が、さらに自動化され、単純化される。
【０００５】
タグ、および類似のデバイスが、他の参考文献において開示されているが、先行技術の参考文献はいずれも、真贋鑑定、追跡、医療監視、医療管理、知識獲得、その他を含む、様々な応用例に関して、データを格納し、取得し、および管理するためのシステムおよび方法における、そのようなタグの使用を開示していない。これに対して、例えば、米国特許第6,440,096号、米国特許第5,358,514号、米国特許第5,193,540号、米国特許第6,107,102号、および米国特許第6,405,066号は、マイクロデバイスを人に埋め込むことを説明している。米国特許第5,606,260号、米国特許第4,892,709号、米国特許第5,367,878号、米国特許第6,152,181号、米国特許第5,834,790号、米国特許第5,186,001号、米国特許第5,839,056号、および米国特許第5,144,298号は、センサまたはコントローラとしてのマイクロデバイスの使用を説明している。
【０００６】
したがって、任意のタイプのオブジェクトに任意のタイプの形で関連付けられた任意のタイプのタグに関するデータを格納し、取得し、および管理するためのシステムおよび方法の必要性が存在する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００３−２９６４１５号公報
【特許文献２】特表２００２−５３６７２６号公報
【特許文献３】特開２０００−１６３５２７号公報
【特許文献４】特開２００３−２８３３９１号公報
【特許文献５】特開２００３−１５７４５７号公報
【特許文献６】特開２００２−２６１９６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明は、様々な応用例に関して、任意のタイプのオブジェクトに任意のタイプの形で関連付けられた任意のタイプのタグに関するデータを格納し、取得し、および管理するためのシステムおよび方法を提供する。
【課題を解決するための手段】
【０００９】
特に、本発明のある態様は、
1つまたは複数のタグの近傍を検査するための方法であって、
第1のタイプのメッセージを受信するステップと、
前記メッセージから、前記メッセージを送信したタグの識別子を読み取るステップと、
前記読み取られたタグ識別子に関する遭遇回数を増分するステップと、
を含む方法を提供するものである。
【００１０】
本発明のさらなる態様は、
1つまたは複数のタグが、近傍の範囲を外れた場合、アラームを生じさせるための方法であって、
第1のタイプのメッセージを受信するステップと、
前記メッセージから、前記メッセージを送信したタグの識別子を読み取るステップと、
前記読み取られた識別子に関するアラームカウンタをリセットするステップと、
を含む方法を提供するものである。
【００１１】
本発明のさらなる態様は、
1つまたは複数のタグが、近傍の範囲内に入った場合、アラームを生じさせるための方法であって、
第1のタイプのメッセージを受信するステップと、
前記第1のタイプの前記メッセージを送信したタグの識別子を読み取るステップと、
前記読み取られた識別子が、センシティブタグリストに入っている場合、アラームを鳴らすステップと、
を含む方法を提供するものである。
【００１２】
本発明の以上、およびその他の態様および特徴は、添付の図面とともに、以下の詳細な説明から、より明確に理解されよう。
【図面の簡単な説明】
【００１３】
【図１】本発明の主要な動作要素を示すブロック図である。
【図２】任意の種類のオブジェクトに関連付けられたタグ102へのデータの格納を表すデータフロー図である。
【図３】タグ102からのデータの送信を表すデータフロー図である。
【図４】図4aは、クライアントコンピュータ106において親によって記入されて、子供のタグ102の動作を制御するサンプル記入フォーム400を示す図である。図4bは、クライアントコンピュータ106において親によって記入されて、子供のタグ102から、またはデータベース110からデータが取得されるサンプル記入フォーム450を示す図である。
【図５】近傍検査に関するタグの一実施形態の動作を示すデータフロー図500である。
【図６】図6a、図6b、および図6cは、タグ識別子ブロードキャスト、中央権限ブロードキャスト、およびタグ識別子マップブロードキャストの例示的なフォーマットをそれぞれ示す図である。
【図７】近傍範囲外アラームに関するタグの一実施形態の動作を示すデータフロー図である。
【図８】図8a、図8b、および図8cは、タグ識別子ブロードキャスト、制御権限イネーブル、および制御権限ディセーブルの例示的なフォーマットをそれぞれ示す図である。
【図９】対称近傍アラームに関するタグの一実施形態の動作を示すデータフロー図である。
【図１０】図10a、図10b、および図10cは、タグ識別子ブロードキャスト、制御権限追加タグブロードキャスト、および制御権限削除タグブロードキャストの例示的なフォーマットをそれぞれ示す図である。
【発明を実施するための形態】
【００１４】
本発明は、様々な応用例に関して、任意のタイプのオブジェクト(物理的または抽象的な、生命のある、または無生物の)に任意のタイプの形で関連付けられた任意のタイプのタグに関するデータを格納し、取得し、および管理するためのシステムおよび方法を提供する。
【００１５】
本発明は、高価な品目および証拠を含むオブジェクトの真贋鑑定や、子供の親による子供の監視などの、いくつかの異なる応用例の範囲で説明されるが、本発明は、任意の種類のオブジェクトに関連付けられたタグに関するデータの格納、取得、および管理が有益となる任意の応用例に適用されることが可能である。それらの応用例には、不動産、物資、およびサービスなどのオブジェクトの交換、病人(the ill)、高齢者、および運動選手の生命徴候を監視すること、運動訓練プログラム、公園、ショッピングセンタ、カジノなどの様々な環境(setting)における環境条件、トラフィック、および消費者行動を監視すること、囚人、学生、外国人、軍事要員、および秘密指定区域内の作業者などの人々の位置を追跡すること、製造、サプライチェーン、流通、その他を経由して、売場、およびその先まで、在庫などの任意のタイプの物資の位置を追跡すること、秘密指定された材料の位置を追跡すること、機械、自動車、飛行機、列車、および以上のコンポーネントなどの物資の製造履歴、販売履歴、および修理履歴を追跡すること、戦場、ハイウェイ、その他などの場所における車両、トラフィック、その他などの人および物の動きを監視すること、パイプラインの中の石油、およびその他の液体の流れを監視すること、その他が含まれる。
【００１６】
図1は、本発明の主要な動作構成を示すブロック図100である。本発明は、人、動物、植物、任意の種類の物、家、土地、分譲マンション、移動住宅、およびタウンハウスなどの不動産、絵画、ダイヤモンド、宝飾品、腕時計、および骨董品などの高価な品目、自動車、飛行機、軍用車両、自転車、オートバイ、ボート、船などの乗物、コンポーネント、場所、環境条件、抽象概念、概念、現象、その他などを含む、任意のタイプのオブジェクトに関連付けられることが可能な、1つまたは複数のタグ102を含むことが可能である。タグとオブジェクトの間における関連付けは、1対多、多対1、または1対1を含む、任意のタイプであることが可能である。それらの関連付けは、物理的、論理的、その他であることが可能である。物理的関連付けには、タグを、タグの関連付けられたオブジェクトに付加すること、および/またはそのようなオブジェクトの中に挿入することが含まれることが可能である。論理的関連付けには、1つまたは複数のタグと1つまたは複数のオブジェクトの間の対応を、それらの識別番号によって確立することが可能なテーブルなどの、データベースの中の情報が含まれることが可能である。
【００１７】
タグ102は、RFID(無線識別デバイス)タグ、レーザタグ、セルラ電話機、GPS(Global Positioning System)からの信号の受信および送信を行うデバイス、その他を含む、様々な異なるタイプの1つであることが可能である。タグ102は、DC電源、AC電源、ソーラパワー(solar power)、その他などの、任意の種類の電源によって電力を供給されることが可能である。各タグ102は、データを受信する能力、データを格納する能力、データを検出する能力、および/またはデータを送信する能力を有することが可能である。データは、他のタグ102、センサ104、コンピュータ106、およびデータベース管理システム110に受信および送信が行われることが可能である。タグ102は、タグ102の関連付けられたオブジェクト、タグ102の環境、その他からのデータを検出する能力を有することが可能である。人物または動物などの、関連付けられたオブジェクトから検出されるデータには、体温、血液中の酸素含有量、心拍数、その他などの医療データが含まれることが可能である。環境から検出されるデータには、空気中、または水中の様々なガス、毒物、汚染物質の含有量、温度、湿度、気圧、化学物質、動き、光、音、その他が含まれることが可能である。
【００１８】
本発明100は、センサ104をさらに含むことが可能である。センサ104は、任意のタイプであることが可能であり、任意の種類のデータを検出することが可能である。センサ104は、AC電源、DC電源、ソーラパワー、その他などの、任意の種類の電源によって電力を供給されることが可能である。センサ104には、検温器、動き検出器、GPS(Global Positioning System)デバイス、化学物質センサ、その他が含まれることが可能である。コンピュータ106は、タグ102に送信されるデータ、および/またはタグ102から取得されるデータを含め、タグ102に関連付けられたデータを任意の形で格納し、および管理するためのデータベース管理システム110を含むことが可能である。データは、タグ102内に格納するためにコンピュータ106からタグ102に送信されることが可能であり、タグ102からコンピュータ106に送信されることも可能である。タグ102から取得されたデータは、データベース管理システム110の中に格納され、管理されることが可能である。
【００１９】
本発明は、通信ネットワーク114をさらに含むことが可能であり、ネットワーク114は、タグ102、センサ104、コンピュータ106、その他の間で異なるタイプのデータを通信する、様々な異なるタイプのコンポーネントおよびソフトウェアを含むことが可能である。それらのコンポーネントおよびソフトウェアには、変調器/復調機(モデム)、衛星、衛星との通信のためのものを含む周波数アップコンバータおよび周波数ダウンコンバータ(up and down frequency converter)、オーディオ/ビデオエンコーダ、ルータ、ハブ、ブリッジ、その他が含まれることが可能である。一実施形態では、通信ネットワーク114は、セルラ電話ネットワークであることが可能である。別の実施形態では、通信ネットワーク114は、GPSなどの任意のタイプの衛星ネットワークであることが可能である。別の実施形態では、通信ネットワークは、テレビネットワークであることが可能である。別の実施形態では、通信ネットワーク114には、インターネットが含まれることが可能である。通信は、World Wide Webを含む、1つまたは複数のインターネットアプリケーションによって、インターネット上で達せられることが可能である。通信ネットワーク114は、イントラネットであっても、エクストラネットであってもよい。イントラネットは、セキュリティで保護されたプライベート環境におけるインターネットベースのアプリケーションの使用を可能にする、通常、LAN(ローカルエリアネットワーク)またはWAN(ワイドエリアネットワーク)であるプライベートネットワークである。エクストラネットは、イントラネット関連技術を使用して、複数のサイト、または複数の組織をリンクするイントラネットタイプのネットワークである。
【００２０】
World Wide Webは、HTTP(ハイパーテキスト転送プロトコル)と呼ばれるプロトコルの上で構築されている。コンピュータ106は、タグ102およびセンサ104によって入力されるデータ、および/またはデータベース管理システム110の中に格納されたデータを要求するためのブラウザソフトウェア108を含むことが可能である。ブラウザソフトウェア108からのデータを求める要求は、サーバソフトウェア109によって扱われることが可能である。サーバソフトウェア109は、要求されたデータを探し出すことができ、そのデータを要求側のブラウザソフトウェア108に送信することができる。コンピュータ106は、アプリケーションサーバソフトウェア111をさらに含むことが可能であり、ソフトウェア111は、サーバソフトウェア109の能力を拡張することができる。特に、アプリケーションサーバソフトウェア111は、データのページが、要求側のブラウザソフトウェア108に送られる前に、データのページを前処理することができる。
【００２１】
一実施形態では、アプリケーションサーバソフトウェア111は、Cold Fusionアプリケーションである。Cold Fusionは、参照により内容が本明細書に組み込まれている、「The Macromedia Cold Fusion 5 Web Application Construction Kit」、Ben Forta and Nate Weiss、Forth Edition(以降、「Cold Fusion 5」)、Chapter 1において指定されているとおり、標準のHTML(ハイパーテキストマークアップ言語)ファイルをCFML(Cold Fusion Mar kup Language)命令と組み合わせることによって、動的ページアプリケーションおよび対話型Webサイトを作成するためのWorld Wide Webアプリケーションである。HTMLは、ページおよびフォームの作成およびレイアウトを可能にするページマークアップ言語である。本発明の一実施形態では、Cold Fusionアプリケーションは、タグ102およびセンサ104の動作を制御するデータ、およびデータを求めるクエリを含む、データのエントリのための記入フォームを定義する。
【００２２】
一実施形態では、Cold Fusionアプリケーション111を使用して、データベース管理システム110の中のデータが取得され、または更新される。Cold Fusionアプリケーション111は、ODBC(Open Database Connectivity)と呼ばれるインタフェースを介して、データベース管理システム110にアクセスすることができ、ODBCは、参照により内容が本明細書に組み込まれている、ColdFusion 5、Chapter 6で説明されるとおり、異なるデータベースシステム、および異なるフォーマットからの情報にアクセスするための標準のAPI(アプリケーションプログラミングインタフェース)である。
【００２３】
別の実施形態では、データは、テキスト、ファイル、および情報を操作する言語で書かれたプログラムを使用して入力されてもよい。例示的な言語は、参照により内容が本明細書に組み込まれている、「Programming Perl」、Larry Ward and Randal L.Schwartz、O'Reilly & Associates,Inc.,1992年3月において指定されるPERLである。
【００２４】
データベース110は、多くのコンピュータ106の間で格納されることが可能な分散データベースであっても、中央データベースであってもよい。データベース110は、リレーショナルデータベースまたは階層データベースを含め、任意のタイプであることが可能である。データベースおよびデータベース管理システムは、参照により内容が本明細書に組み込まれている、Database System Concepts、Henry F.Korth、Abraham Silberschatz、McGraw-Hill 1986、Chapter 1で説明されている。例示的なデータベース110には、Microsoft SQL(構造化照会言語)サーバ、Microsoft Access 1.0、2.0、および7.0、Microsoft FoxPro 2.0、2.5、および2.6、Oracle 7.0、Borland Paradox 3.Xおよび4.X、Borland dBase IIIおよびdBase IV、ならびにMicrosoft Excel 3.0、4.0、および5.0が含まれる。
【００２５】
一実施形態では、データは、SQL(構造化照会言語)を使用して、データベース110からの取得、挿入、更新、または削除が行われる。SQLは、参照により内容が本明細書に組み込まれている、「SAMS Teach Yourself SQL」、2nd Edition、Ben Fortaで説明されている。
【００２６】
本発明は、タグ102、センサ104、およびその他の場所から取得されたデータを管理する追加のコンポーネントを含むことが可能である。それらの追加のコンポーネントには、探索ツールが含まれることが可能である。一実施形態では、探索ツールは、Verityである。データは、1つまたは複数のコレクションに編成されることが可能である。次いで、Verityを使用して、コレクションにインデックスが付けられ、コレクションについてのメタデータが編集されて、Verityが、コレクションを迅速に探索することができるようになることが可能である。概念上、Verityの有用性は、コレクションについての情報にインデックスを付け、その情報を編集し、その情報を利用して、コレクションを迅速に探索することを、そうするように求められた際に行うことができるVerityの能力に起因する。探索およびクエリは、STEM、WORD、およびWILDCARDなどの概念演算子、NEARやPHRASEなどの近傍演算子、CONTAINS、MATCHES、STARTS、ENDS、およびSUBSTRINGなどの関係演算子、CASE、MANY、NOT、およびORDERなどの探索修飾子、ならびにYES NO、COMPLEMENT、PRODUCT、およびSUMなどのスコア演算子を含む、Verity演算子を使用して指定されることが可能である。探索フォームページおよび探索結果ページは、HTMLタグおよびCold Fusionタグを使用して定義されることが可能である。Verityを使用した、コレクションの作成および探索、ならびに探索結果の表示は、参照により内容が本明細書に組み込まれている、ColdFusion 5、Chapter 36で説明されている。Webブラウザソフトウェア108が、データ入力のための記入フォーム、探索条件の入力のための記入フォーム、および探索結果テキストデータを含む、サーバソフトウェア109からのWebページを表示することができる。また、本発明は、参照により内容が本明細書に組み込まれている、「RealServer Administration and Content Creation Guide」で説明されるRealServerなどの、オンデマンドのビデオ-オーディオストリーミングサーバを使用して、タグ102およびセンサ104によって入力されたオーディオデータおよびビデオデータを表示することもできる。
【００２７】
別の実施形態では、探索エンジンは、Alta Vista、Google、Yahoo、その他などの商業探索エンジンであってもよい。商業探索エンジンは、ColdFusion 5、Chapter 36で説明されるCold Fusionタグを使用して、本発明に組み込まれることが可能である。
【００２８】
探索を実行する前に、探索エンジンは、参照により内容が本明細書に組み込まれている、Database System Concepts、Henry F. Korth、Abraham Silberschatz、McGraw-Hill 1986、Chapter 9において指定されるとおり、クエリを最適化することができる。
【００２９】
図2は、任意の種類のオブジェクトに関連付けられたタグ102へのデータの格納を表すデータフロー図200である。データフロー図は、ノードがプロセスであり、アーク(arc)がデータフローであるグラフである。参照により内容が本明細書に組み込まれている、「Object Oriented Modeling and Design」、Rumbaugh, J.、Prentice Hall, Inc.(1991)、Chapter 1を参照されたい。データは、どのようなタイプのデータを、タグ102が受信すること、および/または送信することを許可されているかを定義したり、タグ102にデータを送信する、またはタグ102からデータを受信することができるコンポーネント(すなわち、他のタグ102、コンピュータ106、ブラウザソフトウェア108、サーバソフトウェア109、センサ104、その他)を識別することなどによって、タグ102の動作を支配する制御データから成ることが可能であり、タグ102内に格納するための情報から成ることが可能である。ステップ202で、タグ102は、データの受信を待つことが可能である。処理は、データが受信されると、ステップ204に進む。ステップ204で、タグ102は、データを受信することが可能であり、そのデータは、コンピュータ106、ブラウザソフトウェア108、サーバソフトウェア109、データベース110、センサ104、別のタグ102、タグ102自体、その他を含むが、以上には限定されない、任意のタイプのコンポーネントから送信されていることが可能である。ステップ206で、受信されたデータが、タグ102の中に格納されるのを許可されているか否かを判定する検査が行われることが可能である。ステップ206は、データの送信元が、タグ102において受信されたタイプのデータを格納する権限を有するかどうかを検査することを含むことが可能である。
【００３０】
検査は、暗号法、メッセージをセキュリティで保護された状態(secure)に保つ技術および科学(art and science)、イントラネット、VPN(仮想プライベートネットワーク)、その他を含む、他の任意のタイプのセキュリティで保護された通信を使用するものを含むが、以上には限定されない、様々な異なる技術によって実行されることが可能である。暗号法は、本明細書では、認証、整合性、および/または否認不可のために使用されることが可能である。認証は、メッセージの受信者が、メッセージの出所を確めることを可能にする。整合性は、メッセージの受信者が、メッセージが伝送中に変更されていないことを検証することを可能にする。否認不可は、メッセージの送信者が、送信者が実際にメッセージを送信したことを偽って否認するのを防ぐ。
【００３１】
一実施形態では、対称アルゴリズムが使用される。対称アルゴリズムでは、暗号化キーは、解読キーから計算され、その逆も同様である。キーは、通信を秘密に保つように秘密のままでなければならない。別の実施形態では、公開キーアルゴリズム(非対称アルゴリズムとも呼ばれる)が使用される。公開キーアルゴリズムでは、解読キーは、無理のない時間内に暗号化キーから計算されることが可能でない。暗号化キーは、公開され、公開キーと呼ばれる。解読キーは、秘密のままにされ、秘密キーと呼ばれる。別の実施形態では、デジタル署名が使用されることが可能である。デジタル署名では、メッセージは、送信者によって秘密キーを使用して暗号化されて、これにより、メッセージに署名が行われ、受信者によって公開キーを使用して解読されて、これにより、署名が検証される。例示的なデジタル署名アルゴリズムには、RSA(Rivest-Shamir-Adelman)、およびNIST(国立標準技術研究所)によって提案されるDSA(デジタル署名アルゴリズム)が含まれる。対称アルゴリズム、公開キーアルゴリズム、およびデジタル署名を含む暗号法は、参照により内容が本明細書に組み込まれている、Bruce Schneierによる「Applied Cryptography」、Chapter 1、2、19、および20で説明されている。
【００３２】
別の実施形態では、検査は、何らかの形態のパスワード検証によって行われることが可能である。
【００３３】
ステップ206における検査により、受信されたデータが、タグ102の中に格納されることが許可されていることが示された場合、処理は、ステップ208に進む。ステップ208で、データは、タグ102の中に格納される。ステップ208の後、処理は、ステップ202に進み、タグ102が、新たなデータの受信を待つ。ステップ206における検査により、受信されたデータが、タグ102の中に格納されることが許されていないことが示された場合、処理は、ステップ202に戻る。
【００３４】
図3は、タグ102からのデータの送信を表すデータフロー図300である。ステップ302で、タグ102が、要請なしにデータを送信すべきかどうか、送信すべき場合、どのようなタイプのデータを、タグ102が送信すべきかを判定する検査が実行される。これは、タグ102内の制御設定を調べることによって行われることが可能である。ステップ302における検査により、タグ102が、データを送信すべきであることが示された場合、処理は、ステップ304に進む。ステップ304で、その時点でデータが送信されるべきかどうかを判定する検査が実行される。この検査は、タグ102の中のクロックを所定の時間設定と比較することによって行われることが可能である。ステップ304における検査により、データが送信されるべきであることが示された場合、処理は、ステップ308に進む。そうではない場合、処理は、ステップ304に留まる。ステップ308で、データが、タグ102から送信される。ステップ308の後、処理は、ステップ302に戻る。
【００３５】
ステップ310で、タグ102は、データを求める要求を待つ。処理は、そのような要求が受信されるまで、ステップ310に留まり、受信された後、ステップ312に進む。ステップ312で、タグ102は、要求を受信することが可能であり、その要求は、クライアント106、サーバ108、データベース110、センサ104、別のタグ102、その他を含むが、以上には限定されない、任意のタイプのコンポーネントから送信されていることが可能である。ステップ312で、受信された要求が、タグ102において応答を受信することが許可されているか否かを判定する検査が行われることが可能である。ステップ312は、要求の送信元が、要求されたタイプのデータを受け取る権限を有するかどうかを検査することを含むことが可能である。検査は、前段で詳細に説明したとおり、暗号法を使用する技術を含む、様々な異なる技術によって実行されることが可能である。検査は、代替として、何らかの形態のパスワード検証によって行われてもよい。ステップ312における検査により、要求が、応答としてデータを受信することを許可されていることが示された場合、処理は、ステップ314に進む。ステップ314で、要求されたデータが、要求の送信元に送信される。ステップ314の後、処理は、ステップ310に進み、タグ102が、新たな要求の受信を待つ。ステップ312における検査により、要求が、応答としてデータを受信することを許されていないことが示された場合、処理は、ステップ310に戻る。
【００３６】
一実施形態では、タグ102の1つまたは複数、およびセンサ104の1つまたは複数のとサーバソフトウェア109の間の通信は、WAP(無線アプリケーションプロトコル)を使用して実行されることが可能であり、WAPは、参照により内容が組み込まれている、ColdFusion 5、Chapter 34で説明されている。
【００３７】
本発明は、多くの異なる用途を有することが可能である。例えば、本発明は、親によって、子供の活動を監視するのに使用されることが可能である。親は、タグ102を子供に物理的に取り付ける、または埋め込むことによるなど、任意の手段によってタグ102を子供に関連付けることができる。ブラウザソフトウェア108から、または他の場所から、親は、制御データを子供のタグ102に送信して、特定の人々に関連付けられた他のタグ102、一日中、子供の位置を明らかにするGPS(Global Positioning System)衛星などのセンサ104、または子供の周囲の空気または水の含有物(content)(すなわち、毒素)を明らかにする環境センサ104からのデータを、タグ102が受信すべきことを示すことができる。子供に付けられたタグ102は、親によって送信された制御情報を分析し、格納するために、図2の流れ図によって示される、タグ102の中にデータを格納するためのプロセスを実行する。後の時点で、親は、ブラウザソフトウェア108、または他の場所から1つまたは複数のクエリを送信して、子供と接触した人々の身元を知り、その日に子供が受け取った可能性がある教師からの試験の点数または通知、子供の周囲の空気または水の質、ならびに子供の動きを取得することができる。子供に関連付けられたタグ102は、親のクエリに応答するために、図3の流れ図によって示される、子供のタグ102からデータを送信するためのプロセスを実行する。
【００３８】
親は、別の例では、ブラウザソフトウェア108、または他の場所から、追加の制御データを子供のタグ102に送信して、タグ102からデータベース110にデータを定期的に送信するよう、子供のタグに命令してもよい。後の任意の時点で、親は、ブラウザソフトウェア108、または他の場所から、データベース110に1つまたは複数のクエリを送信して、子供について同一の情報を知ることができる。
【００３９】
図4aは、ブラウザソフトウェア108、または他の場所において親によって記入されて、子供のタグ102の動作を制御するサンプル記入フォーム400を示す。この記入フォームは、以下のフィールドの1つまたは複数を含むことが可能である。すなわち、  Authorized Components For Receipt Table 402、このフィールドは、子供のタグが、そのコンポーネントからのデータを受信することができるコンポーネント(すなわち、タグ、センサ、その他)を指定する。
【００４０】
Authorized Data For Receipt Table 404、このフィールドは、子供のタグ102が受信することができるデータのタイプ(すなわち、子供が接触するタグ102に関連する人々を識別するデータ、試験の点数、教師の通知、環境データ、位置データ、その他)を指定する。
【００４１】
Authorized Components For Transmission Table 406、このフィールドは、子供のタグがデータを送信することができるコンポーネント(すなわち、データベース110、その他)を指定する。
【００４２】
Authorized Data For Transmission 408、このフィールドは、子供のタグ102が送信することができるデータのタイプを指定する。
【００４３】
図4bは、ブラウザソフトウェア108、または他の場所において親によって記入されて、子供のタグ102から、またはデータベース110からデータが取得されるサンプル記入フォーム450を示す。この記入フォームは、以下のフィールドの1つまたは複数を含むことが可能である。すなわち、
Identification Query 452、このフィールドは、子供と接触した人や動物などの、タグが付けられたオブジェクトのアイデンティフィケーション(identification)を要求する。
【００４４】
Environmental Query 454、このフィールドは、子供が接触した水および空気の含有物(content)を要求する。
【００４５】
Performance Query 456、このフィールドは、子供の行動、学業成績、および運動成績に関するデータを要求する。
【００４６】
本発明は、高価な品目、スポーツ記念品、および証拠などのオブジェクトを真贋鑑定するのに使用されることが可能である。売り手が、タグ102を品目に物理的に取り付ける、または埋め込むことによるなど、任意の手段によって、ダイヤモンドまたは絵画などの高価な品目にタグ102を関連付けることができる。ブラウザソフトウェア108、または他の場所から、売り手は、制御データをオブジェクトのタグ102に送信して、他のタグ102に関連する人々を識別する他のタグ102、一日中、オブジェクトの位置を明らかにするGPS(Global Positioning System)衛星などのセンサ104、またはオブジェクトの周囲の空気または水の含有物(すなわち、毒素)を明らかにする環境センサ104からのデータを、タグ102が受け入れるべきことを示すことができる。オブジェクト上のタグ102は、売り手によって送信された制御情報を分析し、格納するために、図2の流れ図によって示される、タグ102の中にデータを格納するためのプロセスを実行する。後の時点で、売り手は、ブラウザソフトウェア108、または他の場所から1つまたは複数のクエリを送信して、オブジェクトを扱った人々の身元、オブジェクトの周囲の空気および水の品質、オブジェクトの動き、法的権利の連鎖(chain of title)、所有権の連鎖、ならびにオブジェクトの製造業者、小売業者、および流通業者の身元を知ることができる。オブジェクトに関連付けられたタグ102は、売り手のクエリに応答するために、図3の流れ図によって示される、オブジェクトのタグ102からデータを送信するためのプロセスを実行する。
【００４７】
売り手は、別の例では、ブラウザソフトウェア108、または他の場所から、追加の制御データをオブジェクトのタグ102に送信して、タグ102からデータベース110にデータを定期的に送信するよう、オブジェクトのタグ102に命令してもよい。後の任意の時点で、売り手は、ブラウザソフトウェア108、または他の場所から1つまたは複数のクエリをデータベース110に送信して、オブジェクトについての情報を知ることができる。
【００４８】
本発明の別の実施形態は、近傍追跡を実行する。その実施形態では、タグが、他のタグの範囲内に入ると、タグ内にイベントが記録されることが可能である。それらの記録されたイベントは、後にデータベースに送信されることが可能である。この実施形態は、別のオブジェクトの近傍に入ったオブジェクトを追跡するのに、一般的に使用されることが可能である。例えば、この実施形態を使用して、子供と接触した、または子供がいた場所に入った人々を追跡することができる。また、この実施形態を使用して、セキュリティで保護された施設内の位置に対するオブジェクトの動きを追跡することもできる。
【００４９】
一実施形態では、タグは、以下の1つまたは複数を含むことが可能である。すなわち、無線送信機、無線受信機、メモリ、制御ソフトウェア、プロセッサ、およびクロックである。メモリには、RAMおよびROMが含まれることが可能である。制御ソフトウェアは、ROMの中に格納されることが可能である。プロセッサは、より少ない電力を消費するタイプであることが可能である。
【００５０】
タグは、タグ識別子、タグ識別子マップ、および時刻フィールドを含む、1つまたは複数のデータ構造を含むことが可能である。タグ識別子は、255バイトまでの可変長の文字列であることが可能であり、タグを互いに区別するのに使用されることが可能である。タグ識別子マップは、タグ識別子を公開キーおよびカウンタにマップすることができる。一実施形態では、タグ識別子マップは、ハッシュテーブルを使用して実施される。別の実施形態では、タグ識別子は、バイナリ探索ツリーを使用して実施される。タグ識別子マップは、遭遇することが予期されるタグ、および/またはセンシティブ(sensitive)であるものと判定されるタグなどの、一部のタグの公開キーを使用して初期設定されることが可能である。このスキームは、タグが、無効な署名を有するタグからのメッセージを迅速に破棄することを可能にする。タグ識別子マップの中のエントリは、マップがいっぱいになった後、破棄されることが可能である。エントリは、FIFO(先入れ先出し)、LRU(最長不使用(least recently used))、その他などの任意の順序で破棄されることが可能である。時刻フィールドは、4バイトの符号なしの整数であることが可能であり、GMT(グリニッジ標準時)などの任意の形態で、現在時刻を含むことが可能である。
【００５１】
図5は、近傍検査に関するタグの一実施形態の動作を示すデータフロー図500である。タグは、ステップ502で割り込みを待つ。ステップ504で、割り込みのタイプが判定される。割り込みが、受信された割り込みであった場合、処理は、ステップ506に進む。ステップ506で、受信されたブロードキャストのプロトコル識別子が特定される。プロトコル識別子は、タグ識別子ブロードキャスト、タグ識別子マップブロードキャスト、その他などの異なるタイプであることが可能である。タグ識別子ブロードキャスト、中央権限(central authority)ブロードキャスト、およびタグ識別子マップブロードキャストの例示的なフォーマットが、図6a、図6b、および図6cにそれぞれ示されている。ブロードキャストは、ネットワークインタフェースレイヤにおいて無線ブロードキャストパケットの中にカプセル化されることが可能であり、複数バイトの値が、ビッグエンディアン(big endian)順で送信されることが可能である。署名は、RSA署名であることが可能である。タグ識別子ブロードキャストの中の署名は、タグ識別子と現在時刻フィールドにわたってとられることが可能である。中央権限ブロードキャストの中の署名は、現在時刻フィールドにわたってとられることが可能である。タグ識別子マップブロードキャストの中のプロトコル識別子を除くフィールドの1つまたは複数が、中央権限の公開キーを使用して暗号化されることが可能である。タグ識別子における署名は、現在時刻の後に続くフィールドの1つまたは複数にわたってとられることが可能である。
【００５２】
プロトコル識別子が、タグ識別子ブロードキャストである場合、処理は、ステップ508に進む。ステップ508で、タグ識別子ブロードキャストのタグ識別子が検査されて、その識別子が有効であるかどうかが判定される。識別子が有効ではない場合、そのブロードキャストは無視され、処理は、ステップ502に戻る。識別子が有効である場合、処理は、ステップ510に進む。ステップ510で、タグ識別子ブロードキャストの中の時刻が検査されて、その時刻が、現在時刻の1分以内にあるかどうかが判定される。1分以内にない場合、そのブロードキャストは、無視され、処理は、ステップ502に戻る。1分以内にある場合、処理は、ステップ512に進む。ステップ512で、タグ識別子ブロードキャストの中のタグ識別子が検査されて、その識別子が、タグ識別子マップの中に存在する(すなわち、タグが依然に遭遇している)かどうかが判定される。存在しない場合、処理は、ステップ514に進む。ステップ514で、タグ識別子マップの中で、そのタグ識別子に関する新たなエントリが作成され、そのエントリに関する遭遇の回数が、1に設定される。次に、処理は、ステップ502に進む。
【００５３】
ステップ512で、タグ識別子が、タグ識別子マップの中に存在すると判定された場合、処理は、ステップ516に進む。ステップ516で、タグ識別子ブロードキャストの中のタグ識別子が、公開キーを有するかどうかが判定される。公開キーを有する場合、処理は、ステップ518に進む。ステップ518で、その公開キーを使用して、署名が検証される。ステップ518における署名検証が成功しなかった場合、そのブロードキャストは、無視され、処理は、ステップ502に戻る。ステップ518における署名検証が成功であった場合、処理は、ステップ520に進む。ステップ520で、タグ識別子マップの中で、そのタグ識別子に関する遭遇の回数が増分される。
【００５４】
ステップ506で、プロトコル識別子が、中央権限ブロードキャストであると判定された場合、処理は、ステップ522に進む。ステップ522で、中央権限ブロードキャストの中の時刻が検査されて、その時刻が、現在時刻の1分以内にあるかどうかが判定される。1分以内にない場合、そのブロードキャストは、無視され、処理は、ステップ502に戻る。1分以内にある場合、処理は、ステップ524に進む。ステップ524で、中央権限の公開キーを使用して、中央権限ブロードキャストの中の署名が検証される。署名検証が成功しなかった場合、そのブロードキャストは、無視され、処理は、ステップ502に戻る。ステップ524における署名検証が成功であった場合、処理は、ステップ526に進む。ステップ526で、タグ識別子マップが、中央権限公開キーを使用して暗号化される。ステップ528で、暗号化されたタグ識別子マップが、ブロードキャストされる。次に、処理は、ステップ502に戻る。
【００５５】
ステップ504で、割り込みが、タイマ割り込みであると判定された場合、処理は、ステップ530に進む。一実施形態では、タイマ割り込みは、15秒ごとに生じる。ステップ530で、タグの秘密キーを使用して署名が作成される。ステップ532で、署名、タグ識別子、および現在時刻が、タグ識別子ブロードキャストに書き込まれる。ステップ534で、タグ識別子ブロードキャストが、ブロードキャストされる。次に、処理は、ステップ502に戻る。
【００５６】
図5の実施形態は、いくつかの利点を有する。署名により、事前登録されたタグで本物のタグを変造することが不可能になる。反復攻撃が、タイムスタンプによってブロックされる。
【００５７】
秘密キーが、セキュリティで保護されることが可能であり、中央権限が、セキュリティで保護された場所にあることが可能であり、タグが、改ざん防止型(tamper-resistant)であることが可能である。以上のオプションにより、あるタグが、別のタグとの接触を否認することが防止される。置き換え対策を使用して、偽りのタグ識別子をブロードキャストすることによってタグ識別子マップを溢れさせようとする試みが防止されることが可能である。別の実施形態では、グローバル公開キー/秘密キーペアを使用して、ブロードキャストが検証されてもよい。
【００５８】
本発明の別の実施形態は、タグが、他の1つまたは複数のタグの特定の範囲外に行った場合、所定の時間内にアラームを鳴らす。一実施形態では、範囲は、相互送信/受信範囲である。一実施形態では、所定の時間は、60秒間である。一方のタグは、セキュリティで保護された区域を離れてはならないセンシティブなオブジェクトに物理的に取り付けられることが可能である。他方のタグは、床または天井などのセキュリティで保護された動かない場所に組み込まれても、権限を付与されたスタッフ(authorized personnel)によって担持されてもよい。一実施形態では、プロトコルは、タグを有効（イネーブル）、および無効（ディセーブル）にすることを行って、オブジェクトが、権限を付与された関係者によって取り除かれることが可能であるようにする。
【００５９】
この実施形態を使用して、セキュリティで保護された施設の外に出るオブジェクトの動きについてセキュリティスタッフに警報する、倉庫からの在庫の盗難について従業員に警報する、ある区域の外に迷い出る子供について親またはデイケアプロバイダ(day-care provider)に警報する、オートバイの盗難について、または自宅からの高価なオブジェクトの盗難について個人に警報する、ゲストによる退去(abandonment)について、セキュリティで保護された施設内の付添人に警報する、刑務所からの犯罪者の脱走、または自宅監禁されている犯罪者に関する家からの脱走について当局に警報することなどができる。
【００６０】
一実施形態では、タグは、以下の1つまたは複数を含むことが可能である。すなわち、無線送信機、無線受信機、メモリ、制御ソフトウェア、プロセッサ、クロック、および可聴アラームである。メモリには、RAMおよびROMが含まれることが可能である。制御ソフトウェアは、ROMの中に格納されることが可能である。プロセッサは、より少ない電力を消費するタイプであることが可能である。
【００６１】
タグは、タグ識別子、パートナタグのタグ識別子、タグに関する秘密キー、パートナタグに関する公開キー、制御権限の公開キー、アラームカウンタ、イネーブルフラグ、および時刻フィールドを含む、1つまたは複数のデータ構造を含むことが可能である。タグ識別子は、255バイトまでの可変長の文字列であることが可能であり、タグを互いに区別するのに使用されることが可能である。パートナタグのタグ識別子は、255バイトまでの可変長の文字列であることが可能である。秘密キーおよび公開キーは、16バイトであることが可能である。アラームカウンタは、4バイトであることが可能である。イネーブルフラグは、4バイトであることが可能である。時刻フィールドは、4バイトの符号のない整数であることが可能であり、GMT(グリニッジ標準時)などの任意の形態で、現在時刻を含むことが可能である。
【００６２】
図7は、近傍範囲外アラームに関するタグの一実施形態の動作を示すデータフロー図700である。タグは、ステップ702で割り込みを待つ。ステップ704で、割り込みのタイプが特定される。割り込みが、受信された割り込みであった場合、処理は、ステップ706に進む。ステップ706で、受信されたブロードキャストのプロトコル識別子が特定される。プロトコル識別子は、タグ識別子ブロードキャスト、制御権限ブロードキャスト(制御権限イネーブルおよび制御権限ディセーブルを含む)、その他などの、異なるタイプであることが可能である。タグ識別子ブロードキャスト、制御権限イネーブル、および制御権限ディセーブルの例示的なフォーマットが、図8a、図8b、および図8cにそれぞれ示されている。ブロードキャストは、ネットワークインタフェースレイヤにおいて無線ブロードキャストパケットの中にカプセル化されることが可能であり、複数バイトの値が、ビッグエンディアン順で送信されることが可能である。タグ識別子ブロードキャストの中の署名は、タグ識別子と現在時刻フィールドにわたってとられることが可能である。制御権限ブロードキャストの中の署名は、現在時刻フィールドにわたってとられることが可能である。署名は、RSA署名であることが可能である。
【００６３】
プロトコル識別子が、タグ識別子ブロードキャストであった場合、処理は、ステップ708に進む。ステップ708で、タグ識別子ブロードキャストのタグ識別子が検査されて、その識別子が有効であるかどうかが判定される。識別子が有効ではなかった場合、そのブロードキャストは、無視され、処理は、ステップ702に戻る。有効であった場合、処理は、ステップ710に進む。ステップ710で、タグ識別子ブロードキャストの中の時刻が検査されて、その時刻が、現在時刻の1分以内にあるかどうかが判定される。1分以内にない場合、そのブロードキャストは、無視され、処理は、ステップ702に戻る。1分以内にある場合、処理は、ステップ712に進む。ステップ712で、パートナタグの公開キーを使用して、タグ識別子ブロードキャストの中の署名が検証されることが可能である。ステップ712における署名検証が成功しなかった場合、そのブロードキャストは、無視され、処理は、ステップ702に戻る。ステップ712における署名検証が成功であった場合、処理は、ステップ714に進む。ステップ714で、アラームカウンタが、0にリセットされる。
【００６４】
ステップ706で、プロトコル識別子が、制御権限イネーブルブロードキャストであると判定された場合、処理は、ステップ716に進む。ステップ716で、制御権限イネーブルブロードキャストの中の時刻が検査されて、その時刻が、現在時刻の1分以内にあるかどうかが判定される。1分以内にない場合、そのブロードキャストは、無視され、処理は、ステップ702に戻る。1分以内にある場合、処理は、ステップ718に進む。ステップ718で、制御権限の公開キーを使用して、制御権限イネーブルブロードキャストの中の署名が検証される。署名検証が成功しなかった場合、そのブロードキャストは、無視され、処理は、ステップ702に戻る。ステップ718における署名検証が成功であった場合、処理は、ステップ720に進む。ステップ720で、イネーブルフラグが、1に設定される。次に、処理は、ステップ702に戻る。
【００６５】
ステップ706で、プロトコル識別子が、制御権限ディセーブルブロードキャストであると判定された場合、処理は、ステップ722に進む。ステップ722で、制御権限ディセーブルブロードキャストの中の時刻が検査されて、その時刻が、現在時刻の1分以内にあるかどうかが判定される。1分以内にない場合、そのブロードキャストは、無視され、処理は、ステップ702に戻る。1分以内にある場合、処理は、ステップ724に進む。ステップ724で、制御権限の公開キーを使用して、制御権限イネーブルブロードキャストの中の署名が検証される。署名検証が成功しなかった場合、そのブロードキャストは、無視され、処理は、ステップ702に戻る。ステップ724における署名検証が成功であった場合、処理は、ステップ726に進む。ステップ726で、イネーブルフラグが、0に設定される。次に、処理は、ステップ702に戻る。
【００６６】
ステップ704で、割り込みが、タイマ割り込みであると判定された場合、処理は、ステップ728に進む。一実施形態では、タイマ割り込みは、6秒ごとに生じる。ステップ728で、イネーブルフラグが、アラームカウンタに追加される。ステップ730で、アラームカウンタが検査されて、カウンタが限度を超えているかどうかが判定される。一実施形態では、限度は、10秒であることが可能である。アラームカウンタが、限度を超えている場合、処理は、ステップ732に進む。ステップ732で、タグが、アラームを鳴らす。次に、処理は、ステップ702に進む。
【００６７】
ステップ730で、アラームカウンタが限度以下であると判定された場合、処理は、ステップ734に進む。ステップ734で、タグの秘密キーを使用して署名が作成される。一実施形態では、署名は、パートナのタグ識別子と現在時刻にわたってとられる。ステップ736で、署名、プロトコル識別子、パートナのタグ識別子、および現在時刻が、タグ識別子ブロードキャストに書き込まれる。ステップ738で、タグ識別子ブロードキャストが、ブロードキャストされる。次に、処理は、ステップ702に戻る。
【００６８】
図7の実施形態は、多くの利点を有する。署名により、偽のパートナタグによって本物のタグを変造することが不可能になる。また、署名により、偽の制御権限が、タグを無効にすることも不可能になる。反復攻撃が、タイムスタンプによってブロックされる。タグを破壊することにより、パートナタグのアラームが鳴らされる。
【００６９】
本発明の別の実施形態は、タグが、他の1つまたは複数のタグの特定の範囲内に入った場合、アラームを鳴らす。各タグは、そのタグのアラームが鳴るようにさせる、そのような他のタグのセンシティブタグリスト(sensitive tag list)を保持することができる。一実施形態では、範囲は、相互送信/受信範囲である。一方のタグは、セキュリティで保護された区域に入ってはならないセンシティブなオブジェクトに物理的に取り付けられることが可能である。他方のタグは、床または天井などのセキュリティで保護された動かない場所に組み込まれても、権限を付与されたスタッフによって担持されてもよい。この実施形態は、センシティブタグリストにタグを追加するため、およびリストからタグを削除するためのプロトコルを含むことが可能である。
【００７０】
この実施形態を使用して、センシティブな施設の中への危険なオブジェクト、または有害なオブジェクトなどのオブジェクトの移動についてセキュリティスタッフに警報すること、倉庫の出口近くに運ばれている在庫について従業員に警報すること、危険な区域、または指定された人物に向かう子供の動きについて、親または保育プロバイダに警報すること、有害な区域に近づいている歩行者に警告すること、危険状況(hazardous condition)に近づいているオートバイ運転者に警告すること、立ち入り制限区域に入ってくる、または近づいている訪問者についてセキュリティスタッフに警報することなどができる。
【００７１】
一実施形態では、タグは、以下の1つまたは複数を含むことが可能である。すなわち、無線送信機、無線受信機、メモリ、制御ソフトウェア、プロセッサ、クロック、および可聴アラームである。メモリには、RAMおよびROMが含まれることが可能である。制御ソフトウェアは、ROMの中に格納されることが可能である。プロセッサは、より少ない電力を消費するタイプであることが可能である。
【００７２】
タグは、タグ識別子、タグに関する秘密キー、制御権限の公開キー、タグ識別子マップ、および時刻フィールドを含む、1つまたは複数のデータ構造を含むことが可能である。タグ識別子は、255バイトまでの可変長の文字列であることが可能であり、タグを互いに区別するのに使用されることが可能である。秘密キーおよび公開キーは、16バイトであることが可能である。タグ識別子マップは、センシティブタグ識別子を公開キーにマップすることが可能である。タグ識別子マップは、ハッシュテーブルまたはバイナリ探索ツリーによって実施されることが可能である。タグ識別子マップの中のエントリは、タグ識別子マップがいっぱいになった場合、最長不使用順(least-recently used order)で有効期限が切れることが可能である。時刻フィールドは、4バイトの符号なしの整数であることが可能であり、GMT(グリニッジ標準時)などの任意の形態で、現在時刻を含むことが可能である。
【００７３】
図9は、対称近傍アラームに関するタグの一実施形態の動作を示すデータフロー図900である。タグは、ステップ902で割り込みを待つ。ステップ904で、割り込みのタイプが特定される。割り込みが、受信された割り込みであった場合、処理は、ステップ906に進む。ステップ906で、受信されたブロードキャストのプロトコル識別子が特定される。プロトコル識別子は、タグ識別子ブロードキャスト、制御権限追加タグブロードキャスト、制御権限削除タグブロードキャスト、その他などの異なるタイプであることが可能である。タグ識別子ブロードキャスト、制御権限追加タグブロードキャスト、および制御権限削除タグブロードキャストの例示的なフォーマットが、図10a、図10b、および図10cにそれぞれ示されている。ブロードキャストは、ネットワークインタフェースレイヤにおいて無線ブロードキャストパケットの中にカプセル化されることが可能であり、複数バイトの値が、ビッグエンディアン順で送信されることが可能である。署名は、RSA署名であることが可能である。タグ識別子ブロードキャストの中の署名は、タグ識別子と現在時刻フィールドにわたってとられることが可能である。制御権限追加タグブロードキャストの中の署名は、目標タグ識別子、センシティブタグ識別子、センシティブタグ公開キー、および現在時刻フィールドにわたってとられることが可能である。制御権限削除タグブロードキャストの中の署名は、目標タグ識別子、センシティブタグ識別子、および現在時刻フィールドにわたってとられることが可能である。
【００７４】
プロトコル識別子が、タグ識別子ブロードキャストであった場合、処理は、ステップ908に進む。ステップ908で、タグ識別子ブロードキャストのタグ識別子が検査されて、その識別子が、タグのセンシティブタグリストに入っているかどうかが判定される。識別子が、センシティブタグリストに入っていない場合、そのブロードキャストは、無視され、処理は、ステップ902に戻る。識別子が、センシティブタグリストに入っている場合、処理は、ステップ910に進む。ステップ910で、タグ識別子ブロードキャストの中の時刻が検査されて、その時刻が、現在時刻の1分以内にあるかどうかが判定される。1分以内にない場合、そのブロードキャストは、無視され、処理は、ステップ902に戻る。1分以内にある場合、処理は、ステップ912に進む。ステップ912で、タグ識別子ブロードキャストの中のタグ識別子の公開キーを使用して、タグ識別子ブロードキャストの中の署名が検証されることが可能である。ステップ912における署名検証が成功しなかった場合、そのブロードキャストは、無視され、処理は、ステップ902に戻る。ステップ912における署名検証が成功であった場合、処理は、ステップ914に進む。ステップ914で、アラームが鳴る。
【００７５】
ステップ906で、プロトコル識別子が、制御権限追加タグブロードキャストであると判定された場合、処理は、ステップ916に進む。ステップ916で、目標タグ識別子が検査されて、その信号が、ブロードキャストを受信するタグのタグ識別子と一致するかどうかが判定される。一致が存在しない場合、そのブロードキャストは、無視され、処理は、ステップ902に戻る。一致が存在する場合、処理は、ステップ918に進む。ステップ918で、制御権限追加タグブロードキャストの中の時刻が検査されて、その時刻が、現在時刻の1分以内にあるかどうかが判定される。1分以内にない場合、そのブロードキャストは、無視され、処理は、ステップ902に戻る。1分以内にある場合、処理は、ステップ920に進む。ステップ920で、制御権限の公開キーを使用して、制御権限追加タグブロードキャストの中の署名が検証される。署名検証が成功しなかった場合、そのブロードキャストは、無視され、処理は、ステップ902に戻る。ステップ920における署名検証が成功であった場合、処理は、ステップ922に進む。ステップ922で、制御権限追加タグブロードキャストの中のセンシティブタグ識別子、およびその識別子の公開キーが、タグ識別子マップの中に格納される。次に、処理は、ステップ902に戻る。
【００７６】
ステップ906で、プロトコル識別子が、制御権限削除タグブロードキャストであると判定された場合、処理は、ステップ924に進む。ステップ924で、目標タグ識別子が検査されて、その識別子が、ブロードキャストを受信するタグのタグ識別子と一致するかどうかが判定される。一致が存在しない場合、そのブロードキャストは、無視され、処理は、ステップ902に戻る。一致が存在する場合、処理は、ステップ926に進む。ステップ926で、制御権限削除タグブロードキャストの中の時刻が検査されて、その時刻が、現在時刻の1分以内にあるかどうかが判定される。1分以内にない場合、そのブロードキャストは、無視され、処理は、ステップ902に戻る。1分以内にある場合、処理は、ステップ928に進む。ステップ928で、制御権限の公開キーを使用して、制御権限削除タグブロードキャストの中の署名が検証される。署名検証が成功しなかった場合、そのブロードキャストは、無視され、処理は、ステップ902に戻る。ステップ928における署名検証が成功であった場合、処理は、ステップ930に進む。ステップ930で、制御権限削除タグブロードキャストの中のセンシティブタグ識別子、およびその識別子の公開キーが、タグ識別子マップから削除される。次に、処理は、ステップ902に戻る。
【００７７】
ステップ904で、割り込みが、タイマ割り込みであると判定された場合、処理は、ステップ932に進む。一実施形態では、タイマ割り込みは、15秒ごとに生じる。ステップ932で、タグの秘密キーを使用して署名が作成される。一実施形態では、署名は、タグ識別子と現在時刻にわたってとられる。ステップ934で、署名、プロトコル識別子、タグ識別子、および現在時刻が、タグ識別子ブロードキャストに書き込まれる。ステップ936で、タグ識別子ブロードキャストが、ブロードキャストされる。次に、処理は、ステップ902に戻る。
【００７８】
図9の実施形態は、多くの利点を有する。署名により、偽のセンシティブタグで本物のタグを変造することが不可能になる。また、署名により、偽の制御権限が、タグを追加する、または削除することも不可能になる。反復攻撃が、タイムスタンプによってブロックされる。タグは、改ざん防止型であるようにされて、物理的な破壊または取り外しに対するタグの脆弱性が低くされることが可能である。
【００７９】
以上の発明は、一部の好ましい実施形態に関連して説明してきたが、本発明の範囲は、それらの実施形態に限定されない。当業者は、添付の特許請求の範囲によって範囲が定義される、やはり、本発明の精神に含まれる、それらの好ましい実施形態の変形形態を見出すことができる。
【図１】
0005538206.tif 000002
【図２】
0005538206.tif 000003
【図３】
0005538206.tif 000004
【図４】
0005538206.tif 000005
【図５】
0005538206.tif 000006
【図６】
0005538206.tif 000007
【図７】
0005538206.tif 000008
【図８】
0005538206.tif 000009
【図９】
0005538206.tif 000010
【図１０】
0005538206.tif 000011