(57)【要約】  本発明によれば、一義的なクライアント識別子（Ｓ−ＣＫ）により識別可能なクライアント（ＣＬ）のデータを記憶装置（ＳＶ）において記憶および特定する方法が提供される。この場合、それらのデータは少なくともクライアントデータ識別値（Ｓ−ＣＤＩ）を含み、クライアント（ＣＬ）は、クライアントデータ識別値（Ｓ−ＣＤＩ）をデータに任意に割り当て、それらのデータは、クライアント（ＣＬ）により記憶装置（ＳＶ）においてもっぱらそれらのクライアントデータ識別値（Ｓ−ＣＤＩ）を介して特定され、さらにアクセスコントロールインスタンス（ＺＫＩ）が設けられており、このアクセスコントロールインスタンス（ＺＫＩ）は、選択された以下のクライアント（ＣＬ）のクライアント識別子（Ｓ−ＣＫ）が列挙された整合可能なホワイトリスト（ＰＬ）を有しており、すなわち選択されたクライアント（ＣＬ）は、もっぱら１つのセッションセットアップステップにおいてセッションスタートリクエストから始めて、一時的な補足情報をこのアクセスコントロールインスタンス（ＺＫＩ）から受け取り、この一時的な補足情報を用いて、記憶装置（ＳＶ）においてデータを記憶および特定することができ、一時的な補足情報各々は、そのつど特定の期間後にこの補足情報の有効性を失う。
2021524118.tif 000002
【特許請求の範囲】
【請求項１】
一義的なクライアント識別子（Ｓ−ＣＫ）により識別可能なクライアント（ＣＬ）のデータを記憶装置（ＳＶ）において記憶および特定する方法であって、
前記データは、少なくともクライアントデータ識別値（Ｓ−ＣＤＩ）を含み、前記クライアント（ＣＬ）は、該クライアントデータ識別値（Ｓ−ＣＤＩ）を前記データに任意に割り当て、
前記データは、前記クライアント（ＣＬ）により前記記憶装置（ＳＶ）においてもっぱら前記クライアントデータ識別値（Ｓ−ＣＤＩ）を介して特定され、
アクセスコントロールインスタンス（ＺＫＩ）が設けられており、該アクセスコントロールインスタンス（ＺＫＩ）は、選択された以下のクライアント（ＣＬ）のクライアント識別子（Ｓ−ＣＫ）が列挙された整合可能なホワイトリスト（ＰＬ）を有しており、すなわち前記選択されたクライアント（ＣＬ）は、もっぱら１つのセッションセットアップステップにおいてセッションスタートリクエストから始めて、一時的な補足情報を前記アクセスコントロールインスタンス（ＺＫＩ）から受け取り、該一時的な補足情報を用いて、前記記憶装置（ＳＶ）においてデータを記憶および特定することができ、
一時的な補足情報各々は、そのつど特定の期間後に該補足情報の有効性を失う、
一義的なクライアント識別子（Ｓ−ＣＫ）により識別可能なクライアント（ＣＬ）のデータを記憶装置（ＳＶ）において記憶および特定する方法において、
同値変換関数が同値変換に適した関数全体から選択され、好ましくは排他ＯＲ（ＸＯＲ）が選択され、
クライアント識別子（Ｓ−ＣＫ）ごとに、前記アクセスコントロールインスタンス（ＺＫＩ）の前記ホワイトリスト（ＰＬ）において、最初のクライアント初期化ステップが実行され、該ステップにおいて少なくとも、
個々のクライアント識別子（Ｓ−ＣＫ）に対し任意に選択可能なアクセスコントロールインスタンス−記憶装置シークレット（Ｓ−ＺＳＧ）が、前記アクセスコントロールインスタンス（ＺＫＩ）と前記記憶装置（ＳＶ）との間の共有シークレットとして、以下のように規定される、すなわち前記アクセスコントロールインスタンス（ＺＫＩ）も前記記憶装置（ＳＶ）も、前記アクセスコントロールインスタンス−記憶装置シークレット（Ｓ−ＺＳＧ）を持続的に前記個々のクライアント識別子（Ｓ−ＣＫ）のために呼び出し可能または計算可能であるように、規定され、
前記アクセスコントロールインスタンス（ＺＫＩ）は、秘密のクライアント変換値（Ｓ−ＣＵ）を前記個々のクライアント識別子（Ｓ−ＣＫ）のために任意に生成し、該クライアント変換値（Ｓ−ＣＵ）を持続的に呼び出し可能または計算可能であり、
１つのクライアント（ＣＬ）は、データを後で記憶および特定するために必要とされる一時的な補足情報を前記アクセスコントロールインスタンス（ＺＫＩ）から受け取るために、前記セッションセットアップステップ中、少なくとも自身のクライアント識別子（Ｓ−ＣＫ）を含むセッションスタートリクエストを前記記憶装置（ＳＶ）へ送信し、
さらに応答として、前記記憶装置（ＳＶ）から一時的な１回限りのセッション識別値（Ｔ−ＸＫ）を受け取り、さらに前記クライアント（ＣＬ）は、該セッション識別値（Ｔ−ＸＫ）を前記クライアント識別子（Ｓ−ＣＫ）と共に、前記アクセスコントロールインスタンス（ＺＫＩ）へ伝送し、
さらに前記アクセスコントロールインスタンス（ＺＫＩ）が前記セッション識別値（Ｔ−ＸＫ）を前記クライアント識別子（Ｓ−ＣＫ）と共に受け取った後、前記アクセスコントロールインスタンス（ＺＫＩ）も前記記憶装置（ＳＶ）も、セッションクライアント変換値保護値（Ｔ−ＣＵＳ）をそれぞれ、双方がセキュアハッシュ関数を少なくとも前記アクセスコントロールインスタンス−記憶装置シークレット（Ｓ−ＺＳＧ）と前記１回限りのセッション識別値（Ｔ−ＸＫ）とに適用することによって計算し、
さらに前記アクセスコントロールインスタンス（ＺＫＩ）は、一時的な補足情報としてセッションクライアント変換値（Ｔ−ＣＵ）を、該アクセスコントロールインスタンス（ＺＫＩ）が少なくとも、選択された前記同値変換関数を前記セッションクライアント変換値保護値（Ｔ−ＣＵＳ）と前記クライアント変換値（Ｓ−ＣＵ）とに適用することにより計算し、さらに前記セッションクライアント変換値（Ｔ−ＣＵ）を揮発性記憶のために前記クライアント（ＣＬ）へ伝送し、
１つのクライアント（ＣＬ）は、前記アクセスコントロールインスタンス（ＺＫＩ）からセッションクライアント変換値（Ｔ−ＣＵ）を受け取った後、自身のデータを該データに含まれているクライアントデータ識別値（Ｓ−ＣＤＩ）を介して前記記憶装置（ＳＶ）において、以下のようにして記憶および特定し、すなわち前記クライアント（ＣＬ）はそれぞれセッションデータ識別値（Ｔ−ＸＤＩ）を、少なくとも、選択された前記同値変換関数を自身のクライアントデータ識別値（Ｓ−ＣＤＩ）と前記セッションクライアント変換値（Ｔ−ＣＵ）とに適用することにより計算し、クライアントデータ識別値（Ｓ−ＣＤＩ）ではなくもっぱらセッションデータ識別値（Ｔ−ＸＤＩ）を、前記記憶装置へ送信するようにして、記憶および特定し、
さらに前記記憶装置（ＳＶ）は、１つのクライアント（ＣＬ）のためのセッションクライアント変換値保護値（Ｔ−ＣＵＳ）を、該クライアントから受け取る全てのセッションデータ識別値（Ｔ−ＸＤＩ）に対して規定した後、該セッションデータ識別値（Ｔ−ＸＤＩ）を前記データを含め前記記憶装置（ＳＶ）に記憶する前に、または該セッションデータ識別値（Ｔ−ＸＤＩ）を特定する前に、少なくとも、選択された前記同値変換関数を前記セッションデータ識別値（Ｔ−ＸＤＩ）と前記セッションクライアント変換値保護値（Ｔ−ＣＵＳ）とに適用し、これにより前記クライアントデータ識別値（Ｓ−ＣＤＩ）にスタティックに属する記憶装置データ識別値（Ｓ−ＳＤＩ）をそのつど受け取り、さらに該記憶装置データ識別値（Ｓ−ＳＤＩ）を前記データと共に記憶し、もしくは呼び出された前記データを前記クライアント（ＣＬ）に、該クライアント（ＣＬ）の記憶装置データ識別値（Ｓ−ＳＤＩ）なしで供給し、
その結果、１つのクライアント（ＣＬ）は、該クライアント（ＣＬ）が一時的な補足情報を前記アクセスコントロールインスタンス（ＺＫＩ）から受け取ることなく、データを前記記憶装置（ＳＶ）において記憶および特定することは決して不可能である、ということが保証され、これにより前記アクセスコントロールインスタンス（ＺＫＩ）は、条件次第で前記一時的な補足情報を転送しないことまたは有効性を制限することにより、クライアントによる前記データへのアクセスを阻止することができる
ことを特徴とする、
一義的なクライアント識別子（Ｓ−ＣＫ）により識別可能なクライアント（ＣＬ）のデータを記憶装置（ＳＶ）において記憶および特定する方法。
【請求項２】
前記アクセスコントロールインスタンス（ＺＫＩ）は、任意の不揮発性のクライアント−アクセスコントロールインスタンスシークレット（Ｓ−ＣＧ）を有しており、前記クライアント初期化ステップにおいて、前記クライアント変換値（Ｓ−ＣＵ）がセキュアハッシュから形成され、該セキュアハッシュは少なくとも、前記クライアント−アクセスコントロールインスタンスシークレット（Ｓ−ＣＧ）と前記クライアント識別子（Ｓ−ＣＫ）とに適用され、これにより前記アクセスコントロールインスタンス（ＺＫＩ）は、前記クライアント変換値（Ｓ−ＣＵ）を記憶する必要なく、任意のクライアントのために前記クライアント変換値（Ｓ−ＣＵ）を計算することができる、
請求項１記載の方法。
【請求項３】
前記アクセスコントロールインスタンス（ＺＫＩ）は、任意の不揮発性の記憶装置−アクセスコントロールインスタンスシークレット（Ｓ−ＳＧ）を有しており、前記クライアント初期化ステップにおいて、前記アクセスコントロールインスタンス−記憶装置シークレット（Ｓ−ＺＳＧ）が、前記アクセスコントロールインスタンス（ＺＫＩ）によりセキュアハッシュから形成され、該セキュアハッシュは少なくとも、前記記憶装置−アクセスコントロールインスタンスシークレット（Ｓ−ＳＧ）と前記クライアント識別子（Ｓ−ＣＫ）とに適用され、
前記アクセスコントロールインスタンス（ＺＫＩ）は、前記アクセスコントロールインスタンス−記憶装置シークレット（ＳーＺＳＧ）を前記クライアント識別子（Ｓ−ＣＫ）と共に、不揮発性記憶のために前記記憶装置（ＳＶ）へ伝送し、これにより前記アクセスコントロールインスタンス（ＺＫＩ）は、前記アクセスコントロールインスタンス−記憶装置シークレット（Ｓ−ＺＳＧ）を記憶する必要なく、前記ホワイトリスト（ＰＬ）上の任意のクライアント識別子（Ｓ−ＣＫ）に対し、前記アクセスコントロールインスタンス−記憶装置シークレット（Ｓ−ＺＳＧ）を計算することができる、
請求項１または２記載の方法。
【請求項４】
前記記憶装置（ＳＶ）は、クライアント包括型の付加的な記憶装置ＡＥＳ鍵（ＳＶ−ＡＥＳ鍵）を有しており、
前記記憶装置（ＳＶ）は、前記アクセスコントロールインスタンス（ＺＫＩ）から前記アクセスコントロールインスタンス−記憶装置シークレット（Ｓ−ＺＳＧ）を受け取ると、該アクセスコントロールインスタンス−記憶装置シークレット（Ｓ−ＺＳＧ）を前記記憶装置ＡＥＳ鍵（ＳＶ−ＡＥＳ鍵）によって暗号化し、暗号化された前記アクセスコントロールインスタンス−記憶装置シークレット（Ｓ−ＺＳＧ−ＡＥＳ）を前記アクセスコントロールインスタンス（ＺＫＩ）へ送信し、該アクセスコントロールインスタンス（ＺＫＩ）自体は、暗号化された前記アクセスコントロールインスタンス−記憶装置シークレット（Ｓ−ＺＳＧ−ＡＥＳ）を前記クライアントへ送信し、
前記クライアント（ＣＬ）は前記セッションスタートリクエストにおいて、自身のクライアント識別子（Ｓ−ＣＫ）を、さらに暗号化された前記アクセスコントロールインスタンス−記憶装置シークレット（Ｓ−ＺＳＧ−ＡＥＳ）も、前記記憶装置（ＳＶ）へ送信し、該記憶装置（ＳＶ）は、暗号化された前記アクセスコントロールインスタンス−記憶装置シークレットを、前記記憶装置ＡＥＳ鍵（ＳＶ−ＡＥＳ鍵）によって復号し、
これにより前記クライアント（ＣＬ）の前記アクセスコントロールインスタンス−記憶装置シークレット（Ｓ−ＺＳＧ）は、前記記憶装置（ＳＶ）にとって既知であり、前記記憶装置（ＳＶ）が前記アクセスコントロールインスタンス−記憶装置シークレットを持続的に記憶する必要なく、前記セッションクライアント変換値保護値（Ｔ−ＣＵＳ）を生成するために、前記アクセスコントロールインスタンス−記憶装置シークレット（Ｓ−ＺＳＧ）が用いられ、これにより比較的緩慢な探索関数の代わりに高速なＡＥＳ暗号化が実行される、
請求項１から３までのいずれか１項記載の方法。
【請求項５】
前記アクセスコントロールインスタンス（ＺＫＩ）は、前記最初のクライアント初期化ステップにおいて、
付加的に秘密の記憶装置変換値（Ｓ−ＳＵ）を前記個々のクライアント識別子（Ｓ−ＣＫ）のために任意に生成し、該記憶装置変換値（Ｓ−ＳＵ）を持続的に呼び出し可能または計算可能であり、
前記アクセスコントロールインスタンス（ＺＫＩ）は、該アクセスコントロールインスタンス（ＺＫＩ）がセッション識別値（Ｔ−ＸＫ）を前記クライアント識別子（Ｓ−ＣＫ）と共に前記セッションセットアップステップ中に受け取った後に付加的に、
セッション記憶装置変換値保護値（Ｔ−ＳＵＳ）を乱数値として生成し、
さらに前記セッションクライアント変換値（Ｔ−ＣＵ）を一時的な補足情報として、前記アクセスコントロールインスタンス（ＺＫＩ）が少なくとも選択された前記同値変換関数を、前記セッションクライアント変換値保護値（Ｔ−ＣＵＳ）と、前記クライアント変換値（Ｓ−ＣＵ）と、前記セッション記憶装置変換値保護値（Ｔ−ＳＵＳ）とに適用することにより計算し、さらに前記セッションクライアント変換値（Ｔ−ＣＵ）を揮発性記憶のために前記クライアント（ＣＬ）へ伝送し、
さらに前記セッション記憶装置変換値（Ｔ−ＳＵ）を、前記アクセスコントロールインスタンス（ＺＫＩ）が少なくとも選択された前記同値変換関数を、前記セッション記憶装置変換値保護値（Ｔ−ＳＵＳ）と前記記憶装置変換値（Ｓ−ＳＵ）とに適用することにより計算し、さらに前記セッション記憶装置変換値（Ｔ−ＳＵ）を、前記記憶装置（ＳＶ）へ伝送するためだけに前記クライアント（ＣＬ）へ伝送し、
前記クライアント（ＣＬ）は、伝送された前記セッション記憶装置変換値保護値（Ｔ−ＳＵＳ）を前記記憶装置（ＳＶ）へ伝送し、さらに前記記憶装置（ＳＶ）は前記セッションクライアント変換値保護値（Ｔ−ＣＵＳ）を、該記憶装置（ＳＶ）が選択された前記同値変換関数を、存在する前記セッションクライアント変換値保護値（Ｔ−ＣＵＳ）と前記セッション記憶装置変換値（Ｔ−ＳＵ）とに適用するようにして拡張する、
請求項１から４までのいずれか１項記載の方法。
【請求項６】
前記記憶装置（ＳＶ）は、記憶装置データ識別値（Ｓ−ＳＤＩ）を特定するときに前記データ、および該データに属する記憶装置データ識別値（Ｓ−ＳＤＩ）の代わりに一時的な前記セッションデータ識別値（Ｔ−ＸＤＩ）を、前記クライアント（ＣＬ）にそのつど伝送する、
請求項１から５までのいずれか１項記載の方法。
【請求項７】
セキュアハッシュ関数としてＳＨＡ３が用いられ、選択された同値関数として排他ＯＲ（ＸＯＲ）が個々の値の全てのビットに適用される、
請求項１から６までのいずれか１項記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アクセスコントロールインスタンスを用いた少なくとも１つのクライアントとサーバとの間の多要素アクセスコントロール方法に関する。この場合、いずれの当事者もそれ自体単独では、クライアントのデータをサーバ上で特定することはできず、この方法の完全な実施形態においては、たとえサーバであってもこのことは不可能である。
【０００２】
この方法の一部として、（匿名化のために）クライアントを識別する情報の放棄が行われ、したがって今日のシステムにおいて一般的であるように、サーバに記憶されている値を用いてクライアントのアクセス情報（入力要素）のチェックを行うことができない。
【０００３】
今日の技術水準では、データへのダイレクトなアクセスを可能にする多要素アクセスコントロール方法が用いられるのではなく、多要素認証により和らげられた形態が実施され、これによればクライアントの入力要素（たとえばユーザ名およびパスワード）が認証プロセス中、（たとえば一時的なＳＭＳコード、アプリケーションにおけるカラーコード等として）クライアントがサーバから受け取った別の要素によって補われ、クライアントにおいてこれらの要素が入力されてサーバへ伝送された後、これらの入力要素がサーバに記憶されている値と比較される（イエス／ノーチェック）。肯定的なケースであれば、クライアントは認証されたと見なされ、そのクライアントに対し全てのデータに対するアクセス権が付与される。したがってサーバは、クライアントと、サーバに記憶されている認証データとの一義的なマッピングを実施することができなければならない。よって、サーバはこの比較のためにセンシティブな情報を記憶しなければならないことから、従来技術ではサーバもしくはその運営業者への信頼が、セキュリティの基本的な構成要素である。今日のアクセスコントロール方法は、サーバの改竄によって排除または迂回することができることから、このことがいっそう当てはまる。
【０００４】
多くの利用者にとって重要であるのは、プラットフォームの運営業者は利用者に関してできる限り僅かな情報しか記憶しておらず、個人に関連づけられるそれらのデータをたとえば宣伝などのような他の目的のために使用しない、ということである。このことは匿名化システムによって達成される。
【０００５】
匿名化システムの特徴は、評価可能な情報、特にいわゆるメータデータ（たとえばユーザまたは記憶されているデータを補足する情報）、をいっさい含まず、したがってサーバもしくはその運営業者への信頼も必須ではない、ということである。ただし、匿名性を達成するためには、データへのかかるアクセスを保証もしくは拒否する目的で、サーバにおいてユーザ（もしくはクライアント）の認証を行うことができない。なぜならば、システムにおけるいかなる情報も匿名だからである。したがって従来技術では、特定のユーザ（もしくはクライアント）のデータのマッピングまたはチェックを実施することができない。このため今日の多要素認証方法を利用することはできず、このことから本発明が必要となった。
【０００６】
この場合、本発明は、今日一般的なイエス／ノー一致チェックを以下の方法と置き換える。すなわちこの方法によれば、クライアントおよびサーバは、（イエス／ノーチェックの成功後（セッションすなわちクライアントとサーバとの間の一時的な論理的コネクションの期間にわたり）全てのデータに対するダイレクトなアクセス権を手に入れる代わりに）、クライアントとサーバとでそれぞれ異なる識別値がデータに対して使用されるプロセスを実行する必要がある。この場合、
・全てのデータ、アクションおよびトランザクションが（データ）識別値を介して順々に処理され、このようにしてアクセスコントロールに対する最も効果的な保護が本発明に従ってここで適用される。
・クライアントのデータ識別値とサーバのデータ識別値とは、第三者（アクセスコントロールインスタンス、ＺＫＩ）のみによって互いにマッピング可能である。
・データ識別値へのアクセスごとに、常に別の一時的なマッピング値がクライアントとサーバとの間のインタフェースとして生成される。
・クライアントはサーバ上で自身のデータを見つけることができないし、サーバもサーバ上のデータを特定のクライアントにマッピングすることができない。
・たとえ攻撃者によって変更されたまたは侵入されたクライアントであっても、アクセスに対するいかなる情報も突き止めることができない。
・この多要素アクセスコントロール方法は、クライアントまたはサーバの改竄によっても、数学的な根拠ゆえに避けて通ることはできない。
・ＺＫＩによってしか行うことができない一時的に有効な変換もしくは結合が、クライアントとサーバとの間において中間値を介して行われる。
・ＺＫＩは、サーバとデータを交換できるようにする目的で、いずれのクライアントがマッピング値を受け取るのかを示すホワイトリストを有する。さらに
・ＺＫＩは、各トランザクションを個別にコントロールする必要なく、匿名化システムにおいて（たとえば複数の企業のために）集中的なアクセス制御を行うことができ、
*このようにしてたとえば従業員同士のデータ交換を明示的に行うことができ、さらに
*これにより暗黙的に他の全ての（匿名の）ユーザが締め出され、さらに
*たとえば特定の時点、特定の用途または特定の場所といった特定の条件のもとでのみ、アクセスを許可することができる。
【０００７】
この方法の適用例
本発明によればたとえば、今日一般的なイエス／ノー比較に対し暗号による付加価値をもたらす２要素認証を達成することができる。このことは、ユーザに関連するデータ識別値は、サーバが記憶しているデータ識別値とは一致していないことから、ユーザには自身のデータがどこにあるのかがわからない、ということによって達成される。
【０００８】
さらなる可能な実施形態は、ユーザが自身のデータまたは他の従業員のデータにアクセスする機会を、管理サーバ（アクセスコントロールインスタンス）を介して条件制御により制限することである。つまりアクセスコントロールインスタンスはたとえば、特定のＩＰアドレスを有するユーザだけが特定のデータにアクセスできる、ということ、または特定のユーザが特定のデータに企業の営業時間中のみアクセスできる、ということを規定することができる。さらにアクセスコントロールインスタンスはホワイトリストを用いることで、どのユーザがどのユーザとどの条件のもとでデータを交換してよいのか、ということを規定することができる。このケースでも、これは今日の技術によれば権限付与により、つまりイエス／ノー比較により制御され、その際にサーバはアクセス権限付与を条件−権限付与リストに基づきチェックする。したがって従来技術においては、暗号によるセキュリティを達成することができない。ここでも、この方法の先に挙げた同じ利点が同様に当てはまる。
【０００９】
本発明によればさらに、匿名化システムのためにブルーム法の変形および他の同等の方法も可能であり、これらを用いることで、信頼のある当事者による時間的に制限されて有効な対称鍵交換が保証される。このケースでも暗号による付加価値が当てはまり、鍵を交換する当事者は自身の非公開鍵を認識する必要がなく、この鍵の一時的な変形を用いるだけで動作する。
【００１０】
この方法の付加価値および効果
この方法によって達成されるのは、クライアントは自身のデータに対する固有の識別値（クライアントデータ識別値）によって動作し、ただしこの識別値は、記憶装置もしくはサーバにおけるデータの識別値（記憶装置データ識別値）とは異なる、ということである。クライアントの視点からは、両方の識別値のこのような相違は重要ではなく、クライアントは単純にリクエストを出して、それに対応するレスポンスを受け取る。その際にこの方法によって同様に保証されるのは、サーバは記憶装置データ識別値に基づいてもデータと特定のクライアントとのマッピングを実施することはできず、したがって個々の記憶装置データ識別値同士（ひいては記憶されたデータ同士）の関係を突き止めることができない、ということである。
【００１１】
どのようなケースであっても、クライアントがアクセスコントロールインスタンスの一時的なセッションクライアント変換値を受け取らない限り、クライアントは自身のデータをサーバにおいて特定することはできない。ＩＤ値に対するリクエストによっても、極端に大きい数値（２１２８〜２２５６ビット）ゆえに、記憶装置においてデータセットを特定することはできず、それというのも、クライアントのデータセット識別値は記憶装置のデータセット識別値と同一ではないからである。
【００１２】
クライアントはサーバから識別値なしでデータだけを受け取ることから、暗号によるセキュリティがさらに高められ、したがってサーバは自身の記憶装置変換基礎値も、何らかの記憶装置データ識別値もクライアントへ送信しない、ということが保証される。データを識別するために、サーバはデータをリクエストされた順序でクライアントに送信するか、またはサーバはセッションデータセット識別値を含めてデータを送信する。かくしてクライアントは、記憶装置における値に関する情報を受け取らないけれども、データを自身のデータ識別値に速やかにマッピングすることができる。
【００１３】
しかもこの方法は、同値変換を用いて識別値を使用することにより、簡単な等式を作成することができ、この場合、選択された識別値の桁数によって、それらの等式の可能な解の個数が定義され、その際に１つの解のみが、クライアントがサーバ上で自身のデータを見つけることができるものと一致する。これは暗号によるセキュリティの原理に相応する。すなわち、可能性のある鍵を著しく高速に試すことができるにしても、総当たり攻撃を実際には行えないように、極端に多くの個数の可能性のある鍵が存在するというものである（将来についても２１２８であれば十分であると見なされる）。
【００１４】
よって、これらの前提条件のもとで上述の等式のために、クライアントのところでもサーバのところでも、排他ＯＲ（ＸＯＲ）または単純な加算などのように著しく高速な演算を使用することができる。
【００１５】
この場合、変数に使用される全ての数値によって同値変換を可能にする任意の関数を使用することができる。ただし暗号による十分な保護を保証する目的で、これに加えてセッション識別値が十分なエントロピーを有する必要があり、つまり計算の基礎として１から少なくとも２１２８までの値の範囲の乱数を有する必要がある。
【図面の簡単な説明】
【００１６】
【図１】請求項１記載の本発明の実施例を示す図である。
【図２】請求項２記載の本発明の実施例を示す図である。
【図３】請求項３記載の本発明の実施例を示す図である。
【図４】請求項４記載の本発明の実施例を示す図である。
【図５】請求項５記載の本発明の実施例を示す図である。
【００１７】
この方法の手順
クライアントは、一定であるがアクセスコントロールインスタンスも記憶装置も認識することのないクライアントデータ識別値を有する。記憶装置は、一定であるがアクセスコントロールインスタンスもクライアントも認識することのない記憶装置データ識別値を有する。ここで要求されるのは、クライアントデータ識別値から記憶装置データ識別値への一義的な変換が、セッションのたびに異なる変換値によって行われる、ということである。アクセスコントロールインスタンスがクライアントから常にリクエストを受け取らなければならない、ということを保証する目的で、付加的なセッションクライアント変換値が導入され、これがクライアントデータ識別値と結合される。よって、静的なクライアントデータ識別値の代わりに、セッションのたびに相応に異なるセッションデータ識別値が伝送される。
【００１８】
したがってクライアントが単独では計算できないセッション変換値を常に受け取るために必要とされるのは、アクセスコントロールインスタンスと記憶装置とが共有シークレット（アクセスコントロールインスタンス−記憶装置シークレットとしての「事前共有シークレット」）を共有していることである。
【００１９】
事前共有シークレットの代わりに、記憶装置とアクセスコントロールインスタンスとの間のセッションシークレットを、以下のことにより形成することもできる。すなわち記憶装置は、クライアントによるコネクションリクエストを受け取ると、アクセスコントロールインスタンスとコンタクトをとり、クライアント識別子をアクセスコントロールインスタンスへ送信する。ただしこのケースであるとアクセスコントロールインスタンスは、セッション記憶装置変換値を記憶装置へ送信しなければならないし、これに適合したセッションクライアント変換値をクライアントへ送信しなければならない。しかしながら記憶装置にあまり負荷を加えないようにするのが望ましく、その理由は、記憶装置は多数のクライアントをサービスし、それらのクライアント自体は多数のアクセスコントロールインスタンスの支配下にあるからである。したがってこの実施形態によっても、利点ではなく請求項１記載の態様に比べて著しい欠点がもたらされ、よって、この実施形態については以下では詳しくは説明しない。
【００２０】
ここで重要であるのは、記憶装置がセッション識別子を、常に変化する値としてクライアントへ送信することであり、それというのも、さもなければクライアントは常に同じセッション識別子を記憶装置へ伝送することができてしまい、そのようにしたならばクライアントは、セッションを開始するたびにアクセスコントロールインスタンスとコンタクトをとる必要がもはやなくなってしまうからである。このようなケースであると、アクセスコントロールインスタンスは、クライアントから記憶装置へのコネクションに関してコントロール（ロギング、特定の条件のもとでの制約）を行えなくなってしまう。
【００２１】
同様にクライアントは自身のクライアントデータ識別値に関して、記憶装置においてマッピングされた記憶装置データ識別値を決して突き止めることはできない。その理由は、サーバはクライアントにその値を伝送しないからである（さらにサーバ自体は自身の記憶装置データ識別値をある１つのクライアントにマッピングすることはできないからである）。クライアントが常にアクセスコントロールインスタンスとコンタクトをとる必要がある、ということを保証する目的で、クライアントがクライアント変換値を決して識別可能であってはならない。なぜならば、さもなければクライアントは、セッション識別子を共に用いることでセッションクライアント変換値を生成することができてしまうからである（さらにアクセスコントロールインスタンスとコンタクトをとることをもはや強制されなくなってしまうからである）。
【００２２】
クライアント変換値をクライアントに対し秘密保持する目的で、３つの項を含む等式（ａ＜演算＞ｂ＝ｃ）を導入する必要があり、これは同値変換を用いることで、項ａおよびｂにおいてセッション値により拡張される。好ましくは、速度および他の任意の関数と同等のセキュリティゆえに、排他ＯＲ（ＸＯＲ）が用いられる（これは本明細書を簡単にするためにも代用される）。
【００２３】
記憶装置（もしくはサーバ）およびアクセスコントロールインスタンスにとってセッション識別子が既知であるのと同様に、クライアントはセッション識別子を認識しており、その理由は、クライアントに対しアクセスコントロールインスタンスからセッション識別子が伝送されるからである。ただしクライアントは、クライアント変換値も記憶装置変換値も認識していない。アクセスコントロールインスタンスも記憶装置も記憶装置変換値を認識した後、これら双方は、クライアントが記憶装置変換値を推定できない、ということが保証されている限り、セッション識別子を共に用いて記憶装置変換値から共通のセッションシークレットを形成することができる。このことは、これら双方の値に適用されるセキュアハッシュ関数を用いることで保証される。たとえばこれら双方の値を、ＸＯＲによって組み合わせる、関連づける、または他の任意の形態で組み合わせることも可能である。同様に、一定のＳＡＬＴ値（ランダムに選択された文字列）を使用することもできる。このような細部の変更は、既にもたされているこの方法のセキュリティに影響を及ぼさない。
【００２４】
記憶装置もクライアントもクライアント変換値を認識してしまうのを阻止する目的で、一時的な保護値としてセッションクライアント変換値保護値が用いられる。たとえばこの値を、高いエントロピーの要求も満たすセキュアハッシュ関数により生成することができる。セッションクライアント変換値保護値とクライアント変換値とのＸＯＲ（または等価の関数）により、セッションクライアント変換値が生成され、クライアントはもはやこれを元の成分に分解することができない。なぜならば、これはクライアントには未知の２つの値の組み合わせだからである。セッションクライアント変換値保護値は（そのエントロピーとは無関係に）セッションのたびに変化するにもかかわらず、たとえクライアントが多数の様々なセッションクライアント変換値を集めたとしても、クライアントは２つの未知の値を含むこの等式を解くことができない。等式中には、存在する等式よりも常に１つい多い未知の値が存在する。
【００２５】
セッションクライアント変換値保護値は、クライアントデータ識別値から記憶装置データ識別値への最終的なマッピングに含まれていてはならないので、このセッションクライアント変換値保護値は、クライアントの側でも記憶装置／サーバの側でも付け加えられ、それによって値が差し引かれて自動的に相殺される。よって、同値変換およびこれを満たす相応の関数の使用が必要とされる。
【００２６】
したがってここで明らかなのは、ＡＥＳのような対称暗号化は適していないということであり、その理由は、同じデータを相前後して他の２つ鍵と同じように暗号化する２つの鍵を見つけるのは、ＡＥＳには不可能だからである。同様にこのことは、ハッシュ関数および同値変換には適していない他の関数についても当てはまる。さらにＯＲまたはＡＮＤは適していない。なぜならばこれらの命令によって情報が壊されてしまうからである（Ａ ＯＲ Ｂはたとえば、入力として２つの真と２つの偽があるとき、結果として３つの真と１つの偽をもたらし、Ａ ＡＮＤ Ｂは、入力として２つの真と２つの偽があるとき、結果として１つの真と３つの偽をもたらす）。
【００２７】
同様の要求は記憶装置（サーバ）にも適用される。なぜならば記憶装置も同様に、クライアント変換値もクライアントデータ識別値も計算可能であってはならないからである。クライアントはサーバにクライアントデータ識別値を、（たとえばＸＯＲを用いて）クライアントデータ識別値と混合して伝送し、その結果として同様に、２つの未知の値を含む一義的に解くことができない等式がもたらされる。
【００２８】
クライアントの側で、または記憶装置の側で、多数のセッションデータ識別値を集めたところで、存在する等式よりも常に正確に１つ多い未知の値が存在する。同値変換を満たし保護値を差し引く目的で、セッションクライアント変換値保護値がこのＸＯＲに加えられる。
【００２９】
かくして記憶装置／サーバに、アクセスコントロールインスタンスだけが完全に認識しているシークレットとして、ＸＯＲを用いてクライアントデータ識別値が格納される。このシークレットは、２つの部分すなわちクライアント変換値と記憶装置変換値とから成る。
【００３０】
アクセスコントロールインスタンスには、クライアント識別子とセッション識別子（記憶装置の乱数値）とを除き、クライアントまたは記憶装置からいかなる値も伝送されない。かくして、アクセスコントロールインスタンス単独ではデータへのアクセスに必要とされる情報を生成できない、ということが保証される。
【００３１】
クライアントとアクセスコントロールインスタンスと記憶装置との間で全ての値を伝送するために、セキュアなコネクション（ＴＬＳ）が推奨される。従来技術において既に知られているように、ＡＥＳ暗号化または他の手法の暗号化を、同様にハッシュ関数と見なすことができる。ただしこれは、純然たるセキュアハッシュアルゴリズムに対し欠点を有することから、ＳＨＡ２−２５６、ＳＨＡ３−２５６、Ｂｌａｋｅ２または他のこの種のハッシュアルゴリズムの使用が推奨される。同様に、３８４ビット、５１２ビットまたは他の出力長を有するハッシュも使用することができ、その際にこれはこの方法のセキュリティにさしたる影響を及ぼさない。
【００３２】
既に言及したように、ＸＯＲの代わりに転置および／または置換または他の適切な関数を使用してもよい。伝送の細部については、それらはユーザに委ねられており従来技術において十分に知られていることから、立ち入って説明しない。つまりたとえば、通信のたびにセッション識別値を一緒に送信することが必要とされる。ただし本発明の本質に焦点を当てるため、このことは図面には示されていない。
【００３３】
方法の説明において用いられた当事者、パラメータおよび略語の一覧表
【表１】
2021524118.tif 000003
【図１】
2021524118.tif 000004
【図２】
2021524118.tif 000005
【図３】
2021524118.tif 000006
【図４】
2021524118.tif 000007
【図５】
2021524118.tif 000008
【国際調査報告】
2021524118.tif 000009
2021524118.tif 000010
2021524118.tif 000011
2021524118.tif 000012
2021524118.tif 000013