(57)【特許請求の範囲】
【請求項１】
保護されているデータストアから保護されているデータをコンピュータによって検索する方法であって、
前記コンピュータによって、アクセス情報を受領する段階と、
前記コンピュータによって、前記アクセス情報のタイプ独立部分をハッシュ化し、ハッシュ化された結果を生成する段階と、
前記コンピュータによって、前記ハッシュ化された結果がルックアップテーブル内に存在しているかどうかを判定する段階と、を有し、
前記ハッシュ化された結果が前記ルックアップテーブル内に存在しているという判定に応答して、
前記コンピュータによって、前記アクセス情報のタイプ依存部分を標準化する段階と、
前記コンピュータによって、前記標準化された前記アクセス情報のタイプ依存部分を前記アクセス情報の前記タイプ独立部分と組み合わせる段階と、
前記コンピュータによって、前記組み合わせる段階の結果をハッシュ化し、組み合わされ且つハッシュ化された結果を取得する段階と、
前記コンピュータによって、前記組み合わされ且つハッシュ化された結果が転居テーブル内に存在しているかどうかを判定する段階と、
を有することを特徴とする方法。
【請求項２】
前記組み合わされ且つハッシュ化された結果が前記転居テーブル内に存在しているという判定に応答して、前記コンピュータによって、前記保護されているデータストアから前記保護されているデータを表す値を検索する段階を更に有する請求項１記載の方法。
【請求項３】
前記ルックアップテーブルは、前記アクセス情報の第１のタイプと関連付けられており、前記方法は、前記ハッシュ化された結果が前記ルックアップテーブル内に存在していないという判定に応答して、前記コンピュータによって、前記ハッシュ化された結果が前記アクセス情報の第２のタイプに関連付けられた第２のルックアップテーブル内に存在するかどうかを判定する段階を更に有する請求項１記載の方法。
【請求項４】
前記組み合わされ且つハッシュ化された結果が前記転居テーブル内に存在していないという判定に応答して、
前記コンピュータによって、前記アクセス情報のタイプ依存部分の並べ替えを実行して、並べ替えられたアクセス情報のタイプ依存部分を生成する段階と、
前記コンピュータによって、前記並べ替えられたアクセス情報のタイプ依存部分を前記アクセス情報のタイプ独立部分と組み合わせる段階と、
前記コンピュータによって、前記組み合わせる段階の結果をハッシュ化し、並べ替えられ、組み合わされ且つハッシュ化された結果を取得する段階と、
前記コンピュータによって、前記並べ替えられ、組み合わされ且つハッシュ化された結果が前記ルックアップテーブル内に存在しているかどうかを判定する段階と、
を更に有する請求項１記載の方法。
【請求項５】
前記並べ替えを実行する段階は、
前記アクセス情報のタイプ依存部分の個々の構成要素を解析する段階と、
前記個々の構成要素の一般的な綴りの誤りの一つ又は発音が類似した変形に対するファジーロジック例外を有する類似の発音を用いて、前記並べ替えられたアクセス情報のタイプ依存部分を生成する段階と、を有する請求項４記載の方法。
【請求項６】
前記アクセス情報のタイプ依存部分は、エンティティの名称であり、前記並べ替えを実行する段階は、ニックネームを用いて、前記並べ替えられたアクセス情報のタイプ依存部分を生成する段階と、を有する請求項４記載の方法。
【請求項７】
前記アクセス情報のタイプ独立部分は、エンティティの古い郵便住所であり、前記アクセス情報のタイプ依存部分は、エンティティの名称である請求項１記載の方法。
【請求項８】
前記ルックアップテーブルは、事業所エンティティに対応するエントリを格納しており、前記方法は、前記ハッシュ化された結果が前記ルックアップテーブル内に存在していないという判定に応答して、前記コンピュータによって、前記名称及び前記古い郵便住所を個人のものであると推定する段階を更に有する請求項７記載の方法。
【請求項９】
プログラム命令を実行するプロセッサと、前記プロセッサに接続され、プログラム命令及びデータを保存するメモリと、を有するコンピュータシステムであって、
前記プログラム命令は、
アクセス情報を受領する段階と、
前記アクセス情報のタイプ独立部分をハッシュ化し、ハッシュ化された結果を生成する段階と、
前記ハッシュ化された結果がルックアップテーブル内に存在しているかどうかを判定する段階と、を有し、
前記ハッシュ化された結果が前記ルックアップテーブル内に存在しているという判定に応答して、
前記アクセス情報のタイプ依存部分を標準化する段階と、
前記標準化された前記アクセス情報のタイプ依存部分を前記アクセス情報の前記タイプ独立部分と組み合わせる段階と、
前記組み合わせる段階の結果をハッシュ化し、組み合わされ且つハッシュ化された結果を取得する段階と、
前記組み合わされ且つハッシュ化された結果が転居テーブル内に存在しているかどうかを判定する段階と、
を前記プロセッサによって実行させるプログラム命令を有することを特徴とするコンピュータシステム。
【請求項１０】
前記プログラム命令は、前記組み合わされ且つハッシュ化された結果が前記転居テーブル内に存在しているという判定に応答し、前記保護されているデータストアから前記保護されているデータを表す値を検索する段階を前記プロセッサによって更に実行させる請求項９記載のコンピュータシステム。
【請求項１１】
前記ルックアップテーブルは、前記アクセス情報の第１のタイプと関連付けられており、前記プログラム命令は、前記ハッシュ化された結果が前記ルックアップテーブル内に存在していないという判定に応答し、前記ハッシュ化された結果が前記アクセス情報の第２のタイプに関連付けられた第２のルックアップテーブル内に存在するかどうかを判定する段階を前記プロセッサによって更に実行させる請求項９記載のコンピュータシステム。
【請求項１２】
前記プログラム命令は、
前記組み合わされ且つハッシュ化された結果が前記転居テーブル内に存在していないという判定に応答して、
前記アクセス情報のタイプ依存部分の並べ替えを実行して、並べ替えられたアクセス情報のタイプ依存部分を生成する段階と、
前記並べ替えられたアクセス情報のタイプ依存部分を前記アクセス情報のタイプ独立部分と組み合わせる段階と、
前記組み合わせる段階の結果をハッシュ化し、並べ替えられ、組み合わされ且つハッシュ化された結果を取得する段階と、
前記並べ替えられ、組み合わされ且つハッシュ化された結果が前記ルックアップテーブル内に存在しているかどうかを判定する段階と、
を前記プロセッサによって更に実行させる請求項９記載のコンピュータシステム。
【請求項１３】
前記並べ替えを実行する段階を実行するプログラム命令は、
前記アクセス情報のタイプ依存部分の個々の構成要素を解析する段階と、
前記個々の構成要素の一般的な綴りの誤りの一つ又は発音が類似した変形に対するファジーロジック例外を有する類似の発音を用いて、前記並べ替えられたアクセス情報のタイプ依存部分を生成する段階と、を有する請求項１２記載のコンピュータシステム。
【請求項１４】
前記アクセス情報のタイプ依存部分は、エンティティの名称であり、前記並べ替えを実行する段階は、ニックネームを用いて、並べ替えられたアクセス情報のタイプ依存部分を生成する段階と、を有する請求項１２記載のコンピュータシステム。
【請求項１５】
前記アクセス情報のタイプ独立部分は、エンティティの古い郵便住所であり、前記アクセス情報のタイプ依存部分は、エンティティの名称である請求項９記載のコンピュータシステム。
【請求項１６】
前記ルックアップテーブルは、事業所エンティティに対応するエントリを格納しており、前記プログラム命令は、前記プロセッサによって、前記ハッシュ化された結果が前記ルックアップテーブル内に存在していないという判定に応答して、前記名称及び前記古い郵便住所を個人のものであると推定する段階を更に有する請求項１５記載のコンピュータシステム。
【請求項１７】
汎用コンピュータシステム内において実行するべくプログラム命令を有するコンピュータプログラムであって、
前記プログラム命令は、
アクセス情報を受領する段階と、
前記アクセス情報のタイプ独立部分をハッシュ化し、ハッシュ化された結果を生成する段階と、
前記ハッシュ化された結果がルックアップテーブル内に存在しているかどうかを判定する段階と、を有し、
前記ハッシュ化された結果が前記ルックアップテーブル内に存在しているという判定に応答して、
前記アクセス情報のタイプ依存部分を標準化する段階と、
前記標準化された前記アクセス情報のタイプ依存部分を前記アクセス情報の前記タイプ独立部分と組み合わせる段階と、
前記組み合わせる段階の結果をハッシュ化し、組み合わされ且つハッシュ化された結果を取得する段階と、
前記組み合わされ且つハッシュ化された結果が転居テーブル内に存在しているかどうかを判定する段階と、
を有する方法を実行することを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願）
本出願は、２００２年９月６日付けで出願された米国仮特許出願第６０／４０９，２６２号に対する米国法典第３５編１１９条（ｅ）に基づく優先権を主張するものであり、２００３年２月２８日付けで出願された「ＭＥＴＨＯＤ  ＡＮＤ  ＳＹＳＴＥＭ  ＦＯＲ  ＳＴＯＲＩＮＧ  ＡＮＤ  ＲＥＴＲＩＥＶＩＮＧ  ＤＡＴＡ  ＵＳＩＮＧ  ＨＡＳＨ−ＡＣＣＥＳＥＤ  ＭＵＬＴＩＰＬＥ  ＤＡＴＡ  ＳＴＯＲＥＳ」という名称の同時係属中の米国特許出願第１０／３７７，９８９号の一部継続である（尚、この明細書は、本引用により、本明細書に包含される）。又、本出願は、係属中の２００２年１２月１２日付けで出願された「ＳＹＳＴＥＭ  ＡＮＤ  ＭＥＴＨＯＤ  ＦＯＲ  ＳＴＡＮＤＡＲＤＩＺＩＮＧ  Ａ  ＭＡＩＬＩＮＧ  ＡＤＤＲＥＳＳ」という名称の米国特許出願、２００３年３月６日付けで出願された「Ａ  ＭＥＴＨＯＤ  ＦＯＲ  ＣＯＲＲＥＣＴＩＮＧ  Ａ  ＭＡＩＬＩＮＧ  ＡＤＤＲＥＳＳ」という名称の米国特許出願第１０／３８４，９１５号、及び２００３年３月２０日付けで出願された「ＤＥＬＩＶＥＲＹ  ＰＯＩＮＴ  ＶＡＬＩＤＡＴＩＯＮ  ＳＹＳＴＥＭ」という名称の米国特許出願第１０／３４４，９９０号にも関係するものであり、これらすべての明細書は、本引用により、本明細書に包含される。
【０００２】
本発明は、一般に、安全なデータベースデータの検索に関するものであり、更に詳しくは、事前処理が施されたアクセス情報により、保護されているデータベースからデータを効率的に検索する方法及びシステムに関するものである。具体的には、本発明は、標準化されていない名称及び古い住所の入力の並べ替えに応答して、民営化された郵便住所データベースから新しい郵便住所を検索する方法及びシステムに関するものである。
【背景技術】
【０００３】
郵便住所情報のプライバシーは、米国郵便庁（Ｕｎｉｔｅｄ  Ｓｔａｔｅｓ  Ｐｏｓｔａｌ  Ｓｅｒｖｉｃｅ：ＵＳＰＳ）やその他の者による住所リストの提供を防止する米国法典第３９編４１２条や、意図する目的以外のプライベート情報の漏洩を防止する米国法典第５編５５２条（ａ）などの法律によって保護されている。従って、ＵＳＰＳは、郵便住所データベース情報などの機密データを所有するべく選定された委任代理人を監督しなければならない。具体的には、ＵＳＰＳ及び代理人は、郵便住所のリストを提供してはならない。又、一人の人物の住所変更情報を検索する際に、その他の人物の名称及び住所情報を漏洩してはならない。
【０００４】
前述の包含された親出願である「ＭＥＴＨＯＤ  ＡＮＤ  ＳＹＳＴＥＭ  ＦＯＲ  ＳＴＯＲＩＮＧ  ＡＮＤ  ＲＥＴＲＩＥＶＩＮＧ  ＤＡＴＡ  ＵＳＩＮＧ  ＨＡＳＨ−ＡＣＣＥＳＳＥＤ  ＭＵＬＴＩＰＬＥ  ＤＡＴＡ  ＳＴＯＲＥＳ」は、住所情報を格納可能であると共に、ＵＳＰＳが監督している代理人ではないベンダに対して配布可能な保護されているデータストアを提供している。しかしながら、この引用した特許出願に記述されている方法及びシステムを使用するためには、データストア内に配置されている情報を検索できるように、アクセス情報を標準化しフィルタリングしなければならない（事前処理を施さなければならない）。この引用した特許出願においては、データストアに対するアクセスと関連住所情報の検索に使用する１１桁のＤＰＣ（Ｄｅｌｉｖｅｒｙ  Ｐｏｉｎｔ  Ｃｏｄｅ）を取得する一定レベルの事前処理について記述しており、住所情報にアクセスするためには、ユーザー入力や、その他のデータストア内のレコードなどのその他のデータ入力から、このＤＰＣを取得可能でなければならない。
【０００５】
しかしながら、保存されているデータ、ユーザー入力、及び事業所又は個人の名称に対応するその他の供給源から提供されるアクセス情報は、一様なものではなく、誤りを含んでいる可能性がある。例えば、ＡＢＣコンピュータと呼ばれている「ＡＢＣ，  Ｉｎｃ．」の住所をユーザーが確認する際に、有効な古い住所との関連で提供する有効な識別子としては、「Ａｌｂｕｑｕｅｒｑｕｅ  Ｃｏｍｐｕｔｅｒｓ，  Ｉｎｃ．」、「ＡＢＣ  Ｃｏｍｐｕｔｅｒｓ」、「ＡＢＱ  Ｃｏｍｐｕｔｅｒｓ」、「ＡＢＣ，  Ｉｎｃ．」など、その要求されている新しい郵便住所情報に対するアクセスを提供するであろう多数のその他の並び替えが存在し得る。又、個人の住所を確認する場合にも、正しい名称の有効な変形のために、その要求されている郵便住所情報に対するアクセスを提供するであろう多数の並べ替えが存在する可能性がある。
【０００６】
しかしながら、一般的なソフトウェアアプリケーションの場合には、このようなアクセス情報の並べ替えを処理するには、それらの並べ替えをマッチングすると共に特定の入力が対応しているエンティティのタイプ（事業所又は個人）を判定するために、必要なアクセス情報を含んでいる必要があろう。しかし、前述のデータストアシステム内に、このような情報を組み込めば、それらのシステムが提供しているセキュリティが危険に晒されることになってしまう。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
従って、提供されたアクセス情報に対して安全な事前処理を施すと共にアクセス情報入力の並び替えに応答した住所情報の効率的な検索を提供する保護されているデータストアから情報を検索する方法及びシステムを提供することが望ましい。
【課題を解決するための手段】
【０００８】
安全な事前処理をアクセス情報に対して施すことにより、保護されているデータストアから効率的に情報を検索するという前述の目的は、データを検索する方法及びシステムとして実現される。又、この方法は、汎用又はワークステーションコンピュータシステム上において、この方法の諸段階を実行するコンピュータ可読プログラム命令を格納するコンピュータプログラムプロダクト及びシステムとしても実施可能である。
【０００９】
このデータ検索方法においては、エンティティの名称及び古い郵便住所などのアクセス情報の入力を受領する。そして、このアクセス情報の非タイプ依存部分を抽出し、この非タイプ依存部分をハッシュ化して１つ又は複数のルックアップテーブルに対するアクセスキーを提供することにより、このアクセス情報に対して事前処理を施す。この結果、これらのルックアップテーブル内における存在により、そのアクセス情報に対応するエントリの存在／非存在が検証され、タイプ（例：事業所又は個人）によるアクセス情報の分類が可能となる。そして、エントリが検出された場合には、アクセス情報のタイプ依存部分に事前処理を施して非タイプ依存部分を標準化するが（例：事業所の名称又は個人の名称を標準化する）、この事前処理は、そのアクセス情報タイプに応じて実行可能である。そして、再度、ルックアップテーブルを参照し、そのアクセス情報に対応するデータがデータストア内に存在するかどうかを判定する。そして、データが存在する場合には、そのデータストアに関連付けられているセキュリティ検索アルゴリズムを使用することにより、保護されているデータストアからその要求されている保護データを検索する。一方、エントリが検出されない場合には、アクセス情報のタイプ依存部分の並べ替えを行い、すべての可能な並べ替えが終了するまで、アクセスの試みを反復実行可能である。
【図面の簡単な説明】
【００１０】
【図１】本発明を実施可能なコンピュータシステムを示すブロックダイアグラムである。
【図２】本発明の実施例によるアクセス情報の流れを示す図である。
【図３】本発明の一般化された実施例による検索方法を実行するシステムの動作を示すフローチャートである。
【図４】住所変更情報を検索する本発明の別の実施例による検索方法を実行するシステムの動作を示すフローチャートである。
【発明を実施するための形態】
【００１１】
次に、図面、具体的には、図１を参照すれば、本発明の実施例に従って、コンピュータプログラムプロダクト及びコンピュータシステムを形成するプログラム命令を稼働させることによって方法を実行可能なコンピュータシステム１０が示されている。この方法においては、ワークステーションコンピュータ１４のメモリ１９内に配置され、中央処理ユニット１８（ＣＰＵ）によって実行されるプログラム命令を採用することが可能であり、本発明のデータストア及びルックアップテーブルは、そのすべてをストレージ媒体１３Ａ及びメモリ１９内に配置することができる。或いは、この代わりに、ワークステーションコンピュータ１４は、ワークステーションコンピュータ１４を接続するネットワーク１１の接続を介して、ＬＡＮ（Ｌｏｃａｌ−Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ−Ａｒｅａ  Ｎｅｔｗｏｒｋ）、又はインターネットなどのネットワークに接続することも可能である。そして、ネットワーク実装の場合には、本発明の方法を実装するデータストア及び／又はプログラム命令は、ストレージ媒体１３Ｂに接続されたデータベースサーバー１２内に配置することができる。
【００１２】
本発明の方法によれば、固有のデータベースセキュリティが提供され、ワークステーションコンピュータ１４上における実行、又はデータストア／ルックアップテーブルに対するアクセス、或いはインターネット又はその他のネットワークを介したプログラムの実行のために、プログラム、データストア、及びルックアップテーブルをエンドユーザーに分散させることができる。又、ローカルホスティングされたプログラムとリモートデータストアや、ローカルデータストアとリモートホスティングされたプログラムなどのその他の組み合わせも可能であり、これらは、本発明の実施例による変形であると理解する必要がある。
【００１３】
本明細書においては、事業所の名称及び住所と個人の名称及び住所の住所変更情報を保護するためのアプリケーションにおける特定の実施例又は実施例の組について記述している。尚、住所変更は、家族又は個人について入力可能であるため、「個人」という用語を使用した場合には、名字（ｆａｍｉｌｙ  ｎａｍｅ）をも意味していると理解する必要がある。このシステム及び方法は、古い住所とエンティティ（個人／家族、又は事業所）の名称が入力された場合に、新しい住所を提供するものである。そして、このデータストアには、事業所又は個人／家族の名称のいずれの場合にも、転居が発生しているが住所変更データが提供されていないことを検証する脚注インジケータを含むことも可能である。又、データストア内において、矛盾する情報が検出された場合にも、このような出力を提供可能である。従って、このシステムは、既知の転居が既に行われているが、有効な出力として新しい住所が提供されていないことを通知することができる。
【００１４】
次に図２を参照すれば、本発明の実施例によるコンピュータプログラムモジュール間における情報の流れが示されている。アクセス情報３０（例：古い郵便住所とエンティティの名称）が、タイプ独立アクセス情報標準化モジュール２０に提供され、これは、前述の包含された米国特許出願である「ＳＹＳＴＥＭ  ＡＮＤ  ＭＥＴＨＯＤ  ＦＯＲ  ＳＴＡＮＤＡＲＤＩＺＩＮＧ  Ａ  ＭＡＩＬＩＮＧ  ＡＤＤＲＥＳＳ」に記述されている技法によるＥＭＤＰ（Ｅｎｈａｎｃｅｄ  ｍｏｄｉｆｉｅｄ  ｄｅｌｉｖｅｒｙ  ｐｏｉｎｔ）生成器であってよく、これは、郵便住所の多数の並び替え又は表現の１つが与えられた場合に、郵便住所の単一の数値表現（ＥＭＤＰ）を生成する。尚、この技法の詳細については、前述の引用された特許出願に記述されているが、概略的には、郵便住所から抽出したＺＩＰコードやＺＩＰ＋４コードなどの郵便コードを、郵便住所から抽出した数値フィールド（例：通りの番号やユニット番号）と連結することにより、綴り、通りのタイプ（例：ロード（ｒｏａｄ）、プレース（ｐｌａｃｅ）、ブールバード（ｂｏｕｌｅｖａｒｄ）、ストリート（ｓｔｒｅｅｔ）など）、或いはその他の変形（例：スイート（ｓｕｉｔｅ）、アパートメント（ａｐａｒｔｍｅｎｔ）、ａｐｔ．など）に依存しない標準化された住所を提供するものである。
【００１５】
そして、この標準化モジュール２０によるアクセス情報のタイプ独立部分の標準化バージョンの生成が完了すれば、ＳＨＡ生成器２１Ａにより、この標準化された情報（例：ＥＭＤＰ）をＳＨＡ（Ｓｅｃｕｒｅ  Ｈａｓｈ  Ａｌｇｏｒｉｔｈｍ）を使用してハッシュ化する。尚、このＳＨＡ生成器２１Ａによって使用されるアルゴリズムは、ＳＨＡ−１アルゴリズムであってよいが、十分なセキュリティを提供するその他のハッシュ化アルゴリズムであってもよい。
【００１６】
ＳＨＡ−１アルゴリズムの詳細については、米国政府のサービス提供機関であるＮＩＳＴ（Ｎａｔｉｏｎａｌ  Ｉｎｓｔｉｔｕｔｅ  ｏｆ  Ｓｔａｎｄａｒｄｓ  ａｎｄ  Ｔｅｃｈｎｏｌｏｇｙ：米国連邦標準技術局）が発行している「ＳＥＣＵＲＥ  ＨＡＳＨ  ＳＴＡＮＤＡＲＤ」（Ｆｅｄｅｒａｌ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｐｒｏｃｅｓｓｉｎｇ  Ｓｔａｎｄａｒｄｓ  Ｐｕｂｌｉｃａｔｉｏｎ  １８０−１）に記述されている。このＳＨＡ−１アルゴリズムは、通常、ＤＳＡ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｔｕｒｅ  Ａｌｇｏｒｉｔｈｍ）による検証のために、メッセージの圧縮バージョンを生成するべく使用されるものである。デジタル署名として符号化されたこのメッセージの圧縮バージョン（メッセージダイジェスト）を、受信したメッセージから生成されたメッセージダイジェストと比較することにより、その受信メッセージのコンテンツが、送信メッセージのコンテンツと同一であることを検証することができる。このメッセージダイジェストは、２０バイトの数値であって、通常は、署名／メッセージの検証に使用されているが、本明細書においては、これを新しい方式によって使用することにより、本発明のルックアップテーブル及びデータストアに対するアクセスを提供している。
【００１７】
即ち、本発明においては、このＳＨＡ−１アルゴリズムを使用し、前述のＳＨＡ−１アルゴリズムの本来の目的のためにではなく、ルックアップテーブル及データストアに対してアクセスするためのアクセス情報の表現又はその一部を生成している。尚、その他のアルゴリズムを使用することにより、本発明において使用するアクセス情報のハッシュ化表現を生成することも可能であり、このＳＨＡ−１アルゴリズムの使用は、利便性を理由とするものであって、本発明の限定を意図するものではないことを理解されたい。
【００１８】
このアクセス情報のタイプ独立部分のハッシュ化バージョンの取得が完了したら、１つ又は複数のルックアップテーブル２２Ａを参照し、それらのルックアップテーブル２２Ａと関連付けられているエントリタイプに応じたアクセス情報のエントリが存在しているかどうかを判定する。この図示の実施例においては、このルックアップテーブル２２Ａは、標準化生成器２０によって生成されたＥＭＤＰに事業所のエントリが存在しているかどうかを示す単一のテーブルを有している。尚、本発明の実施例として本明細書に記述されている住所変更システムの場合には、２つの情報タイプ（即ち、事業所のエントリと個人のエントリ）を管理するものであり、このルックアップテーブル２２Ａ内にエントリが存在しなければ、そのＥＭＤＰは個人と関連付けられていると仮定することが可能であり、必要なルックアップテーブル２２Ａは、１つのみである。しかしながら、本発明のその他の実施例においては、２つを上回る数の情報タイプを管理することが可能であり、この場合には、情報を連続的にフィルタリングして有効なエントリタイプを判定できるように、複数のルックアップテーブルを使用することができる。
【００１９】
このルックアップテーブル２２Ａは、前述の包含された「ＤＥＬＩＶＥＲＹ  ＰＯＩＮＴ  ＶＡＬＩＤＡＴＩＯＮ  ＳＹＳＴＥＭ」という名称の米国特許出願に記述されているように、ビットの配列として実装可能であり、この前述の出願には、ルックアップテーブル内における住所エントリの存在を検証するためのビット配列の使用法について記述されており、これは、情報検索による演算オーバーヘッドが非常に小さい。変化する住所標識（例：通りの名称の変更、ユニットの番号の変更など）は、前述の包含された特許出願「ＭＥＴＨＯＤ  ＦＯＲ  ＣＯＲＲＥＣＴＩＮＧ  Ａ  ＭＡＩＬＩＮＧ  ＡＤＤＲＥＳＳ」に記述されているように、このルックアップテーブル内において更新される。この配送ポイント検証技法においては、ハッシュ化されたＥＭＤＰを抽出アルゴリズムに対して提供し、このアルゴリズムは、このハッシュ化ＥＭＤＰから、ビット配列内におけるオフセットとして使用されるサンプル（又は、住所変更システム以外のアプリケーションにおいては、その他のアクセス情報）を選択する。このビット配列内に１つのビットが設定されている場合に、その個々のサンプルの存在が検証されることになる。そして、すべてのサンプルが存在すると示されている場合に、ルックアップテーブル内におけるエントリの存在が検証されることになる。尚、前述の引用した特許出願には、ＥＭＤＰ又はその他のデータタイプの有効性を検証するためのビット配列実装の更なる詳細が提供されている。
【００２０】
そして、ＥＭＤＰが有効な事業所の住所であると検証された場合には、入力として提供された名称（アクセス情報のタイプ依存部分）を事業所名称標準化器２４Ａによって標準化する。この事業所名標準化器２４Ａは、ＺＩＰコードを使用して事業所名称テーブルにアクセスするが、このテーブルは、実際の住所変更カード、インターネット住所変更システム、又は住所変更の入力に使用するその他のメカニズム上において入力された正しい事業所名称のリストを格納している。
【００２１】
この事業所名称の標準化が完了したら、この事業所の名称をＳＨＡ生成器２１Ｂに提供し、ＥＭＤＰと組み合わせて、ＳＨＡ−１の結果を生成する。尚、このＳＨＡ生成器２１Ｂとしては、ＳＨＡ生成器２１Ａを提供するものと同一のプログラム命令の組を使用可能であり、或いは、転居テーブル２７へのアクセスのセキュリティを提供する別のアルゴリズムであってもよい。そして、安全なデータストア検索アルゴリズム２８は、データストレージ装置２９内にファイルとして保存されている転居テーブル２７に対するアクセスを提供する。模範的な転居テーブル２７は、前述の包含された特許出願「ＭＥＴＨＯＤ  ＡＮＤ  ＳＹＳＴＥＭ  ＦＯＲ  ＳＴＯＲＩＮＧ  ＡＮＤ  ＲＥＴＲＩＥＶＩＮＧ  ＤＡＴＡ  ＵＳＩＮＧ  ＨＡＳＨ−ＡＣＣＥＳＳＥＤ  ＭＵＬＴＩＰＬＥ  ＤＡＴＡ  ＳＴＯＲＥＳ」に記述されているように、複数のデータストアを有しており、これは、ハッシュ化された結果として処理されたアクセス情報に応答し、新しい郵便住所（又は、そのシステムのその他のアプリケーションにおけるその他の情報）を生成する。前述の引用した特許に記述されている複数のデータストアのすべてを有するデータストアは、データマイニングに対して非常に安全であり、この結果、必要なアクセス情報のすべて（例：名称及び古い郵便住所）が判明しない限り、プライベートデータの漏洩が予防される。
【００２２】
前述の引用した特許出願には、標準化された住所情報の保存と検索について記述されているが、本発明の特定の実施例が必要とする情報検索のタイプに応じて、これをその他のタイプの情報に拡張することができる。即ち、具体的には、本発明の実施例による住所変更システムと共に、新しい（転居先の）住所の数学表現を使用するのである。データストア内に配置するデータは、５桁のＺＩＰコードＺ［６４０００］、２桁の配送ポイントセレクタを有する４桁のアドオンＺＰ［１００００００］、性別フラグＧ［３］、ミドルイニシャルである第１文字Ｍ１［２７］及び第２文字Ｍ２［２７］、転居発効日Ｄ［１２０］、住所ドロップフラグＡ［２］、及びミドルネームの使用を示すフラグＭＵ［２］から算出された数値から構成される７バイトの情報である。尚、前述の要素のそれぞれに続く括弧内の数値は、前述の列挙した要素のそれぞれが取得可能な値又は状態の数を示している。
【００２３】
この保存するアドレス情報の数学表現は、前述の要素のそれぞれが取得可能な状態の数（又は、これよりも大きな任意の数）に等しい底（ｂａｓｅ）の「桁（ｄｉｇｉｔ）」を本質的に割り当てる表現として算出されるものであり、従って、これは、次のより低位の桁の底とその桁自体の底によって乗算されたそれぞれの要素の合計になっている。そして、この保存データの表現の検索が完了すると、これを使用し、その底に関する知識に基づいてそれぞれの「桁」を抽出するモジュロ演算により、その住所の各要素を算出するのである。保護されているデータベース内のデータストアのそれぞれの要素内に保存するデータの式は、次のとおりである。
【００２４】
データ＝ＺＰ＋１，０００，０００＊（Ｚ＋（６４，０００＊（Ｇ＋Ｍ２＊３＋Ｍ１＊８１＋Ｄ＊２１８７＋Ａ＊２６２４４０＋ＭＵ＊５２４８８０））
【００２５】
これは、前述のように等価に表現可能であるが、保存されている／検索されるデータに対するＺＩＰ及びＺＩＰ＋４値の関係を明瞭にするべく、別個にグループ化された追加情報によって表現されている。これらのファクタを乗算することにより、個々の桁の底の値を判定することができる。そして、データストアからデータ要素を抽出した際に、その要素をこれらの底の値によって除算することにより、その新しい住所の各構成要素を提供するモジュロの結果を取得する。尚、前述の数値は、２５４7を上回ることはなく、これは、前述の引用した特許出願に開示されている保存及び検索方法の７データストア実装における最大データサイズである。このデータの各部分を検索し、デストライピングを行い、モジュロ−２５４処理の後に組み合わせ、次いで、前述の可変モジュロ演算を実行して個々の新しい住所要素を生成することにより、新しい住所を生成するのである。
【００２６】
この前述の引用した特許出願に記述されている複数のデータストアセキュリティ法を使用する代わりに、前述の引用した特許出願の安全なデータストア法に加え、本発明の方法の動作効率を改善するルックアップテーブル技法をその他のデータセキュリティ法及びアルゴリズムに適用することも可能である。即ち、例えば、暗号化データストアの場合には、（ハッシュ符号化データストアのアクセスとは異なり）、暗号解読プロセスのために、データ検索に大きな演算オーバーヘッドが必要となる。このようなデータストアの前段にルックアップテーブルを採用すれば、無効なエントリに関する暗号化データストアのサーチを回避することができる。
【００２７】
一方、以上の説明に提供されている名称が事業所の名称に対応していない場合には、個人名称解析器２４Ｂにより、その名称の個々の構成要素（例：ファーストネーム、ミドルネーム、名字）を解析すると共に、一般的に名称と関連付けられている性別を見出すべく試みる。次いで、この解析された名称をＳＨＡ生成器２１Ｂに供給し、事業所の名称の場合と同様に、ＥＭＤＰと組み合わせた後に、住所変更エントリの存在について転居テーブル２７をチェックする。そして、エントリが検出されない場合には、個人名称解析器２４Ｂにより、名字の一般的な綴りの誤りを使用し、その名称の並び替えを生成することができる。次いで、（ニックネームテーブルからの）既知のニックネームとファーストネームの一般的な綴りの誤りを使用し、その名称の並べ替えを実行することも可能である。又、その他のテーブルを使用することにより、発音が類似した変形に対するファジーロジック例外を有する（フォネティックサウンデックス表現による）類似の発音の並べ替えを提供することも可能である（例えば、ＢａｋｅｒとＢｅｃｋｅｒは、同一のサウンデックスを具備可能であるが、等価であるとは見なされない）。そして、以上の変形を試みた後に、名字と住所のみを使用することにより、問合せを実行する。この名字／住所の組み合わせに対する転居テーブル２７内のエントリは、「家族」の転居を示すものであり、この場合には、転居の後に、その同一の名字を有する世帯には、だれも残っていない。
【００２８】
次に図３を参照すれば、本発明の一般的な実施例による安全なデータ検索法が示されている。まず、認可情報を受領し（段階４１）、この受領したアクセス情報の非タイプ依存部分から標準アクセス情報を生成する（段階４２）。そして、この標準化されたアクセス情報をハッシュ化し（段階４３）、１つ又は複数のルックアップテーブルを参照して、そのハッシュ化されたアセクス情報のエントリが存在するかどうかを判定する（判定４４）。そして、エントリが検出された場合には、そのエントリが検出されたルックアップテーブルに対応したタイプに応じて、そのアクセス情報のタイプ依存部分を標準化する（段階４５）。次いで、段階４３及び段階４９からの組み合わせ並びに標準化されたアクセス情報をハッシュ化し（段階４６）、安全なデータストア内のエントリの存在を検証する（判定４７）。そして、その組み合わせ並びに標準化されたアクセス情報に対応した安全なデータストア内のエントリが存在する場合には（判定４７）、そのハッシュ化並びに組み合わせられた標準化アクセス情報を使用し、要求されているデータを安全なデータストアから検索する（段階４８）。一方、判定４７において、エントリが検出されず、入力の並べ替えを試みる必要があり、且つ、すべての並べ替えがまだ終了していない場合には（判定５１）、アクセス情報のタイプ依存部分の並べ替えを実行し（段階５２）、段階４６に従って、別の組み合わせられたアクセス情報のハッシュ化の結果を演算し、それらの並び替えについて、検証（段階４７）と検索（段階４８）の段階を反復することになる。
【００２９】
一方、判定４４において、第１ルックアップテーブルにおいて、エントリが検出されない場合には、最後のテーブルに到達するまで（段階５０）、その他のアクセス情報タイプの更なるルックアップテーブルを参照することができる（段階４９）。そして、段階４４において、いずれのテーブルにおいてもエントリが検出されない場合には、段階４１の入力を段階５１において並べ替えることができる。
【００３０】
この図３の方法は、「認可データ」の受領に応答した「開示データ」の出力を必要とするあらゆるシステムに適用することができる。例えば、次の表１は、この方法を適用可能な認可／開示データのペアを示している。
【００３１】
【表１】
0005231478.tif 000002
【００３２】
尚、この表１は、保護を要するプライベートデータを表しているが、これは、限定を意図するものではなく、政府エンティティと事業／民間組織の両方のための様々なアプリケーションの模範的な例を示すものである。
【００３３】
次に図４を参照すれば、郵便住所の変更に適用される本発明の特定の実施例による方法が示されている。即ち、事業所又は個人の名称と古い住所を受領し（段階６１）、その古い住所についてＥＭＤＰを生成する（段階６２）。そして、このＥＭＤＰをハッシュ化し（段階６３）、事業所の住所変更ルックアップテーブルを参照する。そして、この事業所の住所変更ルックアップテーブル内にエントリが検出された場合には（段階６４）、事業所名称テーブルを使用して、その事業所の名称を標準化し（段階６５）、ＥＭＤＰと共にハッシュ化する（段階６６）。次いで、転居テーブルを参照して、エントリが存在するかどうかを判定し（判定６７）、エントリが存在する場合には、そのハッシュ化並びに標準化されたアクセス情報を使用し、保護されているデータストアから新しい住所を検索する（段階６８）。一方、移動テーブル内にエントリが検出されず、且つ、更に並べ替えが存在する場合には（判定７０）、入力の更なる並べ替えを試み（段階７１）、その名称及びＥＭＤＰをハッシュ化し（段階６６）、エントリについて転居テーブルを再チェックすることができる（判定６７）。
【００３４】
一方、判定６４において、事業所エントリが検出されなかった場合には、段階６１において受領した名称と古い住所を個人のものであると推定し、その名称を解析して標準化する（段階６９）。そして、この標準化された名称及びＥＭＤＰをハッシュ化し（段階６６）、転居テーブルを参照して、エントリが存在しているかどうかを判定する（判定６７）。そして、エントリが存在している場合には、段階６８において、組み合わせ並びにハッシュ化された結果を使用し、保護されているデータストアから、その個人の新しい住所を抽出することになる。
【００３５】
以上、好適な実施例を参照し、本発明について図示並びに説明したが、当業者であれば、本発明の精神と範囲を逸脱することなしに、形態及び詳細において、上述並びにその他の変更を加えることが可能であることを理解するであろう。
【図１】
0005231478.tif 000003
【図２】
0005231478.tif 000004
【図３】
0005231478.tif 000005
【図４】
0005231478.tif 000006