(57)【特許請求の範囲】
【請求項１】
機密情報からなる利用データまたは機密情報に関連付けられる利用データの何れか一方を格納および検索する方法であって、前記情報は、前記情報を使用することができる複数のアプリケーションシステム（ＡＳｉｉ＝１．．ｎ）を含む環境で安全性を要求し、
前記情報を格納することは、
・前記複数のアプリケーションシステム（ＡＳｉｉ＝１．．ｎ）の所定のアプリケーションシステム（ＡＳｊ）で、
−前記情報を受信する段階（２１）と、
−前記情報から抽出されたデータと補足データとを生成する段階であって、独立して取られた前記抽出されたデータと前記補足データとは、前記情報の使用には不十分であり、前記情報は、共に取られた前記抽出されたデータと補足データとから生成されることができる、段階と、
−前記情報から符号化された情報を生成する段階であって、ハッシュ関数を介して情報のハッシュ値を計算することを含む、符号化された情報を生成する段階と、
−抽出されたデータと符号化された情報とをサーバシステム（ＳＳ）に送信する段階（２２）と、
・サーバシステム（ＳＳ）で、
−インデクスを生成して、符号化された情報と抽出されたデータとにこのインデクスを割り当てる段階と、
−サーバシステム（ＳＳ）に関連付けられるデータベース（ＤＢｓｓ）に符号化された情報と抽出されたデータとインデクスとを格納する段階（２３、２４）と、
−複数のアプリケーションシステム（ＡＳｉｉ＝１．．ｎ）の前記所定のアプリケーションシステム（ＡＳｊ）にインデクスを転送する段階（２５）と、
・前記所定のアプリケーションシステム（ＡＳｊ）で、
−情報に関するアプリケーション格納データ（応用データ）にインデクスを割り当てる段階と、
−前記所定のアプリケーションサーバ（ＡＳｊ）に関連付けられるデータベース（ＤＢＡＳｊ）に前記アプリケーション格納データ（応用データ）と共にインデクスを格納する段階（２６）と、
を具備することを特徴とする方法。
【請求項２】
利用データは、情報であり、アプリケーション格納データは、補足データであることを特徴とする請求項１に記載の方法。
【請求項３】
複数のアプリケーションシステム（ＡＳｉｉ＝１．．ｎ）のうち任意の考えられるアプリケーションシステム（ＡＳｋ）で前記情報を検索することは、
・前記考えられるアプリケーションシステム（ＡＳｋ）で、
−インデクスを受信する段階（３１）と、
−サーバシステム（ＳＳ）にインデクスを送信する段階（３２、３３）と、
・サーバシステム（ＳＳ）で、
−前記インデクスに対応する抽出されたデータをサーバシステム（ＳＳ）のデータベース（ＤＢｓｓ）から検索する段階（３３、３４、４４、４５）と、
−前記考えられるアプリケーションシステム（ＡＳｋ）に抽出されたデータを送信する段階（３５、４６）と、
・前記考えられるアプリケーションシステム（ＡＳｋ）で、
−補足データを受信する段階（３６、４２）と、
−抽出されたデータと補足データとから情報を再構築する段階（３７、４７）と、
を具備することを特徴とする請求項２に記載の方法。
【請求項４】
前記考えられるアプリケーションシステム（ＡＳｋ）は、所定のアプリケーションシステム（ＡＳｊ）であり、前記考えられるアプリケーションシステム（ＡＳｋ）で補足データを受信することは、所定のアプリケーションシステム（ＡＳｊ）に関連付けられるデータベース（ＤＢＡＳｊ）に格納される補足データをインデクスにより検索する段階（３６）を具備することを特徴とする請求項３に記載の方法。
【請求項５】
前記考えられるアプリケーションシステム（ＡＳｋ）は、所定のアプリケーションシステム（ＡＳｊ）と異なるアプリケーションシステムであり、補足データと共にインデクスを格納するデータベースを含まず、前記考えられるアプリケーションシステム（ＡＳｋ）で補足データを受信することは、所定のアプリケーションシステム（ＡＳｊ）から補足データを受信する段階（４１、４２）を具備することを特徴とする請求項３に記載の方法。
【請求項６】
利用データは、少なくともアプリケーションシステム（ＡＳｉｉ＝１．．ｎ）によって使用されることを意図する応用データ（ロイヤルティプログラム）であり、高レベルのセキュリティを要求せず、アプリケーション格納データはまた、前記応用データ（ロイヤルティプログラム）であることを特徴とする請求項１に記載の方法。
【請求項７】
任意の考えられるアプリケーションシステム（ＡＳｋ）で前記応用データ（ロイヤルティプログラム）を検索することは、
・前記考えられるアプリケーションシステム（ＡＳｋ）で、
−前記情報を受信する段階（５１、６１）と、
−前記情報から抽出されたデータと前記情報から符号化された情報とを生成する段階と、
−サーバシステム（ＳＳ）に抽出されたデータと符号化された情報とを送信する段階（５２、６２）と、
・サーバシステム（ＳＳ）で、
−抽出されたデータと符号化された情報とに対応するインデクスをサーバシステム（ＳＳ）のデータベース（ＤＢｓｓ）から検索する段階（５３、５４、６３、６４）と、
−前記考えられるアプリケーションシステム（ＡＳｋ）にインデクスを転送する段階（５５、６５）と、
・前記考えられるアプリケーションシステム（ＡＳｋ）で、
−インデクスを受信する段階と、
−インデクスに索引付けされた応用データ（ロイヤルティプログラム）を検索する段階（５６、５７、６６、６７、６８、６９）と、
を具備することを特徴とする請求項６に記載の方法。
【請求項８】
前記考えられるアプリケーションシステム（ＡＳｋ）は、所定のアプリケーションシステム（ＡＳｊ）であり、応用データ（ロイヤルティプログラム）は、所定のアプリケーションシステム（ＡＳｊ）に関連付けられるデータベース（ＤＢＡＳｊ）から検索される（５６）ことを特徴とする請求項７に記載の方法。
【請求項９】
前記考えられるアプリケーションシステム（ＡＳｋ）は、所定のアプリケーションシステム（ＡＳｊ）と異なり、インデクスに索引付けされた応用データ（ロイヤルティプログラム）をその関連データベースに含まないアプリケーションシステムであり、応用データ（ロイヤルティプログラム）を検索することは、
・所定のアプリケーションシステム（ＡＳｊ）で、
−検索すべき応用データ（ロイヤルティプログラム）に対応するインデクスを受信する段階（６６）と、
−インデクスにより応用データ（ロイヤルティプログラム）を所定のアプリケーションシステム（ＡＳｊ）のデータベース（ＤＢＡＳｊ）で検索する段階（６７、６８）と、
−考えられるアプリケーションシステム（ＡＳｋ）にアプリケーションデータを送信する段階（６９）と、
を具備することを特徴とする請求項７に記載の方法。
【請求項１０】
補足データと抽出されたデータとを生成する段階は、情報を第１部分と第２部分とに分割することを含むことを特徴とする請求項１〜９の何れか１項に記載の方法。
【請求項１１】
情報は、クレジットカード番号であり、補足データは、クレジットカード番号の外見上の桁に対応し、抽出されたデータは、クレジットカード番号の隠された桁に対応することを特徴とする請求項１０に記載の方法。
【請求項１２】
情報の符号化されたバージョンを生成する段階は、ハッシュ関数で情報のハッシュ値を計算することを含み、ハッシュ関数は、サーバシステム（ＳＳ）に認識されないことを特徴とする請求項１〜１１の何れか１項に記載の方法。
【請求項１３】
任意のアプリケーションシステム（ＡＳｉ）で行われる以下の段階の少なくとも１つがプロキシ要素によって扱われ、前記段階は、
・情報から補足データと抽出されたデータとを生成する段階と、
・前記情報から符号化された情報を生成する段階と、
・サーバシステム（ＳＳ）に抽出されたデータと符号化された情報とを送信する段階と、
・所定のアプリケーションシステム（ＡＳｊ）に関連付けられるデータベース（ＤＢＡＳｊ）で補足データを送信する段階と、
・前記任意のアプリケーションシステム（ＡＳｉ）から送信されるべきデータを含むメッセージを生成する段階であって、前記メッセージは、ＥＤＩＦＡＣＴのような形式である、段階と、
・前記任意のアプリケーションシステムで受信されるべきデータを含むメッセージを読み出す段階であって、前記メッセージは、ＥＤＩＦＡＣＴのような形式である、段階と、
であることを特徴とする請求項１〜１２の何れか１項に記載の方法。
【請求項１４】
任意の時間で、情報は、前記情報を処理するアプリケーションシステム（ＡＳｉ）の処理メモリにのみ利用可能であることを特徴とする請求項１〜１３の何れか１項に記載の方法。
【請求項１５】
機密情報からなる利用データまたは機密情報に関連付けられる利用データ（応用データ）の何れか一方を格納および検索するシステムであって、前記情報は、前記利用データ（ＣＣ＃、応用データ）を使用することができる複数のアプリケーションシステム（ＡＳｉｉ＝１．．ｎ）を含む環境で安全性を要求し、
前記システムは、
・サーバシステム（ＳＳ）と、
・前記複数のアプリケーションシステムのうち所定のアプリケーションシステム（ＡＳｊ）であって、
−前記情報を受信し（２１）、
−抽出されたデータと補足データとを前記情報から生成し、独立して取られた前記抽出されたデータと前記補足データとが任意のアプリケーションシステム（ＡＳｉｉ＝１．．ｎ）によって前記情報を使用するのに不十分であり、前記情報が共に取られた前記抽出されたデータと補足データとから生成されることができ、
−前記情報から符号化された情報を生成し、符号化された情報の前記生成は、ハッシュ関数を介して情報のハッシュ値を計算することを含み、
−サーバシステム（ＳＳ）に抽出されたデータと符号化された情報とを送信する（２２）、
ように配置される前記所定のアプリケーションシステム（ＡＳｊ）と、
・サーバシステム（ＳＳ）であって、
−インデクスを生成して、このインデクスを符号化された情報と抽出されたデータとに割り当てて、
−サーバシステム（ＳＳ）に関連付けられたデータベース（ＤＢｓｓ）に符号化された情報と抽出されたデータとインデクスとを格納し（２３、２４）、
−複数のアプリケーションシステム（ＡＳｉｉ＝１．．ｎ）の前記所定のアプリケーションシステム（ＡＳｊ）にインデクスを転送する（２５）、
ように配置される、前記サーバシステム（ＳＳ）と、
・所定のアプリケーションシステム（ＡＳｊ）であって、
−情報に関するアプリケーション格納データ（応用データ）にインデクスを割り当て、
−前記所定のアプリケーションサーバ（ＡＳｊ）に関連付けられるデータベース（ＤＢＡＳｊ）に前記アプリケーション格納データ（応用データ）と共にインデクスを格納する（２６）、
ように配置される、前記所定のアプリケーションシステム（ＡＳｊ）と、
を具備することを特徴とするシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般に、電子情報を格納および検索する方法及びシステムに関する。本発明の方法およびシステムは特に、安全性を要求し、各種アプリケーションによる使用に利用可能な必要がある電子情報の格納に向けられる。方法はまた、前記情報に関する応用データを格納および検索する方法に関する。
【背景技術】
【０００２】
機密情報の格納および扱いを安全にすることは、多くのアプリケーションがそのような機密情報を使用する必要がある組織にとって特に問題である。
【０００３】
電子取引の開発は、機密情報を要求する取引数を増やす。その上、取引を容易にし、ユーザにとってより魅力的にするために、多くの組織は、取引を完了するための全必要データを再入力する必要性を取り除くことに努力する。これは、機密情報を格納することを意味する。しかし、機密情報の格納は、全体的に安全とは程遠い。実際、機密情報を格納するデータベースは、盗用またはハッキングされる可能性がある。また、機密情報は、それを格納するデータベースからそれを処理するアプリケーションへのその取引の間に不正に検索される可能性がある。
【０００４】
格納の安全性を高めるために、いくつかのシステムは、機密情報を２つの部分に分割して、各データベースに各部分を格納することを可能にする。
【０００５】
しかし、これらのシステムは、全体的に十分ではなく、特に各種アプリケーションが同じ機密情報を処理する必要がある環境では十分ではないことが分かっている。
【０００６】
これらの各種アプリケーションは、多くのサービスを提供する単一の組織によって動作されることができる。ＡＭＡＤＥＵＳまたはＳＡＢＲＥのようなグローバルディストリビューションシステム（ＧＤＳ）は、機密情報を要求する各種アプリケーションを含む多くのサービスを提供するそのような組織の典型例である。
【０００７】
いくつかの独特の企業はまた、協力して消費者に統合サービスを提供することができる。例えば、電子商および銀行は、協力して各オンライン購入ソリューションを消費者に提供することができる。いくつかの商取引ではまた、協力して１つの組織を形成して、広範囲のサービスと商品とを消費者に提供することができる。
【０００８】
本発明の目的は、多くのアプリケーションが同じ機密情報を処理する必要があると考えられる環境で、情報を格納および検索するための効率的でユーザに魅力的な方法を提供することである。
【発明の概要】
【課題を解決するための手段】
【０００９】
本発明は、機密情報に関連付けられる利用データを格納および検索する方法に関し、機密情報は、前記情報と前記利用データとを使用できる複数のアプリケーションシステムＡＳｉｉ＝１．．ｎを含む分散型環境で安全であることを要求する。機密情報の典型例は、クレジットカード番号である。前記情報を格納することは、以下に説明する段階を含む。
【００１０】
前記複数のアプリケーションシステムＡＳｉｉ＝１．．ｎの所定のアプリケーションシステムＡＳｊは、前記情報を受信し、抽出されたデータと補足データとを前記情報から生成する。抽出されたデータと補足データとは、
−それらが独立して取られる時、任意のアプリケーションシステムＡＳｉｉ＝１．．ｎは、機密情報を使用できず、
−それらが共に取られる時、前記情報は、生成および使用されることができる
とするように生成される。
【００１１】
また、所定のアプリケーションシステムＡＳｊは、符号化された情報を前記情報から生成する。その後、それは、抽出されたデータと符号化された情報とをサーバシステムＳＳに送信する。
【００１２】
サーバシステムＳＳは、インデクスＩＤを生成し、符号化された情報と抽出されたデータとにこのインデクスＩＤを割り当てる。その後、サーバシステムＳＳは、符号化された情報と抽出されたデータとインデクスＩＤとをサーバシステムＳＳに関連付けられるデータベースＤＢｓｓに格納する。サーバシステムＳＳはまた、複数のアプリケーションシステムＡＳｉｉ＝１．．ｎの所定のアプリケーションシステムＡＳｊにインデクスＩＤを転送する。
【００１３】
その後、前記所定のアプリケーションシステムＡＳｊは、情報に関するアプリケーション格納データにインデクスＩＤを割り当てる。最後に、所定のアプリケーションシステムＡＳｊは、前記所定のアプリケーションサーバＡＳｊに関連付けられるデータベースＤＢＡＳｊにインデクスＩＤを前記アプリケーション格納データと共に格納する。
【００１４】
本発明の第１の使用場面によると、利用データは、情報であり、アプリケーション格納データは、補足データである。
【００１５】
故に、所定のアプリケーションシステムＡＳｊは単に、抽出されたデータと符号化された情報とを送信するだけである。機密情報の交換はない。その上、所定のアプリケーションシステムＡＳｊのデータベースＤＢＡＳｉは、補足データとＩＤとを格納するだけであり、サーバシステムのデータベースＤＢｓｓは、抽出されたデータと符号化された情報とインデクスＩＤとを格納するだけなので、その後抽出されたデータと補足データとは、同じデータベースに格納されない。従って、ネットワークのスニフィング、盗用、または所定のアプリケーションシステムＡＳｊのデータベースまたはサーバシステムＤＢｓｓのデータベースの任意の１つのハッキングによっては、補足データおよび抽出されたデータまたは全情報の何れも得ることができない。従って、情報は、再構築されず、不正に使用されることがない。
【００１６】
その上、インデクスＩＤは、サーバシステムＳＳによって生成されるのであり、情報を受信する所定のアプリケーションシステムＡＳｉによって生成されない。故に、インデクスＩＤは、符号化された情報と抽出されたデータとから形成される単一ペアに割り当てられる。従って、同じ情報に関して一致したインデクスＩＤがない。所定の情報に関するデータを交換するために、各種アプリケーションシステムＡＳｉｉ＝１．．ｎは、前記情報に関連付けられる固有のインデクスＩＤを共有することができる。従って、本発明は特に、分散型環境で機密情報を格納するのに都合がよく、多くのアプリケーションシステムＡＳｉｉ＝１．．ｎは、前記機密情報を使用する。
【００１７】
サーバシステムＳＳのデータベースＤＢｓｓは、符号化された情報とインデクスＩＤと共に、抽出されたデータを格納する。故に、アプリケーションシステムは、前記アプリケーションシステムがインデクスＩＤを提供される時、抽出されたデータを受信することができ、または前記アプリケーションシステムが抽出されたデータと符号化された情報とにアクセスする時、インデクスＩＤを受信することができる。従って、そのような方法により、複数のアプリケーションシステムＡＳｉｉ＝１．．ｎが所定のユーザを扱うために要求する各種データをそれらのアプリケーションシステムＡＳｉｉ＝１．．ｎに提供することができる。従って、本発明は、複数のアプリケーションシステムＡＳｉｉ＝１．．ｎが扱う各種動作のために安全な格納を可能にする。
【００１８】
たとえ、１つまたは複数のアプリケーションモジュールＡＳｉｉ＝１．．ｎが盗用、強制的使用またはハッキングされても、情報は、検索されることがない。実際、符号化処理を行っても、抽出されたデータも符号化された情報も各種アプリケーションシステムＡＳｉｉ＝１．．ｎに関連付けられるデータベースＤＢＡＳｉに格納されないので、情報を取得できない。従って、本発明は、情報の格納の安全性を高める。
【００１９】
本発明によると、複数のアプリケーションシステムＡＳｉｉ＝１．．ｎのうち任意の考えられるアプリケーションシステムＡＳｋで機密情報を検索することは、以下の段階を含む。前記考えられるアプリケーションシステムＡＳｋは、インデクスＩＤを受信して、サーバシステムＳＳにインデクスＩＤを送信する。サーバシステムＳＳは、サーバシステムＳＳのデータベースから、前記ＩＤに対応する抽出されたデータを検索する。それはまた、前記考えられるアプリケーションシステムＡＳｋに抽出されたデータを送信する。その後、考えられるアプリケーションシステムＡＳｋは、補足データを受信して、抽出されたデータと補足データとから情報を再構築する。故に、考えられるアプリケーションシステムＡＳｋのアプリケーションは、情報を使用することができる。
【００２０】
全ての機密情報は、交換も格納もされない。情報は単に、前記考えられるアプリケーションシステムＡＳｋが前記機密情報を要求する処理を扱う時に、考えられるアプリケーションシステムＡＳｋで利用可能なだけである。通常、情報は、処理メモリ以外に格納されない。一度使用が完了すると、情報が除去される。その上、抽出されたデータと補足データとは、同じデータベースに格納されない。故に、ネットワークのスニフィングまたは任意の１つのデータベースの盗用では、機密情報を取得できない。
【００２１】
本発明は、単純なインデクスの入力を介して機密情報を利用可能とできるので、本発明は、追加的な機密情報の再入力または操作を省く。従って、本発明は、ユーザがそれを操作または入力する時、前記情報の喪失リスクまたは盗用を低減する。
【００２２】
この第１の使用場面の第１イベントによると、前記考えられるアプリケーションシステムＡＳｋは、所定のアプリケーションシステムＡＳｊである。故に、前記考えられるアプリケーションシステムＡＳｋで補足データを受信する段階は、前記所定のアプリケーションシステムＡＳｊでインデクスＩＤを受信して、所定のアプリケーションシステムＡＳｊに関連付けられるデータベースＤＢＡＳｊに格納される補足データをインデクスＩＤにより受信することを含む。
【００２３】
故に、情報を必要とする考えられるアプリケーションシステムＡＳｋが既にこの情報を提供されている場合、補足データは、考えられるアプリケーションシステムＡＳｋのデータベースＤＢＡＳｋから直接インデクスＩＤを受信する時に検索されることができる。また、サーバシステムＳＳにインデクスを送信することは、抽出されたデータをサーバシステムＳＳから転送することをもたらす。その後、アプリケーションシステムＡＳｋは、抽出されたデータと補足データとを得て、要求された情報を取得することができる。
【００２４】
この第１の使用場面の第２イベントによると、前記考えられるアプリケーションシステムＡＳｋは、所定のアプリケーションシステムＡＳｊと異なる。その上、考えられえるアプリケーションＡＳｋは、インデクスＩＤと共に補足データが索引付けされたデータベースを含まない。故に、前記考えられるアプリケーションシステムＡＳｋで補足データを受信する上記説明した段階は、所定のアプリケーションシステムＡＳｊから補足データを受信することを含む。
【００２５】
具体的に、考えられるアプリケーションＡＳｋがインデクスＩＤを受信してこのインデクスＩＤに対応する情報を要求する時、それは、このインデクスＩＤがその関連付けられたデータベースＤＢＡＳｋに格納されるかをチェックする。この場合、このデータベースは、このインデクスＩＤを含まず、または前記インデクスに対応する補足データを含まず、前記考えられるアプリケーションシステムＡＳｋは、リクエストを送信する。このリクエストは、情報が要求されるインデクスＩＤを含む。リクエストは、所定のアプリケーションシステムＡＳｊに到達する。所定のアプリケーションシステムＡＳｊは、補足データをインデクスＩＤで索引付けするデータベースに関連付けられる。
【００２６】
前記リクエストに応じて、所定のアプリケーションシステムＡＳｊは、そのデータベースＤＢＡＳｊから補足データを検索して、それを考えられるアプリケーションシステムＡＳｋに転送する。また、考えられるアプリケーションシステムＡＳｋは、抽出されたデータを受信するために、サーバシステムＳＳにインデクスを送信する。故に、考えられるアプリケーションシステムＡＳｋは、補足データと抽出されたデータとを組み合わせて、要求された情報を取得および使用することができる。
【００２７】
考えられるアプリケーションシステムＡＳｋはまた、そのデータベースに補足データを格納して、それをインデクスＩＤに索引付けることができる。故に次に、考えられるアプリケーションシステムＡＳｋは、所定のアプリケーションシステムＡＳｊがそれに補足データを転送することを要求せずに、情報を取得することができる。
【００２８】
従って、複数の分散型アプリケーションシステムは、たとえこの考えられるアプリケーションが情報をこれまで提供されてなくても、データを交換して、要求された情報を前記考えられるアプリケーションが取得できるようにする。
【００２９】
従って、本発明は、一度情報が分散型環境の任意の１つのアプリケーションシステムに既に入力されている場合、消費者が前記情報を再入力する必要性を取り除くという、安全な方法を提供する。
【００３０】
その上、各種アプリケーションシステム間のデータ交換は、全体的にユーザトランスペアレントである。
【００３１】
本発明の第２の使用場面によると、利用データとアプリケーション格納データとは、同じであり、応用データである。これらの応用データは、アプリケーションシステムＡＳｉｉ＝１．．ｎの少なくとも１つのアプリケーションによって使用されることを意図する。その上、前記応用データは、ハイレベルのセキュリティを要求しない。従って、応用データは、所定のアプリケーションＡＳｊのデータベースに格納されることができる。例えば、応用データは、ユーザプロファイルデータ（ユーザロイヤルティプログラム、ユーザプリファレンス、フライト発／着、フライトに関連付けられるサービスリクエスト、ホテルまたは車レンタル情報、消費者プロファイルデータ等）に関することができる。
【００３２】
任意の考えられるアプリケーションシステムＡＳｋで前記応用データを検索することは、以下の段階を含む。前記考えられるアプリケーションシステムＡＳｋは、機密情報を受信する。それは、抽出されたデータと符号化された情報とを前記情報から生成する。考えられるアプリケーションシステムＡＳｋは、抽出されたデータと符号化された情報とをサーバシステム（ＳＳ）に送信する。
【００３３】
その後、サーバシステム（ＳＳ）は、サーバシステムＤＢｓｓのデータベースから、抽出されたデータと符号化された情報とから形成されるペアに対応するインデクスＩＤを検索する。それは、前記考えられるアプリケーションシステムＡＳｋにインデクスＩＤを転送する。
【００３４】
考えられるアプリケーションシステムＡＳｋは、インデクスＩＤを受信して、インデクスＩＤで索引付けされた応用データを検索する。故に、考えられるアプリケーションシステムＡＳｋのアプリケーションは、応用データを使用することができる。
【００３５】
第１の使用場面のように、この第２の使用場面では、クレジットカードの盗用リスクは、考えられるアプリケーションシステムＡＳｋもサーバシステムも全情報を保持しないので、かなり低減される。その上、全情報は、任意のアプリケーションシステムＡＳｉｉ＝１．．ｎとサーバシステムＳＳとの間で単一伝送により伝送されない。
【００３６】
この第２の使用場面の第１イベントによると、考えられるアプリケーションシステムＡＳｋは、所定のアプリケーションシステムＡＳｊである。故に、応用データは、所定のアプリケーションシステムＡＳｊに関連付けられるデータベースＤＢＡＳｊから検索される。
【００３７】
故に、応用データは、一度任意のアプリケーションシステムに情報を入力するとすぐに検索されることができる。これにより、前記アプリケーションの簡単でユーザフレンドリな使用が可能となる。
【００３８】
その上、前記情報検索は、かなり安全性がある。実際、所定のアプリケーションシステムＡＳｊのデータベースは、任意の補足データ、抽出されたデータまたは情報を含む必要がない。サーバシステムＳＳのデータベースは、補足データまたは情報を含まない。単に符号化された情報と抽出されたデータとがサーバシステムに送信される。
【００３９】
故に、補足データと抽出されたデータとは、同じデータベースに格納されず、情報は単に、抽出されたデータと符号化された情報とを生成する時、アプリケーションの処理メモリで利用可能である。従って、ネットワークのスニフィング、盗用、または任意のデータベースのハッキングは無意味であることが分かる。
【００４０】
この第２の使用場面の第２イベントによると、考えられるアプリケーションシステムＡＳｋは、所定のアプリケーションシステムＡＳｊと異なるアプリケーションシステムである。前記アプリケーションシステムＡＳｋは、インデクスＩＤで索引付けされた応用データをその関連データベースＤＢＡＳＫに含まない。故に、応用データの検索は、以下に示す段階を含む。サーバシステムからのインデクスＩＤの受信時、考えられるアプリケーションシステムＡＳｋは、所定のアプリケーションシステムＡＳｊに前記インデクスＩＤを送信する。その後、所定のアプリケーションシステムＡＳｊは、インデクスＩＤを受信して、インデクスＩＤにより応用データをそのデータベースＤＢＡＳｊから検索する。最後に、所定のアプリケーションシステムＡＳｊは、考えられるアプリケーションシステムＡＳｋに応用データを送信する。
【００４１】
第２の場面のこの第２イベントは、考えられるアプリケーションシステムＡＳｋが要求された応用データを格納しない場合でも、この考えられるアプリケーションシステムＡＳｋは、この応用データが提供される一方で、機密情報のハイレベルな安全性を保持するという事実を強調する。実際、この機密情報は、格納されず、任意のアプリケーションシステム間または任意のアプリケーションシステムとサーバシステムとの間で単一伝送により伝送もされない。
【００４２】
好ましい実施形態では、補足データと抽出されたデータとを生成する段階は、第１部分および第２部分に情報を分割することを含む。
【００４３】
本発明は特に、情報がクレジットカード番号である方法に都合がよい。その後、補足データは、クレジットカード番号の外見上の桁に対応することができ、抽出されたデータは、クレジットカード番号の隠された桁に対応することができる。
【００４４】
情報の符号化バージョンを生成する段階は、ハッシュ関数を介して情報のハッシュ値を計算することを含むことができる。好ましい実施形態では、ハッシュ関数は、サーバシステム（ＳＳ）に認識されない。従って、本発明により、人が情報の符号化バージョンへのアクセスを介して機密情報を取得しうるリスクをかなり限定することができる。
【００４５】
本発明はまた、分散型環境で安全であることを要求する情報に関連付けられる利用データを格納および検索するためのシステムを提供し、前記情報と前記利用データとを使用できる複数のアプリケーションシステムＡＳｉｉ＝１．．ｎを含む。本発明のシステムは、サーバシステムＳＳと、前記複数のアプリケーションシステムＡＳｉｉ＝１．．ｎのうち所定のアプリケーションシステムＡＳｊとを含む。
【００４６】
前記所定のアプリケーションシステムＡＳｊは、
−前記情報を受信し、
−抽出されたデータと補足データとを前記情報から生成して、独立して取られた前記抽出されたデータと前記補足データとは、任意のアプリケーションシステムＡＳｉｉ＝１．．ｎによって前記情報ＣＣ＃を使用するのに十分ではなく、共に取られた前記抽出されたデータと前記補足データとから前記情報が生成および使用されることができ、
−符号化された情報を前記情報から生成し、
−抽出されたデータと符号化された情報とをサーバシステムＳＳに送信する
ように配置される。
【００４７】
サーバシステムＳＳは、
−インデクスＩＤを生成して、符号化された情報と抽出されたデータとにこのインデクスＩＤを割り当てて、
−サーバシステムＳＳに関連付けられるデータベースＤＢｓｓへ、符号化された情報と抽出されたデータとインデクスＩＤとを格納し、
−複数のアプリケーションシステムＡＳｉｉ＝１．．ｎの前記所定のアプリケーションシステムＡＳｊにインデクスＩＤを転送する
ように配置される。
【００４８】
所定のアプリケーションシステムＡＳｊはまた、
−情報に関するアプリケーション格納データにインデクスＩＤを割り当てて、
−前記所定のアプリケーションサーバＡＳｊに関連付けられるデータベースＤＢＡＳｊに前記アプリケーション格納データと共にインデクスＩＤを格納する
ように配置される。
【００４９】
具体的に、本発明によるシステムは、サーバシステムとアプリケーションシステムＡＳｉとを含み、それらは、上記説明した方法を実行するように配置される。
【００５０】
機密情報を扱うアプリケーションシステムは、処理メモリを含み、情報が処理メモリのみで利用可能なように配置される。
【００５１】
一度アプリケーションシステムが情報を使用した場合、それは、前記情報を削除する。従って、機密情報は、もはや使用後にアクセス不能となる。これは、盗用のリスクを限定する。
【００５２】
好ましい実施形態では、システムは、アプリケーションシステム（ＡＳｉ）の処理手段に少なくともキャッシュメカニズムを含む。キャッシュメカニズムは、前記情報の処理中に情報を格納するように配置される。処理毎に１つのキャッシュインスタンスがある。
【００５３】
本発明の好ましい実施形態では、システムは、プロキシ要素を含み、それは、安全な格納システムの一部であり、アプリケーションシステムに含まれる。プロキシ要素の役割は、プロキシ要素をホストするアプリケーションシステムで生ずることが意図される以下の段階のうち少なくとも１つを扱うことである。
−補足データと抽出されたデータとを情報から生成する。
−前記情報から符号化された情報を生成する。
−サーバシステムＳＳに抽出されたデータと符号化された情報とを送信する。
−プロキシ要素をホストするアプリケーションシステムに関連付けられるデータベースに補足データを送信する。
−プロキシ要素をホストするアプリケーションシステムから送信されるべきデータを含むメッセージを生成し、前記メッセージは、ＥＤＩＦＡＣＴのような形式である。
−プロキシ要素をホストするアプリケーションシステムで受信されるべきデータを含むメッセージを読み出し、前記メッセージは、ＥＤＩＦＡＣＴのような形式である。
【００５４】
通常、プロキシ要素は、ミドルウェアライブラリにすることができる。それは、サーバシステムに対してアプリケーションシステムのアプリケーションをインタフェースする各種ＡＰＩ（アプリケーションプログラミングインタフェース）を提供する。プロキシ要素はまた、キャッシュメカニズムを含むことができる。
【００５５】
情報処理およびデータ交換を扱うが、プロキシ要素は、本発明のシステムで任意のアプリケーションの統合をかなり容易にする。
【００５６】
本発明のシステムのもう１つの実施形態では、アプリケーションシステムは、プロキシ要素を含まず、それ独自によって全ての要求されたアクションを扱うことができる。故に、そのようなアプリケーションシステムは例えば、サーバシステムからメッセージをフォーマット／読み出すことができ、情報の符号化バージョン等を計算する。
【００５７】
本発明の特定の実施形態では、方法は、任意の考えられるアプリケーションシステムＡＳｋで以下のステップを含む。考えられるアプリケーションシステムＡＳｋは、いくつかのインデクスＩＤを含むリクエストメッセージを生成する。その後、それは、前記リクエストメッセージをサーバシステムに送信する。また、サーバシステムは、そのデータベースを検索して、リクエストメッセージに含まれたインデクスＩＤに関連付けられる各抽出されたデータを検索する。その後、サーバシステムは、検索された抽出されたデータを含む応答メッセージを送信する。
【００５８】
その後、考えられるアプリケーションシステムＡＳｋは、サーバシステムＳＳから応答メッセージを受信する。最後に、考えられるアプリケーションシステムＡＳｋは、抽出されたデータがサーバシステムから受信された全情報を再構築することができる。
【００５９】
従って、１つの単一取引で、アプリケーションシステムは、サーバシステムにインデクスのリストを送信して、インデクスリストに対応する全ての抽出されたデータを受信することができる。
【００６０】
そのようなバッチ処理はまた、応用データを検索するために使用されることができる。実際、考えられるアプリケーションシステムは、抽出されたデータのリストと機密情報の符号化バージョンとを含むリクエストメッセージをサーバシステムＳＳに送信することができる。サーバシステムは、リクエストメッセージに含まれる抽出されたデータと符号化されたバージョンとのペアに割り当てられる各インデクスをそのデータベースから検索する。その後、それは、検索されたインデクスを含む応答メッセージを、考えられるアプリケーションシステムに送信する。故に、考えられるアプリケーションシステムは、応答メッセージのインデクスで索引付けされる応用データを検索することができる。
【００６１】
従って、そのようなバッチ処理により、多くのユーザにとって実質的に簡単で迅速な情報検索を可能にする。従って、本発明は、アプリケーションユーザに提供されるサービスを高める方法を提供する。そのようなバッチ処理は特に、新たなアプリケーションが本発明の格納システムに統合される時に役立つ。実際、統合を行うと、大量のデータが迅速かつ簡単に格納される必要がある。
【００６２】
上記説明した実施形態によると、抽出されたデータと符号化された情報とは、インデクスを検索するためにサーバシステムに送信される。抽出されたデータと符号化された情報とを送信することにより、誤ったインデクスを検索するリスクをかなり低減することができる。
【００６３】
代替の実施形態によると、アプリケーションシステムでインデクスを受信するために、符号化された情報がサーバシステムに送信されるだけである。この実施形態で誤ったインデクスを得るリスクは、抽出されたデータと符号化された情報とがリクエストにある時よりも高いが、前記リスクは、かなり低いままである。そのような代替の実施形態は特に、大量のデータを扱う時に役立つ。実際、それは、重い抽出されたデータを扱い、サーバシステムに送信することを回避する。
【００６４】
情報は、数字、文字、記号またはそれら３つの組み合わせにより構成されることができる。本発明で指定されるように、情報は、数字に限定されない。抽出されたデータと補足データとはまた、数字、文字、記号またはそれら３つの組み合わせを含むことができる。応用データは、数字、文字、記号、写真、映像等のような、任意の性質のデータおよび任意の種類のファイルを含んでもよい。
【００６５】
システムはまた、追加の安全手段を含むことができる。これらの安全手段は、各種アプリケーションシステム間およびアプリケーションシステムとサーバシステムとの間の交換の安全性を強化するように配置される。これらの安全手段は、各メッセージの送信者が実際に権限を与えられているかをチェックすることができる。それらは、権限の無い送信者によって送信されたメッセージを廃棄することができる。例えば、サーバシステムへのアクセスは、限定数の権限のあるアプリケーションシステムに限定されてもよい。
【００６６】
実際、安全手段は、システムの各種要素間で交換されるメッセージの符号化および復号化を実行する。安全手段はまた、異常動作が試みられる時に警告を発するための手段を含むことができる。それらはまた、データの交換、取引および処理に対する監視と記録とのための手段を含むことができる。
【００６７】
本発明の他の特徴、目的および利点は、以下の図面に示される、以下の説明からより明らかになる。
【図面の簡単な説明】
【００６８】
【図１】図１は、本発明によるシステムの主な要素を含む例のハイレベルブロック図である。
【図２】図２は、機密情報を格納するための使用場面を示すハイレベルブロック図である。
【図３】図３は、機密情報検索の第１使用場面を示すハイレベルブロック図である。
【図４】図４は、機密情報検索の第２使用場面を示すハイレベルブロック図である。
【図５】図５は、応用データ検索の第１使用場面を示すハイレベルブロック図である。
【図６】図６は、応用データ検索の第２使用場面を示すハイレベルブロック図である。
【発明を実施するための形態】
【００６９】
本発明の以下の詳細な説明は、添付図面に言及する。説明は、例示的実施形態を含むが、他の実施形態が可能であり、変更は、本発明の精神および範囲から逸脱しないで説明された実施形態に対して行うことができる。
【００７０】
図１は、情報を格納および検索するための本発明によるシステムを示す。
【００７１】
システムは、ＡＳ１、ＡＳ２．．、ＡＳｉ．．、ＡＳｎとして参照されるｎ個のアプリケーションシステムを含む。各アプリケーションシステムは、データベースＤＢＡＳ１、ＤＢＡＳ２．．、ＤＢＡＳｉ．．、ＤＢＡＳｎに関連付けられる。アプリケーションシステムは、機密情報を使用することを意図するアプリケーションを含む。それらは、協力する複数の企業からなる組織によって、またはＧＤＳのような組織によって運用される。ユーザに提供されるサービスの効率を高めるために、組織は、取引が実行される度にユーザが同じデータを再入力する必要性を取り除くことに努める。
【００７２】
これはまた、ユーザが前記機密情報を操作または入力する時、機密情報の喪失または盗用のリスクを低減する。
【００７３】
システムはまた、サーバシステムＳＳと、このサーバシステムＳＳに関連付けられたデータベースＤＢＳＳとを含むセキュア格納システムを含む。
【００７４】
システムはまた、各アプリケーションシステムＡＳｉをサーバシステムＳＳに相互接続するインターネット等の通信ネットワークを含む。通信ネットワークはまた、アプリケーションシステムＡＳｉが分散型ネットワークで共に情報を交換できるようにする。利点として、システムの各種要素は、リモートに位置付けられる。
【００７５】
情報格納システムの要素は、機密または有益情報に対する安全な格納および検索を提供する処理を実行する。
【００７６】
機密情報の安全な格納および検索は、例示的な使用場面を介して以下で説明される。これらの使用場面では、機密情報は、クレジットカード番号ＣＣ＃である。通常、クレジットカード番号は、１６桁から形成される。
【００７７】
図２は、本発明が機密情報を格納できるようにする方法を示す。
【００７８】
ステップ２１では、複数のアプリケーションシステムＡＳｉｉ＝１．．ＮのうちアプリケーションシステムＡＳｊは、クレジットカード番号ＣＣ＃を受信する。通常、このクレジットカード番号は、例えばキーボードのような従来のインタフェースを介してユーザがそれを入力した後に受信される。このクレジットカード番号は、ユーザがそれを再入力することを要求せずに、後の段階で簡単に使用できなければならない。従って、このクレジットカード番号は、格納される必要がある。クレジットカード番号の格納を扱うアプリケーションシステムＡＳｊは、以下に第１のアプリケーションシステムＡＳｊとして指定される。
【００７９】
第１のアプリケーションシステムＡＳｉは、クレジットカード番号ＣＣ＃を第１部分および第２部分に分割する。第１部分は、この実施例では、クレジットカード番号のうち最初の６桁および最後の４桁に対応する。この第１部分は、アプリケーションＡＳｊで利用可能のままである。第２部分は、残りの６桁に対応する。この第２部分は、アプリケーションシステムＡＳｊで利用可能のままではない。以下では、第１および第２部分は各々、指定された外見上の桁Ａ（ＣＣ＃）および隠された桁Ｃ（ＣＣ＃）である。
【００８０】
外見上の桁Ａ（ＣＣ＃）および隠された桁Ｃ（ＣＣ＃）は、以下の方法で生成される。
−それらが独立して取られる時、任意のアプリケーションシステムＡＳｉｉ＝１．．ｎがクレジットカード番号ＣＣ＃を使用できず、
−それらが共に取られる時、前記クレジットカード番号ＣＣ＃は、再構築および使用できる。
【００８１】
第１のアプリケーションシステムＡＳｊはまた、クレジットカード番号ＣＣ＃の符号化バージョンＨ（ＣＣ＃）を生成する。特に、第１のアプリケーションシステムＡＳｊは、クレジットカード番号ＣＣ＃のハッシュ値を含む。
【００８２】
ステップ２２では、第１のアプリケーションシステムＡＳｊは、隠された桁Ｃ（ＣＣ＃）および符号化されたクレジットカード番号Ｈ（ＣＣ＃）をサーバシステムＳＳに送信する。
【００８３】
サーバシステムＳＳは、隠された桁Ｃ（ＣＣ＃）および符号化されたクレジットカード番号Ｈ（ＣＣ＃）を受信する。それは、インデクスＩＤを生成し、このインデクスＩＤを符号化されたクレジットカード番号Ｈ（ＣＣ＃）および隠された桁Ｃ（ＣＣ＃）に割り当てる。その後、サーバシステムＳＳは、符号化されたクレジットカード番号Ｈ（ＣＣ＃）、隠された桁Ｃ（ＣＣ＃）およびインデクスＩＤを、サーバシステムＳＳに関連付けられたデータベースＤＢＳＳに格納する（ステップ２３）。サーバシステムＳＳは、一度そのデータベースＤＢＳＳでインデクスＩＤが利用可能であることをチェックすると、インデクスＩＤを生成する（ステップ２４）。２つのアプレット（two-uplet）（Ｈ（ＣＣ＃）、Ｃ（ＣＣ＃））が既にサーバシステムＳＳにより格納された場合、その後この２つのアプレット（Ｈ（ＣＣ＃）、Ｃ（ＣＣ＃））に割り当てられたインデクスＩＤは、検索され、アプリケーションシステムに戻される。故に、サーバシステムＳＳによって動作されるチェックは、インデクスＩＤの利用性をチェックすることに限定されない。
【００８４】
ステップ２５では、サーバシステムＳＳはまた、複数のアプリケーションシステム（ＡＳｉｉ＝１．．ｎ）の第１のアプリケーションシステムＡＳｊにインデクスＩＤを転送する。
【００８５】
その後、第１のアプリケーションシステムＡＳｊは、外見上の桁Ａ（ＣＣ＃）にインデクスＩＤを割り当てる。最後に、第１のアプリケーションシステムＡＳｊは、そのデータベースＤＢＡＳｊに外見上の桁Ａ（ＣＣ＃）と共にインデクスＩＤを格納する（ステップ２６）。
【００８６】
故に、第１のアプリケーションシステムＡＳｊは単に、隠された桁Ｃ（ＣＣ＃）および符号化されたＨ（ＣＣ＃）クレジットカード番号を送信する。全てのクレジットカード番号ＣＣ＃の交換はされない。その上、第１のアプリケーションシステムＡＳｊのデータベースＤＢＡＳｊが単に外見上の桁Ａ（ＣＣ＃）およびＩＤを格納するので、およびサーバシステムのデータベースＤＢｓｓが単に隠された桁Ｃ（ＣＣ＃）、符号化されたＨ（ＣＣ＃）クレジットカード番号およびインデクスＩＤを格納するので、その後隠されたＣ（ＣＣ＃）および外見上の桁Ａ（ＣＣ＃）は、同じデータベースに格納されない。故に、ネットワークのスニフィング（sniffing）、盗用、または第１のアプリケーションシステムＡＳｊのデータベースまたはサーバシステムＤＢｓｓのデータベースの何れか１つに対するハッキングによって、外見上のＡ（ＣＣ＃）および隠された桁Ｃ（ＣＣ＃）の両方または全てのクレジットカード番号ＣＣ＃を得ることができない。故に、クレジットカード番号ＣＣ＃は、再構築されず、不正使用できない。
【００８７】
その上、ハッシュ処理は、サーバアプリケーションＡＳｊで行われる。故に、関数は、サーバシステムＳＳに認識されないままである。故に、本発明は、人がクレジットカード番号ＣＣ＃の符号化バージョンへのアクセスを介してクレジットカード番号ＣＣ＃を得るリスクをかなり限定することを可能にする。
【００８８】
また、アプリケーションシステムＡＳｊによって送信されたデータが前記アプリケーションシステムＡＳｊのデータベースＤＢＡＳｊに格納されないので、その後送信されたデータは、格納されたデータに一致させることができない。従って、アプリケーションシステムＡＳｊのデータベースＤＢＡＳｊのハッキングと、このアプリケーションシステムＡＳｊによって伝送されたメッセージのスニフィングとにより、情報（例えば、クレジットカード番号ＣＣ＃）を得ようとしても無駄である。
【００８９】
各アプリケーションシステムＡＳｉによって生成された隠された桁Ｃ（ＣＣ＃）は、サーバシステムのデータベースＤＢｓｓに共に全て格納される。しかし、これらの隠された桁は、全てのクレジットカード番号ＣＣ＃を再構築するのに必須である。故に、機密情報を安全にするために割り当てられた資源は、サーバシステムＳＳおよびその専用データベースＤＢｓｓ上に集約されることができる。本発明は、各種アプリケーションシステムＡＳｉｉ＝１．．ｎ間のこれら資源を拡散する必要性を取り除く。故に、安全性は、サーバシステムＳＳで、およびその関連データベースＤＢｓｓでかなり高められるので、どんな盗用でも防ぐことができる。この局面は、各種アプリケーションシステムＡＳｉｉ＝１．．ｎとアプリケーションシステムに関連付けられた各種データベースＤＢＡＳｉとが全てリモートに位置決めされる分散型環境において、および／または各種アプリケーションシステムＡＳｉｉ＝１．．ｎおよび各種データベースＤＢＡＳｉがサーバシステムＳＳおよびそのデータベースＤＢＳＳからリモートに位置決めされる分散型環境において、特に有効である。
【００９０】
その上、インデクスＩＤは、サーバシステムＳＳによって生成されるが、任意のアプリケーションシステムＡＳｊによって生成されない。故に、インデクスＩＤは、単一のクレジットカード番号ＣＣ＃に割り当てられる。故に、同じクレジットカード番号ＣＣ＃について一致するインデクスＩＤがない。所定のクレジットカード番号ＣＣ＃に関するデータを交換するために、各種アプリケーションシステムＡＳｉｉ＝１．．ｎは、前記クレジットカード番号ＣＣ＃に関連付けられた固有のインデクスＩＤを共有することができる。従って、本発明は、多くのアプリケーションシステムＡＳｉｉ＝１．．ｎが前記クレジットカード番号ＣＣ＃を使用する分散型環境において、クレジットカード番号ＣＣ＃を格納するのに特に都合が良い。
【００９１】
例えば、一度全てのクレジットカード番号が既に第１のアプリケーションシステムＡＳｊに入力されると、組織の各種アプリケーションシステムは、データを共有して、任意のアプリケーションシステムＡＳｋでユーザがそのクレジットカード番号を再入力する必要性を取り除くことができる。この使用場面は、図４を参照して以下に説明される。
【００９２】
故に、本発明は、アプリケーションユーザに提供されるサービスの効率を高めることに貢献する。
【００９３】
図３および４を参照して、クレジットカード番号ＣＣ＃の検索を示す使用場面は、以下に説明される。
【００９４】
図３は、第１のアプリケーションシステムＡＳｊ、またはそのデータベースＤＢＡＳｊに格納された外見上の桁Ａ（ＣＣ＃）を有する任意のアプリケーションシステムがクレジットカード番号ＣＣ＃を検索する必要があることを示す。
【００９５】
このため、ステップ３１で、第１のアプリケーションシステムＡＳｊは、そのデータベースからインデクスＩＤを受信する。その後ステップ３２で、それは、サーバシステムＳＳにインデクスＩＤを送信する。サーバシステムＳＳはそのデータベースＤＢｓｓから前記インデクスＩＤで索引付けされた隠された桁Ｃ（ＣＣ＃）を検索する（ステップ３３および３４）。サーバシステムＳＳはまた、第１のアプリケーションシステムＡＳｊへ隠された桁Ｃ（ＣＣ＃）を送信する（ステップ３５）。
【００９６】
第１のアプリケーションシステムＡＳｊはそのデータベースＤＢＡＳｊから、インデクスＩＤで索引付けされた外見上の桁Ａ（ＣＣ＃）を検索する。最後に、第１のアプリケーションシステムＡＳｊは、外見上の桁Ａ（ＣＣ＃）と、サーバシステムＳＳから受信した隠された桁Ｃ（ＣＣ＃）とを組み合わせて、クレジットカード番号ＣＣ＃を再構築する（ステップ３６）。
【００９７】
図４は、第２の場面を示し、クレジットカード番号ＣＣ＃は、インデクスＩＤで索引付けされた外見上のクレジットカード番号Ａ（ＣＣ＃）を予め生成も格納もしてない任意のアプリケーションシステムＡＳｋで検索される必要がある。前記任意のアプリケーションシステムＡＳｋは故に、第１のアプリケーションシステムＡＳｊとは異なり、以下で第２のアプリケーションシステムＡＳｋとして指定される。
【００９８】
各種アプリケーションシステムＡＳｉｉ＝１．．ｎは、それらが提供するサービスの種類に依存して種類分け(type)される。これらのアプリケーションシステムＡＳｉｉ＝１．．ｎは、互いを認識して、それらが各々要求するデータの種類を識別する。第１のアプリケーションシステムＡＳｊは、他のアプリケーションシステムに関する実用的データを受信して、その後第１のアプリケーションシステムＡＳｊは、前記他のアプリケーションシステムにこのデータを送信する。
【００９９】
実用的データの伝送は、一度前記データが第１のアプリケーションシステムＡＳｊで利用可能となると、自動的に動作されることができる。
【０１００】
例えば、一度外見上の桁Ａ（ＣＣ＃）がＡＳｊによって生成され、一度インデクスＩＤがサーバシステムＳＳからＡＳｊで受信されると、その後ＡＳｊは、外見上の桁Ａ（ＣＣ＃）およびインデクスＩＤを要求するとして種類分けされる全てのアプリケーションシステムに外見上の桁Ａ（ＣＣ＃）およびインデクスＩＤを送信する（ステップ４１、４２）。
【０１０１】
その後、前記実用的データが提供された各アプリケーションシステムは、それを使用することができる。例えば、第２のアプリケーションシステムＡＳｋがＡＳｊから外見上の桁Ａ（ＣＣ＃）およびインデクスＩＤを受信するとすぐに（ステップ４２）、それは、クレジットカード番号ＣＣ＃を取得することができる。具体的に、インデクスＩＤの受信時、第２のアプリケーションシステムＡＳｋは、サーバシステムＳＳにこのインデクスＩＤを送信する（ステップ４３）。サーバシステムＳＳは、前記インデクスＩＤで索引付けされた隠された桁Ｃ（ＣＣ＃）をそのデータベースＤＢｓｓから検索する（ステップ４４および４５）。サーバシステムＳＳはまた、第２のアプリケーションシステムＡＳｋへ隠された桁Ｃ（ＣＣ＃）を送信する（ステップ４６）。その後、第２のアプリケーションシステムＡＳｋは、第１のアプリケーションシステムＡＳｊから受信した外見上の桁Ａ（ＣＣ＃）とサーバシステムＳＳから受信した隠された桁Ｃ（ＣＣ＃）とを組み合わせて、クレジットカード番号ＣＣ＃を再構築する（ステップ４７）。最後に、第２のアプリケーションシステムＡＳｋのアプリケーションは、カード番号ＣＣ＃を使用することができる。
【０１０２】
利点として、第２のアプリケーションシステムＡＳｋは、インデクスＩＤで索引付けされた外見上のクレジットカード番号Ａ（ＣＣ＃）をそのデータベースＤＢＡＳｋに格納する（ステップ４８）。故に次に、第２のアプリケーションシステムＡＳｋは、第１のアプリケーションシステムＡＳｊが外見上の桁Ａ（ＣＣ＃）を転送することを要求せずに、クレジットカード番号ＣＣ＃を取得できる。
【０１０３】
この実施形態は、外見上の桁Ａ（ＣＣ＃）およびインデクスＩＤが共に伝送されることを意味する。この実施形態は、全てのアプリケーションが単一の組織によって運用され、各種アプリケーション間の相互作用が全体的にユーザトランスペアレントである環境で、特に有利である。特に、最後のユーザ（カード所持者）が、そのクレジットカード番号ＣＣ＃に割り当てられたインデクスＩＤにアクセスすることはない。
【０１０４】
図３および４の使用場面に示す通り、全てのクレジットカード番号ＣＣ＃は、交換も格納もされない。考えられるアプリケーションシステムＡＳｋが前記クレジットカード番号ＣＣ＃を要求する処理を扱う時、クレジットカード番号ＣＣ＃は、前記考えられるアプリケーションシステムＡＳｋでその使用中に利用可能となるだけである。通常、クレジットカード番号ＣＣ＃は、処理メモリ以外に格納されない。一度使用が完了すると、クレジットカード番号ＣＣ＃は、除去される。その上、外見上の桁Ａ（ＣＣ＃）および隠された桁Ｃ（ＣＣ＃）は、同じデータベースに格納されない。従って、ネットワークのスニフィングまたは任意の１つのデータベースの盗用によっても、クレジットカード番号ＣＣ＃を取得することができない。
【０１０５】
図３および４の使用場面はまた、所定のアプリケーションがクレジットカード番号ＣＣ＃または外見上の桁Ａ（ＣＣ＃）を今まで提供されてないときでも、複数の分散型アプリケーションシステムがデータ交換をして、要求されたクレジットカード番号ＣＣ＃を考えられるアプリケーションＡＳｋが取得できるようにすることを示す。従って、本発明は、一度クレジットカード番号ＣＣ＃が分散型環境のうち任意の１つのアプリケーションシステムで既に入力されると、消費者がクレジットカード番号ＣＣ＃を再入力する必要性を取り除く、安全な方法を提供する。その上、各種アプリケーションシステム間のデータ交換は、全体的にユーザトランスペアレントである。
【０１０６】
図５および６を参照して、クレジットカード番号ＣＣ＃に関する応用データ（applicative data）の検索を示す使用場面が以下に説明される。これらの応用データは、少なくともアプリケーションシステムによって使用されることを意図する。その上、前記応用データは、高レベルの安全性を要求しない。従って、応用データは、所定のアプリケーションのデータベース等に格納されることができる。例えば、応用データは、ユーザプロファイルデータ（ユーザのロイヤルティプログラム、ユーザのプリファレンス、ユーザの写真等）に関連することができる。
【０１０７】
図５は、応用データを使用する必要のあるアプリケーションシステムが既にそれを格納してそのデータベースにそれを索引付けしたイベントを示す。そのようなアプリケーションシステムは、以下の第１のアプリケーションシステムＡＳｊで指定される。
【０１０８】
ステップ５１で、第１のアプリケーションシステムＡＳｊは、クレジットカード番号ＣＣ＃を受信する。その後それは、前記クレジットカード番号ＣＣ＃から、隠された桁Ｃ（ＣＣ＃）および符号化されたクレジットカード番号Ｈ（ＣＣ＃）を生成する。ステップ５２でそれは、隠された桁Ｃ（ＣＣ＃）および符号化されたクレジットカード番号Ｈ（ＣＣ＃）をサーバシステムＳＳに送信する。その後、サーバシステムＳＳは、隠された桁Ｃ（ＣＣ＃）および符号化されたクレジットカード番号Ｈ（ＣＣ＃）に対応するインデクスＩＤをそのデータベースＤＢｓｓから検索する（ステップ５３および５４）。その後、サーバシステムＳＳは、第１のアプリケーションシステムＡＳｊにインデクスＩＤを転送する（ステップ５５）。インデクスＩＤの受信時、第１のアプリケーションシステムＡＳｊは、インデクスＩＤに索引付けされた応用データを検索する（ステップ５６および５７）。最後に、第１のアプリケーションシステムＡＳｊのアプリケーションは、応用データを使用することができる。
【０１０９】
図６は、応用データを使用する必要のあるアプリケーションシステムのデータベースがそのデータベースで前記応用データを格納または索引付けしないイベントを示す。そのような応用システムは、以下の第２のアプリケーションシステムＡＳｋで指定される。
【０１１０】
ステップ６１では、第２のアプリケーションシステムＡＳｋは、クレジットカード番号ＣＣ＃を受信する。ステップ６２、６３、６４、６５は実質、上記説明したステップ５２、５３、５４、５５と同じである。ステップ６５では、第２のアプリケーションシステムＡＳｋは、サーバシステムＳＳからインデクスＩＤを受信する。そのデータベースＤＢＡＳＫが受信インデクスに索引付けされた応用データを格納しないことをチェックした後、第２のアプリケーションシステムＡＳｋは、第１のアプリケーションシステムＡＳｊにインデクスＩＤを送信する（ステップ６６）。第１のアプリケーションシステムＡＳｊは、そのデータベースＤＢＡＳｊをサーチし、インデクスＩＤに索引付けされた応用データを検索する（ステップ６７および６８）。その後、第１のアプリケーションシステムＡＳｊは、第２のアプリケーションシステムＡＳｋに応用データを転送する（ステップ６９）。最後に、応用データは、第２のアプリケーションシステムＡＳｋのアプリケーションでの使用に利用可能である。
【０１１１】
利点として、第２のアプリケーションシステムＡＳｋは、インデクスＩＤに索引付けされた応用データをそのデータベースＤＢＡＳｋに格納する。
【０１１２】
故に、応用データは、応用データが既に索引付けされて任意のデータベースに格納された条件と、クレジットカード番号が既に一度入力された条件とで、迅速に検索されることができる。
【０１１３】
これにより、応用データの編集に対して簡単でユーザフレンドリな使用が可能になるので、ユーザにとってより魅力的なアプリケーションになる。その上、各種アプリケーションシステム間のデータ交換は全体として、ユーザトランスペアレントである。
【０１１４】
クレジットカード番号の検索に関する使用場面のように、応用データの検索に取り組む使用場面では、アプリケーションシステムＡＳｊ、ＡＳｋだけでなくサーバシステムＳＳも全てのクレジットカード番号ＣＣ＃を保持しないので、クレジットカードの盗用リスクは、かなり低減される。その上、任意のアプリケーションシステムＡＳｉｉ＝１．．ｎおよびサーバシステムＳＳ間でも、２つのアプリケーションシステムＡＳｊ、ＡＳｋ間でも、全体のクレジットカード番号ＣＣ＃が単一伝送（single transmission）により伝送されない。
【０１１５】
好ましい実施形態では、格納システムは、アプリケーションシステムで少なくとも処理および取引モジュールを含む。図２〜６の特定の実施形態で示す通り、システムは、各アプリケーションシステムでプロキシ要素を含む。もう１つの実施形態によると、アプリケーションシステムのいくつかのみがプロキシ要素に関連付けられてもよい。プロキシ要素は、セキュア格納システムの一部である。プロキシは、アプリケーションシステムで発生することが意図される以下の段階のうち少なくともいくつかを扱い、前記プロキシ要素は
−クレジットカード番号ＣＣ＃から外見上の桁Ａ（ＣＣ＃）および隠された桁Ｃ（ＣＣ＃）を生成すること
−前記クレジットカード番号ＣＣ＃から符号化されたＨ（ＣＣ＃）クレジットカード番号を生成すること
−隠された桁Ｃ（ＣＣ＃）および符号化されたクレジットカード番号Ｈ（ＣＣ＃）をサーバシステムＳＳに送信すること
−さらなるクレジットカード番号ＣＣ＃の検索のためにサーバシステムＳＳにインデクスＩＤを送信すること
−アプリケーションシステムに関連付けられたデータベースに外見上の桁Ａ（ＣＣ＃）を送信すること
−アプリケーションシステムに関連付けられたデータベースから外見上の桁Ａ（ＣＣ＃）を検索すること
−サーバシステムまたは他のアプリケーションシステムにアプリケーションシステムから送信すべきデータを含み、ＥＤＩＦＡＣＴのような形式のメッセージを生成すること
−サーバシステムまたは他のアプリケーションシステムから受信され、ＥＤＩＦＡＣＴのような形式のメッセージを読み出すこと
【０１１６】
通常、プロキシ要素は、ミドルウェアライブラリにすることができる。それは、各種ＡＰＩ（アプリケーションプログラミングインタフェース）を提供して、アプリケーションシステムのアプリケーションソフトウェアとサーバシステムとをインタフェースする。プロキシ要素はまた、キャッシュメカニズムを含むことができる。キャッシュメカニズムは、クレジットカード番号ＣＣ＃を処理する間に前記クレジットカード番号ＣＣ＃を格納するよう配置される。処理毎に１つのキャッシュインスタンス（cache  instance）があるので、クレジットカード番号ＣＣ＃は、一度それがアプリケーションシステムのアプリケーションによって使用されると、もう利用できない。
【０１１７】
クレジットカード番号ＣＣ＃の処理およびデータ交換を扱うことを介して、プロキシ要素は、本発明のシステムにおける任意のアプリケーションの統合をかなり容易にする。
【図１】
0005383814.tif 000002
【図２】
0005383814.tif 000003
【図３】
0005383814.tif 000004
【図４】
0005383814.tif 000005
【図５】
0005383814.tif 000006
【図６】
0005383814.tif 000007