(57)【要約】コンピュータ表現可能なオブジェクト（１２０）（限定としてではなく、暗号鍵、あるいはシステムのグラフまたはブール記述）が、一般化されたカモフラージュ技術を使用してセキュアにされる。セキュアにされたオブジェクトは、システムの中に記憶される必要はなく、暗号化された形態で記憶される必要さえない。代わりに、この技術は、有効なパスワード（ユーザが保持する任意のコンピュータ表現可能な情報であることが可能な）が入力された場合、セキュアにされたオブジェクトを再生成する合成関数（１１０）を使用する。有効なパスワードが入力されるたびに毎回、セキュアにされたオブジェクトを再生成することにより、セキュアにされたオブジェクトを記憶する必要がない。無効なパスワードが入力された場合、この技術は、セキュアにされたオブジェクトから誤ったオブジェクトを生成することが可能である。ユーザが誤ったオブジェクトを使用しようと試みた場合、ユーザは、自身が暴露されていることを知ることなく、許可を受けていないと暴露される。
2004523183.tif 000002
【特許請求の範囲】
【請求項１】
アクセス規制システムを操作して許可のないアクセスから状態情報を保護するための方法であって、
（ａ）デジタル形態で表現された状態情報を獲得するステップと、
（ｂ）前記状態情報から第１の行列を導出するステップと、
（ｃ）前記第１の行列を許可されたユーザが使用することができるパスワードとして記憶するステップと、
（ｄ）前記状態情報から第２の行列を導出するステップと、
（ｅ）前記第２の行列を前記アクセス規制システムがアクセスすることができるコンピュータ読取り可能ウォレットの中に記憶するステップと、
（ｆ）ユーザによって入力された候補パスワードを前記第２の行列と併せて使用して、実行可能な合成関数をコンピュータ読取り可能メモリに記憶し、候補行列を生成するステップであって、
（ｉ）前記生成された候補状態情報は、前記候補パスワードが前記パスワードではない場合、前記行列を再生成せず、
（ｉｉ）前記生成された候補状態情報は、前記候補パスワードが前記パスワードである場合、前記行列を再生成するステップとを備え、
これにより前記状態情報を、前記パスワードを有さない人による許可のないアクセスから保護することを特徴とする方法。
【請求項２】
前記第２の行列をカモフラージュすることによってマルチレベルアクセス規制スキームを達成するステップをさらに備えたことを特徴とする請求項１に記載の方法。
【請求項３】
前記状態情報は、ノード群および前記ノード群の少なくとも一部の間のリンク群によって特徴付けられたネットワークのステータスを表わすグラフを含むことを特徴とする請求項１に記載の方法。
【請求項４】
デジタル形態で表現可能な任意の秘密を、前記秘密を前記ノードのなかのいくつかの間の前記グラフの値によって表現される相互接続として表現することによって保護するのに使用されることを特徴とする請求項３に記載の方法。
【請求項５】
前記グラフは、行優先順または列優先順の行列として表現された場合、前記秘密を表現する値を有する配列を備えたことを特徴とする請求項４に記載の方法。
【請求項６】
前記秘密を表現するステップは、前記秘密に十分なビットの埋込みを行って完全平方を形成するステップを含むことを特徴とする請求項４に記載の方法。
【請求項７】
前記グラフは、無向グラフであることを特徴とする請求項３に記載の方法。
【請求項８】
前記グラフは、有向グラフであることを特徴とする請求項３に記載の方法。
【請求項９】
前記状態情報は、ブール関数の複数の出力値を含む配列を少なくとも備え、各出力値は、前記ブール関数の演算数に関する固有の一連の入力値に対応することを特徴とする請求項１に記載の方法。
【請求項１０】
前記状態情報は、前記出力値のそれぞれに対応する前記一連の入力値をさらに含むことを特徴とする請求項９に記載の方法。
【請求項１１】
（ａ）前記第１の行列および前記第２の行列は、配列を含み、
（ｂ）前記状態情報配列は、ブール関数の出力値を表わし、前記出力値は、前記ブール関数に対する可能な一連の入力値の既知であるが記憶されていない階層に対応する方法で順序付けられていることを特徴とする請求項９に記載の方法。
【請求項１２】
デジタル形態で表現された任意の秘密を、前記秘密を前記状態情報配列の前記値として表現することによって保護するのに使用されることを特徴とする請求項９に記載の方法。
【請求項１３】
前記秘密を前記表現するステップは、前記秘密に十分なビットの埋込みを行って、前記アクセス規制システムの計算論理において使用される基数の整数の累乗を形成するステップを含むことを特徴とする請求項１２に記載の方法。
【請求項１４】
アクセス規制システムを操作して許可のないアクセスから状態情報を保護するための方法であって、
（ａ）前記状態情報に関連する第１の行列を前記アクセス規制システムがアクセスすることができるコンピュータ読取り可能ウォレットから取り出すステップと、
（ｂ）前記第１の行列、および第２の行列として記憶されているパスワードに応じて前記状態情報を表現する合成関数にアクセスするステップと、
（ｃ）ユーザによって入力された候補パスワードを受け取るステップと、
（ｄ）前記候補パスワードを前記ウォレットの中に記憶された少なくとも前記第１の行列と併せて前記合成関数の演算数として使用して前記合成関数を実行することにより、前記ユーザのために候補状態情報を生成するステップであって、
（ｉ）前記生成された候補状態情報は、前記候補パスワードが前記パスワードではない場合、前記状態情報を再生成せず、
（ｉｉ）前記生成された候補状態情報は、前記候補パスワードが前記パスワードである場合、前記状態情報を再生成するステップと、
（ｅ）前記候補状態情報を前記アクセス規制システムの前記ユーザに出力するステップと
を備えたことを特徴とする方法。
【請求項１５】
前記行列の少なくとも１つは、行優先順序付けまたは列優先順序付けを使用して表現された配列であることを特徴とする請求項１４に記載の方法。
【請求項１６】
前記行列の少なくとも１つが、前記ユーザがアクセスすることが可能なスマートカード上に記憶されることを特徴とする請求項１４に記載の方法。
【請求項１７】
前記状態情報は、ノード群および前記ノード群の少なくとも一部の間のリンク群によって特徴付けられたネットワークのステータスを表わすグラフを含むことを特徴とする請求項１４に記載の方法。
【請求項１８】
前記グラフは、隣接行列の形態をとることを特徴とする請求項１７に記載の方法。
【請求項１９】
前記合成関数は、グラフ加算を含むことを特徴とする請求項１７に記載の方法。
【請求項２０】
前記合成関数は、グラフ積演算を含むことを特徴とする請求項１７に記載の方法。
【請求項２１】
デジタル形態で表現可能な任意の秘密を、前記秘密を前記ノードのなかのいくつかの間の前記グラフの値によって表現される相互接続として表現することによって保護するのに使用されることを特徴とする請求項１７に記載の方法。
【請求項２２】
前記グラフは、行優先順または列優先順の行列として表現された場合、前記秘密に等しい値を有する配列を備えたことを特徴とする請求項２１に記載の方法。
【請求項２３】
前記ネットワークは、物理ネットワークの要素を含むことを特徴とする請求項１７に記載の方法。
【請求項２４】
前記ネットワークは、論理ネットワークの要素を含むことを特徴とする請求項１７に記載の方法。
【請求項２５】
前記状態情報は、ブール関数の複数の出力値を含む配列を少なくとも備え、各出力値は、前記ブール関数の演算数に関する固有の一連の入力値に対応することを特徴とする請求項１４に記載の方法。
【請求項２６】
前記状態情報は、前記出力値のそれぞれに対応する前記一連の入力値をさらに含むことを特徴とする請求項２５に記載の方法。
【請求項２７】
（ａ）前記第１の行列および前記第２の行列は、配列を含み、
（ｂ）前記状態情報配列は、ブール関数の出力値を表わし、前記出力値が、前記ブール関数に対する可能な一連の入力値の既知であるが記憶されていない階層に対応する方法で順序付けられていることを特徴とする請求項２５に記載の方法。
【請求項２８】
デジタル形態で表現された任意の秘密を、前記秘密を前記状態情報配列の前記値として表現することによって保護するのに使用されることを特徴とする請求項２７に記載の方法。
【請求項２９】
アクセス規制システムを操作して許可のないアクセスから状態情報を保護するための論理命令を含むコンピュータ読取り可能媒体であって、
前記論理命令は、実行されたとき、
（ａ）デジタル形態で表現された状態情報を獲得し、
（ｂ）前記状態情報から第１の行列を導出し、
（ｃ）前記第１の行列を許可されたユーザが使用することができるパスワードとして記憶し、
（ｄ）前記状態情報から第２の行列を導出し、
（ｅ）前記第２の行列を前記アクセス規制システムがアクセスすることができるコンピュータ読取り可能ウォレットの中に記憶し、
（ｆ）ユーザによって入力された候補パスワードを前記第２の行列と併せて使用して、実行可能な合成関数をコンピュータ読取り可能メモリに記憶し、候補行列を生成し、
（ｉ）前記生成された候補行列は、前記候補パスワードが前記パスワードではない場合、前記状態情報を再生成せず、
（ｉｉ）前記生成された候補行列は、前記候補パスワードが前記パスワードである場合、前記状態情報を再生成することにより、
前記状態情報を、前記パスワードを有さない人による許可のないアクセスから保護することを特徴とするコンピュータ読取り可能媒体。
【請求項３０】
前記状態情報は、ノード群および前記ノード群の少なくとも一部の間のリンク群によって特徴付けられたネットワークのステータスを表わすグラフを含むことを特徴とする請求項２９に記載のコンピュータ読取り可能媒体。
【請求項３１】
前記状態情報は、ブール関数の複数の出力値を含む配列を少なくとも備え、各出力値は、前記ブール関数の演算数に関する固有の一連の入力値に対応することを特徴とする請求項２９に記載のコンピュータ読取り可能媒体。
【請求項３２】
アクセス規制システムを操作して許可のないアクセスから状態情報を保護するための論理命令を含むコンピュータ読取り可能媒体であって、
前記論理命令は、実行されたとき、
（ａ）前記状態情報に関連する第１の行列を前記アクセス規制システムがアクセスすることが可能なコンピュータ読取り可能ウォレットから取り出し、
（ｂ）前記第１の行列、および第２の行列として記憶されているパスワードに応じて前記状態情報を表現する合成関数にアクセスし、
（ｃ）ユーザによって入力された候補パスワードを受け取り、
（ｄ）前記候補パスワードを前記ウォレットの中に記憶された少なくとも前記第１の行列と併せて前記合成関数の演算数として使用して前記合成関数を実行することにより、前記ユーザのために候補状態情報を生成して、
（ｉ）前記生成された候補状態情報は、前記候補パスワードが前記パスワードではない場合、前記状態情報を再生成せず、
（ｉｉ）前記生成された候補状態情報は、前記候補パスワードが前記パスワードである場合、前記状態情報を再生成し、
（ｅ）前記候補状態情報を前記アクセス規制システムの前記ユーザに出力することを特徴とするコンピュータ読取り可能媒体。
【請求項３３】
前記状態情報は、ノード群および前記ノード群の少なくとも一部の間のリンク群によって特徴付けられたネットワークのステータスを表わすグラフを含むことを特徴とする請求項３２に記載のコンピュータ読取り可能媒体。
【請求項３４】
前記状態情報は、ブール関数の複数の出力値を含む配列を少なくとも備え、各出力値は、前記ブール関数の演算数に関する固有の一連の入力値に対応することを特徴とする請求項３２に記載のコンピュータ読取り可能媒体。
【請求項３５】
許可のないアクセスから状態情報を保護するアクセス規制サーバであって、
（ａ）コンピュータプロセッサと、
（ｂ）デジタル形態で表現された状態情報を獲得するように構成されたインターフェースと、
（ｃ）前記状態情報を少なくとも第１の行列および第２の行列に分解するように構成された分解モジュールと、
（ｄ）前記第１の行列を許可されたユーザが使用することができるパスワードとして記憶するように構成されたメモリと、
（ｅ）前記第２の行列を前記アクセス規制サーバがアクセスすることができるコンピュータ読取り可能ウォレットの中に記憶するように構成されたメモリと、
（ｆ）ユーザによって入力された候補パスワードを前記第２の行列と併せて使用して、候補行列を生成するように前記プロセッサによって実行可能な合成関数を記憶するように構成されたメモリであって、
（ｉ）前記生成された候補行列は、前記候補パスワードが前記パスワードではない場合、前記状態情報を再生成せず、
（ｉｉ）前記生成された候補行列は、前記候補パスワードが前記パスワードである場合、前記状態情報を再生成するメモリとを備え、
これにより前記状態情報を、前記パスワードを有さない人による許可のないアクセスから保護することを特徴とするサーバ。
【請求項３６】
許可のないアクセスから状態情報を保護するアクセス規制サーバであって、
（ａ）前記アクセス規制サーバがアクセスすることができる前記状態情報に関連する第１の行列を記憶するように構成されたコンピュータ読取り可能ウォレットと、
（ｂ）前記第１の行列、および第２の行列として記憶されているパスワードに応じて前記状態情報を表現する合成関数を記憶するように構成されたメモリと、
（ｃ）ユーザによって入力された候補パスワードを受け取るように構成されたインターフェースと、
（ｄ）前記候補パスワードを前記ウォレットの中に記憶された少なくとも前記第１の行列と併せて前記合成関数の演算数として使用することによって前記合成関数を実行して前記ユーザのために候補状態情報を生成するように構成されたコンピュータプロセッサであって、
（ｉ）前記生成された候補状態情報は、前記候補パスワードが前記パスワードではない場合、前記状態情報を再生成せず、
（ｉｉ）前記生成された候補状態情報は、前記候補パスワードが前記パスワードである場合、前記状態情報を再生成するプロセッサと、
（ｅ）前記候補状態情報を前記アクセス規制サーバの前記ユーザに出力するように構成されたインターフェースと
を備えたことを特徴とするサーバ。
【請求項３７】
許可のないアクセスから状態情報を保護するアクセス規制システムであって、
（ａ）デジタル形態で表現された状態情報を獲得する手段と、
（ｂ）前記状態情報から第１の行列を導出する手段と、
（ｃ）前記第１の行列を許可されたユーザが使用することができるパスワードとして記憶する手段と、
（ｄ）前記状態情報から第２の行列を導出する手段と、
（ｅ）前記第２の行列を前記アクセス規制システムがアクセスすることができるコンピュータ読取り可能ウォレットの中に記憶する手段と、
（ｆ）ユーザによって入力された候補パスワードを前記第２の行列と併せて使用して、実行可能な合成関数をコンピュータ読取り可能メモリに記憶し、候補行列を生成する手段であって、
（ｉ）前記生成された候補行列は、前記候補パスワードが前記パスワードではない場合、前記状態情報を再生成せず、
（ｉｉ）前記生成された候補行列は、前記候補パスワードが前記パスワードである場合、前記状態情報を再生成する手段とを備え、
これにより前記状態情報を、前記パスワードを有さない人による許可のないアクセスから保護することを特徴とするシステム。
【請求項３８】
許可のないアクセスから状態情報を保護するアクセス規制システムであって、
（ａ）前記状態情報に関連する第１の行列を前記アクセス規制システムがアクセスすることができるコンピュータ読取り可能ウォレットから取り出す手段と、
（ｂ）前記第１の行列、および第２の行列として記憶されているパスワードに応じて前記状態情報を表現する合成関数にアクセスする手段と、
（ｃ）ユーザによって入力された候補パスワードを受け取る手段と、
（ｄ）前記候補パスワードを前記ウォレットの中に記憶された少なくとも前記第１の行列と併せて前記合成関数の演算数として使用して前記合成関数を実行することにより、前記ユーザのために候補状態情報を生成する手段であって、
（ｉ）前記生成された候補状態情報は、前記候補パスワードが前記パスワードではない場合、前記状態情報を再生成せず、
（ｉｉ）前記生成された候補状態情報は、前記候補パスワードが前記パスワードである場合、前記状態情報を再生成する手段と、
（ｅ）前記候補状態情報を前記アクセス規制システムの前記ユーザに出力する手段と
を備えたことを特徴とするシステム。
【請求項３９】
アクセス規制システムを操作して許可のないアクセスから状態情報を保護するための方法であって、
（ａ）デジタル形態で秘密を獲得するステップと、
（ｂ）前記秘密をグラフとしてモデル化するステップと、
（ｃ）前記グラフを
（ｉ）前記システムの許可されたユーザにパスワードとして配布されるべき第１の部分グラフと、
（ｉｉ）前記システムがアクセスすることができるように記憶されるべき第２の部分グラフとに分解することにより、
（ｉｉｉ）ユーザによって入力された候補パスワードを前記第２の部分グラフと併せて使用し、前記候補パスワードが前記パスワードである場合にのみ、前記秘密を再生成するように構成された合成関数を介して、前記第１の部分グラフおよび前記第２の部分グラフを前記グラフに関連付けることにより、前記秘密をカモフラージュするステップと、
（ｄ）ユーザによる後のアクセスのために前記カモフラージュされた秘密を記憶するステップとを備え、
これにより前記パスワードを有さない人による許可のないアクセスから前記秘密を保護することを特徴とする方法。
【請求項４０】
アクセス規制システムを操作して許可のないアクセスから状態情報を保護するための方法であって、
（ａ）デジタル形態で秘密を獲得するステップと、
（ｂ）前記秘密をブール関数に対応する真理表の少なくとも一部分を表わす行列としてモデル化するステップと、
（ｃ）前記行列を
（ｉ）前記システムの許可されたユーザにパスワードとして配布されるべき第１の部分と、
（ｉｉ）前記システムがアクセスすることができるように記憶されるべき第２の部分とに分解することにより、
（ｉｉｉ）ユーザによって入力された候補パスワードを前記第２の部分と併せて使用し、前記候補パスワードが前記パスワードである場合にのみ、前記秘密を再生成するように構成された合成関数を介して、前記第１の部分および前記第２の部分を前記行列に関連付けることにより、前記秘密をカモフラージュするステップと、
（ｄ）ユーザによる後のアクセスのために前記カモフラージュされた秘密を記憶するステップとを備え、
これにより前記パスワードを有さない人による許可のないアクセスから前記秘密を保護するステップとを含むことを特徴とする方法。
【請求項４１】
アクセス規制システムを操作して許可のないアクセスから状態情報を保護するための方法であって、
（ａ）コンピュータ読取り可能ウォレットから
（ｉ）前記システムによってグラフとしてカモフラージュされた秘密に関連し、
（ｉｉ）パスワードとして許可されたユーザがアクセスすることができる第１の部分グラフを取り出すステップと、
（ｂ）前記第１の部分グラフ、および前記システムがアクセスすることができる記憶された第２の部分グラフに応じて前記秘密を表現する合成関数にアクセスするステップと、
（ｃ）ユーザによって入力された候補パスワードを受け取るステップと、
（ｄ）前記候補パスワードを少なくとも前記第１の部分グラフと併せて前記合成関数の演算数として使用して前記合成関数を実行することにより、前記ユーザのために候補の秘密を生成するステップであって、
（ｉ）前記生成された候補の秘密は、前記候補パスワードが前記パスワードでない場合、前記秘密を再生成せず、
（ｉｉ）前記生成された候補の秘密は、前記候補パスワードが前記パスワードである場合、前記秘密を再生成するステップと、
（ｅ）前記候補の秘密を前記アクセス規制システムの前記ユーザに出力するステップと
を備えたこと特徴とする方法。
【請求項４２】
アクセス規制システムを操作して許可のないアクセスから状態情報を保護するための方法であって、
（ａ）コンピュータ読取り可能ウォレットから
（ｉ）前記システムによってブール関数としてカモフラージュされた秘密に関連し、
（ｉｉ）パスワードとして許可されたユーザがアクセスすることができる第１の行列を取り出すステップと、
（ｂ）前記第１の行列、および前記システムがアクセスすることができる記憶された第２の行列に応じて前記秘密を表現する合成関数にアクセスするステップと、
（ｃ）ユーザによって入力された候補パスワードを受け取るステップと、
（ｄ）前記候補パスワードを少なくとも前記第１の行列と併せて前記合成関数の演算数として使用して前記合成関数を実行することにより、前記ユーザのために候補の秘密を生成するステップであって、
（ｉ）前記生成された候補の秘密は、前記候補パスワードが前記パスワードでない場合、前記秘密を再生成せず、
（ｉｉ）前記生成された候補の秘密は、前記候補パスワードが前記パスワードである場合、前記秘密を再生成するステップと、
（ｅ）前記候補の秘密を前記アクセス規制システムの前記ユーザに出力するステップと
を備えたことを特徴とする方法。
【請求項４３】
アクセス規制システムを操作して許可のないアクセスから状態情報を保護するための論理命令を含むコンピュータ読取り可能媒体であって、
前記論理命令は、実行されたとき、
（ａ）デジタル形態で秘密を獲得し、
（ｂ）前記秘密をグラフとしてモデル化し、
（ｃ）前記グラフを
（ｉ）前記システムの許可されたユーザにパスワードとして配布されるべき第１の部分グラフと、
（ｉｉ）前記システムがアクセスすることができるように記憶されるべき第２の部分グラフに分解することにより、
（ｉｉｉ）ユーザによって入力された候補パスワードを前記第２の部分グラフと併せて使用し、前記候補パスワードが前記パスワードである場合にのみ、前記秘密を再生成するように構成された合成関数を介して、前記第１の部分グラフおよび前記第２の部分グラフを前記グラフに関連付けることにより、前記秘密をカモフラージュし、
（ｄ）ユーザによる後のアクセスのために前記カモフラージュされた秘密を記憶することにより、
前記パスワードを有さない人による許可のないアクセスから前記秘密を保護することを特徴とするコンピュータ読取り可能媒体。
【請求項４４】
アクセス規制システムを操作して許可のないアクセスから状態情報を保護するための論理命令を含むコンピュータ読取り可能媒体であって、
前記論理命令は、実行されたとき、
（ａ）デジタル形態で秘密を獲得し、
（ｂ）前記秘密をブール関数に対応する真理表の少なくとも一部分を表わす行列としてモデル化し、
（ｃ）前記行列を
（ｉ）前記システムの許可されたユーザにパスワードとして配布されるべき第１の部分と、
（ｉｉ）前記システムがアクセスすることができるように記憶されるべき第２の部分とに分解することにより、
（ｉｉｉ）ユーザによって入力された候補パスワードを前記第２の部分と併せて使用し、前記候補パスワードが前記パスワードである場合にのみ、前記秘密を再生成するように構成された合成関数を介して、前記第１の部分および前記第２の部分を前記行列に関連付けることにより、前記秘密をカモフラージュし、
（ｄ）ユーザによる後のアクセスのために前記カモフラージュされた秘密を記憶することにより、
前記パスワードを有さない人による許可のないアクセスから前記秘密を保護することを特徴とするコンピュータ読取り可能媒体。
【請求項４５】
アクセス規制システムを操作して許可のないアクセスから状態情報を保護するための論理命令を含むコンピュータ読取り可能媒体であって、
前記論理命令は、実行されたとき、
（ａ）コンピュータ読取り可能ウォレットから
（ｉ）前記システムによってグラフとしてカモフラージュされた秘密に関連し、
（ｉｉ）パスワードとして許可されたユーザがアクセスすることが可能な第１の部分グラフを取り出し、
（ｂ）前記第１の部分グラフ、および前記システムがアクセスすることができる記憶された第２の部分グラフに応じて前記秘密を表現する合成関数にアクセスし、
（ｃ）ユーザによって入力された候補パスワードを受け取り、
（ｄ）前記候補パスワードを少なくとも前記第１の部分グラフと併せて前記合成関数の演算数として使用して前記合成関数を実行することにより、前記ユーザのために候補の秘密を生成し、
（ｉ）前記生成された候補の秘密は、前記候補パスワードが前記パスワードでない場合、前記秘密を再生成せず、
（ｉｉ）前記生成された候補の秘密は、前記候補パスワードが前記パスワードである場合、前記秘密を再生成し、
（ｅ）前記候補の秘密を前記アクセス規制システムの前記ユーザに出力することを特徴とするコンピュータ読取り可能媒体。
【請求項４６】
アクセス規制システムを操作して許可のないアクセスから状態情報を保護するための論理命令を含むコンピュータ読取り可能媒体であって、
前記論理命令は、実行されたとき、
（ａ）コンピュータ読取り可能ウォレットから
（ｉ）前記システムによってブール関数としてカモフラージュされた秘密に関連し、
（ｉｉ）パスワードとして許可されたユーザがアクセスすることが可能な第１の行列を取り出し、
（ｂ）前記第１の行列、および前記システムがアクセスすることが可能な記憶された第２の行列に応じて前記秘密を表現する合成関数にアクセスし、
（ｃ）ユーザによって入力された候補パスワードを受け取り、
（ｄ）前記候補パスワードを少なくとも前記第１の行列と併せて前記合成関数の演算数として使用して前記合成関数を実行することにより、前記ユーザのために候補の秘密を生成し、
（ｉ）前記生成された候補の秘密は、前記候補パスワードが前記パスワードでない場合、前記秘密を再生成せず、
（ｉｉ）前記生成された候補の秘密は、前記候補パスワードが前記パスワードである場合、前記秘密を再生成し、
（ｅ）前記アクセス規制システムの前記ユーザに前記候補の秘密を出力することを特徴とするコンピュータ読取り可能媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、一般的に、データ、情報および機能変換を実行するための命令などのアクセス規制されたコンピュータによって表現可能なオブジェクトを、一般化されたカモフラージュ技術の使用を介してセキュアにすることに関し、より詳細には、グラフモデル化されたシステムのコンピュータ表現、およびブール関数でモデル化されたシステムのコンピュータ表現をカモフラージュすることに関する。
【背景技術】
【０００２】
「カモフラージュ」は、一般的に、何かを偽装させて、その何かが実質的に環境と区別できなくなるようにする方法を意味するものと理解される。例えば、戦争の文脈におけるカモフラージュにより、兵士を景観から区別すること、特に生い茂った潅木の中で区別することを困難にする衣類を着装した兵士が想起される。コンピュータ情報システムの分野では、カモフラージュは、センシティブなデータまたは情報を許可のないアクセスから保護する方法と見なすことができる。
【０００３】
理想的には、人間は、情報としてセンシティブなオブジェクトを憶えていることができると、それを保護することができる。残念ながら、人間の記憶は、少なくとも次の２つの理由で、常に実現可能なわけではない。すなわち、１）人が憶えておくべきオブジェクトが多すぎる可能性があり、２）単一のオブジェクトでさえ憶えておくのに大きすぎる可能性がある。
【０００４】
例えば、現行の暗号法のデータセキュリティ技術は、センシティブな情報を鍵を使用して暗号化することによってセキュアにする。元の情報は、同一の鍵、または関連する鍵を使用してその情報を暗号化解除することによってだけ回復することができ、したがって、データのセキュリティは、鍵のセキュリティに移される。例えば、ＲＳＡなどの非対称暗号法において、各ユーザは、マッチするペアの鍵、秘密鍵と公開鍵を保持する。秘密鍵と公開鍵は、固有の合致するペアを形成して、秘密鍵を使用して暗号化されたメッセージ（例えば、データ、コード、あるいは他の暗号鍵、または情報の暗号表現を含む任意の他のデジタル表現された情報）が、対応する公開鍵を使用してだけ暗号化解除することができるようになっており、その逆も同じである。そのような非対称プロトコルのセキュリティは、秘密鍵が秘密鍵の保持者に内密に保たれることを要する。
【０００５】
例えば、Ｋａｕｓｉｋが、とりわけ、そのような秘密鍵、およびその他の形態のアクセス規制されたデータを暗号化形式でカモフラージュするための様々な技術を開示した（例えば、特許文献１参照）。２０００年１２月２７日に出願した関連する分割出願（特許文献２参照）、および関連する一部継続（特許文献３参照）にも開示している。以上３つの文献（まとめて「Ｋａｕｓｉｋ」）はすべて、参照により全体が本明細書に組み込まれている。「生成カモフラージュ」として知られる別のタイプのカモフラージュも、Ｋａｕｓｉｋで説明される種類の暗号化されたデータシステムに対するハッカ攻撃から比較的セキュアなシステムを提供する。生成カモフラージュは、Ｈｉｒｄの参照により全体が本明細書に組み込まれている（特許文献４参照）（以降、「Ｈｉｒｄ」）。ただし、Ｋａｕｓｉｋの暗号式カモフラージュとは異なり、Ｈｉｒｄの生成カモフラージュは、秘密鍵のビット列を、暗号化した形でも、暗号化しない形でも記憶せずに、秘密鍵を再生成することを目的とする。したがって、生成カモフラージュは、セキュアにされたオブジェクトがいずれの方法でも（暗号化されても、暗号化されなくても）ウォレット内にも、またはシステムのいずれの他の構成要素の中にも記憶されることを要さないことで、Ｋａｕｓｉｋに優る。
【０００６】
【特許文献１】
米国特許第６，１７０，０５８号
【特許文献２】
米国特許出願第０９／７５０，５１１号
【特許文献３】
米国特許第６，２６３，４４６号
【特許文献４】
米国特許出願番号０９／８７４，７９５号
【非特許文献１】
Schneier, Applied Cryptography, Wiley, 1996
【非特許文献２】
Menezes, Handbook of Applied Cryptography, CRC Press, 1997
【非特許文献３】
E. Horowitz, S. Sahni, and S. Rajasekaran, Computer Algorithms, W.H.Freeman Press, 1998
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本出願は、Ｈｉｒｄの技術を、以下のセクションで説明するとおり、コンピュータ表現可能な状態情報をカモフラージュするためのさらに別の技術に拡張する。
【０００８】
データ、情報、および／または機能変換を実行するための命令などのコンピュータ表現可能なオブジェクトをカモフラージュするための方法および装置が開示されている。コンピュータ表現可能なオブジェクトの具体的な例は、一連の２進数字、実数または整数、グラフ（例えば、データ構造ツリー、またはローカルエリアネットワークを表現する連結グラフ）、値の表、グラフィックス、コンピュータプログラム、およびシステム状態、および任意の他のタイプの状態情報が含まれる。
【課題を解決するための手段】
【０００９】
以下に詳細に説明するとおり、一般化されたカモフラージュ法の一実施形態は、Ｋａｕｓｉｋで説明される暗号式カモフラージュ法に関する。一般化されたカモフラージュ法の別の実施形態は、Ｈｉｒｄで説明される生成カモフラージュ法に類似したアクセス規制されたコンピュータによって表現されたデータまたは情報をセキュアにすることを提供する。Ｈｉｒｄで説明されるとおり、生成カモフラージュは、機能によって生成されたデータまたは情報をセキュアにする。例示的な適用例は、ＲＳＡ、ＤＳＳ、Ｅｌ−Ｇａｍａｌ、楕円曲線暗号システムなどの既存の公開鍵署名方法、ならびに関連する鍵生成技術、検証技術、および認証技術とともに使用するために「鍵ウォレット」の中の秘密鍵をセキュアにすることに関わる。
【００１０】
一般化されたカモフラージュ法の別の実施形態は、コンピュータ化されたグラフによってモデル化された物理システムおよび／または論理システムの情報内容をセキュアにすることを提供する。そのようなタイプの情報は、例えば、電話網におけるリンクおよびノード、インターネットの文脈におけるアクセスグラフ、小荷物配送会社のための配達グラフを含むことができる。一般化されたカモフラージュのこの実施形態は、グラフカモフラージュとして説明される。グラフカモフラージュは、多数の物理システムおよび／または論理システムが、ほとんど排他的にグラフを使用することでモデル化されていることに依拠している。そのようなグラフに含まれる状態情報を、しばしばセキュアにしなければならない。
【００１１】
例えば、電話会社を考慮されたい。電話網におけるリンクには、任意の所与の時点で、いくらかの確率で障害が生じる可能性がある。まず、グラフによってそのネットワークをモデル化することにより、様々なリンクにどれだけ頻繁に障害が生じると予期することができるかに関する情報を記憶することができる。ここで、グラフのエッジは、ネットワークにおける物理リンクおよび／または論理リンクに対応する。グラフの各エッジには、そのネットワークリンクに障害が生じると予期されるレートで重み付けが行われる。そのようなグラフによってモデル化され、そのようなグラフの中に含まれるシステムに関する情報は、ネットワークの設計者に、またネットワークを保守する人々に有用であり、多分、商売上の秘密を成す。さらに、競争相手がそのグラフを見る機会を得た場合、競争相手は、基礎にある物理ネットワークおよび／または論理ネットワークを所有する電話会社に不利になるようにグラフの中の情報を使用する可能性があることが考えられる。したがって、グラフカモフラージュの実施形態は、グラフによってモデル化されたシステムのデータおよび情報をカモフラージュするための方法および装置を提供する。
【００１２】
一般化されたカモフラージュ法のさらに別の実施形態は、ブール関数によってモデル化されたシステムをカモフラージュすることを提供する。ブール関数は、様々な領域において意思決定システムをモデル化するのに使用されてきた。例として、エキスパートシステムの意思決定機能、および理事会（governing body）の票決機能が含まれる。一般化されたカモフラージュのこの実施形態は、ブーリアンカモフラージュ（Boolean Camouflaging）として説明される。
【００１３】
以上は、一般化されたカモフラージュ法のいくつかの例示的な実施形態を代表している。ただし、より広くは、本発明のカモフラージュ技術は、許可のない使用、または許可のないアクセスからセキュアにされ、保護されたままでおかれるべきデータ、情報、または機能変換を実行するための命令を担持する、または表現する任意の形態のコンピュータ表現可能なオブジェクトを、カモフラージュを介してセキュアにするために一般的に使用可能である。本発明の一般化されたカモフラージュ技術を以下の命名法を使用して説明する。｛Ｏ0，Ｏ1，Ｏ2，．．Ｏn-1，Ｏn，．．．，Ｏq｝を、カモフラージュを介してコンピュータシステムによってセキュアにされるべき秘密Ｓに関連するコンピュータ表現可能なオブジェクトの集合とする。本明細書で使用する「秘密」という用語は、許可のないアクセスから保護されるべき任意の量を表わす。オブジェクトは、コンピュータによって実施される関数ｆを介してＳに関連し、ｆ（Ｏ0，Ｏ1，Ｏ2，．．．Ｏn-1，Ｏn，．．．，Ｏq）＝Ｓである。オブジェクトＯ0，Ｏ1，Ｏ2，．．．Ｏn-1，Ｏn，．．．，Ｏqは、Ｓのサブオブジェクトと呼ばれ、ｆは、合成関数と呼ばれる。一般的な場合では、一般化されたカモフラージュシステムのユーザは、以降、パスワード（Ｓ）と呼ぶＳのサブオブジェクト（例えば、部分集合｛Ｏ0，Ｏ1，．．．Ｏn-1｝）の１つまたは複数を憶えておく必要があるか、またはそれらを独立に生成できることが必要である。「パスワード」という用語は、便宜上、使用しており、ユーザによって典型的に保持される従来のＰＩＮ、パスワード、およびその他のタイプのアクセスコードだけでなく、カモフラージュされるシステムに関するその他のタイプのユーザによって保持される情報（本明細書で以下により詳細に説明する）も含まれる。残りのサブオブジェクト（例えば、部分集合｛Ｏn，Ｏn+1，．．．Ｏq｝）は、ユーザによって憶えておかれることはなく、または生成されることはなく、代わりに、システムがアクセスできる形で記憶される。この記憶場所は、システムのウォレットと呼ばれる。サブオブジェクトＯ0，Ｏ1，Ｏ2，．．．Ｏn-1，Ｏn，．．．，Ｏqは、互いと同じタイプ、または同じクラスのオブジェクトである必要はなく、秘密Ｓのオブジェクトである必要もない。また、ウォレットは、合成関数ｆの記述も記憶することができる（ただし、記憶することを必須としない）。ただし、ｆは、適切な当事者がその関数が何であるかを知っている場合、記憶されなくてもよい。例えば、ウォレットは、個人によって担持されるハードウェアデバイスおよび／またはソフトウェアデバイスであることができ、当該の情報を取得するソフトウェア（コンピュータの中に記憶された）と併せて個人が使用することができる。その場合、ｆを、部分的にまたは全体として、ウォレットおよび／またはコンピュータソフトウェアの中に記憶することができる。任意の便宜な技術を使用して、そのハードウェアおよび／またはソフトウェアを構成するコンピュータ実行可能論理命令を実施できることが、当業者には容易に理解されよう。例えば、そのような命令は、マイクロコード、ＰＡＬ、ファームウェア、任意のコンパイルされる、または解釈されるソフトウェア言語等の形態を取ることが可能である。
【００１４】
一般化されたカモフラージュ技術は、以下の方法でコンピュータ表現可能なオブジェクトへのアクセスをセキュアにする。許可されたユーザが秘密Ｓにアクセスすることを所望する場合、そのユーザは、パスワード｛Ｏ0ないしＯn-1｝をシステムに入力するか、または別の形でパスワードを入力するようにしなければならない。次に、システムは、そのパスワードをその他のサブオブジェクト（システムのウォレットの中に記憶されているか、または別の形でシステムが独立にアクセスできる）と併せて使用して、セキュアにされた秘密Ｓを再生成するか、または生成する。詳細には、システムは、合成関数をユーザ入力およびその他のサブオブジェクトに適用し、これによりシステム出力を生成する。出力は、ユーザが有効なパスワードを入力した場合に限って、すなわち、ユーザが許可されたユーザである場合に限って秘密Ｓである。それ以外の場合、出力は、無意味または固定であることができ、あるいは、攻撃者の検出を可能にすることを期待して、攻撃者を欺いてさらなるアクションを行うようにさせるために、Ｓに似るように出力を構成することができる。Ｓに似るように構成される場合、許可のないユーザを、本当は異なる量Ｓ*にアクセスしたのに、自身も秘密にアクセスしたと信じ込むように欺くことができる。さらに、システムを、許可のないユーザが後にＳの代わりにＳ*を使用することを試みた場合、ユーザに気付かれずに、そのような活動を検出し、その許可のないユーザを特定することができるように実施することができる。そのようなケースでは、Ｓ*を擬似秘密と呼ぶ。
【００１５】
便宜上、以降、入力（ここでは、Ｏ*）に対応する出力（ここでは、Ｓ*）を有する一般化されたカモフラージュの様々な実施形態を一般的に説明する。そのような入力および出力は、不正なユーザにフィードバックされることが所望される特定の情報（または情報の欠如）に従って構成されることを理解されたい。システムの特定の実施形態に応じて、出力は、無意味であること、ランダムであること、固定であること、または擬似秘密（擬似有効とも呼ぶ）であることが可能であり、入力は、適切な対応する特性を有する。擬似有効な量の場合には、出力の特性は、有効な量が獲得されたことを攻撃者に示唆する。
【００１６】
一般化されたカモフラージュの適用例は、これに限定されないが、（ａ）コンピューティングリソースおよび記憶リソースへのセキュアな遠隔／ローカルアクセスのための強力な認証、（ｂ）ネットワーク上に多数のコンピュータを有する環境におけるユーザサインオン（sign-on）回数の減少、（ｃ）ＩＰＳＥＣネットワークプロトコルを使用する、または使用しないファイアウォールを介するセキュアなアクセスのための強力な認証、（ｄ）セキュアな電子商取引トランザクションのためのデジタル署名、（ｅ）電子支払い機構のためのデジタル署名、（ｆ）データベーストランザクションのためのデータベースへのセキュアなアクセスおよび／またはデジタル署名、（ｇ）ルータおよびネットワークスイッチに対するセキュアなアクセス、（ｈ）分散サービスに対するセキュアなアクセス、（ｉ）ユーザがコンピュータプログラム（ソフトウェアまたはファームウェア）などのコンピュータを利用したエージェント（computational agent）によって代表される組込みアプリケーション、および（ｊ）グラフ、ブール関数などの任意のオブジェクトに対するセキュアなアクセスが含まれるが、当業者には理解されよう。
【００１７】
以上の例は、一般化されたカモフラージュの特定の適用例について述べているが、一般化されたカモフラージュは、許可のない使用、または許可のないアクセスからセキュアにされ、保護されたままであるべき任意のコンピュータ表現可能なオブジェクト（データ、情報または機能変換を実行する命令を担持する、または表現するオブジェクトなどの）をセキュアにするために使用可能であることが、当業者には理解されよう。
【発明を実施するための最良の形態】
【００１８】
図１Ａおよび１Ｂは、例示的なアクセス規制システムの要素の概略図を提供している。システムは、一般化されたカモフラージュの方法を行ってアクセス規制されたコンピュータ表現可能なオブジェクトをセキュアにする。例示的なシステムの第１の構成要素は、任意の数のオブジェクト１０１（秘密Ｓの「サブオブジェクト」）を記憶するウォレット１００である。サブオブジェクトは、一般的に、異なる種類（例えば、数字、英数字列、コンピュータプログラム等）であるが、ある実施形態では、同一の種類であることも可能である。
【００１９】
システムの第２の構成要素は、ウォレットの中に記憶されても、されなくてもよい合成関数ｆ１１０である。図１Ａおよび１Ｂは、例示のためにだけ、ｆがウォレットの中に記憶されているのを描いている。代替として、合成関数は、システムがアクセスすることができる任意の領域に記憶されること、またはシステムに入力されることもできる。システムの第３の構成要素は、ユーザによって入力される入力Ｏ0またはＯ*１２０であり、これは、ウォレットの中に記憶されず、システムのユーザ１２５（許可された、または許可のない）によってシステムにパスワードとして入力される。便宜上、ユーザ入力は、あたかも単一の量であるかのように描いているが、特定の実施に応じて、ユーザは、実際には、複数の量を入力することを必要とする可能性がある。したがって、本明細書で使用する「ユーザ入力」という用語、および関連する量は、単一の量または複数の量のいずれも含むものと理解されたい。
【００２０】
システムの第４の構成要素は、システムの出力Ｓ（またはＳ*）１３０であり、これは、セキュアにされたオブジェクト（Ｓ）の真の再現であるか、またはその擬似物（Ｓ*）である。ユーザ入力の場合と同様に、この出力は、特定の実施に応じて単一の量も、複数の量も含むものと理解されたい。
【００２１】
例示的な実施形態では、一般化されたカモフラージュシステムを、システムのユーザがアクセスすることができる汎用コンピュータ上で実行されるサーバソフトウェアとして実装することができる。
【００２２】
ウォレットを、任意のいくつかの方法で記憶することができる。例えば、限定としてではなく、ウォレットは、ＰＤＡまたはセル電話機（電話機内部のチップの中）などのハンドヘルドデバイスの中に記憶されること、特殊目的チップの中に記憶されること（その場合、適切な読取り装置が必要となる）、または集中型のアクセス規制されたデータベースの中に記憶される。また、パスワードは、コンピュータのキーボードなどの様々なデバイスを介して入力されること、セル電話機を介して入力されること、インターネットを介してファイルとしてアップロードされること等が可能である。例示的な出力デバイスは、コンピュータのモニタ、セル電話機またはＰＤＡのディスプレイ、任意のプリンタ、インターネットを介してファイルとしてダウンロードされること等を含む。
【００２３】
図１Ａは、一般化されたカモフラージュプロセスが許可されたユーザに対してどのように機能するかを示している。多数の適用例では、ＰＩＮ値が、システムに対するパスワードとして使用される。したがって、便宜上、例示的な実施形態を本明細書ではＰＩＮ入力を使用して説明するが、様々なタイプの単一のパスワード、または複数のパスワードも含むものとして理解されたい。許可されたユーザ１２５は、有効なＰＩＮ、Ｏ0１２０を有し、それをシステムに入力する。次に、合成関数ｆ１１０が、ユーザによって入力されたＰＩＮ１２０と、ウォレット１００の中に記憶されているサブオブジェクト１０１とを使用して、セキュアにされたオブジェクトＳ１３０を再生成する。次に、システムは、Ｓ１３０を出力する。
【００２４】
図１Ｂは、システムが有効なＰＩＮを有さない許可のないユーザに対してどのように機能するかを示している。無効なＰＩＮ、Ｏ*を入力するユーザはだれも、システムを使用してセキュアにされたオブジェクトを再生成することができない。代わりに、合成関数は、Ｏ*および記憶されているサブオブジェクトを対象に演算を行い、ＳではなくＳ*を出力する。許可のないユーザは、ＳとＳ*を区別することができない。なぜならば、これらのオブジェクトはともに、同じ形態であり、同一の関数から生成されているからである。ユーザがセキュアにされたオブジェクトＳ*の「偽の」形態を使用しようとさらに試みた場合、そのユーザが悪意のある侵入者としてシステムによって検出されることが、その検出をユーザに知らせることなく可能である。
【００２５】
以下の説明は、以上に説明した一般化されたカモフラージュシステムをどのように実装して特定のタイプのコンピュータ表現可能なオブジェクトを保護することができるかの具体的な例を提供する。
【００２６】
（１．暗号式カモフラージュ実施形態）
一般化されたカモフラージュの一実施形態は、特許文献１、特許文献２および特許文献３で開示する暗号式カモフラージュ法である。以上３つの文献（まとめて「Ｋａｕｓｉｋ」）は、参照により全体が本明細書に組み込まれている。
【００２７】
図２は、Ｋａｕｓｉｋが説明する暗号式カモフラージュの方法を示している。暗号式カモフラージュでは、ウォレットが、ユーザの有効なＰＩＮ２１０の下で暗号化されている秘密鍵２００を記憶している。正しいＰＩＮの入力が、記憶されている鍵２２０を正しく暗号化解除する。ある「擬似有効」ＰＩＮの入力も、記憶されている鍵を暗号化解除するが、不適切に暗号化解除し、正しい鍵と形態が区別できない候補鍵をもたらす。そのような擬似有効ＰＩＮ２４０は、ＰＩＮの空間にわたってまばらに分散され、ユーザが、正しいＰＩＮを入力する際にタイプ入力ミスで擬似有効ＰＩＮを入力する可能性が低くなるようにしている。Ｋａｕｓｉｋ以前には、既存のウォレット技術は、擬似有効ＰＩＮを欠いており、したがって、正しいＰＩＮだけが暗号化解除された鍵をもたらした。したがって、ハッカは、何らかの鍵（鍵であれば何であれ）がもたらされるまで、すべての可能なＰＩＮを入力することによって正しいＰＩＮを見つけ出すことができる。鍵がもたらされると、ハッカには、自分が有効なＰＩＮを入力したことが確実に分かる。
【００２８】
暗号式カモフラージュは、複数の候補鍵を利用して、ハッキング未遂者が、正しいＰＩＮを見出したときにそれを知ることを防止することにより、このハッカ問題を回避する。さらに、ハッカ検出を、候補鍵を使用して署名されたメッセージを受け入れるデバイスに移してオフラインにすること、および／またはロックアウトしきい値を高くすることがでる。したがって、ウォレットは、タイプ入力ミスまたは移送誤り（transposition error）に寛容であり、それでも、多数のＰＩＮを試みるハッカは、最終的には、擬似有効（ただし、やはり誤った）ＰＩＮを推測し、不正な使用が検出される候補秘密鍵を回復することになる。
【００２９】
ウォレットは、関連する鍵生成技術、認証技術、および検証技術とともに使用することができる。Ｋａｕｓｉｋが説明するとおり、暗号式カモフラージュ技術の様々な実施形態は、擬似公開証明書に組み込まれた擬似公開鍵、すなわち、一般に知られておらず、認証機関によって許可されたエンティティによってだけ検証可能である証明書に含まれる公開鍵を含むことが可能である。
【００３０】
一般化されたカモフラージュの命名法を使用して暗号式カモフラージュを説明することができる。したがって、秘密鍵のＰＩＮベースの保護のためのＫａｕｓｉｋの方法において、ユーザは、ＰＩＮを憶えていなければならない。このＰＩＮは、Ｏ0に、すなわち、ユーザが憶えている（したがって、ウォレットの中に記憶されていない）単一のサブオブジェクト（ｎ＝１）に対応する。秘密鍵Ｐｒｋは、セキュアにされるべき秘密Ｓに対応する。ウォレットは、ＰＩＮ  Ｏ0を秘密鍵Ｐｒｋに関連付ける合成関数ｆを含む。また、ウォレットは、その他の憶えられていないサブオブジェクトＯ1ないしＯq（ここで、ｑは、１に等しいか、それより大きい整数である）も含み、このうちＯ1ないしＯq-1は、秘密／パスワードの組合せをカモフラージュするのに使用される擬似有効ＰＩＮを表わし、Ｏqは、正しいＰＩＮの下で暗号化された秘密鍵の表現である。
【００３１】
ウォレットにアクセスを有し、ＰＩＮＯ0を知っているユーザはだれでも、セキュリティシステムからの秘密鍵ＰｒＫにアクセスすること、または秘密鍵ＰｒＫを獲得することができる。しかし、ウォレットにアクセスを有するものの、ＰＩＮを知らないユーザ、すなわち、「許可のないユーザ」を考慮されたい。ウォレットにアクセスを有しているので、許可のないユーザは、ＰＩＮとして相異なるが、正しくない値を入力することによってセキュリティシステムからのＰｒＫにアクセスしようと、またはＰｒＫを獲得しようと試みる可能性がある。Ｏ*が試みられたＰＩＮである場合、許可のないユーザは、Ｐｒｋではなく、ｆ（Ｏ*，Ｏ1，．．．，Ｏq）＝ＰｒＫ*を得る。サブオブジェクトはそれでも、ｆ（Ｏ*，Ｏ1，．．．，Ｏq）が、ＰｒＫと同じ種類のオブジェクトを戻すようになっており、このオブジェクトは、Ｐｒｋと構造上、区別できないが、機能として、また情報として許可のないユーザの役に立たない。これは、Ｏ*に等しい擬似有効ＰＩＮ  Ｏiを特定し、そのＰＩＮを鍵として使用し、秘密鍵Ｏqの暗号化されたバージョンを暗号化解除して、量ＰｒＫ*を生成し、出力することによって達せられる。ＰｒｋとＰｒＫ*は、（意図的に）同一タイプのオブジェクトであるため、有効なパスワードが入力されたかどうかを許可のないユーザが知る手立ては存在しない。したがって、秘密の秘密鍵ＰｒＫは、擬似秘密の秘密鍵ＰｒＫ*の生成によって「カモフラージュ」される。
【００３２】
したがって、暗号式カモフラージュは、ユーザによって入力される入力Ｏ0またはＯ*と、セキュアにされた秘密鍵ＰｒＫがともに整数である一般化されたカモフラージュの特殊ケースを提供する。図３は、一般化されたカモフラージュの暗号式カモフラージュ実施形態を示している。例えば、秘密鍵がＲＳＡシステムの秘密鍵である場合、サブオブジェクトは、ユーザによって入力される入力Ｏ0またはＯ*３２０、ＰｒＫの事前定義された１組の最上位ビット（「ＭＳＢ」）３０１、ｇ（ＬＳＢｓ，ＰＩＮ）３０２、およびｈ３０３である。ここで、ｇは、正しいＰＩＮを使用してＰｒＫの残りの最下位ビット（「ＬＳＢｓ」）を暗号化するのに使用される暗号化関数であり、ｈは、対応する暗号化解除関数である。
【００３３】
Ｋａｕｓｉｋの例示的な実施形態の１つでは、ｈは、実際には、（純粋な）暗号化解除関数を試験関数とともに含む合成関数である。（純粋な）暗号化解除関数は、単にｇ（当業者には理解されるとおり、使用される特定の暗号プロトコルに適切な）の補完（ｃｏｍｐｌｅｍｅｎｔ）である。試験関数は、いくつかの、ただしすべてではないユーザによって入力された入力が通過することを可能にする。つまり、ユーザ入力がいくつかの擬似有効ＰＩＮ  Ｏ1ないしＯq-1のどれかである場合（例えば、多対１ハッシュ試験による判定により）、入力は、ｈまで通過させられる。そうではない場合、入力は、通過させられない（また、システムは動作を中止する）。
【００３４】
以上の例では、合成関数ｆ３１０は、一般に、次のとおり記述することができる。すなわち、ｆ（ｐ，ｑ，ｒ，ｓ）＝ｑ.ｓ（ｒ，ｐ）、ただし、「.」は、連結演算子である。したがって、セキュアにされた秘密鍵は、次のとおり、有効なＰＩＮ  Ｏ0３２０が入力された場合にｆ３１０を介してシステムによって再生成される。すなわち、ｆ（Ｏ0，ＭＳＢｓ，ｇ（ＬＳＢｓ，ＰＩＮ），ｈ）＝ＭＳＢ.ｈ［ｇ（ＬＳＢｓ、ＰＩＮ），Ｏ0］＝ＭＳＢ.ＬＳＢ＝ＰｒＫである。言い換えれば、システムはまず、暗号化解除関数ｈを使用して、ユーザによって供給された入力Ｏ0３２０でｇ（ＬＳＢｓ，ＰＩＮ）を暗号化解除する。次に、システムは、ウォレット３００の中に記憶されているＭＳＢｓ３０１を暗号化解除されたビットと連結する。この連結の結果ＰｒＫ３３０が、システムがユーザに出力するものである。
【００３５】
同様に、擬似有効ＰＩＮ  Ｏ*３２０が入力された場合、次のとおり、ｆ３１０を介してシステムによって擬似秘密の秘密鍵が再生成される。ｆ（Ｏ*，ＭＳＢｓ，ｇ（ＬＳＢｓ，ＰＩＮ），ｈ）＝ＭＳＢ.ｈ［ｇ（ＬＳＢｓ，ＰＩＮ），Ｏ*］＝ＭＳＢ.ＬＳＢ*＝ＰｒＫ*である。言い換えれば、システムはまず、暗号化解除関数ｈを使用して、ユーザによって供給された入力Ｏ*３２０でｇ（ＬＳＢｓ，ＰＩＮ）３０２を暗号化解除してＬＳＢ*をもたらす。システムは、次に、ウォレット３００の中に記憶されているＭＳＢｓ３０１を暗号化解除されたビットと連結する。この連結の結果ＰｒＫ*３３０が、システムがユーザに出力するものである。この連結は、正しいＰｒＫと構造上、同様であるが、ユーザによって入力される入力Ｏ0が正しいＰＩＮではない場合、秘密鍵として無効である。
【００３６】
（２．生成カモフラージュ実施形態）
一般化されたカモフラージュ技術の１つの特定の実施形態が、生成カモフラージュであり、生成カモフラージュは、暗号化スキームにおける秘密鍵をセキュアにすることも対象とする。ただし、暗号式カモフラージュとは異なり、生成カモフラージュは、暗号化された形でも、暗号化されていない形でも秘密鍵のビット列を記憶することなく、秘密鍵を再生成することを目的とする。生成カモフラージュは、参照により本明細書に組み込まれる特許文献４で説明され、請求されている。
【００３７】
また、生成カモフラージュは、暗号化されたデータシステムに対するＫａｕｓｉｋが説明する種類のハッカ攻撃から比較的セキュアなシステムも提供する。Ｈｉｒｄが説明するとおり、生成カモフラージュは、セキュアにされたオブジェクトがいずれの方法でも（暗号化されても、暗号化されなくても）ウォレット内にも、またはシステムのいずれの他の構成要素の中にも記憶されることを要さないことで、Ｋａｕｓｉｋに優る。以下の説明の基本的要素は、セキュアにされた機密のデータまたは情報が特殊関数によって生成される、暗号式と非暗号式の両方の多数の他のシステムにも適用可能であることが、当業者には理解されよう。
【００３８】
図４Ａは、暗号式カモフラージュ実施形態の全体的システムの機能要素の概略図を提供し、機能要素のそれぞれは、秘密鍵のセキュアな生成、および秘密鍵のその後の使用において役割を果たす。第１の構成要素は、シード導出関数４０１、関連するサブオブジェクト４０２、および署名を作成するのに使用される秘密鍵ＰｒＫ４３０に関する生成関数４１０を記憶する鍵ウォレット４００である。シード導出関数４０１は、鍵生成関数４０３のためのシード値を生成し、鍵生成関数４０３は、ユーザのための公開鍵と秘密鍵を生成する。
【００３９】
詳細には、秘密鍵（および使用される特定の暗号プロトコルに適切な秘密鍵と公開鍵の間の指定された関係に従った対応する公開鍵）は、非特許文献１および非特許文献２で説明されている鍵生成プロトコルなどの周知の鍵生成プロトコルを使用して、シードに応じて生成される。
【００４０】
一般に、一般化されたカモフラージュの生成カモフラージュ実施形態において、合成関数ｆは、生成関数ｇを使用して秘密鍵ＰｒＫを再生成し、その他のサブオブジェクト（ユーザによって入力されたサブオブジェクトと、鍵ウォレットの中のサブオブジェクトの両方）を使用して、秘密鍵を生成するのに最初に使用されたシードを再構成する。Ｈｉｒｄが説明するとおり、ほとんどの適用例では、ユーザによって入力されるＰＩＮ値が、元のシードを再構成するのに使用され、およそ４〜６バイトであり、これは、通常、標準サイズのシード値よりも小さい。ただし、ＰＩＮ値がシード値より大きいことも可能である。これは、例えば、ＰＩＮの多対１のハッシュを行い、このより小さいバイトシーケンスをシードとして使用することによって達成することができる。
【００４１】
より具体的には、生成関数ｇに対する入力シード値は、ユーザが憶えており、したがって、システムのウォレットの中に記憶されていないＰＩＮ４２０から導出することができる。例えば、図４Ｂに示す特定の実施形態では、ウォレットは、マスク（整数４０２である）、および次の２つの関数だけを記憶する。すなわち、ＰＩＮ４２０およびマスク４０２からシードを導出するのに使用される関数ｄ４０１、および生成関数であるｇ４０３である。Ｈｉｒｄで説明されるとおり、関数ｄは、排他的ＯＲ関数（ＸＯＲ）とすることができる。ただし、他の実施形態では、入力シード値は、入力ＰＩＮと、ウォレットの中に記憶されている任意のオブジェクトの間における他のタイプの関係から導出される。この図示する例のとおり、ｄがＸＯＲである場合には、カモフラージュを介してセキュアにされるデータ、ＰｒＫ４３０は、ｇ（ＰＩＮ  ＸＯＲ  Ｍａｓｋ）である。言い換えれば、ｇは、（ＰＩＮ  ＸＯＲ  Ｍａｓｋ）をシードとして受け取る鍵生成関数である。ウォレット４００にアクセスすることができ、有効なＰＩＮを知っている許可されたユーザは、したがって、正しい秘密鍵を再生成することができる。ただし、ウォレットにアクセスすることができるが、有効なＰＩＮを知らない許可のないユーザは、ｇ（ＰＩＮ*  ＸＯＲ  Ｍａｓｋ）＝ＰｒＫ*を生成することになり、ここで、ＰＩＮ*は、真のＰＩＮの誤った推測であり、またＰｒＫ*は、正しい秘密鍵と構造上は同じに見えるが、機能上は、許可のないユーザの役に立たない擬似鍵である。
【００４２】
したがって、一般化されたカモフラージュの以上の例では、サブオブジェクトは、ＰＩＮ、マスク、ｄ、およびｇである。合成関数ｆ（図示せず）は、この例では、次のとおり記述される。すなわち、ｆ（ｗ，ｘ，ｙ，ｚ）＝ｚ（ｙ（ｗ，ｘ））である。ユーザが有効なＰＩＮを正しく憶えていて入力した場合、正しいセキュアにされた秘密鍵が、以下のとおりシステムによって再生成される。
【００４３】
f(PIN, Mask, XOR, g) = g(PIN XOR Mask) = PrK
【００４４】
そうではなく、ユーザが有効なＰＩＮを知らないか、または憶えていないが、代わりに推測（ＰＩＮ*）を入力した場合、以下のとおり擬似鍵が再生成される。
【００４５】
f(PIN*, Mask, XOR, g) = g(PIN* XOR Mask) = PrK*
【００４６】
結果Ｐｒｋ*は、真の秘密鍵と構造上、区別することができず、これは、実際の秘密鍵をカモフラージュする役割をし、ＰＩＮも秘密鍵もともに、依然として、許可のないユーザには未知である。
【００４７】
生成カモフラージュ自体、いくつかの方法で生成されることが可能であることに留意されたい。例えば、以上の実施形態では、ｇを記憶する代わりに、ｇを生成する関数を記憶することが可能である。すべてのそのようなケースは、一般化されたカモフラージュ技術の特定の実施形態である。
【００４８】
（３．グラフカモフラージュ実施形態）
多次元物理システムおよび／または論理システムに関する状態情報は、しばしば、コンピュータメモリの中で表現される前にグラフオブジェクトによってまずモデル化された場合、最も効率的に記憶され、操作される。グラフオブジェクトによるモデル化が容易に行われるシステムは、一般的に、１組のノード、およびノード間のリンクを備える。そのようなシステムをモデル化するグラフオブジェクトは、システム内の所与のノードにそれぞれが対応する１組の頂点、およびシステム内のリンクにそれぞれが対応する１組のエッジを含むことが、当業者には即座に理解されよう。以下に説明するとおり、グラフオブジェクトは、周知の技術を介してコンピュータにおいて容易に表現される。
【００４９】
例えば、インターネットなどの公衆交換網を考慮されたい。そのシステムの一部、またはすべてを表わす１つのグラフは、（ａ）システム内のスイッチング要素をそれぞれが表わす１組の頂点、および（ｂ）頂点によって表わされる２つのスイッチング要素間の物理接続にそれぞれが対応する１組のエッジを含む。したがって、そのようなネットワークのステータスに関するデータおよび情報は、グラフの形態で表現される。この性質の状態情報は、しばしば、極めてセンシティブであり、セキュアにされなければならない。他のコンピュータ表現可能なグラフは、例えば、インターネットサービスプロバイダまたは電話会社（有線または無線の）の物理アクセス網および／または論理アクセス網に関する情報、小荷物配送会社（ＦｅｄＥｘ）の配送網（routing network）に関する情報、高速道路、地下鉄、鉄道、航空路線、またはその他の運輸システムのステータスに関する情報、地球物理学監視システムまたはその他の環境監視システムのステータスに関する情報、または組織の構成に関する情報、あるいは相互に関連する論理エンティティおよび／または物理エンティティの実質的にあらゆる他の集まりに関する情報を記憶することができる。
【００５０】
コンピュータ表現可能なオブジェクトとして、グラフＧは、１組の頂点Ｖ、および頂点間の１組のエッジＥを含むことが、当業者には理解されよう。Ｇが表わすことになっている実際の物理エンティティおよび／または論理エンティティ（例えば、配送網のリアルタイムモデル）に依存して、その１組の頂点は、少なくとも１つのメンバを有するが、その１組のエッジは、実際には、空であることができる。さらに、Ｇは、いくつかの一般的な属性、またはグローバルな属性を有することができる（例えば、Ｅが空でない場合、Ｇは、有向であること、または無向であることができる）。
【００５１】
物理システムおよび／または論理システムに関するデータおよび情報をグラフで表わすことができ、したがって、いくつかの異なるデータ構造を使用してコンピュータ内部に記憶することができる。グラフの形態のデータおよび情報を記憶するのに使用される１つの周知のタイプのデータ構造は、隣接行列（Adjacency Matrix）と呼ばれている（例えば、非特許文献３参照）。したがって、グラフＧがｎ個の頂点（例えば、ネットワーク内のｎ個の相互に接続された物理要素および／または論理要素に対応する）を有する場合、サイズｎ×ｎの隣接行列Ｍを使用して、コンピュータメモリの中でＧを表現することができ、したがって、物理システムを表現することができる。（実施がソフトウェアであるか、ハードウェアであるか、またはハードウェアとソフトウェアの組合せであるかに依存して、メモリは、データ構造または他の種類のソフトウェアメモリ、ＲＯＭ、ＲＡＭ、または他の種類の物理メモリ、あるいは以上の何らかの組合せであることができる。）ここで、隣接行列Ｍの各頂点（物理要素および／または論理要素）は、行列における行と列の両方に対応する。一般に、各隣接行列要素Ｍ［ｉ］［ｊ］は、グラフの頂点（物理要素および／または論理要素）ｉとｊを接続するエッジ（相互接続）が存在しない場合、指定されたオブジェクト（例えば、整数ゼロ）を含む。存在する場合、Ｍ［ｉ］［ｊ］は、エッジ（相互接続）に関係のある情報を表わすオブジェクト、例えば、単にそのエッジの存在を示す整数１を含み、また、場合により、頂点（物理要素および／または論理要素）ｉおよびｊに関する情報も含む。例えば、Ｍ［ｉ］［ｊ］は、電話網における頂点ｉとｊを接続するリンクの長さ（メートル単位の）を含むことができる。
【００５２】
物理システムおよび／または論理システムのこの形態のコンピュータ化された表現を例示するため、例えば、図５は、公衆交換網内のスイッチング要素にそれぞれが対応する６つの頂点（５０１、５０２、５０３、５０４、５０５、５０６）、および２つのスイッチング要素間のリアルタイムの相互接続にそれぞれが対応する９つのエッジを含むグラフＧ５００を示している。（この図では、Ｇは、接続されたグラフであるが、必ずしもそうである必要はない。）隣接行列Ｍ５１０は、公衆交換網に関する情報を記憶し、したがって、このネットワークをモデル化するグラフＧをコンピュータ表現可能な形態で記憶する。この例示では、隣接行列Ｍ５１０は、グラフ（公衆交換網）の１つの別個の頂点（スイッチング要素）にそれぞれが対応する６つの行と６つの列を有する。
【００５３】
多次元システムは、隣接行列データ構造を使用することによってコンピュータメモリの中でグラフオブジェクトとして表現することが可能なことを考えると、一般化されたカモフラージュの一実施形態は、以下に説明するグラフをカモフラージュするための方法および装置を提供する。
【００５４】
図６は、グラフカモフラージュと呼ばれる一般化されたカモフラージュシステムの別の実施形態である例示的なグラフカモフラージュシステムの機能要素の概略図を提供している。例示的なグラフカモフラージュシステムでは、ウォレット６００が、部分グラフＧＰ６０１、関連するサブオブジェクト６０２、およびグラフ完成モジュールｇｃ６０３を記憶する。グラフ完成モジュール６１０は、部分グラフを秘密グラフＧＳ６３０に変換する。秘密グラフは、カモフラージュを介してセキュアにされることになり、一般的に、グラフによってモデル化される物理システムおよび／または論理システムに関するデータおよび／または情報を表わす。ユーザ６２５は、補グラフＧ0６２０を有し、この補グラフＧ0６２０は、ユーザにより、パスワードとしてシステムに入力される（直接または間接に）ようにさせられる。次に、この補グラフＧ0６２０は、グラフ完成モジュールｇｃ６０３によって、記憶されている部分グラフＧＰ６０１、および関連するサブオブジェクト６０２と併せて使用され、グラフ完成モジュールｇｃ６０３は、部分グラフおよび補グラフを対象に演算を行うことによって秘密グラフＧＳ６３０を再構成する。ユーザが、誤ったグラフＧ*が入力されるようにした場合、グラフカモフラージュシステムは、異なるグラフＧＳ*を再構成し、実際の秘密グラフＧＳは、秘密グラフが表わす物理システムおよび／または論理システムに関して含んでいる情報も含め、セキュアに保たれる。一般化されたカモフラージュのその他の実施形態の場合と同様に、出力される量（ここでは、グラフＧＳ*）は、無意味であること、ランダムであること、固定であること、または擬似有効であることができる（擬似有効であることは、攻撃者を欺いて有効な結果が得られたと思い込ませる能力を示す）。
【００５５】
グラフカモフラージュの例示として、無向グラフによってモデル化されたｎ個の互いに接続された要素の物理システムを考慮されたい。グラフは、すべてのノードｉおよびｊに関してＭ［ｉ］［ｊ］＝Ｍ［ｊ］［ｉ］である場合、無向であると呼ばれる。この例では、物理システムに関するデータおよび情報を表わすＧＳ６３０は、システム内部に記憶されていない。代わりに、ＧＳは、２つの部分グラフに、すなわち、ウォレットの中に記憶される必要のないＧ0６２０、および隣接行列データ構造の形態でウォレットの中に記憶されるＧＰ６０１に最初に分割される。グラフＧＳを分割する一方法は、以下による。すなわち、
ステップ（１）：セキュアにされるべきＧＳ（および、したがって、物理システム）に関する情報を含むｎ×ｎの隣接行列Ｍを構成する。
【００５６】
ステップ（２）：隣接行列Ｍの１つまたは複数の行を選択する。選択される行の数は、行の総数（すなわち、ＧＳにおける頂点、したがって、頂点によってモデル化される物理システムの中の要素）ｎより少なくなければならない。例えば、選択される行の数は、ｌｏｇ（ｎ）または√ｎから、あるいは当業者に知られている任意の他のプロトコルから導出された整数であることができる。各行は、固有の頂点識別子にマップされるため、行を選択することは、１とｎの中間（１とｎを含む）の整数によって一意的に特定されることが可能なグラフ頂点を選択することを意味する。例示的な実施形態では、行は、ランダムに選択される。代替として、所与の行が、ｎの整数関数から選択されること、または行選択の任意の他の方法が使用されることが可能である。
【００５７】
ステップ（３）：隣接行列Ｍのサイズを定義する物理システム要素ｎ（ｎは、したがって、関連するサブオブジェクト６０２の１つである）の総数をウォレット６００の中に記憶する。
【００５８】
ステップ（４）：Ｍからステップ（２）で選択された行の内容を削除する。さらに、削除された行と同じ整数識別子を有する列の内容を削除する。この削除ステップは、Ｍによって表わされる秘密グラフＧＳから頂点を取り除く効果を有する。すなわち、（ｒ1，ｒ2，．．．，ｒk）および（ｃ1，ｃ2，．．．，ｃk）が（それぞれ）、ステップ（２）で選択され、このステップ（４）で削除された行および列である場合、頂点｛１，２，．．．，ｋ｝が、秘密グラフＧＳから削除されている。ＧＰは、以上の頂点を削除した後にもたらされるＧＳの部分グラフである。
【００５９】
ステップ（５）：部分グラフＧＰ６０１を、例えば、行優先順に（row-major order）ウォレット６００の中に記憶する。
【００６０】
ステップ（６）：削除された行（および列）に関する整数識別子（またはインデックス）の内容が、削除された行（および列）とともに、補グラフＧ0６２０を形成する。（実際には、ＧＳは無向グラフなので、補グラフは、削除された行識別子および行内容を記憶するだけでよい。なぜなら、行列Ｍは、対称的だからである。ＧＳが有向であったとすると、補グラフは、削除された行と列の情報をともに含むことになる。）ＧＳの記憶のために任意の形式を使用することができ、例えば、削除された識別子の後に数字でない区切り、またはその他の区切りの手段が続き、その後に削除された内容が続く形式を使用することができる。補グラフは、ウォレットの中に記憶される必要はないが、例えば、スマートカード、またはその他の外部可搬メモリデバイスを介して配布されるか、または別の方法でシステムのユーザ６２５がアクセスできるようにされる。パスワードＧ0を含む情報が大きすぎるか、またはそれ以外に個人ユーザが憶えておくのに不便である場合、スマートカードなどの外部可搬メモリデバイスを使用して補グラフを記憶することができる。スマートカード自体、マルチレベルカモフラージュの形態で、Ｋａｕｓｉｋのカモフラージュ法、Ｈｉｒｄのカモフラージュ法、本明細書で加えて開示しているカモフラージュ法（例えば、グラフカモフラージュまたはブーリアンカモフラージュ）、あるいは当業者に知られている任意の他のカモフラージュスキームを使用してＰＩＮによって保護することができる。ＰＩＮを備えるか否か、またそのための保護スキームの選択は、問題となっている特定のシステムの設計上の選択およびセキュリティの必要性に依存する。そのようなマルチレベルカモフラージュは、もちろん、本明細書で説明する一般化されたカモフラージュの他の実施形態にも同等に適用可能であり、同一タイプのカモフラージュ実施形態の多数の適用例、ならびに異なるレベルにおける異なる実施形態の適用例を含むことができる。
【００６１】
グラフカモフラージュの例示的な実施形態では、秘密グラフＧＳが補グラフと部分グラフ（通常、別々に記憶される）に分割されると、システムは、以下の方法で、ＧＳにおけるデータおよび情報をセキュアにし、したがって、そのグラフが表わす物理システムのデータおよび情報をセキュアにする。
【００６２】
ＧＳにアクセスすることを所望するユーザは、補グラフＧ0を入力する（または入力されるようにする）。例えば、補グラフがＰＩＮによって保護されたスマートカード上に記憶されている場合、ユーザは、そのスマートカードを読取りデバイスに挿入し、ＰＩＮを入力する。ＰＩＮが正しい場合、スマートカードは、正しい補グラフＧ0がカードから読み取られることを許し、ＰＩＮが誤っている場合、スマートカードは、誤った「ダミー」グラフＧ*が読み取られるようにする。ダミーグラフは、カード上に直接に記憶されるか、またはカードが処理能力を有する場合、カードによって生成される。
【００６３】
これにより、補（またはダミー）グラフが、システムに入力される。一般化されたカモフラージュシステムは、ウォレットの中に記憶されている部分グラフＧＰ、およびユーザによって入力されたグラフから、やはりウォレットの中に記憶されているグラフ完成モジュールｇｃを使用して出力グラフを生成する。出力グラフは、いくつかの方法でユーザの利用に供されることができる。出力グラフは、スクリーン上に表示されること（グラフ作成プログラムを使用して）、コンピュータ読取り可能媒体（フロッピー（登録商標）ディスク、ＣＤ等）上に書き込まれること、プリンタに送られること、出力グラフを処理して、このグラフから関係のある情報をさらに取り出すアプリケーションプログラムに送られること、または当業者に知られているさらに別の方法で処理される。部分グラフＧＰおよび補グラフＧ0が以上に概説した方法によって（すなわち、秘密グラフＧＳから行内容を取り除くことによって）生成されているこの例において、グラフ完成モジュールは、（ａ）ｎ×ｎ行列Ｍを生成して、すべてのエントリをゼロに初期設定し、（ｂ）補グラフＧ0からウォレットの中に記憶されている行（および列）に対する正しい値を埋め（例えば、行５と列７がウォレットの中にあり、グラフが無向である場合、Ｍの行５と列７は、ウォレットの中に記憶された適切な値で埋められる）、（ｃ）Ｍの残りの値をＧＰにおける対応する値で埋めることにより、Ｇ0およびＧＰからグラフを構成する。以上は、補グラフと部分グラフを結合するための１つの例示的な技術を説明している。２つの行列を結合するための他の多数の周知の技術が当業者には知られており、本明細書で説明する必要はない。
【００６４】
したがって、一般化されたカモフラージュの前述の例において、サブオブジェクトは、ユーザによって入力される補グラフＧ0６２０（削除された行に関する内容と整数識別子をともに含む）、部分グラフＧＰ６０１、ｎ６０２、およびｇｃ６０３である。合成関数ｆ６１０は、この例では、次のとおり、ｆ（ｗ，ｘ，ｙ，ｚ）＝ｚ（ｘ，ｙ，ｗ）記述される。（合成関数は、グラフを部分グラフと補グラフに分解するのに最初に使用された分解モジュールの逆または補完である。限定としてではなく、以上の段落で開示した技術を含むコンピュータ行列操作の周知の技術を使用して分解モジュールの多数の異なる実施が可能であることが、当業者には容易に理解されよう。）ユーザが正しい補グラフＧ0を正しく憶えていて、入力した場合（例えば、前述したスマートカードの方法を介して）、以下のとおり、正しいセキュアにされたグラフＧＳが、システムによって再生成され、出力される。
【００６５】
f(G0, GP, n, gc) = gc(G0, GP, n)=GS
【００６６】
そうではなく、ユーザが正しい補グラフを憶えていないか、または正しい補グラフが入力されるようにせず、代わりに、ダミーのグラフ、またはそれ以外の偽のグラフＧ*が入力されるようにした場合、以下のとおり、擬似グラフが、システムによって再生成され、出力される。
【００６７】
f(G*, GP, n, gc) = gc(G*, GP, n)=GS*
【００６８】
以上は、グラフ加算プロセスを例示している。グラフカモフラージュシステムのその他の態様は、秘密グラフＧＳを分割するための異なる方法を使用することができる。例えば、物理システムに関する情報は、一方が補グラフＧ0として扱われ、他方が部分グラフＧＰであり、ウォレットの中に記憶されている２つのグラフの積として表わすことができるグラフによってそのシステムがモデル化される場合、グラフカモフラージュを介してセキュアにすることができる。この例では、ユーザは、入力グラフを入力する（または入力されるようにする）。グラフカモフラージュシステムは、入力グラフと、ウォレットの中に記憶されている部分グラフを対象にグラフ積演算（graph product operation）を行う。入力グラフが正しい場合、システムは、セキュアにされたグラフＧＳを正しく生成し、出力して、そうでない場合、もっともらしい（ただし、情報的に空の）グラフＧＳ*が、ユーザに対して出力される。したがって、一般に、当業者に知られている任意のグラフ分解プロセスをグラフカモフラージュとともに使用することができる。
【００６９】
グラフカモフラージュをいくつかの方法で変更することが可能であることが、当業者には理解されよう。例えば、任意の数の部分グラフを使用することが可能である。さらに、部分グラフを対象に行われる演算、すなわち、グラフ合成モジュールｇｃも、秘密グラフＧＳの性質に応じて異なる方法で選択することができる。
【００７０】
（４．ブール関数カモフラージュ実施形態）
一般化されたカモフラージュ技術のさらに別の実施形態は、データおよび情報がブール関数によって最も都合よくモデル化される意思決定システムにおけるデータおよび情報をカモフラージュする実施形態である。例えば、コンピュータ化されたエキスパートシステムが、システムの既知のパラメータによって定義されるブール変数の命題状態（propositional state）の複雑な組合せに基づいて決定を行う。エキスパートシステムにおいて情報を保護することは、ブーリアンカモフラージュと呼ばれる一実施形態を使用することによって達することができる。ブーリアンカモフラージュは、ブール関数を使用してモデル化することができるあらゆるシステムに関して役立つ。
【００７１】
ブール関数は、行列データ構造を使用するコンピュータ内部で表現できることが、当技術分野において周知である。行列を使用して、ブール関数の出力を記述する真理表を記憶することができ、したがって、そのブール関数によってモデル化されている意思決定システムの挙動（すなわち、システムの状態情報）を記憶することができる。したがって、ブール関数Ｆが、ｎ個のブール変数（例えば、システムに関するｎ個の独立の命題状態に対応する）を有する場合、コンピュータメモリの中でサイズ２n×（ｎ＋１）の行列データ構造Ｍを使用してＦを、したがって、意思決定システムを表わすことができる。ここで、（ａ）各ブール変数（命題状態）は、行列の中の１つの列に対応し、（ｂ）Ｆは、行列の中の最後の列に対応し、（ｃ）各行は、固有のｎビット列によって表わされるブール変数に関するブール値の固有の組合せに対応する。例えば、従来の真理表の第１の行は、ビット列（０，０，０，．．．，０，Ｆ（０，０，０，．．．，０））を含み、第２の行は、ビット列（０，０，０，．．．，１，Ｆ（０，０，０，．．．，１））を含み、第３の行は、（０，０，０，．．．，１，０，Ｆ（０，０，０．．．，１，０））を含むといった具合で、最後の行は、ビット列（１，１，１，．．．，１，Ｆ（１，１，１，．．．，１））を含むことを当業者なら理解するであろう。
【００７２】
例示として、意思決定システムが、４つのブール変数ｘ1、ｘ2、ｘ3およびｘ4に基づいて決定を行うブール関数によってモデル化されるものと想定する。そのようなシステムが、例えば、石油を求めて掘削する決定が４つの独立した条件に依存する地質学エキスパートシステムに関係することができる。例えば、システムは、（１）地帯が大規模な火山噴煙柱（volcanic plume）に隣接して存在していない場合（ＮＯＴ  ｘ1）、（２）地帯の組成が石灰石のあるパーセンテージ範囲内にある場合（ｘ2）、（３）地帯が既知の油田に関する地帯の場所に関わる数学的に定義された統計的な１組のパラメータに該当する場合（ｘ3）、および（４）過去１５０，０００年以内に地帯の境界内で地震活動が存在しなかった場合（ＮＯＴ  ｘ4）、掘削を勧告する。この１組の条件、および掘削のための勧告を表わす唯一のビット列は、（０，１，１，０，１）であり、ここで、最初の４つのビットは、前述した命題状態変数に対応するブール値であり、第５のビットは、地質学エキスパートシステムをモデル化するブール関数の値（この例では、１）に対応する。この例では、ｘ1、ｘ2、ｘ3およびｘ4のその他すべての組合せは、ゼロに等しいＦの値に対応する。
【００７３】
次に、わずかにより複雑な例を参照すると、図７が、ブール関数によって、例えば、関数
【００７４】
F(x1, x2, x3, x4) = (x2 OR x3) AND ((NOT x3) OR x4 OR (NOT x1))
【００７５】
によってモデル化される意思決定プロセスに関してどのように完全な真理表がセットアップされるかを示している。一般に、真理表（エキスパートシステム）内のブール変数（命題変数）に関するビット列の順序は、従来どおりであることが当業者には理解されよう。ここでは、例えば、各行が、４つの変数に関してビットの固有の組合せを含み（最初の行が（００００）を含み、最後の行が（１１１１）を含み、行は増加方向で順序付けられる）、合計で２4＝１６の行が表の中に存在する。表の中の各行に関する最終ビットは、ブール関数値Ｆ（ｘ1，ｘ2，ｘ3，ｘ4）を含む。この真理表は、例えば、２次元行列、Ｍ（ここでは、サイズ２4×５を有する）を使用してコンピュータメモリの中に直接に記憶される。もちろん、前述の真理表の中のｘ1、ｘ2、ｘ3、ｘ4の値による順序付けは、恣意的であり、任意の他の規約で置き換えることが可能であり、あるいは全く規約なしにすることさえ可能である。なぜなら、表自体が命題状態の値を担持するからである。ただし、規約が使用される場合、そのような表を表わすより経済的なやり方は、単に真理表Ｆの最後の列だけを記憶することによる。なぜなら、各行の中の最初のｎビットは、標準のプロトコルに従って値の順に並べられているものと理解されるからである。したがって、特にスペース効率（space-efficient）の高い実施形態では、ｎ個の変数のブール関数をサイズ２nのビット配列（すなわち、１次元行列）として表わすことができ、ここで、ｎは、ブール関数が依存する命題変数の数である。
【００７６】
真理表を使用して、また、配列データ構造（すなわち１次元行列）に対応してコンピュータメモリの中でブール関数オブジェクトによって多次元意思決定システムを表わすことができる（少なくともある程度）ことを考えると、一般化されたカモフラージュの一実施形態は、以下に説明するとおりブール関数をカモフラージュすることを可能にする。以下の例示的な実施形態は、１×ｎ（またはｎ×１）の行列を指して「配列」という用語を使用するが、行列を一般的に（すなわち、サイズｍ×ｎの）使用してこの例示的な実施形態の教示を任意の他の実施形態に適用するやり方は、当業者には容易に理解されよう。そのような実施形態では、「配列」という用語は、行列の列または行を包含するものと理解されたい。
【００７７】
図８は、例示的なブーリアンカモフラージュシステムの機能要素の概要を示している。例示的なブーリアンカモフラージュシステムでは、ウォレット８００が、部分真理表ＴＰ８０１、およびこの部分表を秘密表ＴＳ８３０に変換するための表完成モジュールｔｃ８０２を記憶している。秘密表は、カモフラージュを介してセキュアにされることになり、一般に、ブール関数によって表わされる意思決定（エキスパート）システムに関する意思決定モデルを表わす。この場合も、システムの出力を、いくつかの方法でユーザに提示することができる。すなわち、コンピュータモニタを介して、印刷された表現を介して、その表現を符号化し、変数に関する任意の入力された１組の値について表現の値を計算することができるプログラムを介して提示されること等である。
【００７８】
ユーザ８２５は、補配列（complementary array）Ｔ0８２０を有し、ユーザ８２５は、この補配列Ｔ0８２０がパスワードとしてシステムに入力されるように（直接または間接に）する。次に、この補配列Ｔ0８２０が、表完成モジュールｔｃ８０２によって記憶されている部分表ＴＰ８０１と併せて使用され、表完成モジュールｔｃ８０２は、部分表および入力補配列を対象に演算を行うことによって秘密表ＴＳ８３０を再構成する。（表完成モジュールは、秘密表を部分真理表と補配列に分解するのに最初に使用された分解モジュールの逆または補完である。限定としてではなく、以上にグラフカモフラージュに関して開示した例示的な技術を含むコンピュータ行列操作の周知の技術を使用して分解モジュールの多数の異なる実施が可能であることが、当業者には容易に理解されよう。）ユーザが、誤った補配列Ｔ*が入力されるようにした場合、ブーリアンカモフラージュシステムは、異なった、ただし、無意味な真理表ＴＳ*を再構成して出力し、実際の秘密真理表ＴＳは、この真理表ＴＳが表わす意思決定システムに関して含んでいる情報も含め、セキュアに保たれる。
【００７９】
例示として、意思決定システムがｎ個の命題状態によってモデル化され、したがって、ｎ個のブール変数によってモデル化されるブーリアンカモフラージュシステムで使用するための例示的なウォレットを考慮されたい。この実施形態では、ビット配列の形態で意思決定システムの真理表（または状態情報）を表わすＴＳ８３０は、システム内部に記憶されない。代わりに、ＴＳは、２つの部分配列に、すなわち、ウォレットの中に記憶される必要のないＴ0８２０、およびウォレットの中に記憶されるＴＰ８０１に最初に分割される。表ＴＳ８３０を分割する一方法は、グラフカモフラージュにおいて使用される分割プロセスと同様である。すなわち、
ステップ（１）：セキュアにされるべきブール関数（したがって、意思決定システム）に関する情報を含む２nビット配列ＴＳを構成する。
【００８０】
ステップ（２）：ＴＳの１つまたは複数の要素を選択する。選択される要素の数は、要素の総数２nより少なくなければならない。例えば、選択される要素の数は、ｌｏｇ（ｎ）または√ｎから、あるいは当業者に知られている任意の他のプロトコルから導出された整数であることができる。例示的な実施形態では、要素は、ランダムに選択される。代替として、所与の要素がｎの整数関数から、または任意の他の技術によって選択される。
【００８１】
ステップ（３）：ステップ（２）で選択された要素（または、単にその要素の内容）をＴＳから削除する。ＴＰ８０１は、それらの要素を削除した後にもたらされるＴＳの部分真理表である。
【００８２】
ステップ（４）：部分真理表ＴＰをウォレットの中に記憶する。
【００８３】
ステップ（５）：ステップ（２）で削除された要素の内容が、それらの要素の配列位置とともに、補配列Ｔ0８２０を構成する。補配列は、ウォレットの中に記憶される必要はないが、例えば、スマートカード、またはその他の外部可搬メモリデバイスを介して配布されるか、または別の方法でシステムのユーザ８２５がアクセスできるようにされる。
【００８４】
例示的な実施形態では、真理表配列ＴＳによって表わされる秘密のブール関数（またはブール関数の状態情報）が分割され、部分配列と補配列が別々に記憶されると、一般化されたカモフラージュは、ＴＳの中のデータおよび情報を、したがって、ＴＳが表わす意思決定システムのデータおよび情報を、以下の方法でセキュアにする。
【００８５】
ＴＳにアクセスすることを所望するユーザが、補配列Ｔ0を入力する（または入力されるようにする）。補配列（パスワード）Ｔ0を構成する情報も、個人ユーザが憶えておくには大きすぎる可能性があるため、好ましくは、スマートカード（ＰＮを有する、または有さない）などの外部可搬メモリデバイスを使用して補配列を記憶する。したがって、例えば、補配列がＰＩＮによって保護されたスマートカード上に記憶されている場合、ユーザは、このスマートカードを読取りデバイスに挿入し、ＰＩＮを入力する。ＰＩＮが正しかった場合、スマートカードは、正しい補配列Ｔ0がカードから読み取られることを許し、ＰＩＮが正しくなかった場合、スマートカードは、誤った「ダミー」配列Ｔ*が読み取られるようにする。一般化されたカモフラージュの他の実施形態の場合と同様に、ダミー配列は、無意味であること、ランダムであること、固定であること、または擬似有効であることができる（擬似有効であることは、攻撃者を欺いて有効な結果が得られたと思い込ませる能力を示す）。ダミー配列は、カード上に直接に記憶され、あるいはカードが処理能力を有する場合、カードによって生成されることもできる。
【００８６】
したがって、補（またはダミー）配列が、システムに入力される。一般化されたカモフラージュシステムは、ウォレットの中に記憶されている部分配列ＴＰ８０１、およびユーザに入力された配列８０２（ＴＳから取り除かれた要素の位置を含む）から、やはりウォレット８００の中に記憶されている表完成モジュールｔｃ８０２を使用して出力真理表を生成する。システムの出力を、いくつかの方法でユーザに提示することができる。すなわち、コンピュータモニタを介して、印刷された表現を介して、その表現を符号化し、変数に関する任意の入力された１組の値について表現の値を計算することができるプログラムを介して提示されること等である。
【００８７】
部分真理表ＴＰ８０１、および補配列Ｔ0８２０が、以上に概説した方法によって（すなわち、秘密表ＴＳから要素を取り除くことによって）生成されているこの例では、表完成モジュールｔｃ８０２は、次の方法を使用してＴ0およびＴＰから真理表を構成する。すなわち、ＴＳから取り除かれた各要素に関して、（ａ）要素が挿入されるべきＴＰの中の挿入ポイントを探し出し、（ｂ）補配列Ｔ0の中の連続するビットから各挿入ポイントに対応する要素内容を挿入する。以上は、補配列と部分配列を結合するための１つの例示的な技術を説明している。２つの配列を結合するための多くの他の周知の技術が当業者に知られており、本明細書で説明する必要はない。
【００８８】
したがって、一般化されたカモフラージュの前述の例では、サブオブジェクトは、ユーザによって入力される補配列Ｔ0８２０（削除された要素に関する内容と整数識別子をともに含む）、部分真理表ＴＰ８０１、およびｔｃ８０２である。合成関数ｆ８１０は、この例では、次のとおり記述される。すなわち、ｆ（ｘ，ｙ，ｚ）＝ｚ（ｘ，ｙ）である。ユーザが、正しい補配列Ｔ0を正しく憶えており、入力した場合（例えば、前述したスマートカードの方法を介して）、以下のとおり、正しいセキュアにされた表ＴＳ８３０が、システムによって再構成されて出力される。
【００８９】
f(T0, TP, tc) = tc(T0, TP)=TS
【００９０】
そうではなく、ユーザが、正しい補配列を憶えておらず、または正しい補配列が入力されるようにせず、代わりに、ダミーグラフまたはそれ以外では偽の配列Ｔ*が入力されるようにした場合、以下のとおり、疑似表が、システムによって再構成されて出力される。
【００９１】
f(T* ,TP, tc) = tc(T*, TP)=TS*
【００９２】
（５．さらなる実施形態）
以上に、暗号鍵、コンピュータ表現可能なグラフによってモデル化される動的システム、およびコンピュータ表現可能なブール関数によってモデル化される意思決定システムなどの様々なコンピュータ表現可能なオブジェクトをセキュアにすることを目的とする一般化されたカモフラージュの様々な適用例を説明した。これらのオブジェクトタイプのそれぞれを一般化されたカモフラージュの特定の例として詳細に説明した。この一般化されたカモフラージュは、以上の特定の例だけでなく、当業者には明白な多数の代替の実施形態も含むものと理解されたい。一般化されたカモフラージュの領域（breadth）および範囲は、デジタル式に表現することが可能な任意の量を、グラフカモフラージュ実施形態またはブーリアンカモフラージュ実施形態を使用してカモフラージュできることを示す以下に従って最も容易に示される。以下に、所与のデータをブール関数またはグラフと考えることができ、ブーリアンカモフラージュ技術またはグラフカモフラージュ技術を使用してその所与のデータを保護できることを示す。
【００９３】
（ａ．ブーリアンカモフラージュを使用して任意の離散量を保護すること）
一般性を失うことなく、保護されるべき量は、長さｎの０と１の列であるものと想定する。その量を次のとおりブール関数として表わすことができる。前述したブーリアンカモフラージュの説明から、ｋ個の変数に関するブール関数は、スペース効率の高い実施形態においてサイズ２kのビット配列を使用して表現できることを想い起こされたい。ｎが２の整数の累乗である場合、保護されるべき量は、当然、ｌｏｇ2ｎ個の変数に関するブール関数の１つの可能な状態を表わす。ｎが２の整数の累乗ではない場合、２の整数の累乗が得られるまで適切な数のビットをデータに付加することができ、もたらされるビットシーケンスが、
【００９４】
【数１】
2004523183.tif 000003
【００９５】
個の変数に関するブール関数を表わす。
【００９６】
代替として、別の実施形態では、保護されるべき量は、真理表の特定の行（または複数の行）として表現することができ、この真理表の中で、ｘ1，ｘ2，．．．，ｘnの特定の値が保護されるべき量にマッチし、その行の識別は、その他の行と比べてその行に関する最後の列のエントリの特別な値Ｆによって示される。つまり、保護される量を表わすのに列Ｆを使用する代わりに、Ｆに関する演算数の可能な値を表わす行の１つ（または複数）を使用する。以上の実施形態のどちらも、配列を使用して、すなわち、第１のケースでは、配列自体が、また第２のケースでは、より大きい行列の一部としての配列を使用して保護されるべき量を表わしているものと見なすことができる。そのような行列を使用すると、行列を使用して、保護されるべき異なる量を同時にカモフラージュすることができ、その量をブール関数の異なる命題状態として表現することが提供される。
【００９７】
このように保護されるべき量をブール関数の可能な状態の１つとして表わすと、前述したブーリアンカモフラージュ技術を使用してその量を保護することができる。以上では、２を基数とする算術を使用しているが、この技術は、任意の他の基数（例えば、英語のアルファベットなどの２６を基数とするシステムを含む）に容易に適用可能であり、例えば、保護されるべき量をｌｏｇkｎ個の変数のブール関数の１つの可能な状態として表現することにより、基数ｋに適用可能であることも、当業者には理解されよう。代替として、その他の基数の各要素に、単に固有の２を基数とする等価物を割り当てて（例えば、英語のアルファベットの２６を基数とするケースでは、ａ＝００００１，ｂ＝０００１０，．．．，ｚ＝１１０１０）、２を基数とする演算にとりかかることができる。
【００９８】
（ｂ．グラフカモフラージュを使用して任意の離散量を保護すること）
同様に、ｋ個の頂点の任意のグラフをサイズｋ×ｋの隣接行列として表現することができる。この行列の要素を行優先順に並べた場合、サイズｋ2のビット配列が得られる。言い換えれば、ｋ個の頂点のグラフは、サイズｋ2のビット配列として表現することができる。したがって、保護されるべき量がｎビットを有し、ｎが完全平方である場合、保護されるべき量は、当然、√ｎ個の頂点のグラフに対応する。ｎが完全平方ではない場合、｜√ｎ｜個の頂点のグラフが得られるまで、適切な数のビットを保護されるべき量に付加することができる。そのようなグラフでは、保護されるべき量は、任意の所望の規約に従って隣接行列の内容として表現される。スペース効率の高い実施においては、行列は、行優先式または列優先式に記憶された要素を、保護されるべき量（必要な埋込みを伴う）を含むのに必要な数だけしか含まない。他の実施においては、行列の１つの（または複数の）行または列だけが使用され、その他の行または列を、その他のデータで埋めることができる。保護されるべき量を含む行または列の識別子は、行列の所定の要素によって特定されること（例えば、限定としてではなく、そのような識別子を最初の行に符号化することにより）、または行列に符号化することなく、固定であり、システムに知られていることが可能である。このように、保護されるべき量がグラフとしてモデル化されると、次に、グラフカモフラージュ実施形態を使用してその量を保護することができる。
【００９９】
以上、本明細書で開示した技術が、許可のない使用、または許可のないアクセスからセキュアにされ、保護されたままであるべきデータ、情報または機能変換を実行するための命令を担持する、または表現する任意の形態のコンピュータ表現可能なオブジェクトをカモフラージュを介してセキュアにするために一般に使用可能であることを示した。
【０１００】
（ｃ．ハードウェア実施形態およびソフトウェア実施形態）
さらに、例示的な実施形態をソフトウェアベースのシステムに関連して説明してきたが、これは厳格に必要なわけではない。例えば、一般化されたカモフラージュ要素の一部またはすべてをマイクロコードとＰＬＡまたはＲＯＭ、汎用プログラミング言語と汎用マイクロプロセッサ、またはＡＳＩＣを使用して配備することができる。つまり、一般化されたカモフラージュは、ソフトウェアそのものに限定されず、純粋なソフトウェア、ソフトウェアとハードウェアの組合せ、または単独のハードウェアさえ含め、実質的にあらゆる形態のコンピュータ論理命令で配備することが可能である。したがって、実施がソフトウェアであるか、ハードウェアであるか、ソフトウェアとハードウェアの組合せであるかに応じて、様々な実施形態を実施するのに使用されるコンピュータ論理命令を含むコンピュータ読取り可能媒体およびメモリが、データ構造、または他のタイプのソフトウェア構造、ディスク、ＲＯＭ、ＲＡＭ、あるいは他のタイプの物理構造、または物理構造の何らかの組合せを含むことが可能である。
【０１０１】
したがって、以上すべてに鑑みて、本発明の範囲は、添付の特許請求の範囲によってのみ限定されるものとする。
【図面の簡単な説明】
【０１０２】
【図１Ａ】許可されたユーザに適用された一般化されたカモフラージュ技術を示す概略図である。
【図１Ｂ】許可のないユーザに適用された一般化されたカモフラージュ技術を示す概略図である。
【図２】Ｋａｕｓｉｋの暗号式カモフラージュ法を示す概略図である。
【図３】一般化されたカモフラージュの暗号式カモフラージュ実施形態を示す概略図である。
【図４Ａ】一般化されたカモフラージュの生成カモフラージュ実施形態を示す概略図である。
【図４Ｂ】図４Ａのシステムの特定の実施形態を示す図である。
【図５】物理システムおよび／または論理システムの例示的なグラフモデル表現（および関連する行列データ構造）を描いた図である。
【図６】一般化されたカモフラージュのグラフカモフラージュ実施形態を示す概略図である。
【図７】ブール関数によってモデル化された意思決定プロセスに関する例示的な真理表である。
【図８】一般化されたカモフラージュのブール関数カモフラージュ実施形態を示す概略図である。
【図１Ａ】
2004523183.tif 000004
【図１Ｂ】
2004523183.tif 000005
【図２】
2004523183.tif 000006
【図３】
2004523183.tif 000007
【図４Ａ】
2004523183.tif 000008
【図４Ｂ】
2004523183.tif 000009
【図５】
2004523183.tif 000010
【図６】
2004523183.tif 000011
【図７】
2004523183.tif 000012
【図８】
2004523183.tif 000013
【国際公開パンフレット】
2004523183.tif 000014
2004523183.tif 000015
2004523183.tif 000016
2004523183.tif 000017
2004523183.tif 000018
2004523183.tif 000019
2004523183.tif 000020
2004523183.tif 000021
2004523183.tif 000022
2004523183.tif 000023
2004523183.tif 000024
2004523183.tif 000025
2004523183.tif 000026
2004523183.tif 000027
2004523183.tif 000028
2004523183.tif 000029
2004523183.tif 000030
2004523183.tif 000031
2004523183.tif 000032
2004523183.tif 000033
2004523183.tif 000034
2004523183.tif 000035
2004523183.tif 000036
2004523183.tif 000037
2004523183.tif 000038
2004523183.tif 000039
2004523183.tif 000040
2004523183.tif 000041
2004523183.tif 000042
2004523183.tif 000043
2004523183.tif 000044
2004523183.tif 000045
2004523183.tif 000046
2004523183.tif 000047
2004523183.tif 000048
2004523183.tif 000049
2004523183.tif 000050
2004523183.tif 000051
2004523183.tif 000052
2004523183.tif 000053
2004523183.tif 000054
2004523183.tif 000055
2004523183.tif 000056
2004523183.tif 000057
2004523183.tif 000058
2004523183.tif 000059
2004523183.tif 000060
2004523183.tif 000061
2004523183.tif 000062
2004523183.tif 000063
2004523183.tif 000064
2004523183.tif 000065
【国際調査報告】
2004523183.tif 000066