(57)【要約】      （修正有）【課題】証明機関の間で信頼を分配することによって通信をセキュア化するためのシステムおよび方法を提供する。【解決手段】２つのアプローチであり、両方のアプローチは、等しくセキュアである。各アプローチでは、セキュアなデータパーサ(データ分割モジュール）が任意の好適な暗号化技術と一体化している。各アプローチは、移動中のデータをセキュア化するために使用される。１つのアプローチは、２つのデバイス間の接続の初期交渉（例えば、キー確立段階）中に、セキュアなデータパーサが一式の証明機関において信頼を分配する。別のアプローチは、セキュアなデータパーサがデータのパケットをシェアに分散するために使用される。【選択図】図４４
2014195331.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つの共有暗号化キーを計算する方法であって、前記方法は、
元の秘密情報を生成することと、
一意の証明機関から公開キーを取得することと、
前記秘密情報をシェアに分散することと、
前記シェアのうちの各々を、前記一意の証明機関のうちの異なる１つの前記公開キーに少なくとも部分的に基づいて、暗号化することであって、前記シェアは、少なくとも閾値の数のシェアを再結合させることによって前記シェアの一部から修復可能であり、前記閾値の数のシェアは、前記シェアの全てより少ない数のシェアを含む、ことと、
一式の実質的な乱数および前記元の秘密情報に基づいて、第１の共有暗号化キーを計算することと、
前記少なくとも閾値の数のシェアを再結合させることと、
前記一式の実質的な乱数および前記再結合されたシェアに基づいて、第２の共有暗号化キーを計算することと
を含む、方法。
【請求項２】
前記再結合されたシェアに基づいてデータを伝送することをさらに含む、請求項１に記載の方法。
【請求項３】
前記第１および第２の共有暗号化キーを比較することと、
比較に基づいて、データを伝送するかどうかを決定することと、
決定に基づいてデータを伝送することと
をさらに含む、請求項１に記載の方法。
【請求項４】
キーラップに基づいて、前記シェアのうちの各々を暗号化することをさらに含む、請求項１に記載の方法。
【請求項５】
前記キーラップは、ワークグループキーに基づいている、請求項４に記載の方法。
【請求項６】
証明機関階層を生成することであって、前記証明機関階層は、ルート証明機関を含む、ことと、
前記証明機関階層の一意のルート証明機関によって発行される証明書に基づいて、前記シェアのうちの各々を暗号化することと
をさらに含む、請求項１に記載の方法。
【請求項７】
少なくとも１つの共有暗号化キーを計算するためのシステムであって、
前記システムは、第１の処理回路と第２の処理回路とを含み、
前記第１の処理回路は、
元の秘密情報を生成することと、
一意の証明機関から公開キーを取得することと、
前記秘密情報をシェアに分散することと、
一式の実質的な乱数および前記元の秘密情報に基づいて、第１の共有暗号化キーを計算することと、
前記シェアのうちの各々を、前記一意の証明機関のうちの異なる１つの前記公開キーに基づいて、暗号化することであって、前記シェアは、少なくとも閾値の数のシェアを再結合させることによって前記シェアの一部から修復可能であり、前記閾値の数のシェアは、前記シェアの全てより少ない数のシェアを含む、ことと
を行うように構成され、
前記第２の処理回路は、
前記少なくとも閾値のシェアを再結合させることと、
前記一式の実質的な乱数および前記再結合されたシェアに基づいて、第２の共有暗号化キーを計算することと
を行うように構成されている、システム。
【請求項８】
前記第２の処理回路は、前記再結合されたシェアに基づいてデータを伝送するようにさらに構成されている、請求項７に記載のシステム。
【請求項９】
前記第２の処理回路は、
前記第１および第２の共有暗号化キーを比較することと、
比較に基づいて、データを伝送するかどうかを決定することと、
決定に基づいてデータを伝送することと
を行うようにさらに構成されている、請求項７に記載のシステム。
【請求項１０】
前記第１の処理回路は、キーラップに基づいて、前記シェアのうちの各々を暗号化するようにさらに構成されている、請求項７に記載のシステム。
【請求項１１】
前記キーラップは、ワークグループキーに基づいている、請求項１０に記載のシステム。
【請求項１２】
前記第１の処理回路は、
証明機関階層を生成することであって、前記証明機関階層は、ルート証明機関を含む、ことと、
前記証明機関階層の一意のルート証明機関によって発行される証明書に基づいて、前記シェアのうちの各々を暗号化することと
を行うようにさらに構成されている、請求項７に記載のシステム。
【請求項１３】
前記第１の処理回路は、
証明機関階層を生成することであって、前記証明機関階層は、一式の小証明機関を含む、ことと、
前記証明機関階層の一意の小証明機関によって発行される証明書に基づいて、前記シェアのうちの各々を暗号化することと
を行うようにさらに構成されている、請求項７に記載のシステム。
【請求項１４】
前記第１の処理回路は、第１のデバイスの中に位置し、前記第２の処理回路は、第２のデバイスの中に位置し、前記第２のデバイスは、前記第１のデバイスとは異なる、請求項７に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の引用）
本願は、米国仮出願第６１／２６４，４６４号（２００９年１１月２５日出願）の利益を主張する。該出願の全体は、参照により本明細書に引用される。
【０００２】
（発明の分野）
本発明は、概して、証明機関の間で信頼を分配することによって通信をセキュア化するためのシステムおよび方法に関する。本明細書で説明されるシステムおよび方法は、その全てが全体で参照することにより本明細書に組込まれる、共同所有された米国特許第７，３９１，８６５号、および共同所有された米国特許出願第１１／２５８，８３９号（２００５年１０月２５日出願）、第１１／６０２，６６７号（２００６年１１月２０日出願）、第１１／９８３，３５５号（２００７年１１月７日出願）、第１１／９９９，５７５号（２００７年１２月５日出願）、第１２／１４８，３６５号（２００８年４月１８日出願）、第１２／２０９，７０３号（２００８年９月１２日出願）、第１２／３４９，８９７号（２００９年１月７日出願）、第１２／３９１，０２５号（２００９年２月２３日出願）で説明されている、他のシステムおよび方法と併せて使用され得る。
【背景技術】
【０００３】
現在の社会では、個人および事業が、コンピュータシステム上で増え続ける量の活動を行っている。専有および非専有コンピュータネットワークを含む、これらのコンピュータシステムはしばしば、全種類の機密情報を記憶し、アーカイブし、伝送している。したがって、記憶および伝送されるデータが読み取られることができないまたは損なわれないように、セキュア化するための高まる必要性が存在する。
【０００４】
１つの解決法は、証明機関のキーを使用してデータをセキュア化することである。証明機関は、例えば、ＶｅｒｉＳｉｇｎ、Ｂａｌｔｉｍｏｒｅ、Ｅｎｔｒｕｓｔ等の、デジタル証明書を発行する、信頼できる第三者組織または企業によって運営され得る。デジタル証明書は、証明書の名前を付けられた主題によって公開キーの所有権を証明する。これは、他者が、証明される公開キーに対応する秘密キーによって行われる署名またはアサーションに依存することを可能にする。デジタル証明書の要求は、例えば、ＰＫＣＳ１０等のデジタル証明書プロトコルを通して行われ得る。要求に応じて、証明機関は、例えば、ＰＫＣＳ７等のいくつかの異なるプロトコルで証明書を発行する。メッセージが、発行された証明書に基づいてデバイス間で交換され得る。
【０００５】
証明機関が損なわれた場合には、証明機関が公開キーと身元との間の関連を証明している各ユーザについて、システムのセキュリティが失われる場合がある。例えば、攻撃者が、エンティティを表すことを不当に主張する証明書を証明機関に発行させることによって、その証明機関を損なう場合がある。攻撃者は、証明機関の証明書に関連付けられる秘密キーを有する。次いで、攻撃者は、デジタル署名されたメッセージをユーザに送信するためにこの証明書を使用し、そのユーザを騙して、メッセージが信頼できるエンティティからであると信じさせることができる。ユーザは、攻撃者が秘密キーを使用して復号し得るデジタル署名されたメッセージに応答し得る。したがって、ユーザが証明機関に置いた信頼が損なわれる場合がある。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
先述の内容に基づいて、一式の証明機関の間で信頼を分配することによって通信をセキュア化するシステムを含む、セキュアなプロキシサービスを提供する必要性が存在する。
【課題を解決するための手段】
【０００７】
したがって、本発明は、一式の証明機関の間で信頼を分配することへの２つのアプローチを提供する。両方のアプローチは、等しくセキュアである。各アプローチでは、セキュアなデータパーサが任意の好適な暗号化技術と一体化し得る。当業者であれば、いくつかの実施形態では、セキュアなプロキシサービスは、セキュアなデータパーサを、完全トランスポート層セキュリティ（「ＴＬＳ」）プロトコルと、セキュアソケットレイヤー（ＳＳＬ）プロトコルと、ＳＳＬおよびＦＵＬＬ  ＴＬＳと一体化させることによって、またはＳＳＬおよび／またはＦＵＬＬ  ＴＬＳを使用せずにセキュアなデータパーサを実装することによって、実装され得ることを理解するであろう。加えて、いくつかの実施形態では、セキュアなプロキシサービスは、交換されたメッセージの機密性、完全性、および真正性をセキュア化するために証明機関を利用する、任意の好適なプロトコルと併せて実装され得ることが理解されるであろう。
【０００８】
したがって、本発明の１つのアプローチは、デバイス間の接続の初期交渉（例えば、キー確立段階）中に、セキュアなデータパーサが一式の証明機関において信頼を分配するために使用される、方法およびシステムを提供する。証明機関は、各々によって発行される証明書が異なる公開および秘密キーペアを有するという点で、一意であり得る。これは、証明書のうちのいくつか（しかし定数より少ない）が損なわれた場合に、依然として接続を確立することができ、通信の機密性または完全性を乱すことなく、メッセージが交換され得るという確信を提供する。
【０００９】
このアプローチの一側面は、共有暗号化キーを計算する方法およびシステムを提供することである。この共有暗号化キーの計算は、デバイス間のセキュアな通信のキー確立段階の一部であり得る。秘密情報が生成され得、公開キーが一意の証明機関から取得され得る。秘密情報は、秘密情報の任意の数のシェアに分散され得る。秘密情報の各シェアは、一意の証明機関のうちの異なる１つに関連付けられる証明書の公開キーに基づいて暗号化され得る。随意で、秘密情報のシェアのそれぞれは、キーラップに基づいて暗号化され得る。キーラップは、ワークグループキーに基づき得る。いくつかの実施形態では、シェアは再結合され得、再結合されたシェアに基づいてデータが伝送され得る。
【００１０】
いくつかの実施形態では、一式の乱数が生成され得る。第１の共有暗号化キーが、一式の乱数および元の秘密情報に基づいて計算され得る。第２の共有暗号化キーが、一式の乱数および再結合されたシェアに基づいて計算され得る。データが、第１および第２の共有暗号化キーに基づいて伝送され得る。いくつかの実施形態では、第１および第２の共有暗号化キーは、比較され得る。この比較に基づいて、データを伝送するかどうか決定が行われ得、この決定に基づいて、データが伝送され得る。
【００１１】
本発明の別のアプローチは、セキュアなデータパーサがデータのパケットを前処理するために使用される方法およびシステムを提供することである。次いで、前処理されたデータは、シェアに分散され得る。一式のトンネルが、一意の証明機関によって発行される証明書を使用して通信チャネル内に確立され得、この確立中に作成されるキーが、トンネルの各々に対するデータを暗号化するために使用され得、データの個々のシェアが、トンネルの各々の上で伝送され得る。したがって、第２のアプローチでは、通信チャネル自体の構造において一式の証明機関の間で、信頼が分配され得る。
【００１２】
このアプローチの一側面は、移動中のデータをセキュア化する方法およびシステムを提供することである。移動中のデータは、元のデータパケットを含み得る。セキュアな通信チャネルが確立され得る。一意の証明機関の間の分配された信頼に基づいて、任意の数のセキュアな通信トンネルが、セキュアな通信チャネル内に確立され得る。いくつかの実施形態では、セキュアな通信トンネルの各々は、一意の証明機関のうちの異なる１つによって発行される証明書を使用して確立され得る。元のデータパケットの各々は、一式の証明機関の間の分配された信頼および多因子秘密共有に基づいて、セキュアな通信トンネル上での伝送に備え得る。いくつかの実施形態では、元のデータパケットの各々は、多因子秘密共有に基づいて複数のシェアに分散され得る。随意で、この分散は、Ｎ分のＭ暗号分割に基づき得る。このシェアは、セキュアな通信トンネルのうちの異なる１つの確立に関連付けられたキーに基づいて暗号化され得る。いくつかの実施形態では、暗号化されたシェアの各々は、そのシェアを暗号化するために使用されるセキュアな通信トンネル上で伝送され得る。
【００１３】
いくつかの実施形態では、各セキュアな通信トンネルは、一意の証明機関のうちの異なる１つに関連付けられる証明書に基づいて確立され得る。いくつかの実施形態では、各セキュアな通信トンネルは、その下でセキュアな通信トンネルが確立された、一意の証明機関のうちの１つによって発行される証明書に関連付けられ得る。例えば、一意の証明機関のうちの１つの証明書とセキュアな通信トンネルとの間に、１対１の対応があり得る。いくつかの実施形態では、これらの関連は動的であり得る。いくつかの実施形態では、シェアは、少なくとも定数のシェアを再結合させることによって修復され得る。
【００１４】
いくつかの実施形態では、暗号化されたシェアの各々は、セキュアな通信トンネルのうちのそれぞれの１つの上で受信され得る。シェアの各々は、セキュアな通信トンネルの確立に関連付けられたキーに基づいて復号され得る。元のデータパケットは、例えば、多因子秘密共有に基づいて、修復され得る。
【００１５】
いくつかの実施形態では、証明機関階層が生成され得る。証明機関階層は、一式のルート証明機関、一式の小証明機関、または両方を含み得る。一式の証明機関は、生成された証明機関階層からの一式のルート証明機関、一式の小証明機関、または両方を含み得る。
【００１６】
いくつかの実施形態では、Ｎ個のセキュアな通信トンネルの各々は、異なる物理輸送媒体上で確立され得る。いくつかの実施形態では、物理輸送媒体のうちの少なくとも１つが故障し得るが、データ完全性の損失を伴わずに元のデータパケットが修復され得る。いくつかの実施形態では、シェアの一部分は、障害を受けた物理輸送媒体上での伝送のために指定されるが、物理輸送媒体のうちの少なくともいくつかは、動作可能であり得る。そのような実施形態では、追加のセキュアな通信トンネルが、動作可能な物理輸送媒体のうちの少なくとも１つの中に確立され得る。少なくとも１つの障害を受けた物理輸送媒体上での伝送のために指定されるシェアの一部分は、追加のセキュアな通信トンネル上で伝送され得る。
【００１７】
いくつかの実施形態では、２つのアプローチは、任意の好適な方法で組み合わせられ得る。例えば、第２のアプローチにおける任意の数のセキュアな通信トンネルが、第１のアプローチのキー確立技法を使用して確立され得る。
本願明細書は、例えば、以下の項目も提供する。
（項目１）
元のデータパケットを含む移動中のデータをセキュア化する方法であって、
セキュアな通信チャネルを確立することと、
前記セキュアな通信チャネル内で複数のセキュアな通信トンネルを確立することであって、前記複数のセキュアな通信トンネルの各々は、複数の一意の証明機関のうちの１つによって発行される証明書を使用して確立される、ことと、
多因子秘密共有に基づいて、前記元のデータパケットのうちの各々を複数のシェアに分散することと、
前記複数のシェアの各々を、前記セキュアな通信トンネルのうちの異なる１つの確立に関連付けられたキーを使用して暗号化することと、
前記複数の暗号化されたシェアの各々を、前記複数のセキュアな通信トンネルのうちの１つの上で伝送することと
を含む、方法。
（項目２）
前記複数の暗号化されたシェアの各々を伝送することは、その下で、前記複数のセキュアな通信トンネルのうちの１つが確立された、前記複数の一意の証明機関のうちの１つによって発行される前記証明書に関連付けられた前記複数のセキュアな通信トンネルのうちの１つの上で、前記複数の暗号化されたシェアの各々を伝送することをさらに含む、項目１に記載の方法。
（項目３）
前記複数の暗号化されたシェアの各々を、前記複数のセキュアな通信トンネルのうちのそれぞれの１つの上で受信することと、
前記複数の暗号化されたシェアの各々を、前記複数のセキュアな通信トンネルのうちのそれぞれの１つの確立に関連付けられた前記キーに基づいて復号することと、
前記多因子秘密共有に基づいて、前記一式の元のデータパケットを修復することと
をさらに含む、項目１に記載の方法。
（項目４）
証明機関階層を生成することをさらに含み、前記証明機関階層は、一式のルート証明機関を備え、前記複数の一意の証明機関は、前記一式のルート証明機関を含む、項目１に記載の方法。
（項目５）
証明機関階層を生成することをさらに含み、前記証明機関階層は、一式の小証明機関を含み、前記複数の一意の証明機関は、前記一式の小証明機関を含む、項目１に記載の方法。
（項目６）
前記複数のセキュアな通信トンネルの各々は、異なる物理輸送媒体上で確立されている、項目１に記載の方法。
（項目７）
前記物理輸送媒体のうちの少なくとも１つは、ネットワーク障害を体験し、前記方法はデータ完全性の損失を伴わずに前記元のデータパケットを修復することをさらに含む、項目６に記載の方法。
（項目８）
前記物理輸送媒体のうちの少なくとも１つは、ネットワーク障害を体験し、前記複数のシェアの一部分は、前記障害を受けた物理輸送媒体上での伝送のために指定され、前記物理輸送媒体のうちの少なくとも１つは、動作可能であり、前記方法は、
前記少なくとも１つの動作可能な物理輸送媒体内に追加のセキュアな通信トンネルを確立することと、
前記追加のセキュアな通信トンネル上で、前記一式の障害を受けた物理輸送媒体のうちの少なくとも１つの上での伝送のために指定された前記複数のシェアの一部分を伝送することと
をさらに含む、項目７に記載の方法。
（項目９）
前記トンネルと前記一意の証明機関との間の関連は、動的である、項目１に記載の方法。
（項目１０）
前記元のデータパケットのうちの各々を複数のシェアに分散することは、Ｎ分のＭ暗号分割に基づいて、前記元のデータパケットのうちの各々を複数のシェアに分散することをさらに含む、項目１に記載の方法。
（項目１１）
前記複数のシェアは、少なくとも定数のシェアを再結合させることによって前記シェアの少なくとも一部から修復可能である、項目１０に記載の方法。
（項目１２）
前記複数のセキュアな通信トンネルは、トランスポート層セキュリティープロトコルに基づいて確立されている、項目１に記載の方法。
（項目１３）
少なくとも１つの共有暗号化キーを計算する方法であって、
元の秘密情報を生成することと、
一意の証明機関から公開キーを取得することと、
前記秘密情報をシェアに分散することと、
前記シェアのうちの各々を、前記一意の証明機関のうちの異なる１つの前記公開キーに少なくとも部分的に基づいて、暗号化することと
を含み、
前記シェアは、少なくとも定数のシェアを再結合させることによって前記シェアの一部から修復可能である、
方法。
（項目１４）
前記少なくとも定数のシェアを再結合させることと、
再結合されたシェアに基づいてデータを伝送することと
をさらに含む、項目１３に記載の方法。
（項目１５）
一式の乱数を生成することと、
前記一式の乱数および前記元の秘密情報に基づいて、第１の共有暗号化キーを計算することと、
前記一式の乱数および前記再結合されたシェアに基づいて、第２の共有暗号化キーを計算することと、
前記第１および第２の共有暗号化キーに基づいて、データを伝送することと
をさらに含む、項目１４に記載の方法。
（項目１６）
前記第１および第２の共有暗号化キーを比較することと、
比較に基づいて、データを伝送するかどうかを決定することと、
決定に基づいてデータを伝送することと
をさらに含む、項目１５に記載の方法。
（項目１７）
キーラップに基づいて、前記秘密情報のシェアのうちの各々を暗号化することをさらに含む、項目１３に記載の方法。
（項目１８）
前記キーラップは、ワークグループキーに基づいている、項目１７に記載の方法。
（項目１９）
証明機関階層を生成することであって、前記証明機関階層は、ルート証明機関を含む、ことと、
前記証明機関階層の一意のルート証明機関によって発行される証明書に基づいて、前記一式のシェアのうちの各々を暗号化することと
をさらに含む、項目１３に記載の方法。
（項目２０）
証明機関階層を生成することであって、前記証明機関階層は、一式の小証明機関を含む、ことと、
前記証明機関階層の一意の小証明機関によって発行される証明書に基づいて、前記一式のシェアのうちの各々を暗号化することと
をさらに含む、項目１に記載の方法。
（項目２１）
元のデータパケットを含む移動中のデータをセキュア化するためのシステムであって、
前記システムは、処理回路を含む第１のデバイスを含み、前記処理回路は、
セキュアな通信チャネルを確立することと、
前記セキュアな通信チャネル内で複数のセキュアな通信トンネルを確立することであって、前記複数のセキュアな通信トンネルの各々は、複数の一意の証明機関のうちの１つによって発行される証明書を使用して確立される、ことと、
多因子秘密共有に基づいて、前記元のデータパケットのうちの各々を複数のシェアに分散することと、
前記複数のシェアの各々を、前記セキュアな通信トンネルのうちの異なる１つの確立に関連付けられたキーを使用して暗号化することと、
前記複数の暗号化されたシェアの各々を、前記複数のセキュアな通信トンネルのうちの１つの上で伝送することと
を行うように構成されている、
システム。
（項目２２）
前記処理回路は、その下で、前記複数のセキュアな通信トンネルのうちの１つが確立された、前記複数の一意の証明機関のうちの１つによって発行される前記証明書に関連付けられた前記複数のセキュアな通信トンネルのうちの１つの上で、前記複数の暗号化されたシェアの各々を伝送するようにさらに構成されている、項目２１に記載のシステム。
（項目２３）
処理回路を含む第２のデバイスをさらに含み、前記処理回路は、
前記複数の暗号化されたシェアの各々を、前記複数のセキュアな通信トンネルのうちのそれぞれの１つの上で受信することと、
前記複数の暗号化されたシェアの各々を、前記複数のセキュアな通信トンネルのうちのそれぞれの１つの確立に関連付けられた前記キーに基づいて復号することと、
前記多因子秘密共有に基づいて、前記一式の元のデータパケットを修復することと
を行うようにさらに構成されている、項目２１に記載のシステム。
（項目２４）
前記処理回路は、証明機関階層を生成するようにさらに構成され、前記証明機関階層は、一式のルート証明機関を含み、前記複数の一意の証明機関は、前記一式のルート証明機関を含む、項目２１に記載のシステム。
（項目２５）
前記処理回路は、証明機関階層を生成するようにさらに構成され、前記証明機関階層は、一式の小証明機関を含み、前記複数の一意の証明機関は、前記一式の小証明機関を含む、項目２１に記載のシステム。
（項目２６）
前記複数のセキュアな通信トンネルの各々は、異なる物理輸送媒体上で確立されている、項目２１に記載のシステム。
（項目２７）
前記物理輸送媒体のうちの少なくとも１つは、ネットワーク障害を体験し、前記方法は、データ完全性の損失を伴わずに前記元のデータパケットを修復することをさらに含む、項目２６に記載のシステム。
（項目２８）
前記物理輸送媒体のうちの少なくとも１つは、ネットワーク障害を体験し、前記複数のシェアの一部分は、前記障害を受けた物理輸送媒体上での伝送のために指定され、前記物理輸送媒体のうちの少なくとも１つは、動作可能であり、前記処理回路は、
前記少なくとも１つの動作可能な物理輸送媒体内に追加のセキュアな通信トンネルを確立することと、
前記追加のセキュアな通信トンネル上で、前記一式の障害を受けた物理輸送媒体のうちの前記少なくとも１つの上での伝送のために指定された前記複数のシェアの一部分を伝送することと
を行うようにさらに構成されている、項目２７に記載のシステム。
（項目２９）
前記トンネルと前記一意の証明機関との間の関連は、動的である、項目２１に記載のシステム。
（項目３０）
前記処理回路は、Ｎ分のＭ暗号分割に基づいて、前記元のデータパケットのうちの各々を複数のシェアに分散することによって、前記元のデータパケットのうちの各々を複数のシェアに分散するようにさらに構成されている、項目２１に記載のシステム。
（項目３１）
前記複数のシェアは、少なくとも定数の前記シェアを再結合させることによって前記シェアの少なくとも一部から修復可能である、項目３０に記載のシステム。
（項目３２）
前記複数のセキュアな通信トンネルは、トランスポート層セキュリティープロトコルに基づいて確立されている、項目２１に記載のシステム。
（項目３３）
少なくとも１つの共有暗号化キーを計算するためのシステムであって、
前記システムは、第１の処理回路を含む第１のデバイスを含み、前記第１の処理回路は、
元の秘密情報を生成することと、
一意の証明機関から公開キーを取得することと、
前記秘密情報をシェアに分散することと、
前記シェアのうちの各々を、前記一意の証明機関のうちの異なる１つの前記公開キーに少なくとも部分的に基づいて、暗号化することと
を行うように構成され、
前記シェアは、少なくとも定数のシェアを再結合させることによって前記シェアの一部から修復可能である、
システム。
（項目３４）
第２の処理回路を含む第２のデバイスを含み、前記第２の処理回路は、
前記少なくとも定数のシェアを再結合させることと、
再結合されたシェアに基づいてデータを伝送することと
を行うように構成されている、
項目３３に記載のシステム。
（項目３５）
前記第１の処理回路は、第１組の乱数を生成するようにさらに構成され、前記第２の処理回路は、第２組の乱数を生成するようにさらに構成されている、項目３４に記載のシステム。
（項目３６）
前記第１の処理回路は、前記第１および第２組の乱数および前記元の秘密情報に基づいて、第１の共有暗号化キーを計算するようにさらに構成され、前記第２の処理回路は、前記第１および第２組の乱数および前記再結合されたシェアに基づいて、第２の共有暗号化キーを計算するようにさらに構成され、前記第１および第２の処理回路は、前記第１および第２の共有暗号化キーに基づいて、データを伝送するようにさらに構成されている、項目３５に記載のシステム。
（項目３７）
前記第１の処理回路は、
前記第１および第２の共有暗号化キーを比較することと、
比較に基づいて、データを伝送するかどうかを決定することと、
決定に基づいてデータを伝送することと
を行うようにさらに構成されている、項目３６に記載のシステム。
（項目３８）
前記第１の処理回路は、キーラップに基づいて、前記秘密情報のシェアのうちの各々を暗号化するようにさらに構成されている、項目３３に記載のシステム。
（項目３９）
前記キーラップは、ワークグループキーに基づいている、項目３８に記載のシステム。
（項目４０）
前記第１の処理回路は、
証明機関階層を生成することであって、前記証明機関階層は、ルート証明機関を含む、ことと、
前記証明機関階層の一意のルート証明機関によって発行される証明書に基づいて、前記一式のシェアのうちの各々を暗号化することと
を行うようにさらに構成されている、項目３３に記載のシステム。
（項目４１）
前記第１の処理回路は、
証明機関階層を生成することであって、前記証明機関階層は、一式の小証明機関を含む、ことと、
前記証明機関階層の一意の小証明機関によって発行される証明書に基づいて、前記一式のシェアのうちの各々を暗号化することと
を行うようにさらに構成されている、項目３３に記載のシステム。
【図面の簡単な説明】
【００１８】
本発明は、本発明を限定せず、本発明を例証するように意図されている、添付図面に関連して、以下でより詳細に説明される。
【図１】図１は、本発明の実施形態の側面による、暗号システムのブロック図を図示する。
【図２】図２は、本発明の実施形態の側面による、図１の信頼エンジンのブロック図を図示する。
【図３】図３は、本発明の実施形態の側面による、図２のトランザクションエンジンのブロック図を図示する。
【図４】図４は、本発明の実施形態の側面による、図２の保管場所のブロック図を図示する。
【図５】図５は、本発明の実施形態の側面による、図２の認証エンジンのブロック図を図示する。
【図６】図６は、本発明の実施形態の側面による、図２の暗号エンジンのブロック図を図示する。
【図７】図７は、本発明の別の実施形態の側面による、保管場所システムのブロック図を図示する。
【図８】図８は、本発明の実施形態の側面による、データ分割過程のフローチャートを図示する。
【図９Ａ】図９のパネルＡは、本発明の実施形態の側面による、登録過程のデータフローを図示する。
【図９Ｂ】図９のパネルＢは、本発明の実施形態の側面による、相互運用性過程のフローチャートを図示する。
【図１０】図１０は、本発明の実施形態の側面による、認証過程のデータフローを図示する。
【図１１】図１１は、本発明の実施形態の側面による、署名過程のデータフローを図示する。
【図１２】図１２は、本発明の側面およびさらに別の実施形態による、データフローおよび暗号化／復号過程を図示する。
【図１３】図１３は、本発明の別の実施形態の側面による、信頼エンジンシステムの簡略化したブロック図を図示する。
【図１４】図１４は、本発明の別の実施形態の側面による、信頼エンジンシステムの簡略化したブロック図を図示する。
【図１５】図１５は、本発明の実施形態の側面による、図１４の冗長性モジュールのブロック図を図示する。
【図１６】図１６は、本発明の一側面による、認証を評価するための過程を図示する。
【図１７】図１７は、本発明の図１６に図示されるような一側面による、値を認証に割り当てるための過程を図示する。
【図１８】図１８は、図１７に図示されるような本発明の側面において、信頼裁定を行うための過程を図示する。
【図１９】図１９は、最初のウェブベースの連絡が、両者によって署名される販売契約につながる、本発明の実施形態の側面による、ユーザとベンダとの間のサンプルトランザクションを図示する。
【図２０】図２０は、ユーザシステムにセキュリティ機能を提供する、暗号サービスプロバイダモジュールを伴うサンプルユーザシステムを図示する。
【図２１】図２１は、暗号化を用いてデータを解析、分割、および／または分離するための過程、およびデータを伴った暗号化マスターキーの記憶を図示する。
【図２２】図２２は、暗号化を用いてデータを解析、分割、および／または分離し、データとは別に暗号化マスターキーを記憶するための過程を図示する。
【図２３】図２３は、暗号化を用いてデータを解析、分割、および／または分離するための中間キー過程、およびデータを伴った暗号化マスターキーの記憶を図示する。
【図２４】図２４は、暗号化を用いてデータを解析、分割、および／または分離し、データとは別に暗号化マスターキーを記憶するための中間キー過程を図示する。
【図２５】図２５は、少人数の作業グループとの本発明の暗号方法およびシステムの利用を図示する。
【図２６】図２６は、本発明の一実施形態による、セキュアなデータパーサを採用する例証的な物理的トークンセキュリティシステムのブロック図である。
【図２７】図２７は、本発明の一実施形態による、セキュアなデータパーサがシステムに統合される、例証的配置のブロック図である。
【図２８】図２８は、本発明の一実施形態による、例証的データ移動中システムブロック図である。
【図２９】図２９は、本発明の一実施形態による、例証的データ移動中システムブロック図である。
【図３０】図３０〜３２は、本発明の一実施形態による、統合されたセキュアなデータパーサを有する例証的システムのブロック図である。
【図３１】図３０〜３２は、本発明の一実施形態による、統合されたセキュアなデータパーサを有する例証的システムのブロック図である。
【図３２】図３０〜３２は、本発明の一実施形態による、統合されたセキュアなデータパーサを有する例証的システムのブロック図である。
【図３３】図３３は、本発明の一実施形態による、データを解析および分割するための例証的過程の過程フロー図である。
【図３４】図３４は、本発明の一実施形態による、データ部分を元のデータに修復するための例証的過程の過程フロー図である。
【図３５】図３５は、本発明の一実施形態による、ビットレベルでデータを分割するための例証的過程の過程フロー図である。
【図３６】図３６は、本発明の一実施形態による、例証的なステップおよび特徴の過程フロー図である。
【図３７】図３７は、本発明の一実施形態による、例証的なステップおよび特徴の過程フロー図である。
【図３８】図３８は、本発明の一実施形態による、シェア内のキーおよびデータ構成要素の記憶の簡略化したブロック図である。
【図３９】図３９は、本発明の一実施形態による、ワークグループキーを使用したシェア内のキーおよびデータ構成要素の記憶の簡略化したブロック図である。
【図４０Ａ】図４０Ａおよび４０Ｂは、本発明の一実施形態による、移動中のデータに対するヘッダ生成およびデータ分割の簡略化した例証的な過程フロー図である。
【図４０Ｂ】図４０Ａおよび４０Ｂは、本発明の一実施形態による、移動中のデータに対するヘッダ生成およびデータ分割の簡略化した例証的な過程フロー図である。
【図４１】図４１は、本発明の一実施形態による、例証的なシェア形式の簡略化したブロック図である。
【図４２】図４２は、本発明の一実施形態による、証明機関の簡略化した例証的な階層である。
【図４３】図４３−４７、４８Ａ、および４８Ｂは、本発明の一実施形態による、セキュアなプロキシサービスのための例証的なステップおよび特徴の過程フロー図である。
【図４４】図４３−４７、４８Ａ、および４８Ｂは、本発明の一実施形態による、セキュアなプロキシサービスのための例証的なステップおよび特徴の過程フロー図である。
【図４５】図４３−４７、４８Ａ、および４８Ｂは、本発明の一実施形態による、セキュアなプロキシサービスのための例証的なステップおよび特徴の過程フロー図である。
【図４６】図４３−４７、４８Ａ、および４８Ｂは、本発明の一実施形態による、セキュアなプロキシサービスのための例証的なステップおよび特徴の過程フロー図である。
【図４７】図４３−４７、４８Ａ、および４８Ｂは、本発明の一実施形態による、セキュアなプロキシサービスのための例証的なステップおよび特徴の過程フロー図である。
【図４８Ａ】図４３−４７、４８Ａ、および４８Ｂは、本発明の一実施形態による、セキュアなプロキシサービスのための例証的なステップおよび特徴の過程フロー図である。
【図４８Ｂ】図４３−４７、４８Ａ、および４８Ｂは、本発明の一実施形態による、セキュアなプロキシサービスのための例証的なステップおよび特徴の過程フロー図である。
【図４８Ｃ】図４８Ｃは、本発明の一実施形態による、通信チャネルの構造において一式の証明機関の間で信頼をシェアする、セキュアなプロキシサービスの簡略化したブロック図である。
【図４９】図４９および５０は、本発明の一実施形態による、通信チャネルの構造において一式の証明機関の間で信頼をシェアする、セキュアなプロキシサービスのための例証的なステップおよび特徴の過程フロー図である。
【図５０】図４９および５０は、本発明の一実施形態による、通信チャネルの構造において一式の証明機関の間で信頼をシェアする、セキュアなプロキシサービスのための例証的なステップおよび特徴の過程フロー図である。
【発明を実施するための形態】
【００１９】
本発明の一側面は、１つ以上のセキュアなサーバ、または信頼エンジンが、暗号キーおよびユーザ認証データを記憶する、暗号システムを提供する。ユーザは、信頼エンジンへのネットワークアクセスを通して、従来の暗号システムの機能性にアクセスするが、信頼エンジンは、実際のキーおよび他の認証データを公開せず、したがって、キーおよびデータはセキュアに保管されたままである。このキーおよび認証データのサーバ中心の記憶は、ユーザ独立型セキュリティ、可搬性、可用性、および単純性を提供する。
【００２０】
ユーザが、ユーザおよび文書認証および他の暗号機能を行うのに暗号システムを確信または信頼できるため、多種多様な機能性がシステムに組み込まれ得る。例えば、信頼エンジンプロバイダは、例えば、同意当事者を認証し、当事者を代理または代表して同意にデジタル署名し、各当事者によってデジタル署名された同意の記録を記憶することによって、同意に対する拒否を保証することができる。加えて、暗号システムは、同意を監視し、例えば、価格、ユーザ、ベンダ、地理的な場所、使用場所等に基づいて、様々な程度の認証を適用することを決定し得る。
【００２１】
本発明の完全な理解を促進するために、発明を実施するための形態の残りの部分は、類似要素が全体を通して類似数字で参照される図を参照して、本発明を説明する。
【００２２】
図１は、本発明の実施形態の側面による、暗号システム１００のブロック図を図示する。図１に示されるように、暗号システム１００は、通信リンク１２５を通して通信する、ユーザシステム１０５、信頼エンジン１１０、証明機関１１５、およびベンダシステム１２０を含む。
【００２３】
本発明の一実施形態によれば、ユーザシステム１０５は、例えば、Ｉｎｔｅｌベースのプロセッサ等の１つ以上のマイクロプロセッサを有する、従来の汎用コンピュータを備える。また、ユーザシステム１０５は、Ｗｉｎｄｏｗｓ（登録商標）、Ｕｎｉｘ（登録商標）、Ｌｉｎｕｘ（登録商標）等の、例えば、グラフィックスまたはウィンドウを含むことが可能なオペレーティングシステム等の適切なオペレーティングシステムを含む。図１に示されるように、ユーザシステム１０５は、生体測定デバイス１０７を含み得る。生体測定デバイス１０７は、ユーザの生体測定を有利に捕捉し、捕捉した生体測定を信頼エンジン１１０に転送し得る。本発明の一実施形態によれば、生体測定デバイスは、その全てが本出願人によって所有され、かつその全てが参照することにより本明細書に組み込まれる、「ＲＥＬＩＥＦ  ＯＢＪＥＣＴ  ＩＭＡＧＥ  ＧＥＮＥＲＡＴＯＲ」と題された、１９９７年９月５日出願の米国特許出願第０８／９２６，２７７号、「ＩＭＡＧＩＮＧ  ＤＥＶＩＣＥ  ＦＯＲ  Ａ  ＲＥＬＩＥＦ  ＯＢＪＥＣＴ  ＡＮＤ  ＳＹＳＴＥＭ  ＡＮＤ  ＭＥＴＨＯＤ  ＯＦ  ＵＳＩＮＧ  ＴＨＥ  ＩＭＡＧＥ  ＤＥＶＩＣＥ」と題された、２０００年４月２６日出願の米国特許出願第０９／５５８，６３４号、「ＲＥＬＩＥＦ  ＯＢＪＥＣＴ  ＳＥＮＳＯＲ  ＡＤＡＰＴＯＲ」と題された、１９９９年１１月５日出願の米国特許出願第０９／４３５，０１１号、および「ＰＬＡＮＡＲ  ＯＰＴＩＣＡＬ  ＩＭＡＧＥ  ＳＥＮＳＯＲ  ＡＮＤ  ＳＹＳＴＥＭ  ＦＯＲ  ＧＥＮＥＲＡＴＩＮＧ  ＡＮ  ＥＬＥＣＴＲＯＮＩＣ  ＩＭＡＧＥ  ＯＦ  Ａ  ＲＥＬＩＥＦ  ＯＢＪＥＣＴ  ＦＯＲ  ＦＩＮＧＥＲＰＲＩＮＴ  ＲＥＡＤＩＮＧ」と題された、２０００年１月５日出願の米国特許出願第０９／４７７，９４３号で開示されているものと同様の属性および特徴を有する、デバイスを有利に備え得る。
【００２４】
加えて、ユーザシステム１０５は、例えば、ダイヤルアップ、デジタル加入者回線（ＤＳＬ）、ケーブルモデム、ファイバ接続等の従来のサービスプロバイダを通して、通信リンク１２５に接続し得る。別の実施形態によれば、ユーザシステム１０５は、例えば、ローカルまたは広域ネットワーク等のネットワーク接続を通して、通信リンク１２５を接続する。一実施形態によれば、オペレーティングシステムは、通信リンク１２５上で渡される全ての着信および発信メッセージを処理する、ＴＣＰ／ＩＰスタックを含む。
【００２５】
ユーザシステム１０５が前述の実施形態を参照して開示されているが、本発明はそれによって限定されることを目的としていない。むしろ、当業者であれば、情報を送信すること、または別のコンピュータシステムから受信することが可能なほとんどあらゆるコンピュータデバイスを含む、ユーザシステム１０５の多数の代替実施形態を本明細書の本開示から認識するであろう。例えば、ユーザシステム１０５は、通信リンク１２５と相互作用することができる、コンピュータワークステーション、双方向テレビ、双方向キオスク、デジタルアシスタント、携帯電話、ラップトップ等のパーソナルモバイルコンピューティングデバイス、ホームルータ、ネットワーク記憶デバイス（「ＮＡＳ」）、パーソナルホットスポット等のパーソナルネットワーキング機器、あるいは無線通信デバイス、スマートカード、組み込みコンピューティングデバイス等を含み得るが、それらに限定されない。そのような代替システムでは、オペレーティングシステムは異なり、特定のデバイスのために適合される可能性が高い。しかしながら、一実施形態によれば、オペレーティングシステムは、通信リンク１２５との通信を確立するために必要とされる適切なプロトコルを有利に提供し続ける。
【００２６】
図１は、信頼エンジン１１０を図示する。一実施形態によれば、信頼エンジン１１０は、テキスト、音声、ビデオ、ユーザ認証データ、ならびに公開および秘密暗号キー等であるが、それらに限定されない、任意の種類または形態のデータであり得る、機密情報にアクセスし、記憶するための１つ以上のセキュアなサーバを備える。一実施形態によれば、認証データは、暗号システム１００のユーザを一意的に識別するように設計されているデータを含む。例えば、認証データは、ユーザ識別番号、１つ以上の生体測定、ならびに信頼エンジン１１０またはユーザによって生成されるが、登録時に最初にユーザによって回答される一連の質問および回答を含み得る。前述の質問は、出生地、住所、記念日等の人口統計データ、母親の旧姓、好きなアイスクリーム等の個人データ、またはユーザを一意的に識別するように設計されている他のデータを含み得る。信頼エンジン１１０は、現在のトランザクションに関連付けられるユーザの認証データを、例えば、登録中等のその時以前に提供された認証データと比較する。信頼エンジン１１０は、各トランザクションの時に認証データを生成するようにユーザに有利に要求し得、または信頼エンジン１１０は、一連のトランザクションの開始時または特定のベンダのウェブサイトにログオンする時等に、ユーザが認証データを周期的に生成することを有利に可能にし得る。
【００２７】
ユーザが生体測定データを生成する実施形態によれば、ユーザは、顔面スキャン、手スキャン、耳スキャン、虹彩スキャン、網膜スキャン、血管パターン、ＤＮＡ、指紋、筆跡、または発話等であるがそれらに限定されない、身体的特性を生体測定デバイス１０７に提供する。生体測定デバイスは、身体的特性の電子パターンまたは生体測定を有利に生成する。電子パターンは、登録または認証目的で、ユーザシステム１０５を通して信頼エンジン１１０に転送される。
【００２８】
いったんユーザが適切な認証データを生成し、信頼エンジン１１０が、認証データ（現在の認証データ）と登録時に提供された認証データ（登録認証データ）との間の肯定的な照合を決定すると、信頼エンジン１１０は、ユーザに完全な暗号機能性を提供する。例えば、適正に認証されたユーザは、ハッシング、デジタル署名、暗号化および復号（しばしば一緒に単に暗号化と呼ばれる）、デジタル証明書の作成および配布等を行うために、信頼エンジン１１０を有利に採用し得る。しかしながら、暗号機能で使用される秘密暗号キーは、信頼エンジン１１０外で使用可能とならず、それにより、暗号キーの完全性を保証する。
【００２９】
一実施形態によれば、信頼エンジン１１０は、暗号キーを生成し、記憶する。別の実施形態によれば、少なくとも１つの暗号キーは、各ユーザに関連付けられる。また、暗号キーは、公開キー技術を含み、ユーザに関連付けられる各秘密キーは、信頼エンジン１１０内で生成され、そこから公開されない。したがって、ユーザが信頼エンジン１１０にアクセスできる限り、ユーザは、自分の秘密または公開キーを使用して暗号機能を果たし得る。そのような遠隔アクセスは、ユーザが完全に移動性のままであり、携帯または衛星電話、キオスク、ラップトップ、ホテルの部屋等の事実上あらゆるインターネット接続を通して暗号機能にアクセスすることを有利に可能にする。
【００３０】
別の実施形態によれば、信頼エンジン１１０は、信頼エンジン１１０に生成されたキーペアを使用して、暗号機能性を果たす。この実施形態によれば、信頼エンジン１１０は、最初にユーザを認証し、ユーザが登録認証データに合致する認証データを適正に生成した後、信頼エンジン１１０は、認証されたユーザに代わって暗号機能を果たすために独自の暗号キーペアを使用する。
【００３１】
当業者であれば、暗号キーが、対称キー、公開キー、および秘密キーのうちのいくつかまたは全てを有利に含み得ることを本明細書の本開示から認識するであろう。加えて、当業者であれば、前述のキーが、例えば、ＲＳＡ、ＥＬＧＡＭＡＬ等の商業用技術から入手可能な多数のアルゴリズムを用いて実装され得ることを本明細書の本開示から認識するであろう。
【００３２】
図１はまた、証明機関１１５も図示する。一実施形態によれば、証明機関１１５は、例えば、ＶｅｒｉＳｉｇｎ、Ｂａｌｔｉｍｏｒｅ、Ｅｎｔｒｕｓｔ等のデジタル証明書を発行する、信頼できる第三者組織または企業を有利に備え得る。信頼エンジン１１０は、例えば、ＰＫＣＳ１０等の１つ以上の従来のデジタル証明書プロトコルを通して、デジタル証明書の要求を証明機関１１５に有利に伝送し得る。それに応じて、証明機関１１５は、例えば、ＰＫＣＳ７等のいくつかの異なるプロトコルのうちの１つ以上で、デジタル証明書を発行する。本発明の一実施形態によれば、信頼エンジン１１０が、任意の要求当事者の証明書基準に対応するデジタル証明書にアクセスできるように、信頼エンジン１１０は、著名な証明機関１１５のうちのいくつかまたは全てからデジタル証明書を要求する。
【００３３】
別の実施形態によれば、信頼エンジン１１０は、証明書発行を内部で行う。この実施形態では、信頼エンジン１１０は、証明書を生成するための証明書システムにアクセスし得、および／または、例えば、キー生成時等の要求された場合に、または要求時に要求された証明書基準で、証明書を内部で生成し得る。信頼エンジン１１０を以下でより詳細に開示する。
【００３４】
図１はまた、ベンダシステム１２０も図示する。一実施形態によれば、ベンダシステム１２０は、ウェブサーバを有利に備える。典型的なウェブサーバは、概して、ハイパーテキストマークアップ言語（Ｈｙｐｅｒ−Ｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ／ＨＴＭＬ）または拡張可能マークアップ言語（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ／ＸＭＬ）等のいくつかのインターネットマークアップ言語または文書形式基準のうちの１つを使用して、インターネット上でコンテンツを供給する。ウェブサーバは、ＮｅｔｓｃａｐｅおよびＩｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒのようなブラウザから要求を受け取り、次いで、適切な電子文書を返信する。標準電子文書を送達する能力を超えて、ウェブサーバの権限を増大させるために、いくつかのサーバまたはクライアント側技術を使用することができる。例えば、これらの技術は、共通ゲートウェイインターフェース（Ｃｏｍｍｏｎ  Ｇａｔｅｗａｙ  Ｉｎｔｅｒｆａｃｅ／ＣＧＩ）スクリプト、ＳＳＬセキュリティ、およびアクティブサーバページ（Ａｃｔｉｖｅ  Ｓｅｒｖｅｒ  Ｐａｇｅ／ＡＳＰ）を含む。ベンダシステム１２０は、商業用、個人用、教育用、または他のトランザクションに関する電子コンテンツを有利に提供し得る。
【００３５】
ベンダシステム１２０が前述の実施形態を参照して開示されているが、本発明はそれによって限定されることを目的としていない。むしろ、当業者であれば、ベンダシステム１２０が、ユーザシステム１０５を参照して説明されるデバイスのうちのいずれか、またはそれらの組み合わせを有利に備え得ることを、本明細書の本開示から認識するであろう。
【００３６】
図１はまた、ユーザシステム１０５、信頼エンジン１１０、証明機関１１５、およびベンダシステム１２０を接続する、通信リンク１２５も図示する。一実施形態によれば、通信リンク１２５は、好ましくは、インターネットを備える。本開示の全体を通して使用されるようなインターネットは、コンピュータの世界的ネットワークである。当業者に周知である、インターネットの構造は、バックボーンから分岐するネットワークを伴うネットワークバックボーンを含む。これらの分岐は順に、それらから分岐するネットワーク等を有する。ルータは、パケットがその送信先の近隣に到達するまで、ネットワークレベル間で、次いで、ネットワークからネットワークへ情報パケットを移動させる。送信先から、送信先ネットワークのホストが、情報パケットを適切な端末またはノードに方向付ける。１つの有利な実施形態では、インターネットルーティングハブは、当技術分野で周知であるような伝送制御プロトコル／インターネットプロトコル（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ：ＴＣＰ／ＩＰ）を使用する、ドメイン名システム（ＤＮＳ）サーバを備える。ルーティングハブは、高速通信リンクを介して１つ以上の他のルーティングハブに接続する。
【００３７】
インターネットの１つの良く知られている部分は、ワールドワイドウェブである。ワールドワイドウェブは、図形およびテキスト情報を表示することが可能な文書を記憶する、異なるコンピュータを含む。ワールドワイドウェブ上で情報を提供するコンピュータは、典型的には、「ウェブサイト」と呼ばれる。ウェブサイトは、関連電子ページを有するインターネットアドレスによって定義される。電子ページは、ユニフォームリソースロケータ（ＵＲＬ）によって識別することができる。概して、電子ページは、テキスト、グラフィック画像、音声、ビデオ等の提示を編成する文書である。
【００３８】
通信リンク１２５がその好ましい実施形態に関して開示されているが、当業者であれば、通信リンク１２５が広範囲の通信リンクを含み得ることを、本明細書の本開示から認識するであろう。例えば、通信リンク１２５は、双方向テレビネットワーク、電話ネットワーク、無線データ伝送システム、両方向ケーブルシステム、カスタマイズされた秘密または公開コンピュータネットワーク、双方向キオスクネットワーク、現金自動預払機ネットワーク、直接リンク、衛星またはセルラーネットワーク等を含み得る。
【００３９】
図２は、本発明の実施形態の側面による、図１の信頼エンジン１１０のブロック図を図示する。図２に示されるように、信頼エンジン１１０は、トランザクションエンジン２０５と、保管場所２１０と、認証エンジン２１５と、暗号エンジン２２０とを含む。本発明の一実施形態によれば、信頼エンジン１１０はまた、大容量記憶装置２２５も含む。図２でさらに示されるように、トランザクションエンジン２０５は、大容量記憶装置２２５、保管場所２１０、認証エンジン２１５、および暗号エンジン２２０と通信する。加えて、保管場所２１０は、認証エンジン２１５、暗号エンジン２２０、および大容量記憶装置２２５と通信する。また、認証エンジン２１５は、暗号エンジン２２０と通信する。本発明の一実施形態によれば、前述の通信のうちのいくつかまたは全ては、受信デバイスに対応するＩＰアドレスへのＸＭＬ文書の伝送を有利に含み得る。前述のように、ＸＭＬ文書は、設計者が独自のカスタマイズされた文書タグを作成することを有利に可能にし、アプリケーション間および組織間のデータの定義、伝送、検証、および解釈を可能にする。また、前述の通信のうちのいくつかまたは全ては、従来のＳＳＬ技術を含み得る。
【００４０】
一実施形態によれば、トランザクションエンジン２０５は、Ｎｅｔｓｃａｐｅ、Ｍｉｃｒｏｓｏｆｔ、Ａｐａｃｈｅ等から入手可能な従来のウェブサーバ等のデータルーティングデバイスを備える。例えば、ウェブサーバは、通信リンク１２５から着信データを有利に受信し得る。本発明の一実施形態によれば、着信データは、信頼エンジン１１０用のフロントエンドセキュリティシステムにアドレス指定される。例えば、フロントエンドセキュリティシステムは、ファイアウォール、既知の攻撃プロファイルを検索する侵入検出システム、および／またはウイルススキャナを有利に含み得る。フロントエンドセキュリティシステムを通過した後、データはトランザクションエンジン２０５によって受信され、保管場所２１０、認証エンジン２１５、暗号エンジン２２０、および大容量記憶装置２２５のうちの１つに送られる。加えて、トランザクションエンジン２０５は、認証エンジン２１５および暗号エンジン２２０からの着信データを監視し、通信リンク１２５を通して特定のシステムにデータを送る。例えば、トランザクションエンジン２０５は、ユーザシステム１０５、証明機関１１５、またはベンダシステム１２０にデータを有利に送り得る。
【００４１】
一実施形態によれば、データは、例えば、ＵＲＬまたはユニフォームリソースインジケータ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｉｎｄｉｃａｔｏｒ／ＵＲＩ）を採用すること等の従来のＨＴＴＰルーティング技法を使用して送られる。ＵＲＩは、ＵＲＬと同様であるが、ＵＲＩは、典型的には、例えば、実行ファイル、スクリプト等のファイルまたは動作源を示す。したがって、一実施形態によれば、ユーザシステム１０５、証明機関１１５、ベンダシステム１２０、および信頼エンジン２１０の構成要素は、暗号システムの全体を通してデータを適正に送るように、トランザクションエンジン２０５の通信ＵＲＬまたはＵＲＩ内で十分なデータを有利に含む。
【００４２】
データルーティングがその好ましい実施形態に関して開示されているが、当業者であれば、多数の可能なデータルーティング解決法または方法を認識するであろう。例えば、トランザクションエンジン２０５が、信頼エンジン１１０の全体を通してデータを適正に送り得るように、ＸＭＬまたは他のデータパケットが、有利に解凍され、それらの形式、コンテンツ等によって認識され得る。また、当業者であれば、例えば、通信リンク１２５がローカルネットワークを含む時等に、データルーティングは、特定のネットワークシステムに一致するデータ転送プロトコルに有利に適合され得ることを認識するであろう。
【００４３】
本発明のさらに別の実施形態によれば、特定の通信中にトランザクションエンジン２０５を用いて、前述のシステムが自身を認証し、その逆も同様であるように、トランザクションエンジン２０５は、従来のＳＳＬ暗号化技術を含む。本開示の全体を通して使用されるように、「１／２ＳＳＬ」という用語は、サーバがＳＳＬ認証されるが、必ずしもクライアントはＳＳＬ認証されるとは限らない通信を指し、「ＦＵＬＬ  ＳＳＬ」という用語は、クライアントおよびサーバがＳＳＬ認証される通信を指す。本開示が「ＳＳＬ」という用語を使用する場合、通信は１／２またはＦＵＬＬ  ＳＳＬを含み得る。
【００４４】
トランザクションエンジン２０５が暗号システム１００の種々の構成要素にデータを送るにつれて、トランザクションエンジン２０５は、オーディットトレールを有利に作成し得る。一実施形態によれば、オーディットトレールは、暗号システム１００の全体を通してトランザクションエンジン２０５によって送られるデータの少なくとも種類および形式の記録を含む。そのようなオーディットデータは、大容量記憶装置２２５に有利に記憶され得る。
【００４５】
図２はまた、保管場所２１０も図示する。一実施形態によれば、保管場所２１０は、例えば、ディレクトリサーバ、データベースサーバ等の１つ以上のデータ記憶設備を備える。図２に示されるように、保管場所２１０は、暗号キーおよび登録認証データを記憶する。暗号キーは、信頼エンジン１１０に、またはユーザあるいはベンダ等の暗号システム１００のユーザに有利に対応し得る。登録認証データは、ユーザＩＤ、パスワード、質問への回答、生体測定データ等のユーザを一意的に識別するように設計されているデータを有利に含み得る。この登録認証データは、ユーザの登録時に、または別の代替的な後の時間に、有利に取得され得る。例えば、信頼エンジン１１０は、登録認証データの周期的または他の更新または再発行を含み得る。
【００４６】
一実施形態によれば、トランザクションエンジン２０５から認証エンジン２１５および暗号エンジン２２０を往復する通信は、例えば、従来のＳＳＬ技術等のセキュアな通信を含む。加えて、前述のように、保管場所２１０を往復する通信のデータは、ＵＲＬ、ＵＲＩ、ＨＴＴＰ、またはＸＭＬ文書を使用して転送され得、前述のうちのいずれかは、その中に組み込まれたデータ要求および形式を有利に有する。
【００４７】
上述のように、保管場所２１０は、複数のセキュアなデータ記憶設備を有利に備え得る。そのような実施形態では、セキュアなデータ記憶設備は、１つの個別データ記憶設備におけるセキュリティの侵害が、その中に記憶された暗号キーまたは認証データを損なわないように、構成され得る。例えば、この実施形態によれば、暗号キーおよび認証データは、各データ記憶設備に記憶されたデータを統計的かつ実質的に無作為化するよう、数学的に操作される。一実施形態によれば、個別データ記憶設備のデータの無作為化は、そのデータを解読不可能にする。したがって、個別データ記憶設備のセキュリティ侵害は、無作為化された解読不可能な数字のみを生じ、任意の暗号キーまたは認証データのセキュリティを全体として損なわない。
【００４８】
図２はまた、認証エンジン２１５を含む、信頼エンジン１１０も図示する。一実施形態によれば、認証エンジン２１５は、トランザクションエンジン２０５からのデータを保管場所２１０からのデータと比較するように構成されている、データコンパレータを備える。例えば、認証中に、ユーザは、トランザクションエンジン２０５が現在の認証データを受信するように、現在の認証データを信頼エンジン１１０に供給する。前述のように、トランザクションエンジン２０５は、好ましくはＵＲＬまたはＵＲＩでデータ要求を認識し、認証データを認証エンジン２１５に送る。また、要求に応じて、保管場所２１０は、ユーザに対応する登録認証データを認証エンジン２１５に転送する。したがって、認証エンジン２１５は、比較のために現在の認証データおよび登録認証データの両方を有する。
【００４９】
一実施形態によれば、認証エンジンへの通信は、例えば、ＳＳＬ技術等のセキュアな通信を含む。加えて、例えば、公開キー技術を使用した多重暗号化を使用して、信頼エンジン１１０の構成要素内でセキュリティを提供することができる。例えば、一実施形態によれば、ユーザは、認証エンジン２１５の公開キーを用いて、認証データを暗号化する。加えて、保管場所２１０もまた、認証エンジン２１５の公開キーを用いて、登録認証データを暗号化する。このようにして、伝送を復号するために、認証エンジンの秘密キーのみを使用することができる。
【００５０】
図２に示されるように、信頼エンジン１１０はまた、暗号エンジン２２０も含む。一実施形態によれば、暗号エンジンは、例えば、公開キーインフラストラクチャ（ＰＫＩ）機能性等の従来の暗号機能を有利に提供するように構成されている、暗号処理モジュールを備える。例えば、暗号エンジン２２０は、暗号システム１００のユーザ用の公開および秘密キーを有利に発行し得る。このようにして、少なくとも秘密暗号キーが信頼エンジン１１０外で利用可能とならないように、暗号キーは暗号エンジン２２０で生成され、保管場所２１０に転送される。別の実施形態によれば、暗号エンジン２２０は、少なくとも秘密暗号キーデータを無作為化して分割し、それにより、無作為化された分割データのみを記憶する。登録認証データの分割と同様に、分割過程は、記憶されたキーが暗号エンジン２２０外で利用可能ではないことを保証する。別の実施形態によれば、暗号エンジンの機能は、認証エンジン２１５と組み合わせ、認証エンジン２１５によって果たすことができる。
【００５１】
一実施形態によれば、暗号エンジンを往復する通信は、ＳＳＬ技術等のセキュアな通信を含む。加えて、データを転送する、および／または暗号機能要求を行うために、ＸＭＬ文書が有利に採用され得る。    
【００５２】
図２はまた、大容量記憶装置２２５を有する信頼エンジン１１０も図示する。前述のように、トランザクションエンジン２０５は、オーディットトレールに対応するデータを保持し、大容量記憶装置２２５にそのようなデータを記憶する。同様に、本発明の一実施形態によれば、保管場所２１０は、オーディットトレールに対応するデータを保持し、大容量記憶デバイス２２５にそのようなデータを記憶する。保管場所オーディットトレールデータは、オーディットトレールデータが保管場所２１０によって受信される要求およびその応答の記録を備えるという点で、トランザクションエンジン２０５のオーディットトレールデータと同様である。加えて、大容量記憶装置２２５は、その中に含まれたユーザの公開キーを有する、デジタル証明書を記憶するために使用され得る。
【００５３】
信頼エンジン１１０がその好ましい代替実施形態に関して開示されているが、本発明はそれによって限定されることを目的としていない。むしろ、当業者であれば、信頼エンジン１１０の多数の代替案を本明細書の本開示において認識するであろう。例えば、信頼エンジン１１０は、認証のみ、または代替として、データ暗号化および復号等の暗号機能のうちのいくつかのみ、あるいは全てを有利に果たし得る。そのような実施形態によれば、認証エンジン２１５および暗号エンジン２２０のうちの１つが有利に除去され得、それにより、信頼エンジン１１０にとってより単純な設計を作成する。加えて、暗号エンジン２２０はまた、証明機関が信頼エンジン１１０内で具現化されるように、証明機関と通信し得る。さらに別の実施形態によれば、信頼エンジン１１０は、認証、および、例えば、デジタル署名等の１つ以上の暗号機能を有利に果たし得る。
【００５４】
図３は、本発明の実施形態の側面による、図２のトランザクションエンジン２０５のブロック図を図示する。この実施形態によれば、トランザクションエンジン２０５は、処理スレッドおよびリスニングスレッドを有する、オペレーティングシステム３０５を備える。オペレーティングシステム３０５は、例えば、Ａｐａｃｈｅから入手可能なウェブサーバ等の従来の高容量サーバで見出されるものと有利に同様であり得る。リスニングスレッドは、着信データフローについて、通信リンク１２５、認証エンジン２１５、および暗号エンジン２２０のうちの１つからの着信通信を監視する。処理スレッドは、例えば、前述のデータ構造等の着信データフローの特定のデータ構造を認識し、それにより、通信リンク１２５、保管場所２１０、認証エンジン２１５、暗号エンジン２２０、または大容量記憶装置２２５のうちの１つに着信データを送る。図３に示されるように、着信および発信データは、例えば、ＳＳＬ技術を通して、有利にセキュア化され得る。
【００５５】
図４は、本発明の実施形態の側面による、図２の保管場所２１０のブロック図を図示する。この実施形態によれば、保管場所２１０は、１つ以上のライトウェイトディレクトリアクセスプロトコル（ＬＤＡＰ）サーバを備える。ＬＤＡＰディレクトリサーバは、Ｎｅｔｓｃａｐｅ、ＩＳＯ、およびその他等の多種多様な製造業者から入手可能である。図４はまた、ディレクトリサーバが、好ましくは、暗号キーに対応するデータ４０５および登録認証データに対応するデータ４１０を記憶することも示す。一実施形態によれば、保管場所２１０は、認証データおよび暗号キーデータを一意のユーザＩＤにインデックス付けする、単一の論理メモリ構造を備える。単一の論理メモリ構造は、好ましくは、その中に記憶されたデータにおいて、高度の信頼またはセキュリティを保証する機構を含む。例えば、保管場所２１０の物理的な場所は、限定された従業員アクセス、近代的な監視システム等の多数の従来のセキュリティ対策を有利に含み得る。物理的なセキュリティに加えて、またはその代わりに、コンピュータシステムまたはサーバは、記憶されたデータを保護するソフトウェアソリューションを有利に含み得る。例えば、保管場所２１０は、講じられた措置のオーディットトレールに対応するデータ４１５を有利に作成し、記憶し得る。加えて、着信および発信通信は、従来のＳＳＬ技術と連結された公開キー暗号化を用いて、有利に暗号化され得る。
【００５６】
別の実施形態によれば、保管場所２１０は、図７を参照してさらに開示されるように、明確に異なる物理的に分離されたデータ記憶設備を備え得る。
【００５７】
図５は、本発明の実施形態の側面による、図２の認証エンジン２１５のブロック図を図示する。図３のトランザクションエンジン２０５と同様に、認証エンジン２１５は、例えば、Ａｐａｃｈｅから利用可能なウェブサーバ等の従来のウェブサーバの修正版の少なくともリスニングおよび処理スレッドを有する、オペレーティングシステム５０５を備える。図５に示されるように、認証エンジン２１５は、少なくとも１つの秘密キー５１０へのアクセスを含む。秘密キー５１０は、例えば、認証エンジン２１５の対応する公開キーを用いて暗号化された、トランザクションエンジン２０５または保管場所２１０からのデータを復号するために、有利に使用され得る。    
【００５８】
図５はまた、コンパレータ５１５と、データ分割モジュール５２０と、データ集約モジュール５２５を備える、認証エンジン２１５も図示する。本発明の好ましい実施形態によれば、コンパレータ５１５は、前述の生体測定認証データに関連する潜在的に複雑なパターンを比較することが可能な技術を含む。該技術は、例えば、指紋パターンまたは声紋を表すもの等のパターンに対するハードウェア、ソフトウェア、または複合ソリューションを含み得る。加えて、一実施形態によれば、認証エンジン２１５のコンパレータ５１５は、比較結果を提出するために、文書の従来のハッシュを有利に比較し得る。本発明の一実施形態によれば、コンパレータ５１５は、比較に対するヒューリスティクス５３０の適用を含む。ヒューリスティクス５３０は、例えば、時刻、ＩＰアドレスまたはサブネットマスク、購入プロファイル、Ｅメールアドレス、プロセッサシリアル番号またはＩＤ等の認証試行をとりまく状況を有利に処理し得る。  
【００５９】
また、生体測定データ比較の性質は、登録データへの現在の生体測定認証データの照合から、様々な程度の確信を生じさせ得る。例えば、肯定的または否定的合致のみを返信し得る、従来のパスワードと違って、指紋は、単に正確または不正確であるかよりもむしろ、部分的合致、例えば、９０％合致、７５％合致、または１０％合致であることを決定され得る。声紋分析または顔面認識等の他の生体測定識別子は、絶対的認証よりもむしろ、この確率的認証の性質を共有し得る。
【００６０】
そのような確率的認証と連動する場合、または認証が決して絶対的に信頼できるとは見なされない他の場合において、ヒューリスティクス５３０を適用して、提供された認証の確信のレベルが、行われているトランザクションを認証するのに十分高いかどうかを決定することが望ましい。
【００６１】
時には、問題のトランザクションが、より低いレベルの確信に認証されることが容認可能である、比較的低い値のトランザクションである場合であろう。これは、それに関連付けられた低いドル値を有するトランザクション（例えば、＄１０の購入）または低いリスクを伴うトランザクション（例えば、メンバー専用ウェブサイトへの入会）を含むことができる。
【００６２】
逆に、他のトランザクションを認証するために、トランザクションが続行することを可能にする前に、認証への高度の確信を要求することが望ましいことがある。そのようなトランザクションは、大きいドル値のトランザクション（例えば、数百万ドルの供給契約に署名する）、または不正認証が発生した場合に高いリスクを伴うトランザクション（例えば、政府コンピュータに遠隔でログオンする）を含み得る。
【００６３】
確信レベルおよびトランザクションの値と組み合わせたヒューリスティクス５３０の使用は、以下で説明されるように、コンパレータが動的な文脈依存認証システムを提供することを可能にするために、使用され得る。
【００６４】
本発明の別の実施形態によれば、コンパレータ５１５は、特定のトランザクションに対する認証試行を有利に追跡し得る。例えば、トランザクションが失敗すると、信頼エンジン１１０は、現在の認証データを再入力するようにユーザに要求し得る。認証エンジン２１５のコンパレータ５１５は、認証試行の数を制限するために、試行リミッタ５３５を有利に採用し、それにより、ユーザの認証データになりすます強引な試行を禁止し得る。一実施形態によれば、試行リミッタ５３５は、認証試行を繰り返すためのトランザクションを監視し、例えば、所望のトランザクションに対する認証試行を３回に限定するソフトウェアモジュールを備える。したがって、試行リミッタ５３５は、個人の認証データになりすます自動試行を、例えば、単に３回の「推測」に限定する。３回失敗すると、試行リミッタ５３５は、追加の認証試行を有利に拒否し得る。そのような拒否は、例えば、伝送されている現在の認証データにかかわらず、否定的な結果を返信するコンパレータ５１５を通して、有利に実装され得る。他方で、トランザクションエンジン２０５は、３回の試行が以前に失敗したトランザクションに関する追加の認証試行を有利に阻止し得る。    
【００６５】
認証エンジン２１５はまた、データ分割モジュール５２０と、データ集約モジュール５２５を含む。データ分割モジュール５２０は、データを実質的に無作為化して複数部分に分割するよう、種々のデータに数学的に演算する能力を有する、ソフトウェア、ハードウェア、または複合モジュールを有利に備える。一実施形態によれば、元のデータは、個別部分から再作成可能ではない。データ集約モジュール５２５は、前述の実質的に無作為化された部分の組み合わせが元の解読データを提供するように、それらに数学的に演算するように構成されている、ソフトウェア、ハードウェア、または複合モジュールを有利に備える。一実施形態によれば、認証エンジン２１５は、登録認証データを無作為化して複数部分に分割するために、データ分割モジュール５２０を採用し、複数部分を使用可能な登録認証データに再構築するためにデータ集約モジュール５２５を採用する。
【００６６】
図６は、本発明の一実施形態の側面による、図２の信頼エンジン２００の暗号エンジン２２０のブロック図を図示する。図３のトランザクションエンジン２０５と同様に、暗号エンジン２２０は、例えば、Ａｐａｃｈｅから利用可能なウェブサーバ等の従来のウェブサーバの修正版の少なくともリスニングおよび処理スレッドを有する、オペレーティングシステム６０５を備える。図６に示されるように、暗号エンジン２２０は、図５のものと同様に機能する、データ分割モジュール６１０と、データ集約モジュール６２０とを備える。しかしながら、一実施形態によれば、データ分割モジュール６１０およびデータ集約モジュール６２０は、前述の登録認証データとは対照的に、暗号キーデータを処理する。しかし、当業者であれば、データ分割モジュール９１０およびデータ分割モジュール６２０が、認証エンジン２１５のモジュールと組み合わせられ得ることを、本明細書の本開示から認識するであろう。
【００６７】
暗号エンジン２２０はまた、多数の暗号機能のうちの１つ、いくつか、または全てを果たすように構成されている、暗号処理モジュール６２５も備える。一実施形態によれば、暗号処理モジュール６２５は、ソフトウェアモジュールまたはプログラム、ハードウェア、あるいは両方を備え得る。別の実施形態によれば、暗号処理モジュール６２５は、データ比較、データ解析、データ分割、データ分離、データハッシング、データ暗号化または復号、デジタル署名検証または作成、デジタル証明書生成、記憶、または要求、暗号キー生成等を行い得る。また、当業者であれば、暗号処理モジュール８２５は、プリティーグッドプライバシー（Ｐｒｅｔｔｙ  Ｇｏｏｄ  Ｐｒｉｖａｃｙ／ＰＧＰ）、ＲＳＡベースの公開キーシステム、または多数の代替的なキー管理システム等の公開キーインフラストラクチャを有利に備え得ることを、本明細書の本開示から認識するであろう。加えて、暗号処理モジュール６２５は、公開キー暗号化、対称キー暗号化、または両方を行い得る。前述のものに加えて、暗号処理モジュール６２５は、シームレスな透過的な相互運用性機能を実装するための１つ以上のコンピュータプログラムまたはモジュール、ハードウェア、あるいは両方を含み得る。
【００６８】
当業者であれば、暗号機能性が、概して暗号キー管理システムに関する、多数または種々の機能を含み得ることも、本明細書の本開示から認識するであろう。
【００６９】
図７は、本発明の実施形態の側面による、保管場所システム７００の簡略化したブロック図を図示する。図７に示されるように、保管場所システム７００は、複数のデータ記憶設備、例えば、データ記憶設備Ｄ１、Ｄ２、Ｄ３、およびＤ４を有利に備える。しかしながら、保管場所システムは１つだけのデータ記憶設備を有し得ることが、当業者によって容易に理解される。本発明の一実施形態によれば、データ記憶設備Ｄ１乃至Ｄ４の各々は、図４の保管場所２１０を参照して開示される要素のうちのいくつかまたは全てを有利に備え得る。保管場所２１０と同様に、データ記憶設備Ｄ１乃至Ｄ４は、好ましくは従来のＳＳＬを通して、トランザクションエンジン２０５、認証エンジン２１５、および暗号エンジン２２０と通信する。通信リンクは、例えば、ＸＭＬ文書を転送する。トランザクションエンジン２０５からの通信は、データの要求を有利に含み、要求は、各データ記憶設備Ｄ１乃至Ｄ４のＩＰアドレスへ有利に送信され得る。他方で、トランザクションエンジン２０５は、例えば、応答時間、サーバ負荷、メンテナンススケジュール等の多数の基準に基づいて、要求を特定のデータ記憶設備に送信する。
【００７０】
トランザクションエンジン２０５からのデータの要求に応じて、保管場所システム７００は、記憶されたデータを認証エンジン２１５および暗号エンジン２２０に有利に転送する。それぞれのデータ集約モジュールは、転送されたデータを受信し、データを使用可能な形式に組み立てる。他方で、認証エンジン２１５および暗号エンジン２２０から、データ記憶設備Ｄ１乃至Ｄ４への通信は、記憶される機密データの伝送を含み得る。例えば、一実施形態によれば、認証エンジン２１５および暗号エンジン２２０は、機密データを解読不可能な部分に分けるために、それぞれのデータ分割モジュールを有利に採用し、次いで、機密データの１つ以上の解読不可能な部分を特定のデータ記憶設備に伝送し得る。
【００７１】
一実施形態によれば、各データ記憶設備Ｄ１乃至Ｄ４は、例えば、ディレクトリサーバ等の別個の独立記憶システムを備える。本発明の別の実施形態によれば、保管場所システム７００は、複数の地理的に分離された独立データ記憶システムを備える。そのうちのいくつかまたは全てが有利に地理的に分離され得る、明確に異なる独立記憶設備Ｄ１乃至Ｄ４の中へ、機密データを分配することによって、保管場所システム７００は、追加のセキュリティ対策とともに冗長性を提供する。例えば、一実施形態によれば、複数のデータ記憶設備Ｄ１乃至Ｄ４のうちの２つからのデータのみが、機密データを解読し、再構築するために必要とされる。したがって、信頼エンジン１１０の機能性に影響を及ぼすことなく、メンテナンス、システム故障、停電等により、４つのデータ記憶設備Ｄ１乃至Ｄ４のうちの２つもの設備が、動作不能になり得る。加えて、一実施形態によれば、各データ記憶設備に記憶されたデータが無作為化され、解読不可能であるため、個別データ記憶設備のセキュリティ侵害は、必ずしも機密データを損なうわけではない。また、データ記憶設備の地理的分離を有する実施形態では、複数の地理的に遠隔の設備のセキュリティ侵害は、ますます困難となる。実際に、不正従業員でさえも、必要とされる複数の独立した地理的に遠隔のデータ記憶設備を妨害するのに多大な努力を必要とする。
【００７２】
保管場所システム７００がその好ましい代替実施形態に関して開示されているが、本発明はそれによって限定されることを目的としていない。むしろ、当業者であれば、保管場所システム７００の多数の代替案を本明細書の本開示から認識するであろう。例えば、保管場所システム７００は、１つ、２つ、またはそれ以上のデータ記憶設備を備え得る。加えて、機密データは、２つ以上のデータ記憶設備からの複数部分が、機密データを再構築して解読するために必要とされるように、数学的に操作され得る。
【００７３】
前述のように、認証エンジン２１５および暗号エンジン２２０はそれぞれ、例えば、テキスト、音声、ビデオ、認証データ、および暗号キーデータ等の任意の種類または形態のデータを分割するために、それぞれデータ分割モジュール５２０および６１０含む。図８は、本発明の実施形態による、データ分割モジュールによって行われるデータ分割過程８００のフローチャートを図示する。図８に示されるように、データ分割過程８００は、機密データ「Ｓ」が認証エンジン２１５または暗号エンジン２２０のデータ分割モジュールによって受信される場合に、ステップ８０５から始まる。好ましくは、次いで、ステップ８１０で、データ分割モジュールは、実質的な乱数、値、または文字列、あるいは一式のビット「Ａ」を生成する。例えば、乱数Ａは、暗号用途で使用するために好適な高品質の乱数を生じるために、当業者に利用可能である多数の様々な従来の技法で生成され得る。加えて、一実施形態によれば、乱数Ａは、機密データＳの長さよりも短い、長い、または等しい等の任意の好適な長さであり得る、ビット長を備える。
【００７４】
加えて、ステップ８２０では、データ分割過程８００は、別の統計学的乱数「Ｃ」を生成する。好ましい実施形態によれば、統計学的乱数ＡおよびＣの生成は、有利に並行して行われ得る。次いで、データ分割モジュールは、新しい数字「Ｂ」および「Ｄ」が生成されるように、数字ＡおよびＣを機密データＳと組み合わせる。例えば、数字Ｂは、Ａ  ＸＯＲ  Ｓという２値組み合わせを備えてもよく、数字Ｄは、Ｃ  ＸＯＲ  Ｓという２値組み合わせを備え得る。ＸＯＲ関数または「排他的ＯＲ」関数は、当業者に周知である。前述の組み合わせは、好ましくは、それぞれステップ８２５および８３０で発生し、一実施形態によれば、前述の組み合わせはまた、並行して発生する。次いで、データ分割過程８００は、対合のうちのいずれも、元の機密データＳを再編成して解読するのに十分なデータを単独では含まないように、乱数ＡおよびＣならびに数字ＢおよびＤが対合される、ステップ８３５へと進む。例えば、番号は、ＡＣ、ＡＤ、ＢＣ、およびＢＤのように対合される。一実施形態によれば、前述の対合の各々は、図７の保管場所Ｄ１乃至Ｄ４のうちの１つに分配される。別の実施形態によれば、前述の対合の各々は、保管場所Ｄ１乃至Ｄ４のうちの１つに無作為に分配される。例えば、第１のデータ分割過程８００中に、対合ＡＣは、例えば、Ｄ２のＩＰアドレスの無作為選択を通して、保管場所Ｄ２に送信され得る。次いで、第２のデータ分割過程８００中に、対合ＡＣは、例えば、Ｄ４のＩＰアドレスの無作為選択を通して、保管場所Ｄ４に送信され得る。加えて、対合は、全て１つの保管場所で記憶され得、該保管場所上の別個の場所に記憶され得る。
【００７５】
前述の内容に基づいて、データ分割過程８００は、いずれのデータ記憶設備Ｄ１乃至Ｄ４も、元の機密データＳを再作成するのに十分な暗号化されたデータを含まないように、４つのデータ記憶設備Ｄ１乃至Ｄ４の各々の中に機密データ部分を有利に配置する。前述のように、個別に使用不可能な暗号化部分へのデータのそのような無作為化は、セキュリティを増大させ、たとえデータ記憶設備Ｄ１乃至Ｄ４のうちの１つが損なわれても、データに対する維持された信頼を提供する。
【００７６】
データ分割過程８００がその好ましい実施形態に関して開示されているが、本発明はそれによって限定されることを目的としていない。むしろ、当業者であれば、データ分割過程８００の多数の代替案を本明細書の本開示から認識するであろう。例えば、データ分割過程は、データを２つの数字、例えば、乱数Ａおよび数字Ｂに有利に分割し、２つのデータ記憶設備を通してＡおよびＢを無作為に分配し得る。また、データ分割過程８００は、追加の乱数の生成を通して、多数のデータ記憶設備の間でデータを有利に分割し得る。データは、１ビット、ビット、バイト、キロバイト、メガバイトまたはそれ以上、あるいはサイズの任意の組み合わせ、もしくは一連のサイズを含むが、それらに限定されない、任意の所望の、選択された、所定の、または無作為に割り当てられたサイズ単位に分割され得る。加えて、分割過程から生じるデータ単位のサイズを変化させることにより、データを使用可能な形態に回復しにくくし、それにより、機密データのセキュリティを増大させ得る。分割データ単位サイズは、多種多様なデータ単位サイズ、またはサイズのパターン、あるいはサイズの組み合わせであり得ることが、当業者にとって容易に明白である。例えば、データ単位サイズは、全て同じサイズ、固定された一式の異なるサイズ、サイズの組み合わせ、または無作為に生成されたサイズとなるように選択または事前決定され得る。同様に、データ単位は、固定または所定データ単位サイズ、データ単位サイズのパターンまたは組み合わせ、あるいは無作為に生成されたデータ単位サイズ、もしくはシェア当たりのサイズに従って、１つ以上のシェアに分配され得る。      
【００７７】
前述のように、機密データＳを再作成するために、データ部分は、脱無作為化され、再編成される必要がある。この過程は、それぞれ認証エンジン２１５および暗号エンジン２２０のデータ集約モジュール５２５および６２０において有利に発生し得る。データ集約モジュール、例えば、データアセンブリモジュール５２５は、データ記憶設備Ｄ１乃至Ｄ４からデータ部分を受信し、データを使用可能な形態に再構築する。例えば、データ分割モジュール５２０が図８のデータ分割過程８００を採用した、一実施形態によれば、データ集約モジュール５２５は、機密データＳを再作成するために、データ記憶設備Ｄ１乃至Ｄ４のうちの少なくとも２つからのデータ部分を使用する。例えば、ＡＣ、ＡＤ、ＢＣ、およびＢＤの対合は、任意の２つが、ＡおよびＢのうちの１つ、または、ＣおよびＤのうちの１つを提供するように分配された。Ｓ＝Ａ  ＸＯＲ  ＢまたはＳ＝Ｃ  ＸＯＲ  Ｄが、データ集約モジュールが、ＡおよびＢのうちの１つ、または、ＣおよびＤのうちの１つを受信した場合に、データ集約モジュール５２５が、機密データＳを有利に再構築できることを示すことに留意されたい。したがって、データ集約モジュール５２５は、信頼エンジン１１０による集約要求に応答して、例えば、データ記憶設備Ｄ１乃至Ｄ４のうちの少なくとも最初の２つからのデータ部分を受信した場合に、機密データＳを集約し得る。
【００７８】
上記のデータ分割および集約過程に基づいて、機密データＳは、信頼エンジン１１０の限定された領域中のみで使用可能な形式で存在する。例えば、機密データＳが登録認証データを含む場合、使用可能な無作為化されていない登録認証データは、認証エンジン２１５のみで利用可能である。同様に、機密データＳが秘密暗号キーデータを含む場合、使用可能な無作為化されていない秘密暗号キーデータは、暗号エンジン２２０のみで利用可能である。
【００７９】
データ分割および集約過程がその好ましい実施形態に関して開示されているが、本発明はそれによって限定されることを目的としていない。むしろ、当業者であれば、機密データＳを分割および集約するための多数の代替案を本明細書の本開示から認識するであろう。例えば、公開キー暗号化は、データ記憶設備Ｄ１乃至Ｄ４においてデータをさらにセキュア化するために使用され得る。加えて、本明細書で説明されるデータ分割モジュールはまた、任意の既存のコンピュータシステム、ソフトウェアスイート、データベース、またはそれらの組み合わせ、あるいは本明細書で開示および説明される信頼エンジン、認証エンジン、およびトランザクションエンジン等の本発明の他の実施形態に組み込まれ、組み合わされ、または一部とされ得る、本発明の別個の明確に異なる実施形態でもあることが、当業者にとって容易に明白である。
【００８０】
図９Ａは、本発明の実施形態の側面による、登録過程９００のデータフローを図示する。図９Ａに示されるように、登録過程９００は、ユーザが暗号システム１００の信頼エンジン１１０を用いて登録することを所望する場合に、ステップ９０５から始まる。この実施形態によれば、ユーザシステム１０５は、人口統計データおよび登録認証データ等の登録データを入力するようにユーザに問い合せを行う、Ｊａｖａ（登録商標）ベース等のクライアント側アプレットを有利に含む。一実施形態によれば、登録認証データは、ユーザＩＤ、パスワード、生体測定等を含む。一実施形態によれば、問い合せ過程中に、クライアント側アプレットは、好ましくは、信頼エンジン１１０と通信して、選択されたユーザＩＤが一意であることを保証する。ユーザＩＤが一意ではない場合、信頼エンジン１１０は、一意のユーザＩＤを有利に提案し得る。クライアント側アプレットは、登録データを収集し、例えば、ＸＭＬ文書を通して、登録データを信頼エンジン１１０に、具体的には、トランザクションエンジン２０５に伝送する。一実施形態によれば、伝送は、認証エンジン２１５の公開キーを用いて符号化される。
【００８１】
一実施形態によれば、ユーザは、登録過程９００のステップ９０５中に単一の登録を行う。例えば、ユーザは、Ｊｏｅ  ユーザ等の特定の個人として自分を登録する。Ｊｏｅ  ユーザがＭｅｇａ  Ｃｏｒｐ．のＣＥＯであるＪｏｅ  ユーザとして登録することを所望する場合、次いで、この実施形態によれば、Ｊｏｅ  ユーザは２度目に登録し、第２の一意のユーザＩＤを受信し、信頼エンジン１１０は２つの身元を関連づけない。本発明の別の実施形態によれば、登録過程９００は、単一のユーザＩＤに対する複数のユーザの身元を提供する。したがって、上記の実施例では、信頼エンジン１１０は、Ｊｏｅ  ユーザの２つの身元を有利に関連付ける。本明細書の本開示から当業者によって理解されるように、ユーザは、多くの身元、例えば、世帯主であるＪｏｅ  ユーザ、慈善団体のメンバーであるＪｏｅ  ユーザ等を有し得る。たとえユーザが複数の身元を有し得ても、この実施形態によれば、信頼エンジン１１０は、好ましくは、一式の登録データのみを記憶する。また、ユーザは、必要に応じて、身元を有利に追加、編集／更新、または削除し得る。
【００８２】
登録過程９００がその好ましい実施形態に関して開示されているが、本発明はそれによって限定されることを目的としていない。むしろ、当業者であれば、登録データ、具体的には登録認証データの収集の多数の代替案を本明細書の本開示から認識するであろう。例えば、アプレットは、共通オブジェクトモデル（ＣＯＭ）ベースのアプレット等であり得る。
【００８３】
他方で、登録過程は、等級別登録を含み得る。例えば、最低レベルの登録において、ユーザは、自分の身元に関する文書を生成することなく、通信リンク１２５上で登録し得る。増加したレベルの登録に従って、ユーザは、デジタル公証人等の信頼できる第三者を使用して登録する。例えば、ユーザは、信頼できる第三者に直接会い、出生証明書、運転免許書、軍人身分証明書等を生成し、信頼できる第三者は、例えば、登録提出にデジタル署名を有利に含み得る。信頼できる第三者は、実際の公証人、郵便局または陸運局等の政府機関、従業員を登録する大企業の中の人事担当者等を含み得る。当業者であれば、多数の様々なレベルの登録が登録過程９００中に発生し得ることを本明細書の本懐時から理解するであろう。
【００８４】
登録認証データを受信した後、ステップ９１５では、トランザクションエンジン２０５が、従来のＦＵＬＬ  ＳＳＬ技術を使用して、登録認証データを認証エンジン２１５に転送する。ステップ９２０では、認証エンジン２１５が、認証エンジン２１５の秘密キーを使用して、登録認証データを復号する。加えて、認証エンジン２１５は、データを少なくとも２つの独立して解読不可能な無作為化された数に分割するよう、登録認証データに数学的に作用するためにデータ分割モジュールを採用する。前述のように、少なくとも２つの数は、統計学的乱数とバイナリのＸＯＲ数とを備え得る。ステップ９２５では、認証エンジン２１５が、無作為化された数の各部分をデータ記憶設備Ｄ１からＤ４のうちの１つに転送する。前述のように、認証エンジン２１５はまた、どの部分がどの保管場所に転送されるかを有利に無作為化し得る。
【００８５】
しばしば登録過程９００中に、ユーザはまた、暗号システム１００外の他者から暗号化された文書を受信し得るように、デジタル証明書が発行されることも所望する。前述のように、証明機関１１５は、概して、いくつかの従来の基準のうちの１つ以上に従って、デジタル証明書を発行する。概して、デジタル証明書は、全員に知られる、ユーザまたはシステムの公開キーを含む。
【００８６】
ユーザがデジタル証明書を登録時に要求する場合も、別の時に要求する場合にも、要求は信頼エンジン１１０を通して認証エンジン２１５に転送される。一実施形態によれば、要求は、例えば、ユーザの適正な名前を有する、ＸＭＬ文書を含む。ステップ９３５によれば、認証エンジン２１５が、要求を暗号エンジン２２０に転送し、暗号キーまたはキーペアを生成するように暗号エンジン２２０に命令する。
【００８７】
要求に応じて、ステップ９３５では、暗号エンジン２２０が、少なくとも１つの暗号キーを生成する。一実施形態によれば、暗号処理モジュール６２５は、一方のキーが秘密キーとして使用され、もう一方が公開キーとして使用される、キーペアを生成する。暗号エンジン２２０は、秘密キー、および一実施形態によれば公開キーのコピーを記憶する。ステップ９４５では、暗号エンジン２２０が、デジタル証明書の要求をトランザクションエンジン２０５に伝送する。一実施形態によれば、要求は、例えば、ＸＭＬ文書に組み込まれた、ＰＫＣＳ１０等の標準化要求を有利に含む。デジタル証明書の要求は、１つ以上の証明機関、および証明機関が要求する１つ以上の標準形式に有利に対応し得る。
【００８８】
ステップ９５０では、トランザクションエンジン２０５が、ステップ９５５でデジタル証明書を返信する証明機関１１５に、この要求を転送する。返信デジタル証明書は、有利に、ＰＫＣＳ７等の標準化形式、または証明機関１１５のうちの１つ以上の専有形式であり得る。ステップ９６０では、デジタル証明書がトランザクションエンジン２０５によって受信され、コピーがユーザに転送され、コピーが信頼エンジン１１０を用いて記憶される。信頼エンジン１１０は、信頼エンジン１１０が証明機関１１５の可用性に依存する必要がないように、証明書のコピーを記憶する。例えば、ユーザがデジタル証明書を送信することを所望するか、または第三者がユーザのデジタル証明書を要求すると、デジタル証明書の要求は、典型的には、証明機関１１５に送信される。しかしながら、証明機関１１５がメンテナンスを行っているか、または故障またはセキュリティ侵害の犠牲となっている場合、デジタル証明書が利用可能ではない場合がある。
【００８９】
暗号キーを発行した後はいつでも、暗号エンジン２２０は、暗号キーが独立して解読不可能な無作為化された数に分割されるように、上記で説明されるデータ分割過程８００を有利に採用し得る。認証データと同様に、ステップ９６５では、暗号エンジン２２０が、無作為化された数をデータ記憶設備Ｄ１乃至Ｄ４に転送する。
【００９０】
当業者であれば、ユーザが登録後にいつでもデジタル証明書を要求し得ることを本明細書の本開示から認識するであろう。また、システム間の通信は、ＦＵＬＬ  ＳＳＬまたは公開キー暗号化技術を有利に含み得る。また、登録過程は、信頼エンジン１１０の内部または外部の１つ以上の専有証明機関を含む複数の証明機関から、複数のデジタル証明書を発行し得る。
【００９１】
ステップ９３５乃至９６０で開示されるように、本発明の一実施形態は、最終的に信頼エンジン１１０上に記憶される証明書の要求を含む。一実施形態によれば、暗号処理モジュール６２５が、信頼エンジン１１０によって使用されるキーを発行するので、各証明書は秘密キーに対応する。したがって、信頼エンジン１１０は、ユーザによって所有されるか、またはユーザに関連付けられる証明書の監視を通して、相互運用性を有利に提供し得る。例えば、暗号エンジン２２０が暗号機能の要求を受信すると、暗号処理モジュール６２５は、要求ユーザによって所有される証明書を調査して、ユーザが要求の属性に合致する秘密キーを所有するかどうかを決定し得る。そのような証明書が存在する場合、暗号処理モジュール６２５は、要求された機能を果たすために、証明書またはそれに関連付けられた公開あるいは秘密キーを使用し得る。そのような証明書が存在しない場合、暗号処理モジュール６２５は、適切なキーの欠如を改善しようとして、いくつかの措置を有利かつ透過的に行い得る。例えば、図９Ｂは、本発明の実施形態の側面による、暗号処理モジュール６２５が適切なキーを使用して暗号機能を果たすことを保証する前述のステップを開示する、相互運用性過程９７０のフローチャートを図示する。
【００９２】
図９Ｂに示されるように、相互運用性過程９７０は、暗号処理モジュール９２５が所望される証明書の種類を決定する、ステップ９７２から始まる。本発明の一実施形態によれば、証明書の種類は、暗号機能の要求、または要求側によって提供される他のデータにおいて、有利に特定され得る。別の実施形態によれば、証明書の種類は、要求のデータ形式によって解明され得る。例えば、暗号処理モジュール９２５は、要求が特定の種類に対応することを有利に認識し得る。
【００９３】
一実施形態によれば、証明書の種類は、１つ以上のアルゴリズム基準、例えば、ＲＳＡ、ＥＬＧＡＭＡＬ等を含み得る。加えて、証明書の種類は、対称キー、公開キー、２５６ビットキー等の強力な暗号化キー、あまりセキュアではないキー等の１つ以上のキー種類を含み得る。また、証明書の種類は、前述のアルゴリズム基準またはキーのうちの１つ以上、１つ以上のメッセージまたはデータ形式、Ｂａｓｅ  ３２またはＢａｓｅ  ６４等の１つ以上のデータカプセル化または符号化スキームのアップグレードまたは交換を含み得る。証明書の種類はまた、１つ以上の第三者暗号アプリケーションまたはインターフェース、１つ以上の通信プロトコル、あるいは１つ以上の証明書基準またはプロトコルとの互換性を含み得る。当業者であれば、他の差異が証明書の種類に存在し得、これらの差異への変換および差異からの変換が本明細書で開示されるように実装され得ることを、本明細書の本開示から認識するであろう。
【００９４】
いったん暗号処理モジュール６２５が証明書の種類を決定すると、相互運用性過程９７０は、ステップ９７４へと進み、ユーザがステップ９７４で決定された種類に合致する証明書を所有するかどうかを決定する。ユーザが合致する証明書を有する、例えば、信頼エンジン１１０が、例えば、その以前の記憶を通して、合致する証明書にアクセスできる場合、暗号処理モジュール８２５は、合致する秘密キーも信頼エンジン１１０内に記憶されていることを知る。例えば、合致する秘密キーは、保管場所２１０または保管場所システム７００内に記憶され得る。暗号処理モジュール６２５は、合致する秘密キーが、例えば、保管場所２１０から集約されることを有利に要求し、次いで、ステップ９７６で、暗号措置または機能を果たすために、合致する秘密キーを使用し得る。例えば、前述のように、暗号処理モジュール６２５は、ハッシング、ハッシュ比較、データ暗号化または復号、デジタル署名検証または作成等を有利に行い得る。
【００９５】
ユーザが合致する証明書を所有しない場合、相互運用性過程９７０は、ユーザが相互認定された証明書を所有するかどうかを暗号処理モジュール６２５が決定する、ステップ９７８へと進む。一実施形態によれば、証明機関の間の相互認定は、第１の証明機関が第２の証明機関からの証明書を信頼することを決定する場合に発生する。言い換えれば、第１の証明機関は、第２の証明機関からの証明書が、ある品質基準を満たし、したがって、第１の証明機関の独自の証明書と同等であるとして「認定」され得ると決定する。相互認定は、証明機関が、例えば、信頼のレベルを有する証明書を発行する場合、より複雑になる。例えば、第１の証明機関が、通常、登録過程における信頼度に基づいて、特定の証明書の３つの信頼のレベルを提供し得る一方で、第２の証明機関は、７つの信頼のレベルを提供し得る。相互認定は、第２の証明機関からのどのレベルおよびどの証明書が、第１の証明機関からのどのレベルおよびどの証明書に代替され得るかを有利に追跡し得る。前述の相互認定が２つの認定機関の間で公式かつ公的に行われる場合、互に対する証明書およびレベルのマッピングは、しばしば「連鎖」と呼ばれる。
【００９６】
本発明の別の実施形態によれば、暗号処理モジュール６２５は、証明機関によって同意されるもの以外の相互認定を有利に進展させ得る。例えば、暗号処理モジュール６２５は、第１の証明機関の証明書実践規定（ＣＰＳ）または他の公表された方針規定にアクセスし、例えば、特定の信頼レベルによって要求される認証トークンを使用して、第１の証明機関の証明書を別の証明機関の証明書と合致させ得る。  
【００９７】
ステップ９７８では、暗号処理モジュール６２５が、ユーザが相互認定された証明書を所有することを決定すると、相互運用性過程９７０は、ステップ９７６へと進み、相互認定された公開キー、秘密キー、または両方を使用して、暗号措置または機能を果たす。代替として、暗号処理モジュール６２５が、ユーザが相互認定された証明書を所有しないことを決定すると、相互運用性過程９７０は、暗号処理モジュール６２５が、要求された証明書の種類またはそれに対して相互認定された証明書を発行する証明機関を選択する、ステップ９８０へと進む。ステップ９８２では、暗号処理モジュール６２５が、前述の内容で論議されたユーザ登録認証データが選択された証明機関の認証要件を満たすかどうかを決定する。例えば、ユーザが、例えば、人口統計および他の質問に答えることによって、ネットワーク上で登録した場合、提供される認証データは、生体測定データを提供し、例えば、公証人等の第三者の前に現れるユーザよりも低いレベルの信頼を確立し得る。一実施形態によれば、前述の認証要件は、選択された認証機関のＣＰＳで有利に提供され得る。
【００９８】
ユーザが、選択された証明機関の要件を満たす登録認証データを信頼エンジン１１０に提供した場合、相互運用性過程９７０は、暗号処理モジュール８２５が選択された証明機関から証明書を取得する、ステップ９８４へと進む。一実施形態によれば、暗号処理モジュール６２５は、登録過程９００のステップ９４５乃至９６０を辿ることによって証明書を取得する。例えば、暗号処理モジュール６２５は、証明機関から証明書を要求するために、すでに暗号エンジン２２０に利用可能なキーペアのうちの１つ以上から、１つ以上の公開キーを有利に採用し得る。別の実施形態によれば、暗号処理モジュール６２５は、１つ以上の新しいキーペアを有利に生成し、証明機関から証明書を要求するために、それに対応する公開キーを使用し得る。
【００９９】
別の実施形態によれば、信頼エンジン１１０は、１つ以上の証明書の種類を発行することが可能な１つ以上の証明書発行モジュールを有利に含み得る。この実施形態によれば、証明書発行モジュールは、前述の証明書を提供し得る。暗号処理モジュール６２５が証明書を取得すると、相互運用性過程９７０は、ステップ９７６へと進み、取得された証明書に対応する公開キー、秘密キー、または両方を使用して、暗号措置または機能を果たす。
【０１００】
ステップ９８２で、ユーザが、選択された証明機関の要件を満たす登録認証データを信頼エンジン１１０に提供していない場合、暗号処理モジュール６２５は、ステップ９８６で、異なる認証要件を有する他の証明機関があるかどうかを決定する。例えば、暗号処理モジュール６２５は、より低い認証要件を有するが、依然として選択された証明書またはその相互認定を発行し得る証明機関を探し得る。
【０１０１】
より低い要件を有する前述の証明機関が存在する場合、相互運用性過程９７０は、ステップ９８０へと進み、証明機関を選択する。代替として、そのような証明機関が存在しない場合、ステップ９８８では、信頼エンジン１１０が、ユーザから追加の認証トークンを要求し得る。例えば、信頼エンジン１１０は、例えば、生体測定データを備える、新しい登録認証データを要求し得る。また、信頼エンジン１１０は、例えば、運転免許証、社会保障カード、銀行のカード、出生証明書、軍人身分証明書等を伴って公証人の前に現れること等、ユーザが信頼できる第三者の前に現れ、適切な認証信任状を提供することを要求し得る。信頼エンジン１１０が更新された認証データを受信すると、相互運用性過程９７０は、ステップ９８４へと進み、前述の選択された証明書を取得する。
【０１０２】
前述の相互運用性過程９７０を通して、暗号処理モジュール６２５は、異なる暗号システム間で、シームレスな透過的な変換および転換を有利に提供する。当業者であれば、前述の相互運用可能なシステムの多数の利点および実装を本明細書の本開示から認識するであろう。例えば、相互運用性過程９７０の前述のステップ９８６は、証明機関が、特殊な状況下で、より低いレベルの相互認定を容認し得る、以下でさらに詳細に説明される、信頼裁定の側面を有利に含み得る。加えて、相互運用性過程９７０は、相互運用性を保証すること、および証明書失効リスト（ＣＲＬ）、オンライン証明書状態プロトコル（ＯＣＳＰ）等を採用すること等の標準証明書失効の採用を含み得る。
【０１０３】
図１０は、本発明の実施形態の側面による、認証過程１０００のデータフローを図示する。一実施形態によれば、認証過程１０００は、ユーザから現在の認証データを収集し、それをユーザの登録認証データと比較することを含む。例えば、認証過程１０００は、ユーザが、例えば、ベンダとのトランザクションを行うことを所望する、ステップ１００５から始まる。そのようなトランザクションは、例えば、購入オプションを選択すること、ベンダシステム１２０の制限領域またはデバイスへのアクセスを要求すること等を含み得る。ステップ１０１０では、ベンダが、トランザクションＩＤおよび認証要求をユーザに提供する。トランザクションＩＤは、１２８ビットランダム数量と連結された３２ビットタイムスタンプを有する１９２ビット数量、または３２ビットのベンダ特異的定数と連結された「ノンス」を有利に含み得る。そのようなトランザクションＩＤは、信頼エンジン１１０によって模倣トランザクションを拒絶することができるように、トランザクションを一意的に識別する。
【０１０４】
認証要求は、どのレベルの認証が特定のトランザクションに必要とされるかを有利に含み得る。例えば、ベンダは、問題のトランザクションに必要とされる特定のレベルの確信を特定し得る。以下で論議されるように、認証をこのレベルの確信にすることができない場合、確信のレベルを上昇させるユーザによるさらなる認証、またはベンダとサーバとの間の認証に関する変更を伴わずには、トランザクションは発生しない。これらの問題を以下でより完全に論議する。
【０１０５】
一実施形態によれば、トランザクションＩＤおよび認証要求は、ベンダ側アプレットまたは他のソフトウェアプログラムによって有利に生成され得る。加えて、トランザクションＩＤおよび認証データの伝送は、例えば、１／２ＳＳＬ等の従来のＳＳＬ技術、または言い換えればベンダ側認証ＳＳＬを使用して暗号化される、１つ以上のＸＭＬ文書を含み得る。
【０１０６】
ユーザシステム１０５がトランザクションＩＤおよび認証要求を受信した後、ユーザシステム１０５は、ユーザから、潜在的に現在の生体測定情報を含む、現在の認証データを収集する。ユーザシステム１０５は、ステップ１０１５で、認証エンジン２１５の公開キーを用いて、少なくとも現在の認証データ「Ｂ」およびトランザクションＩＤを暗号化し、そのデータを信頼エンジン１１０に転送する。伝送は、好ましくは、少なくとも従来の１／２ＳＳＬ技術で暗号化されるＸＭＬ文書を備える。ステップ１０２０では、トランザクションエンジン２０５が、伝送を受信し、好ましくはＵＲＬまたはＵＲＩでデータ形式または要求を認識し、伝送を認証エンジン２１５に転送する。
【０１０７】
ステップ１０１５および１０２０中に、ベンダシステム１２０は、ステップ１０２５で、好ましいＦＵＬＬ  ＳＳＬ技術を使用して、トランザクションＩＤおよび認証要求を信頼エンジン１１０に転送する。この通信はまた、ベンダＩＤを含み得るが、ベンダ識別はまた、トランザクションＩＤの非ランダム部分を通して伝達され得る。ステップ１０３０および１０３５では、トランザクションエンジン２０５が、通信を受信し、オーディットトレールに記録を作成し、データ記憶設備Ｄ１乃至Ｄ４から集約されるべきユーザの登録認証データの要求を生成する。ステップ１０４０では、保管場所システム７００が、ユーザに対応する登録認証データ部分を認証エンジン２１５に転送する。ステップ１０４５では、認証エンジン２１５が、その秘密キーを使用して伝送を復号し、登録認証データを、ユーザによって提供された現在の認証データと比較する。
【０１０８】
ステップ１０４５の比較は、前述の内容で参照され、以下でさらに詳細に論議されるような発見的文脈依存機密認証を有利に適用し得る。例えば、受信される生体測定情報が完全に合致しない場合、より低い確信の合致が生じる。特定の実施形態では、認証の確信のレベルは、トランザクションの性質とユーザおよびベンダの両方の所望とに対して平衡を保たれる。再度、これを以下でより詳細に論議する。
【０１０９】
ステップ１０５０では、認証エンジン２１５が、ステップ１０４５の比較の結果を用いて認証要求を満たす。本発明の一実施形態によれば、認証要求は、認証過程１０００のはい／いいえ（ＹＥＳ／ＮＯ）または真／偽（ＴＲＵＥ／ＦＡＬＳＥ）の結果で満たされる。ステップ１０５５では、満たされた認証要求がベンダに返信され、ベンダはそれに基づいて作用し、例えば、ユーザが認証要求を開始したトランザクションを完了することを可能にする。一実施形態によれば、確認メッセージがユーザに渡される。
【０１１０】
前述の内容に基づいて、認証過程１０００は、有利に機密データをセキュアに保持し、機密データの完全性を維持するように構成されている結果を生じる。例えば、機密データは、認証エンジン２１５の内側のみで集約される。例えば、登録認証データは、データ集約モジュールによって認証エンジン２１５の中で集約されるまで解読不可能であり、現在の認証データは、従来のＳＳＬ技術および認証エンジン２１５の秘密キーによって解かれるまで解読不可能である。また、ベンダに伝送される認証結果は、機密データを含まず、ユーザは、自分が有効な認証データを生成したかどうかさえも分からない場合がある。
【０１１１】
認証過程１０００がその好ましい代替実施形態に関して開示されているが、本発明はそれによって限定されることを目的としていない。むしろ、当業者であれば、認証過程１０００の多数の代替案を本明細書の本開示から認識するであろう。例えば、ベンダは、ユーザシステム１０５とともに存在するものでさえ、ほぼあらゆる要求アプリケーションによって有利に置換され得る。例えば、Ｍｉｃｒｏｓｏｆｔ  Ｗｏｒｄ等のクライアントアプリケーションが、文書をアンロックする前に、認証を要求するためにアプリケーションプログラムインターフェース（ＡＰＩ）または暗号ＡＰＩ（ＣＡＰＩ）を使用し得る。代替として、メールサーバ、ネットワーク、携帯電話、パーソナルまたは携帯コンピュータデバイス、ワークステーション等が全て、認証過程１０００によって満たすことができる認証要求を行い得る。実際、前述の信頼できる認証過程１０００を提供した後、要求アプリケーションまたはデバイスは、多数の電子またはコンピュータデバイスまたはシステムへのアクセスまたはそれらの使用を提供し得る。
【０１１２】
また、認証過程１０００は、認証失敗の場合に多数の代替手順を採用し得る。例えば、認証失敗は、同じトランザクションＩＤを維持し、ユーザが自分の現在の認証データを再入力することを要求し得る。前述のように、同じトランザクションＩＤの使用は、認証エンジン２１５のコンパレータが特定のトランザクションの認証試行の数を監視し、制限することを可能にし、それにより、よりセキュアな暗号システム１００を作成する。
【０１１３】
加えて、認証過程１０００は、機密データボールトを解錠すること等の簡潔なシングルサインオン解決法を開発するために、有利に採用され得る。例えば、成功した、または肯定的な認証は、認証ユーザに、ほぼ無限数のシステムおよびアプリケーションに対する任意の数のパスワードに自動的にアクセスする能力を提供し得る。例えば、ユーザの認証は、ユーザに、複数のオンラインベンダに関連付けられる、パスワード、ログイン、財務信任状等、ローカルエリアネットワーク、種々のパーソナルコンピュータデバイス、インターネットサービスプロバイダ、オークションプロバイダ、投資仲介業者等へのアクセスを提供し得る。機密データボールトを採用することによって、ユーザは、もはや関連性を通して思い出す必要がないため、実に大量かつランダムなパスワードを選択し得る。むしろ、認証過程１０００が、それらへのアクセスを提供する。例えば、ユーザは、記憶すべきデータ、名前等に関連付けられるものよりもむしろ、長さが２０数桁であるランダムな英数字の文字列を選択し得る。
【０１１４】
一実施形態によれば、所与のユーザに関連付けられる機密データボールトは、有利に保管場所２１０のデータ記憶設備に記憶されるか、分割されて保管場所システム７００に記憶され得る。この実施形態によれば、肯定的なユーザ認証後、信頼エンジン１１０は、例えば、要求アプリケーションへの適切なパスワード等の要求された機密データを供給する。別の実施形態によれば、信頼エンジン１１０は、機密データボールトを記憶するための別のシステムを含み得る。例えば、信頼エンジン１１０は、データボールト機能性を実装し、比喩的に信頼エンジン１１０の前述のフロントエンドセキュリティシステムの「後ろ」に存在する、独立型ソフトウェアエンジンを含み得る。この実施形態によれば、ソフトウェアエンジンが信頼エンジン１１０から肯定的なユーザ認証を示す信号を受信した後に、ソフトウェアエンジンは要求された機密データを供給する。
【０１１５】
さらに別の実施形態では、データボールトは、第三者システムによって実装され得る。ソフトウェアエンジンの実施形態と同様に、第三者システムが信頼エンジン１１０から肯定的なユーザ認証を示す信号を受信した後に、第三者システムは要求された機密データを有利に供給し得る。さらに別の実施形態によれば、データボールトは、ユーザシステム１０５上で実装され得る。ユーザ側ソフトウェアエンジンは、信頼エンジン１１０から肯定的なユーザ認証を示す信号を受信した後に、前述のデータを有利に供給し得る。
【０１１６】
前述のデータボールトが代替実施形態に関して開示されているが、当業者であれば、多数のその追加の実装を本明細書の本開示から認識するであろう。例えば、特定のデータボールトは、前述の実施形態のうちのいくつかまたは全てからの側面を含み得る。加えて、前述のデータボールトのうちのいずれかは、様々な時に１つ以上の認証要求を採用し得る。例えば、データボールトのうちのいずれかは、１つ以上のトランザクションごとに、周期的に、１つ以上のセッションごとに、１つ以上のウェブページまたはウェブサイトへのアクセスごとに、１つ以上の他の特定された間隔で、または同等の場合に、認証を要求し得る。
【０１１７】
図１１は、本発明の実施形態の側面による、署名過程１１００のデータフローを図示する。図１１に示されるように、署名過程１１００は、図１０を参照して前述される認証過程１０００のステップと同様のステップを含む。本発明の一実施形態によれば、署名過程１１００は、以下でより詳細に論議されるように、最初にユーザを認証し、次いで、いくつかのデジタル署名機能のうちの１つ以上を果たす。別の実施形態によれば、署名過程１１００は、メッセージまたは文書のハッシュ等の、それに関連するデータを有利に記憶し得る。このデータは、例えば、オーディットで、または参加当事者がトランザクションを拒否しようとする場合等の任意の他の場合に、有利に使用され得る。
【０１１８】
図１１に示されるように、認証ステップ中に、ユーザおよびベンダは、例えば、契約等のメッセージに有利に同意し得る。署名中、署名過程１１００は、ユーザによって署名された契約がベンダによって供給された契約と同一であることを有利に保証する。したがって、一実施形態によれば、認証中、ベンダおよびユーザは、認証エンジン２１５に伝送されるデータに、メッセージまたは契約の彼らそれぞれのコピーのハッシュを含む。メッセージまたは契約のハッシュのみを採用することによって、信頼エンジン１１０は、有意に削減された量のデータを有利に記憶し、より効率的かつ費用効果的な暗号システムを提供し得る。加えて、問題の文書が当事者のうちのいずれかによって署名されたものに合致するかどうか決定するように、記憶されたハッシュが問題の文書のハッシュと有利に比較され得る。文書がトランザクションに関するものと同一であるかどうかを決定する能力は、トランザクションへの当事者による拒否の請求に対して使用することができる、追加の証拠を提供する。
【０１１９】
ステップ１１０３では、認証エンジン２１５が、登録認証データを集約し、それをユーザによって提供された現在の認証データと比較する。認証エンジン２１５のコンパレータが、登録認証データが現在の認証データに合致することを示す場合、認証エンジン２１５のコンパレータはまた、ベンダによって供給されるメッセージのハッシュを、ユーザによって供給されるメッセージのハッシュと比較する。したがって、認証エンジン２１５は、ユーザによって同意されたメッセージがベンダによって同意されたものと同一であることを有利に保証する。
【０１２０】
ステップ１１０５では、認証エンジン２１５は、デジタル署名要求を暗号エンジン２２０に伝送する。本発明の一実施形態によれば、要求は、メッセージまたは契約のハッシュを含む。しかしながら、当業者であれば、暗号エンジン２２０は、所望のデジタル署名を形成するように、ビデオ、音声、生体測定、画像、またはテキストを含むがそれらに限定されない、事実上あらゆる種類のデータを暗号化し得ることを、本明細書の本開示から認識するであろう。ステップ１１０５に戻って、デジタル署名要求は、好ましくは、従来のＳＳＬ技術を通して伝達されるＸＭＬ文書を備える。
【０１２１】
ステップ１１１０では、データ記憶設備Ｄ１乃至Ｄ４の各々が、署名当事者に対応する１つまたは複数の暗号キーのそれらそれぞれの部分を伝送するように、認証エンジン２１５が要求をデータ記憶設備Ｄ１乃至Ｄ４の各々に伝送する。別の実施形態によれば、暗号エンジン２２０が、最初に、署名当事者に対して、保管場所２１０または保管場所システム７００から要求するための１つまたは複数の適切なキーを決定し、適切な合致キーを提供する措置を講じるように、暗号エンジン２２０は、前述の内容で論議される相互運用性過程９７０のステップのうちのいくつかまたは全てを採用する。なおも別の実施形態によれば、認証エンジン２１５または暗号エンジン２２０は、署名当事者に関連付けられ、保管場所２１０または保管場所システム７００に記憶されたキーのうちの１つ以上を有利に要求し得る。
【０１２２】
一実施形態によれば、署名当事者は、ユーザおよびベンダの一方または両方を含む。そのような場合、認証エンジン２１５は、ユーザおよび／またはベンダに対応する暗号キーを有利に要求する。別の実施形態によれば、署名当事者は、信頼エンジン１１０を含む。この実施形態では、信頼エンジン１１０は、認証過程１０００がユーザ、ベンダ、または両方を適正に認証したことを認定している。したがって、認証エンジン２１５は、デジタル署名を行うように、例えば、暗号エンジン２２０に属するキー等の信頼エンジン１１０の暗号キーを要求する。別の実施形態によれば、信頼エンジン１１０は、デジタル公証のような機能を果たす。この実施形態では、署名当事者は、信頼エンジン１１０とともに、ユーザ、ベンダ、または両方を含む。したがって、信頼エンジン１１０は、ユーザおよび／またはベンダのデジタル署名を提供し、次いで、ユーザおよび／またはベンダが適正に認証されたことを独自のデジタル署名で示す。この実施形態では、認証エンジン２１５は、ユーザ、ベンダ、または両方に対応する暗号キーの集約を有利に要求し得る。別の実施形態によれば、認証エンジン２１５は、信頼エンジン１１０に対応する暗号キーの集約を有利に要求し得る。
【０１２３】
別の実施形態によれば、信頼エンジン１１０は、委任状のような機能を果たす。例えば、信頼エンジン１１０は、第三者に代わってメッセージをデジタル署名し得る。そのような場合、認証エンジン２１５は、第三者に関連付けられる暗号キーを要求する。この実施形態によれば、署名過程１１００は、委任状のような機能を可能にする前に、第三者の認証を有利に含み得る。加えて、認証過程１０００は、例えば、いつ、どのような状況で、特定の第三者の署名が使用され得るかを決定付ける、ビジネス論理等の第三者制約をチェックし得る。
【０１２４】
前述の内容に基づいて、ステップ１１１０では、認証エンジンが、署名当事者に対応するデータ記憶設備Ｄ１乃至Ｄ４からの暗号キーを要求した。ステップ１１１５では、データ記憶設備Ｄ１乃至Ｄ４が、署名当事者に対応する暗号キーのそれらそれぞれの部分を暗号エンジン２２０に伝送する。一実施形態によれば、前述の伝送は、ＳＳＬ技術を含む。別の実施形態によれば、前述の伝送は、暗号エンジン２２０の暗号キーを用いて、有利に多重暗号化され得る。
【０１２５】
ステップ１１２０では、暗号エンジン２２０が、署名当事者の前述の暗号キーを集約し、それを用いてメッセージを暗号化し、それにより、デジタル署名を形成する。署名過程１１００のステップ１１２５では、暗号エンジン２２０が、デジタル署名を認証エンジン２１５に伝送する。ステップ１１３０では、認証エンジン２１５が、ハッシュ化されたメッセージのコピーおよびデジタル署名とともに、満たされた認証要求をトランザクションエンジン２０５に伝送する。ステップ１１３５では、トランザクションエンジン２０５が、トランザクションＩＤ、認証が成功したかどうかという指示、およびデジタル署名を備える受領書をベンダに伝送する。一実施形態によれば、前述の伝送は、信頼エンジン１１０のデジタル署名を有利に含み得る。例えば、信頼エンジン１１０は、その秘密キーを用いて受領書のハッシュを暗号化し、それにより、ベンダへの伝送に添付されるデジタル署名を形成し得る。
【０１２６】
一実施形態によれば、トランザクションエンジン２０５はまた、確認メッセージをユーザに伝送する。署名過程１１００がその好ましい代替実施形態に関して開示されているが、本発明はそれによって限定されることを目的としていない。むしろ、当業者であれば、署名過程１１００の多数の代替案を本明細書の本開示から認識するであろう。例えば、ベンダは、Ｅメールアプリケーション等のユーザアプリケーションと置換され得る。例えば、ユーザは、デジタル署名で特定のＥメールにデジタル署名することを所望し得る。そのような実施形態では、署名過程１１００の全体を通した伝送は、メッセージのハッシュの１つだけのコピーを有利に含み得る。また、当業者であれば、多数のクライアントアプリケーションがデジタル署名を要求し得ることを、本明細書の本開示から認識するであろう。例えば、クライアントアプリケーションは、ワードプロセッサ、スプレッドシート、Ｅメール、音声メール、制限されたシステム領域へのアクセス等を備え得る。
【０１２７】
加えて、当業者であれば、署名過程１１００のステップ１１０５乃至１１２０が、図９Ｂの相互運用性過程９７０のステップのうちのいくつかまたは全てを有利に採用し、それにより、例えば、異なる署名種類の下でデジタル署名を処理する必要があり得る、異なる暗号システム間の相互運用性を提供し得ることを、本明細書の本開示から認識するであろう。
【０１２８】
図１２は、本発明の実施形態の側面による、暗号化／復号過程１２００のデータフローを図示する。図１２に示されるように、復号過程１２００は、認証過程１０００を使用してユーザを認証することによって始まる。一実施形態によれば、認証過程１０００は、認証要求に同期セッションキーを含む。例えば、従来のＰＫＩ技術では、公開および秘密キーを使用してデータを暗号化または復号することは、数学的に集中的であり、有意なシステムリソースを必要とし得ることが当業者によって理解される。しかしながら、対称キー暗号システム、またはメッセージの送信者および受信者が、メッセージを暗号化および復号するために使用される単一の共通キーを共有するシステムでは、数学的演算は、有意により単純かつ迅速である。したがって、従来のＰＫＩ技術では、メッセージの送信者が、同期セッションキーを生成し、より単純かつ迅速な対称キーシステムを使用してメッセージを暗号化する。次いで、送信者は、受信者の公開キーを用いてセッションキーを暗号化する。暗号化されたセッションキーは、同期暗号化されたメッセージに添付され、両方のデータが受信者に送信される。受信者は、セッションキーを復号するために自分の秘密キーを使用し、次いで、メッセージを復号するためにセッションキーを使用する。前述の内容に基づいて、より単純かつ迅速な対称キーシステムが、暗号化／復号処理の大部分に使用される。したがって、復号過程１２００では、復号は、同期キーがユーザの公開キーを用いて暗号化されていることを有利に仮定する。したがって、前述のように、暗号化されたセッションキーは、認証要求に含まれる。
【０１２９】
復号過程１２００に戻って、ユーザがステップ１２０５で認証された後、認証エンジン２１５は、暗号化されたセッションキーを暗号エンジン２２０に転送する。ステップ１２１０では、認証エンジン２１５が、要求をデータ記憶設備Ｄ１乃至Ｄ４の各々に転送し、ユーザの暗号キーデータを要求する。ステップ１２１５では、各データ記憶設備Ｄ１乃至Ｄ４が、暗号キーのそれらそれぞれの部分を暗号エンジン２２０に転送する。一実施形態によれば、前述の伝送は、暗号エンジン２２０の公開キーを用いて暗号化される。
【０１３０】
復号過程１２００のステップ１２２０では、暗号エンジン２２０が、暗号キーを集約し、それを用いてセッションキーを復号する。ステップ１２２５では、暗号エンジンが、セッションキーを認証エンジン２１５に転送する。ステップ１２２７では、認証エンジン２１５が、復号されたセッションキーを含む認証要求を満たし、満たされた認証要求をトランザクションエンジン２０５に伝送する。ステップ１２３０では、トランザクションエンジン２０５が、セッションキーとともに認証要求を要求アプリケーションまたはベンダに転送する。次いで、一実施形態によれば、要求アプリケーションまたはベンダは、暗号化されたメッセージを復号するためにセッションキーを使用する。
【０１３１】
復号過程１２００がその好ましい代替実施形態に関して開示されているが、当業者であれば、復号過程１２００の多数の代替案を本明細書の本開示から認識するであろう。例えば、復号過程１２００は、同期キー暗号化を差し控え、完全公開キー技術に依存し得る。そのような実施形態では、要求アプリケーションが、メッセージ全体を暗号エンジン２２０に伝送し得、またはメッセージを暗号エンジン２２０に伝送するために何らかの種類の圧縮または可逆的ハッシュを採用し得る。当業者であれば、前述の通信がＳＳＬ技術で包まれたＸＭＬ文書を有利に含み得ることも、本明細書の本開示から認識するであろう。
【０１３２】
暗号化／復号過程１２００はまた、文書または他のデータの暗号化も提供する。したがって、ステップ１２３５では、要求アプリケーションまたはベンダが、信頼エンジン１１０のトランザクションエンジン２０５に、ユーザの公開キーの要求を有利に伝送し得る。例えば、文書またはメッセージを暗号化するために使用されるセッションキーを暗号化するために、要求アプリケーションまたはベンダがユーザの公開キーを使用するので、要求アプリケーションまたはベンダは、この要求を行う。登録過程９００で記述されるように、トランザクションエンジン２０５は、例えば、大容量記憶装置２２５に、ユーザのデジタル証明書のコピーを記憶する。したがって、暗号化過程１２００のステップ１２４０では、トランザクションエンジン２０５は、大容量記憶装置２２５からのユーザのデジタル証明書を要求する。ステップ１２４５では、大容量記憶装置２２５が、ユーザに対応するデジタル証明書をトランザクションエンジン２０５に伝送する。ステップ１２５０では、トランザクションエンジン２０５が、デジタル証明書を要求アプリケーションまたはベンダに伝送する。一実施形態によれば、暗号化過程１２００の暗号化部分は、ユーザの認証を含まない。これは、要求ベンダがユーザの公開キーのみを必要とし、いずれの機密データも要求していないためである。
【０１３３】
当業者であれば、特定のユーザがデジタル証明書を持たない場合、信頼エンジン１１０は、その特定のユーザ用のデジタル証明書を生成するために、登録過程９００のいくらかまたは全てを採用し得ることを、本明細書の本開示から認識するであろう。次いで、信頼エンジン１１０は、暗号化／復号過程１２００を開始し、それにより、適切なデジタル証明書を提供し得る。加えて、当業者であれば、暗号化／復号過程１２００のステップ１２２０および１２３５乃至１２５０が、図９Ｂの相互運用性過程のステップのうちのいくつかまたは全てを有利に採用し、それにより、例えば、暗号化を処理する必要があり得る、異なる暗号システム間の相互運用性を提供し得ることを、本明細書の本開示から認識するであろう。
【０１３４】
図１３は、は、本発明のさらに別の実施形態の側面による、信頼エンジンシステム１３００の簡略化したブロック図を図示する。図１３に示されるように、信頼エンジンシステム１３００は、複数の明確に異なる信頼エンジン１３０５、１３１０、１３１５、および１３２０を備える。本発明のより完全な理解を促進するために、図１３は、トランザクションエンジン、保管場所、および認証エンジンを有するものとして、各信頼エンジン１３０５、１３１０、１３１５、および１３２０を図示する。しかしながら、当業者であれば、各トランザクションエンジンが、図１−８を参照して開示される要素および通信チャネルのうちのいくつか、組み合わせ、または全てを有利に備え得ることを認識するであろう。例えば、一実施形態は、１つ以上のトランザクションエンジン、保管場所、および暗号サーバ、またはそれらの任意の組み合わせを有する信頼エンジンを有利に含み得る。
【０１３５】
本発明の一実施形態によれば、例えば、信頼エンジン１３０５が第１の場所に存在し、信頼エンジン１３１０が第２の場所に存在し、信頼エンジン１３１５が第３の場所に存在し、信頼エンジン１３２０が第４の場所に存在し得るように、信頼エンジン１３０５、１３１０、１３１５、および１３２０のそれぞれは、地理的に分離される。前述の地理的分離は、全体的な信頼エンジンシステム１３００のセキュリティを増大させながら、システム応答時間を有利に減少させる。
【０１３６】
例えば、ユーザが暗号システム１００にログオンする場合に、ユーザは、第１の場所に最も近く、認証されることを所望し得る。図１０を参照して説明されるように、認証されるために、ユーザは、生体測定等の現在の認証データを提供し、現在の認証データは、ユーザの登録認証データと比較される。したがって、一実施例によれば、ユーザは、現在の認証データを地理的に最も近い信頼エンジン１３０５に有利に提供する。次いで、信頼エンジン１３０５のトランザクションエンジン１３２１は、現在の認証データを、同様に第１の場所に存在する認証エンジン１３２２に転送する。別の実施形態によれば、トランザクションエンジン１３２１は、現在の認証データを、信頼エンジン１３１０、１３１５、または１３２０の認証エンジンのうちの１つ以上に転送する。
【０１３７】
トランザクションエンジン１３２１はまた、例えば、信頼エンジン１３０５乃至１３２０のそれぞれの保管場所から、登録認証データの集約を要求する。この実施形態によれば、各保管場所は、その登録認証データ部分を信頼エンジン１３０５の認証エンジン１３２２に提供する。次いで、認証エンジン１３２２は、応答するために、例えば、最初の２つの保管場所から、暗号化されたデータ部分を採用し、登録認証データを解読された形態に集約する。認証エンジン１３２２は、登録認証データを現在の認証データと比較し、認証結果を信頼エンジン１３０５のトランザクションエンジン１３２１に返信する。
【０１３８】
上記に基づいて、信頼エンジンシステム１３００は、認証過程を行うために、複数の地理的に分離された信頼エンジン１３０５乃至１３２０のうちの最も近いものを採用する。本発明の一実施形態によれば、最も近いトランザクションエンジンへの情報のルーティングは、ユーザシステム１０５、ベンダシステム１２０、または証明機関１１５のうちの１つ以上の上で実行する、クライアント側アプレットにおいて有利に行われ得る。代替実施形態によれば、信頼エンジン１３０５乃至１３２０から選択するために、より洗練された決定過程が採用され得る。例えば、決定は、所与の信頼エンジンの可用性、操作性、接続の速度、負荷、性能、地理的な近接性、またはそれらの組み合わせに基づき得る。
【０１３９】
このようにして、信頼エンジンシステム１３００は、各データ記憶設備が無作為化された機密データ部分を記憶する、図７を参照して論議されるもの等の、地理的に遠隔のデータ記憶設備に関連付けられるセキュリティ利点を維持しながら、その応答時間を減らす。例えば、信頼エンジン１３１５の保管場所１３２５におけるセキュリティ侵害は、例えば、信頼エンジンシステム１３００の機密データを必ずしも損なうとは限らない。これは、保管場所１３２５が、それ以上なければ全く役に立たない、解読不可能な無作為化されたデータのみを含むためである。
【０１４０】
別の実施形態によれば、信頼エンジンシステム１３００は、認証エンジンと同様に配置される複数の暗号エンジンを有利に含み得る。暗号エンジンは、図１−８を参照して開示されるもの等の暗号機能を有利に果たし得る。さらに別の実施形態によれば、信頼エンジンシステム１３００は、有利に複数の認証エンジンを複数の暗号エンジンと置換し、それにより、図１−８を参照して開示されるもの等の暗号機能を有利に果たし得る。本発明のさらに別の実施形態によれば、信頼エンジンシステム１３００は、各複数の認証エンジンを、前述の内容で開示されるような認証エンジン、暗号エンジン、または両方の機能性のいくらかまたは全てを有するエンジンと置換し得る。
【０１４１】
信頼エンジンシステム１３００がその好ましい代替実施形態に関して開示されているが、当業者であれば、信頼エンジンシステム１３００が信頼エンジン１３０５乃至１３２０の部分を備え得ることを認識するであろう。例えば、信頼エンジンシステム１３００は、１つ以上のトランザクションエンジン、１つ以上の保管場所、１つ以上の認証エンジン、または１つ以上の暗号エンジン、あるいはそれらの組み合わせを含み得る。
【０１４２】
図１４は、本発明のさらに別の実施形態の側面による、信頼エンジンシステム１４００の簡略化したブロック図を図示する。図１４に示されるように、信頼エンジンシステム１４００は、複数の信頼エンジン１４０５、１４１０、１４１５、および１４２０を含む。一実施形態によれば、信頼エンジン１４０５、１４１０、１４１５、および１４２０のそれぞれは、図１−８を参照して開示される信頼エンジン１１０の要素のうちのいくつかまたは全てを備える。この実施形態によれば、ユーザシステム１０５、ベンダシステム１２０、または証明機関１１５のクライアント側アプレットが、信頼エンジンシステム１４００と通信する場合に、これらの通信は、信頼エンジン１４０５乃至１４２０の各々のＩＰアドレスに送信する。さらに、信頼エンジン１４０５、１４１０、１４１５、および１４２０のそれぞれの各トランザクションエンジンは、図１３を参照して開示される信頼エンジン１３０５のトランザクションエンジン１３２１と同様に挙動する。例えば、認証過程中に、信頼エンジン１４０５、１４１０、１４１５、および１４２０のそれぞれの各トランザクションエンジンは、現在の認証データをそれらそれぞれの認証エンジンに伝送し、信頼エンジン１４０５乃至１４２０の各々の保管場所の各々に記憶された無作為化データを集約する要求を伝送する。図１４は、そのような説明図は過度に複雑になるため、これらの通信の全てを図示するわけではない。認証過程を続けて、次いで、保管場所の各々は、その無作為化データ部分を、信頼エンジン１４０５乃至１４２０の各々の認証エンジンの各々に伝達する。信頼エンジンの各々の認証エンジンの各々は、現在の認証データが、信頼エンジン１４０５乃至１４２０の各々の保管場所によって提供された登録認証データに合致するかどうかを決定するために、そのコンパレータを採用する。この実施形態によれば、次いで、認証エンジンの各々による比較の結果は、他の３つの信頼エンジンの冗長性モジュールに伝送される。例えば、信頼エンジン１４０５からの認証エンジンの結果は、信頼エンジン１４１０、１４１５、および１４２０の冗長性モジュールに伝送される。したがって、信頼エンジン１４０５の冗長性モジュールは、同様に、信頼エンジン１４１０、１４１５、および１４２０から認証エンジンの結果を受信する。
【０１４３】
図１５は、図１４の冗長性モジュールのブロック図を図示する。冗長性モジュールは、３つの認証エンジンから認証結果を受信し、その結果を第４の信頼エンジンのトランザクションエンジンに伝送するように構成されている、コンパレータを備える。コンパレータは、３つの認証エンジンから認証結果を比較し、結果のうちの２つが一致する場合、コンパレータは、認証結果が２つの同意する認証エンジンの認証結果に合致すると結論を出す。次いで、この結果は、３つの認証エンジンに関連付けられていない信頼エンジンに対応するトランザクションエンジンに返送される。
【０１４４】
前述の内容に基づいて、冗長性モジュールは、好ましくは、その冗長性モジュールの信頼エンジンから地理的に遠隔にある認証エンジンから受信されたデータから、認証結果を決定する。そのような冗長性機能性を提供することによって、信頼エンジンシステム１４００は、信頼エンジン１４０５乃至１４２０のうちの１つの認証エンジンのセキュリティ侵害が、その特定の信頼エンジンの冗長性モジュールの認証結果を損なうのに不十分であることを保証する。当業者であれば、信頼エンジンシステム１４００の冗長性モジュール機能性はまた、信頼エンジン１４０５乃至１４２０のそれぞれの暗号エンジンに適用され得ることを認識するであろう。しかしながら、複雑性を回避するために、図１４ではそのような暗号エンジン通信を示さなかった。また、当業者であれば、図１５のコンパレータに対する多数の代替的な認証結果競合解決アルゴリズムが、本発明で使用するために好適であることを認識するであろう。
【０１４５】
本発明のさらに別の実施形態によれば、信頼エンジンシステム１４００は、暗号比較ステップ中に冗長性モジュールを有利に採用し得る。例えば、図１４および１５に関する前述の冗長性モジュールの開示のいくらかまたは全ては、特定のトランザクション中に１人以上の当事者によって提供される文書のハッシュ比較中に、有利に実装され得る。
【０１４６】
前述の発明は、ある好ましい代替実施形態に関して説明されているが、他の実施形態が、本明細書の本開示から当業者に明白となるであろう。例えば、信頼エンジン１１０は、秘密暗号キーが所定の期間にわたってユーザに公開される、短期証明書を発行し得る。例えば、現在の証明書基準は、所定量の時間後に満了するように設定することができる、有効性フィールドを含む。したがって、信頼エンジン１１０は、秘密キーをユーザに公開し得、秘密キーは、例えば、２４時間にわたって有効となる。そのような実施形態によれば、信頼エンジン１１０は、特定のユーザに関連付けられる新しい暗号キーペアを有利に発行し、次いで、新しい暗号キーペアの秘密キーを公開し得る。次いで、いったん秘密暗号キーが公開されると、信頼エンジン１１０は、もはや信頼エンジン１１０によってセキュア化可能ではなくなるため、そのような秘密キーの内部有効使用を即時に失効させる。
【０１４７】
加えて、当業者であれば、暗号システム１００または信頼エンジン１１０が、ラップトップ、携帯電話、ネットワーク、生体測定デバイス等であるがそれらに限定されない、任意の種類のデバイスを認識する能力を含み得ることを認識するであろう。一実施形態によれば、そのような認識は、アクセスまたは使用につながる認証の要求、暗号機能性の要求等の特定のサービスの要求において供給されるデータに由来し得る。一実施形態によれば、前述の要求は、例えば、プロセッサＩＤ等の一意のデバイス識別子を含み得る。代替として、要求は、特定の認識可能なデータ形式でデータを含み得る。例えば、携帯および衛星電話はしばしば、フルＸ５０９．ｖ３多重暗号化証明書に対する処理能力を含まず、したがって、それらを要求しない。この実施形態によれば、信頼エンジン１１０は、提示されるデータ形式の種類を認識し、同じ方法のみで応答し得る。
【０１４８】
上記で説明されるシステムの追加の側面では、以下で説明されるような種々の技法を使用して、文脈依存認証を提供することができる。例えば、図１６に示されるような文脈依存認証は、ユーザが自分自身を認証しようとする場合にユーザによって送信される実際のデータだけでなく、そのデータの生成および送達をめぐる状況も評価するという可能性を提供する。そのような技法はまた、以下で説明されるように、ユーザと信頼エンジン１１０との間、またはベンダと信頼エンジン１１０との間のトランザクション特定信頼裁定を支援し得る。
【０１４９】
上記で論議されるように、認証は、ユーザが自分であると言う者であることを証明する過程である。概して、認証は、いくらかの事実を認証機関に実証することを必要とする。本発明の信頼エンジン１１０は、ユーザが自分自身を認証しなければならない機関を表す。ユーザは、ユーザのみが知っているはずのものを知ること（知識ベースの認証）、ユーザのみが持っているはずのものを有すること（トークンベースの認証）、またはユーザのみがなるはずであるものになること（生体測定ベースの認証）によって、ユーザが自分であると言う者であることを信頼エンジン１１０に実証しなければならない。
【０１５０】
知識ベースの認証の実施例は、パスワード、ＰＩＮ番号、またはロックの組み合わせを含むが、それらに限定されない。トークンベースの認証の実施例は、家の鍵、物理的なクレジットカード、運転免許証、または特定の電話番号を含むが、それらに限定されない。生体測定ベースの認証の実施例は、指紋、筆跡分析、顔面スキャン、手スキャン、耳スキャン、虹彩スキャン、血管パターン、ＤＮＡ、音声分析、または網膜スキャンを含むが、それらに限定されない。
【０１５１】
各種類の認証は、特定の利点および不利点を有し、それぞれ異なるレベルのセキュリティを提供する。例えば、概して、誰かのパスワードを耳にしてそれを繰り返すよりも、他の誰かの指紋に合致する偽の指紋を作成するほうが困難である。各種類の認証はまた、その形態の認証を使用する誰かを検証するために、異なる種類のデータが認証機関に知られることを必要とする。
【０１５２】
本明細書で使用されるように、「認証」とは、誰かの身元が自分であると言う者であることを検証する全体的過程を広く指す。「認証技法」とは、特定の１つの知識、物理的トークン、または生体測定値に基づく、特定の種類の認証を指す。「認証データ」とは、身元を確立するために認証機関に送信されるか、または実証される情報を指す。「登録データ」とは、認証データとの比較のための基準を確立するために、最初に認証機関に提出されるデータを指す。「認証インスタンス」とは、認証技法によって認証する試行に関連付けられるデータを指す。
【０１５３】
図１０を参照して、ユーザを認証する過程に関与する内部プロトコルおよび通信を説明する。その内部で文脈依存認証が行われる、この過程の一部は、図１０のステップ１０４５として示された比較ステップ内で発生する。このステップは、認証エンジン２１５内で行われ、保管場所２１０から回収された登録データ４１０を集約し、ユーザによって提供された認証データをそれと比較することを伴う。この過程の１つの特定の実施形態を図１６に示し、以下で説明する。
【０１５４】
ユーザによって提供された現在の認証データおよび保管場所２１０から回収された登録データは、図１６のステップ１６００で認証エンジン２１５によって受信される。これらのデータの両方は、別個の認証の技法に関連するデータを含み得る。認証エンジン２１５は、ステップ１６０５で、各個別認証インスタンスに関連付けられた認証データを分離する。これは、認証データがユーザに対する登録データの適切な一部と比較されるため必要である（例えば、指紋認証データは、パスワード登録データよりもむしろ指紋登録データと比較されるべきである）。
【０１５５】
概して、ユーザを認証することは、どの認証技法がユーザに利用可能であるかに応じて、１つ以上の個別認証インスタンスを伴う。これらの方法は、登録過程中にユーザによって提供された登録データ（ユーザが登録する場合に網膜スキャンを提供しなかった場合、網膜スキャンを使用して自分自身を認証することができない）、ならびに現在ユーザに利用可能であり得る手段（例えば、ユーザが現在の場所で指紋読取機を持っていない場合、指紋認証は実用的ではない）によって限定される。場合によっては、単一の認証インスタンスがユーザを認証するのに十分であり得るが、ある状況では、特定のトランザクションのためにユーザをより確信して認証するために、複数の認証インスタンスの組み合わせが使用され得る。
【０１５６】
各認証インスタンスは、特定の認証技法に関連するデータ（例えば、指紋、パスワード、スマートカード等）およびその特定の技法のためのデータの捕捉および送達をとりまく状況から成る。例えば、パスワードを介して認証しようとすることの特定のインスタンスは、パスワード自体に関連するデータだけでなく、そのパスワード試行に関連する「メタデータ」として知られている状況データも生成する。この状況データは、特定の認証インスタンスが行われた時間、認証情報が送達されたネットワークアドレス、ならびに、認証データの起源について決定され得る、当業者に公知であるような任意の他の情報（接続の種類、プロセッサシリアル番号等）等の情報を含む。
【０１５７】
多くの場合、少量の状況メタデータのみが利用可能となる。例えば、ユーザが、発信元コンピュータのアドレスを隠す、プロキシまたはネットワークアドレス変換あるいは別の技法を使用するネットワーク上に位置する場合、プロキシまたはルータのアドレスのみが決定され得る。同様に、多くの場合、使用されているハードウェアまたはオペレーティングシステムの制限、システムの操作者によるそのような特徴の無効化、またはユーザのシステムと信頼エンジン１１０との間の接続の他の制限により、プロセッサシリアル番号等の情報は利用可能とならない。
【０１５８】
図１６に示されるように、いったん認証データ内で表された個別認証インスタンスがステップ１６０５で抽出されて分離されると、認証エンジン２１５は、ユーザが自分であると主張する者であることを示すことにおけるその信頼性に対して、各インスタンスを評価する。単一の認証インスタンスに対する信頼性は、概して、いくつかの因子に基づいて決定される。これらは、ステップ１６１０で評価される、認証技法に関連付けられる信頼性に関する因子、およびステップ１８１５で評価される、提供された特定の認証データの信頼性に関する因子としてグループ化され得る。第１のグループは、使用されている認証技法の固有信頼性、およびその方法とともに使用されている登録データの信頼性を含むが、それらに限定されない。第２のグループは、登録データと認証インスタンスが提供されたデータとの間の合致の程度、およびその認証インスタンスに関連付けられるメタデータを含むが、それらに限定されない。これらの因子のそれぞれは、他の因子とは無関係に変化し得る。
【０１５９】
認証技法の固有信頼性は、詐称者が他の誰かの正しいデータを提供することがどれだけ困難であるか、ならびに認証技法の全体的な誤差率に基づく。パスワードおよび知識ベースの認証方法について、誰かがパスワードを別の個人に明かすことを防止し、その第２の個人がそのパスワードを使用することを防止するものがないため、この信頼性はしばしばかなり低い。さらに複雑な知識ベースのシステムは、知識が個人から個人へかなり容易に移送され得るため、中程度の信頼性のみを有し得る。適正なスマートカードを有すること、または認証を行うために特定の端末を使用すること等のトークンベースの認証は、適任者が適正なトークンを保有しているという保証がないため、同様に、単独で使用されると信頼性が低い。
【０１６０】
しかしながら、意図的でさえ、都合よく指紋を使用する能力を他の誰かに提供することは概して困難であるため、生体測定技法は、より本質的に信頼性がある。生体測定認証技法を妨害することがより困難であるため、生体測定方法の固有信頼性は、純粋に知識またはトークンベースの認証技法の信頼性よりも概して高い。しかしながら、生体測定技法でさえも、誤った容認または誤った拒絶が生成される機会があり得る。これらの発生は、同じ生体測定技法の異なる実装に対する異なる信頼性によって反映され得る。例えば、より高品質の光学部またはより良好な走査解像度、あるいは誤った容認または誤った拒絶の発生を低減する何らかの他の改良を使用するため、１つの企業によって提供される指紋照合システムが、異なる企業によって提供されるものよりも高い信頼性を提供し得る。
【０１６１】
この信頼性は、異なる方式で表され得ることに留意されたい。この信頼性は、望ましくは、確認証の確信レベルを計算するために認証エンジン２１５のヒューリスティクス５３０およびアルゴリズムによって使用することができる、何らかの測定基準で表される。これらの信頼性を表す１つの好ましいモードは、パーセンテージまたは割合としてのものである。例えば、指紋が、９７％の固有信頼性を割り当てられる場合がある一方で、パスワードは、５０％の固有信頼性しか割り当てられない場合がある。当業者であれば、これらの特定の値は例示的にすぎず、具体的な実装の間で変化し得ることを認識するであろう。
【０１６２】
信頼性が評価され得る第２の要素は、登録の信頼性である。これは、上記で参照される「等級別登録」過程の一部である。この信頼性因子は、最初の登録過程中に提供される識別の信頼性を反映する。例えば、個人が、最初に、身元の証明を公証人または他の公人に物理的に生成する方式で登録し、登録データがその時に記録されて公証される場合、データは、登録中にネットワーク上で提供され、デジタル署名または正確には個人に結び付けられない他の情報によって保証されるのみであるデータよりも信頼性がある。
【０１６３】
異なるレベルの信頼性を伴う他の登録技法は、信頼エンジン１１０の操作者の物理的なオフィスでの登録、ユーザの勤務先での登録、郵便局または旅券局での登録、信頼エンジン１１０の操作者にとっての提携当事者または信頼できる当事者を通した登録、登録された身元が特定の実際の個人でまだ識別されていない、匿名または変名登録、ならびに当技術分野で公知であるようなそのような他の手段を含むが、それらに限定されない。
【０１６４】
これらの因子は、信頼エンジン１１０と登録中に提供される識別の供給源との間の信頼を反映する。例えば、身元の証明を提供する初期過程中に雇用者と関連して登録が行われる場合、この情報は、企業内での目的で極めて信頼性があると見なされ得るが、政府機関によって、または競合者によって、より少ない程度に信頼され得る。したがって、これらの他の組織の各々によって操作される信頼エンジンは、この登録に異なるレベルの信頼性を割り当て得る。
【０１６５】
同様に、ネットワークにわたって提出されるが、同じ信頼エンジン１１０を用いた以前の登録中に提供された他の信頼できるデータによって認証される追加のデータは、たとえ追加の登録データが開放型ネットワークにわたって提出されたとしても、元のデータと同じくらい信頼性があると見なされ得る。そのような状況において、後続の公証は、元の登録データに関連付けられる信頼性のレベルを効果的に増加させる。このようにして、次いで、例えば、登録されたデータに合致する個人の身元を、ある登録職員に実証することによって、匿名または変名登録が完全登録に昇進し得る。
【０１６６】
上記で論議される信頼性因子は、概して、任意の特定の認証インスタンスより前に決定され得る値である。これは、それらが実際の認証よりも登録および技法に基づくためである。一実施形態では、これらの因子に基づいて信頼性を生成するステップは、この特定の認証技法の以前に決定された値およびユーザの登録データを調べることを伴う。本発明の有利な実施形態のさらなる側面では、そのような信頼性は、登録データ自体を伴って含まれ得る。このようにして、これらの因子は、保管場所２１０から送信される登録データとともに、認証エンジン２１５に自動的に送達される。
【０１６７】
これらの因子は、概して、個々の認証インスタンスより前に決定され得るが、その特定の認証の技法をそのユーザに使用する、各認証インスタンスに依然として影響を及ぼす。さらに、値は経時的に変化し得る（例えば、ユーザがより信頼性のある様式で再登録する場合）が、認証データ自体には依存していない。対照的に、単一の特定のインスタンスのデータに関連付けられる信頼性因子は、各機会に変化し得る。これらの因子は、以下で論議されるように、ステップ１８１５で信頼性スコアを生成するために、それぞれの新しい認証について評価されなければならない。
【０１６８】
認証データの信頼性は、特定の認証インスタンスにおいてユーザによって提供されるデータと、認証登録中に提供されるデータとの間の合致を反映する。これは、認証データが、ユーザがそうであると主張する個人に対する登録データに合致するかどうかの基本的な質問である。通常、データが合致しない場合、ユーザは認証が成功したと見なされず、認証は失敗する。これが評価される方式は、使用される認証技法に応じて変化し得る。そのようなデータの比較は、図５に示されるような認証エンジン２１５のコンパレータ５１５の機能によって行われる。
【０１６９】
例えば、パスワードの合致は、概して、２値様式で評価される。言い換えれば、パスワードは、完全合致または合致失敗である。通常、完全に正確でなければ、正確なパスワードに近いパスワードを部分合致として容認することさえ望ましくない。したがって、パスワード認証を評価する場合、コンパレータ５１５によって返信される認証の信頼性は、典型的には、１００％（正）または０％（誤）のいずれか一方であり、中間値の可能性はない。
【０１７０】
パスワードについて、これらと同様の規則は、概して、スマートカード等のトークンベースの認証方法に適用される。これは、類似の識別子を有する、または正しいものと類似するスマートカードを有することは、任意の他の不正確なトークンを有することと同じくらい間違っているためである。したがって、トークンはまた、ユーザが正しいトークンを有するか、またはそうではないといった、２値認証符号となる傾向がある。
【０１７１】
しかしながら、質問表および生体測定等の、ある種類の認証データは、概して、２値認証符号ではない。例えば、指紋は、様々な程度で参照指紋に合致し得る。ある程度、これは、初期登録中または後続の認証において捕捉されるデータの質の変動によるものであり得る。（指紋がはっきりしない場合があるか、または個人が特定の指に依然として治癒中の瘢痕または熱傷を有する場合がある。）他の場合において、情報自体がいくらか可変であり、パターン照合に基づくため、データは、完璧とは言えない程度に合致し得る。（背景雑音、音声が録音された環境の音響効果により、または個人が風邪をひいているため、音声分析は、近いが全く正しいとは思われない場合がある。）最終的に、大量のデータが比較されている状況では、単純に、データの大部分が十分に合致するが、いくつかがそうではないという場合であり得る。（１０の質問の質問表が、個人的な質問に対して８つの正しい答えを生じるが、２つの間違った答えを生じ得る。）これらの理由のうちのいずれかについて、登録データと特定の認証インスタンスのデータとの間の合致は、望ましくは、コンパレータ５１５によって部分合致値が割り当てられ得る。このようにして、例えば、指紋は８５％合致であるといわれ、声紋は６５％合致であるといわれ、質問表は８０％合致であるといわれる場合がある。
【０１７２】
コンパレータ５１５によって生成される、この尺度（合致の程度）は、認証が正しいか否かという基本的な問題を表す因子である。しかしながら、上記で論議されるように、これは、所与の認証インスタンスの信頼性を決定する際に使用され得る、因子のうちの１つにすぎない。いくらかの部分的な程度での合致が決定され得るものの、最終的には、部分合致に基づいて２値結果を提供することが望ましいことがあることも留意されたい。代替動作モードでは、合致の程度が合致の特定の閾値レベルに合格するか否かに基づいて、２値、すなわち、完全合致（１００％）または合致失敗（０％）のいずれか一方として、部分合致を取り扱うことも可能である。そのような過程は、そうでなければ部分合致を生成する、システムの合致の単純な合格／失敗レベルを提供するために使用され得る。
【０１７３】
所与の認証インスタンスの信頼性を評価する際に考慮される別の因子は、この特定のインスタンスの認証データが提供される状況に関する。上記で論議されるように、状況とは、特定の認証インスタンスに関連付けられるメタデータを指す。これは、決定することができる程度まで認証符号のネットワークアドレス、認証の時間、認証データの伝送モード（電話回線、携帯電話、ネットワーク等）、および認証符号のシステムのシリアル番号等の情報を含み得るが、それらに限定されない。
【０１７４】
これらの因子は、通常ユーザによって要求される認証の種類のプロファイルを生成するために使用することができる。次いで、この情報は、少なくとも２つの方式で信頼性を評価するために使用することができる。１つの方法は、ユーザが、このユーザによる認証の通常のプロファイルと一致する方式で、認証を要求しているかどうかを考慮することである。ユーザが通常、営業日中（ユーザが勤務している時）には１つのネットワークアドレスから、夜間または週末中（ユーザが自宅にいる時）には異なるネットワークアドレスから、認証要求を行う場合、営業日中にホームアドレスから発生する認証は、通常の認証プロファイル外であるため、あまり信頼性がない。同様に、ユーザが通常、夜間に指紋生体測定を使用して認証する場合、パスワードのみを使用して日中に起こる認証は、あまり信頼性がない。
【０１７５】
認証のインスタンスの信頼性を評価するために状況メタデータを使用することができる、追加の方法は、認証符号がそうであると主張する個人であるという裏付け証拠を状況がどれだけ提供するかを決定することである。例えば、認証が、ユーザに関連付けられることが分かっているシリアル番号を伴うシステムに由来する場合、これは、ユーザが自分であると主張する個人であるという良好な状況指標である。逆に、ユーザがロンドンに滞在していることが分かっている場合に、認証が、ロサンゼルスにあることが分かっているネットワークアドレスに由来している場合、これは、その状況に基づいて、この認証はあまり信頼性がないという指示である。
【０１７６】
ベンダシステムまたは信頼エンジン１１０と相互作用する場合に、ユーザによって使用されているシステム上にクッキーまたは他の電子データが配置され得ることも可能である。このデータは、ユーザのシステムの記憶装置に書き込まれ、ユーザシステム上のウェブブラウザまたは他のソフトウェアによって読み出される識別を含み得る。このデータが、セッション間にユーザシステム上で存在することが可能である場合（「永続的なクッキー」）、特定のユーザの認証中に、このシステムの過去の使用のさらなる証明として、認証データとともに送信され得る。事実上、所与のインスタンスのメタデータ、具体的には永続的なクッキーは、一種のトークンベースの認証符号自体を形成し得る。
【０１７７】
いったん認証インスタンスの技法およびデータに基づく適切な信頼性因子が、それぞれステップ１６１０および１６１５において上記で説明されるように生成されると、それらはステップ１６２０で提供される認証インスタンスの全体的な信頼性を生成するために使用される。これを行う１つの手段は、単純に、各信頼性をパーセンテージとして表し、次いで、それらを一緒に乗じることである。
【０１７８】
例えば、ユーザの過去の認証プロファイルに完全に従って、認証データが、ユーザのホームコンピュータであることが分かっているネットワークアドレスから送信されており（１００％）、使用されている技法が指紋識別（９７％）であり、初期指紋データが信頼エンジン１１０を用いてユーザの雇用主を通して送られ（９０％）、認証データと登録データの中の元の指紋テンプレートとの間の合致が良好である（９９％）と仮定されたい。次いで、この認証インスタンスの全体的信頼性は、１００％＊９７％＊９０％＊９９％（８６．４％信頼性）といった、これらの確率の積として計算することができる。
【０１７９】
この計算された信頼性は、単一の認証のインスタンスの信頼性を表す。単一の認証インスタンスの全体的信頼性はまた、例えば、異なる重みが各信頼性因子に割り当てられる公式を使用することによって、異なる信頼性因子を異なって取り扱う技法を使用して、計算され得る。さらに、当業者であれば、使用される実際の値が、パーセンテージ以外の値を表し得、かつ非算術システムを使用し得ることを認識するであろう。一実施形態は、各因子に対する重み、および認証インスタンスの全体的信頼性を確立する際に使用されるアルゴリズムを設定するために、認証要求者によって使用されるモジュールを含み得る。
【０１８０】
認証エンジン２１５は、ステップ１６２０として示される、単一の認証インスタンスの信頼性を決定するために、上記の技法および変化例を使用し得る。しかしながら、これは、同時に提供される複数の認証インスタンスに対する多くの認証状況で有用であり得る。例えば、本発明のシステムを使用して自分を認証しようとする場合に、ユーザは、ユーザ識別、指紋認証データ、スマートカード、およびパスワードを提供し得る。そのような場合、３つの独立認証インスタンスが、評価のために信頼エンジン１１０に提供されている。ステップ１６２５へ進んで、ユーザによって提供されたデータが１つより多くの認証インスタンスを含むと認証エンジン２１５が決定した場合には、各インスタンスは、ステップ１６３０で示されるように選択され、ステップ１６１０、１６１５、および１６２０において上記で説明されるように評価される。
【０１８１】
論議される信頼性因子の多くは、これらのインスタンスによって変化し得ることを留意されたい。例えば、これらの技法の固有信頼性、ならびに認証データと登録データとの間で提供される合致の程度は、異なる可能性が高い。さらに、ユーザは、これらの技法の各々について、異なる時間で、かつ異なる状況下で、登録データを提供し、同様に、これらのインスタンスの各々に対して異なる登録信頼性を提供し得る。最終的に、たとえこれらのインスタンスの各々に対するデータが提供されている状況が同じであっても、そのような技法の使用は、ユーザのプロファイルに異なって適合し得、よって、異なる状況信頼性が割り当てられ得る（例えば、ユーザは通常、スマートカードではなく、パスワードおよび指紋を使用し得る）。
【０１８２】
結果として、これらの認証インスタンスの各々の最終信頼性は、相互に異なり得る。しかしながら、複数のインスタンスをともに使用することによって、認証の全体的な確信レベルは増加する傾向となる。
【０１８３】
いったん認証エンジンが、認証データにおいて提供される認証インスタンスの全てについてステップ１６１０乃至１６２０を行うと、各インスタンスの信頼性は、全体的な認証確信レベルを評価するために、ステップ１６３５で使用される。個別認証インスタンス信頼性を認証確信レベルに組み込むという、この過程は、生成される個別信頼性を関係付ける種々の方法によってモデル化され得、また、これらの認証技法のうちのいくつかの間の特定の相互作用に対処し得る。（例えば、パスワード等の複数の知識ベースのシステムは、単一のパスワードと基本音声分析等のかなり弱い生体測定、よりも低い確信を生じる場合がある）。
【０１８４】
認証エンジン２１５が、最終確信レベルを生成するために、複数の同時認証インスタンスの信頼性を組み合わせる１つの手段は、全体不信頼性に到達するように、各インスタンスの不信頼性を乗じることである。不信頼性は、概して、信頼性の相補的パーセンテージである。例えば、８４％信頼性がある技法は、１６％信頼性がない。８６％、７５％、および７２％の信頼性を生じる、上記で説明される３つの認証インスタンス（指紋、スマートカード、パスワード）は、それぞれ、（１００−８６）％、（１００−７５）％、および（１００−７２）％、または１４％、２５％、および２８％の対応する不信頼性を有する。これらの不信頼性を乗じることによって、９９．０２％の信頼性に対応する、１４％＊２５％＊２８％（０．９８％の不信頼性）という累積的不信頼性を得る。
【０１８５】
追加の動作モードでは、種々の認証技法の相互依存に対処するように、追加の要因およびヒューリスティクス５３０が認証エンジン２１５内で適用され得る。例えば、誰かが特定のホームコンピュータへの不正アクセスを有する場合、おそらく、そのアドレスにおける電話回線にもアクセスできる。したがって、発信電話番号ならびに認証システムのシリアル番号に基づいて認証することは、認証への全体的確信に多くを加算しない。しかしながら、知識ベースの認証は、大部分がトークンベースの認証とは無関係である（すなわち、誰かが携帯電話または鍵を盗んだ場合、盗まなかった場合よりもＰＩＮまたはパスワードを知る可能性が高いにすぎない）。
【０１８６】
さらに、異なるベンダまたは他の認証要求者が、認証の異なる側面に異なって重み付けることを所望し得る。これは、個別インスタンスの信頼性を計算する際の別個の重み因子またはアルゴリズムの使用、ならびに複数のインスタンスを用いて認証イベントを評価する異なる手段の使用を含み得る。
【０１８７】
例えば、ある種類のトランザクション、例えば、企業Ｅメールシステムのベンダが、主にヒューリスティクスおよび他の状況データに基づいて、認証することを所望し得る。したがって、それらは、メタデータに関連する因子、および認証イベントをとりまく状況に関連付けられる他のプロファイル関連情報に高い重みを適用し得る。この構成は、営業時間中に正しいマシンにログオンしたこと以上をユーザから要求しないことによって、通常営業時間中にユーザへの負担を緩和するために使用することができる。しかしながら、別のベンダは、そのような技法が特定のベンダの目的で認証に最も適しているという方針決定により、特定の技法、例えば、指紋照合に由来する認証に最も重く重み付け得る。
【０１８８】
そのような様々な重みは、１つの動作モードにおいて、認証要求を生成する際に認証要求者によって定義され、認証要求とともに信頼エンジン１１０に送信され得る。そのようなオプションはまた、別の動作モードにおいて、認証要求者に対する初期の登録過程中に選好として設定され、認証エンジン内に記憶されることもできる。
【０１８９】
いったん認証エンジン２１５が、提供される認証データの認証確信レベルを生成すると、この確信レベルは、ステップ１６４０で認証要求を完了するために使用され、この情報は、認証要求者へのメッセージに含めるために、認証エンジン２１５からトランザクションエンジン２０５に転送される。
【０１９０】
上記で説明される過程は例示的にすぎず、当業者であれば、ステップは示された順番で行われる必要はないこと、またはステップのうちの特定のものだけが行われることを所望されること、またはステップの種々の組み合わせが所望され得ることを認識するであろう。さらに、提供される各認証インスタンスの信頼性の評価等の、あるステップは、状況が許されれば、互に並行して実行され得る。
【０１９１】
本発明のさらなる側面では、上記で説明される過程によって生成される認証確信レベルが、認証を必要とするベンダまたは他の当事者の必要信頼レベルを満たすことができない場合の状況に適応する方法が提供される。提供される確信のレベルと所望される信頼のレベルとの間に格差が存在する、これらの状況等の状況では、信頼エンジン１１０の操作者は、この信頼格差を埋めるために、一方または両方の当事者が代替データまたは要件を提供するための機会を提供する立場にある。この過程は、本明細書では「信頼裁定」と呼ばれる。
【０１９２】
信頼裁定は、図１０および１１を参照して上記で説明されるような暗号認証のフレームワーク内で行われ得る。その中で示されるように、ベンダまたは他の当事者が、特定のトランザクションと関連して特定のユーザの認証を要求する。１つの状況では、ベンダが、単純に、肯定的または否定的のいずれか一方の認証を要求し、ユーザから適切なデータを受信した後、信頼エンジン１１０が、そのような２値認証を提供する。これらの状況等の状況では、肯定的な認証をセキュア化するために必要とされる確信の程度は、信頼エンジン１１０内で設定される選好に基づいて決定される。
【０１９３】
しかしながら、ベンダが、特定のトランザクションを完了するための特定の信頼のレベルを要求し得ることも可能である。この必要レベルは、認証要求とともに含まれ得るか（例えば、このユーザを９８％確信で認証する）、またはトランザクションに関連付けられる他の因子に基づいて信頼エンジン１１０によって決定され得る（すなわち、このトランザクションについて適切であるとしてこのユーザを認証する）。１つのそのような因子は、トランザクションの経済的価値となる場合がある。より大きい経済的価値を有するトランザクションについては、より高い程度の信頼が必要とされ得る。同様に、高い程度のリスクを伴うトランザクションについては、高い程度の信頼が必要とされ得る。逆に、低いリスクまたは低い値のいずれかであるトランザクションについては、より低い信頼レベルがベンダまたは他の認証要求者によって必要とされ得る。
【０１９４】
信頼裁定の過程は、図１０のステップ１０５０で認証データを受信する信頼エンジン１１０のステップと、図１０のステップ１０５５でベンダに認証結果を返信するステップとの間で発生する。これらのステップ間で、信頼レベルの評価および潜在的な信頼裁定につながる過程が、図１７に示されるように発生する。単純な２値認証が行われる状況では、図１７に示された過程は、トランザクションエンジン２０５に、提供された認証データを、図１０を参照して上記で論議されるような識別されたユーザの登録データと直接比較させ、否定的な認証として差異をフラグすることに帰着する。
【０１９５】
図１７に示されるように、ステップ１０５０でデータを受信した後の第１のステップは、トランザクションエンジン２０５が、ステップ１７１０で、この特定のトランザクションの肯定的な認証に必要とされる信頼レベルを決定することである。このステップは、いくつかの異なる方法のうちの１つによって実装され得る。必要信頼レベルは、認証要求が行われる場合に認証要求者によって信頼エンジン１１０に特定され得る。認証要求者はまた、保管場所２１０またはトランザクションエンジン２０５によってアクセス可能である他の記憶装置内に記憶される選好を事前に設定し得る。次いで、この選好は、認証要求がこの認証要求者によって行われるたびに読み取られ、使用され得る。選好はまた、特定のユーザを認証するために、特定の信頼のレベルが常に必要とされるように、セキュリティ対策としてそのユーザに関連付けられ得、ユーザ選好は、保管場所２１０またはトランザクションエンジン２０５によってアクセス可能である他の記憶媒体に記憶される。要求レベルはまた、認証されるトランザクションの値およびリスクレベル等の認証要求において提供される情報に基づいて、トランザクションエンジン２０５または認証エンジン２１５によって導出され得る。
【０１９６】
１つの動作モードでは、認証要求を生成する場合に使用される方針管理モジュールまたは他のソフトウェアが、トランザクションの認証の必要な信頼の程度を特定するために使用される。これは、方針管理モジュール内で特定される方針に基づいて必要レベルの信頼を割り当てる場合に従う、一連の規則を提供するために使用され得る。１つの有利な動作モードは、ベンダのウェブサーバを用いて開始されるトランザクションの必要な信頼のレベルを適切に決定するために、そのようなモジュールがベンダのウェブサーバと合併されることである。このようにして、ユーザからのトランザクション要求は、ベンダの方針に従って必要信頼レベルが割り当てられ、そのような情報は、認証要求とともに信頼エンジン１１０に転送され得る。
【０１９７】
この必要信頼レベルは、個人を認証することが、実際に個人が自分を識別する人物であることを、ベンダが有することを欲する確実性の程度と相関する。例えば、トランザクションが、物品が持ち主を変えているため、ベンダがかなりの程度の確実性を求めているものである場合、ベンダは、８５％の信頼レベルを必要とし得る。ベンダが、チャットルーム上でメンバー専用コンテンツを閲覧すること、または特権を行使することを可能にするようにユーザを認証しているにすぎない状況については、マイナスのリスクは、ベンダが６０％の信頼レベルしか必要としないほど十分小さくてもよい。しかしながら、何万ドルもの価値を伴う生産契約を締結するために、ベンダは、９９％以上の信頼レベルを必要とし得る。
【０１９８】
この要求信頼レベルは、トランザクションを完了するためにユーザが自分を認証しなければならない測定基準を表す。例えば、要求信頼レベルが８５％である場合、ユーザは、ユーザが自分であると言う者であることを信頼エンジン１１０が８５％の確信で言うために十分な認証を、信頼エンジン１１０に提供しなければならない。（ベンダの満足度にとって）肯定的な認証または信頼裁定の可能性を生じるのは、この必要レベルと認証確信レベルとの間のバランスである。
【０１９９】
図１７に示されるように、トランザクションエンジン２０５は、必要信頼レベルを受信した後、ステップ１７２０で、必要信頼レベルを、（図１６を参照して論議されるように）現在の認証について認証エンジン２１５が計算した認証確信レベルと比較する。認証確信レベルが、ステップ１７３０で、トランザクションの必要信頼レベルよりも高い場合には、過程は、このトランザクションの肯定的な認証がトランザクションエンジン２０５によって生成される、ステップ１７４０へと進む。次いで、この結果に対するメッセージは、認証結果に挿入され、ステップ１０５５（図１０参照）で示されるようにトランザクションエンジン２０５によってベンダに返信される。
【０２００】
しかしながら、認証確信レベルがステップ１７３０で必要信頼レベルを満たさない場合には、確信の格差が現在の認証に存在し、信頼裁定がステップ１７５０で行われる。信頼裁定は、以下の図１８を参照してより完全に説明される。以下で説明されるような、この過程は、信頼エンジン１１０のトランザクションエンジン２０５内で行われる。（トランザクションエンジン２０５と他の構成要素との間のＳＳＬ通信に必要とされるもの以外に）信頼裁定を実行するために、いずれの認証または他の暗号動作も必要とされないため、過程は、認証エンジン２１５の外側で行われ得る。しかしながら、以下で論議されるように、認証データの任意の再評価、あるいいは他の暗号または認証イベントは、適切なデータを認証エンジン２１５に再提出するように、トランザクションエンジン２０５に要求する。当業者であれば、信頼裁定過程は、代替として、認証エンジン２１５自体内で部分的または完全に行われるように構造化できることを認識するであろう。
【０２０１】
上述のように、信頼裁定は、信頼エンジン１１０が、適切な場合に肯定的な認証をセキュア化しようとして、ベンダとユーザとの間の交渉を仲介する過程である。ステップ１８０５で示されるように、トランザクションエンジン２０５は、最初に、現在の状況が信頼裁定に適切であるか否かを決定する。これは、以下でさらに論議されるように、認証の状況、例えば、この認証がすでに裁定の複数のサイクルを通っているかどうか、ならびに、ベンダまたはユーザの選好に基づいて、決定され得る。
【０２０２】
裁定が可能ではない、そのような状況では、過程は、トランザクションエンジン２０５が否定的な認証を生成し、次いで、ステップ１０５５（図１０参照）でベンダに送信される認証結果にそれを挿入する、ステップ１８１０へと進む。認証が無期限に未決となることを防ぐために有利に使用され得る、１つの制限は、初期認証要求からのタイムアウト期間を設定することである。このようにして、制限時間内に肯定的に認証されないトランザクションは、さらなる裁定を否定され、否定的に認証される。当業者であれば、制限時間は、トランザクションの状況、ならびにユーザおよびベンダの所望に応じて変化し得ることを認識するであろう。制限はまた、成功した認証を提供する際に行われ得る試行の数に課され得る。そのような認証は、図５に示されるような試行リミッタ５３５によって処理され得る。
【０２０３】
裁定がステップ１８０５で禁止されない場合には、トランザクションエンジン２０５は、取引当事者の一方または両方との交渉に従事する。トランザクションエンジン２０５は、ステップ１８２０で示されるように生成される認証確信レベルを高めるために、何らかの形態の追加の認証を要求するメッセージをユーザに送信し得る。最も単純な形態では、これは、単純に、認証が不十分であったことを示し得る。認証の全体的な確信レベルを向上させるように、１つ以上の追加の認証インスタンスを生成する要求も送信され得る。
【０２０４】
ユーザがステップ１８２５でいくつかの追加の認証インスタンスを提供する場合には、トランザクションエンジン２０５が、トランザクションのためにこれらの認証インスタンスを認証データに追加し、ステップ１０１５でそれを認証エンジン２１５に転送し（図１０参照）、認証は、このトランザクションのための既存の認証インスタンスおよび新しく提供された認証インスタンスの両方に基づいて再評価される。
【０２０５】
追加の種類の認証は、例えば、電話によって、信頼エンジン１１０の操作者（または信頼できる提携者）とユーザとの間で何らかの形態の個人対個人の連絡を行う信頼エンジン１１０からの要求であり得る。この電話または他の非コンピュータ認証は、個人との個人的連絡を提供するために、また、何らかの形態の質問表ベースの認証を行うために使用することができる。これはまた、ユーザが電話をした場合に、発信電話番号、および潜在的にユーザの音声分析を検証する機会を与え得る。たとえ追加の認証データを提供することができなくても、ユーザの電話番号に関連付けられる追加のコンテキストが、認証コンテキストの信頼性を向上させ得る。この電話に基づく改訂されたデータまたは状況は、認証要求の考慮で使用するために信頼エンジン１１０に供給される。
【０２０６】
加えて、ステップ１８２０では、信頼エンジン１１０は、ユーザが保険を購入し、より確信した認証を効果的に購入するための機会を提供し得る。信頼エンジン１１０の操作者は時々、認証の確信レベルが開始するためのある閾値を上回る場合に、そのようなオプションを利用可能にすることを所望し得るにすぎない。事実上、このユーザ側保険は、認証が認証のための信頼エンジン１１０の通常の要求信頼レベルを満たすが、このトランザクションのためのベンダの必要信頼レベルを満たさない場合に、信頼エンジン１１０がユーザを保証する方法である。このようにして、ユーザは、たとえ信頼エンジン１１０にとって十分な確信を生じる認証インスタンスのみを有しても、ベンダによって要求される場合があるような非常に高いレベルに依然として首尾よく認証し得る。
【０２０７】
この信頼エンジン１１０の機能は、信頼エンジン１１０が、ベンダではなく信頼エンジン１１０が満足するように認証される誰かを保証することを可能にする。これは、署名が文書上に現れる個人が実際にそれを署名した個人であることを、後で文書を読む誰かに示すために、公証人が公証人の署名を文書に追加することによって果たされる機能と同様である。公証人の署名は、ユーザによる署名の行為を証明する。同じように、信頼エンジンは、取引している個人が自分であると言う個人であるという指示を提供している。
【０２０８】
しかしながら、信頼エンジン１１０がユーザによって提供される確信のレベルを人為的に高めるため、ユーザがベンダの必要信頼レベルを実際には満たしていないので、信頼エンジン１１０の操作者にとってより大きなリスクがある。保険の費用は、（ユーザの認証を効果的に公証し得る）信頼エンジン１１０に対する誤肯定的認証のリスクを相殺するように設計されている。ユーザは、実際に提供されているよりも高いレベルの確信に認証するリスクを冒す信頼エンジン１１０の操作者に支払いをする。
【０２０９】
そのような保険システムは、誰かが信頼エンジン１１０からより高い確信評定を効果的に購入することを可能にするので、ベンダおよびユーザの両方が、あるトランザクションでユーザ側保険の使用を防止することを所望し得る。ベンダは、実際の認証データが必要とする確信の程度をサポートすることをベンダが分かる状況に肯定的な認証を限定し得、よって、ユーザ側保険が許可されていないことを信頼エンジン１１０に示し得る。同様に、オンライン身元を保護するために、ユーザは、自分のアカウント上でユーザ側保険の使用を防止することを所望し得、または保険なしでの認証確信レベルがある制限よりも高い状況に、その使用を限定することを所望し得る。これは、誰かがパスワードを耳にするか、またはスマートカードを盗んで、低レベルの確信に不当に認証するためにそれらを使用し、次いで、非常に高いレベルの（誤った）確信を生じるように保険を購入することを防止するためのセキュリティ対策として使用され得る。これらの因子は、ユーザ側保険が許可されるかどうかを決定する際に評価され得る。
【０２１０】
ユーザがステップ１８４０で保険を購入する場合には、ステップ１８４５で購入された保険に基づいて認証確信レベルが調整され、認証確信レベルおよび要求信頼レベルがステップ１７３０（図１７参照）で再び比較される。過程はここから続き、ステップ１７４０（図１７参照）での肯定的な認証につながるか、または（許可されている場合）さらなる裁定のためにステップ１７５０での信頼裁定過程に戻るか、あるいはさらなる裁定が禁止されている場合にステップ１８１０での否定的な認証につながり得る。
【０２１１】
ステップ１８２０でメッセージをユーザに送信することに加えて、トランザクションエンジン２０５はまた、係属中の認証が現在、必要信頼レベルを下回っていることを示すメッセージを、ステップ１８３０でベンダに送信し得る。メッセージはまた、どのようにしてベンダに向かうかについて種々のオプションを提供し得る。これらのオプションのうちの１つは、単純に、現在の認証確信レベルがどのようなものであるかをベンダに知らせ、ベンダが現在の満たされていない必要信頼レベルを維持することを所望するかどうかを尋ねることである。これは、場合によっては、ベンダがトランザクションを認証するための独立した手段を有し得るか、または、手元の特定のトランザクションに実際に必要とされているよりも高く最初に特定された必要レベルを概してもたらす、デフォルトの一式の要件を使用していることがあるため、有益であり得る。
【０２１２】
例えば、ベンダとの全ての着信購入注文トランザクションが９８％信頼レベルを満たすことを期待されることが、標準的実践であり得る。しかしながら、注文がベンダと長年の顧客との間で電話によって最近論議されており、その直後にトランザクションが認証されたが、９３％確信レベルのみで認証された場合、電話が追加の認証をベンダに効果的に提供するので、ベンダは単純に、このトランザクションのための容認閾値を低くすることを所望し得る。ある状況では、ベンダは、必要信頼レベルを進んで低くし得るが、必ずしも現在の認証確信のレベルまでではない。例えば、上記の実施例でのベンダは、注文前の電話が、必要とされる信頼の程度の４％低減に値すると考える場合があるが、これは依然として、ユーザによって生成される９３％確信よりも大きい。
【０２１３】
ベンダがステップ１８３５で必要信頼レベルを調整しない場合には、認証によって生成される認証確信レベルおよび必要信頼レベルがステップ１７３０（図１７参照）で比較される。ここで確信レベルが必要信頼レベルを超える場合、肯定的な認証がステップ１７４０（図１７参照）でトランザクションエンジン２０５において生成され得る。もしそうでなければ、さらなる裁定が、許可される場合に上記で論議されるように試行され得る。
【０２１４】
必要信頼レベルへの調整を要求することに加えて、トランザクションエンジン２０５はまた、認証を要求するベンダにベンダ側保険を提供し得る。この保険は、ユーザ側保険について上記で説明されるものと同様の目的を果たす。しかしながら、ここでは、費用が、生成される実際の認証確信レベルを上記で認証する際に信頼エンジン１１０によって冒されているリスクに対応するよりもむしろ、保険の費用は、認証においてより低い信頼レベルを受け入れる際にベンダによって冒されるリスクに対応する。
【０２１５】
実際の必要信頼レベルを単に低くする代わりに、ベンダは、ユーザの認証におけるより低い信頼のレベルに関連付けられる追加のリスクから自身を保護するように、保険を購入するというオプションを有する。上記で説明されるように、既存の認証がある閾値をすでに上回っている状況で信頼格差を補うように、そのような保険を購入することのみを考慮することが有利であり得る。
【０２１６】
そのようなベンダ側保険の可用性は、ベンダに、自身にとって追加の犠牲を払わずに信頼要件を直接低くし、（必要とされるより低い信頼レベルに基づいて）自分で否定的な認証のリスクを負うオプション、または認証確信レベルと要件との間の信頼格差のための保険を購入し、信頼エンジン１１０の操作者が提供されたより低い確信レベルのリスクを負うオプションを可能にする。保険を購入することによって、否定的な認証のリスクが信頼エンジン１１０の操作者にシフトされるため、ベンダは高い信頼レベル要件を効果的に保つことができる。
【０２１７】
ベンダがステップ１８４０で保険を購入する場合、認証確信レベルおよび必要信頼レベルがステップ１７３０（図１７参照）で比較され、過程が上記で説明されるように続く。
【０２１８】
ユーザおよびベンダの両方が、信頼エンジン１１０からのメッセージに応答することも可能であると留意されたい。当業者であれば、そのような状況に対処することができる複数の方法があることを認識するであろう。複数の応答の可能性に対処する１つの有利なモードは、単純に、先着順に応答を取り扱うことである。例えば、ベンダが低くした必要信頼レベルで応答し、その直後にユーザも認証レベルを上昇させるように保険を購入する場合、認証は最初に、ベンダからの低くなった信頼要件に基づいて再評価される。ここで認証が肯定的である場合、ユーザの保険購入は無視される。別の有利な動作モードでは、ユーザは、（低くなったベンダ信頼要件を伴っても信頼格差が依然として残っていた場合）ベンダの新しい低くなった信頼要件を満たすために必要とされる保険のレベルに対してのみ請求される場合がある。
【０２１９】
認証に設定された制限時間内に、いずれか一方の当事者からの応答がステップ１８５０における信頼裁定過程中に受信されない場合、裁定はステップ１８０５で再評価される。これは、裁定過程を再び効果的に始める。制限時間が最終であるか、または他の状況がステップ１８０５でさらなる裁定を防止する場合、否定的な認証がステップ１８１０でトランザクションエンジン２０５によって生成され、ステップ１０５５（図１０参照）でベンダに返信される。もしそうでなければ、新しいメッセージがユーザおよびベンダに送信され得、過程が所望に応じて繰り返され得る。
【０２２０】
例えば、トランザクションの一部ではない文書にデジタル署名する、ある種類のトランザクションについては、必ずしもベンダまたは他の第三者がいなくてもよく、したがって、トランザクションは、主にユーザと信頼エンジン１１０との間であることに留意されたい。これら等の状況では、信頼エンジン１１０は、肯定的な認証を生成するために満たされなければならない、独自の必要信頼レベルを有する。しかしながら、そのような状況では、ユーザが独自の署名の確信を引き上げるために信頼エンジン１１０が保険をユーザに提案することは、しばしば望ましくない。
【０２２１】
上記で説明され、図１６−１８で示される過程は、信頼エンジン１１０を参照して上記で説明されるような種々の通信モードを使用して実行され得る。例えば、メッセージは、ウェブベースであり、信頼エンジン１１０と、ユーザまたはベンダシステム上で作動するブラウザにリアルタイムでダウンロードされるアプレットとの間のＳＳＬ接続を使用して送信され得る。代替的な動作モードでは、そのような裁定および保険トランザクションを促進する、ある専用アプリケーションがユーザおよびベンダによって使用中であり得る。別の代替的な動作モードでは、上記で説明される裁定を仲介するために、セキュアなＥメール動作が使用され得、それにより、認証の繰延評価およびバッチ処理を可能にする。当業者であれば、状況およびベンダの認証要件に対して異なる通信モードが適切に使用され得ることを認識するであろう。
【０２２２】
図１９に関する以下の説明は、上記で説明されるような本発明の種々の側面を統合する、サンプルトランザクションを説明する。この実施例は、信頼エンジン１１０によって仲介されるようなユーザとベンダとの間の全体的な過程を図示する。上記で詳細に説明されるような種々のステップおよび構成要素は、以下のトランザクションを実行するために使用され得るが、図示された過程は、信頼エンジン１１０、ユーザ、およびベンダの間の相互作用に焦点を当てる。
【０２２３】
トランザクションは、ユーザが、オンラインでウェブページを閲覧しながらステップ１９００でベンダのウェブサイト上の注文書に記入した場合に始まる。ユーザは、自分のデジタル署名で署名されたこの注文書をベンダに提出することを所望する。これを行うために、ユーザは、ステップ１９０５で、署名の要求を伴う注文書を信頼エンジン１１０に提出する。ユーザはまた、身元を認証するために上記で説明されるように使用される、認証データも提供する。
【０２２４】
ステップ１９１０では、認証データが、上記で論議されるように信頼エンジン１１０によって登録データと比較され、肯定的な認証が生成された場合、ユーザの秘密キーで署名された注文書のハッシュが、注文書自体とともにベンダに転送される。
【０２２５】
ベンダは、ステップ１９１５で署名された注文書を受信し、次いで、ベンダは、ステップ１９２０で行われる購入に関連する請求書または他の契約書を生成する。この契約書は、ステップ１９２５で署名の要求とともにユーザに返送される。ベンダはまた、ステップ１９３０で、両方の当業者によって署名されることになる契約書のハッシュを含む、この契約トランザクションの認証要求を信頼エンジン１１０に送信する。契約書が両方の当事者によってデジタル署名されることを可能にするために、ベンダはまた、必要であれば契約書上のベンダの署名を後で検証することができるように、ベンダ自身の認証データも含める。
【０２２６】
上記で論議されるように、信頼エンジン１１０は、次いで、ベンダの身元を確認するようにベンダによって提供される認証データを検証し、データがステップ１９３５で肯定的な認証を生じた場合、データがユーザから受信されるステップ１９５５を続ける。ベンダの認証データが所望の程度でベンダの登録データに合致しない場合、さらなる認証を要求するメッセージがベンダに返信される。ここでは必要であれば、ベンダが自身を信頼エンジン１１０に首尾よく認証するために、信頼裁定が行われ得る。
【０２２７】
ユーザがステップ１９４０で契約書を受信すると、それを再検討し、ステップ１９４５で認証データを生成して容認可能であれば署名し、次いで、ステップ１９５０で契約書のハッシュおよび認証データを信頼エンジン１１０に送信する。信頼エンジン１１０は、ステップ１９５５で認証データを検証し、認証が良好であれば、続けて以下で説明されるように契約書を処理する。図１７および１８を参照して上記で論議されるように、信頼裁定は、認証確信レベルとトランザクションのための必要認証レベルとの間に存在する信頼格差を埋めるように、適切に行われ得る。
【０２２８】
信頼エンジン１１０は、ステップ１９６０で、ユーザの秘密キーで契約書のハッシュに署名し、自らのために完全メッセージに署名し、すなわち、信頼エンジン１１０の秘密キー５１０で暗号化された（ユーザの署名を含む）完全メッセージのハッシュを含め、この署名されたハッシュをベンダに送信する。このメッセージは、ステップ１９６５でベンダによって受信される。メッセージは、署名された契約書（ユーザの秘密キーを使用して暗号化された契約書のハッシュ）および信頼エンジン１１０からの受領書（信頼エンジン１１０の秘密キーを使用して暗号化された、署名された契約書を含むメッセージのハッシュ）を表す。
【０２２９】
信頼エンジン１１０は、同様に、ステップ１９７０でベンダの秘密キーを用いて契約書のハッシュを作成し、信頼エンジン１１０によって署名されたこれをユーザに転送する。このようにして、ユーザはまた、ステップ１９７５で、ベンダによって署名された契約書のコピー、ならびに署名された契約書を送達するために信頼エンジン１１０によって署名された受領書も受信する。
【０２３０】
前述の内容に加えて、本発明の追加の側面は、上記で説明される信頼エンジン１１０によって提供される機能にアクセスする手段として、クライアント側アプリケーションに利用可能であり得る、暗号サービスプロバイダモジュール（ＳＰＭ）を提供する。そのようなサービスを提供する１つの有利な方法は、暗号ＳＰＭが、第三者アプリケーションプログラミングインターフェース（ＡＰＩ）と、ネットワークまたは他の遠隔接続を介してアクセス可能な信頼エンジン１１０との間の通信を仲介することである。図２０を参照してサンプル暗号ＳＰＭを以下で説明する。
【０２３１】
例えば、典型的なシステム上で、いくつかのＡＰＩがプログラマに利用可能である。各ＡＰＩは、システム上で作動するアプリケーション２０００によって行われ得る、一式の機能呼び出しを提供する。暗号機能、認証機能、および他のセキュリティ機能に好適なプログラミングインターフェースを提供するＡＰＩの実施例は、そのＷｉｎｄｏｗｓ（登録商標）オペレーティングシステムとともにＭｉｃｒｏｓｏｆｔによって提供される暗号ＡＰＩ（ＣＡＰＩ）２０１０、ならびにＩＢＭ、Ｉｎｔｅｌ、およびＯｐｅｎ  Ｇｒｏｕｐの他のメンバーによって後援される共通データセキュリティアーキテクチャ（ＣＤＳＡ）を含む。ＣＡＰＩは、以下に続く論議における例示的なセキュリティＡＰＩとして使用される。しかしながら、説明される暗号ＳＰＭは、当技術分野で公知であるようなＣＤＳＡまたは他のセキュリティＡＰＩとともに使用することができる。
【０２３２】
このＡＰＩは、呼出しが暗号機能について行われる場合にユーザシステム１０５またはベンダシステム１２０によって使用される。これらの機能には、本明細書で説明されるか、または当業者に公知であるように、特定のキーで文書を暗号化すること、文書に署名すること、デジタル証明書を要求すること、署名された文書上の署名を検証すること、およびそのような他の暗号機能等の種々の暗号動作を行うことに関連付けられる要求が含まれ得る。
【０２３３】
そのような暗号機能は通常、ＣＡＰＩ２０１０が位置するシステムにローカルで行われる。これは、概して、呼び出される機能が、指紋読取機等のローカルユーザシステム１０５、またはローカルマシン上で実行されるライブラリを使用してプログラムされるソフトウェア機能のいずれかのリソースの使用を必要とするためである。これらのローカルリソースへのアクセスは通常、暗号機能が実行されるリソースを提供する、上記で参照されるような１つ以上のサービスプロバイダモジュール（ＳＰＭ）２０１５、２０２０によって提供される。そのようなＳＰＭは、暗号化または復号動作を行うソフトウェアライブラリ２０１５、または生体測定走査デバイス等の特殊ハードウェア２０２５にアクセスすることが可能なドライバおよびアプリケーション２０２０を含み得る。ＣＡＰＩ２０１０がシステム１０５のアプリケーション２０００によって使用され得る機能を提供するのとほぼ同じように、ＳＰＭ２０１５、２０２０は、システム上の利用可能なサービスに関連付けられるより低いレベル機能およびリソースへのアクセスをＣＡＰＩに提供する。
【０２３４】
本発明によれば、信頼エンジン１１０によって提供される暗号機能にアクセスし、これらの機能を、ＣＡＰＩ２０１０を通してアプリケーション２０００に利用可能にすることが可能である、暗号ＳＰＭ２０３０を提供することが可能である。ＣＡＰＩ２０１０が、ＳＰＭ２０１５、２０２０を通してローカルで利用可能であるリソースにアクセスすることしかできない実施形態と違って、本明細書で説明されるような暗号ＳＰＭ２０３０は、所望される動作を行うために、暗号動作の要求を遠隔に位置するネットワークアクセス可能な信頼エンジン１１０に提出することが可能となる。
【０２３５】
例えば、アプリケーション２０００が、文書に署名すること等の暗号動作の必要性を有する場合、アプリケーション２０００は、適切なＣＡＰＩ２０１０機能への機能呼出しを行う。ＣＡＰＩ２０１０は順に、この関数を実行し、ＳＰＭ２０１５、２０２０および暗号ＳＰＭ２０３０によってそれに利用可能となるリソースを利用する。デジタル署名機能の場合、暗号ＳＰＭ２０３０は、通信リンク１２５にわたって信頼エンジン１１０に送信される適切な要求を生成する。
【０２３６】
暗号ＳＰＭ２０３０と信頼エンジン１１０との間で発生する動作は、任意の他のシステムと信頼エンジン１１０との間で可能となる同じ動作である。しかしながら、これらの機能は、ユーザシステム１０５自体の上でローカルに利用可能であるかのように、ＣＡＰＩ２０１０を通してユーザシステム１０５に効果的に利用可能となる。しかしながら、通常のＳＰＭ２０１５、２０２０と違って、機能は、遠隔信頼エンジン１１０上で実行されており、結果は、通信リンク１２５にわたって適切な要求に応じて暗号ＳＰＭ２０３０に中継される。
【０２３７】
この暗号ＳＰＭ２０３０は、そうでなければ利用可能ではない場合がある、いくつかの動作を、ユーザシステム１０５またはベンダシステム１２０に利用可能にする。これらの機能は、文書の暗号化および復号、デジタル証明書の発行、文書のデジタル署名、デジタル署名の検証、および当業者に明白となるようなそのような他の動作を含むが、それらに限られない。
【０２３８】
別個の実施形態では、本発明は、任意のデータセットに対して本発明のデータセキュア化方法を行うための完全システムを備える。この実施形態のコンピュータシステムは、図８で示され、本明細書で説明される機能性を備える、データ分割モジュールを備える。本発明の一実施形態では、本明細書ではセキュアなデータパーサと呼ばれることもある、データ分割モジュールは、データ分割、暗号化および復号、再構成または再構築機能性を備える、パーサプログラムまたはソフトウェアスイートを備える。この実施形態はさらに、データ記憶設備または複数のデータ記憶設備を備え得る。データ分割モジュールまたはセキュアなデータパーサは、電子インフラストラクチャ内に、またはそのデータの究極のセキュリティを必要とする任意のアプリケーションへのアドオンとして統合されるクロスプラットフォームソフトウェアモジュールスイートを備える。この解析過程は、任意の種類のデータセットに対して、およびありとあらゆるファイル種類に対して、または、データベースの中で、そのデータベース内のデータの任意の横列、縦列、またはセルに対して動作する。
【０２３９】
本発明の解析過程は、一実施形態では、モジュラー階層状に設計され得、任意の暗号化過程が、本発明の過程での使用に好適である。本発明の解析および分割過程のモジュラー階層は、１）暗号分割し、分散され、複数の場所でセキュアに記憶される、２）暗号化し、暗号分割し、分散され、複数の場所でセキュアに記憶される、３）暗号化し、暗号分割し、各シェアを暗号化し、次いで、分散され、複数の場所でセキュアに記憶される、および４）暗号化し、暗号分割し、第１のステップで使用されたものとは異なる種類の暗号化を用いて各シェアを暗号化し、次いで、分散され、複数の場所でセキュアに記憶されることを含み得るが、それらに限定されない。
【０２４０】
過程は、一実施形態では、生成された乱数のコンテンツまたはキーに従ってデータを分割することと、解析および分割データを２つ以上の部分またはシェアに、一実施形態では好ましくは解析および分割データの４つ以上の部分にデータを分割する暗号化で使用される、キーの同じ暗号分割を行うことと、全ての部分を暗号化することと、次いで、プライバシーおよびセキュリティに対する要求者の必要性に応じて、これらの部分を散乱させてデータベースの中へ再び記憶し、または固定または可撤性の名前を付けられたデバイスにそれらを移転させることとを含む。代替として、別の実施形態では、暗号化は、分割モジュールまたはセキュアなデータパーサによるデータセットの分割前に発生し得る。この実施形態で説明されるように処理される元のデータは、暗号化および難読化され、セキュア化される。暗号化された要素の分散は、所望であれば、単一のサーバまたはデータ記憶デバイスを含むが、それらに限定されない、事実上どこにでも、あるいは別個のデータ記憶設備またはデバイスの間にあり得る。暗号化キー管理は、一実施形態では、ソフトウェアスイート内に含まれ、または別の実施形態では、既存のインフラストラクチャまたは任意の他の所望の場所に組み込まれ得る。
【０２４１】
暗号の分割（暗号分割）は、データをＮ個のシェアに区分化する。区分化は、個別ビット、ビット、バイト、キロバイト、メガバイト、またはより大きい単位を含む、データの任意のサイズ単位、ならびに、所定であろうと無作為に生成されようと、データ単位サイズの任意のパターンまたは組み合わせにおけるものとなり得る。単位は、無作為または所定の一式の値に基づいて、異なるサイズとなり得る。これは、一連のこれらの単位としてデータを見なすことができることを意味する。このようにして、データ単位自体のサイズは、例えば、データ単位サイズの１つ以上の所定であるか、または無作為に生成されたパターン、順序、または組み合わせを使用することによって、データをよりセキュアにし得る。次いで、単位は、（無作為に、または所定の一式の値によって）Ｎ個のシェアに分配される。この分配はまた、シェアにおける単位の順番の入れ替えを伴うこともできる。シェアへのデータ単位の分配は、固定サイズ、所定のサイズ、あるいは所定であるか、または無作為に生成されるデータ単位サイズの１つ以上の組み合わせ、パターン、または順序を含むが、それらに限定されない多種多様な可能な選択に従って行われ得ることが、当業者に容易に明白となるであろう。
【０２４２】
この暗号分割過程のいくつかの実施形態では、データは、サイズが１、２、３、５、２０、５０、１００、１００以上、またはＮバイト等の、サイズが任意の好適なバイト数であり得る。この暗号の分割過程または暗号分割の１つの特定の実施例は、データをサイズが２３バイトであり、データ単位サイズが１バイトであるように選択され、シェアの数が４になるように選択されるものとすることであろう。各バイトは、４つのシェアのうちの１つに分配される。無作為な分配を仮定すると、それぞれ４つのシェアに対応する１から４の間の値を伴う、一連の２３個の乱数（ｒ１、ｒ２、ｒ３乃至ｒ２３）を作成するようにキーが取得される。データの単位のそれぞれ（この実施例では、データの２３の個別バイト）は、４つのシェアに対応する２３個の乱数のうちの１つに関連付けられる。４つのシェアへのデータのバイトの分配は、データの最初のバイトをシェア番号ｒ１の中へ、第２のバイトをシェアｒ２の中へ、第３のバイトをシェアｒ３の中へ、乃至データの第２３のバイトをシェアｒ２３の中へ配置することによって発生する。データ単位のサイズを含む、多種多様な他の可能ステップ、またはステップの組み合わせ、あるいは一連のステップが、本発明の暗号分割過程で使用され得、上記の実施例は、データを暗号分割するための１つの過程の非限定的な説明であることが、当業者にとって容易に明白となるであろう。元のデータを再作成するために、逆算が行われる。
【０２４３】
本発明の暗号分割過程の別の実施形態では、暗号分割過程のオプションは、データをその元の形態または使用可能な形態に再構築または回復するためにシェアの一部のみが必要とされるように、シェアにおいて十分な冗長性を提供することである。非限定的な実施例では、暗号分割は、データをその元の形態または使用可能な形態に再構築または回復するために、４つのシェアのうちの３つだけが必要であるように、「４分の３」の暗号分割として行われ得る。これはまた、「Ｎ分のＭ暗号分割」とも呼ばれ、Ｎはシェアの総数であり、ＭはＮよりも少なくとも１つ少ない。本発明の暗号分割過程では、この冗長性を作成するための多くの可能性があることが、当業者に容易に明白である。
【０２４４】
本発明の暗号分割過程の一実施形態では、データの各単位は、主要シェアおよびバックアップシェアといった２つのシェアに記憶される。上記で説明される「４分の３」暗号分割過程を使用すると、いずれか１つのシェアが欠落し得、これは、合計４つのシェアのうちの３つだけが必要とされるため、欠落データ単位なしに元のデータを再構築または回復するのに十分である。本明細書で説明されるように、シェアのうちの１つに対応する乱数が生成される。乱数は、データ単位に関連付けられ、キーに基づいて対応するシェアに記憶される。この実施形態では、主要およびバックアップシェア乱数を生成するために、１つのキーが使用される。本発明の暗号分割過程について本明細書で説明されるように、データ単位の数に等しい、０から３の一式の乱数（主要シェア番号とも呼ばれる）が生成される。次いで、データ単位の数に等しい、１から３の別の一式の乱数（バックアップシェア番号とも呼ばれる）が生成される。次いで、データの各単位は、主要シェア番号およびバックアップシェア番号に関連付けられる。代替として、データ単位の数よりも少なく、乱数セットを繰り返す、一式の乱数が生成され得るが、これは機密データのセキュリティを低減する場合がある。主要シェア番号は、どのシェアの中にデータ単位が記憶されるかを決定するために使用される。バックアップシェア番号は、０から３の間の第３のシェア番号を作成するように、主要シェア番号と組み合わせられ、この番号は、どのシェアの中にデータ単位が記憶されるかを決定するために使用される。この実施例では、第３のシェア番号を決定する方程式は、
（主要シェア番号＋バックアップシェア番号）ＭＯＤ  ４＝第３のシェア番号である。
【０２４５】
主要シェア番号が０から３の間であり、バックアップシェア番号が１から３の間である、上記で説明される実施形態では、第３のシェア番号が主要シェア番号とは異なることを保証する。これは、データ単位を２つの異なるシェアに記憶させる。本明細書で開示される実施形態に加えて、冗長な暗号分割および非冗長な暗号分割を行う多くの方法があることが、当業者にとって容易に明白である。例えば、各シェア内のデータ単位は、異なるアルゴリズムを使用して入れ替えることができる。このデータ単位入れ替えは、例えば、元のデータがデータ単位に分割される際に、またはデータ単位がシェアの中へ配置された後に、またはシェアが満杯になった後に行われ得る。
【０２４６】
本明細書で説明される種々の暗号分割過程およびデータ入れ替え過程、ならびに本発明の暗号分割およびデータ入れ替え方法の全ての他の実施形態は、個別ビット、ビット、バイト、キロバイト、メガバイト、またはそれ以上のサイズを含むが、それらに限定されない、任意のサイズのデータ単位で行われ得る。
【０２４７】
本明細書で説明される暗号分割過程を行うソースコードの一実施形態の実施例は、以下である。
ＤＡＴＡ［１：２４］−分割されるデータを伴うバイトのアレイ
ＳＨＡＲＥＳ［０：３；１：２４］−各横列がシェアのうちの１つを表す、２次元アレイＲＡＮＤＯＭ［１：２４］−０から３の範囲のアレイ乱数
Ｓ１＝１；
Ｓ２＝１；
Ｓ３＝１；
Ｓ４＝１；
Ｆｏｒ  Ｊ  ＝  １  ｔｏ  ２４  ｄｏ
Ｂｅｇｉｎ
ＩＦ  ＲＡＮＤＯＭ［Ｊ［  ＝＝０  ｔｈｅｎ
Ｂｅｇｉｎ
ＳＨＡＲＥＳ［１，Ｓ１］  ＝  ＤＡＴＡ  ［Ｊ］；
Ｓ１  ＝  Ｓ１  ＋  １；
Ｅｎｄ
ＥＬＳＥ  ＩＦ  ＲＡＮＤＯＭ［Ｊ［  ＝＝１  ｔｈｅｎ
Ｂｅｇｉｎ
ＳＨＡＲＥＳ［２，Ｓ２］  ＝  ＤＡＴＡ  ［Ｊ］；
Ｓ２  ＝  Ｓ２  ＋  １；
ＥＮＤ
ＥＬＳＥ  ＩＦ  ＲＡＮＤＯＭ［Ｊ［  ＝＝２  ｔｈｅｎ
Ｂｅｇｉｎ
Ｓｈａｒｅｓ［３，Ｓ３］  ＝  ＤＡＴＡ  ［Ｊ］；
Ｓ３  ＝  Ｓ３  ＋  １；
Ｅｎｄ
Ｅｌｓｅ  ｂｅｇｉｎ
Ｓｈａｒｅｓ［４，Ｓ４］  ＝  ＤＡＴＡ  ［Ｊ］；
Ｓ４  ＝  Ｓ４  ＋  １；
Ｅｎｄ；
ＥＮＤ；
本明細書で説明される暗号分割ＲＡＩＤ過程を行うソースコードの一実施形態の実施例は、以下である。
【０２４８】
２組の数を生成し、ＰｒｉｍａｒｙＳｈａｒｅは０から３であり、ＢａｃｋｕｐＳｈａｒｅは１から３である。次いで、上記で説明される暗号分割と同じ過程を用いて、各データ単位をｓｈａｒｅ［ｐｒｉｍａｒｙｓｈａｒｅ［１］］およびｓｈａｒｅ［（ｐｒｉｍａｒｙｓｈａｒｅ［１］＋ｂａｃｋｕｐｓｈａｒｅ［１］）ｍｏｄ  ４に入れる。この方法は、任意のサイズＮにカクダイ縮小可能となり、データを修復するためにＮ−１個だけのシェアが必要である。
【０２４９】
暗号化されたデータ要素の回収、再結合、再構築、または再構成は、指紋認識、顔面スキャン、手スキャン、虹彩スキャン、網膜スキャン、耳スキャン、血管パターン認識、またはＤＮＡ分析等の生体測定を含むが、それらに限定されない、人の数の認証技法を利用し得る。本発明のデータ分割および／またはパーサモジュールは、所望に応じて多種多様のインフラストラクチャ製品またはアプリケーションに組み込まれ得る。
【０２５０】
当技術分野で公知である従来の暗号化技術は、データを暗号化し、キーがなければそれを使用不可能にするために使用される、１つ以上のキーに依存する。しかしながら、データは、完全かそのままであり、攻撃の影響を受けやすいままである。本発明のセキュアなデータパーサは、一実施形態では、暗号解析と、暗号化されたファイルの２つ以上の部分またはシェア、別の実施形態では好ましくは４つ以上のシェアへの分割とを行い、暗号化の別の層をデータの各シェアに追加し、次いで、異なる物理的および／または論理的な場所にシェアを記憶することによって、この問題に対処する。データ記憶デバイス等の可撤性デバイスを使用することによって、または別の当事者の制御の下にシェアを置くことによって、１つ以上のデータシェアがシステムから物理的に除去されると、セキュア化されたデータのセキュリティ侵害の可能性が効果的に除去される。
【０２５１】
本発明のセキュアなデータパーサの一実施形態の実施例、およびどのようにそれが利用され得るかという実施例が、図２１に示され、以下で説明される。しかしながら、本発明のセキュアなデータパーサは、以下の非限定的実施例に加えて、多種多様な方法で利用され得ることが、当業者に容易に明白である。配備オプションとして、一実施形態では、セキュアなデータパーサは、外部セッションキー管理またはセッションキーのセキュアな内部記憶を伴って実装され得る。実装時に、アプリケーションをセキュア化するため、および暗号化目的で使用されるパーサマスターキーが生成される。結果として生じるセキュア化されたデータの中のパーサマスターキーの組み込みは、ワークグループ、企業、または拡張聴衆内の個人によるセキュア化されたデータの共有の融通性を可能にすることも留意されたい。
【０２５２】
図２１に示されるように、本発明のこの実施形態は、解析されたデータとともにセッションマスターキーを記憶するように、データパーサによってデータに対して行われる過程のステップを示す。
【０２５３】
１．セッションマスターキーを生成し、ＲＳ１ストリーム暗号を使用してデータを暗号化する。
【０２５４】
２．セッションマスターキーのパターンに従って、結果として生じる暗号化されたデータを、解析されたデータの４つのシェアまたは部分に分離する。
【０２５５】
３．方法のこの実施形態では、セッションマスターキーは、セキュア化されたデータシェアとともにデータ保管場所に記憶される。パーサマスターキーのパターンに従ってセッションマスターキーを分離し、キーデータを暗号化された解析データに付加する。
【０２５６】
４．データの結果として生じる４つのシェアは、元のデータの暗号化された部分およびセッションマスターキーの複数部分を含む。４つのデータシェアのそれぞれにストリーム暗号キーを生成する。
【０２５７】
５．各シェアを暗号化し、次いで、暗号化されたデータ部分またはシェアとは異なる場所に暗号化キーを記憶する。シェア１はキー４を得て、シェア２はキー１を得て、シェア３はキー２を得て、シェア４はキー３を得る。
【０２５８】
元のデータ形式を修復するためには、ステップが逆転される。
【０２５９】
本明細書で説明される方法のあるステップは、所望に応じて、異なる順番で行われるか、または複数回繰り返され得ることが、当業者に容易に明白である。データの複数部分は相互に異なって処理され得ることも、当業者に容易に明白である。例えば、複数の解析するステップは、解析されるデータの一部分のみで行われ得る。解析されたデータの各部分は、データがその元の形態または他の使用可能な形態に再構築、再構成、再形成、復号、または回復され得るという条件のみで、任意の望ましい方法で一意的にセキュア化され得る。
【０２６０】
図２２に示され、本明細書で説明されるように、本発明の別の実施形態は、１つ以上の別個のキー管理テーブルにセッションマスターキーデータを記憶するように、セキュアなデータパーサによってデータに対して行われる、過程のステップを含む。
【０２６１】
１．セッションマスターキーを生成し、ＲＳ１ストリーム暗号を使用してデータを暗号化する。
【０２６２】
２．セッションマスターキーのパターンに従って、結果として生じる暗号化されたデータを、解析されたデータの４つのシェアまたは部分に分離する。
【０２６３】
３．本発明の方法のこの実施形態では、セッションマスターキーは、データ保管場所における別個のキー管理テーブルに記憶される。このトランザクションに一意のトランザクションＩＤを生成する。トランザクションＩＤおよびセッションマスターキーを別個のキー管理テーブルに記憶する。パーサマスターキーのパターンに従ってトランザクションＩＤを分離し、データを暗号化された解析または分離データに付加する。
【０２６４】
４．データの結果として生じる４つのシェアは、元のデータの暗号化された部分およびトランザクションＩＤの複数部分を含む。
【０２６５】
５．４つのデータシェアのそれぞれにストリーム暗号キーを生成する。
【０２６６】
６．各シェアを暗号化し、次いで、暗号化されたデータ部分またはシェアとは異なる場所に暗号化キーを記憶する。シェア１はキー４を得て、シェア２はキー１を得て、シェア３はキー２を得て、シェア４はキー３を得る。
【０２６７】
元のデータ形式を修復するためには、ステップが逆転される。
【０２６８】
本明細書で説明される方法のあるステップは、所望に応じて、異なる順番で行われるか、または複数回繰り返され得ることが、当業者に容易に明白である。データの複数部分は相互に異なって処理され得ることも、当業者に容易に明白である。例えば、複数の分離または解析するステップは、解析されるデータの一部分のみで行われ得る。解析されたデータの各部分は、データがその元の形態または他の使用可能な形態に再構築、再構成、再形成、復号、または回復され得るという条件のみで、任意の望ましい方法で一意的にセキュア化され得る。
【０２６９】
図２３に示されるように、本発明のこの実施形態は、解析されたデータとともにセッションマスターキーを記憶するように、セキュアなデータパーサによってデータに行われる、過程のステップを示す。
【０２７０】
１．認証されたユーザに関連付けられるパーサマスターキーにアクセスする。
【０２７１】
２．一意のセッションマスターキーを生成する。
【０２７２】
３．パーサマスターキーおよびセッションマスターキーの排他的ＯＲ関数から中間キーを導出する。
【０２７３】
４．中間キーを用いて入力される既存または新しい暗号化キーアルゴリズムを使用した、データの随意的な暗号化。
【０２７４】
５．中間キーのパターンに従って、結果として生じる随意で暗号化されたデータを、解析されたデータの４つのシェアまたは部分に分離する。
【０２７５】
６．方法のこの実施形態では、セッションマスターキーは、セキュア化されたデータシェアとともにデータ保管場所に記憶される。パーサマスターキーのパターンに従ってセッションマスターキーを分離し、キーデータを随意で暗号化された解析データシェアに付加する。
【０２７６】
７．データの結果として生じる複数のシェアは、元のデータの随意で暗号化された部分およびセッションマスターキーの複数部分を含む。
【０２７７】
８．随意で、４つのデータシェアのそれぞれに暗号化キーを生成する。
【０２７８】
９．随意で、既存または新しい暗号化アルゴリズムを用いて各シェアを暗号化し、次いで、暗号化されたデータ部分またはシェアとは異なる場所に暗号化キーを記憶する。例えば、シェア１はキー４を得て、シェア２はキー１を得て、シェア３はキー２を得て、シェア４はキー３を得る。
【０２７９】
元のデータ形式を修復するためには、ステップが逆転される。
【０２８０】
本明細書で説明される方法のあるステップは、所望に応じて、異なる順番で行われるか、または複数回繰り返され得ることが、当業者に容易に明白である。データの複数部分は相互に異なって処理され得ることも、当業者に容易に明白である。例えば、複数の解析するステップは、解析されるデータの一部分のみで行われ得る。解析されたデータの各部分は、データがその元の形態または他の使用可能な形態に再構築、再構成、再形成、復号、または回復され得るという条件のみで、任意の望ましい方法で一意的にセキュア化され得る。
【０２８１】
図２４に示され、本明細書で説明されるように、本発明の別の実施形態は、１つ以上の別個のキー管理テーブルにセッションマスターキーデータを記憶するように、セキュアなデータパーサによってデータに行われる、過程のステップを含む。
【０２８２】
１．認証されたユーザに関連付けられるパーサマスターキーにアクセスする。
【０２８３】
２．一意のセッションマスターキーを生成する。
【０２８４】
３．パーサマスターキーおよびセッションマスターキーの排他的ＯＲ関数から中間キーを導出する。
【０２８５】
４．中間キーを用いて入力される既存または新しい暗号化キーアルゴリズムを使用して、随意でデータを暗号化する。
【０２８６】
５．中間キーのパターンに従って、結果として生じる随意で暗号化されたデータを、解析されたデータの４つのシェアまたは部分に分離する。
【０２８７】
６．本発明の方法のこの実施形態では、セッションマスターキーは、データ保管場所で別個のキー管理テーブルに記憶される。このトランザクションに一意のトランザクションＩＤを生成する。トランザクションＩＤおよびセッションマスターキーを別個のキー管理テーブルに記憶するか、または外部管理のためにセッションマスターキーおよびトランザクションＩＤを呼び出しプログラムに戻す。パーサマスターキーのパターンに従ってトランザクションＩＤを分離し、データを随意で暗号化された解析または分離データに付加する。
【０２８８】
７．データの結果として生じる４つのシェアは、元のデータの随意で暗号化された部分およびトランザクションＩＤの複数部分を含む。
【０２８９】
８．随意で、４つのデータシェアのそれぞれに暗号化キーを生成する。
【０２９０】
９．随意で、各シェアを暗号化し、次いで、暗号化されたデータ部分またはシェアとは異なる場所に暗号化キーを記憶する。例えば、シェア１はキー４を得て、シェア２はキー１を得て、シェア３はキー２を得て、シェア４はキー３を得る。
【０２９１】
元のデータ形式を修復するためには、ステップが逆転される。
【０２９２】
本明細書で説明される方法のあるステップは、所望に応じて、異なる順番で行われるか、または複数回繰り返され得ることが、当業者に容易に明白である。データの複数部分は相互に異なって処理され得ることも、当業者に容易に明白である。例えば、複数の分離または解析するステップは、解析されるデータの一部分のみで行われ得る。解析されたデータの各部分は、データがその元の形態または他の使用可能な形態に再構築、再構成、再形成、復号、または回復され得るという条件のみで、任意の望ましい方法で一意的にセキュア化され得る。
【０２９３】
当業者に容易に明白であるように、多種多様な暗号化方法が、本発明の方法で使用するために好適である。ワンタイムパッドアルゴリズムがしばしば、最もセキュアな暗号化方法のうちの１つと見なされ、本発明の方法で使用するために好適である。ワンタイムパッドアルゴリズムを使用することは、セキュア化されるデータと同じくらいの長さであるキーが生成されることを必要とする。この方法の使用は、セキュア化されるデータセットのサイズにより非常に長いキーの生成および管理をもたらす状況等の、ある状況では、あまり望ましくないことがある。ワンタイムパッド（ＯＴＰ）アルゴリズムでは、排他的ＯＲ関数ＸＯＲが使用される。同じ長さの２つのバイナリストリームｘおよびｙについて、ｘ
ＸＯＲ  ｙは、ｘおよびｙのビットごと排他論理和を意味する。
【０２９４】
ビットレベルでは、以下が生成される。
０  ＸＯＲ  ０＝０
０  ＸＯＲ  １＝１
１  ＸＯＲ  ０＝１
１  ＸＯＲ  １＝０
この過程の実施例は、分割されるｎバイトの秘密ｓ（またはデータセット）について本明細書で説明される。過程は、ｎバイトの乱数値ａを生成し、次いで、以下を設定する。ｂ＝ａ  ＸＯＲ  ｓ
以下の方程式を介して「ｓ」を導出できることに留意されたい。
ｓ＝ａ  ＸＯＲ  ｂ
値ａおよびｂは、シェアまたは部分と呼ばれ、別個の保管場所に配置される。いったん秘密ｓが２つ以上のシェアに分割されると、セキュアな方式で破棄される。
【０２９５】
本発明のセキュアなデータパーサは、複数の別個の秘密キー値Ｋ１、Ｋ２、Ｋ３、Ｋｎ、Ｋ５を組み込む複数のＸＯＲ関数を行う、この機能を利用し得る。動作の開始時に、セキュア化されるデータは、第１の暗号化動作を通過させられ、セキュアデータ＝データ  ＸＯＲ  秘密キー５：Ｓ＝Ｄ  ＸＯＲ  Ｋ５である。
【０２９６】
結果として生じる暗号化されたデータを、例えば、４つのシェアＳ１、Ｓ２、Ｓ３、Ｓｎにセキュアに記憶するために、データは、Ｋ５の値に従って、解析され、「ｎ」個のセグメントに分割され、または共有される。この動作は、元の暗号化されたデータの「ｎ」個の擬似乱数のシェアをもたらす。次いで、後続のＸＯＲ関数は、残りの秘密キー値を用いて各シェアで行われ得、例えば、セキュアなデータセグメント１＝暗号化されたデータシェア１  ＸＯＲ  秘密キー１であり、
ＳＤ１＝Ｓ１  ＸＯＲ  Ｋ１、
ＳＤ２＝Ｓ２  ＸＯＲ  Ｋ２、
ＳＤ３＝Ｓ３  ＸＯＲ  Ｋ３、
ＳＤｎ＝Ｓｎ  ＸＯＲ  Ｋｎである。
【０２９７】
一実施形態では、いずれか１つの保管場所に、そこで保持された情報を復号するのに十分な情報を含めることは所望されない場合があり、よって、シェアを復号するために必要とされるキーは、異なるデータ保管場所に記憶される。
保管場所１：ＳＤ１，Ｋｎ
保管場所２：ＳＤ２，Ｋ１
保管場所３：ＳＤ３，Ｋ２
保管場所ｎ：ＳＤｎ，Ｋ３
加えて、各シェアには、元のセッション暗号化キーＫ５を回収するために必要とされる情報が付加され得る。したがって、本明細書で説明されるキー管理の実施例では、元のセッションマスターキーは、インストール依存パーサマスターキー（ＴＩＤ１、ＴＩＤ２、ＴＩＤ３、ＴＩＤｎ）のコンテンツに従って、「ｎ」個のシェアに分割されるトランザクションＩＤによって参照される。
保管場所１：ＳＤ１，Ｋｎ，ＴＩＤ１
保管場所２：ＳＤ２，Ｋ１，ＴＩＤ２
保管場所３：ＳＤ３，Ｋ２，ＴＩＤ３
保管場所ｎ：ＳＤｎ，Ｋ３，ＴＩＤｎ
本明細書で説明される、組み込まれたセッションキーの実施例では、セッションマスターキーは、インストール依存パーサマスターキー（ＳＫ１、ＳＫ２、ＳＫ３、ＳＫｎ）のコンテンツに従って、「ｎ」個のシェアに分割される。
保管場所１：ＳＤ１，Ｋｎ，ＳＫ１
保管場所２：ＳＤ２，Ｋ１，ＳＫ２
保管場所３：ＳＤ３，Ｋ２，ＳＫ３
保管場所ｎ：ＳＤｎ，Ｋ３，ＳＫｎ
４つ全てのシェアが回収されない限り、この実施例に従ってデータを再構築することはできない。たとえ４つ全てのシェアが捕捉されても、セッションマスターキーおよびパーサマスターキーにアクセスせずに、元の情報を再構築または回復するという可能性はない。
【０２９８】
この実施例は、本発明の方法の実施形態を説明しており、また、別の実施形態では、秘密認証材料を形成するよう全ての保管場所からのシェアを組み合わせることができるように、保管場所の中へシェアを配置するために使用されるアルゴリズムも説明する。必要とされる計算は非常に単純かつ迅速である。しかしながら、ワンタイムパッド（ＯＴＰ）アルゴリズムを用いると、キーサイズが記憶されるデータと同じサイズであるため、セキュア化される大量のデータセット等の、それをあまり望ましくないものにさせる状況があり得る。したがって、ある状況下ではあまり望ましくないことがある、元のデータの量の約２倍を記憶し、伝送する必要性が生じる。
【０２９９】
（ストリーム暗号ＲＳ１）
ストリーム暗号ＲＳ１分割技法は、本明細書で説明されるＯＴＰ分割技法と非常に類似している。ｎバイトの乱数値の代わりに、ｎ’＝ｍｉｎ（ｎ，１６）バイトの乱数値が生成され、ＲＳ１ストリーム暗号アルゴリズムに入力するために使用される。ＲＳ１ストリーム暗号アルゴリズムの利点は、擬似乱数のキーがはるかに小さいシード数から生成されることである。ＲＳ１ストリーム暗号暗号化の実行の速度も、セキュリティを損なわずに、当技術分野で周知のＴｒｉｐｌｅ  ＤＥＳ暗号化の速度の約１０倍と評価されている。ＲＳ１ストリーム暗号アルゴリズムは、当技術分野で周知であり、ＸＯＲ関数で使用されるキーを生成するために使用され得る。ＲＳ１ストリーム暗号アルゴリズムは、ＲＳＡ  Ｓｅｃｕｒｉｔｙ，  ＩｎｃのＲＣ４ＴＭストリーム暗号アルゴリズム等の他の市販のストリーム暗号アルゴリズムとともに相互運用可能であり、本発明の方法で使用するために好適である。
【０３００】
上記のキー表記法を使用すると、Ｋ１乃至Ｋ５はｎバイトの乱数値であり、以下のように設定される。
ＳＤ１＝Ｓ１  ＸＯＲ  Ｅ（Ｋ１）
ＳＤ２＝Ｓ２  ＸＯＲ  Ｅ（Ｋ２）
ＳＤ３＝Ｓ３  ＸＯＲ  Ｅ（Ｋ３）
ＳＤｎ＝Ｓｎ  ＸＯＲ  Ｅ（Ｋｎ）
式中、Ｅ（Ｋ１）乃至Ｅ（Ｋｎ）は、Ｋ１乃至Ｋｎによって入力されるＲＳ１ストリーム暗号アルゴリズムからの出力の最初のｎバイトである。ここで、シェアは本明細書で説明されるようにデータ保管場所の中へ配置されている。
【０３０１】
このストリーム暗号ＲＳ１アルゴリズムでは、必要とされる計算は、ＯＴＰアルゴリズムとほぼ同じくらい単純かつ迅速である。ＲＳ１ストリーム暗号を使用する、この実施例での有益性としては、システムが、１つのシェアにつきセキュア化される元のデータのサイズより平均で約１６バイト多く記憶し、伝送することしか必要としないことである。元のデータのサイズが１６バイトより大きい場合、このＲＳ１アルゴリズムは、単純により短いため、ＯＴＰアルゴリズムよりも効率的である。ＲＳ１、ＯＴＰ、ＲＣ４ＴＭ、Ｔｒｉｐｌｅ  ＤＥＳ、およびＡＥＳを含むが、それらに限定されない、多種多様な暗号化方法またはアルゴリズムが、本発明で使用するために好適であることが当業者に容易に明白である。
【０３０２】
従来の暗号化方法に優る、本発明のデータセキュリティ方法およびコンピュータシステムによって提供される主な利点がある。１つの利点は、異なる論理的、物理的、または地理的な場所にあり得る、１つ以上のデータ保管場所または記憶デバイス上の異なる場所にデータのシェアを移動させることから獲得される、セキュリティである。データのシェアは、物理的に分割されて異なる人員の制御の下にあり、例えば、データを損なうという可能性が大きく低減される。
【０３０３】
本発明の方法およびシステムによって提供される別の利点は、機密データのセキュリティを維持する包括的過程を提供するためのデータをセキュア化することに対する本発明の方法のステップの組み合わせである。データは、セキュアなキーで暗号化され、セキュアなキーに従って、１つ以上のシェア、一実施形態では４つのシェアに分割される。セキュアなキーは、セキュアなキーに従って４つのシェアの中へセキュア化される、参照ポインタを用いてセキュアに記憶される。次いで、データシェアは個別に暗号化され、キーは異なる暗号化されたシェアとともにセキュアに記憶される。組み合わせられると、本明細書で開示される方法に従ってデータをセキュア化するための過程全体が、データセキュリティのための包括的パッケージになる。
【０３０４】
本発明の方法に従ってセキュア化されるデータは、容易に回収可能であり、使用のためにその元の形態または他の好適な形態に回復され、再構成され、再構築され、復号され、または別様に戻される。元のデータを修復するためには、以下のアイテムが利用され得る。
【０３０５】
１．データセットの全てのシェアまたは部分。
【０３０６】
２．データをセキュア化するために使用される方法の過程フローを再現する知識および能力。
【０３０７】
３．セッションマスターキーへのアクセス。
【０３０８】
４．パーサマスターキーへのアクセス。
【０３０９】
したがって、上記の要素のうちの少なくとも１つが、（例えば、異なるシステム管理者の制御下にある）システムの残りの構成要素から物理的に分離され得る、セキュアなインストールを計画することが望ましいことがある。
【０３１０】
データセキュア化方法アプリケーションを起動する不正アプリケーションからの保護は、パーサマスターキーの使用によって実施され得る。セキュアなデータパーサとアプリケーションとの間の相互認証ハンドシェイクが、本発明のこの実施形態では、任意の措置が講じられる前に必要とされ得る。
【０３１１】
システムのセキュリティは、元のデータの再作成のための「バックドア」方法がないことを決定付ける。データ復旧問題が発生し得る場合のインストールについて、セキュアなデータパーサは、４つのシェアおよびセッションマスターキー保管場所のミラーを提供するように強化されることができる。ＲＡＩＤ（いくつかのディスクにわたって情報を広めるために使用される、安価なディスクの冗長アレイ）等のハードウェアオプションおよび複製等のソフトウェアオプションは、データ復旧計画も支援することができる。
【０３１２】
（キー管理）
本発明の一実施形態では、データセキュア化方法は、暗号化動作に３組のキーを使用する。各組のキーは、インストールに基づいて、個々のキー記憶、回収、セキュリティ、および復旧オプションを有し得る。使用され得るキーは、以下を含むが、それらに限定されない。
【０３１３】
（パーサマスターキー）
このキーは、セキュアなデータパーサのインストールに関連付けられる個別キーである。これは、セキュアなデータパーサが配備されているサーバ上にインストールされている。例えば、スマートカード、別個のハードウェアキー記憶、標準キー記憶、カスタムキー記憶、またはセキュア化されたデータベーステーブル内を含むが、それらに限定されない、このキーをセキュア化するために好適な種々のオプションがある。
【０３１４】
（セッションマスターキー）
セッションマスターキーは、データがセキュア化される度に生成され得る。セッションマスターキーは、解析および分割動作の前にデータを暗号化するために使用される。それはまた、暗号化されたデータを解析する手段として組み込まれ得る（セッションマスターキーが解析されたデータに組み込まれていない場合）。セッションマスターキーは、例えば、標準キー記憶、カスタムキー記憶、別個のデータベーステーブルを含むが、それらに限定されない種々の方式でセキュア化されるか、または暗号化されたシェア内にセキュア化され得る。
【０３１５】
（シェア暗号化キー）
作成されるデータセットの各シェアまたは部分について、シェアをさらに暗号化するように、個別シェア暗号化キーが生成され得る。シェア暗号化キーは、暗号化されたシェアとは異なるシェアに記憶され得る。
【０３１６】
本発明のデータセキュア化方法およびコンピュータシステムは、任意の設定または環境で任意の種類のデータに広く適用可能であることが、当業者に容易に明白である。インターネット上で、または顧客とベンダとの間で運営される商用アプリケーションに加えて、本発明のデータセキュア化方法およびコンピュータシステムは、非商用または私的設定または環境に高度に適用可能である。未承認ユーザから保護されることが所望されるデータセットが、本明細書で説明される方法およびシステムを使用してセキュア化され得る。例えば、企業または組織内の特定のデータベースへのアクセスは、データをセキュア化するための本発明の方法およびシステムを採用することによって、選択されたユーザのみに有利に制限され得る。別の実施例は、文書の生成、修正、またはアクセスであり、アクセスを制限すること、あるいは未承認または偶発的アクセス、もしくは選択された個人、コンピュータ、またはワークステーションのグループ外の開示を防止することが所望される。本発明のデータセキュア化の方法およびシステムが、任意の非商用または商用環境または設定に適用可能である、方法のこれらの実施例および他の実施例は、任意の組織、政府機関、または企業を含むがそれらに限定されない、任意の設定用である。
【０３１７】
本発明の別の実施形態では、データセキュア化方法は、暗号化動作に３組のキーを使用する。各組のキーは、インストールに基づいて、個々のキー記憶、回収、セキュリティ、および復旧オプションを有し得る。使用され得るキーは、以下を含むが、それらに限定されない。
【０３１８】
（１．パーサマスターキー）
このキーは、セキュアなデータパーサのインストールに関連付けられる個別キーである。これは、セキュアなデータパーサが配備されているサーバ上にインストールされている。例えば、スマートカード、別個のハードウェアキー記憶、標準キー記憶、カスタムキー記憶、またはセキュア化されたデータベーステーブル内を含むが、それらに限定されない、このキーをセキュア化するために好適な種々のオプションがある。
【０３１９】
（２．セッションマスターキー）
セッションマスターキーは、データがセキュア化される度に生成され得る。セッションマスターキーは、中間キーを導出するためのパーサマスターキーと併せて使用される。セッションマスターキーは、例えば、標準キー記憶、カスタムキー記憶、別個のデータベーステーブルを含むが、それらに限定されない種々の方式でセキュア化されるか、または暗号化されたシェア内にセキュア化され得る。
【０３２０】
（３．中間キー）
中間キーは、データがセキュア化される度に生成され得る。中間キーは、解析および分割動作の前にデータを暗号化するために使用される。それはまた、暗号化されたデータを解析する手段として組み込まれ得る。
【０３２１】
（４．シェア暗号化キー）
作成されるデータセットの各シェアまたは部分について、シェアをさらに暗号化するように、個別シェア暗号化キーが生成され得る。シェア暗号化キーは、暗号化されたシェアとは異なるシェアに記憶され得る。
【０３２２】
本発明のデータセキュア化方法およびコンピュータシステムは、任意の設定または環境で任意の種類のデータに広く適用可能であることが、当業者に容易に明白である。インターネット上で、または顧客とベンダとの間で運営される商用アプリケーションに加えて、本発明のデータセキュア化方法およびコンピュータシステムは、非商用または私的設定または環境に高度に適用可能である。未承認ユーザから保護されることが所望されるデータセットが、本明細書で説明される方法およびシステムを使用してセキュア化され得る。例えば、企業または組織内の特定のデータベースへのアクセスは、データをセキュア化するための本発明の方法およびシステムを採用することによって、選択されたユーザのみに有利に制限され得る。別の実施例は、文書の生成、修正、またはアクセスであり、アクセスを制限すること、あるいは未承認または偶発的アクセス、もしくは選択された個人、コンピュータ、またはワークステーションのグループ外の開示を防止することが所望される。本発明のデータセキュア化の方法およびシステムが、任意の非商用または商用環境または設定に適用可能である、方法のこれらの実施例および他の実施例は、任意の組織、政府機関、または企業を含むがそれらに限定されない、任意の設定用である。
【０３２３】
（ワークグループ、プロジェクト、個別ＰＣ／ラップトップ、またはクロスプラットフォームデータセキュリティ）
本発明のデータセキュア化方法およびコンピュータシステムはまた、例えば、企業、オフィス、政府機関、または機密データが作成、処理、または記憶される任意の設定で使用される、ワークグループ、プロジェクト、個別ＰＣ／ラップトップ、および任意の他のプラットフォームによってデータをセキュア化するのに有用である。本発明は、政府機関全体にわたって、あるいは州または連邦レベルでの政府間での実装のために、米国政府等の組織によって追求されていることが知られている、データをセキュア化する方法およびコンピュータシステムを提供する。
【０３２４】
本発明のデータセキュア化方法およびコンピュータシステムは、フラットファイルだけでなく、任意の種類のデータフィールド、セット、および／またはテーブルも解析および分割する能力を提供する。加えて、テキスト、ビデオ、画像、生体測定、および音声データを含むがそれらに限定されない、全ての形態のデータが、この過程の下でセキュア化されることが可能である。本発明のデータをセキュア化する方法の拡張性、速度、およびデー多スループットは、ユーザが自由に使える状態で有するハードウェアのみに限定される。
【０３２５】
本発明の一実施形態では、データセキュア化方法は、ワークグループ環境で、以下で説明されるように利用される。一実施形態では、図２３に示され、以下で説明されるように、本発明のワークグループスケールデータセキュア化方法は、ユーザ／グループ関係、およびユーザのグループがセキュアなデータを共有するために必要な関連秘密キー（パーサグループマスターキー）を記憶するために、信頼エンジンの秘密キー管理機能性を使用する。本発明の方法は、パーサマスターキーがどのように配備されたかに応じて、企業、ワークグループ、または個別ユーザのためにデータをセキュア化する能力を有する。
【０３２６】
一実施形態では、追加のキー管理およびユーザ／グループ管理プログラムが提供され得、運営およびキー管理の単一の点を伴う大規模ワークグループ実装を可能にする。キー生成、管理、および撤回は、単一の維持プログラムによって処理され、その全ては、ユーザの数が増加するにつれて特に重要になる。別の実施形態では、１つまたはいくつかの異なるシステム管理者にわたって設定され、キー管理はまた、いずれか１人の個人またはグループが必要に応じてデータを制御することを可能にしないことがある。これは、セキュア化されたデータの管理が、組織によって定義されるような役割、責務、会員資格、権利等によって得られることを可能にし、セキュア化されたデータへのアクセスは、自分が作業している部分のみへのアクセスでを有することを許可または要求される者のみに限定することができる一方で、マネージャまたは重役等の他者は、セキュア化されたデータの全てにアクセスを有し得る。この実施形態は、承認された所定の役割および責務を伴う者等の、ある選択された個人のみが、データを全体として観察することを可能にしながら、同時に、企業または組織内の異なるグループ間でのセキュア化されたデータの共有を可能にする。加えて、本発明の方法およびシステムのこの実施形態はまた、例えば、別個の企業、または企業の別個の部門あるいは課、または任意の別個の組織部門、グループ、機関、あるいはオフィス、または任意の政府あるいは組織あるいは任意の種類の同等物の間のデータの共有も可能にし、いくらかの共有が必要とされるが、いずれの当事者も全てのデータへのアクセスを有することを許可されない。本発明のそのような方法およびシステムに対する必要性および有用性の特に明白な実施例は、例えば、政府地域、機関、およびオフィス間で、ならびに大企業の異なる課、部門、またはオフィス間での共有を可能にするが、セキュリティを維持することである。
【０３２７】
より小規模での本発明の方法の適用性の実施例は、以下の通りである。パーサマスターキーが、組織へのセキュアなデータパーサのシリアライゼーションまたはブランディングとして使用される。パーサマスターキーの使用の規模が企業全体からより小さいワークグループに縮小されると、本明細書で説明されるデータセキュア化方法は、ユーザのグループ内でファイルを共有するために使用される。
【０３２８】
図２５に示され、以下で説明される実施例では、組織内の肩書または役割とともに定義される６人のユーザがいる。サイドバーは、ユーザが役割に従って属することができる、５つの可能なグループを表す。矢印は、グループのうちの１つ以上の中のユーザによる会員資格を表す。
【０３２９】
この実施例で使用するためにセキュアなデータパーサを構成する場合に、システム管理者は、維持プログラムによって、オペレーティングシステムからユーザおよびグループ情報にアクセスする。この維持プログラムは、パーサグループマスターキーを生成し、グループの中での会員資格に基づいてユーザに割り当てる。
【０３３０】
この実施例では、上級スタッフグループの中に３人のメンバーがいる。このグループについて、措置は以下のようになる。
【０３３１】
１．上級スタッフグループに対するパーサグループマスターキーにアクセスする（利用可能でない場合はキーを生成する）。
【０３３２】
２．ＣＥＯを上級スタッフグループに関連付けるデジタル証明書を生成する。
【０３３３】
３．ＣＦＯを上級スタッフグループに関連付けるデジタル証明書を生成する。
【０３３４】
４．マーケティング部長を上級スタッフグループに関連付けるデジタル証明書を生成する。
【０３３５】
同じ一式の措置が、各グループ、および各グループ内の各メンバーに行われる。維持プログラムが完了すると、パーサグループマスターキーは、グループの各メンバーに対する共有信任状になる。割り当てられたデジタル証明書の撤回は、ユーザが維持プログラムを通してグループから除去される場合に、グループの残りのメンバーに影響を及ぼすことなく、自動的に行われ得る。
【０３３６】
いったん共有信任状が定義されると、解析および分割過程は同じままになる。ファイル、文書、またはデータ要素がセキュア化される場合、ユーザは、標的グループがデータをセキュア化する場合に使用されるために促される。結果として生じるセキュア化されたデータは、標的グループの他のメンバーのみによってアクセス可能である。本発明の方法およびシステムのこの機能性は、任意の他のコンピュータシステムまたはソフトウェアプラットフォームとともに使用され得、例えば、既存のアプリケーションプログラムに組み込まれるか、またはファイルセキュリティのために独立して使用され得る。
【０３３７】
暗号化アルゴリズムのうちのいずれか１つまたは組み合わせが、本発明の方法およびシステムで使用するために好適であることが、当業者に容易に明白である。例えば、暗号化ステップは、一実施形態では、多層暗号化スキームを生成するように繰り返され得る。加えて、異なる暗号化アルゴリズムが、多層暗号化スキームの異なる層に適用されるように、異なる暗号化アルゴリズム、または暗号化アルゴリズムの組み合わせが、反復暗号化ステップで使用され得る。そのようなものとして、暗号化スキーム自体が、未承認の使用またはアクセスから機密データをセキュア化するための本発明の方法の構成要素になり得る。
【０３３８】
セキュアなデータパーサは、内部構成要素として、外部構成要素として、または両方として、エラーチェック構成要素を含み得る。例えば、１つの好適なアプローチでは、本発明によるセキュアなデータパーサを使用して、データの部分が作成されるにつれて、該部分内のデータの完全性を保証するために、ハッシュ値が該部分内で現在の間隔においてとられ、間隔の終わりに付加される。ハッシュ値は、データの予測可能かつ再現可能な数値表現である。データ内の任意のビットが変化した場合、ハッシュ値は異なる。次いで、（セキュアなデータパーサの外部の独立型構成要素として、または内部構成要素としての）走査モジュールが、セキュアなデータパーサによって生成されるデータ部分を走査し得る。各データ部分（または代替として、何らかの間隔に従った、またはランダムあるいは擬似ランダムサンプリングによる、全てよりも少ないデータ部分）は、１つまたは複数の付加されたハッシュ値と比較され、措置が講じられ得る。この措置は、合致する、および合致しない値の報告、合致しない値に対するアラート、またはデータの復旧を誘起する何らかの外部あるいは内部プログラムの起動を含み得る。例えば、データの復旧は、本発明に従って元のデータを生成するために、全てよりも少ない部分が必要とされ得るという概念に基づいて、復旧モジュールを起動することによって行うことができる。
【０３３９】
任意の他の好適な完全性チェックが、データ部分の全てまたは一部の中のどこかに付加された任意の好適な完全性情報を使用して、実装され得る。完全性情報は、データ部分の完全性を決定するために使用することができる、任意の好適な情報を含み得る。完全性情報の実施例は、任意の好適なパラメータに基づいて（例えば、それぞれのデータ部分に基づいて）計算されるハッシュ値、デジタル署名情報、メッセージ認証コード（ＭＡＣ）情報、任意の他の好適な情報、またなそれらの任意の組み合わせを含み得る。
【０３４０】
本発明のセキュアなデータパーサは、任意の好適な用途で使用され得る。すなわち、本明細書で説明されるセキュアなデータパーサは、計算および技術の異なる分野で種々の用途を有する。いくつかのそのような分野を以下で論議する。これらは本質的に例証的にすぎず、任意の他の好適な用途がセキュアなデータパーサを利用し得ることが理解されるであろう。さらに、説明される実施例は、任意の好適な所望を満たすために任意の好適な方法で修正され得る、例証的な実施形態にすぎないことが理解されるであろう。例えば、解析および分割は、ビットによって、バイトによる、キロバイトによる、メガバイトによる、それらの任意の組み合わせによる、または任意の他の好適な単位による等、任意の好適な単位に基づき得る。
【０３４１】
本発明のセキュアなデータパーサは、セキュアな物理的トークンを実装するために使用され得、それにより、物理的トークンに記憶されたデータは、別の記憶領域に記憶された追加のデータにアクセスするために必要とされ得る。１つの好適なアプローチでは、コンパクトＵＳＢフラッシュドライブ、フロッピー（登録商標）ディスク、光ディスク、スマートカード、または任意の他の好適な物理的トークン等の物理的トークンが、本発明に従って解析されたデータの少なくとも２つの部分のうちの１つを記憶するために使用され得る。元のデータにアクセスするために、ＵＳＢフラッシュドライブがアクセスされる必要がある。したがって、解析されたデータの一部分を保持するパーソナルコンピュータは、元のデータにアクセスできる前に、添付され、解析されたデータの他の部分を有する、ＵＳＢフラッシュドライブを有する必要がある。図２６は、この用途を図示する。記憶領域２５００は、解析されたデータの一部分２５０２を含む。解析されたデータの一部分２５０６を有する、物理的トークン２５０４は、元のデータにアクセスするために、任意の好適な通信インターフェース２５０８（例えば、ＵＳＢ、直列、並列、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＩＲ、ＩＥＥＥ  １３９４、Ｅｔｈｅｒｎｅｔ（登録商標）、または任意の他の好適な通信インターフェース）を使用して、記憶領域２５００に連結される必要がある。これは、例えば、コンピュータ上の機密データが放置され、未承認のアクセス試行の影響を受ける状況で有用である。物理的トークン（例えば、ＵＳＢフラッシュドライブ）を除去することによって、機密データはアクセス不可能である。物理的トークンを使用するための任意の他の好適なアプローチが使用され得ることが理解されるであろう。
【０３４２】
本発明のセキュアなデータパーサは、セキュアな認証システムを実装するために使用され得、それにより、セキュアなデータパーサを使用して、ユーザ登録データ（例えば、パスワード、秘密暗号化キー、指紋テンプレート、生体測定データ、または任意の他の好適なユーザ登録データ）が解析および分割される。ユーザ登録データは、解析および分割され得、それにより、１つ以上の部分が、スマートカード、政府共通アクセスカード、任意の好適な物理的記憶デバイス（例えば、磁気または光ディスク、ＵＳＢキードライブ等）、または任意の他の好適なデバイス上に記憶される。解析されたユーザ登録データの１つ以上の他の部分は、認証を行うシステムに記憶され得る。これは、セキュリティの追加レベルを認証過程に提供する（例えば、生体測定源から取得される生体測定認証情報に加えて、ユーザ登録データも、適切な解析および分割データ部分を介して取得されなければならない）。
【０３４３】
本発明のセキュアなデータパーサは、各システムのそれぞれの環境でその機能性の使用を提供するために、任意の好適な既存のシステムに組み込まれ得る。図２７は、任意の好適なアプリケーションを実装するためのソフトウェア、ハードウェア、または両方を含み得る、例証的システム２６００のブロック図を示す。システム２６００は、セキュアなデータパーサ２６０２が統合構成要素として据え付けられ得る、既存のシステムであり得る。代替として、セキュアなデータパーサ２６０２は、例えば、その初期設計段階から、任意の好適なシステム２６００に統合され得る。セキュアなデータパーサ２６００は、システム２６００の任意の好適なレベルで統合され得る。例えば、セキュアなデータパーサ２６０２の存在がシステム２６００のエンドユーザには実質的に透明であるように、セキュアなデータパーサ２６０２は、十分にバックエンドレベルでシステム２６００に統合され得る。セキュアなデータパーサ２６０２は、本発明に従って１つ以上の記憶デバイス２６０４の間でデータを解析および分割するために使用され得る。それに統合されたセキュアなデータパーサを有する、システムのいくつかの例証的な実施例を以下で論議する。
【０３４４】
本発明のセキュアなデータパーサは、オペレーティングシステムカーネル（例えば、Ｌｉｎｕｘ（登録商標）、Ｕｎｉｘ（登録商標）、または任意の他の好適な商用あるいは専用オペレーティングシステム）に統合され得る。この統合は、デバイスレベルでデータを保護するために使用され得、それにより、例えば、通常は１つ以上のデバイスに記憶されるデータが、オペレーティングシステムに統合されたセキュアなデータパーサによって、ある数の部分に分離され、１つ以上のデバイス間で記憶される。元のデータがアクセスされるように試行される場合、オペレーティングシステムに統合された適切なソフトウェアが、エンドユーザには透明であり得る方法で、解析されたデータ部分を元のデータに再結合し得る。
【０３４５】
本発明のセキュアなデータパーサは、任意または全てのサポートされたプラットフォームにわたって、ローカルおよびネットワーク接続されたデータ記憶装置を保護するように、記憶システムの容量マネージャまたは任意の他の好適な構成要素に統合され得る。例えば、セキュアなデータパーサが統合されると、記憶システムは、データ損失から保護するために、（すなわち、元のデータを再構成するために、全てよりも少ない分離されたデータ部分を必要とするという特徴を実装するために使用される）セキュアなデータパーサによって提供される冗長性を利用し得る。セキュアなデータパーサはまた、冗長性を使用するか否かにかかわらず、記憶デバイスに書き込まれた全てのデータが、本発明の解析に従って生成される複数の部分の形態となることを可能にする。元のデータがアクセスされるように試行される場合、記憶システムの容量マネージャまたは他の好適な構成要素に統合された適切なソフトウェアが、エンドユーザには透明であり得る方法で、解析されたデータ部分を元のデータに再結合し得る。
【０３４６】
１つの好適なアプローチでは、本発明のセキュアなデータパーサは、（ハードウェアまたはソフトウェアとして）ＲＡＩＤコントローラに統合され得る。これは、ドライブ故障の場合に耐故障性を維持しながら、複数のドライブへのデータのセキュアな記憶を可能にする。
【０３４７】
本発明のセキュアなデータパーサは、例えば、機密テーブル情報を保護するために、データベースに組み込まれ得る。例えば、１つの好適なアプローチでは、データベース特定のセルに関連付けられるデータ（例えば、個別セル、１つ以上の特定の縦列、１つ以上の特定の横列、それらの任意の組み合わせ、またはデータベーステーブル全体）が、本発明に従って解析および分離され得る（例えば、異なる部分が、１つ以上の場所における１つ以上の記憶デバイス上で、または単一の記憶デバイス上で記憶される）。元のデータを閲覧するために該部分を再結合するアクセスが、従来の認証方法（例えば、ユーザ名およびパスワードクエリ）によって許諾され得る。
【０３４８】
本発明のセキュアなデータパーサは、移動中のデータ（すなわち、１つの場所から別の場所へのデータの転送）を伴う任意の好適なシステムに組み込まれ得る。そのようなシステムは、例えば、Ｅメール、ストリーミングデータ放送、および無線（例えば、ＷｉＦｉ）通信を含む。Ｅメールに関して、１つの好適なアプローチでは、発信メッセージ（すなわち、テキスト、バイナリデータ、または両方（例えば、Ｅメールメッセージに添付されたファイル）を含む）を解析し、異なる経路に沿って解析されたデータの異なる部分を送信し、したがって、複数のデータのストリームを作成するために、セキュアなデータパーサが使用され得る。これらのデータのストリームのうちのいずれか１つが損なわれた場合、元のデータを生成するために、本発明に従って、該部分のうちの１つより多くの部分が組み合わせられることをシステムが要求し得るので、元のメッセージはセキュアなままである。別の好適なアプローチでは、データの異なる部分は、一部分が取得された場合に、元のデータを生成するのに十分でないことがあるように、連続的に１つの経路に沿って伝達され得る。異なる部分は、意図された受信者の場所に到達し、本発明に従って元のデータを生成するように組み合わせられ得る。
【０３４９】
図２８および２９は、そのようなＥメールシステムの例証的なブロック図である。図２８は、コンピュータ端末、パーソナルコンピュータ、手持ち式デバイス（例えば、ＰＤＡ、Ｂｌａｃｋｂｅｒｒｙ）、携帯電話、コンピュータネットワーク、任意の他の好適なハードウェア、またはそれらの任意の組み合わせ等の任意の好適なハードウェアを含み得る、送信者システム２７００を示す。送信者システム２７００は、例えば、Ｅメールメッセージ、バイナリデータファイル（例えば、グラフィック、音声、ビデオ等）、または両方であり得る、メッセージ２７０４を生成および／または記憶するために使用される。メッセージ２７０４は、本発明によるセキュアなデータパーサ２７０２によって解析および分割される。結果として生じたデータ部分は、ネットワーク２７０８（例えば、インターネット、イントラネット、ＬＡＮ、ＷｉＦｉ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、任意の他の好適な配線接続または無線通信手段、またはそれらの任意の組み合わせ）上で１つ以上の別個の通信経路２７０６にわたって受信者システム２７１０に伝達され得る。データ部分は、時間的に並行して、または代替として、異なるデータ部分の通信間の任意の好適な時間遅延に従って伝達され得る。受信者システム２７１０は、送信者システム２７００に関して上記で説明されるように、任意の好適なハードウェアであり得る。通信経路２７０６に沿って運ばれる別個のデータ部分は、本発明に従って元のメッセージまたはデータを生成するように、受信者システム２７１０において再結合される。
【０３５０】
図２９は、コンピュータ端末、パーソナルコンピュータ、手持ち式デバイス（例えば、ＰＤＡ）、携帯電話、コンピュータネットワーク、任意の他の好適なハードウェア、またはそれらの任意の組み合わせ等の任意の好適なハードウェアを含み得る、送信者システム２８００を示す。送信者システム２８００は、例えば、Ｅメールメッセージ、バイナリデータファイル（例えば、グラフィック、音声、ビデオ等）、または両方であり得る、メッセージ２８０４を生成および／または記憶するために使用される。メッセージ２８０４は、本発明によるセキュアなデータパーサ２８０２によって解析および分割される。結果として生じたデータ部分は、ネットワーク２８０８（例えば、インターネット、イントラネット、ＬＡＮ、ＷｉＦｉ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、任意の他の好適な通信手段、またはそれらの任意の組み合わせ）上で単一の通信経路２８０６にわたって受信者システム２８１０に伝達され得る。データ部分は、互に対して通信経路２８０６にわたって直列的に伝達され得る。受信者システム２８１０は、送信者システム２８００に関して上記で説明されるように、任意の好適なハードウェアであり得る。通信経路２８０６に沿って運ばれる別個のデータ部分は、本発明に従って元のメッセージまたはデータを生成するように、受信者システム２８１０において再結合される。
【０３５１】
図２８および２９の配置は例証的にすぎないことが理解される。任意の他の好適な配置が使用され得る。例えば、別の好適なアプローチでは、図２８および２９のシステムの特徴が組み合わせられ、それにより、図２８のマルチパスアプローチが使用され、通信経路２７０６のうちの１つ以上は、図２９との関連で通信経路２８０６が運ぶように、１つより多くのデータ部分を運ぶために使用され得る。
【０３５２】
セキュアなデータパーサは、移動中データシステムの任意の好適なレベルで統合され得る。例えば、Ｅメールシステムとの関連で、セキュアなデータパーサは、ユーザインターフェースレベルで（例えば、Ｍｉｃｒｏｓｏｆｔ（登録商標）  Ｏｕｔｌｏｏｋに）組み込まれ、その場合、ユーザは、Ｅメールを使用する場合にセキュアなデータパーサ特徴の使用を制御し得る。代替として、セキュアなデータパーサは、交換サーバ等のバックエンド構成要素で実装され、その場合、メッセージは、ユーザ介入を伴わずに、本発明に従って、自動的に解析され、分割され、異なる経路に沿って伝達され得る。
【０３５３】
同様に、データ（例えば、音声、ビデオ）のストリーミング放送の場合、発信データは、解析され、それぞれ解析されたデータ部分を含む複数のストリームに分離され得る。複数のストリームは、本発明に従って、１つ以上の経路に沿って伝送され、受信者の場所で再結合され得る。このアプローチの有益性のうちの１つは、単一の通信チャネル上の暗号化されたデータの伝送が後に続く、データの従来の暗号化に関連付けられる比較的大きいオーバーヘッドを回避することである。本発明のセキュアなデータパーサは、移動中のデータが複数の並列ストリームで送信されることを可能にし、速度および効率を増加させる。
【０３５４】
セキュアなデータパーサは、例えば、有線、無線、または物理的媒体を含む、任意の輸送媒体を通して、移動中の任意の種類のデータの保護および耐故障性のために統合され得ることが理解されるであろう。例えば、ボイスオーバーインターネットプロトコル（ＶｏＩＰ）アプリケーションが、本発明のセキュアなデータパーサを利用し得る。本発明のセキュアなデータパーサを使用して、ＢｌａｃｋｂｅｒｒｉｅｓおよびＳｍａｒｔＰｈｏｎｅｓ等の任意の好適な携帯情報端末（ＰＤＡ）デバイスに対する、またはそれらからの無線または有線データ輸送がセキュア化され得る。ピアツーピアおよびハブベースの無線ネットワークに無線８０２．１１プロトコルを使用した通信、衛星通信、ポイントツーポイント無線通信、インターネットクライアント／サーバ通信、または任意の他の好適な通信は、本発明に従って、セキュアなデータパーサの移動中データ能力を伴い得る。コンピュータ周辺デバイス（例えば、プリンタ、スキャナ、モニタ、キーボード、ネットワークルータ、生体測定認証デバイス（例えば、指紋スキャナ）、または任意の他の好適な周辺デバイス）の間、コンピュータとコンピュータ周辺デバイスとの間、コンピュータ周辺デバイスと任意の他の好適なデバイスとの間、またはそれらの任意の組み合わせでのデータ通信は、本発明の移動中データ特徴を利用し得る。
【０３５５】
本発明の移動中データ特徴はまた、例えば、別個のルート、媒介物、方法、任意の他の好適な物理的輸送、またはそれらの任意の組み合わせを使用して、セキュアなシェアの物理的輸送に適用され得る。例えば、データの物理的輸送は、デジタル／磁気テープ、フロッピー（登録商標）ディスク、光ディスク、物理的トークン、ＵＳＢドライブ、可撤性ハードドライブ、フラッシュメモリを伴う家庭用電子デバイス（例えば、Ａｐｐｌｅ  ＩＰＯＤまたは他のＭＰ３プレーヤ）、フラッシュメモリ、データを輸送するために使用される任意の他の好適な媒体、またはそれらの任意の組み合わせの上で行われ得る。
【０３５６】
本発明のセキュアなデータパーサは、障害復旧のための能力を伴うセキュリティを提供し得る。本発明によれば、セキュアなデータパーサによって生成される、分離されたデータの全てよりも少ない部分が、元のデータを回収するために必要であり得る。つまり、記憶されたｍ個の部分のうち、ｎは、元のデータを回収するために必要なこれらのｍ個の部分の最小数であり得、ｎ＜＝ｍである。例えば、４つの部分のそれぞれが、他の３つの部分に対して異なる物理的場所に記憶される場合、次いで、この実施例ではｎ＝２であれば、場所のうちの２つが損なわれる場合があり、それにより、データが破壊されるか、またはアクセス不可能であり、元のデータは、他の２つの場所の部分から依然として回収され得る。ｎまたはｍの任意の好適な値が使用され得る。    
【０３５７】
加えて、本発明のｍ個の特徴のうちのｎ個が、「２人規則」を作成するために使用され得、それにより、１人の個人または任意の他のエンティティに、機密データであり得るものへの完全なアクセスを信託することを回避し、元のデータを回収するためには、それぞれが本発明のセキュアなデータパーサによって解析された分離されたデータの一部分を有する２つ以上の明確に異なるエンティティが、それらの部分を一緒にすることに同意する必要があり得る。
【０３５８】
本発明のセキュアなデータパーサは、グループメンバーが、その特定のグループによってアクセスされるように承認された特定の情報にアクセスすることを可能にする、グループ全体のキーをエンティティのグループに提供するために使用され得る。グループキーは、例えば、求められた情報を回収するために、中央に記憶された別の部分と組み合わせられることを要求され得る、本発明によるセキュアなデータパーサによって生成されるデータ部分のうちの１つであり得る。この特徴は、例えば、グループ間のセキュアな協調を可能にする。それは、例えば、専用ネットワーク、仮想プライベートネットワーク、インスタンス、または任意の他の好適なネットワークで適用され得る。
【０３５９】
このセキュアなデータパーサの使用の具体的な用途は、（すなわち、現在使用されている、比較的実質的な手動過程を伴う多くのネットワークと比較して）例えば、単一のネットワークまたは二重ネットワーク上で各それぞれの国に対して承認されたセキュリティレベルにおいて、日常および機密データを伝達する能力が、多国籍友好政府軍に与えられる、連合情報共有を含む。この能力はまた、未承認の個人が情報を閲覧することを心配する必要なく、（組織内または外の）１人以上の特定の個人によって知られる必要がある情報が、単一のネットワーク上で伝達され得る、企業または他の組織にも適用可能である。
【０３６０】
別の具体的な用途は、政府システムに対するマルチレベルセキュリティ階層を含む。つまり、本発明のセキュアなデータパーサは、単一のネットワークを使用して、機密情報の異なるレベル（例えば、非機密、機密、秘密、極秘）で政府システムを操作する能力を提供し得る。所望であれば、より多くのネットワークが使用され得る（例えば、極秘には別個のネットワーク）が、本発明は、別個のネットワークが各分類レベルに使用される現在の配置よりも大幅に少ない配置を可能にする。  
【０３６１】
本発明のセキュアなデータパーサの上記の用途の任意の組み合わせが使用され得ることが、理解されるであろう。例えば、グループキー用途は、移動中データセキュリティ用途とともに使用することができる（すなわち、それにより、ネットワーク上で伝達されるデータは、それぞれのグループのメンバーのみによってアクセスすることができ、データが移動中である間に、本発明に従って複数の経路間で分割される（または順次部分で送信される）。
【０３６２】
本発明のセキュアなデータパーサは、アプリケーションの修正もデータベースの修正も伴わずに、アプリケーションが、異なるデータベース製品に、または異なるデバイスにデータをセキュアに記憶することを可能にするように、任意のミドルウェアアプリケーションに組み込まれ得る。ミドルウェアは、２つの別個かつ既存のプログラムが通信することを可能にする、任意の製品に対する一般用語である。例えば、１つの好適なアプローチでは、組み込まれたセキュアなデータパーサを有するミドルウェアは、特定のデータベースのために書き込まれたプログラムが、カスタムコーディングを伴わずに他のデータベースと通信することを可能にするために使用され得る。
【０３６３】
本発明のセキュアなデータパーサは、本明細書で論議されるもの等の任意の好適な能力の任意の組み合わせを有して実装され得る。本発明のいくつかの実施形態では、例えば、セキュアなデータパーサが、ある能力のみを有して実装され得る一方で、他の能力は、セキュアなデータパーサと直接または間接的にインターフェース接続される、外部ソフトウェア、ハードウェア、または両方の使用を通して得られ得る。
【０３６４】
図３０は、例えば、セキュアなデータパーサ３０００としてのセキュアなデータパーサの例証的な実装を示す。セキュアなデータパーサ３０００は、ごく少数の内蔵能力を伴って実装され得る。図示されるように、セキュアなデータパーサ３０００は、本発明によるモジュール３００２を使用して、データを解析し、データ部分（本明細書ではシェアとも呼ばれる）に分割する内蔵能力を含み得る。セキュアなデータパーサ３０００はまた、モジュール３００４を使用して、例えば、上記で説明されるｎ分のｍ特徴を実装することができるために、冗長性を実施する（すなわち、解析および分割されたデータの全てよりも少ないシェアを使用して、元のデータを再作成する）内蔵能力を含み得る。セキュアなデータパーサ３０００はまた、本発明に従って、遠隔場所への通信のため、記憶のため等にデータのシェアがそこから送信される、バッファの中へデータのシェアを配置するモジュール３００６を使用する、シェア分配能力を含み得る。任意の他の好適な能力がセキュアなデータパーサ３０００に組み込まれ得ることが、理解されるであろう。
【０３６５】
集約データバッファ３００８は、セキュアなデータパーサ３０００によって解析および分割される（必ずしもその元の形態ではないが）元のデータを記憶するために使用される、任意の好適なメモリであり得る。分割動作では、集約データバッファ３００８は、入力をセキュアなデータパーサ３００８に提供する。修復動作では、集約データバッファ３００８は、セキュアなデータパーサ３０００の出力を記憶するために使用され得る。
【０３６６】
分割シェアバッファ３０１０は、元のデータの解析および分割に起因したデータの複数のシェアを記憶するために使用され得る、１つ以上のメモリモジュールであり得る。分割動作では、分割シェアバッファ３０１０は、セキュアなデータパーサの出力を保持する。修復動作では、分割シェアバッファは、セキュアなデータパーサ３０００への入力を保持する。
【０３６７】
能力の任意の他の好適な配置が、セキュアなデータパーサ３０００のために内蔵され得ることが理解されるであろう。任意の追加の特徴が内蔵され得、図示された特徴のうちのいずれかは、除去され、よりロバストにされ、あまりロバストにされず、または任意の好適な方法で修正され得る。バッファ３００８および３０１０は、同様に例証的にすぎず、任意の好適な方法で修正、除去、または追加され得る。
【０３６８】
ソフトウェア、ハードウェア、または両方で実装される任意の好適なモジュールは、セキュアなデータパーサ３０００によって呼び出され得、またはセキュアなデータパーサ３０００を呼び出し得る。所望であれば、セキュアなデータパーサ３０００に内蔵される能力さえも、１つ以上の外部モジュールに置換され得る。図示されるように、いくつかの外部モジュールは、乱数発生器３０１２、暗号フィードバックキー発生器３０１４、ハッシュアルゴリズム３０１６、任意の１つ以上の種類の暗号化３０１８、およびキー管理３０２０を含む。これらは例証的な外部モジュールにすぎないことが理解されるであろう。図示されたものに加えて、またはそれらの代わりに、任意の他の好適なモジュールが使用され得る。
【０３６９】
暗号フィードバックキー発生器３０１４は、セキュアなデータパーサ３０００の外部で、各セキュアなデータパーサの動作のために、元のセッションキーサイズ（例えば、１２８、２５６、５１２、または１０２４ビットの値）を、解析および分割されるデータの長さに等しい値に拡張する動作のためのシード値として使用される、一意のキーまたは乱数（例えば、乱数発生器３０１２を使用して）を生成し得る。例えば、ＡＥＳ暗号フィードバックキー生成アルゴリズムを含む、任意の好適なアルゴリズムが、暗号フィードバックキー生成に使用され得る。
【０３７０】
アプリケーション層３０２４（例えば、Ｅメールアプリケーション、データベースアプリケーション等）へのセキュアなデータパーサ３０００およびその外部モジュール（すなわち、セキュアなデータパーサ層３０２６）の統合を促進するために、例えば、ＡＰＩ関数呼び出しを利用し得る、ラッピング層が使用され得る。アプリケーション層３０２４へのセキュアなデータパーサ層３０２６の統合を促進するための任意の他の好適な配置が使用され得る。
【０３７１】
図３１は、（例えば、記憶デバイスへの）書き込み、（例えば、データベースフィールドの中の）挿入、または（例えば、ネットワークにわたる）伝送のコマンドがアプリケーション層３０２４で発行される場合に、図３０の配置がどのように使用され得るかを例証的に示す。ステップ３１００では、セキュア化されるデータが識別され、セキュアなデータパーサへ呼び出しが行われる。呼び出しは、ラッパー層３０２２を通過させられ、ステップ３１０２では、ラッパー層３０２２が、ステップ３１００で識別された入力データを集約データバッファ３００８の中へ流す。また、ステップ３１０２では、任意の好適なシェア情報、ファイル名、任意の他の好適な情報、またはそれらの任意の組み合わせが記憶され得る（例えば、ラッパー層３０２２における情報３１０６として）。次いで、セキュアなデータプロセッサ３０００は、本発明に従って集約データバッファ３００８から入力として受け取る、データを解析および分割する。それは、分割シェアバッファ３０１０の中へデータシェアを出力する。ステップ３１０４では、ラッパー層３０２２が、記憶された情報３１０６から、（すなわち、ステップ３１０２でラッパー３０２２によって記憶された）任意の好適なシェア情報および（例えば、１つ以上の構成ファイルからの）シェア場所を取得する。次いで、ラッパー層３０２２は、（分割シェアバッファ３０１０から取得された）出力シェアを適切に書き込む（例えば、ネットワーク等の上へ伝達される１つ以上の記憶デバイスに書き込まれる）。
【０３７２】
図３２は、（例えば、記憶デバイスからの）読み出し、（例えば、データベースフィールドからの）選択、または（例えば、ネットワークからの）受信が発生する場合に、図３０の配置がどのように使用され得るかを例証的に示す。ステップ３２００では、修復されるデータが識別され、セキュアなデータパーサ３０００への呼び出しがアプリケーション層３０２４から行われる。ステップ３２０２では、ラッパー層３０２２から、任意の好適なシェア情報が取得され、シェア場所が決定される。ラッパー層３０２２は、ステップ３２００で識別されたデータ部分を、分割シェアバッファ３０１０の中へロードする。次いで、セキュアなデータパーサ３０００は、本発明に従ってこれらのシェアを処理する（例えば、４つのシェアのうちの３つのみが利用可能である場合には、３つだけのシェアを使用して元のデータを修復するために、セキュアなデータパーサ３０００の冗長性能力が使用され得る）。次いで、修復されたデータは、集約データバッファ３００８に記憶される。ステップ３２０４では、アプリケーション層３０２２が、（筆意用であれば）集約データバッファ３００８に記憶されたデータを、その元のデータ形式に変換し、その元の形式の元のデータをアプリケーション層３０２４に提供する。
【０３７３】
図３１に図示された元のデータの解析および分割、ならびに図３２に図示された元のデータへのデータ部分の修復は、例証的にすぎないことが理解されるであろう。図示されたものに加えて、またはそれらの代わりに、任意の他の好適な過程、構成要素、または両方が使用され得る。
【０３７４】
図３３は、本発明の一実施形態による、元のデータを解析し、２つ以上のデータ部分に分割するための例証的な過程フローのブロック図である。図示されるように、解析または分割されることを所望される元のデータは、プレーンテキスト３３０６である（すなわち、「ＳＵＭＭＩＴ」という言葉が実施例として使用される）。任意の種類のデータが本発明に従って解析および分割され得ることが理解されるであろう。セッションキー３３００が生成される。セッションキー３３００の長さが元のデータ３３０６の長さに適合しない場合には、暗号フィードバックセッションキー３３０４が生成され得る。
【０３７５】
１つの好適なアプローチでは、元のデータ３３０６は、解析、分割、または両方の前に暗号化され得る。例えば、図３３が図示するように、元のデータ３３０６は、任意の好適な値を用いて（例えば、暗号フィードバックセッションキー３３０４を用いて、または任意の他の好適な値を用いて）排他的論理和をとられ得る。図示されたＸＯＲ技法の代わりに、またはそれに加えて、任意の他の好適な暗号化技法が使用され得ることが理解されるであろう。図３３は、バイトごとの動作に関して図示されているが、動作は、ビットレベルで、または任意の他の好適なレベルで行われ得ることが、さらに理解されるであろう。さらに、所望であれば、どのようなものであれ、元のデータ３３０６の暗号化が全く存在する必要がないことが理解されるであろう。
【０３７６】
次いで、結果として生じた暗号化されたデータ（またはいずれの暗号化も行われなかった場合は元のデータ）は、出力バケット（例えば、図示された実施例では４つある）間で暗号化された（または元の）データをどのように分割するかを決定するように、ハッシュ値計算される。図示された実施例では、ハッシングは、バイトによって行われ、暗号フィードバックセッションキー３３０４の関数である。これは例証的にすぎないことが理解される。ハッシングは、所望であれば、ビットレベルで行われ得る。ハッシングは、暗号フィードバックセッションキー３３０４のほかに、任意の他の好適な値の関数であり得る。別の好適なアプローチでは、ハッシングは使用される必要がない。むしろ、データを分割するための任意の他の好適な技法が採用され得る。
【０３７７】
図３４は、本発明の一実施形態による、元のデータ３３０６の２つ以上の解析および分割された部分から元のデータ３３０６を修復するための例証的過程のブロック図である。過程は、暗号化された元のデータ（または解析および分割の前に暗号化がなかった場合は元のデータ）を修復するように、暗号フィードバックセッションキー３３０４の関数として（すなわち、図３３の過程とは）逆に該部分のハッシュ値を計算することを伴う。次いで、暗号化キーが、元のデータを修復するために使用され得る（すなわち、図示された実施例では、暗号フィードバックセッションキー３３０４が、それと暗号化されたデータとの排他的論理和をとることによってＸＯＲ暗号化を復号するために使用される）。これは元のデータ３３０６を修復する。
【０３７８】
図３５は、ビット分割がどのように図３３および３４の実施例で実装され得るかを示す。データの各バイトを分割するビット値を決定するために、ハッシュが使用され得る（例えば、暗号フィードバックセッションキーの関数として、任意の他の好適な値の関数として）。これは、ビットレベルで分割を実装する１つの例証的な方法にすぎないことが理解されるであろう。任意の他の好適な技法が使用され得る。
【０３７９】
本明細書で行われるハッシュ機能性への言及は、任意の好適なハッシュアルゴリズムに関して行われ得ることが理解されるであろう。これらは、例えば、ＭＤ５およびＳＨＡ−１を含む。異なるハッシュアルゴリズムが、異なる場合に、かつ本発明の異なる構成要素によって使用され得る。
【０３８０】
上記の例証的な手順に従って、または任意の他の手順あるいはアルゴリズムを通して、分割点が決定された後、どのデータ部分を左右のセグメントの各々に付加するかに関して決定が行われ得る。任意の好適なアルゴリズムが、この決定を行うために使用され得る。例えば、１つの好適なアプローチでは、（例えば、左セグメントおよび右セグメントに対する宛先の対合の形態で）全ての可能な分配のテーブルが作成され、それにより、生成され、元のデータのサイズまで拡張され得る、セッションキー、暗号フィードバックセッションキー、または任意の他の好適な乱数または擬似乱数値の中の対応するデータに任意の好適なハッシュ関数を使用することによって、左右のセグメントの各々に対する宛先シェア値が決定され得る。例えば、乱数または擬似乱数値の中の対応するバイトのハッシュ関数が作られ得る。ハッシュ関数の出力は、全ての宛先の組み合わせのテーブルから、どの宛先の対合を選択するか（すなわち、左のセグメントに１つ、および右のセグメントに１つ）を決定するために使用される。この結果に基づいて、分割されたデータ単位の各セグメントは、ハッシュ関数の結果として選択されるテーブル値によって示される、それぞれの２つのシェアに付加される。
【０３８１】
冗長性情報は、全てよりも少ないデータ部分を使用して、元のデータの修復を可能にするように、本発明に従ってデータ部分に付加され得る。例えば、４つの部分のうちの２つがデータの修復のために十分となるように所望される場合には、シェアからの追加のデータは、例えば、ラウンドロビン方式で、それに応じて各シェアに付加され得る（例えば、元のデータのサイズが４ＭＢである場合には、シェア１が自身のシェアならびにシェア２および３のシェアを得、シェア２が自身のシェアならびにシェア３および４のシェアを得、シェア３が自身のシェアならびにシェア４および１のシェアを得、シェア４が自身のシェアならびにシェア１および２のシェアを得る）。任意のそのような好適な冗長性が本発明に従って使用され得る。
【０３８２】
本発明に従って、元のデータセットからデータ部分を生成するために、任意の他の好適な解析および分割アプローチが使用され得ることが理解されるであろう。例えば、解析分割は、ビットごとに無作為または擬似無作為に処理され得る。乱数または擬似乱数値が使用され得（例えば、セッションキー、暗号フィードバックセッションキー等）、それにより、元のデータの中の各ビットについて、乱数または擬似乱数値の中の対応するデータに対するハッシュ関数の結果は、どのシェアにそれぞれのビットを付加するかを示し得る。１つの好適なアプローチでは、ハッシュ関数が、元のデータの各ビットに関する乱数または擬似欄数値の対応するバイトに対して行われ得るように、乱数または擬似欄数値は、元のデータのサイズの８倍として生成されるか、または８倍まで拡張され得る。ビットごとのレベルでデータを解析および分割するための任意の他の好適なアルゴリズムが、本発明に従って使用され得る。さらに、本発明に従って、例えば、直上で説明される方式等で、冗長性データがデータシェアに付加され得ることが理解されるであろう。
【０３８３】
１つの好適なアプローチでは、解析および分割は、無作為または擬似無作為である必要はない。むしろ、データを解析および分割するための任意の好適な決定論アルゴリズムが使用され得る。例えば、元のデータを順次シェアに細分化することが、解析および分割アルゴリズムとして採用され得る。別の実施例は、ラウンドロビン方式で連続的に各ビットをデータシェアに付加して、ビットごとに元のデータを解析および分割することである。さらに、本発明に従って、例えば、直上で説明される方式等で、冗長性データがデータシェアに付加され得ることが理解されるであろう。
【０３８４】
本発明の一実施形態では、セキュアなデータパーサが元のデータのいくつかの部分を生成した後に、元のデータを修復するために、生成された部分のうちのある１つ以上が必須であり得る。例えば、該部分のうちの１つが認証シェア（例えば、物理的トークンデバイス上に保存されている）として使用され、かつ、セキュアなデータパーサの耐故障性特徴が使用されている場合（すなわち、全てよりも少ない部分が元のデータを修復するために必要である）、たとえセキュアなデータパーサが、元のデータを修復するために元のデータの十分な数の部分へのアクセスを有し得る場合にも、元のデータを修復する前に物理的トークンデバイス上に記憶された認証シェアを必要とし得る。例えば、アプリケーション、データの種類、ユーザ、任意の他の好適な因子、またはそれらの任意の組み合わせに応じて、任意の数および種類の特定のシェアが必要とされ得ることが理解されるであろう。
【０３８５】
１つの好適なアプローチでは、セキュアなデータパーサまたはセキュアなデータパーサにとっての何らかの外部構成要素が、元のデータの１つ以上の部分を暗号化し得る。暗号化された部分は、元のデータを修復するために提供および複合されることを必要とされ得る。異なる暗号化された部分が、異なる暗号化キーで暗号化され得る。例えば、この特徴は、よりセキュアな「２人規則」を実装するために使用され得、それにより、第１のユーザは、第１の暗号化を使用して、特定のシェアを暗号化する必要があり、第２のユーザは、第２の暗号化キーを使用して、特定のシェアを暗号化する必要がある。元のデータにアクセスするために、両方のユーザは、それぞれの暗号化キーを有し、元のデータのそれぞれの部分を提供する必要がある。１つの好適なアプローチでは、元のデータを修復するために必要とされる必須シェアであり得る、１つ以上のデータ部分を暗号化するために、公開キーが使用され得る。次いで、元のデータに修復するために使用されるシェアを復号するために秘密キーが使用され得る。
【０３８６】
全てよりも少ないシェアが元のデータを修復するために必要とされる、必須シェアを利用する任意のそのような好適なパラダイムが使用され得る。
【０３８７】
本発明の１つの好適な実施形態では、統計的に、データの任意の特定のシェアがデータの特定の単位を受信する確率が、残りのシェアのうちの任意の１つが該データの単位を受信する確率に等しいように、データの有限数のシェアの中へのデータの分配が、無作為または擬似無作為に処理され得る。結果として、データの各シェアは、ほぼ等しい量のデータビットを有する。
【０３８８】
本発明の別の実施形態によれば、データの有限数のシェアの各々は、元のデータの解析および分割からデータの単位を受信する等しい確率を有する必要はない。むしろ、ある１つ以上のシェアが、残りのシェアよりも高いまたは低い確率を有し得る。結果として、あるシェアは、ビットサイズに関して、他のシェアに対してより大きいか、または小さいことがある。例えば、２つのシェアのシナリオでは、１つのシェアが、データの単位を受信する１％の確率を有し得る一方で、第２のシェアは、９９％の確率を有する。したがって、いったんデータ単位が２つのシェア間でセキュアなデータパーサによって分配されると、第１のシェアはデータの約１％を有し、第２のシェアは９９％を有するはずである。任意の好適な確率が、本発明に従って使用され得る。
【０３８９】
セキュアなデータパーサは、セキュアな（またはほぼセキュアな）パーセンテージに従ってデータをシェアに分配するようにプログラムされ得ることが理解されるであろう。例えば、セキュアなデータパーサは、データの８０％を第１のシェアに、データの残りの２０％を第２のシェアに分配するようにプログラムされ得る。
【０３９０】
本発明の別の実施形態によれば、セキュアなデータパーサは、データシェアを生成し得、そのうちの１つ以上は所定のサイズを有する。例えば、セキュアなデータパーサは、元のデータを、データ部分のうちの１つが正確に２５６ビットであるデータ部分に分割し得る。１つの好適なアプローチでは、必要サイズを有するデータ部分を生成することが可能ではない場合には、セキュアなデータパーサが、該部分を正しいサイズにするように水増しし得る。任意の好適なサイズが使用され得る。
【０３９１】
１つの好適なアプローチでは、データ部分のサイズは、暗号化キー、分割キー、任意の他の好適なキー、または任意の他の好適なデータ要素のサイズであり得る。
【０３９２】
以前に論議されたように、セキュアなデータパーサは、データの解析および分割においてキーを使用し得る。明確かつ簡略にする目的で、これらのキーは、本明細書では「分割キー」と呼ばれるものとする。例えば、以前に紹介されたセッションマスターキーは、一種の分割キーである。また、以前に論議されたように、分割キーは、セキュアなデータパーサによって生成されるデータのシェア内にセキュア化され得る。分割キーをセキュア化するための任意の好適なアルゴリズムが、データのシェア間でそれらをセキュア化するために使用され得る。例えば、Ｓｈａｍｉｒアルゴリズムが分割キーをセキュア化するために使用され得、それにより、分割キーを再構成するために使用され得る情報が生成され、データのシェアに付加される。任意の他のそのような好適なアルゴリズムが、本発明に従って使用され得る。
【０３９３】
同様に、任意の好適な暗号化キーが、Ｓｈａｍｉｒアルゴリズム等の任意の好適なアルゴリズムに従って、データの１つ以上のシェア内にセキュア化され得る。例えば、解析および分割前にデータセットを暗号化するために使用される暗号化キー、解析および分割後にデータ部分を暗号化するために使用される暗号化キー、または両方が、例えば、Ｓｈａｍｉｒアルゴリズムまたは任意の他の好適なアルゴリズムを使用してセキュア化され得る。
【０３９４】
本発明の一実施形態によれば、分割キー、暗号化キー、任意の他の好適なデータ要素、またはそれらの任意の組み合わせを変換することによって、データをさらにセキュア化するために、Ｆｕｌｌ  Ｐａｃｋａｇｅ  Ｔｒａｎｓｆｏｒｍ等のＡｌｌ  ｏｒ  Ｎｏｔｈｉｎｇ  Ｔｒａｎｓｆｏｒｍ（ＡｏＮＴ）が使用され得る。例えば、本発明に従って解析および分割前にデータセットを暗号化するために使用される暗号化キーは、ＡｏＮＴ  アルゴリズムによって変換され得る。次いで、変換された暗号化キーは、例えば、Ｓｈａｍｉｒアルゴリズムまたは任意の他の好適なアルゴリズムに従って、データシェア間で分配され得る。暗号化キーを再構成するためには、当業者に周知であるように、ＡｏＮＴに従った変換に関する必要な情報にアクセスするために、暗号化されたデータセットが修復されなければならない（例えば、冗長性が本発明に従って使用された場合、必ずしも全てのデータシェアを使用するとは限らない）。元の暗号化キーが回収されると、暗号化されたデータセットを復号して元のデータセットを回収するために使用され得る。本発明の耐故障性特徴は、ＡｏＮＴ特徴と併せて使用され得ることが理解されるであろう。すなわち、暗号化されたデータセットを修復するために、全てよりも少ないデータ部分が必要であるように、冗長性データがデータ部分に含まれ得る。
【０３９５】
解析および分割前のデータセットに対応する暗号化およびそれぞれの暗号化キーのＡｏＮＴの代わりに、またはそれに加えて、解析および分割後にデータ部分を暗号化するために使用される暗号化キーに、ＡｏＮＴが適用され得ることが理解されるであろう。同様に、ＡｏＮＴは、分割キーに適用され得る。
【０３９６】
本発明の一実施形態では、本発明に従って使用されるような暗号化キー、分割キー、または両方は、追加レベルのセキュリティをセキュア化されたデータセットに提供するために、例えば、ワークグループキーを使用して、さらに暗号化され得る。
【０３９７】
本発明の一実施形態では、セキュアなデータパーサがデータを分割するように起動される時はいつでも追跡する、オーディットモジュールが提供され得る。
【０３９８】
図３６は、本発明による、セキュアなデータパーサの構成要素を使用するための可能なオプション３６００を図示する。オプションの各組み合わせは、以下で概説され、図３６からの適切なステップ番号で標識される。セキュアなデータパーサは、本質的にモジュール式であり、任意の公知のアルゴリズムが図３６に示された機能ブロックのそれぞれの中で使用されることを可能にする。例えば、Ｂｌａｋｅｌｙ等の他のキー分割（例えば、秘密共有）アルゴリズムが、Ｓｈａｍｉｒの代わりに使用され得、またはＡＥＳ暗号化を、Ｔｒｉｐｌｅ  ＤＥＳ等の他の公知の暗号化アルゴリズムに置換することができる。図３６の実施例に示された標識は、本発明の一実施形態で使用するためのアルゴリズムの１つの可能な組み合わせを描写するにすぎない。任意の好適なアルゴリズムまたはアルゴリズムの組み合わせが、標識されたアルゴリズムの代わりに使用され得ることを理解されたい。
【０３９９】
１）３６１０、３６１２、３６１４、３６１５、３６１６、３６１７、３６１８、３６１９
ステップ３６１０で以前に暗号化されたデータを使用して、データは、最終的に所定数のシェアに分割され得る。分割アルゴリズムがキーを必要とする場合、暗号でセキュアな擬似乱数発生器を使用して、分割暗号化キーがステップ３６１２で生成され得る。分割暗号化キーは、随意で、ステップ３６１５で耐故障性を伴う所定数のシェアにキー分割される前に、Ａｌｌ  ｏｒ  Ｎｏｔｈｉｎｇ  Ｔｒａｎｓｆｏｒｍ（ＡｏＮＴ）を使用して、ステップ３６１４で変換分割キーに変換され得る。次いで、データは、ステップ３６１６で所定数のシェアに分割され得る。総数よりも少ないシェアからのデータの再生を可能にするために、耐故障スキームがステップ３６１７で使用され得る。いったんシェアが作成されると、認証／完全性情報がステップ３６１８でシェアに埋め込まれ得る。各シェアは、随意で、ステップ３６１９で事後暗号化され得る。
【０４００】
２）３１１１、３６１２、３６１４、３６１５、３６１６、３６１７、３６１８、３６１９
いくつかの実施形態では、ユーザまたは外部システムによって提供される暗号化キーを使用して、入力データが暗号化され得る。外部キーがステップ３６１１で提供される。例えば、キーは、外部キー記憶から提供され得る。分割アルゴリズムがキーを必要とする場合、暗号でセキュアな擬似乱数発生器を使用して、分割暗号化キーがステップ３６１２で生成され得る。分割キーは、随意で、ステップ３６１５で耐故障性を伴う所定数のシェアにキー分割される前に、Ａｌｌ  ｏｒ  Ｎｏｔｈｉｎｇ  Ｔｒａｎｓｆｏｒｍ（ＡｏＮＴ）を使用して、ステップ３６１４で変換分割暗号化キーに変換され得る。次いで、データは、ステップ３６１６で所定数のシェアに分割される。総数よりも少ないシェアからのデータの再生を可能にするために、耐故障スキームがステップ３６１７で使用され得る。いったんシェアが作成されると、認証／完全性情報がステップ３６１８でシェアに埋め込まれ得る。各シェアは、随意で、ステップ３６１９で事後暗号化され得る。
【０４０１】
３）３６１２、３６１３、３６１４、３６１５、３６１２、３６１４、３６１５、３６１６、３６１７、３６１８、３６１９
いくつかの実施形態では、データを変換するように、暗号でセキュアな擬似乱数発生器を使用して、暗号化キーがステップ３６１２で生成され得る。生成された暗号化キーを使用したデータの暗号化は、ステップ３６１３で発生し得る。暗号化キーは、随意で、Ａｌｌ  ｏｒ  Ｎｏｔｈｉｎｇ  Ｔｒａｎｓｆｏｒｍ（ＡｏＮＴ）を使用して、ステップ３６１４で変換暗号化キーに変換され得る。次いで、変換暗号化キーおよび／または生成された暗号化キーは、ステップ３６１５で耐故障性を伴う所定数のシェアに分割され得る。分割アルゴリズムがキーを必要とする場合、暗号でセキュアな擬似乱数発生器を使用した、分割暗号化キーの生成が、ステップ３６１２で発生し得る。分割キーは、随意で、ステップ３６１５で耐故障性を伴う所定数のシェアにキー分割される前に、Ａｌｌ  ｏｒ  Ｎｏｔｈｉｎｇ  Ｔｒａｎｓｆｏｒｍ（ＡｏＮＴ）を使用して、ステップ３６１４で変換分割暗号化キーに変換され得る。次いで、データは、ステップ３６１６で所定数のシェアに分割され得る。総数よりも少ないシェアからのデータの再生を可能にするために、耐故障スキームがステップ３６１７で使用され得る。いったんシェアが作成されると、認証／完全性情報がステップ３６１８でシェアに埋め込まれる。次いで、各シェアは、随意で、ステップ３６１９で事後暗号化され得る。
【０４０２】
４）３６１２、３６１４、３６１５、３６１６、３６１７、３６１８、３６１９
いくつかの実施形態では、データは、所定数のシェアに分割され得る。分割アルゴリズムがキーを必要とする場合、暗号でセキュアな擬似乱数発生器を使用した、分割暗号化キーの生成が、ステップ３６１２で発生し得る。分割キーは、随意で、ステップ３６１５で耐故障性を伴う所定数のシェアにキー分割される前に、Ａｌｌ  ｏｒ  Ｎｏｔｈｉｎｇ  Ｔｒａｎｓｆｏｒｍ（ＡｏＮＴ）を使用して、ステップ３６１４で変換分割キーに変換され得る。次いで、データは、ステップ３６１６で分割され得る。総数よりも少ないシェアからのデータの再生を可能にするために、耐故障スキームがステップ３６１７で使用され得る。いったんシェアが作成されると、認証／完全性情報がステップ３６１８でシェアに埋め込まれ得る。各シェアは、随意で、ステップ３６１９で事後暗号化され得る。
【０４０３】
オプションの上記の４つの組み合わせが、好ましくは本発明のいくつかの実施形態で使用されるが、特徴、ステップ、またはオプションの任意の他の好適な組み合わせが、他の実施形態でセキュアなデータパーサとともに使用され得る。
【０４０４】
セキュアなデータパーサは、物理的な分離を促進することによって、融通性のあるデータ保護を提供し得る。データは、最初に暗号化され、次いで、「Ｎ分のＭ」耐故障性を伴うシェアに分割され得る。これは、総数よりも少ないシェアが利用可能である時に元の情報の再生を可能にする。例えば、いくつかのシェアが、伝送中に損失または破損される場合がある。損失または破損したシェアは、以下でより詳細に論議されるように、シェアに付加された耐故障性または完全性情報から再作成され得る。
【０４０５】
シェアを作成するために、いくつかのキーが、随意で、セキュアなデータパーサによって利用される。これらのキーは、以下のうちの１つ以上を含み得る。
【０４０６】
事前暗号化キー：シェアの事前暗号化が選択されると、外部キーがセキュアなデータパーサに渡され得る。このキーは、生成されて外部でキー記憶（または他の場所）に記憶され得、随意で、データ分割前にデータを暗号化するために使用され得る。
【０４０７】
分割暗号化キー：このキーは、内部で生成され、分割前にデータを暗号化するためにセキュアなデータパーサによって使用され得る。次いで、このキーは、キー分割アルゴリズムを使用して、シェア内にセキュアに記憶され得る。
【０４０８】
分割セッションキー：このキーは、暗号化アルゴリズムとともに使用されない。むしろ、無作為分割が選択された場合に、データ区分化アルゴリズムに入力するために使用され得る。無作為分割が使用される場合に、分割セッションキーが内部で生成され、データをシェアに区分化するためにセキュアなデータパーサによって使用され得る。このキーは、キー分割アルゴリズムを使用して、シェア内にセキュアに記憶され得る。
【０４０９】
事後暗号化キー：シェアの事後暗号化が選択されると、外部キーがセキュアなデータパーサに渡され、個別シェアを事後暗号化するために使用され得る。このキーは、生成され、外部からキー記憶または他の好適な場所に記憶され得る。
【０４１０】
いくつかの実施形態では、このようにして、セキュアなデータパーサを使用してデータがセキュア化されると、必要なシェアおよび外部暗号化キーの全てが存在するならば、情報が再構築されるのみであり得る。
【０４１１】
図３７は、いくつかの実施形態で本発明のセキュアなデータパーサを使用するための例証的な概観過程３７００を示す。上記で説明されるように、セキュアなデータパーサ３７０６の２つの適切な機能は、暗号化３７０２およびバックアップ３７０４を含む。そのようなものとして、セキュアなデータパーサ３７０６は、いくつかの実施形態では、ＲＡＩＤまたはバックアップシステム、あるいはハードウェアまたはソフトウェア暗号化エンジンと一体化され得る。
【０４１２】
セキュアなデータパーサ３７０６に関連付けられる主要なキー過程は、事前暗号化過程３７０８、暗号化／変換過程３７１０、キーセキュア化過程３７１２、解析／分配過程３７１４、耐故障性過程３７１６、共有認証過程３７１６、および事後暗号化過程３７２０のうちの１つ以上を含み得る。これらの過程は、図３６で詳述されるように、いくつかの好適な順番または組み合わせで実行され得る。使用される過程の組み合わせおよび順番は、特定の用途または使用、所望されるセキュリティのレベル、随意的な事後暗号化、事後暗号化、または両方が所望されるかどうか、所望される冗長性、基礎または統合システムの能力または性能、あるいは任意の他の好適な因子または因子の組み合わせに依存し得る。
【０４１３】
例証的過程３７００の出力は、２つ以上のシェア３７２２であり得る。上記で説明されるように、いくつかの実施形態では、データは、無作為に（または擬似無作為に）これらのシェアのそれぞれに分配され得る。他の実施形態では、決定論アルゴリズム（または無作為、擬似無作為、および決定論アルゴリズムの何らかの好適な組み合わせ）が使用され得る。
【０４１４】
情報資産の個別保護に加えて、時には、関心のユーザまたはコミュニティの異なるグループ間で情報を共有する要件がある。次いで、そのユーザのグループ内の個別シェアへのアクセスを制御すること、またはグループのメンバーがシェアを再構築することのみを可能にする信任状を、これらのユーザ間で共有することが必要であり得る。この目的を達成するために、本発明のいくつかの実施形態では、ワークグループキーがグループメンバーに配備され得る。ワークグループキーのセキュリティ侵害が、グループ外部の者が情報にアクセスすることを潜在的に可能にする場合があるため、ワークグループキーは保護され、内密にされるべきである。ワークグループキーの配備および保護のためのいくつかのシステムおよび方法を以下で論議する。
【０４１５】
ワークグループキー概念は、シェア内に記憶されたキー情報を暗号化することによって、情報資産の強化された保護を可能にする。いったんこの動作が行われると、たとえ全ての必要なシェアおよび外部キーが発見されたとしても、ワークグループキーにアクセスすることなく、攻撃者が情報を再作成する望みはない。
【０４１６】
図３８は、シェア内にキーおよびデータ構成要素を記憶するための例証的なブロック図３８００を示す。略図３８００の実施例では、随意的な事前暗号化および事後暗号化ステップが省略されるが、これらのステップは他の実施形態に含まれ得る。
【０４１７】
データを分割するための簡略化した過程は、暗号化段階３８０２で暗号化キー３８０４を使用してデータを暗号化することを含む。次いで、暗号化キー３８０４の複数部分が、本発明に従って分割され、シェア３８１０内に記憶され得る。分割暗号化キー３８０６の複数部分もまた、シェア３８１０内に記憶され得る。次いで、分割暗号化キーを使用して、データ３８０８が分割され、シェア３８１０に記憶される。
【０４１８】
データを修復するために、分割暗号化キー３８０６が、本発明に従って回収され、修復され得る。次いで、分割動作は、暗号文を修復するように逆転され得る。暗号化キー３８０４も回収および修復され得、次いで、暗号化キーを使用して、暗号文が復号され得る。
【０４１９】
ワークグループキーが利用される場合に、上記の過程は、ワークグループキーで暗号化キーを保護するように、わずかに変更され得る。次いで、暗号化キーは、シェア内に記憶される前にワークグループキーで暗号化され得る。修正されたステップが、図３９の例証的なブロック図３９００に示されている。
【０４２０】
ワークグループキーを使用してデータを分割するための簡略化した過程は、段階３９０２で暗号化キーを使用して最初にデータを暗号化することを含む。次いで、暗号化キーは、段階３９０４においてワークグループキーで暗号化され得る。次いで、ワークグループキーで暗号化された暗号化キーは、複数部分に分割され、シェア３９１２に記憶され得る。分割キー３９０８もまた、分割され、シェア３９１２に記憶され得る。最終的に、分割キー３９０８を使用して、データ部分３９１０が分割され、シェア３９１２に記憶される。
【０４２１】
データを修復するために、分割キーが、本発明に従って回収され、修復され得る。次いで、分割動作は、本発明に従って、暗号文を修復するように逆転され得る。（ワークグループキーで暗号化された）暗号化キーが回収および修復され得る。次いで、ワークグループキーを使用して、暗号化キーが復号され得る。最終的に、暗号化キーを使用して、暗号文が復号され得る。
【０４２２】
ワークグループキーを配備し、保護するためのいくつかのセキュアな方法がある。特定の用途にどの方法を使用するかという選択は、いくつかの因子に依存する。これらの因子は、必要とされるセキュリティレベル、費用、利便性、およびワークグループの中のユーザの数を含み得る。いくつかの実施形態で使用される、いくつかの一般的に使用されている技法を以下に規定する。
【０４２３】
（ハードウェアベースのキー記憶）
ハードウェアベースのソリューションは、概して、暗号化システムにおける暗号化／復号キーのセキュリティの最強の保証を提供する。ハードウェアベースのキー記憶ソリューションの実施例は、携帯用デバイス（例えば、スマートカード／ドングル）または非携帯用キー記憶周辺機器にキーを記憶する、改ざん防止キートークンデバイスを含む。これらのデバイスは、未承認の当事者によるキー材料の容易な複製を防止するように設計されている。キーは、信頼できる機関によって生成されてユーザに分配され、またはハードウェア内で生成され得る。加えて、多くのキー記憶システムは、キーの使用が物理的オブジェクト（トークン）およびパスフレーズまたは生体測定の両方へのアクセスを必要とする、多因子認証を提供する。
【０４２４】
（ソフトウェアベースのキー記憶）
専用ハードウェアベースの記憶が、高セキュリティ配備または用途に望ましいことがある一方で、他の配備は、ローカルハードウェア（例えば、ディスク、ＲＡＭ、またはＵＳＢドライブ等の不揮発性ＲＡＭ記憶）の上に直接キーを記憶することを選択し得る。これは、内部攻撃者に対して、または攻撃者が暗号化マシンに直接アクセスすることができるインスタンスにおいて、より低いレベルの保護を提供する。
【０４２５】
ディスク上でキーをセキュア化するために、ソフトウェアベースのキー管理はしばしば、パスワードおよびパスフレーズ、（例えば、ハードウェアベースのソリューションからの）他のキーの存在、生体測定、または前述の内容の任意の好適な組み合わせを含む、他の認証測定基準の組み合わせから導出されるキーの下で、暗号化された形態でキーを記憶することによって、キーを保護する。そのような技法によって提供されるセキュリティのレベルは、いくつかのオペレーティングシステム（例えば、ＭＳ  Ｗｉｎｄｏｗｓ（登録商標）およびＬｉｎｕｘ（登録商標））によって提供される比較的弱いキー保護機構から、多因子認証を使用して実装されるよりロバストなソリューションまで及び得る。
【０４２６】
本発明のセキュアなデータパーサは、いくつかの用途および技術で有利に使用され得る。例えば、Ｅメールシステム、ＲＡＩＤシステム、ビデオ放送システム、データベースシステム、テープバックアップシステム、または任意の他の好適なシステムは、任意の好適なレベルで統合されたセキュアなデータパーサを有し得る。以前に論議されたように、セキュアなデータパーサはまた、例えば、有線、無線、または物理的媒体を含む、任意の輸送媒体を通して、移動中の任意の種類のデータの保護および耐故障性のために統合され得ることが理解されるであろう。一実施例として、ボイスオーバーインターネットプロトコル（ＶｏＩＰ）アプリケーションが、ＶｏＩＰで一般的に見られる反響および遅延に関する問題を解決するために、本発明のセキュアなデータパーサを利用し得る。ドロップされたパケットへのネットワーク再試行の必要性は、所定数のシェアの損失を伴ってさえパケット送達を保証する、耐故障性を使用することによって排除され得る。データのパケット（例えば、ネットワークパケット）はまた、最小限の遅延およびバッファリングを伴って、効率的に分割され、「オンザフライで」修復され得、移動中の種々の種類のデータに対する包括的ソリューションをもたらす。セキュアなデータパーサは、ネットワークデータパケット、ネットワークボイスパケット、ファイルシステムデータブロック、または情報の任意の他の好適な単位に作用し得る。ＶｏＩＰアプリケーションと一体化することに加えて、セキュアなデータパーサは、ファイル共有アプリケーション（例えば、ピアツーピアファイル共有アプリケーション）、ビデオ放送アプリケーション、電子投票またはポーリングアプリケーション（Ｓｅｎｓｕｓプロトコル等の電子投票プロトコルおよびブラインド署名を実装し得る）、Ｅメールアプリケーション、あるいはセキュアな通信を要求または所望し得る任意の他のネットワークアプリケーションと一体化し得る。
【０４２７】
いくつかの実施形態では、移動中のネットワークデータに対する支援は、ヘッダ生成段階およびデータ区分化段階といった、２つの明確に異なる段階で、本発明のセキュアなデータパーサによって提供され得る。簡略化したヘッダ生成過程４０００および簡略化したデータ区分化過程４０１０が、それぞれ、図４０Ａおよび４０Ｂに示されている。これらの過程の一方または両方は、ネットワークパケット、ファイルシステムブロック、または任意の他の好適な情報に行われ得る。
【０４２８】
いくつかの実施形態では、ヘッダ生成過程４０００は、ネットワークパケットストリームの開始時に１回行われ得る。ステップ４００２では、無作為（または擬似無作為）な分割暗号化キーＫが生成され得る。次いで、分割暗号化キーＫは、随意で、ＡＥＳキーラップステップ４００４で（例えば、上記で説明されるワークグループキーを使用して）暗号化され得る。ＡＥＳキーラップがいくつかの実施形態で使用され得るが、任意の好適なキー暗号化またはキーラップアルゴリズムが他の実施形態で使用され得る。ＡＥＳキーラップステップ４００４は、分割暗号化キーＫ全体に作用し得、または分割暗号化キーは、いくつかのブロック（例えば、６４ビットブロック）に解析され得る。次いで、ＡＥＳキーラップステップ４００４は、所望であれば、分割暗号化キーのブロックに作用し得る。
【０４２９】
ステップ４００６では、分割暗号化キーＫをキーシェアに分割するために、秘密共有アルゴリズム（例えば、Ｓｈａｍｉｒ）が使用され得る。次いで、各キーシェアは、（例えば、シェアヘッダの中の）出力シェアのうちの１つに埋め込まれ得る。最終的に、シェア完全性ブロックおよび（随意で）事後認証タグ（例えば、ＭＡＣ）が、各シェアのヘッダブロックに付加され得る。各ヘッダブロックは、単一のデータパケット内に適合するように設計され得る。
【０４３０】
（例えば、簡略化したヘッダ生成過程４０００を使用して）ヘッダ生成が完了した後に、セキュアなデータパーサは、簡略化したデータ分割過程４０１０を使用して、データ区分化段階に入り得る。ストリームの中の各着信データパケットまたはデータブロックは、ステップ４０１２で分割暗号化キーＫを使用して暗号化される。ステップ４０１４では、シェア完全性情報（例えば、ハッシュＨ）が、ステップ４０１２からの結果として生じる暗号文で計算され得る。例えば、ＳＨＡ−２５６ハッシュが計算され得る。ステップ４１０６では、次いで、データパケットまたはデータブロックが、本発明に従って上記で説明されるデータ分割アルゴリズムのうちの１つを使用して、２つ以上のデータシェアに区分化され得る。いくつかの実施形態では、データパケットまたはデータブロックは、各データシェアが暗号化されたデータパケットまたはデータブロックの実質的に無作為な分配を含むように、分割され得る。次いで、完全性情報（例えば、ハッシュＨ）は、各データシェアに付加され得る。いくつかの実施形態では、随意的な事後認証タグ（例えば、ＭＡＣ）も計算され、各データシェアに付加され得る。
【０４３１】
各データシェアは、データブロックまたはデータパケットの正しい再構成を可能にするために必要であり得る、メタデータを含み得る。この情報は、シェアヘッダに含まれ得る。メタデータは、暗号キーシェア、キー同一性、シェアノンス、署名／ＭＡＣ値、および完全性ブロック等の情報を含み得る。帯域幅の効率性を最大限化するために、メタデータはコンパクトバイナリ形式で記憶され得る。
【０４３２】
例えば、いくつかの実施形態では、シェアヘッダは、暗号化されず、Ｓｈａｍｉｒキーシェア、セッションごとのノンス、シェアごとのノンス、キー識別子（例えば、ワークグループキー識別子および事後承認キー識別子）等の要素を含み得る、平文ヘッダチャンクを含む。シェアヘッダはまた、分割暗号化キーで暗号化される、暗号化されたヘッダチャンクを含み得る。任意の数の以前のブロック（例えば、以前の２つのブロック）の完全性チェックを含み得る、完全性ヘッダチャンクも、ヘッダに含まれ得る。任意の他の好適な値または情報も、シェアヘッダに含まれ得る。
【０４３３】
図４１の例証的なシェア形式４１００で示されるように、ヘッダブロック４１０２は、２つ以上の出力ブロック４１０４に関連付けられ得る。ヘッダブロック４１０２等の各ヘッダブロックは、単一のネットワークデータパケット内に適合するように設計され得る。いくつかの実施形態では、ヘッダブロック４１０２が第１の場所から第２の場所へ伝送された後に、次いで、出力ブロックが伝送され得る。代替として、ヘッダブロック４１０２および出力ブロック４１０４が、同時に並行して伝送され得る。伝送は、１つ以上の同種または異種の通信経路上で発生し得る。
【０４３４】
各出力ブロックは、データ部分４１０６および完全性／真正性部分４１０８を含み得る。上記で説明されるように、各データシェアは、暗号化された事前区分化データのシェア完全性情報（例えば、ＳＨＡ−２５６ハッシュ）を含む、シェア完全性部分を使用してセキュア化され得る。復旧時間における出力ブロックの完全性を検証するために、セキュアなデータパーサは、各シェアのシェア完全性ブロックを比較し、次いで、分割アルゴリズムを反転させ得る。次いで、復旧したデータのハッシュは、シェアハッシュに対して検証され得る。
【０４３５】
前述のように、本発明のいくつかの実施形態では、セキュアなデータパーサは、テープバックアップシステムと併せて使用され得る。例えば、個別テープが、本発明に従って、ノード（すなわち、部分／シェア）として使用され得る。任意の他の好適な配置が使用され得る。例えば、２つ以上のテープで構成されている、テープライブラリまたはサブシステムが、単一のノードとして取り扱われ得る。
【０４３６】
冗長性も、本発明に従ってテープとともに使用され得る。例えば、データセットが４つのテープ（すなわち、部分／シェア）の間で割り振られる場合には、４つのテープのうちの２つが元のデータを修復するために必要であり得る。本発明の冗長性特徴に従って元のデータを修復するために、任意の好適な数のノード（すなわち、総数よりも少ないノード）が必要とされ得ることが理解されるであろう。これは、１つ以上のテープが満了した場合に修復の確率を大幅に増加させる。
【０４３７】
各テープはまた、改ざんに対して保険をかけるように、ハッシュＡ−２５６、ＨＭＡＣハッシュ値、任意の他の好適な値、またはそれらの任意の組み合わせを用いてデジタルで保護され得る。テープ上の任意のデータまたはハッシュ値が変化した場合、そのテープは、修復の候補にはならず、データを修復するために、残りのテープのうちの任意の最小必要数のテープが使用される。
【０４３８】
従来のテープバックアップシステムでは、ユーザが、データがテープに書き込まれること、またはテープから読み出されることを要求すると、テープ管理システム（ＴＭＳ）は、物理的テープマウントに対応する数を提示する。このテープマウントは、データが載置される物理的ドライブを指し示す。テープは、人間のテープ操作者によって、またはテープサイロの中のテープロボットによってロードされる。
【０４３９】
本発明の下で、物理的テープマウントは、いくつかの物理的テープを指し示す、論理的マウントポイントと見なされ得る。これは、データ容量を増加させるだけでなく、並列性により性能も向上させる。
【０４４０】
増大した性能のために、テープノードは、テープイメージを記憶するために使用されるディスクのＲＡＩＤアレイであり得、またはそれを含み得る。これは、データが保護されたＲＡＩＤにおいて常に利用可能であり得るため、高速修復を可能にする。
【０４４１】
前述の実施形態のうちのいずれかでは、保護されるデータは、決定論的、確率論的、または決定論的および確率論的両方のデータ分配技法を使用して、複数のシェアに分配され得る。攻撃者が任意の暗号ブロックへの秘密攻撃を開始するのを防止するために、暗号ブロックからのビットは、決定論的にシェアに分配され得る。例えば、分配は、ＢｉｔＳｅｇｍｅｎｔルーチンを使用して行われ得、または複数のシェアへのブロック部分の分配を可能にするようにＢｌｏｃｋＳｅｇｍｅｎｔルーチンが修正され得る。この方法は、「Ｍ」個よりも少ないシェアを蓄積した攻撃者に対して防衛し得る。
【０４４２】
いくつかの実施形態では、キー式（ｋｅｙｅｄ）情報分散を使用して（例えば、キー式情報分散アルゴリズムまたは「ＩＤＡ」を通して）、キー式秘密共有ルーチンが採用され得る。キー式ＩＤＡ用のキーはまた、１つ以上の外部ワークグループキー、１つ以上の共有キー、またはワークグループキーおよび共有キーの任意の組み合わせによって保護され得る。このようにして、多因子秘密共有スキームが採用され得る。データを再構成するために、いくつかの実施形態では、少なくとも「Ｍ」個のシェアならびにワークグループキー（および／または共有キー）が必要とされ得る。ＩＤＡ（またはＩＤＡ用のキー）はまた、暗号化過程に組み入れられ得る。例えば、（例えば、暗号化する前の事前処理層中に）変換が平文に組み入れられ得、さらに、暗号化される前に平文を保護し得る。
【０４４３】
例えば、いくつかの実施形態では、データセットからのデータの一意の部分を２つ以上のシェアの中へ分配するために、キー式情報分散が使用される。キー式情報分散は、最初にデータセットを暗号化して、データセットからの暗号化されたデータの一意の部分を２つ以上の暗号化されたデータセットシェアの中へ分配するために、またはデータセットを暗号化するとともに、データセットからの暗号化されたデータの一意の部分を２つ以上の暗号化されたデータセットシェアの中へ分配するために、セッションキーを使用し得る。例えば、データセットまたは暗号化されたデータセットの一意の部分を分配するために、秘密共有（またはＢｉｔＳｅｇｍｅｎｔあるいはＢｌｏｃｋＳｅｇｍｅｎｔ等の上記で説明される方法）が使用され得る。次いで、セッションキーは、随意で、（例えば、フルパッケージ変換またはＡｏＮＴ）を使用して変換され、例えば、秘密共有（またはキー式情報分散およびセッションキー）を使用して共有され得る。
【０４４４】
いくつかの実施形態では、キーの一意の部分が２つ以上のセッションキーシェアの中へ分配または共有される前に、共有キー（例えば、ワークグループキー）を使用してセッションキーが暗号化され得る。次いで、２つ以上のユーザシェアが、少なくとも１つの暗号化されたデータセットシェアおよび少なくとも１つのセッションキーシェアを組み合わせることによって形成され得る。ユーザシェアを形成する際に、いくつかの実施形態では、少なくとも１つのセッションキーシェアが、暗号化されたデータセットシェアの中へ差し込まれ得る。他の実施形態では、少なくとも部分的に共有ワークグループキーに基づく場所において、少なくとも１つのセッションキーシェアが、暗号化されたセータセットシェアに挿入され得る。例えば、各セッションキーシェアを一意の暗号化されたデータセットシェアの中へ分配してユーザシェアを形成するために、キー式情報分散が使用され得る。少なくとも部分的に共有ワークグループキーに基づく場所において、セッションキーシェアを、暗号化されたセータセットシェアの中へ差し込むことまたは挿入することは、暗号攻撃に直面して増大したセキュリティを提供し得る。他の実施形態では、ユーザシェアを形成するように、１つ以上のセッションキーシェアが暗号化されたデータセットの初めまたは終わりに付加され得る。次いで、ユーザシェアの集合が、少なくとも１つのデータ保管場所上で別々に記憶され得る。１つまたは複数のデータ保管場所は、（例えば、同じ磁気またはテープ記憶デバイス上の）同じ物理的な場所に位置するか、または（例えば、異なる地理的な場所の物理的に分離されたサーバ上で）地理的に分離され得る。元のデータセットを再構成するために、承認された一式のユーザシェアおよび共有ワークグループキーが必要とされ得る。
【０４４５】
キー式情報分散は、キー回収オラクルに直面してもセキュアであり得る。例えば、ブロック暗号Ｅと、ブロック暗号への入出力ペアのリスト（Ｘ１，Ｙ１），．．．，（Ｘｃ，Ｙｃ）を得るＥのキー回収オラクルとを取り込み、入出力例（例えば、全てのｉについてのＹｉ＝ＥＫ（Ｘｉ））と一致するキーＫを戻す。オラクルは、一致するキーがなければ区別された値⊥を返信し得る。このオラクルは、入出力例のリストからキーを回復し得る、暗号解読攻撃をモデル化し得る。
【０４４６】
標準ブロック暗号ベースのスキームは、キー回収オラクルの存在下で失敗する場合がある。例えば、ＣＢＣ暗号化またはＣＢＣ  ＭＡＣは、キー回収オラクルの存在下で完全に非セキュアになる場合がある。
【０４４７】
ΠＩＤＡがＩＤＡスキームであり、ΠＥｎｃが何らかのブロック暗号Ｅの動作モードによって与えられる暗号化スキームである場合には、（ΠＩＤＡ，ΠＥｎｃ）は、２つのスキームが、ＨＫ１またはＨＫ２に従って恣意的な完全秘密共有スキーム（ＰＳＳ）と組み合わせられた場合に、ロバストな計算秘密共有（ＲＣＳＳ）目標を達成するならば、キー回収攻撃に直面してセキュリティを提供するが、敵がキー回収オラクルを有するモデルにおいてはセキュリティを提供しない。
【０４４８】
１対のスキームがキー回収攻撃に直面してセキュリティを提供するように、ＩＤＡスキームΠＩＤＡおよび暗号化スキームΠＥｎｃが存在する場合には、この１対を達成する１つの方法は、「賢明な」ＩＤＡおよび「能力のない」暗号化スキームを有することであり得る。この１対のスキームを達成する別の方法は、「能力のない」ＩＤＡおよび「賢明な」暗号化スキームを有することであり得る。
【０４４９】
賢明なＩＤＡおよび能力のない暗号化スキームの使用を例証するために、いくつかの実施形態では、暗号化スキームはＣＢＣであり、ＩＤＡは「弱いプライバシー」特性を有し得る。弱いプライバシー特性とは、例えば、ＩＤＡへの入力がブロックＭ＝Ｍ１．．．Ｍｌという無作為な順序であり、敵が未承認の集合からシェアを得る場合には、敵がＭｉを計算することが実行不可能であるように、何らかのブロック指数ｉがあることを意味する。そのような弱プライバシーのＩＤＡは、最初に、ＳｔｉｎｓｏｎのＡｏＮＴ等の情報論理的なＡｏＮＴにＭを適用し、次いで、ＢｌｏｃｋＳｅｇｍｅｎｔ等の単純ＩＤＡまたはＲａｂｉｎのスキーム（例えば、Ｒｅｅｄ−Ｓｏｌｏｍｏｎ符号化）のようなビット効率的ＩＤＡを適用することによって構築され得る。
【０４５０】
能力のないＩＤＡおよび賢明な暗号化スキームの使用を例証するために、いくつかの実施形態では、単一暗号化の代わりに二重暗号化とともにＣＢＣモードを使用し得る。ここで、任意のＩＤＡが使用され得、複製でさえ使用され得る。敵がどんな単独で暗号化された入出力例も拒否されるため、ブロック暗号に対するキー回収オラクルを有することは、敵にとって役に立たない。
【０４５１】
賢明なＩＤＡは、価値を有するが、キー回収攻撃に直面してセキュリティを提供するために必要とされる「知能」が他の場所へ「押しやられる」可能性があるという意味で、いくつかの状況では不必要であり得る。例えば、いくつかの実施形態では、ＩＤＡがどれだけ高性能であろうと、どのような目標がＨＫ１／ＨＫ２との関連でＩＤＡを用いて達成されようとしていても、知能は、ＩＤＡから押し出されて暗号化スキームに押し込まれてもよく、固定された能力のないＩＤＡとともに残され得る。
【０４５２】
上記に基づいて、いくつかの実施形態では、「普遍的に健全な」賢明なＩＤＡΠＩＤＡが使用され得る。例えば、全ての暗号化スキームΠＥｎｃについて、対の（ΠＩＤＡ，ΠＥｎｃ）がキー回収攻撃に直面してセキュリティを提供するように、ＩＤＡが提供される。
【０４５３】
いくつかの実施形態では、キー回収オラクルに直面してＲＣＳＳセキュアである、暗号化スキームが提供される。スキームは、キー回収に直面してセキュリティを達成するように、任意のＩＤＡを伴ってＨＫ１／ＨＫ２と一体化され得る。新しいスキームを使用することは、例えば、キー回収攻撃に対して対称暗号化スキームをよりセキュアにするために、特に有用であり得る。
【０４５４】
上述のように、古典的な秘密共有概念は、典型的にはキーがない。したがって、任意の種類の対称または非対称キーを保持するために、秘密を再構成するディーラも当事者も必要としない方法で、秘密がシェアに細分化されるか、またはシェアから再構成されている。しかしながら、本明細書で説明されるセキュアなデータパーサは、随意で、キー式である。ディーラは、データ共有に使用された場合、データ復旧に必要であり得る、対称キーを提供し得る。セキュアなデータパーサは、セキュア化されるメッセージの一意の部分を２つ以上のシェアに分散または分配するために、対称キーを使用し得る。
【０４５５】
共有キーは、多因子または２因子秘密共有（２ＦＳＳ）を有効にし得る。次いで、敵は、セキュリティ機構を破壊するために、２つの基本的に異なる種類のセキュリティを通してナビゲートすることを必要とされ得る。例えば、秘密共有目標に違反するために、敵は、（１）一式の承認されたプレーヤのシェアを取得する必要があり得、（２）取得することが可能であるはずのない秘密キーを取得する（またはそのキーによって入力されている暗号機構を破壊する）必要があり得る。
【０４５６】
いくつかの実施形態では、新しい一式の追加の要件がＲＣＳＳ目標に追加される。追加の要件は、「第２の因子」であるキー所有を含み得る。これらの追加の要件は、元の一式の要件を軽減することなく追加され得る。一式の要件は、秘密キーを知っているが、十分なシェアを取得しない場合に、敵がスキームを破壊できないことに関し得る（例えば、古典的な、または第１因子要件）一方で、他方の一式の要件は、秘密キーを持たないが、何とかシェアの全てを入手する場合に、敵がスキームを破壊できないことに関し得る（例えば、新しい、または第２因子要件）。
【０４５７】
いくつかの実施形態では、プライバシー要件および真正性要件といった、２つの第２因子要件があり得る。プライバシー要件では、秘密キーＫおよびビットｂが環境によって選択される、方法が関与し得る。ここで、敵は、秘密共有スキームのドメインで、Ｍ１０およびＭ１１といった１対の等長メッセージを供給する。環境は、Ｍ１ｂのシェアを計算し、シェアのべクトルＳ１＝（Ｓ１［１］，．．．，Ｓ１［ｎ］）を得て、シェアＳ１（それらの全て）を敵に与える。ここで、敵は、別の１対のメッセージ（Ｍ２０，Ｍ２１）を選択し得、同じキーＫおよび隠されたビットｂを使用して、全てが前のように進む。敵の仕事は、ｂであると考えるビットｂ’を出力することである。敵のプライバシー利点は、ｂ＝ｂ’という確率の２倍未満のものである。この方法は、全てのシェアを習得しても、秘密キーが欠けていれば、敵が依然として共有秘密について何も習得できないという概念を捕らえる。
【０４５８】
真正性要件では、環境が秘密キーＫを選択し、これを共有（Ｓｈａｒｅ）および回復（Ｒｅｃｏｖｅｒ）への後続の呼び出しで使用する、方法が関与し得る。共有および回復は、いくつかの実施形態では、このキーの存在を反映するように、それらの構文を修正させ得る。次いで、敵は、秘密共有スキームのドメインで選択する、あらゆるメッセージＭ１，．．．，ＭｑのＳｈａｒｅ要求を行う。各共有要求に応じて、敵は、シェアの対応するｎベクトルＳ１，．．．，Ｓｑを得る。敵の目的は、新しい平文を築くことであり、回復アルゴリズムに供給された場合に、｛Ｍ１，．．．，Ｍｑ｝にはないものをもたらすように、シェアのベクトルＳ’を出力した場合に成功する。これは、「平文の完全性」概念である。
【０４５９】
多因子秘密共有を達成するための２つのアプローチがある。第１は、ブラックボックス方法で基礎的な（Ｒ）ＣＳＳスキームを使用するという意味で一般的である、一般的アプローチである。ＣＳＳ共有されるメッセージを暗号化するために、認証暗号化スキームが使用され、次いで、例えば、ＢｌａｋｅｌｙまたはＳｈａｍｉｒ等の秘密共有アルゴリズムを使用して、結果として生じる暗号文が共有され得る。
【０４６０】
潜在的により効率的なアプローチは、共有キーがワークグループキーとなることを可能にすることである。すなわち、（１）共有キーを使用して、（Ｒ）ＣＳＳスキームの無作為に生成されたセッションキーが暗号化され得、（２）メッセージ（例えば、ファイル）に適用される暗号化スキームは、認証暗号化スキームに置換され得る。このアプローチは、性能の最小限の劣化のみを伴い得る。
【０４６１】
セキュアなデータパーサのいくつかの用途が上記で説明されるが、本発明は、セキュリティ、耐故障性、匿名性、または前述の内容の任意の好適な組み合わせを増大させるために、任意のネットワークアプリケーションと一体化し得ることを明確に理解されたい。
【０４６２】
本発明のいくつかの実施形態では、セキュアなデータパーサは、移動中のデータをセキュア化するように、セキュアなプロキシサービスで実装され得る。上記で説明されるように、セキュアなデータパーサは、アプリケーション用の従来の暗号化／認証サービス、ならびに（物理的に、時間的に、または何らかの他の形態の信頼によって）保護されたデータを分離することによって達成される追加のセキュリティ特性を提供する、暗号ライブラリである。セキュアなデータパーサは、暗号キー、伝送媒体への物理的アクセス、または通常はセキュリティを破るであろう任意の知識を取得することによって、システムを損なう敵対者の脅威が本物である、アプリケーションのために指定される。セキュアなプロキシサービスは、これらの同じ脅威から保護するためのセキュリティの追加の層を提供し、好ましくは、広範囲のシステム（例えば、企業サーバ、パーソナルコンピュータ、任意の他の好適なシステム、またはそれらの任意の組み合わせ）上で実装することができるように融通が利く。セキュアなプロキシサービスは、以下の図４２−５０に関して説明される。
【０４６３】
セキュアなプロキシサービスは、２つのデバイスの間で移動中のデータをセキュア化するために使用される。具体的には、セキュアなプロキシサービスは、第１のデバイス上で作動し、ネットワーク上でアプリケーション用のセキュアなデータパーサ対応の通信を提供する。これらのデバイスは、暗号システム１００（図１）に含まれる任意の好適な一対のデバイスであり得る。例えば、セキュアなプロキシサービスは、パーソナルコンピュータとウェブサーバと等の、ユーザシステム１０５とベンダシステム１２０との間に確立され得る。別の実施例では、セキュアなプロキシサービスは、パーソナルコンピュータとＮＡＳ、パーソナルコンピュータとホームルータ、ＮＡＳとホームルータ、またはユーザシステム１０５の任意の好適な組み合わせ等の、別個のユーザシステム１０５の間に確立され得る。セキュアなプロキシサービスを使用したデバイス間の通信は、ウェブまたはＥメールサーバに接続するクライアントの通信に似ている。
【０４６４】
いくつかの実施形態では、ユーザシステム１０５等のクライアント、およびベンダシステム１２０等のサーバは、セキュアなプロキシサービスを使用してセキュアな通信を確立し得る。セキュアなプロキシサービスを確立する際に、ユーザシステム１０５およびベンダシステム１２０は、セキュアなプロキシサービスのための好適な構成に改造され得る。そのような実施形態では、クライアントがサーバに接続すると、接続が２つのセキュアなプロキシサービスの間で確立される。サーバ上で、セキュアなプロキシサービスは、受信するデータをサーバアプリケーションに転送するように構成されている。次いで、サーバアプリケーションは、局所的に実装されたセキュアなプロキシサービスを通して、要求および応答に対処し得る。
【０４６５】
いくつかの実施形態では、セキュアなプロキシサービスは、証明機関１１５（図１）等の任意の数の証明機関の間の分配された信頼に基づいて、ネットワーク上で伝送されるデータの機密性、完全性、および真正性を保護する。そのような実施例では、定数の証明機関が信頼される限り、データの機密性、完全性、および真正性が保護され得る。証明機関の信頼が損なわれた場合、相互認証を保証することができず、交換されたメッセージの機密性、完全性、および真正性が壊れる。セキュアなプロキシサービスは、単一の承認機関に置かれた信頼が任意の数の証明機関（例えば、２、３、５、１０、２０、５０、１００、または１００より多くの証明機関）にわたって分配されることを可能にする、セキュアなデータパーサ対応の解決法である。この分配された信頼は、一式の証明機関の間に単一障害点がある場合に、セキュアなプロキシサービス上でのメッセージの交換がセキュアなままとなることを可能にする。
【０４６６】
いくつかの実施形態では、セキュアなプロキシサービスは、ＳＳＬおよび／またはＦＵＬＬ  ＴＬＳプロトコルの適応を使用して実装される。これらのプロトコルは、通信において両者を相互に認証するために、証明機関の信頼に少なくとも部分的に依存するため、セキュアなプロキシサービスの一部としての適応に好適であり得る。
【０４６７】
ここで、ＦＵＬＬ  ＴＬＳでの証明機関の使用の概観を説明する。２つのデバイスの間で確立されるＦＵＬＬ  ＴＬＳ対応接続について、２つのデバイスは、使用するアルゴリズムの暗号一式に合意し、互の公開キーを交換し、相互に認証する。各デバイスの公開キーは、公開キーの証明機関の署名の検証を通して認証される。２つのデバイスが本当に互と通信しているという信頼は、それらの両方が証明機関を信頼しており、そのデバイスの証明書の署名は、その機関を損なわずに偽造することはできないと信頼している事実によって確立される。
【０４６８】
証明機関は、公開および秘密キーペア（ＰｕｂＣＡ，ＰｒｉＣＡ）を自らのために作成する。加えて、証明機関は、公開キーのための自己署名した証明書を作成する。
ＣｅｒｔＣＡ＝ＰｕｂＣＡ，ＳｉｇＰｒｉ−ＣＡ（ＰｕｂＣＡ）  （１）
両方のデバイスは、方程式（１）による証明機関の証明書ＣｅｒｔＣＡ、秘密キー（ＰｒｉＤｅｖ１，ＰｒｉＤｅｖ２）、および証明機関によって署名される証明書を受信する。ＣｅｒｔＤｅｖ１＝ＰｕｂＤｅｖ１，ＳｉｇＰｒｉ−ＣＡ（ＰｕｂＤｅｖ１）  （２）
ＣｅｒｔＤｅｖ２＝ＰｕｂＤｅｖ２，ＳｉｇＰｒｉ−ＣＡ（ＰｕｂＤｅｖ２）  （３）
通信が始まると、デバイスは、方程式（２）および（３）におけるそれぞれの証明書を交換し、証明機関の公開キーを使用して、これらの証明書の真正性を検証する。例えば、第１のデバイスは、検証関数Ｖｅｒｉｆｙ（ＣｅｒｔＤｅｖ２，ＰｕｂＣＡ）を実行することによって検証を行い、第２のデバイスは、検証関数Ｖｅｒｉｆｙ（ＣｅｒｔＤｅｖ１，ＰｕｂＣＡ）を実行することによって検証を行い得る。両方のデバイスが交換された公開キーの証明機関の署名に満足した場合、第１のデバイスは、第２のデバイスの公開キーを使用して、第２のデバイスの対称暗号化キー材料を送信する。第１のデバイスは、デジタル署名挑戦を行うことによって、それらの証明書に対応する秘密キーの知識を証明する。いったん第１のデバイスが、それらの証明書に対応する秘密キーの知識を証明すると、第１のデバイスおよび第２のデバイスは、セキュアにメッセージを交換し得る。
【０４６９】
第１のデバイスまたは第２のデバイスのいずれか一方が損なわれた場合、それらそれぞれの秘密キーも損なわれる場合があり、それ以降、損なわれたデバイスがなりすまされ得る。証明機関が損なわれた場合、証明機関が対応する秘密キーを知っている有効な証明書が生成され得、デバイスのいずれもがなりすまされ得る。しかしながら、デバイスまたは証明機関が損なわれない時は、デバイスが正しいエンティティと通信していることを相互に保証することができる。
【０４７０】
いくつかの実施形態では、全ての信頼が単一の証明機関に委託されるわけではない。常に単一の証明機関によって証明書を作成し、分配し、および立証することは実用的ではない場合がある。代わりに、図４２によって図示されるように、信頼の連鎖が証明機関階層４２００の形態で確立され得る。証明機関階層４２００は、ツリーの形態で信頼の連鎖を確立し得る。ツリーの一番上には、権限をルート証明書４２１０の全ての子孫（例えば、子および孫）に委託する、ルート証明機関４２１０がある。証明機関階層４２００の各レベルでの信頼は、ルート証明機関４２１０の信頼によって保証される。
【０４７１】
証明機関階層４２００では、ルート証明機関４２１０は、子証明機関４２２０用の証明書に署名し得る。１つだけのルート証明機関ＣＡ−０が図４２に示されているが、ある実施形態では、証明機関階層は任意の数のルート証明機関を含み得ることが理解され得る。子証明機関４２２０は、孫証明機関４２３０用の証明書に署名し得る。例えば、図４２に図示されるように、ルート証明機関ＣＡ−０は、その子ＣＡ−１およびＣＡ−２用の証明書に署名し、子は順に、それらの子ＣＡ−１．１、ＣＡ−１．２、ＣＡ−２．１、およびＣＡ−２．２用の証明書に署名する。３つのレベルだけの証明機関が図４２に示されているが、ある実施形態では、より多い、またはより少ないレベルの証明機関があり得ることが理解されるであろう。署名の否認防止を保証するために、全てのエンティティがそれら自身の証明書を生成し得る。
【０４７２】
暗号システムでは、第１のデバイスは、子証明機関４２２０のうちの１つから、その証明書を受信し、第１のデバイスと通信している第２のデバイスは、孫証明機関４２３０のうちの１つから、その証明書を受信し得る。各デバイス用の証明書の検証は、発行証明機関（例えば、第１のデバイスについてはＣＡ−１またはＣＡ−２、第２のデバイスについてはＣＡ−１．１、ＣＡ−１．２、ＣＡ−２．１、またはＣＡ−２．２）の証明書を取得し、第１のデバイスまたは第２のデバイスの証明書の署名を検証すること（例えば、方程式（２）または（３）に示される証明書を検証すること）によって行われ得る。発行証明機関の信頼を確立することができない場合、検証を行うデバイスは、問題になっている発行証明機関の親の証明書を取得し、証明機関が有効であることを保証するように同様の検証を行うことができる。この過程は、両方のデバイスによって信頼されるルート証明機関４２１０に到達するまで、両方のデバイスによって継続し得る。いくつかの実施形態では、通信している各デバイスは、１つより多くのルート証明機関４２１０に関連付けられ得る。そのような実施形態では、これらの証明機関のうちのいずれかからの有効な証明書を伴うデバイスが通信することが可能である。
【０４７３】
ＴＬＳを用いた証明機関の使用の上記の説明から、セキュリティは最終的に、単一のルート証明機関の信頼、またはより少ない程度に、通信しているデバイスが快適に信頼している証明機関の階層内の子孫証明機関のうちの１つの信頼にあることが理解される。いくつかの実施形態では、階層内の任意の証明機関が損なわれた場合、損なわれた証明機関の全ての子孫も損なわれる。この損なわれたノードがルートである場合には、階層内の証明機関の各々が損なわれる場合がある。
【０４７４】
いくつかの実施形態では、セキュアなプロキシサービスは、定数の証明機関の信頼とともに、単一の証明機関に置かれた信頼を分配するために、ＴＬＳを用いてセキュアなデータパーサを使用し得る。この定数は、ルート証明機関４２１０の定数、または単一のルート証明機関のツリー内の小証明機関の定数であり得る。例えば、この定数は、ルート証明機関ＣＡ−０のツリー内の小証明機関である、ＣＡ−１、ＣＡ−１．１、およびＣＡ−１．２から成るセット内の３つの証明機関のうちの２つであり得る。
【０４７５】
いくつかの実施形態では、証明機関階層４２００は、任意の好適なグラフアルゴリズムによって横断され得る。この横断は、証明機関のリスト、または一意であるか、あるいは異なる公開および秘密キーペアを有する証明機関に関連付けられる証明書のリストを取得するために行われ得る。いくつかの実施形態では、証明機関階層４２００の横断は、証明機関、またはルート証明機関である証明機関の証明書をもたらし得る。いくつかの実施形態では、証明機関階層４２００の横断は、証明機関、または１つ以上のルート証明機関のツリー内の小証明機関である証明機関の証明書をもたらし得る。
【０４７６】
図４４から５０は、セキュアなプロキシサービスを実装することへの２つのアプローチを詳述する。両方のアプローチは同等にセキュアである。いくつかの実施形態では、セキュアなデータパーサは、ＦＵＬＬ  ＴＬＳと一体化し得る。加えて、各アプローチでは、信頼が一式の証明機関（例えば、図４２の証明機関階層４２００に関して論議される定数の証明機関）の間で分配される。いくつかの実施形態では、セキュアなプロキシサービスは、セキュアなデータパーサをＳＳＬと、または、ＳＳＬおよびＴＬＳと一体化させることによって、あるいはＳＳＬおよび／またはＴＬＳを使用せずにセキュアなデータパーサを実装することによって、実装され得る。いくつかの実施形態では、セキュアなプロキシサービスは、図３０のデータパーサ層３０２６においてデータのセキュアな暗号化を提供し得る、いずれか１つ以上の種類の暗号化３０１８と併せて実装され得る。加えて、いくつかの実施形態では、セキュアなプロキシサービスは、交換されたメッセージの機密性、完全性、および真正性をセキュア化するために証明機関を利用する、任意の好適なプロトコルと併せて実装され得る。
【０４７７】
図４４から４６に関して説明される実施形態では、セキュアなデータパーサは、デバイス間の接続の初期交渉（例えば、キー確立段階）中に任意の数の証明機関において信頼を分配するために使用され得る。これは、証明書のうちのいくつか（しかし定数より少ない）が損なわれた場合に、依然として接続が確立され得、通信の機密性、完全性、および真正性を乱すことなく、メッセージが交換され得るという確信を提供する。図４７から５０に関して説明される実施形態では、データは、セキュアなデータパーサを使用して前処理され、次いで、シェアに分散される。一式のセキュアな通信トンネルは、一意の証明機関によって発行される証明書を使用して通信チャネル内に確立され得、これらの証明機関は、トンネルの各々に対するデータを暗号化するために使用され得、データの個々のシェアは、トンネルのそれぞれの上で伝送され得る。したがって、第２のアプローチでは、通信チャネル自体の構造における一式の証明機関の間で、信頼が分配され得る。
【０４７８】
セキュアなプロキシサービスのいくつかの実施形態で、セキュアなデータパーサがどのようにしてＴＬＳと一体化しているかを例証するために、ＦＵＬＬ  ＴＬＳのキー確立段階の概観が図４３に関して説明される。図４３は、第１のデバイス４３１０および第２のデバイス４３２０といった２つのデバイスの間の通信のためのＴＬＳのキー確立段階の簡略化した例証的な過程フロー４３００を示す。第１のデバイス４３１０および第２のデバイス４３２０は、通信リンク、例えば、図１に示されるような通信リンク１２５上で通信する、ユーザシステム１０５および／またはベンダシステム１２０の任意の組み合わせであり得る。このキー確立段階は、ハンドシェイクおよび相互認証を含み得る。ステップ４３１２では、第１のデバイス４３１０は、乱数ＲＤｅｖ１を生成し、（例えば、方程式（２）で計算されるような）その証明書ＣｅｒｔＤｅｖ１とともに乱数を第２のデバイス４３２０に送信する。
【０４７９】
ステップ４３２２では、第２のデバイス４３２０は、独自の乱数ＲＤｅｖ２を生成し、（例えば、方程式（３）で計算されるような）その証明書ＣｅｒｔＤｅｖ２とともに乱数を送信する。ステップ４３１４では、クライアントは、秘密情報ＳＤｅｖ１を生成し、任意の好適な種類の暗号化を使用して、第２のデバイスの公開キーの下でそれを暗号化し、それを第２のデバイスに送信する。ステップ４３２４では、第２のデバイス４３２０は、秘密情報ＳＤｅｖ１を復号し、疑似ランダム関数Ｇならびに交換されたランダムおよび秘密値（すなわち、ＲＤｅｖ１、ＲＤｅｖ２、およびＳＤｅｖ１）に基づいて、共有暗号化キーＫを計算する。同様に、ステップ４３１６では、第２のデバイス４３１０は、疑似ランダム関数Ｇならびに交換されたランダムおよび秘密値（すなわち、ＲＤｅｖ１、ＲＤｅｖ２、およびＳＤｅｖ１）に基づいて、共有暗号化キーＫを計算する。ステップ４３３０では、第１のデバイス４３１０および第２のデバイス４３２０は、それらの独立して計算された共有暗号化キーを用いて暗号化されたメッセージを交換する。計算された共有暗号化キーが合致する場合、第１のデバイス４３１０および第２のデバイス４３２０は、機密かつ真正であることが保証されたメッセージを交換し得る。図４４から４６に関して論議されるように、いくつかの実施形態では、セキュアなデータパーササービスは、セキュアなデータパーサをＴＬＳと一体化するために、過程フロー４３００のステップを修正および／または追加し得る。
【０４８０】
図４４は、本発明の一実施形態による、任意の好適な追加、削除、または修正とともに任意の好適な組み合わせで使用され得る、セキュアなプロキシサービスの簡略化した例証的な過程フロー４４００を示す。過程フロー４４００では、デバイス間の接続の初期交渉中に、信頼が一式の証明機関において分配される。いくつかの実施形態では、過程フロー４４００は、２つのデバイスの間の情報のセキュアな交換のキー確立段階の一部として実行され得る。このキー確立段階は、図３７に図示されるようなセキュアなデータパーサ３７０６に関連付けられる過程のうちの１つ以上の一部であり得、または独立型過程であり得る。例えば、ステップ４４１０、４４２０、４４３０、４４４０、４４５０、および４４６０は、図３７に図示されるようなセキュアなデータパーサ３７０６に関連付けられる、事前暗号化過程３７０８、暗号化／変換過程３７１０、キーセキュア化過程３７１２、または解析／分配過程３７１４のうちの１つ以上の一部であり得、または独立型過程であり得る。
【０４８１】
過程フロー４４００は、ステップ４４１０から始まる。ステップ４４１０では、第２のデバイスと情報をセキュアに交換したい第１のデバイスが、秘密情報を生成し得る。この秘密情報は、乱数発生器によって生成される任意の量の好適な乱数（例えば、１、２、５、２０、１００、または１００より多くの乱数）であり得る。例えば、秘密情報は、図３０に示されるようなセキュアなデータパーサ３０２６の乱数発生器３０１２によって生成される乱数であり得る。過程フロー４４００は、ステップ４４２０へと進む。
【０４８２】
ステップ４４２０では、第１のデバイスは、ステップ４４１０で生成される秘密情報をシェアに分散し得る。いくつかの実施形態では、秘密情報は、「Ｎ分のＭ暗号分割」等の暗号分割過程を使用して、シェアに分散され得る。この「Ｎ分のＭ暗号分割」は、本発明のセキュアなデータパーサを使用して達成され得る。例えば、暗号分割は、図２１から２４に関して論議されるデータ分割技法のうちのいずれかを使用して達成され得る。そのような実施形態では、分散されたシェアは、少なくとも定数のシェアを再結合させることによって、シェアの少なくとも一部から修復可能であり得る。加えて、いくつかの実施形態では、秘密情報の分割は、実質的に図３３、図３５、および図３６に関して概説されるセキュアなデータパーサの任意の数の使用を通して、生じし得る。例えば、セキュアなデータパーサは、ステップ３６１０で暗号化されていない秘密情報を受信し得る。秘密情報がキーを必要とするアルゴリズムを用いて分割される場合、分割暗号化キーがステップ３６１２で生成される。秘密情報は、（例えば、図３３、図３５、および図３６に関して説明される技法のうちのいずれかに従って）ステップ３６１６でシェアに分割され得る。分割暗号化キーを暗号化し、総数よりも少ないシェアからの秘密情報の再生を可能にするために、耐故障スキームがステップ３６１７で使用され得る。加えて、ステップ３６１７では、情報が、シェアを再構築するために使用される秘密情報のシェアに追加され得る。いくつかの実施形態では、この情報は、シェアヘッダに埋め込まれ得る。さらに、いったんシェアが作成されると、認証／完全性情報が、ステップ３６１８で秘密情報のシェアのヘッダに埋め込まれ得る。各シェアは、ステップ４４３０に関して説明されるような異なる証明機関の公開キーを使用して、事後暗号化され得る。
【０４８３】
加えて、いくつかの実施形態では、図４０Ａに示されるような簡略化したヘッダ生成過程４０００に従って、シェアへの秘密情報の分散が発生し得る。例えば、ステップ４００２では、秘密情報が生成され得る。次いで、秘密情報は、随意で、４００４で（例えば、図３９に関して説明されるワークグループキーを使用して）暗号化され得る。ステップ４００６では、「Ｎ分のＭ暗号分割」は、秘密情報を秘密情報のシェアに分割するために使用され得る。次いで、秘密情報の分割に関連付けられる情報は、シェアヘッダに埋め込まれ得る。最終的に、シェア完全性ブロックおよび事後承認タグ（例えば、ＭＡＣ）が、各シェアのヘッダブロックに添付され得る。各ヘッダブロックは、単一のデータパケット内に適合するように設計され得る。
【０４８４】
いくつかの実施形態では、ステップ４４２０で生成される秘密情報のシェアは、多因子共有スキームを使用して生成され得る。この多因子共有スキームは、例えば、図４１にちなんで論議されるキー式情報分散アルゴリズムであり得る。例えば、秘密情報のシェアは、決定論的、確率論的、または決定論的および確率論的両方のデータ分配技法を使用して、複数のシェアにセキュア化されるデータとともに分配され得る。いったん秘密情報がシェアに分散されると、過程フロー４４００は、ステップ４４３０へと進み得る。
【０４８５】
ステップ４４３０では、ステップ４４２０で計算される秘密情報の分割に起因するシェアは、一意の証明機関の公開キーに基づいて第１のデバイスによって暗号化される。例えば、秘密情報の３つのシェアがあった場合、第１のシェアは、第１の証明機関の公開キーの下で暗号化され得、第２のシェアは、第２の証明機関の公開キーの下で暗号化され得、第３のシェアは、第３の証明機関の公開キーの下で暗号化され得る。各証明機関は、各々によって発行される証明書が異なる公開および秘密キーペアを有するという点で一意であり得る。いくつかの実施形態では、一意の証明機関は、ルート証明機関であり得る。他の実施形態では、一意の証明機関は、図４２の証明機関階層４２００に関して論議されるように、単一のルート証明機関のツリー内の小証明機関であり得る。
【０４８６】
ステップ４４２０に関して上記で論議されるように、いくつかの実施形態では、秘密情報の分散に関係する情報が、シェアヘッダに埋め込まれ得る。例えば、秘密情報がステップ４４２０で４つのシェアに分割される場合、各々が秘密情報の分散シェアに関連付けられる情報を含む、４つのヘッダが生成され得る。
【０４８７】
いくつかの実施形態では、シェアは、１つ以上の外部ワークグループキー、１つ以上の共有キー、またはワークグループキーおよび共有キーの任意の組み合わせによって保護され得る。いったん秘密情報のシェアが暗号化されると、第１のデバイスは、暗号化されたシェアを第２のデバイスに送信し得る。次いで、過程フロー４４００は、ステップ４４４０へと進み得る。
【０４８８】
ステップ４４４０では、第２のデバイスは、暗号化された秘密情報を回復しようとし得る。この回復過程は、秘密情報のシェアがどのようにしてステップ４４２０で分散され、ステップ４４３０で暗号化されたかに依存し得る。例えば、秘密情報は、ステップ４４２０で「Ｎ分のＭ暗号分割」を使用してシェアに分散され、ワークグループを使用して暗号化され、次いで、これらのシェアは、ステップ４４３０で異なる証明機関の公開キーに基づいて暗号化され得る。回復過程は、最初に異なる証明機関の公開キーを使用してシェアを復号し、次いで、ワークグループキーに基づいてシェアを復号し、次いで、「Ｎ分のＭ暗号分割」に基づいて秘密情報の分散シェアを元の秘密情報に再構築するために、セキュアなデータパーサの修復機能を使用し得る。
【０４８９】
回復過程が成功した場合、計算された秘密情報は、元の秘密情報に合致し得る。この合致は、共有暗号化キーを独立して計算する各デバイスによって、デバイス間で相互に確認され得る。例えば、第１のデバイスが、元の秘密情報に基づいて共有暗号化キーを計算し得る一方で、第２のデバイスは、回復または修復された秘密情報に基づいて共有暗号化キーを計算する。いくつかの実施形態では、第２のデバイスが元の秘密情報を回復し、後に有効な共有暗号化キーを計算する場合、過程フロー４４００はステップ４４５０へと進み、メッセージが交換される。いくつかの実施形態では、これらのメッセージは、第１のデバイスおよび第２のデバイスによって計算される共有暗号化キーに基づいてセキュアに交換され得る。いくつかの実施形態では、第２のデバイスが元の秘密情報を回復しない場合、過程フロー４４００はステップ４４６０へと進み、メッセージは交換されない。例えば、第１のデバイスの共有暗号化キーが第２のデバイスのものと合致しないため、メッセージは、交換されることが可能ではないことがある。
【０４９０】
図４５は、本発明の一実施形態による、任意の好適な追加、削除、または修正とともに任意の好適な組み合わせで使用され得る、２つのデバイスの間にセキュアなプロキシサービスを確立するための簡略化した例証的な過程フロー４５００を示す。過程フロー４５００では、デバイス間の接続の初期交渉中に、一式の証明機関において信頼が分配される。いくつかの実施形態では、過程フロー４５００は、２つのデバイスの間の情報のセキュアな交換のキー確立段階の一部として実行され得る。過程フロー４５００におけるステップの各々を含む、このキー確立段階は、例えば、過程フロー４５００のステップがどのようにしてセキュアなデータパーサに関連付けられるかと同様である、セキュアなデータパーサに関連付けられる過程のうちの１つ以上の一部であり得る。
【０４９１】
過程フロー４５００は、ステップ４５１０から始まる。ステップ４５１０では、デバイスは、乱数および公開キーに関連付けられる証明書を交換し、各公開キーは、一意のセキュリティ機関によって発行される。いくつかの実施形態では、これらのデバイスは、例えば、図４３の過程フロー４３００に関して説明されるような第１のデバイス４３１０および第２のデバイス４３２０であり得る。交換される乱数は、図３０に示されるようなセキュアなデータパーサ３０２６の乱数発生器３０１２を使用して、各デバイスによって生成され得る。交換される証明書は、図４２に示されるような証明機関階層４２００の横断から生成され得る。例えば、任意の好適なグラフアルゴリズムが、証明書階層４２００を横断して、ルート証明機関の証明書のリスト、または証明書階層４２００内の単一のルート証明機関のツリー内の小証明機関の証明書のリストを計算し得る。いくつかの実施形態では、交換される証明書は、第１および第２のデバイスによって合意される暗号化パラメータに基づいて決定され得る。これらのパラメータは、第１および第２のデバイスによって合意される秘密情報のシェアの分散の実装に関連付けられ得る。例えば、ステップ４５２０で使用される分散技法が秘密情報を５つのシェアに分散する場合、交換された証明書は、第１のデバイスからの一意の証明機関の５つの証明書と、第２のデバイスからの一意の証明機関の５つの証明書とを含み得る。
【０４９２】
いくつかの実施形態では、一意の公開キーが、第１のデバイスまたは第２のデバイスの各一意の証明書のために取得され得る。いくつかの実施形態では、暗号化パラメータは、セキュアなプロキシサービスを使用して金融機関のサーバと接続したいパーソナルコンピュータのユーザ等の、セキュアなプロキシサービスのユーザによって設定され得る。いくつかの実施形態では、暗号化パラメータは、セキュアなプロキシサービス対応の接続を提供したい金融機関のサーバの管理者等の、セキュアなプロキシサービスの管理者によって設定され得る。加えて、いくつかの実施形態では、交換される証明書のリストは、図９に関して説明されるようなデバイスのうちの１つのユーザで行われる、登録過程９００に基づき得る。次いで、過程フロー４５００は、ステップ４５１５へと進む。
【０４９３】
ステップ４５１５では、第１のデバイスは、秘密情報を生成する。この秘密情報は、例えば、図４４の過程フロー４４００に関して説明されるステップ４４１０に従って生成され得る。次いで、過程フロー４５００は、ステップ４５２０へと進む。ステップ４５２０では、第１のデバイスは、任意の好適な分散技法を使用して、ステップ４５１５で生成された秘密情報をシェアに分散する。例えば、第１のデバイスは、例えば、図４４の過程フロー４４００に関して説明されるステップ４４２０に従って、本発明のセキュアなデータパーサを使用して、秘密情報の「Ｎ分のＭ暗号分割」を行い得る。いくつかの実施形態では、分散技法に起因する秘密情報のシェアは、少なくとも定数のシェアを再結合させることによって、シェアの少なくとも一部から修復可能であり得る。加えて、いくつかの実施形態では、キー式秘密共有ルーチンは、キー式ＩＤＡを使用して秘密情報のシェアに適用され得る。キー式ＩＤＡ用のキーは、１つ以上の外部ワークグループキー、１つ以上の共有キー、または共有およびワークグループキーの任意の組み合わせによって保護され得る。次いで、過程フロー４５００は、ステップ４５２５へと進む。
【０４９４】
ステップ４５２５では、第１のデバイスは、異なる証明機関によって発行される公開キーに基づいて、秘密情報の各シェアを暗号化する。公開キーは、ステップ４５１０で第１のデバイスから第２のデバイスに送信された証明書から取得される公開キーであり得る。いくつかの実施形態では、ステップ４５２５は、ステップ４５２０の一部として含まれ得る。例えば、ステップ４５２０に関して説明されるキー式秘密共有ルーチンは、秘密情報のシェアに適用され得、キー式ＩＤＡのキーは、第１のデバイスから第２のデバイスに送信される証明書のリストに関連付けられる公開キーである。別の実施例では、証明書のリストに関連付けられる公開キーは、図３６のオプション３６００に関して説明されるように、秘密情報のシェアを暗号化するために分割キーとして使用され得る。次いで、過程４５００は、ステップ４５３０へと進み、または随意でステップ４５２７へと進み得る。
【０４９５】
随意的なステップ４５２７では、第１のデバイスは、ステップ４５２５で秘密情報のシェアに適用されたキーにキーラップを行い得る。いくつかの実施形態では、キーラップは、任意の好適なキー暗号化またはキーラップアルゴリズムであり得る。キーラップは、ステップ４５２０で生成された分散秘密情報のシェア全体に影響し得る。代替として、分散シェアは、加えて、いくつかのブロックに分散され得、キーラップは、これらのブロックに影響し得る。次いで、過程フロー４５００は、ステップ４５３０へと進む。
【０４９６】
ステップ４５３０では、第１のデバイスは、秘密情報の暗号化されたシェアを第２のデバイスに伝送する。この伝送は、図１の通信リンク１０５に関して説明されるもの等の任意の好適な通信チャネル上で発生し得る。次いで、過程フロー４５００における第１のデバイスが、ステップ４５４５へと進む一方で、第２のデバイスは、ステップ４５３５へと進む。
【０４９７】
ステップ４５３５では、第２のデバイスは、第１のデバイスから受信される暗号化されたシェアを復号しようとし得る。この復号過程は、秘密情報のシェアがどのようにしてステップ４５２０およびステップ４５２５で暗号化されたかに基づき得る。例えば、ステップ４５２０では、秘密情報のシェアは、少なくとも定数のシェアを再結合させることによってシェアの少なくとも一部から修復可能である、秘密情報のシェアを生成する、分散技法から生成されていることがある。ステップ４５２５では、各分散シェアは、第２のデバイスの証明書に対応する、異なる証明機関によって取得される公開キーを使用して暗号化されていることがある。ステップ４５２７では、シェアは、加えて、ワークグループキーに基づくキーラップを使用して暗号化されていることがある。この暗号化に基づいて、ステップ４５３５では、第２のデバイスは、最初に、一意の証明機関によって発行される公開キーに基づいて、秘密情報の暗号化されたシェアを復号し、次いで、ステップ４５２７で適用されたキーラップのワークグループキーに基づいて、秘密情報のシェアを復号し得る。この特定の実施例を越えて、任意の好適な数および種類の復号ステップが、ステップ４５３５で行われ得ることが理解されるであろう。次いで、過程フロー４５００は、ステップ４５４０へと進む。
【０４９８】
ステップ４５４０では、第２のデバイスは、ステップ４５３５で計算された復号シェアに基づいて、元の秘密情報を修復しようとし得る。この修復過程は、ステップ４５１５で生成された秘密情報がどのようにしてステップ４５２０で分散されたかに基づき得る。例えば、ステップ４５２０では、秘密情報のシェアは、図３３、図３５、および図３６に関して説明される技法のうちのいずれかに従って、セキュアなデータパーサの分散機能を使用して生成されていることがある。この分散に基づいて、ステップ４５４０では、第２のデバイスは、図３４に関して説明される技法のうちのいずれかに従って、セキュアなデータパーサの修復機能を使用して、分割から元の秘密情報を修復し得る。次いで、過程フロー４５００は、ステップ４５４５へと進む。
【０４９９】
ステップ４５４５では、第１および第２のデバイスは、交換された乱数、および計算された、または元の秘密情報に基づいて、共有暗号化キーを独立して計算し得る。例えば、第１のデバイスは、独自の乱数、第２のデバイスの乱数、およびステップ４５１５で生成された秘密情報を使用して、その証明書のリストの中のその証明書の各々に対して１つずつ、いくつかのデジタル署名を行い得る。これらのデジタル証明は、第１のデバイス用の共有暗号化キーを計算するキー生成機能への入力として使用され得る。第２のデバイスは、同様のデジタル署名を行って独自の共有暗号化キーを計算し得るが、元の秘密情報の代わりに復号秘密情報を使用し得る。次いで、過程４５００は、ステップ４５５０へと進む。
【０５００】
いくつかの実施形態では、ステップ４５５０では、第１のデバイスおよび第２のデバイスは、ステップ４５４５で独立して計算された共有暗号化キーに合意するかどうかを決定する。いくつかの実施形態では、この合意は、共有暗号化キーを用いて符号化されたメッセージを交換する第１および第２のデバイスによって決定され得る。例えば、第１のデバイスは、共有暗号化キーを用いて暗号化されたメッセージを第２のデバイスに送信し得る。第２のデバイスが、暗号化されたメッセージを復号し、例えば、適切な承認により応答することができる場合、第１のデバイスは、第２のデバイスとメッセージをセキュアに交換し得ることを決定し得る。そうでなければ、第１のデバイスは、第２のデバイスとメッセージをセキュアに交換しないことを決定し得、さらなるメッセージは交換されない。同様の決定が第２のデバイスで生じ得ることが理解されるであろう。いくつかの実施形態では、第１および第２のデバイスは、いずれのメッセージも伴わずに暗号化キーを交換することによって、それらの独立して計算された共有暗号化キーが合致することを決定し得る。第１および第２のデバイスが共有暗号化キーに合意しない場合、過程４５００は、ステップ４５５５へと進む。第１および第２のデバイスが共有暗号化キーに合意する場合、過程４５００は、ステップ４５６０へと進む。ステップ４５５５では、第１および第２のデバイスは、メッセージを交換しない。ステップ４５６０では、第１および第２のデバイスは、メッセージを交換する。ステップ４５５５および４５６０のそれぞれの後で、過程フロー４５００は終了し得る。
【０５０１】
図４６は、本発明の一実施形態による、任意の好適な追加、削除、または修正とともに任意の好適な組み合わせで使用され得る、クライアント４６１０とサーバ４６２０との間にセキュアなプロキシサービスを確立するための簡略化した例証的な過程フロー４６００を示す。過程フロー４６００では、クライアント４６１０とサーバ４６２０との間の接続の初期交渉中に、信頼が一式の証明機関において分配される。いくつかの実施形態では、過程フロー４６００は、クライアント４６１０とサーバ４６２０との間のセキュアな交換のキー確立段階の一部として実行され得る。過程フロー４６００におけるステップのうちのいずれかを含む、このキー確立段階は、例えば、過程フロー４６００のステップがどのようにしてセキュアなデータパーサに関連付けられるかに従って、セキュアなデータパーサに関連付けられる過程のうちの１つ以上の一部であり得る。加えて、過程フロー４６００は、図４５に関して論議されるような過程フロー４５００の実施例であり得る。
【０５０２】
過程フロー４６００は、ステップ４６１２から始まる。ステップ４６１２では、クライアント４６１０は、生成された乱数ＲＣ、ならびにその証明書Ｃｅｒｔ−ＣＡ１Ｃ、Ｃｅｒｔ−ＣＡ２Ｃ、およびＣｅｒｔ−ＣＡ３Ｃのリストをサーバ４６２０に送信する。クライアント４６１０およびサーバ４６２０は、それぞれ、図１のユーザシステム１０５およびベンダシステム１２０に関して説明されるような任意の好適なクライアントおよびサーバデバイスであり得る。ＲＣは、例えば、図４５の過程フロー４５００のステップ４５１０で第１のデバイスによって生成される乱数に従って、クライアント４６１０によって生成され得る。これらの証明書のそれぞれは、図４５の過程フロー４５００のステップ４５１０に関して論議される証明書のリストと同様に、異なるセキュリティ機関によって発行される公開キーに関連付けられ得る。次いで、過程フロー４６００は、ステップ４６２２へと進む。
【０５０３】
ステップ４６２２では、サーバ４６２０は、独自の生成された乱数ＲＳ、ならびにその証明書Ｃｅｒｔ−ＣＡ１Ｓ、Ｃｅｒｔ−ＣＡ２Ｓ、およびＣｅｒｔ−ＣＡ３Ｓのリストをクライアント４６１０に送信する。ＲＳは、図４５の過程フロー４５００のステップ４５１０で第２のデバイスによって生成される乱数に従って、サーバ４６２０によって生成され得る。これらの証明書の各々は、図４５の過程フロー４５００のステップ４５１０に関して論議される一意の証明機関の公開キーと同様に、一意のセキュリティ機関によって発行される公開キーに関連付けられ得る。次いで、過程フロー４６００は、ステップ４６１４へと進む。
【０５０４】
ステップ４６１４では、クライアント４６１０は、秘密情報を生成する。この秘密情報は、例えば、図４５の過程フロー４５００のステップ４５１５に従って生成され得る。また、ステップ４６１４では、クライアント４６１０が秘密情報ＳＣをシェアＳ１Ｃ、Ｓ２Ｃ、およびＳ３Ｃに分散する。この分散は、例えば、図４５の過程フロー４５００のステップ４５２０に関して論議される秘密情報の分散に従って行われ得る。また、ステップ４６１４では、クライアント４６１０は、サーバの公開キーのうちの異なる１つを使用して、秘密情報のシェアを暗号化する。例えば、「Ｅｎｃ」がセキュアなデータパーサによって実行される暗号化機能を表す場合、Ｐｕｂ１Ｓ、Ｐｕｂ２Ｓ、およびＰｕｂ３Ｓは、それぞれ、サーバの証明書Ｃｅｒｔ−ＣＡ１Ｓ、Ｃｅｒｔ−ＣＡ２Ｓ、およびＣｅｒｔ−ＣＡ３Ｓに対応する公開キーを表し、クライアントは、Ｅｎｃ（Ｐｕｂ１Ｓ，Ｓ１Ｃ）を実行することによって、Ｐｕｂ１Ｓを使用してＳ１Ｃを符号化し得、Ｅｎｃ（Ｐｕｂ２Ｓ，Ｓ２Ｃ）を実行することによって、Ｐｕｂ２Ｓを使用してＳ２Ｃを符号化し得、Ｅｎｃ（Ｐｕｂ３Ｓ，Ｓ３Ｃ）を実行することによって、Ｐｕｂ３Ｓを使用してＳ３Ｃを符号化し得る。暗号化機能は、図４５の過程フロー４５００のステップ４５２５および４５２７に関して説明される暗号化の方法の任意の組み合わせから選択され得る。いったん秘密情報が生成され、分散され、暗号化されると、暗号化されたシェアは、サーバ４６２０に伝送される。次いで、過程フロー４６００は、ステップ４６１６および４６２４へと進む。
【０５０５】
ステップ４６２４では、秘密情報のシェアＳ１Ｃ、Ｓ２Ｃ、およびＳ３Ｃは、図４５の過程フロー４５００のステップ４５２５および４５４０に関して説明される任意の好適な復号および修復技法を使用して、サーバ４６２０によって復号され、秘密情報に修復され得る。次いで、サーバ４６２０は、キー生成機能Ｇを使用して共有暗号化キーＫを生成するために、修復された秘密情報を使用し得る。キー生成機能Ｇは、修復された秘密情報とともに入力として乱数ＲＣおよびＲＳを採用し得る。ステップ４６１６では、クライアント４６１０は、同様に、キー生成機能Ｇを使用して独自の共有暗号化キーＫを生成し得る。しかしながら、クライアント４６１０によって実行されるキー生成機能は、サーバ４６２０によって生成される修復された秘密情報よりもむしろ、クライアント４６１０によって生成された元の秘密情報を使用し得る。次いで、過程４６００は、ステップ４６３０へと進む。
【０５０６】
ステップ４６３０では、メッセージは、それぞれの共有暗号化キーＫを使用して、クライアント４６１０とサーバ４６２０との間で交換される。いくつかの実施形態では、クライアント４６１０およびサーバ４６２０は、図４５の過程フロー４５００のステップ４５５０に関して説明される過程と同様に、それらの共有暗号化キーが合致するかどうかを決定し得る。クライアント４６１０およびサーバ４６２０のそれぞれの共有暗号化キーが合致しないと決定された場合、メッセージは交換されないことがあり、またはクライアント４６１０とサーバ４６２０との間で交換されることが停止され得る。そうでなければ、メッセージの交換は、キー確立段階後に、通常のＴＬＳまたはＳＳＬ通信と同様に継続し得る。
【０５０７】
いくつかの実施形態では、セキュアなプロキシサービスは、クライアント４６１０上で作動するクライアントアプリケーション上に常駐し得る。クライアントアプリケーションは、サーバのＩＰアドレスまたはＵＲＬおよびポート番号に基づいて、サーバ４６２０等のセキュアなプロキシサーバ対応のサーバのリストを維持し得る。いくつかの実施形態では、クライアントアプリケーションは、サーバによってアドレス可能であるアドレスに関連付けられ得る。接続が、セキュアなプロキシサービス対応のサーバに対してクライアントによって要求されると、クライアントアプリケーションは、過程フロー４４００、４５００、および４６００で説明されるアプローチを利用して、特定のサーバプロキシサービスとの接続を確立し得る。加えて、セキュアなプロキシサービスは、サービス４６２０上で作動するサーバアプリケーション上に常駐し得る。サーバアプリケーションは、クライアントアプリケーションから接続を受け入れ、ポート転送規則に基づいて、受信するデータを適正でセキュアなプロキシ構成ポートに転送し得る。これらのポート転送規則は、クライアントアプリケーションおよびサーバアプリケーションによって事前決定されるか、または相互に合意され得る。
【０５０８】
過程フロー４４００、４５００、および４６００によって説明されるキー確立段階は、証明書のうちの定数よりも少ないがいくつかが損なわれた場合に、依然として２つのデバイスの間で接続をセキュアに確立することができるという保証を提供する。つまり、たとえ損なわれた証明機関がデバイスの間で交換される情報にアクセスできたとしても、通信の機密性または完全性を乱すほど十分な情報を有さないであろう。例えば、過程フロー４６００に示されるように、異なる証明機関の公開キーを用いてそれぞれ暗号化される秘密情報の３つのシェアがあった場合、証明機関のうちの１つが損なわれることができ、２つのデバイスの間で接続がセキュアに確立されることができるであろう。たとえ損なわれた証明機関が２つのデバイスの間で渡されているメッセージにアクセスできたとしても、損なわれた証明機関に関連付けられる攻撃者は、他の２つの証明機関の公開および秘密キーペアの知識を有さず、したがって、最大限でも秘密情報のシェアのうちの１つを回復することが可能となるにすぎず、このセキュリティは保証される。さらに、秘密情報のシェアは、少なくとも定数のシェアを再結合させることによって、シェアの少なくとも一部を用いて修復することができるように分散されたため、損なわれた証明機関の背後の攻撃者は、１つだけの回復されたシェアを使用して元の秘密情報を構築できないであろう。したがって、損なわれた証明機関の背後の攻撃者は、秘密情報を回復できず、第１のデバイスと第２のデバイスとの間のメッセージを暗号化するために使用される共有暗号化キーを計算できないであろう。
【０５０９】
過程フロー４４００、４５００、および４６００は、それらの間にセキュアな通信手段を確立することを所望する２つのデバイスの間に生じるものとして、種々の実施形態で説明される。しかしながら、いくつかの実施形態では、過程フロー４４００は、２つより多くのデバイスの間で発生し得る。例えば、過程フロー４４００は、パーソナルコンピュータと一式のウェブサーバとの間にセキュアな通信手段を確立するために使用され得る。一式の中の各ウェブサーバは、第１のデバイスとの通信のキー確立段階で、異なる一式の一意の証明機関を使用し得る。
【０５１０】
図４７ならびに図４８Ａおよび４８Ｂは、本発明の一実施形態による、任意の好適な追加、削除、または修正とともに任意の好適な組み合わせで使用され得る、デバイス間にセキュアなプロキシサービスを確立するための簡略化した例証的な過程フロー４７００、４８００、および４８５０を示す。過程フロー４７００、４８００、および４８５０では、デバイス間でメッセージを交換するために使用される通信チャネルの構造における一式の証明機関の間で、信頼が分配される。いくつかの実施形態では、過程フロー４７００は、デバイス間の情報のセキュアな交換のキー確立段階の後であるが、デバイスがメッセージを交換する前に実行され得る。過程フロー４７００、４８００、および４８５０は、図３７に図示されるようなセキュアなデータパーサ３７０６に関連付けられる過程のうちの１つ以上の一部であり得、または独立型過程であり得る。例えば、ステップ４７１０、４７２０、４７３０、４７４０、４７５０、および４７６０は、図３７に図示されるようなセキュアなデータパーサ３７０６に関連付けられる事後暗号化過程３７２０の一部であり得、または独立型過程であり得る。
【０５１１】
過程フロー４７００は、ステップ４７１０から始まる。ステップ４７１０では、通信チャネルがデバイス間に確立される。この通信チャネルは、図１から図１４に関して説明される任意の好適な信頼エンジン１１０を使用して確立され得る。いくつかの実施形態では、この通信チャネルは、任意の好適な通信において移動中のデータをセキュア化するように、任意の好適な暗号化技術を使用してセキュア化され得る。例えば、通信チャネルは、従来のＳＳＬ、１／２  ＳＳＬ、ＦＵＬＬ  ＳＬＬ、ＴＬＳ、ＦＵＬＬ  ＴＬＳ、ＲＳ１、ＯＴＰ、ＲＣ４ＴＭ、Ｔｒｉｐｌｅ  ＤＥＳ、ＡＥＳ、ＩＰＳｅｃ、公開キー暗号化、対称キー暗号化、分割キー暗号化、多因子暗号化、または暗号化技術の任意の好適な組み合わせを使用して確立され得る。いくつかの実施形態では、この通信チャネルはセキュアではない場合がある。例えば、確立された通信チャネルは、平文によってデータを運び得る。いくつかの実施形態では、これらの暗号化技術は、証明機関から発行されるキーを使用し得る。この証明機関は、以下のステップ４７３０に関して説明されるセキュアな通信トンネルをセキュア化するために使用される、任意の証明機関とは無関係に第１の通信チャネルをセキュア化し得るため、「外部レベル証明機関」と呼ばれ得る。
【０５１２】
加えて、通信チャネルは、Ｅメール、ストリーミングデータ放送、およびＷｉＦｉ通信に関連付けられるデータを運び得る。いくつかの実施形態では、確立された通信チャネルは、ＣＧＩスクリプト、ＡＳＰ、または任意の好適なウェブサーバ技術等の任意の数のサーバまたはクライアント側技術を利用し得る。いくつかの実施形態では、通信チャネルは、いくつかの物理輸送媒体または物理的経路を介して確立され得る。例えば、通信チャネルは、インターネット、イントラネット、ＬＡＮ、ＷｉＦｉ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＷｉＭａｘ、または任意の好適な配線接続あるいは無線通信手段のうちの１つ以上、またはそれらの任意の組み合わせの上で確立され得る。各物理輸送媒体は、特定の物理媒体上でメッセージを交換するデバイス間に異なるネットワークトポロジーを有し得る。次いで、過程４７００は、ステップ４７２０へと進む。
【０５１３】
ステップ４７２０では、任意の数のセキュアな通信トンネルが、一式の証明機関の間の分配された信頼に基づいて、第１の通信チャネル内に確立される。これらの証明機関は、任意の外部レベル証明機関とは無関係にセキュアな通信トンネル内で通信を保護し得るため、「内部レベル証明機関」と呼ばれ得る。いくつかの実施形態では、これらの通信トンネルは、ステップ４７１０に関して説明される暗号化技術のうちのいずれかの任意の好適なキー確立段階を使用して確立され得る。いくつかの実施形態では、セキュアな通信トンネルは、第１の通信チャネルによって利用されるものとは異なる暗号化技術を使用して確立される。例えば、通信チャネルが、ＡＥＳを使用して確立され得る一方で、セキュアな通信トンネルは、ＦＵＬＬ  ＴＬＳを使用して確立される。この実施例では、セキュアな通信トンネルの各々は、図４３の過程フロー４３００に関して説明されるものと同様のキー確立過程を使用して確立され得る。いくつかの実施形態では、セキュアな通信トンネルは、第１の通信チャネルと同じ暗号化技術を使用して確立される。例えば、通信チャネルおよびセキュアな通信トンネルの各々は、ＦＵＬＬ  ＴＬＳを使用して確立され得る。
【０５１４】
いくつかの実施形態では、セキュアな通信トンネルは、同じ暗号化技術を使用して確立され得、例えば、各通信チャネルは、ＦＵＬＬ  ＴＬＳを使用して確立され得る。他の実施形態では、セキュアな通信トンネルは、異なる暗号化技術を使用して確立され得、例えば、暗号化トンネルのうちのいくつかが、ＦＵＬＬ  ＴＬＳを使用して確立され得る一方で、他のトンネルは、ＡＥＳを使用して確立される。いくつかの実施形態では、セキュアな通信トンネルは、いくつかの物理的媒体または物理的経路を横断して確立され得る。例えば、セキュアな通信チャネルは、インターネット、イントラネット、ＬＡＮ、ＷｉＦｉ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＷｉＭａｘ、または任意の好適な配線接続あるいは無線通信手段のうちの１つ以上、またはそれらの任意の組み合わせの上で確立され得る。各物理輸送媒体は、特定の物理媒体上でメッセージを交換するデバイス間に異なるネットワークトポロジーを有し得る。
【０５１５】
セキュアな通信トンネルを確立するために、どの暗号化技術が使用されるかにかかわらず、トンネルは、証明機関の間の分配された信頼に基づいてステップ４７２０で確立される。いくつかの実施形態では、この分配された信頼は、一意の証明機関に基づいて各セキュアな通信トンネルを確立することによって達成され得る。いくつかの実施形態では、各セキュアな通信トンネルは、一意の証明機関のうちの１つによって発行される証明書を使用して確立され得る。そのような実施形態では、対称暗号化キー材料が、そのチャネルに関連付けられる一意の証明機関によって発行される証明書を使用して、各チャネルの確立中に伝達され得る。そのような実施形態では、対称キー暗号化材料は、例えば、上記のＦＵＬＬ  ＴＬＳにおける証明機関の使用に関して論議される対称キー暗号化材料であり得る。各証明機関は、各々によって発行される証明書が異なる公開および秘密キーペアを有するという点で、一意であり得る。いくつかの実施形態では、一意の証明機関は、ルート証明機関であり得る。他の実施形態では、一意の証明機関は、図４２の証明機関階層４２００に関して論議されるように、単一のルート証明機関のツリー内の小証明機関であり得る。異なる証明機関の一意の公開および秘密キーペアが、各セキュアな通信トンネルのキー確立中に使用され得る。例えば、セキュアな通信トンネルがＴＬＳに基づく場合、トンネルの各々は、一意の証明機関のうちの１つの証明書を使用して、図４３の過程フロー４３００に関して説明されるように確立され得る。次いで、過程４７００は、ステップ４７３０へと進む。
【０５１６】
ステップ４７３０では、データパケットが、一式の証明機関および多因子秘密共有に基づいて、セキュアな通信トンネル上での伝送に準備される。いくつかの実施形態では、この準備は、通信トンネルのうちの異なる１つの確立中に作成されるキーを使用して、データパケットを暗号化することを含み得る。いくつかの実施形態では、このキーは、各チャネルに関連付けられる一意の証明機関の証明書を使用してそのチャネルの確立中に伝達された、対称暗号化キー材料を使用して生成される対称キーであり得る。加えて、この準備は、多因子秘密共有に基づいて、各データパケットをシェアに分散し、次いで、ステップ４７２０でセキュアな通信トンネルを確立するために使用された一意の証明機関の証明書を使用して、結果として生じたシェアを暗号化することを含み得る。この分散過程は、図５および図６のデータ分割モジュール５２０または６１０に関して論議され、図８および図２０から２４に関して詳述されるような任意の好適なデータ分割または暗号分割を使用して達成され得る。
【０５１７】
加えて、いくつかの実施形態では、データパケットは、実質的に図３３、図３５、および図３６に関して概説されるセキュアなデータパーサの任意の数の使用を通して、シェアに分散され得る。例えば、セキュアなデータパーサは、暗号化されていないデータパケットを受信し得る。データパケットがキーを必要とするアルゴリズムを用いて分割される場合、分割暗号化キーが生成される。いくつかの実施形態では、データパケットは、実質的に図３３、図３５、および図３６に関して説明される技法のうちのいずれかに従うステップでシェアに分割され得る。いくつかの実施形態では、分割暗号化キーを暗号化し、総数よりも少ないシェアからのデータパケットの再生を可能にするために、耐故障スキームが使用され得る。例えば、データパケットは、少なくとも定数のシェアを再結合させることによって、シェアの少なくとも一部からシェアが修復可能であるように、任意の好適なデータ分散を使用してシェアに分散され得る。加えて、情報が、データパケットを再構築するために使用されるデータパケットのシェアに追加され得る。さらに、いったんシェアが作成されると、認証／完全性情報がデータパケットのシェアに埋め込まれ得る。各シェアは、ステップ４７２０でセキュアな通信トンネルを確立するために使用された一意の証明機関の公開キーを使用して、事後暗号化され得る。
【０５１８】
加えて、いくつかの実施形態では、データパケットの分散は、ヘッダ生成段階およびデータ区分段階といった２つの段階で生じ得る。段階は、例えば、図４０Ａに示されるような簡略化したヘッダ生成過程４０００、および図４０Ｂに示されるような簡略化したデータ区分段階４０１０であり得る。これらの過程の一方または両方が、データパケットに行われ得る。いくつかの実施形態では、データパケットは、第１の通信チャネルを確立するために使用される暗号化技術に基づいて事後暗号化され得る。次いで、事前暗号化されたデータパケットは、以下で説明されるように過程４０００および／または４０１０を通して実行され得る。
【０５１９】
図４０Ａのステップ４００２で示されるように、分割キーが生成され得る。次いで、暗号化されていない、または事前暗号化されたデータパケットが、随意で、ステップ４００４において（例えば、図３９に関して説明されるワークグループキーを使用して）暗号化され得る。ステップ４００６では、分割キーを使用してデータパケットを秘密情報のシェアに分割するために、「Ｎ分のＭ暗号分割」が使用され得る。次いで、データパケットの各シェアが、シェアヘッダに埋め込まれ得る。最終的に、シェア完全性ブロックおよび事後承認タグ（例えば、ＭＡＣ）が、各シェアのヘッダブロックに添付され得る。各ヘッダブロックは、単一の暗号化されたデータパケット内に適合するように設計され得る。各ヘッダブロックは、ステップ４７２０で通信トンネルの異なる１つの確立中に作成されるキーを使用して事後暗号化され得る。
【０５２０】
いくつかの実施形態では、秘密情報のシェアを含むヘッダが生成された後、セキュアなデータパーサは、データ区分段階に入り得る。このデータ区分段階は、例えば、図４０Ｂに示されるような簡略化したデータ区分過程４０１０であり得る。例えば、それぞれの暗号化されていない、または事前暗号化された着信データパケットは、ステップ４０１２で、共有キーまたはワークグループキー等の１つ以上のキーを使用して暗号化され得る。いくつかの実施形態では、暗号化されるデータは、簡略化したヘッダ生成過程４０００中に計算されるデータパケットのシェアを含むヘッダを含み得る。ステップ４０１４では、シェア完全性情報（例えば、ハッシュＨ）が、ステップ４０１２からの結果として生じた暗号文について計算され得る。例えば、ＳＨＡ−２５６ハッシュが、ステップ４０１２で１つ以上のキーを用いて暗号化されるデータについて計算され得る。ステップ４１０６では、次いで、データパケットは、本発明に従って上記で説明されるデータ分割アルゴリズムのうちの１つを使用して、２つ以上のデータシェアに区分され得る。いくつかの実施形態では、データパケットまたはデータブロックは、各データシェアが暗号化されたデータパケットまたはデータブロックの実質的にランダムな分配を含むように分割され得る。次いで、完全性情報（例えば、ハッシュＨ）が、各データシェアに添付され得る。いくつかの実施形態では、随意的な事後認証タグ（例えば、ＭＡＣ）も、計算され、各データシェアに添付され得る。加えて、各データシェアは、図４０Ｂに関して説明されるようなメタデータを含み得る。メタデータは、データパケットに関する情報と、データパケットのシェアを生成するために使用されるワークグループキーとを含み得る。各データパケットシェアは、ステップ４７２０でセキュアな通信トンネルを確立するために使用された一意の証明機関の公開キーを使用して、事後暗号化され得る。
【０５２１】
いくつかの実施形態では、データパケットのシェアは、図３８および３９の例証的なブロック図３８００および３９００に示されるように、キーおよびデータ構成要素がシェア内に記憶される方法と同様に、暗号化キーまたはデータ分割キーのシェアに関連付けられ得る。例えば、データパケットのシェアは、暗号化キー３８０４の複数部分が分割され、シェア３８１０内に記憶される方法と同様に記憶され得る。ワークグループキーが利用される場合、データのシェアは、例証的なブロック図３９００に示されるように、シェア内に記憶される前にワークグループキーを用いて暗号化され得る。
【０５２２】
どのようにしてデータパケットがシェアに分散されるかにかかわらず、各シェアは、ステップ４７２０で通信トンネルのうちの異なる１つの確立中に作成されたキーを使用して事後暗号化され得る。例えば、いくつかの実施形態では、各々が一意の証明機関を用いてステップ４７２０で確立される３つのセキュアな通信トンネルがあり得る。次いで、ステップ４７３０で生成される各シェアは、通信トンネルのうちの異なる１つの確立中に作成されたキーを使用して暗号化され得る。いくつかの実施形態では、これらのキーは、３つの一意の証明機関を使用して各チャネルの確立中に伝達された、対称暗号化キー材料を使用して生成される対称キーであり得る。次いで、過程４７００は、ステップ４７４０へと進む。
【０５２３】
ステップ４７４０では、準備されたデータパケットが、それらの宛先に伝送される。この伝送は、図１の通信リンク１０５に関して説明されるもの等の任意の好適な通信チャネル上で生じ得る。いくつかの実施形態では、パケットの宛先は、セキュアなデータプロキシ対応のサーバのうちの１つ以上であり得る。クライアントデバイス上で作動するクライアントアプリケーションは、サーバのＩＰアドレスまたはＵＲＬおよびポート番号に基づいて、セキュアなプロキシサーバ対応のサーバのリストを維持し得る。いくつかの実施形態では、クライアントアプリケーションは、サーバによってアドレス可能であるアドレスに関連付けられ得る。接続が、セキュアなプロキシサービス対応のサーバに対してクライアントによって要求されると、クライアントアプリケーションは、ステップ４７１０および４７２０で説明されるアプローチを利用して、特定のサーバプロキシサービスとの接続を確立する。いったん準備されたデータがその宛先に伝送されると、次いで、過程４７００は、ステップ４７５０へと進む。
【０５２４】
ステップ４７５０では、伝送されたデータパケットが受信される。いくつかの実施形態では、伝送されたデータパケットは、セキュアなデータプロキス対応のサーバ上で作動するサーバアプリケーション上に常駐する、セキュアなプロキシサービスによって受信され得る。サーバアプリケーションは、クライアントアプリケーションから接続を受け入れ、ポート転送規則に基づいて、受信するデータを適正でセキュアなプロキシ構成ポートに転送し得る。これらのポート転送規則は、クライアントアプリケーションおよびサーバアプリケーションによって事前決定されるか、または相互に合意され得る。次いで、過程４７００は、ステップ４７６０へと進む。
【０５２５】
ステップ４７６０では、データパケットが、一式の証明機関および多因子秘密共有に基づいて修復される。いくつかの実施形態では、この修復は、ステップ４７３０でデータパケットを解析および暗号化するために使用された準備過程の酷似した過程であり得る。例えば、ステップ４７３０では、データパケットは、ステップ４７２０でセキュアな通信トンネルの確立に関連付けられたキーを使用して暗号化されていることがある。加えて、暗号化されていない、または事前暗号化されたデータパケットのシェアは、図３３、図３５、および図３６に関して説明される技法のうちのいずれかに従って、セキュアなデータパーサの分散技法を使用して生成されていることがある。いくつかの実施形態では、データパケットのシェアは、第１の通信チャネルを確立するために使用される暗号化技術に基づいて暗号化され得る。
【０５２６】
したがって、データパケットのシェアは、最初に、ステップ４７２０でセキュアな通信トンネルの確立に関連付けられたキーに基づいて復号され得る。次いで、復号シェアは、図３４に関して説明される技法のうちのいずれかに従って、セキュアなデータパーサの修復機能を使用して修復され得る。いくつかの実施形態では、修復されたシェアは、第１の通信チャネルを確立するために使用される暗号化技術に基づいて復号され得る。いくつかの実施形態では、データの復号シェアは、シェアヘッダに埋め込まれ得る。そのような実施形態では、データのシェアは、復号シェアヘッダから抽出され、セキュアなデータパーサの修復機能を使用して修復され得る。次いで、過程フロー４７００は終了する。いくつかの実施形態では、ステップ４７３０、４７４０、４７５０、および４７６０は、セキュアな通信トンネル上での伝送のために必要に応じて繰り返され得る。
【０５２７】
図４８Ａに関するセキュアなプロキシサービスの実施形態を説明すると、過程フロー４８００は、セキュアなプロキシサービスを使用して、ウェブサーバ等の第２のデバイスと通信するように要求する、パーソナルコンピュータ上で作動するクライアント側アプリケーション上等、第１のデバイス上で実行され得る。過程フロー４８００は、ステップ４８１０から始まる。ステップ４８１０では、第１のセキュアな通信チャネルが確立され得る。このセキュアな通信チャネルは、図４７の過程フロー４７００のステップ４７１０に関して説明されるように、任意の好適な暗号化技術のキーを用いたキー確立過程を使用して確立され得る。いくつかの実施形態では、これらのキーは、「外部レベル証明機関」と呼ばれる証明機関から発行され得る。加えて、通信チャネルは、図４７の過程フロー４７００のステップ４７１０に関して論議されるように、任意の好適なアプリケーションに関連付けられるデータを運び得る。また、通信チャネルは、図４７の過程フロー４７００のステップ４７１０に関して説明されるように、いくつかの物理輸送媒体を横断して確立され得る。次いで、過程４８００は、ステップ４８１５へと進む。
【０５２８】
ステップ４８１５では、任意の数のセキュアな通信トンネルが第１の通信チャネル内に確立される（例えば、１、２、３、５、１０、５０、１００、または１００より多くのセキュアな通信トンネル）。各セキュアな通信チャネルは、一意の証明機関から取得される証明書を使用して確立され得、各トンネルは、それぞれの一意の証明機関に関連付けられ得る。いくつかの実施形態では、対称暗号化キー材料が、各チャネルに関連付けられる一意の証明機関によって発行される証明書を使用して、各チャネルの確立中に伝達され得る。そのような実施形態では、対称キー暗号化材料は、例えば、上記のＦＵＬＬ  ＴＬＳにおける証明機関の使用に関して論議される対称キー暗号化材料であり得る。図４７の過程フロー４７００と同様に、セキュアな通信トンネルを確立するために使用される一意の証明機関は、「内部レベル証明機関」と呼ばれ得る。セキュアな通信トンネルの各々は、図４７の過程フロー４７００に関して説明されるように、１つ以上の物理輸送媒体上で、任意の好適な暗号化技術を用いたキー確立過程を使用して確立され得る。また、図４７の過程フロー４７００のステップ４７２０と同様に、各証明機関は、各々によって発行される証明書が異なる公開および秘密キーペアを有するという点で、一意であり得る。いくつかの実施形態では、各セキュアな通信トンネルは、そのトンネル上で送信される全てのデータが、通信トンネルの確立中に作成されるキーに基づいて暗号化されるという点で、それぞれの一意の証明機関に関連付けられ得る。いくつかの実施形態では、この関連は、クライアントアプリケーション、サーバアプリケーション、または両方におけるセキュアなデータパーサによって、任意の好適なデータ構造において追跡され得る。次いで、過程４８００は、ステップ４８２０へと進む。
【０５２９】
ステップ４８２０では、着信データパケットは、多因子秘密共有を使用して、任意の数のシェアに暗号分割され得る。いくつかの実施形態では、着信データパケットは、ステップ４８１５で確立されたセキュアな通信トンネルの数と同じ数のシェアに分割され得る。着信データパケットの暗号分割は、例えば、図４７の過程フロー４７００のステップ４７３０に関して論議される任意の好適な分散技法に従って達成され得る。次いで、過程４８００は、ステップ４８２５へと進む。
【０５３０】
ステップ４８２５では、シェアの各々が、セキュアな通信トンネルのうちの異なる１つの確立中に作成されたキーを使用して暗号化される。いくつかの実施形態では、キーは、各チャネルに関連付けられる一意の証明機関の証明書を使用してそのチャネルの確立中に伝達された、対称暗号化キー材料を使用して生成される対称暗号化キーであり得る。いくつかの実施形態では、この対称暗号化キー材料は、例えば、上記のＦＵＬＬ  ＴＬＳにおける証明機関の使用に関して論議される、対称暗号化キー材料であり得る。しかしながら、セキュアな通信トンネルの確立中に作成されるキーは、任意の好適な暗号化キー、秘密情報、または対称暗号化キー以外の任意の他の情報であり得ることが理解され得る。例えば、セキュアな通信トンネルの確立中に作成されるキーは、非対称暗号化キーであり得る。いくつかの実施形態では、ステップ４８２０で生成されるシェアの各々は、シェアの各々を暗号化するために、通信トンネルの確立に関連付けられたキーのうちのどれが使用されるべきかを識別する１つ以上のビットを用いて前処理され、タグ付けされる。次いで、過程４８００は、ステップ４８３０へと進む。
【０５３１】
ステップ４８３０では、暗号化されたシェアの各々は、その下でトンネルが確立された、一意の証明機関に関連付けられるトンネル上で伝送される。例えば、３つの一意の証明機関のうちの異なる１つに基づいてそれぞれ確立された、３つのセキュアな通信トンネルがあった場合、暗号化されていない、または事前暗号化された各着信データパケットは、多因子秘密共有を使用して３つのシェアに暗号分割され、３つの一意の証明機関のうちの異なる１つを使用して作成された３つのキーのうちの異なる１つを使用して暗号化される。したがって、３つの暗号化されたシェアのうちの各々は、その下で一意の証明機関に関連付けられるトンネルが確立された、そのトンネル上で伝送される。いくつかの実施形態では、この伝送は、証明機関とトンネルとの間の関連を維持するデータ構造に基づき得る。
【０５３２】
いくつかの実施形態では、証明機関とセキュアな通信トンネルとの間の関連は、データ伝送の持続時間の全体を通して一定のままであり得る。他の実施形態では、証明機関とセキュアな通信トンネルとの間の関連は、動的であり得る。いくつかの実施形態では、関連は、データパケット全体の伝送後等の任意の好適な時点でシャッフルされ得る。例えば、第１のデータパケットが、過程フロー４８００によって処理され得、データパケットは、ステップ４８２０で３つのシェアに暗号分割される。第１のデータパケットの第１のシェアは、第１の証明機関を使用して第１のセキュアな通信トンネルの確立中に作成された第１のキーを使用して暗号化され、第１の通信トンネル上で伝送され得る。第１のデータパケットの第２のシェアは、第２の証明機関を使用して第２のセキュアな通信トンネルの確立中に作成された第２のキーを使用して暗号化され、第２の通信トンネル上で伝送され得る。最終的に、第１のデータパケットの第３のシェアは、第３の証明機関を使用して第３のセキュアな通信トンネルの確立中に作成された第３のキーを使用して暗号化され、第３の通信トンネル上で伝送され得る。
【０５３３】
いくつかの実施形態では、第１のデータパケットの３つのシェアが転送された後に、第１のシェアが第３のキーを使用して暗号化され、第３のトンネル上で伝送され得、第２のシェアが第１のキーを使用して暗号化され、第１のトンネル上で伝送され得、第３の証明機関が第２のキーを使用して暗号化され、第２のトンネル上で伝送され得るように、証明機関と通信チャネルとの間の関連がシャッフルされ得る。そのような実施形態では、これらの関連は、図２の保管場所２１０等の通信しているデバイスにアクセス可能である、任意の好適な保管場所に記憶され得る。
【０５３４】
図４８Ｂに関するセキュアなプロキシサービスの実施形態を説明すると、過程フロー４８５０は、クライアント側のセキュアなプロキシサービスアプリケーションを実行するパーソナルコンピュータ等の第１のデバイスと情報を交換している、ウェブサーバ等の第２のデバイス上で作動する、クライアント側のセキュアなプロキシサーバアプリケーション上で実行され得る。過程フロー４８５０は、ステップ４８３５から始まる。ステップ４８３５では、データの暗号化されたシェアはそれぞれ、それぞれの通信トンネル上で受信される。サーバアプリケーションは、クライアントアプリケーションから接続を受け入れ、ポート転送規則に基づいて、受信するデータを適正でセキュアなプロキシ構成ポートに転送し得る。これらのデータのシェアは、それぞれ、図４８Ａの過程フロー４８００のステップ４８２０、４８２５、および４８３０で暗号分割され、暗号化され、伝送された同じシェアであり得る。次いで、過程フロー４８５０は、ステップ４８４０へと進む。
【０５３５】
ステップ４８４０では、シェアの各々は、シェアが受信された、それぞれのセキュアな通信トンネルの確立に関連付けられたキーに基づいて復号される。いくつかの実施形態では、この過程は、図４８の過程フロー４８００のステップ４８２５に関して説明されるものと酷似し得る。次いで、過程フロー４８５０は、ステップ４８４５へと進む。
【０５３６】
ステップ４８４５では、復号データパケットシェアは、元のデータパケットに修復される。いくつかの実施形態では、この修復は、図４８の過程フロー４８００のステップ４８２０で使用される分散技法の酷似した過程であり得る。いくつかの実施形態では、修復されたシェアは、第１の通信チャネルを確立するために使用されるデータ分散および／または暗号化技術に基づいて復号され得る。次いで、過程フロー４８００は終了する。いくつかの実施形態では、過程フロー４８００および４８５０のステップは、セキュアな通信トンネル上での伝送のために必要に応じて繰り返され得る。
【０５３７】
過程フロー４７００、４８００、および４８５０に関して説明される通信プロトコルは、ある外部または内部レベルの証明機関が損なわれた場合に、データがデバイス間でセキュアに交換されるという保証を提供する。つまり、たとえ損なわれた証明機関が、その証明機関に関連付けられたキーに基づいて交換される情報にアクセスできたとしても、損なわれた証明機関に関連付けられる攻撃者は、通信の機密性または完全性を乱すほど十分な情報を有さない。例えば、外部レベル証明機関が損なわれたが、内部レベル証明機関がそれらの完全性を保持した場合、攻撃者は、セキュアな通信トンネルの各々の内側のデータのストリームを観察することが可能となる。しかしながら、攻撃者は、各セキュアな通信トンネル上でデータをセキュア化するために使用される一意の証明機関の各々の証明書の知識を含む、セキュアな通信トンネルの各々の内側で使用される暗号化の知識を有さない。
【０５３８】
別の実施例では、内部レベル証明機関のうちの１つ以上が損なわれたが、外部レベル証明機関が損なわれないままであった場合、攻撃者は、外部レベル証明機関によって使用される暗号化の知識を有さないため、データパケットの暗号分割部分を回復することができるが、暗号分割部分を復号することができないことがある。さらに、セキュアな通信トンネルを通して送信されるデータパケットが、少なくとも定数のシェアを再結合させることによってシェアの少なくとも一部から修復可能であるように、暗号分割される場合、セキュアなデータパーサのユーザは、セキュアな通信トンネルに関連付けられる証明書のうちの定数よりも少ないがいくつかが損なわれた場合に、攻撃者が暗号分割データパケットを修復することができなくなる、追加の保護を有し得る。
【０５３９】
図４８Ｃは、本発明の一実施形態による、任意の好適な追加、削除、または修正とともに任意の好適な組み合わせで使用され得る、通信チャネルの構造における一式の証明機関の間で信頼を分配する、セキュアなプロキシサービス４８７０の簡略化したブロック図である。セキュアなプロキシサービス４８７０は、図１−８に関して説明されるように、信頼エンジン１１０内の任意の好適な信頼エンジン１１０またはモジュール上に存在し得る。セキュアなプロキシサービスは、ＦＵＬＬ  ＴＬＳを使用して確立される、第１の通信チャネル４８８０およびサブチャネル（すなわち、セキュアな通信トンネル）４８７２、４８７４、および４８７６を含むものとして図示される。しかしながら、これらの通信チャネルは、図４７の過程フロー４７００のステップ４７１０および４７２０に関して論議されるように、または図４８Ａの過程フロー４８００のステップ４８１０および４８１５に関して論議されるように、任意の好適な暗号化を用いて、または暗号化を用いずに、確立され、使用され得ることが理解されるであろう。加えて、セキュアなプロキシサービス４８７０は、３つのサブチャネルを使用するものとして図示されているが、セキュアなプロキシサービス４８７０上で情報をセキュアに転送するために、任意の好適な数のサブチャネルが使用され得る。
【０５４０】
セキュアなプロキシサービス４８７０は、受信したデータパケット４８７７を含み得る。いくつかの実施形態では、データパケット４８７７は、セキュアなプロキシサービス４８７０によって処理されるデータの暗号化されていないパケットであり得る。データパケット４８７７は、図２の信頼エンジン２１０に関して説明される保管場所２１０等の任意の好適なソースから受信され得る。他の実施形態では、データパケット４８７７は、通信チャネル４８８０を確立するために使用される暗号化技術に従って事前暗号化され得る。例えば、セキュアなプロキシサービス４８７０に示されるように、通信チャネル４８８０は、ＦＵＬＬ  ＴＬＳを使用して確立される。このＦＵＬＬ  ＴＬＳ通信チャネルは、図４３の過程フロー４３００に従って確立され得る。
【０５４１】
セキュアなプロキシサービス４８７０はまた、暗号パケット分割モジュール４８７８を含み得る。いくつかの実施形態では、暗号パケット分割モジュール４８７８は、図４７の過程フロー４７００のステップ４７３０に関して論議される、または図４８Ａの過程フロー４８００のステップ４８２０および４８２５に関して論議される、暗号化およびデータ分散技法のうちのいずれかを実行および／または計算するための任意の回路および／または命令を含み得る。いくつかの実施形態では、暗号パケット分割モジュール４８７８は、サーバと通信するように要求する、クライアントデバイスまたはクライアント側アプリケーション上に存在し得る。他の実施形態では、暗号パケット分割モジュール４８７８は、図３７の例証的な概説過程３７００のセキュアなデータパーサ３７０６を実行するのに好適である、任意のデバイス上に存在するか、またはその上で作動し得る。
【０５４２】
セキュアなプロキシサービス４８７０はまた、通信チャネル４８８０を含み得る。通信チャネル４８８０は、図４７の過程フロー４７００のステップ４７１０における第１の通信チャネル関して説明されるように、または図４８Ａの過程フロー４８００のステップ４８１０における第１のセキュアな通信チャネルに関して説明されるように、任意の好適な暗号化を使用して、またはいずれの暗号化も使用せずに、１つ以上の物理的媒体上で確立され得る。サブチャネル４８７２、４８７４、および４８７６は、通信チャネル４８８０に基づいて確立され得る。これらのサブチャネルは、例えば、図４７の過程フロー４７００のステップ４７２０に関して説明される、または図４８Ａの過程フロー４８００のステップ４８１５に関して説明されるセキュアな通信トンネルに従って、一意の証明機関の証明書に基づいて１つ以上の物理的媒体上で確立され得る。このようにして、各サブチャネルが、一意の証明機関に関連付けられ得る。
【０５４３】
例えば、セキュアなプロキシサービス４８７０に示されるように、ＴＬＳサブチャネル４８７２は、証明機関ＣＡ１に関連付けられ、ＴＬＳサブチャネル４８７４は、証明機関ＣＡ２に関連付けられ、ＴＬＳサブチャネル４８７６は、証明機関ＣＡ３に関連付けられる。いくつかの実施形態では、サブチャネルとそれらそれぞれの証明機関との間の関連は、一定のままであり得る。他の実施形態では、サブチャネルとそれらそれぞれの証明機関との間の関連は、図４８Ａの過程フロー４８００のステップ４８３０に関して説明されるように変化し得る。通信チャネル４８８０およびサブチャネル４８７２、４８７３、および４８７６は、図１の暗号システム１００に関して説明される通信リンク１２５等の任意の好適な通信リンク上で確立され得る。
【０５４４】
いくつかの実施形態では、暗号パケット分割モジュール４８７８は、サブチャネル４８７２、４８７４、および４８７６上でデータパケット４８７７の分散シェアを伝送し得る。この伝送は、例えば、図４７の過程フロー４７００のステップ４７４０に従って、または例えば、図４８Ａの過程フロー４８００のステップ４８３０に従って生じ得る。いくつかの実施形態では、暗号パケット分割モジュール４８７８は、サブチャネル４８７２、４８７４、および４８７６のそれぞれの上で分割シェアのうちの１つを伝送し得る。他の実施形態では、暗号パケット分割モジュール４８７８は、サブチャネル４８７２、４８７４、および４８７６のうちの１つの上で、１つより多くの分割シェアを伝送し得る。そのような実施形態は、サブチャネル４８７２、４８７４、および４８７６のうちの１つが、サブチャネルのうちの１つを支持する物理的媒体の故障により使用不可能である場合に、有用であり得る。
【０５４５】
いくつかの実施形態では、サブチャネル４８７２、４８７４、および４８７６は、それぞれ、データ暗号化モジュール４８７１、４８７３、および４８７５を含み得る。データ暗号化モジュール４８７１、４８７３、および４８７５は各々、サブチャネルのうちの１つに関連付けられる一意の証明機関に関連付けられ得る。いくつかの実施形態では、データ暗号化モジュールは、データ暗号化を、そのサブチャネルを介して通るデータパケットの各シェアに適用する。例えば、プロキシサービス４８７０に関して示されるように、暗号化モジュール４８７１は、ＴＬＳサブチャネル４８７２に関連付けられる証明機関ＣＡ１に関連付けられ、チャネル４８７２の確立中に作成されたキーに基づいてＦＵＬＬ  ＴＬＳを使用して、サブチャネル４８７２を介して通るデータパケットの各シェアを暗号化する。チャネル４８７２の確立は、証明機関ＣＡ１から取得される証明書を使用し得る。暗号化モジュール４８７３は、ＴＬＳサブチャネル４８７４に関連付けられる証明機関ＣＡ２に関連付けられ、チャネル４８７４の確立中に作成されたキーに基づいてＦＵＬＬ  ＴＬＳを使用して、サブチャネル４８７４を介して通るデータパケットの各シェアを暗号化する。このチャネル４８７４の確立は、証明機関ＣＡ２から取得される証明書を使用し得る。最終的に、暗号化モジュール４８７５は、ＴＬＳサブチャネル４８７６に関連付けられる証明機関ＣＡ３に関連付けられ、チャネル４８７６の確立中に作成されたキーに基づいてＦＵＬＬ  ＴＬＳを使用して、サブチャネル４８７６を介して通るデータパケットの各シェアを暗号化する。このチャネル４８７６の確立は、証明機関Ｃ３から取得される証明書を使用し得る。いくつかの実施形態では、暗号化モジュール４８７２は、図３７の例証的な過程３７００のセキュアなデータパーサ３７０６を実行するのに好適である、任意のデバイス上に存在するか、またはその上で作動し得る。
【０５４６】
セキュアなプロキシサービス４８７０はまた、パケット修復モジュール４８７９を含み得る。パケット修復モジュールは、図４７の過程フロー４７００のステップ４７５０に関して説明されるように、または図４８Ｂの過程フロー４８００のステップ４８３５に関して説明されるように、サブチャネル４８７２、４８７４、および４８７６からデータパケットのシェアを受信し得る。いくつかの実施形態では、パケット修復モジュール４８７９は、図４７の過程フロー４７００のステップ４７６０に関して説明されるように、または図４８Ｂの過程フロー４８５０のステップ４８４０および４８４５に関して説明されるように、修復されたデータパケット４８８２を生成するように復号技法またはパケット修復技法のうちのいずれかを実行および／または計算するための任意の回路および／または命令を含み得る。いくつかの実施形態では、パケット修復モジュール４８７９は、クライアントデバイスまたはクライアント側アプリケーションから要求を受信する、サーバデバイスまたはサーバ側アプリケーション上に存在し得る。他の実施形態では、パケット修復モジュール４８７９は、図３７の例証的な概観過程３７００のセキュアなデータパーサ３７００を実行するのに好適である、任意のデバイス上に存在するか、またはその上で作動し得る。
【０５４７】
図４９は、本発明の一実施形態による、任意の好適な追加、削除、または修正とともに任意の好適な組み合わせで使用され得る、通信チャネルの構造における一式の証明機関の間で信頼を分配する、クライアント４９１０とサーバ４９２０との間のセキュアなプロキシサービス４９００の図示したステップおよび特徴の過程フロー図である。例えば、信頼は、以下で説明されるように、キー確立段階４５７０の一部として、第１の証明機関ＣＡ１、第２の証明機関ＣＡ２、および第３の証明機関ＣＡ３において分配され得る。いくつかの実施形態では、セキュアなプロキシサービス４９００は、クライアント４９１０とサーバ４９２０との間の情報のセキュアな交換のキー確立段階中および後であるが、クライアント４９１０およびサーバ４９２０がメッセージを交換する前に実行され得る。セキュアなプロキシサービス４９００は、過程フロー４７００、４８００、および４８５０のステップがセキュアなデータパーサに関連付けられる方法と同様に、セキュアなデータパーサに関連付けられる過程のうちの１つ以上の一部であり得る。加えて、セキュアなプロキシサービス４９００は、図４７、４８Ａ、および４８Ｂの過程フロー４７００、４８００、および４８５０の実施例であり得、またはセキュアなプロキシサービス４８７０の動作の実施例であり得る。
【０５４８】
セキュアなプロキシサービス４９００は、ステップ４９３０から始まる。ステップ４９３０では、クライアント４９１０は、図４７の過程フロー４７００のステップ４７１０および４７２０における第１の通信チャネルおよびセキュアな通信トンネル、ならびに図４８Ｂの過程フロー４８５０のステップ４８１０および４８２０における第１のセキュアな通信チャネルおよびセキュアな通信トンネルに関して説明されるように、第１の通信チャネル（図示せず）およびセキュアな通信トンネルを確立する。次いで、セキュアなプロキシサービス４９００は、ステップ４９１２へと進む。
【０５４９】
ステップ４９１２では、クライアント４９１０は、セキュアなデータパーサヘッダＨ１、Ｈ２、およびＨ３を生成し、それらをサーバ４９２０に伝送し得る。ヘッダＨ１、Ｈ２、およびＨ３は、クライアント４９１０およびサーバ４９２０によって合意されるデータ分散技法に関係する情報を含み得る。例えば、いくつかの実施形態では、クライアント４９１０およびサーバ４９２０は、それぞれの交換されたメッセージの「Ｎ分のＭ暗号分割」の使用に合意し得る。ヘッダＨ１、Ｈ２、およびＨ３は、ステップ４９３０で、セキュアな通信トンネルの確立に関連付けられたキーに基づいて暗号化され得る。いくつかの実施形態では、この暗号化およびヘッダ生成は、図４７の過程フロー４７００のステップ４７３０に関して論議される、または図４８Ｂの過程フロー４８００のステップ４８２０および４８２５に関して論議される、暗号化およびデータ分散技法のうちのいずれかの一部として含まれ得る。加えて、いくつかの実施形態では、このヘッダ生成過程は、図４８Ｃのセキュアなプロキシサービス４８７０に関して説明されるように、暗号パケット分割モジュール４８７８によって実行され得る。次いで、クライアント４９１０は、ヘッダＨ１、Ｈ２、およびＨ３をサーバ４９２０に伝送し得る。この伝送は、例えば、図４７の過程フロー４７００のステップ４７４０に従って、または例えば、図４８Ａの過程フロー４８００のステップ４８３０に従って生じ得る。加えて、暗号パケット分割モジュール４８７８は、図４８Ｃのセキュアなプロキシサービス４８７０に関して説明されるように、サブチャネル４８７２、４８７４、および４８７６上で、データパケット４８７７のヘッダＨ１、Ｈ２、およびＨ３を伝送し得る。次いで、セキュアなプロキシサービス４９００は、ステップ４９２２へと進む。
【０５５０】
ステップ４９２２では、サーバ４９２０は、図４７の過程フロー４７００のステップ４７５０に関して説明されるように、または図４８Ｂの過程フロー４８５０のステップ４８３５に関して説明されるように、ヘッダＨ１、Ｈ２、およびＨ３を受信し得る。次いで、クライアント４９１０は、データＤをシェアＤ１、Ｄ２、およびＤ３に分散し得る。シェアＤ１、Ｄ２、およびＤ３は、ステップ４９３０で、セキュアな通信トンネルの確立に関連付けられたキーに基づいて暗号化され得る。いくつかの実施形態では、この分散過程は、図４７の過程フロー４７００のステップ４７３０に関して論議される、または図４８Ａの過程フロー４８００のステップ４８２５に関して論議される、暗号化およびデータ分散技法のうちのいずれかの一部として含まれ得る。セキュアなプロキシサービス４９００は、暗号化および解析されたデータのシェアをクライアント４９１０に伝送する。この伝送は、例えば、図４７の過程フロー４７００のステップ４７４０に従って、または例えば、図４８Ａの過程フロー４８００のステップ４８３０に従って生じ得る。セキュアなプロキシサービス４９００は、ステップ４９１４へと進み得る。
【０５５１】
ステップ４９１４では、クライアント４９１０は、図４７の過程フロー４７００のステップ４７５０に関して説明されるように、または図４８Ｂの過程フロー４８５０のステップ４８３５に関して説明されるように、シェアＤ１、Ｄ２、およびＤ３を受信し得る。いくつかの実施形態では、パケット修復モジュールが、図４８Ｃのセキュアなプロキシサービス４８７０のパケット修復モジュール４８７９に関して説明されるように、サブチャネルからデータパケットのシェアを受信し得る。次いで、クライアント４９１０は、シェアＤ１、Ｄ２、およびＤ３を復号および修復し得る。シェアは、図４７の過程フロー４７００のステップ４７６０に関して説明されるように、または図４８Ｂの過程フロー４８５０のステップ４８４０および４８４５に関して説明されるように、任意の好適な復号および修復技法に従って復号および修復され得る。いくつかの実施形態では、シェアＤ１、Ｄ２、およびＤ３は、図４８Ｃのセキュアなプロキシサービス４８７０のパケット修復モジュール４８７９等のパケット修復モジュールによって、復号および修復され得る。クライアント４９１０は、ステップ４９１２および４９１４のうちのいずれかを繰り返し得、サーバ４９２０は、クライアント４９１０とサーバ４９２０との間でデータを伝送するために必要に応じて何度でもステップ４９２２を繰り返し得る。次いで、セキュアなプロキシサービス４９００は終了する。
【０５５２】
図５０は、本発明の一実施形態による、任意の好適な追加、削除、または修正とともに任意の好適な組み合わせで使用され得る、通信チャネルの構造における一式の証明機関の間で信頼を分配する、クライアント５０１０とサーバ５０２０との間のセキュアなプロキシサービス５０００の簡略化したブロック図である。セキュアなプロキシサービス５０００は、例えば、過程フロー４７００、４８００、または４８５０に関して論議されるセキュアなプロキシサービス、ならびに図４７−４９に関して説明されるようなセキュアなプロキシサービス４８７０または４９００であり得る。セキュアなプロキシサービス５０００は、図４７の過程フロー４７００のステップ４７１０および図４８Ａの過程フロー４８００のステップ４８１０に関して説明されるように、セキュアな通信トンネル５０３０、５０４０、および５０５０のうちの各々が、外部レベル証明機関（図５０に示されていない）に関連付けられるように実装され得る。加えて、セキュアなプロキシサービス５０００は、セキュアな通信トンネル５０３０、５０４０、および５０５０のうちの各々が、第１の証明機関ＣＡ１、第２の証明機関ＣＡ２、および第３の証明機関ＣＡ３等の内部レベル証明機関のうちの異なる１つに関連付けられ、セキュアな通信トンネル５０３０、５０４０、および５０５０のうちの各々が、異なる物理輸送媒体上で確立されるように実装され得る。これらの異なる物理的媒体は、図４７の過程フロー４７００のステップ４７１０に関して、または図４８Ａの過程フロー４８００のステップ４８１０に関して説明されるような任意の好適な物理輸送媒体であり得る。例えば、図５０に図示されるように、セキュアな通信トンネル５０３０、５０４０、および５０５０は、それぞれ、ＷｉＦｉ、Ｅｔｈｅｒｎｅｔ（登録商標）、およびセルラー通信チャネル上で確立され得る。
【０５５３】
セキュアなプロキシサービス５０００の通常動作中、クライアント５０１０は、第１のセキュアな通信トンネル５０３０上で第１のデータシェア５０１２を、第２のセキュアな通信トンネル５０４０上で第２のデータシェア５０１４を、および第３のセキュアな通信トンネル５０５０上で第３のデータシェア５０１６を送信し得る。データシェア５０１２、５０１４、および５０１６は、図４７の過程フロー４７００のステップ４７３０に関して論議される、または図４８Ａの過程フロー４８００のステップ４８２０および４８２５に関して論議される、任意の好適なデータ分散および暗号化技法を使用して、クライアント５０１０によって計算されるデータシェアであり得る。セキュアなプロキシサービス５０００は、データを３つのデータシェアに分割するものとして図示されているが、セキュアなプロキシサービス５０００は、データを任意の好適な数のシェアに分散し、任意の好適な数のセキュアな通信トンネル上でそれらを伝送し得ることが理解され得る。
【０５５４】
いくつかの実施形態では、物理的媒体は、ネットワーク障害を体験する場合がある。このネットワーク障害は、物理的媒体の構造的機能不全によるものである場合がある。例えば、セキュアなプロキシサービス５０００において図示されるように、第３のセキュアな通信トンネル５０５０を確立するために使用されるセルラー通信チャネルは、セルラー電波塔の損傷により、ネットワーク障害を体験する場合がある。
【０５５５】
いくつかの実施形態では、セキュアなプロキシサービス５０００は、ネットワーク障害（図５０に示されていない）に応じて、セキュアな通信トンネル５０３０、５０４０、および５０５０上でのそのデータパケットの伝送を変更しないことがある。言い換えれば、クライアント５０１０は、第１のセキュアな通信トンネル５０３０上で第１のデータシェア５０１２を、および第２のセキュアな通信トンネル５０４０上で第２のデータシェア５０１４を送信し続け得る。セキュアなプロキシサービス５０００のいくつかの実施形態では、第１のデータシェア５０１２および第２のデータシェア５０１４を含むデータパケットは、データ完全性の損失を伴わずに交換され続け得る。例えば、各伝送されたデータパケットを回復するために、定数のシェア５０１２、５０１４、および５０１６のみが必要とされるように、セキュアなプロキシサービス５０００によって処理されるデータパケットが、秘密共有アルゴリズム（例えば、Ｓｈａｍｉｒ秘密共有アルゴリズム）を使用して分割される場合には、クライアント５０１０とサーバ５０２０との間で交換されるパケット間のデータ完全性の損失がないことがある。
【０５５６】
いくつかの実施形態では、セキュアなプロキシサービス５０００は、セキュアな通信トンネル上でのそのデータパケットの伝送を変更し得る。例えば、第１のデータシェア５０１２が、ＷｉＦｉベースのセキュアな通信トンネル５０３０上で伝送される続け得る一方で、第２のデータシェア５０１４および第３のデータシェア５０１４は、Ｅｔｈｅｒｎｅｔ（登録商標）ベースのセキュアな通信トンネル５０４０上で伝送され得る。そのような実施形態では、セキュアな通信トンネルのうちの１つ以上は、追加のキー確立過程を使用して、１つ以上のセキュアな通信トンネルに分割される必要があり得る。この分割は、例えば、図４７の過程フロー４７００のステップ４７２０、または図４８の過程フロー４８００のステップ４８２０に関して説明される、キー確立段階のうちのいずれかに従って達成され得る。これらのキー確立段階後に、データパケットのデータシェアは、セキュアなプロキシサービス５０００の新しい構成に従って再開し得る。
【０５５７】
いくつかの実施形態では、このセキュアなプロキシサービス５０００の新しい構成は、セキュアな通信トンネルの確立またはセキュアな通信トンネルの分割部分に関連付けられたキーに基づいて、データの分割シェアがどのように暗号化されるかを変更し得る。例えば、第１のデータシェア５０１２は、ＷｉＦｉベースの第１のセキュアな通信トンネル５０３０の確立に関連付けられたキーに基づいて暗号化され、次いで、そのトンネル上で伝送され得る。第２のデータシェア５０１４は、Ｅｔｈｅｒｎｅｔ（登録商標）ベースの第２のセキュアな通信トンネル５０４０の第１の分割部分５０４２の確立に関連付けられたキーに基づいて暗号化され、第１の分割部分５０４２上で伝送され得、第３のデータシェア５０１６は、Ｅｔｈｅｒｎｅｔ（登録商標）ベースのセキュアな通信トンネル５０４０の第２の分割部分５０４４の確立に関連付けられたキーに基づいて暗号化され、第２の分割部分５０４４上で伝送され得る。いくつかの実施形態では、第１のセキュアな通信トンネル５０３０は、証明機関ＣＡ１から取得される証明書を使用して確立され得、Ｅｔｈｅｒｎｅｔ（登録商標）ベースの第２のセキュアな通信トンネル５０４０の第１の分割部分５０４２は、証明機関ＣＡ２から取得される証明書を使用して確立され得、Ｅｔｈｅｒｎｅｔ（登録商標）ベースのセキュアな通信トンネル５０４０の第２の分割部分５０４４は、証明機関ＣＡ３から取得される証明書を使用して確立され得る。いくつかの実施形態では、セキュアなプロキシサービス５０００は、その上にセキュアな通信トンネルが確立される通信チャネルが故障するか、または修復されるにつれて、これらの追加のキー確立過程を適応的に実行し得る。図５０に図示されるようなセキュアなプロキシサービス５０００の実施形態では、セキュアなプロキシサービス５０００は、「通信媒体冗長」と呼ばれ得る。
【０５５８】
図５０に図示されるようなセキュアなプロキシサービス５０００の実施形態では、データは、データ機密性、完全性、および真正性の損失を伴わずに、クライアント５０１０とサーバ５０２０との間で交換され得る。つまり、たとえ損なわれた証明機関が、その証明機関に基づいて交換されるメッセージにアクセスできたとしても、その証明機関に関連付けられる攻撃者は、通信の機密性または完全性を乱すほど十分な情報を持たない場合がある。例えば、セキュアなプロキシサービス５０００の外部レベル証明機関が損なわれたが、内部レベル証明機関の完全性が保たれた場合、攻撃者は、ＷｉＦｉベースの通信チャネルおよびＥｔｈｅｒｎｅｔ（登録商標）ベースの通信チャネルの両方の部分上で、データのストリームを観察することができ得るが、それぞれのセキュアな通信トンネル上でデータをセキュア化するために使用される暗号化の知識を持たない場合がある。
【０５５９】
別の実施形態では、内部レベル証明機関のうちの１つ以上が損なわれたが、外部証明機関が損なわれないままであった場合、攻撃者は、外部レベル証明機関によって使用される暗号化の知識を持たない場合があるため、データパケットの暗号分割部分のうちのいくつかを回復することができ得るが、データパケット自体を復号することができないことがある。さらに、セキュアな通信トンネルを通して送信されるデータパケットが、少なくとも定数のシェアを再結合させることによってシェアの少なくとも一部から修復可能であるように、暗号分割される場合、セキュアなデータパーサのユーザは、セキュアな通信トンネルに関連付けられる証明書のうちの定数よりも少ないがいくつかが損なわれた場合に、攻撃者が暗号分割データパケットを修復することができないことがある、追加の保護を有し得る。
【０５６０】
加えて、他の組み合わせ、追加、置換、および修正が、本明細書の開示を考慮して当業者に明白となるであろう。
【図１】
2014195331.tif 000003
【図２】
2014195331.tif 000004
【図３】
2014195331.tif 000005
【図４】
2014195331.tif 000006
【図５】
2014195331.tif 000007
【図６】
2014195331.tif 000008
【図７】
2014195331.tif 000009
【図８】
2014195331.tif 000010
【図９Ａ】
2014195331.tif 000011
【図９Ｂ】
2014195331.tif 000012
【図１０】
2014195331.tif 000013
【図１１】
2014195331.tif 000014
【図１２】
2014195331.tif 000015
【図１３】
2014195331.tif 000016
【図１４】
2014195331.tif 000017
【図１５】
2014195331.tif 000018
【図１６】
2014195331.tif 000019
【図１７】
2014195331.tif 000020
【図１８】
2014195331.tif 000021
【図１９】
2014195331.tif 000022
【図２０】
2014195331.tif 000023
【図２１】
2014195331.tif 000024
【図２２】
2014195331.tif 000025
【図２３】
2014195331.tif 000026
【図２４】
2014195331.tif 000027
【図２５】
2014195331.tif 000028
【図２６】
2014195331.tif 000029
【図２７】
2014195331.tif 000030
【図２８】
2014195331.tif 000031
【図２９】
2014195331.tif 000032
【図３０】
2014195331.tif 000033
【図３１】
2014195331.tif 000034
【図３２】
2014195331.tif 000035
【図３３】
2014195331.tif 000036
【図３４】
2014195331.tif 000037
【図３５】
2014195331.tif 000038
【図３６】
2014195331.tif 000039
【図３７】
2014195331.tif 000040
【図３８】
2014195331.tif 000041
【図３９】
2014195331.tif 000042
【図４０Ａ】
2014195331.tif 000043
【図４０Ｂ】
2014195331.tif 000044
【図４１】
2014195331.tif 000045
【図４３】
2014195331.tif 000046
【図４４】
2014195331.tif 000047
【図４５】
2014195331.tif 000048
【図４６】
2014195331.tif 000049
【図４７】
2014195331.tif 000050
【図４８Ａ】
2014195331.tif 000051
【図４８Ｂ】
2014195331.tif 000052
【図４８Ｃ】
2014195331.tif 000053
【図４９】
2014195331.tif 000054
【図５０】
2014195331.tif 000055
【図４２】
2014195331.tif 000056
【外国語明細書】
2014195331000001.pdf