(57)【特許請求の範囲】
【請求項１】
モバイルストレージデバイスに基づくデータブラックホール処理方法であって、以下：
計算デバイスにはデータブラックホールシステムを配置して、データブラックホールターミナルを形成すること；
データブラックホール空間をビルドすることであって、前記モバイルストレージデバイス上に開いたデータストレージ区域を含み、ここで、当データストレージ区域が、ＯＳ又はアプリレイヤーのソフトウエアにアクセスされない、データブラックホール空間をビルドすること；
計算デバイスのユーザとデータブラックホール空間又は一部空間に対応関係をビルドすること；及び
前記データブラックホールターミナルが、以下のポリシー：
ユーザがデータブラックホールターミナルを操作することで作成したデータライトを当ユーザが対応するデータブラックホール空間に導くこと；
ローカルポートで非データブラックホールターミナルに対するデータ出力を阻止すること；
を実行すること
を含む処理方法。
【請求項２】
請求項１に記載されたモバイルストレージデバイスに基づくデータブラックホール処理方法であって、データブラックホールシステムを配置することはデータセキュリティストレージ方法を配置することを含む、ユーザがデータブラックホールターミナルを操作することで作成したデータライトを当ユーザが対応するデータブラックホール空間にリダイレクトして、データセキュリティストレージ方法で実現する、データセキュリティストレージ方法は、
ハードウエア命令を受信する；
当ハードウエア命令はストレージ命令であれば、ストレージ命令の宛先アドレスを当ユーザが対応するデータブラックホール空間のストレージアドレスに改修する；及び
改修後のストレージ命令をハードウエアレイヤーへ送信して実行する；
ことを含む、処理方法。
【請求項３】
請求項２に記載されたモバイルストレージデバイスに基づくデータブラックホール処理方法であって、ここで、データブラックホールシステムを配置することはデータセキュリティリード方法を配置することを含み、データセキュリティリード方法は、
ハードウエア命令を受信する；
当ハードウエア命令はリード命令であり、読み取り用のデータ読み取り用のデータがデータブラックホール空間にすでにあれば、リード命令の元アドレスを当ユーザが対応するデータブラックホール空間のストレージアドレスに改修する；
改修後のストレージ命令をハードウエアレイヤーへ送信して実行する；
ことを含む、処理方法。
【請求項４】
請求項２に記載されたモバイルストレージデバイスに基づくデータブラックホール処理方法であって、ここで、データブラックホールシステムを配置することはデータセキュリティリード方法を配置することを含み、データセキュリティリード方法は、
ハードウエア命令を受信する；
当ハードウエア命令はリード命令であり、読み取り用のデータ読み取り用のデータがデータブラックホール空間にすでにあれば、ユーザに一つ選択を提供する：ローカルデータ又はデータブラックホール空間データをリードする、ユーザの選択によりローカルデータ又はデータブラックホール空間データをリードする；
改修後のストレージ命令をハードウエアレイヤーへ送信して実行する；
ことを含む、処理方法。
【請求項５】
請求項４に記載されたモバイルストレージデバイスに基づくデータブラックホール処理方法であって、データブラックホール空間データを読み取ることは、
リード命令の元アドレスを当ユーザが対応するデータブラックホール空間のストレージアドレスに更新する、ことを含む、処理方法。
【請求項６】
請求項３または４に記載されたモバイルストレージデバイスに基づくデータブラックホール処理方法であって、ハードウエア命令を受信することは、
ハードウエアアブストラクトレイヤーのハードウエア命令を受信する、ことを含む、処理方法。
【請求項７】
請求項１に記載されたモバイルストレージデバイスに基づくデータブラックホール処理方法であって、ここで、データブラックホールシステムを配置することはデータセキュリティストレージ方法を配置することを含み、ユーザがデータブラックホールターミナルを操作することで作成したデータライトをユーザが対応するデータブラックホール空間にリダイレクトしてデータセキュリティストレージ方法で実現し、データセキュリティストレージ方法は、
命令実行環境（アドレスレジスタを含む）をキャッシュする、アドレスレジスタは次に実行するマシン命令のアドレスを保存する、当アドレスは第一アドレスとして；
ディスパッチ待ちマシン命令セグメントを獲得し、ディスパッチ待ちマシン命令セグメントの最後一条命令は第一プログラム偏移命令であり；
ディスパッチ待ちマシン命令セグメントの全て命令を分析し、ストレージ命令であれば、前述ストレージ命令中の宛先アドレスを対応するデータブラックホールのストレージアドレスに改修して；
前述第一プログラム偏移命令の前に、第二プログラム偏移命令を挿入する、第二アドレスが有る再構築命令セグメントを作成し、第二プログラム偏移命令は命令再構築プラットフォームのエントリアドレスに指す；
前述アドレスレジスタ中の第一アドレスを第二アドレスへ改修し；及び
前述命令実行環境に回復する；
ことを含む、処理方法。
【請求項８】
請求項１に記載されたモバイルストレージデバイスに基づくデータブラックホール処理方法であって、ここで、データブラックホールシステムを配置することはデータセキュリティストレージ方法を配置することを含み、ユーザがデータブラックホールターミナルを操作することで作成したデータライトをユーザが対応するデータブラックホール空間にリダイレクトしてデータセキュリティストレージ方法で実現され、データセキュリティストレージ方法は、
命令実行環境をキャッシュして；
第一ストレージ位置に宛先アドレスを読み取り、宛先アドレスによりディスパッチ待ちマシン命令セグメントを獲得し；ディスパッチ待ちマシン命令セグメントの最後一条命令は第一プログラム偏移命令であり；
第一ストレージ位置に第一プログラム偏移命令の宛先アドレスを保存し；
ディスパッチ待ちマシン命令セグメントの全て命令を分析して、ストレージ命令であれば、前述ストレージ命令中の宛先アドレスを対応するデータブラックホールのストレージアドレスに改修して；
第一プログラム偏移命令を第二プログラム偏移命令に置換える、第二アドレスが有る再構築命令セグメントを作成して；前述第二プログラム偏移命令が命令再構築プラットフォームのエントリアドレスへ指すこと；及び
前述命令実行環境に回復して、第二アドレスへジャンプして実行を続ける；
ことを含む、処理方法。
【請求項９】
請求項１に記載されたモバイルストレージデバイスに基づくデータブラックホール処理方法であって、データブラックホールシステムを配置することはデータセキュリティストレージ方法を配置することを含む、ユーザがデータブラックホールターミナルを操作することで作成したデータライトをユーザが対応するデータブラックホール空間にリダイレクトしてデータセキュリティストレージ方法で実現する、データセキュリティストレージ方法は、
命令実行環境をキャッシュして；
スタックに保存するプログラム偏移命令のアドレスとパラメタを獲得する、次に実行する命令のアドレスを計算し、当アドレスは第一アドレスであり；
第一アドレスによりディスパッチ待ちマシン命令セグメントを獲得し；ここで、ディスパッチ待ちマシン命令セグメントの最後一条命令は第一プログラム偏移命令であり；
ディスパッチ待ちマシン命令セグメントの全て命令を分析する、ストレージ命令であれば、前述ストレージ命令中の宛先アドレスを対応するデータブラックホールのストレージアドレスに改修すること；
第一プログラム偏移命令をプッシュ命令に置換える、プッシュ命令中に第一プログラム偏移命令のアドレスとオペランドをレコードすること；
プッシュ命令後に第二プログラム偏移命令を加え、第二アドレスが有る再構築命令セグメントを作成すること；前述第二プログラム偏移命令が命令再構築プラットフォームのエントリアドレスへ指す；及び
前述命令実行環境に回復して、第二アドレスへジャンプして実行を続ける；
ことを含む、処理方法。
【請求項１０】
請求項７に記載されたモバイルストレージデバイスに基づくデータブラックホール処理方法であって、データブラックホールシステムを配置することはデータセキュリティリード方法を配置することを含み、データセキュリティリード方法は、
命令実行環境（アドレスレジスタを含む）をキャッシュする、アドレスレジスタは次に実行するマシン命令のアドレスを保存する、当アドレスは第一アドレスとし；
ディスパッチ待ちマシン命令セグメントを獲得する、ディスパッチ待ちマシン命令セグメントの最後一条命令は第一プログラム偏移命令であり；
ディスパッチ待ちマシン命令セグメントの全て命令を分析する、リード命令であり、読み取り用のデータがすでにデータブラックホールに保存されていれば、リード命令中の元アドレスを対応するデータブラックホールのストレージアドレスに改修し；
前述第一プログラム偏移命令の前に、第二プログラム偏移命令を挿入する、第二アドレスが有る再構築命令セグメントを作成し、第二プログラム偏移命令は命令再構築プラットフォームのエントリアドレスに指す；
前述アドレスレジスタ中の第一アドレスを第二アドレスへ改修すること；及び
前述命令実行環境に回復する；
ことを含む、処理方法。
【請求項１１】
請求項８に記載されたモバイルストレージデバイスに基づくデータブラックホール処理方法であって、データブラックホールシステムを配置することはデータセキュリティリード方法を配置することを含み、データセキュリティリード方法は、
命令実行環境をキャッシュする；
第一ストレージ位置に宛先アドレスを読み取る、宛先アドレスによりディスパッチ待ちマシン命令セグメントを獲得し；ディスパッチ待ちマシン命令セグメントの最後一条命令は第一プログラム偏移命令であり；
第一ストレージ位置に第一プログラム偏移命令の宛先アドレスを保存すること；
ディスパッチ待ちマシン命令セグメントの全て命令を分析する、リード命令であり、読み取り用のデータがすでにデータブラックホールに保存されていれば、リード命令中の元アドレスを対応するデータブラックホールのストレージアドレスに改修すること；
第一プログラム偏移命令を第二プログラム偏移命令に置換え、第二アドレスが有る再構築命令セグメントを作成すること；前述第二プログラム偏移命令が命令再構築プラットフォームのエントリアドレスへ指す；及び
前述命令実行環境に回復して、第二アドレスへジャンプして実行を続ける；
ことを含む、処理方法。
【請求項１２】
請求項９に記載されたモバイルストレージデバイスに基づくデータブラックホール処理方法であって、データブラックホールシステムを配置することはデータセキュリティリード方法を配置することを含み、データセキュリティリード方法は、
命令実行環境をキャッシュすること；
スタックに保存するプログラム偏移命令のアドレスとパラメタを獲得すること、次に実行する命令のアドレスを計算すること、当アドレスは第一アドレスであり；
第一アドレスによりディスパッチ待ちマシン命令セグメントを獲得すること；ディスパッチ待ちマシン命令セグメントの最後一条命令は第一プログラム偏移命令である；
ディスパッチ待ちマシン命令セグメントの全て命令を分析して、リード命令であり、読み取り用のデータがすでにデータブラックホールに保存されていれば、リード命令中の元アドレスを対応するデータブラックホールのストレージアドレスに改修すること；
第一プログラム偏移命令をプッシュ命令に置換える、プッシュ命令中に第一プログラム偏移命令のアドレスとオペランドをレコードすること；
プッシュ命令後に第二プログラム偏移命令を増える、第二アドレスが有る再構築命令セグメントを作成すること；前述第二プログラム偏移命令が命令再構築プラットフォームのエントリアドレスへ指す；及び
前述命令実行環境に回復して、第二アドレスへジャンプして実行を続ける；
ことを含む、処理方法。
【請求項１３】
請求項７〜１２のいずれか一項に記載されたモバイルストレージデバイスに基づくデータブラックホール処理方法であって、ここで、ディスパッチ待ちマシン命令セグメントを獲得することは、
アドレスレジスタからディスパッチ待ちマシン命令アドレスをリードする；
プログラム偏移命令を検索目標として、最初のプログラム偏移命令を探すまでに、前述マシン命令アドレスが指すマシン命令及び後続命令を検索する、最初偏移命令は第一プログラム偏移命令と呼ぶ；前述プログラム偏移命令は、マシン命令の実行順番を変えさせるマシン命令に指す；
前述第一プログラム偏移命令及びその前の全てのディスパッチ待ちマシン命令を一つディスパッチ待ちマシン命令セグメントとする；
ことを含む、処理方法。
【請求項１４】
請求項７〜１２のいずれか一項に記載されたモバイルストレージデバイスに基づくデータブラックホール処理方法であって、ここで、ディスパッチ待ちマシン命令セグメントを獲得する方法は、
アドレスレジスタからディスパッチ待ちマシン命令アドレスをリードすること；
プログラム偏移命令を検索目標として、パラメタアドレスが有る最初のプログラム偏移命令を探すまでに、前述マシン命令アドレスが指すマシン命令及び後続命令を検索すること、最初偏移命令は第一プログラム偏移命令と呼ぶ；前述プログラム偏移命令は、マシン命令の実行順番を変えさせるマシン命令を指す；
前述第一プログラム偏移命令及びその前の全てのディスパッチ待ちマシン命令を一つディスパッチ待ちマシン命令セグメントとする；
ことを含む、処理方法。
【請求項１５】
モバイルストレージデバイスであって、モバイルデータセキュリティアクセスユニット及びセキュリティストレージ空間を含み、ここで、セキュリティストレージ空間はＯＳ及びＯＳにより上層なソフトウエアに使えられず、モバイルデータセキュリティアクセスユニットだけにアクセスされ；
ここで、モバイルストレージデバイスは計算デバイスとカプリング接合する時に、計算デバイスのＣＰＵはモバイルストレージデバイスにインストールしたＯＳを実行することに使用され、ユーザが計算デバイスのＩ／Ｏでモバイルストレージデバイスと交互し、モバイルデータセキュリティアクセスユニットはモバイルストレージデバイスのＯＳから来る命令を受信して計算デバイスのＣＰＵへ送信し；
ここで、モバイルデータセキュリティアクセスユニットは、以下：
ハードウエア命令を受信することに適した受信ユニット；
前述ハードウエア命令がストレージ命令又はリード命令かどうかを判断して判断信号を作成することに適した命令分析ユニット；
判断信号により、前述ハードウエア命令はストレージ命令であれば、前述ストレージ命令中の宛先アドレスをセキュリティストレージ空間に対応するストレージアドレスに改修する、命令改修ユニット；前述ハードウエア命令はリード命令であれば、マッピングビットマップにサーチしてビットマップデータにより前述リード命令中のリードアドレスを改修し、前述ビットマップは、ビット単位でのマップであり、１つのビットは、１つのセクタを表し、ビットのデータは、ローカルストレージデバイスの対応するセクタが前述セキュリティストレージ空間上に格納されるか否かを表す；及び
改修後のリード又はストレージ命令をハードウエアレイヤーへ送信して実行する、送信ユニット
を含む、モバイルストレージデバイス。
【請求項１６】
請求項１５に記載されたモバイルストレージデバイスであって、更に
更新ユニットは、命令改修ユニットは前述ストレージ命令を改修する後に、ビットマップ中に有る前述宛先アドレスの対応ビットを更新することに適する、ことを含む、モバイルストレージデバイス。
【請求項１７】
請求項１５に記載されたモバイルストレージデバイスであって、更に
暗号化復号化ユニットは、前述セキュリティストレージ空間とカプリング接合して、セキュリティストレージ空間に進出するデータを暗号化復号化することに適する、ことを含む、モバイルストレージデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はコンピュータセキュリティ分野に繋がり、特にモバイルストレージデバイスによりデータブラックホール処理方法及びモバイルストレージデバイスに関る。
【背景技術】
【０００２】
既存の電子情報セキュリティ分野はシステムセキュリティ、データセキュリティ、デバイスセキュリティを含む3種類の小分野が有る。
【０００３】
データセキュリティ分野は、以下の三種類の技術を利用しデータセキュリティを確保する：
（１）データ内容セキュリティは、データ暗号化復号化技術、ポイントツーポイントデータ暗号化技術を含む、ストレージと伝送過程にデータの不法読みを避けることを確保する；
（２）データセキュリティ移送技術は、不法コピー、プリント及び別の出力を防止することを含む、使用と移送過程中のデータセキュリティを確保する；
（３）ネット阻隔技術は、ネット物理阻隔とネットバリア技術を含む。
【０００４】
関連分析により、コンピュータに対する全て危害は極めて５０％ぐらいまで有効に検出できる；検出技術はカーネルウイルス、トロイ木馬、OS抜け道、システムバックドア及び人工リークに対して能力不足だから、事実に任意計算デバイス（コンピュータ、ノートパソコン、ハンドヘルド通信デバイスなど）には悪意コードが存在可能である。
【０００５】
悪意コードはターミナルシステムに侵入すれば、前記の暗号化技術、コピー防止技術及びネット阻隔技術は無用になる。既存のハック技術はシステム抜け道又はシステムバックドアを利用して前記セキュリティ技術を透過する、システムに悪意コードをインプラントしてユーザデータを取得できる。前記技術は機密人員の主動とパッシブリークを全然防犯できない、例えば、内部人員は携帯ストレージデバイスを利用して内部ネット又はターミナルからダウンロードした資料をストレージする、デバイスを取り出して、内部リークとする；又は例えば、内部人員は直接に計算デバイスを取り出す。
【０００６】
以上のとおり、コピー防止技術は機密情報を不法ストレージされることを保証できない。ネットフィルタ技術は機密情報の失いを確保できない。機密人員は悪意コード又は悪意ツールを利用してリークする、そして、機密デバイス又はストレージメディアをコントロールできずにリークする可能である。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明の目的はモバイルストレージデバイスによりデータブラックホール処理方法及びモバイルストレージデバイスを提供し、データセキュリティを上げる。
【課題を解決するための手段】
【０００８】
本発明の一方機能はモバイルストレージデバイスによりデータブラックホール処理方法を提供する。以下の機能を含む：計算デバイスにはデータブラックホールシステムを配置してデータブラックホールターミナルをなせる；データブラックホールシステムは計算デバイス実行中の中間データと実行結果を特定なストレージ位置に保存して計算デバイスの正常運行を確保する；データブラックホール空間をビルドすることは、前述モバイルストレージデバイスにデータストレージ区域を開き、当データ区域はデータブラックホールシステムだけがアクセスできる、OSとアプリケーションはアクセスできない、前述モバイルストレージデバイスは計算デバイスとカプリィング接合する、ことを含む；計算デバイスのユーザとデータブラックホールの空間又は一部空間に対応関係をビルドする；ユーザがデータブラックホールターミナルに対するデータライト操作はデータブラックホール空間に導く；ローカルストレージデバイスに対するデータパーシスタンス操作を阻止する、ローカルポートでデータブラックホール空間外に向くデータ輸出を阻止することで、データブラックホールターミナル或いは空間に入ったデータはデータブラックホール空間だけに存在することを保証する。
【０００９】
本発明のもう一方機能は、モバイルストレージデバイスを提供し、モバイルデータセキュリティアクセスユニット及びセキュリティストレージ空間を含む；中に、モバイルストレージデバイスにOSをインストールする、セキュリティストレージ空間は、OS及びOS以上のアプリケーションが使用不可で、モバイルデータセキュリティアクセスユニットだけがアクセスできる；中に、モバイルストレージデバイスは計算デバイスとカプリィングする時に、計算デバイスのCPUはモバイルストレージデバイスにインストールしたOSを実行することに用する、ユーザは計算デバイスのI/Oでモバイルストレージデバイスと交互する、モバイルデータセキュリティアクセスユニットはモバイルストレージデバイスOSからの命令を受信して計算デバイCPUへ送信する；中に、モバイルデータセキュリティアクセスユニットは以下を含む：受信ユニットは、ハードウエア命令を受信することに適する；命令分析ユニットは、ハードウエア命令がストレージ又はリード命令を判断する、判断信号を作成することに適する；命令改修ユニットは、判断信号によりハードウエア命令がストレージ命令であれば、以上のストレージ命令中の宛先アドレスをセキュリティストレージ空間の対応ストレージアドレスに改修する；又は、ハードウエア命令がリード命令であれば、マッピングビットマップにサーチし、マッピングビットマップによりリード命令のリードアドレスを改修する、中に、前述マッピングビットマップは計算デバイスのローカルストレージ空間のアドレスが対応するデータをセキュリティ空間にダンプするかどうかを示す；送信ユニットは、改修後のリード又はストレージ命令をハードウエアに送信して実行することに適する。
【００１０】
選択的に、モバイルストレージは更新ユニットを含める。更新ユニットは、命令改修ユニットが前記ストレージ命令を改修してから、マッピングビットマップ中に宛先アドレスが対応するビットを更新することに適する。
【００１１】
選択的に、モバイルストレージは暗号化複合化ユニットを含める。前述セキュリティストレージ空間とカプリィング接合してセキュリティストレージ空間に進出するデータを暗号化復号化することに適する。
【００１２】
前記方法とデバイスはデータセキュリティを上げる。具体的に、ブラックホール空間はユーザと対応する。ハッカーは抜け道、バックドア、木馬など悪意コードでデータ権限を取得してからデータのコピー、ストレージ、送信、インターセプトができる。然し、周辺デバイス、ポート、ユーザ、ターミナルに送信するデータをユーザが対応するデータブラックホールに導き、データブラックホール内に完成する。全てのデータ盗み、インターセプト、出力など操作はデータブラックホール内に実行する。データアクセス権限がある機密人員はデータのプライベート保存、バックアップ、送信、出力を試す時に、データ処理操作は全てデータブラックホール空間（ユーザと対応する空間）内に完成し、悪意操作を利用するリークができない。
【図面の簡単な説明】
【００１３】
【図１】既存の計算デバイスのシステム階層見取り図である。
【図２】本発明の一つ実施例が提供するランタイム命令再構築方法のフローチャートである。
【図３】本発明の一つ実施例が提供する再構築命令セグメントの作成過程見取り図である。
【図４】本発明の他の実施例の図２が有るステップS102のフローチャートである。
【図５】本発明の他の実施例の実行命令再構築方法のフローチャートであり、アドレス対応テーブルにより再構築後の命令セグメントを保存する。
【図６】本発明の他の実施例が提供するランタイム命令再構築方法のフローチャートであり、単独なストレージ位置を開いて第一プログラムの偏移命令宛先アドレスを保存する。
【図７】本発明の他の実施例が提供するランタイム命令再構築方法のフローチャートであり、非固定長の命令集合に対する逆アセンブルとアセンブル処理である。
【図８】本発明の他の実施例の実行命令再構築方法のフローチャートであり、PUSH命令で第一プログラム偏移命令を置き換える又はレコードする。
【図９ａ】本発明の他の実施例が提供するランタイム命令再構築方法のフローチャートであり、ランタイム命令再構築方法は前記マルチ実行例の特徴を総合する。
【図９ｂ】図９aの再構築方法はX86アーキテクチャプロセッサのランタイム操作過程見取り図である。
【図９ｃ】図９aの再構築方法はX86アーキテクチャプロセッサのランタイム操作過程見取り図である。
【図９ｄ】図９aの再構築方法はX86アーキテクチャプロセッサのランタイム操作過程見取り図である。
【図１０】本発明の一つ実施例が提供するランタイム命令再構築装置結構見取り図である。
【図１１】本発明の他の実施例が提供するランタイム命令再構築装置結構見取り図である。
【図１２】本発明の他の実施例が提供する命令再構築ユニット結構見取り図である。
【図１３】本発明の他の実施例が提供するランタイム命令再構築装置結構見取り図である。
【図１４】本発明の他の実施例が提供するランタイム命令再構築装置結構見取り図である。
【図１５】本発明の一つ実施例中の計算デバイスのシステム階層見取り図である。
【図１６】本発明の一つ実施例中のデータセキュリティアクセス過程の初期化過程見取り図である。
【図１７】本発明の一つ実施例中のビットマップ見取り図である。
【図１８】本発明の一つ実施例が提供するデータセキュリティストレージ方法のフローチャートである。
【図１９】本発明の一つ実施例が提供するデータセキュリティストレージ方法のフローチャートである。
【図２０】本発明の一つ実施例が提供するデータセキュリティストレージ方法のフローチャートである。
【図２１】本発明の一つ実施例が提供するデータセキュリティストレージ方法のフローチャートである。
【図２２】本発明の一つ実施例中のネット環境見取り図である
【図２３】本発明の一つ実施例が提供するデータセキュリティストレージ装置結構見取り図である。
【図２４】本発明の一つ実施例が提供するデータセキュリティリード装置結構見取り図である。
【図２５】本発明の一つ実施例が提供するデータセキュリティストレージと読み装置結構見取り図である。
【図２６】本発明の一つ実施例が提供するデータセキュリティストレージとリード装置結構見取り図である。
【図２７】本発明の他の実施例が提供するデータブラックホール空間見取り図である。
【図２８】本発明の一つ実施例が提供するデータブラックホール処理方法フローチャートである。
【図２９ａ】発明の一つ実施例が提供する計算デバイスのアーキテクチャ見取り図であり、中にシングルデータセキュリティストレージとリードの方法を表示する。
【図２９ｂ】本発明の一つ実施例が提供するシングルデータセキュリティストレージとリード装置結構見取り図である。
【図３０】本発明の一つ実施例が提供するシングルデータブラックホール処理方法である。
【図３１】本発明の一つ実施例が提供するモバイルストレージによりセキュリティストレージの見取り図である。
【図３２】本発明の一つ実施例が提供するモバイルストレージの階層結構見取り図である。
【発明を実施するための形態】
【００１４】
本発明の目的、技術法案とメリットをもっとはっきりするために、以下に図面を結合し、本発明を詳細に説明する。本文に描写する具体例は僅かに本発明の解釈に適用する、本発明に限定することではない、この状況を理解はずである。
【００１５】
分析
図１は既存の計算デバイスのシステム階層見取り図であり、上から下まで、計算デバイスは：
ユーザインタフェイスレイヤー１０１、アプリレイヤー１０２、OSカーネルレイヤー１０３、ハードウエアマッピングレイヤー１０４、及びハードウエアレイヤー１０５を含む。
【００１６】
中に、ユーザインタフェイスレイヤー１０１はユーザとデバイスのインタフェイス、ユーザは当レイヤーを利用してデバイス（デバイスの他レイヤー、例えば、アプリレイヤー１０２）と交互する。アプリレイヤー１０２はアプリソフトウエアレイヤーである。
【００１７】
OSカーネルレイヤー１０３は一つのソフトウエアロジックレイヤー、通常にいえばソフトウエアデータとソフトウエアコードからなる、インタフェイスレイヤー１０１とアプリレイヤー１０２により、OSカーネルレイヤー１０３のコードは高い権限を持ち、コンピュータシステムの各種ハードウエアとソフトウエア資源を完全操作できる。
【００１８】
ハードウエアマッピングレイヤー１０４はソフトウエアによるロジックレイヤーであり、通常にOSカーネルレイヤー内に実行し、カーネルレイヤーと同じ権限を持つ。ハードウエアマッピングレイヤーは主に各種類のハードウエア操作モードを統一的に上層インタフェイスにマップする、各ハードウエアの特殊性を上層にシールドする。一般的には、ハードウエアマッピングレイヤーはOSカーネルレイヤー１０３に使用されて各種ハードウエアの操作を完成する。
【００１９】
ハードウエアレイヤー１０５はコンピュータシステムの全てハードウエア構成部件である。
【００２０】
データ保存を例として以上の計算デバイスのシステムレイヤーの作業過程を説明する。
【００２１】
（１）ユーザインタフェイスレイヤー１０１を利用してユーザは「保存」機能を実行する；
（２）アプリレイヤー１０２は対応コードをコールし、以上のユーザ操作をOSが提供するインタフェイス関数（例えば、Win32プラットフォームのアプリプログラムインタフェイス――Win32  API）に転換する、即ち「保存」操作をOSカーネル１０３が有るAPIコールに転換する。
【００２２】
（３）OSカーネルレイヤー１０３は全てOSインタフェイス関数をハードウエアマッピングレイヤー１０４のインタフェイス関数に転換する；即ち、「保存」操作をハードウエアマッピングレイヤー１０４が提供するインタフェイス関数に転換する。
【００２３】
（４）ハードウエアマッピングレイヤー１０４は全てインタフェイス関数をハードウエア命令コールに転換する。
【００２４】
（５）ハードウエアレイヤー１０５（例えばCPU）は以上のハードウエア命令コールを受信してハードウエア命令を実行する。
ことを含む。
【００２５】
悪意コードは当計算デバイスに侵入してから、計算デバイスに欲しいデータを取得できる、データ盗み後の動作は以下モードが有る：
（１）ストレージ動作：目標データ内容をあるストレージ位置に保存する；
（２）伝送動作：盗みデータをネットで指定の宛先アドレスに直接転送する。
【００２６】
別に、以上の計算デバイス又は情報デバイスを使用する人員の内部リーク動作は以下モードが有る：
（１）主動リーク：機密人員は主動コピー、悪意ツールでセキュリティシステムに透過し、木馬インプラントなど手段を利用して機密データを取得してから、リークする；
（２）パッシブリーク：機密人員が使用するパソコン又はストレージメディアが保管不善のために落とす又は不当使用（例えば、機密デバイスはインターネットと直接に接続する）するからリークする。
【００２７】
前記のマルチリーク方式により当計算デバイスのデータセキュリティを保障できない。
【００２８】
発明人の研究により、コンピュータの実行過程中に、一つのCPUアドレスレジスタは次に実行するマシン命令アドレスを保存する、例えばPC（プログラムカウンタ）である。当レジスタのデータを獲得し、該データが指すアドレスにより、次に一条又はマルチ実行する命令を読取り、ランタイムマシン命令を獲得する目的が実現できる。
【００２９】
そして、前述一つ又はマルチマシン命令からなるディスパッチ待ち命令セグメントを改修し（例えば、中に別のプログラム偏移命令を挿入する、本文は命令再構築と呼ぶ）、当命令セグメントが実行終了する前にCPU実行権限をやはり取得し、再度後続一条ディスパッチ待ち命令セグメントを捕獲する、ランタイムマシン命令を連続捕獲する目的を実現できる。
【００３０】
そして、ディスパッチ待ち命令セグメントを獲得してから、中のマシン命令を分析して処理することができる、よって、ランタイム命令捕獲、再構築することだけでなく、予定の目標命令を管理できる。
【実施例】
【００３１】
命令再構築又は命令追跡
前記分析と発見により、本発明の一つ実施例の中があるランタイム命令再構築方法を提供する、当方法が実行する時に再構築プラットフォームと呼ぶ。図２のとおり、当方法S100は以下を含む：
S101、命令実行環境をキャッシュする；前述命令実行環境はアドレスレジスタを含む。アドレスレジスタはネクスト実行するマシン命令アドレスを保存する、当アドレスは第一アドレスである；
S102、ディスパッチ待ち命令セグメントを獲得する；中に、ディスパッチ待ちのマシン命令セグメントの最後の一条命令は第一プログラム偏移命令（例えば、第一ジャンプ命令）；
S103、前述第一プログラム命令の前に第二プログラム偏移命令を挿入し、第二アドレスがある再構築命令セグメントを作成する；前述第二プログラム偏移命令は命令再構築プラットフォームのエントリアドレスに指す、第二プログラム偏移命令が実行する後、ステップS101を実行する；
S104、前述アドレスレジスタ中の第一アドレスを第二アドレスに改修する；及び
S105、前述命令実行環境に回復する。
【００３２】
中に、ステップS101が前述命令実行環境をキャッシュすることは：キャッシュスタックにCPUマシン命令実行関連のレジスタデータをプッシュする、ことを含める。
【００３３】
本発明の他の実施例の中に、命令実行環境をキャッシュ又は保存することは特定的、デフォルト的な別キャッシュデータストラクチャーとアドレスの中に進行できる。
【００３４】
ステップS101中に前述アドレスレジスタはプログラムカウンタ（PC）である。
【００３５】
ステップS102中に、ディスパッチ待ちマシン命令セグメントの中に一つプログラム偏移命令だけがある、ディスパッチ待ちマシン命令セグメントは前述第一プログラム偏移命令及びその前の全てディスパッチ待ちマシン命令を含む。
【００３６】
ステップS103中に、前述ディスパッチ待ちマシン命令セグメントの最後一条命令（即ち、第一プログラム偏移命令、JP1と呼ぶ）前に、第二プログラム偏移命令（JP2と呼ぶ）を挿入する、前述JP2は命令再構築プラットフォームのエントリアドレスを指す、第二アドレス（A”と示す）を含む再構築命令セグメントを作成する。
【００３７】
第二プログラム偏移命令を挿入することは、CPUが前述ディスパッチ待ちマシン命令セグメントを実行する時、JP1に到着する前に、再度前述命令再構築プラットフォーム実行を始める、それで、命令再構築プラットフォームは下一段のディスパッチ待ちマシン命令を分析続けて、本方法を重複して全てランタイム命令再構築を完成する。
【００３８】
ステップS105中に、前述命令実行環境に回復することは以下を含める：
キャッシュスタックから命令実行と関連するレジスタデータをポップする；アドレスレジスタの中に保存するプログラム偏移命令の宛先アドレスを、すでに第二アドレスA”に改修する、A”をエントリアドレスとする新マシン命令セグメントを作成する。
【００３９】
ステップS105が実行した後、前述命令実行環境に回復し、命令再構築プラットフォームは一回に実行終了する、CPUは前述再構築命令セグメントを実行し、即ち、CPUは第二アドレスA”をエントリアドレスとしてマシン命令セグメントの実行を予定する。再構築命令セグメントの第二プログラム偏移命令JP２を実行する時、前述命令再構築プラットフォームが再びCPUコントロール権限を取得する（即ちステップS101を実行する）、この時、第一プログラム偏移命令の宛先アドレスがすでに取得する、当宛先アドレスが新しい第一アドレスとして、次に再度ステップS10１〜ステップS105を実行する。
【００４０】
本実施例の中に、前述ランタイム命令再構築方法はX86アーキテクチャのCPUに実行する；本発明の他の実施例中、前述ランタイム命令再構築方法はMIPSプロセッサまたはARMアーキテクチャのプロセッサに実行できる。本分野の普通技術者は、前記方法が計算デバイス中にある任意の別類型の命令処理ユニットに実行できる、ことを理解できる。
【００４１】
図3を結合して命令再構築過程と再構築命令セグメントの作成過程をもっと詳細に説明する。
【００４２】
図3はディスパッチ待ちマシン命令集合４０１（例えば、すでにメモリにロードされたあるプログラムのマシン命令）を含み、中に、命令４０１２は第一プログラム偏移命令である、もし命令４０１２の宛先アドレスは変数であれば、先に命令４０１２が命令４０１３に指すと仮定する；第一プログラム偏移命令４０１２以前（４０１２命令を含む）の全てディスパッチ待ちマシン命令はマシン命令セグメント４０１１（唯一なプログラム偏移命令を含む）を構成する。
【００４３】
命令再構築方法が実行する（命令再構築プラットフォームとなる）後、先ず命令実行環境をキャッシュする；次にマシン命令セグメント４０１１を獲得（例えばコピー）する；命令再構築プラットフォームは第一プログラム偏移命令４０１２の前に第二プログラム偏移命令４１１３を挿入する、第二プログラム偏移命令４１１３は再構築プラットフォームに指す、それで命令再構築セグメント４１１１を作成する、命令再構築セグメントのアドレスはA”である；キャッシュされた前記命令実行環境のアドレスレジスタの値AをアドレスA”に改修する；最後に前記命令実行環境に回復する。
【００４４】
命令再構築プラットフォーム４１１の実行が終了する後、CPUはA”アドレスが指した再構築命令セグメントを実行する、第二プログラム偏移命令４１１３の実行に到着する時、命令再構築プラットフォーム４１１が再度CPUコントロール権限を取得する。この時、第一プログラム偏移命令４０１２の宛先アドレス４０１３をすでに作成する、当宛先アドレスが新しい第一アドレスである、命令再構築プラットフォームは当宛先アドレスにより再度ステップS10１〜S105の実行を開始する、後続のディスパッチ待ちマシン命令を分析続けて、ランタイム命令再構築方法を実現する。
【００４５】
本発明の他の実施例により、図4のように、ステップS102の中に、ディスパッチ待ちマシン命令セグメントの獲得は以下を含む：
S1021、アドレスレジスタ（例えばPC）からディスパッチ待ちマシン命令アドレスを取得する。
【００４６】
S1022, プログラム偏移命令（例えばジャンプ命令）を検索目的として、一番目のプログラム偏移命令（第一プログラム偏移命令、例えば、第一ジャンプ命令）を発見するまでに、前述マシン命令アドレスが指すマシン命令及び後続命令を検索する；前述プログラム偏移命令はマシン命令実行順序を改変できるマシン命令を指し、Jumpプログラム偏移命令、Call呼び出す命令、Return返還命令などを含む。
【００４７】
S1023、前述第一プログラム偏移命令及びその前の全てディスパッチ待ちマシン命令をディスパッチ待ちマシン命令セグメントとして、当マシン命令セグメントを命令再構築プラットフォームに、又は、命令再構築プラットフォームが読み取りできる他のストレージ位置に保存する。
【００４８】
本発明の他の実施例の中に、非プログラム偏移命令(例えば、ライト命令、リード命令等)を検索目標としてディスパッチ待ちマシン命令セグメントを更にフラグメントしてディスパッチ待ちマシン命令セグメントを獲得する。こんな実施例の中に、ディスパッチプログラム偏移命令が実行する後、命令再構築プラットフォームは尚CPUコントロール又は実行権限を獲得することを保証するように、プログラム偏移命令が第二検索目標として、もっと細かいグラニュルのマシン命令セグメントを得ることが必要である。
【００４９】
本発明の他の実施例により、ステップS102とS103の間、前述ランタイム命令再構築方法が以下を含める：
命令集合にディスパッチ待ちマシン命令セグメントをマッチすることを利用して目的マシン命令を得る；前述命令集はX86、MIPSとARM命令集を含む；及び
予定方式により、前述目標マシン命令を改修する。
【００５０】
ランタイム命令をモニターするだけでなく、別の処理過程もできる、後に関連実施例は詳細に紹介する。
【００５１】
更に、命令再構築方法の効率をアップするために、ステップS102の中には、固定アドレスプログラム偏移命令が指すディスパッチ待ちマシン命令を纏めて獲得できる。
【００５２】
本発明の他の実施例により、別のランタイム命令再構築方法を提供する、当方法S300は以下を含む：
S301、命令実行環境をキャッシュする；前述命令実行環境はアドレスレジスタを含む、アドレスレジスタは次に実行するマシン命令アドレスを保存する、当アドレスは第一アドレスである；
S302、ディスパッチ待ちマシン命令セグメントを獲得する；中に、ディスパッチ待ちマシン命令セグメントの最後一条命令は第一プログラム偏移命令である、当プログラム偏移命令はパラメタアドレスプログラム偏移命令となる；
S303、前述第一プログラム偏移命令の前に、第二プログラム偏移命令を挿入して第二アドレスが有る再構築命令セグメントを作成する；前述第二プログラム偏移命令が命令再構築プラットフォームのエントリアドレスに指す、即ち、第二プログラム偏移命令を実行する後、ステップS301を実行する；
S304、前述アドレスレジスタ中の第一アドレスを第二アドレスに改修する；
S305、前述命令実行環境に回復する。
【００５３】
前の実施例が提供する方法と比べて区別がある：ステップS302中に、ディスパッチ待ちマシン命令セグメントはマルチプログラム偏移命令を含める；そして、これらのプログラム偏移命令は一条プログラム偏移命令だけがある、偏移命令は第一プログラム偏移命令と呼ぶ。
【００５４】
説明が必要なのは、プログラム偏移命令はパラメタアドレスプログラム偏移命令とコンスタントプログラム偏移命令の両種類がある。コンスタントプログラム偏移命令のジャンプアドレスはコンスタント（イミディエイト）である、パラメタアドレスプログラム偏移命令中のパラメタアドレスは通常にプログラム偏移命令前の一条マシン命令を計算してから得る。
【００５５】
類似に、ディスパッチ待ちマシン命令セグメントの最後一条命令は第一プログラム偏移命令である；ディスパッチ待ちマシン命令セグメントは前述第一プログラム偏移命令及び彼の前の全てディスパッチ待ちマシン命令を含む。
【００５６】
更に、プログラム実行中に作成したマシン命令の重複性が高いから、命令再構築方法の効率を上げて、計算デバイスの計算資源（例えばCPU資源）を省くために、少量のストレージ空間に再構築命令セグメントを保存することができる。
【００５７】
本発明の他の実施例により、ランタイム命令再構築方法が提供する。図５のように、当方法のS200は以下を含む：
S201、命令実行環境をキャッシュする；前述命令実行環境はアドレスレジスタ（例えばPCレジスタ）を含む。アドレスレジスタは次に実行するマシン命令のアドレスを保存する、当アドレスは第一アドレスと呼ぶ；一般的に言えば、命令実行環境はCPUの全てレジスタ（汎用レジスタ、ステイタスレジスタ、アドレスレジスタなど）を含む。
【００５８】
S202、第一アドレスによりアドレス対応テーブルにサーチする；前述アドレス対応テーブルは第一アドレス（例えばAアドレス）が指すディスパッチ待ちマシン命令セグメントの中に保存された再構築命令セグメントがあるかどうかを示す。アドレス対応テーブルのデータはアドレスペア又は別形式でストレージした関連データができる；
S203、対応レコードが見付ったら、前述第一アドレスA（アドレスレジスタの値A）を保存した再構築命令セグメントのアドレス（例えばアドレスA’）に改修する。
【００５９】
S204、対応レコードが見つからなければ、ディスパッチ待ちマシン命令セグメントを獲得する；中に、ディスパッチ待ちマシン命令セグメントの最後一条命令は第一プログラム偏移命令（例えば第一ジャンプ命令）である；
S205、前述第一プログラム偏移命令の前に第二プログラム偏移命令を挿入して第二アドレスがある再構築命令セグメントを作成する；前述第二プログラム偏移命令は命令再構築プラットフォームのエントリアドレスに指す、即ち、第二プログラム偏移命令を実行する後、ステップS201を実行する；
S206、前述アドレスレジスタ中の第一アドレスを第二アドレスに改修する；
S207、前述命令実行環境に回復する。
【００６０】
更に、ステップS206はほかの内容を含む：第二アドレスA”と第一アドレスAによるアドレスペア（又は一条レコード）がアドレス対応テーブルにビルドする。アドレスA”がある再構築命令セグメントを再構築命令プラットフォーム又は再構築命令プラットフォームがアクセスできるメモリの中に保存して重複利用できる。
【００６１】
本方法はアドレス対応テーブルを利用して計算資源を省き、ランタイム命令再構築の効率を上げる。
【００６２】
前記再構築方法は、一般的にディスパッチ待ちマシン命令セグメント中に必要なプログラム偏移命令を挿入することを利用して完成する、本発明の他の実施例中に別方式を利用して再構築命令セグメントを作成することが完成できる。後に実施例を結合して詳細に紹介する。
【００６３】
本発明の他の実施例により、命令再構築方法が提供する、単独なストレージ位置を開き第一プログラム偏移命令の宛先アドレスを保存する。図６のように、当方法S110は以下を含む：
S111、命令実行環境をキャッシュする；
S112、第一ストレージ位置から宛先アドレスを読み取る、宛先アドレスによりディスパッチ待ち（即ち実行待ち）マシン命令セグメントを獲得する；中に、ディスパッチ待ちマシン命令セグメントの最後一条命令は第一プログラム偏移命令（例えば第一ジャンプ命令）である；
S113、第一ストレージ位置に第一プログラム偏移命令の宛先アドレスを保存する；
S114、第一プログラム偏移命令を第二プログラム偏移命令に変えて、第二アドレスがある再構築命令セグメントを作成する；前述第二プログラム偏移命令は再構築命令プラットフォームに指す、即ち、第二プログラム偏移命令を実行した後、ステップS111を実行する；
S115、前述命令実行環境に回復する、第二アドレスへジャンプして実行を続ける。
【００６４】
中に、ステップS112が獲得したディスパッチ待ちマシン命令セグメントは以下を含む：
S1121、プログラム偏移命令を検索目標として前述マシン命令アドレスが指向するマシン命令及び後続命令を最初のプログラム偏移命令（第一プログラム偏移命令と呼ぶ）が発見するまで検索する；
S1122、前述第一プログラム偏移命令及び彼の前の全てディスパッチ待ちマシン命令をディスパッチ待ちマシン命令セグメントとして、命令再構築プラットフォームにまたは再構築命令プラットフォームがアクセスできる別のメモリ位置に保存する。
【００６５】
ステップS113の宛先アドレスはプログラム偏移命令の宛先アドレスパラメタとする、宛先アドレスはイミディエイト又は変数パラメタからなる、イミディエイトであれば値を保存する、変数パラメタであれば彼のアドレス/クォートを保存する。プロセッサがあるプログラム偏移命令を実行するとき、ジャンプ宛先アドレスを計算完了する。
【００６６】
本発明の他の実施例により、命令再構築方法が提供する、非固定長命令集をアセンブルと逆アセンブルする。図7のように、当方法は以下を含む：
S121、命令実行環境をキャッシュする；
S122、第一ストレージ位置から宛先アドレスを読み取る、宛先アドレスによりディスパッチ待ちのマシン命令セグメントを獲得する、このマシン命令セグメントを逆アセンブルする、逆アセンブル結果を字句アナライザに分析して中にプログラム偏移命令（例えばジャンプ命令）があるかどうかをマッチィングする、ない場合次セグメントのディスパッチ待ちマシン命令を獲得する、プログラム偏移命令をマッチィングするまで前記操作を重複する、当プログラム偏移命令は第一プログラム偏移命令となる；ディスパッチ待ちマシン命令セグメントは第一プログラム偏移命令と彼の前の全て命令からなる。
【００６７】
第一ストレージ位置は次に実行するマシン命令アドレスを保存する；
S123、第一ストレージ位置に第一プログラム偏移命令の宛先アドレスを保存する。
【００６８】
S124、第一プログラム偏移命令を第二プログラム偏移命令に変えて第二アドレスの再構築命令セグメントを作成する、前述第二プログラム偏移命令は再構築命令プラットフォームのエントリアドレスに指向する；本実施例中に、第一プログラム偏移命令と第二プログラム偏移命令はアセンブル命令である；
S125、作成した再構築アセンブルコードをアセンブラーで対応マシンコードを作成する；
S126、前述命令実行環境に回復する、第二アドレスにジャンプして実行を続ける。
【００６９】
本発明の他の実施例により、命令再構築方法が提供する、第一プログラム偏移命令をプッシュ命令に置き換え、又は、第一プログラム偏移命令をレコードする。図8のように、当方法S130は以下を含む：
S131、命令実行環境をキャッシュする；
S132、ポップ操作でオペランドを獲得する、次に実行する命令アドレスを計算する、当アドレスは第一アドレスとする；プログラム偏移命令（例えばジャンプ命令）をスタックに保存する；
S133、第一アドレスによりディスパッチ待ち/実行マシン命令セグメントを獲得する；中に、ディスパッチ待ちマシン命令セグメントの最後一条命令は第一プログラム偏移命令とする；
S134、第一プログラム偏移命令をプッシュ命令に置き換え、プッシュ命令に第一プログラム偏移命令のアドレスとパラメタをレコードする；
S135、プッシュ命令の直後に第二プログラム偏移命令を加える、第二プログラム偏移命令がある再構築命令セグメントを作成する；前述第二プログラム偏移命令は命令再構築プラットフォームのエントリアドレスへ指す；
S136、前述命令実行環境に回復する、第二アドレスにジャンプして実行を続ける。
【００７０】
本分野の普通技術人員は、前記の各実施例が提供する功能又は特徴は、実際の要求により同一の実施例に兼ね合せる、ことを理解できる。ここにその組合を一一にあげない、次に一つ例を挙げて説明する。
【００７１】
本発明の他の実施例により、命令再構築方法が提供する、図９aのように、以下を含む：
（１）命令実行環境をキャッシュする；前述命令実行環境は全てCPUレジスタを含む；ポップ操作でオペランドを獲得する、次に実行する命令のアドレス（第０アドレスと呼ぶ）を計算する、第一アドレスの値を第０アドレスに変える；中に、プログラム偏移命令のアドレスとパラメタをスタックに保存する；
（２）第一アドレスによりアドレス対応テーブル（アドレスルックアップテーブルと呼ぶ）にサーチする、サーチした場合、キャッシュした命令実行環境に回復する、検索した対応アドレス（例えばアドレス対応テーブルのアドレスペア）へジャンプして実行を続ける；
（３）見つからなければ、第一アドレスから実行待ちマシン命令セグメントを獲得する、命令セグメントの末はプログラム偏移命令（プログラム偏移命令が存在するアドレスは第三アドレスである）である。
【００７２】
（４）第一アドレスからマシンコードを逆アセンブルする、逆アセンブル結果を字句アナライザに分析して第三アドレスまでに再構築後のアセンブルコードを作成する；
（５）第三アドレスのコードを更に処理できるか、第三アドレスのプログラム偏移命令の宛先アドレスが既知数（例えばイミディエイト）とするか判断する、てきれば、第一アドレスの値を第三アドレスの宛先アドレスに設定して、ステップ（３）を再度実行する；
（６）できなければ、作成した再構築アセンブルコードの最後にプッシュ命令を加えて当前第三アドレスの元アドレス位置（第三アドレスの値）とオペランドをレコードする、プッシュ命令後には再構築プラットフォームの頭へジャンプする命令を増える、ステップ（１）はもう一度実行させる；
（７）作成した再構築アセンブル命令をアセンブラーで対応するマシンコードを作成して、再構築アドレス空間に割付けられたアドレス（第二アドレス）にストレージする、第二アドレスと第０アドレスをアドレスペアとしてアドレス対応テーブルにストレージする；
（８）環境に回復する、第二アドレスへジャンプして実行を続ける。
【００７３】
理解されやすいために、X86アーキテクチャプロセッサでこの実例を実行する方法を説明する、図９ｂ−９ｄを参考して命令再構築の一つ実施過程は以下のとおり：
（１）再構築プラットフォームを開始した後、先ず当前命令実行環境をキャッシュする；スタックが保存したプログラム偏移命令のアドレスとパラメタを獲得して次に実行する命令のアドレスを計算する、当アドレスは第０アドレスであり、第一アドレスの値は第０アドレスに設定する。
【００７４】
（２）第一アドレスによりアドレス対応テーブルにサーチする、見付ったら、キャッシュした命令実行環境に回復する、見付った対応アドレスへジャンプして実行を続ける（図９ｂ）；なければ、以下操作をする（図９ｃ）。
【００７５】
（３）−（６）第一アドレスから、マシンコードを逆アセンブルして、逆アセンブル結果を字句アナライザに分析して再構築命令を作成する；
アセンブルコードを検索してプログラム偏移命令があるか確認する；
最初のプログラム偏移命令を分析する、ジャンプ宛先アドレスは既知数かどうか判断する、既知数の場合、最初のパラメタアドレスプログラム偏移命令までにサーチ続ける、当プログラム偏移命令は第一プログラム偏移命令と呼ぶ、当命令のアドレスは第三アドレスとする；
作成したアセンブルコード（第一アドレスから第三アドレスまでのマシン命令、第一プログラム偏移命令を含まない）の末にプッシュ命令を増えて当第三アドレスの第一ジャンプ命令の元アドレス位置とオペランドをレコードする；
プッシュ命令の後に再構築プラットフォームエントリの頭にジャンプする命令（第二プログラム偏移命令）を増える；
（７）作成したアセンブルコードをアセンブラーで対応マシンコードを作成して、再構築アドレス空間に割付けたアドレス（第二アドレス）にストレージする；第二アドレスと第０アドレスをアドレスペアの形式でアドレス対応テーブルにストレージする；
（８）環境に回復する、第二アドレスへジャンプして実行を続ける。
【００７６】
（図９ｄ）プロセッサは第二アドレス命令の実行を開始する、前の再構築待ち命令セグメント中のプログラム偏移命令をプッシュ命令と再構築プラットフォームへジャンプする命令に置換える、プッシュ命令の主要目的は再構築プラットフォームに入力パラメタを提供する。（図９ｄ）第二プログラム偏移命令を実行する時に、再構築プラットフォームを再び実行して前記のステップ（１）を進行する、プッシュ命令中に保存したプログラム偏移命令のアドレスとパラメタをビューして次に実行する命令アドレスを計算する、当アドレスは第一アドレスである。
【００７７】
これからの処理は前記過程を繰り返す。
【００７８】
更に、システムが起動する直後にランタイム命令のモニターを実行して、計算デバイスの全てランタイム命令をモニターするために、本発明の他の実施例の中、コンピュータが起動する時のload命令を改修して元load命令が実行する前に本発明が提供する命令再構築プラットフォームを呼び出して、前記ランタイム命令再構築方法を実行する、load命令のジャンプアドレスは既知固定アドレスだから、命令再構築プラットフォームは事前にアドレス対応テーブルと一番目レコードをビルドできて、一番目の再構築命令セグメントをビルドできる。
【００７９】
更に、本発明の他の実施例により、コンピュータが読めるメディアを提供する、中に、前記読めるメディアにコンピュータが実行できるプログラムコードをストレージする、前述プログラムコードは前記実施例が提供するランタイム命令再構築方法のステップを実行する。
【００８０】
更に、本発明の他の実施例により、コンピュータプログラムを提供する、中に、前述コンピュータプログラムは前記実施例が提供するランタイム命令再構築方法のステップを含む。
【００８１】
データセキュリティに対する命令再構築
前記のランタイム命令再構築方法は更にアプリケーションに基礎を提供する。以下の実施例は各種のマシン命令を処理するランタイム命令再構築方法を提供する、中に、ストレージ/読取命令、I/O命令及びネット転送命令を含む：
（１）ストレージ/読取命令はコンピュータシステムが周辺ストレージデバイス（ディスクストレージデバイス、フラッシュデバイス、光記憶デバイスを含むが、これらに限定されない）にストレージ/読取命令又は命令組合である。
【００８２】
（２）I/O命令はコンピュータシステムが周辺デバイスのアドレス空間を操作する全て命令である、これらの命令は最終に周辺デバイス入力/出力ステイタス、データ、シグナルなどを影響する。周辺デバイスのアドレス空間はI/Oアドレス空間、メモリマップドI/Oデバイスのアドレス空間を含むが、これらに限定されない。
【００８３】
（３）ネットワーク伝送命令はネットワークデバイスに影響を与える全て命令である、これらの命令は最終的にネットワークデバイスの伝送、状態、データ、信号など全て関連特性に影響を与える命令に指す。
【００８４】
中に、ストレージ/リード命令とI/O命令の交点が存在してもよい。
【００８５】
本発明の一つ実施例により、ストレージ/リード命令のランタイム命令再構築方法S400を提供する、以下を含む：
S401、命令実行環境をキャッシュする；前述命令実行環境はアドレスレジスタを含む、アドレスレジスタは次に実行するマシン命令のアドレスを保存する、当アドレスは第一アドレスとする；アドレスレジスタは、例えば、プログラムカウンタPCである；
S402、前述第一アドレスを利用してアドレス対応テーブルにサーチする；
S403、対応レコードが見つかったら、前述第一アドレスAを保存された再構築命令セグメントのアドレスA’に改修する；
S404、見つからなければ、再構築命令セグメントの作成方法は以下を含む：
S4041、ディスパッチ待ちマシン命令セグメントを獲得する；中に、ディスパッチ待ちマシン命令セグメントの最後一条命令は第一プログラム偏移命令である；ステップS102と同じである；
S4042、前述ディスパッチ待ちマシン命令セグメントを逆アセンブルして、アセンブル命令セグメントを得る；
S4043、目標アセンブル命令を検索する（目標アセンブル命令を検索目標としてアセンブル命令セグメントに検索する）、前述目標アセンブル命令はストレージ/リード命令とする；
S4044、検索して前述センブル命令セグメントのストレージ/リード命令を見つかったら、ストレージ/リードアドレスをセキュリティデバイス上のアドレスへ改修する；改修方式はローカルアドレス空間とセキュリティストレージデバイスアドレス空間の直接マッピングができる；
S4045、前述第一プログラム偏移命令JP1の前に第二プログラム偏移命令JP2を挿入する、前述JP2は命令再構築プラットフォーム（命令再構築方法がランタイムで命令再構築プラットフォームと呼ぶ、又は、命令再構築方法のランタイムルーチンは再構築プラットフォームと理解する）のエントリアドレスへ指す；
S4046、改修されたアセンブル命令セグメントをアセンブルしてアドレスA”がある再構築マシン命令セグメントを作成する；
S4047、再構築マシン命令セグメントのアドレスA”と第一アドレスAは前述アドレス対応テーブル中に一条レコード（又はアドレスペア）をビルドする、アドレスA”がある再構築マシン命令セグメントを命令再構築プラットフォームに保存する；
S4048、第一アドレスAを第二アドレスA”へ改修する；
S405、前述命令実行環境に回復する。
【００８６】
本実施例は逆アセンブルの後に命令を処理することである；他実施例中は逆アセンブルとアセンブルステップを省けて、直接にマシン命令を処理できる。
【００８７】
ステップS4044の中に、ストレージ/リード命令に対する操作で、中の宛先と元アドレスを改修してストレージリロケーション/リダイレクトを実現し、データセキュリティを確保する。更に具体的なセキュリティストレージ/リード方法は本発明の以下の実施例中に紹介する。
【００８８】
本発明の一つ実施例により、I/O命令のランタイム命令再構築方法S500を提供する、以下を含む：
S501、命令実行環境をキャッシュする；前述命令実行環境はアドレスレジスタを含む、アドレスレジスタは次に実行するマシン命令のアドレスを保存する、当アドレスは第一アドレスである；
S502、前述第一アドレスを利用してアドレス対応テーブルにサーチする；
S503、対応レコードが見つかったら、前述第一アドレスAを保存された再構築命令セグメントのアドレスA’に改修する；
S504、見つからなければ、再構築命令セグメントの作成方法は以下を含む：
S5041、ディスパッチ待ちマシン命令セグメントを獲得する；中に、ディスパッチ待ちマシン命令セグメントの最後一条命令は第一プログラム偏移命令である；ステップS102と同じである；
S5042、前述ディスパッチ待ちマシン命令セグメントを逆アセンブルして、アセンブル命令セグメントを得る；
S5043、目標アセンブル命令を検索する（目標アセンブル命令を検索目標としてアセンブル命令セグメントに検索する）、前述目標アセンブル命令はI/O命令である；
S5044、検索して前述アセンブル命令セグメントにI/O命令を見付けたら、前述I/O命令中の全て入力命令を阻止する；
S5045、前述第一プログラム偏移命令JP1の前に第二プログラム偏移命令JP2を挿入する、前述JP2は命令再構築プラットフォームのエントリアドレスへ指す；
S5046、改修されたアセンブル命令セグメントをアセンブルしてアドレスA”がある再構築マシン命令セグメントを作成する；
S5047、再構築マシン命令セグメントのアドレスA”と第一アドレスAにより前述アドレス対応テーブル中に一条レコード（又はアドレスペア）をビルドする、アドレスA”がある再構築マシン命令セグメントを命令再構築プラットフォームに保存する；
S5048、第一アドレスAを第二アドレスA”へ改修する；
S505、前述命令実行環境に回復する。
【００８９】
本実施例は逆アセンブルのステップ後に命令処理をする；他実施例中には逆アセンブルとアセンブルステップを省けて、直接にマシン命令を処理できる。
【００９０】
ステップS5044中に、I/O命令に対する操作で、前述I/O命令中の全て入力命令を阻止してローカルハードウエアのライト操作を徹底に阻止する；上の一個実施例のストレージ命令実現過程を結合して、ストレージ命令以外の入力命令を阻止することを実現できる、計算デバイス中のデータセキュリティが上がれる。
【００９１】
本発明の一つ実施例により、ネット伝送命令に対するランタイム命令再構築方法S600を提供する、以下を含む：
S601、命令実行環境をキャッシュする；前述命令実行環境はアドレスレジスタを含む、アドレスレジスタは次に実行するマシン命令のアドレスを保存する、当アドレスは第一アドレスである；
S602、前述第一アドレスを利用してアドレス対応テーブルにサーチする；
S603、対応レコードが見つかったら、前述第一アドレスAを保存された再構築命令セグメントのアドレスA’に改修する；
S604、見つからなければ、再構築命令セグメントの作成方法は以下を含む：
S6041、ディスパッチ待ちマシン命令セグメントを獲得する；中に、ディスパッチ待ちマシン命令セグメントの最後一条命令は第一プログラム偏移命令とする；ステップS102と同じである；
S6042、前述ディスパッチ待ちマシン命令セグメントを逆アセンブルして、アセンブル命令セグメントを得る；
S6043、目標アセンブル命令を検索する、前述目標アセンブル命令はネット伝送命令である；
S6044、検索して前述アセンブル命令セグメントにネット伝送命令を見付けたら、前述ネット伝送命令中の宛先アドレスが対応する遠地計算デバイスはセキュリティデバイス（例えばホワイトリスト）かどうかを検査する、なければ、前述ネット伝送命令を阻止する；
S6045、前述第一プログラム偏移命令JP1の前に第二プログラム偏移命令JP2を挿入する、前述JP2は命令再構築プラットフォームのエントリアドレスへ指す；
S6046、改修されたアセンブル命令セグメントをアセンブルしてアドレスA”がある再構築マシン命令セグメントを作成する；
S6047、再構築マシン命令セグメントのアドレスA”と第一アドレスAにより前述アドレス対応テーブル中に一条レコード（又はアドレスペア）をビルドする、アドレスA”がある再構築マシン命令セグメントを命令再構築プラットフォームに保存する；
S6048、第一アドレスAを第二アドレスA”へ改修する；
S605、前述命令実行環境に回復する。
【００９２】
ステップS6044中に、ネット伝送を阻止/拒絶する命令は、再構築したコード中に一条又はマルチ命令を挿入することを利用して、本伝送命令を「当前操作を取消す命令」又は無効な命令に変えれる、ハードウエアにより定める。
【００９３】
本実施例は逆アセンブルの後に命令を処理する；他実施例中には逆アセンブルとアセンブルステップを省けて、直接にマシン命令を処理する。
【００９４】
ステップS6044中に、ネット伝送命令に対する操作で、前述ネット伝送命令中の宛先アドレスが対応する遠地計算デバイスはセキュリティデバイスかどうかを検査する；なければ、前述ネット伝送命令を阻止してデータセキュリティ伝送を実現する。
【００９５】
前記マルチ実施例中のアドレス対応テーブルは命令再構築プラットフォームにビルドされてメインテナンスされる、固定長のアレイストラクチャ、又は、可変長のリンクリストストラクチャができる、更に、ほかの適当な二値データのストラクチャもできる。本発明の一つ実施例により、テーブル長さが調整でき、テーブルが占用する空間をリリースできる。アドレス対応テーブルのリリース操作はランダムに又は周期にできる。本発明の一つ実施例により、アドレス対応テーブルはレコード作成時間エレメントを含める、レコード削除で空間をリリースする時、作成時間の長さによりレコードを削除する。本発明の一つ実施例により、アドレス対応テーブルはレコード使用回数エレメントを含める、アドレス対応テーブルにサーチするステップ中に、見つかったら当エレメント値を改変する；前述使用回数エレメントは、レコード削除で空間をリリースする時、使用回数によりレコードを削除することに適用される。
【００９６】
別に、本分野の技術人員は、前記命令再構築方法（即ちランタイム命令再構築方法）はハードウエア又はソフトウエアで実現できる、ことを理解できる：
（１）ソフトウエアで実現すれば、前記方法が対応するステップはソフトウエアコードの形式でコンピュータが読めるメディアに記入して、ソフトウエアプロダクトとなる。
【００９７】
（２）ハードウエアで実現すれば、前記方法が対応するステップはハードウエアコード（例えばVerilog）で記述する、ファームウエア化（物理設計/レイアウト/ファブフローシートなど過程を経過する）でチップ製品（例えばプロセッサ製品）を作成する。次に詳細に紹介する。
【００９８】
命令再構築装置
本発明の一つ実施例により、前記ランタイム命令再構築方法S100と対応するランタイム命令再構築装置を提供する。図10のように命令再構築装置５００は以下を含む：
命令実行環境キャッシュと回復ユニット５０１は、命令実行環境をキャッシュと回復することに適用する；前述命令実行環境は、アドレスレジスタを含む、当アドレスレジスタ（例えばプログラムカウンタPC）は次に実行するマシン命令のアドレスを保存する、当アドレスは第一アドレスである；
命令フェッチユニット５０２は、ユニット５０１が命令実行環境をキャッシュした後に、ディスパッチ待ちマシン命令セグメントを獲得する；中に、ディスパッチ待ちマシン命令セグメントの最後一条命令は第一プログラム偏移命令（例えば第一ジャンプ命令）である；
命令再構築ユニット５０３は、前述ディスパッチ待ちマシン命令セグメントを解析、改修することに適用する、第一プログラム偏移命令の前に第二プログラム偏移命令を挿入して、第二アドレスA”がある命令再構築命令セグメントを作成する；前述第二プログラム偏移命令が装置５００へ指す、即ち当該第二プログラム偏移命令を実行した後、装置５００の命令実行環境キャッシュと回復ユニット５０１は次回処理を始める；及び
アドレス置換えユニット５０４は、前述キャッシュされた命令実行環境のアドレスレジスタの値を再構築命令セグメントのアドレスに改修することに適用する。
【００９９】
前述命令実行環境キャッシュと回復ユニット５０１は別々に命令フェッチユニット５０２及びアドレス置換えユニット５０４とカプリィング接合する、前述命令フェッチユニット５０２、命令再構築ユニット５０３とアドレス置換えユニット５０４は順番にカプリィング接合する。
【０１００】
装置５００の実行過程は以下の通り：
先ず、命令実行環境キャッシュと回復ユニット５０１は命令実行環境をキャッシュする、例えば、キャッシュスタックに命令実行関連するレジスタデータをプッシュする；
次に、前述命令フェッチユニット５０２はCPUアドレスレジスタ５１１からディスパッチ待ちマシン命令アドレスを読み取る、前述マシン命令アドレスからマシン命令セグメントをリードする、前述マシン命令セグメントの最後一条命令はプログラム偏移命令である；
例えば、命令フェッチユニット５０２は、CPUアドレスレジスタ５１１からディスパッチ待ちマシン命令アドレスを読み取る；プログラム偏移命令を検索目標として、一番目のプログラム偏移命令（即ち、コントロール遷移命令であり、無条件偏移命令と条件偏移命令を含む）を発見するまでに、前述マシン命令アドレスが対応するマシン命令を検索する；前述プログラム偏移命令は例えるJump/JMP命令、Call命令、RET命令などを含む；前述一番目のプログラム偏移命令及び彼の前の全てマシン命令をディスパッチ待ちマシン命令セグメントとする；当マシン命令セグメントは、装置５００に又は装置５００が読み取るストレージ位置に保存する；
次に、命令再構築ユニット５０３は、獲得したマシン命令セグメントの最後一条命令前に第二プログラム偏移命令を挿入する、第二プログラム偏移命令は装置５００のエントリアドレスに指す、アドレスA”が有る再構築命令セグメントを作成する；
次に、アドレス置換えユニット５０４は、キャッシュされた命令実行環境中のアドレスレジスタの値AをアドレスA”に改修する；
最後に、命令実行環境キャッシュと回復ユニット５０１は前述命令実行環境に回復する、例えば、キャッシュスタックから命令実行が関連するレジスタデータをポップする。
【０１０１】
前記ランタイム命令再構築方法S300と対応して、前述命令フェッチユニット５０２は、一番目の非定数アドレスのプログラム偏移命令を第一プログラム偏移命令とさせて、再構築装置の実行効率を上げる。
【０１０２】
前記ランタイム命令再構築方法S200と対応して、本発明の他の実施例により、ランタイム命令再構築装置を提供する、ランタイム命令重複性を十分に利用できて効率をあげ、計算資源を省く。
【０１０３】
図１１のように、命令再構築装置６００は以下を含む：
命令実行環境キャッシュと回復ユニット６０１は、命令実行環境をキャッシュと回復することに適用する；前述命令実行環境はアドレスレジスタを含む、当アドレスレジスタは次に実行するマシン命令のアドレスを保存する、当アドレスは第一アドレスである；
命令フェッチユニット６０２は、ディスパッチ待ちマシン命令セグメントを獲得することに適用する；中に、ディスパッチ待ちマシン命令セグメントの最後一条命令は第一プログラム偏移命令である；
命令再構築ユニット６０３は、前述ディスパッチ待ちマシン命令セグメントを解析と改修することに適用する、以下を含む：第一プログラム偏移命令の前に第二プログラム偏移命令を挿入し、第二アドレスA”がある命令再構築セグメントを作成する；前述第二プログラム偏移命令が装置６００へ指す、即ち、第二プログラム偏移命令を実行した後に、装置６００の命令実行環境キャッシュと回復ユニット６０１は次回処理を進行する；
アドレス置換えユニット６０４は、前述キャッシュされた命令実行環境のアドレスレジスタの値を再構築命令セグメントのアドレスに改修することに適用する。
【０１０４】
命令検索ユニット６０５は、前述第一アドレスを利用してアドレス対応テーブルにサーチすることに適用する；前述アドレス対応テーブルは、第一アドレスAが指すディスパッチ待ち命令セグメントに保存された再構築命令セグメントが有るかどうかを示す、アドレス対応テーブルのデータは、例えば、アドレスペアである；
対応レコードが見つかったら、命令検索ユニット６０５はアドレス置換えユニット６０４をコールして、前述第一アドレスA（アドレスレジスタの値A）を保存された再構築命令セグメントのアドレスA’に改修することに適用する；見つからなければ、命令検索ユニットは、第二アドレスA”とアドレスAを利用してアドレス対応テーブルに一条レコードを作成することに適用する。
【０１０５】
前述命令実行環境キャッシュと回復ユニット６０１は別々に命令検索ユニット６０５及びアドレス置換えユニット６０４とカプリィング接合する、前述命令検索ユニット６０５は別々に命令フェッチユニット６０２、命令再構築ユニット６０３及びアドレス置換えユニット６０４とカプリィング接合する、前述命令フェッチユニット６０２、命令再構築ユニット６０３とアドレス置換えユニット６０４は順番にカプリィング接合する。
【０１０６】
装置６００の実行過程は以下のように：
先ず、命令実行環境キャッシュと回復ユニット６０１は、命令実行環境をキャッシュする、例えば、キャッシュスタックに命令実行が関連するレジスタデータをプッシュする；
次に、命令検索ユニット６０５は、キャッシュされた命令実行環境中のアドレスレジスタ値Aを利用して、アドレス対応テーブルにサーチする；
対応レコードが見つかったら、命令検索ユニット６０５はアドレス置換えユニット６０４をコールする、置換えユニット６０４は前述アドレスレジスタの値AをアドレスA’に改修する；アドレス置換えユニット６０４は命令実行環境キャッシュと回復ユニット６０１をコールして、前述命令実行環境に回復する、即ち、キャッシュスタックに命令実行が関連するレジスタデータをポップする、今回の再構築操作が終わる；
対応レコードが見つからなければ、、前述命令フェッチユニット６０２は、CPUアドレスレジスタにディスパッチ待ち命令アドレスを獲得して前述マシン命令アドレスにマシン命令セグメントを読み取る、前述マシン命令セグメントの最後一条命令はプログラム偏移命令である。具体的に、命令フェッチユニット６０２はCPUアドレスレジスタにディスパッチ待ち命令アドレスを読み取る；プログラム偏移命令を検索目標として、一番目のプログラム偏移命令を発見するまでに、前述マシン命令アドレスが対応するマシン命令を検索する；前述プログラム偏移命令はJump命令とCall命令などを含む；前述一番目のプログラム偏移命令と彼の前の全てマシン命令は一つのディスパッチ待ちマシン命令セグメントとする；当マシン命令セグメントは装置６００に、又は装置６００がアクセスできるストレージ位置に保存する；
次に、命令再構築ユニット６０３は、前述マシン命令セグメントの最後一条命令の前に第二プログラム偏移命令を挿入する、前述第二プログラム偏移命令は装置６００のエントリアドレスへ指す、アドレスA”が有る再構築命令セグメントを作成する；
次に、命令再構築ユニット６０３は、命令検索ユニット６０５にアドレスA”を送信する、命令検索ユニット６０５はアドレスA”とアドレスAを利用して、後続命令が重複使えるために、アドレス対応テーブルに一条レコードを作成する；
次に、アドレス置換えユニット６０４は、キャッシュされた命令実行環境中のアドレスレジスタ値AをアドレスA”に改修する；
最後、命令実行環境キャッシュと回復ユニット６０１は前述命令実行環境に回復する、即ち、キャッシュスタックに命令実行が関連するレジスタデータをポップする。
【０１０７】
図11を参照続けて、中に、命令再構築ユニット６０３は、別ユニットを含める：
命令解析ユニット６０３１は、命令集合を利用して前述マシン命令セグメントをマッチィングすることに適用する、処理待ち目標マシン命令（目標命令を利用してディスパッチ待ちマシン命令セグメントを検索する）を得る；前述命令集合はX86,MIPSとARM命令集合が有る；
命令改修ユニット６０３２は、予定の方式により前述目標マシン命令を改修することに適用する。
【０１０８】
例えば、前述目標命令はストレージ/リード命令であれば、前述命令解析ユニット６０３１は、ディスパッチ待ちマシン命令セグメントにストレージ/リード命令を獲得することを担当する、前述命令改修ユニット６０３２は中のストレージ/リードアドレスをセキュリティストレージデバイスのアドレスに改修する。前記実施例４００の作用と効果は同じだから、余計なことを述べない。
【０１０９】
又は、例えば、前述目標命令はI/O命令の場合、前述命令解析ユニット６０３１は、ディスパッチ待ちマシン命令セグメントにI/O命令を獲得することを担当する、前述命令改修ユニット６０３２は中のI/O命令を全て阻止する。前記実施例５００の作用と効果は同じだから、余計なことを述べない。
【０１１０】
又は、例えば、前述目標命令はネット伝送命令の場合、前述命令解析ユニット６０３１は、ディスパッチ待ちマシン命令セグメントにネット伝送命令を獲得することを担当する、前述命令改修ユニット６０３２は、前述ネット伝送命令中の宛先アドレスが対応する遠地計算デバイスにセキュリティアドレスが有るかどうかを検査する；なければ、前述命令改修ユニットは、前述ネット伝送命令を阻止することに適用する。前記実施例６００の作用と効果は同じだから、余計なことを述べない。
【０１１１】
本発明の他の実施例により、前記命令再構築ユニットは、逆アセンブルユニットとアセンブルユニットを含むことができる。図１２のように、命令再構築ユニット７０３は、順番にカプリィング接合する逆アセンブルユニット７０３１、命令解析ユニット７０３２、命令改修ユニット７０３３とアセンブルユニット７０３４を含む。
【０１１２】
逆アセンブルユニット７０３１は、前述ディスパッチ待ちマシン命令セグメントを解析と改修する前に、前述ディスパッチ待ちマシン命令セグメントを逆アセンブルする、ディスパッチ待ちマシン命令セグメントを作成して命令解析ユニット７０３２へ送信することに適用する。
【０１１３】
アセンブルユニット７０３４は、前述ディスパッチ待ちマシン命令セグメントを解析と改修する後に、再構築のアセンブル命令セグメントをアセンブルして、マシンコードが表示する再構築命令セグメントを得る、命令置換えユニットへ転送することに適用する。
【０１１４】
この実施例中に、前述命令解析ユニット７０３２と命令改修ユニット７０３３はディスパッチ待ちマシン命令セグメントを操作するようである、操作方法は前記実施例と同じだから、余計なことを述べない。
【０１１５】
前記ランタイム命令再構築方法S110と対応して、本発明の他の実施例により、ランタイム命令再構築装置を提供する。図13のように、命令再構築装置８００は以下を含む：
命令実行環境キャッシュと回復ユニット８０１は、命令実行環境をキャッシュと回復することに適用する；
命令フェッチユニット８０２と第一ストレージ位置８０３であり、中に、命令フェッチユニット８０２は、第一ストレージ位置８０３から宛先アドレスを読み取り、宛先アドレスによりディスパッチ/実行待ちマシン命令セグメントを獲得することに適用する；中に、ディスパッチ待ちマシン命令セグメントの最後一条命令は第一プログラム偏移命令とする；及び
命令再構築ユニット８０４は、第一ストレージ位置８０３に第一プログラム偏移命令の宛先アドレスを保存する、第一プログラム偏移命令を第二プログラム偏移命令に置換え、第二アドレスが有る再構築命令セグメントを作成する、ことに適する；前述第二プログラム偏移命令が装置８００のエントリアドレスへ指す。
【０１１６】
中に、命令実行環境キャッシュと回復ユニット８０１は、命令再構築ユニット８０４の置換え命令の後に、前述命令実行環境に回復して第二アドレスへジャンプして実行を続けることに適用する。
【０１１７】
装置８００の実行過程は以下のとおり：
先ず、命令実行環境キャッシュと回復ユニット８０１は命令実行環境をキャッシュする；
次に、命令フェッチユニット８０２は第一ストレージ位置８０３に宛先アドレス（ディスパッチ待ち命令アドレス）を読み取る、宛先アドレスによりディスパッチ待ち命令セグメントを獲得する；中に、ディスパッチ待ち命令セグメントの最後一条命令は第一プログラム偏移命令である；
次に、命令再構築ユニット８０４は第一ストレージ位置８０３に第一プログラム偏移命令の宛先アドレスを保存する：（１）イミディエイトの場合、値を保存する、（２）変数パラメタの場合、アドレス/レファレンスを保存する、例えば、floatタイプ変数destination_addressのアドレス又はレファレンスを保存する；
次に、命令再構築ユニット８０４は第一プログラム偏移命令を第二プログラム偏移命令に置き換えて、第二アドレスが有る再構築命令セグメントを作成する；
最後に、命令実行環境キャッシュと回復ユニット８０１は命令実行環境に回復する、第二アドレスへジャンプして実行を続ける。
【０１１８】
本発明の他の実施例により、ランタイム命令再構築装置を提供する、前記方法S130と対応して、前記一部実施例が提供する装置の特徴を含む。図1４のように、装置９００は以下を含む：
命令実行環境キャッシュと回復ユニット９０１は、命令実行環境をキャッシュと回復することに適用する；
命令フェッチユニット９０２は、ポップ操作でオペランドを獲得する、オペランドを利用して次に実行する命令のアドレスを計算する、当アドレスは第一アドレスである、ことに適用する；
第一アドレスによりディスパッチ/実行待ち命令セグメントを獲得することに適用する、中に、ディスパッチ待ち命令セグメントの最後一条命令は第一プログラム偏移命令である。
【０１１９】
命令再構築ユニット９０３は、第一プログラム偏移命令をプッシュ命令に置換えて、プッシュ命令中に第一プログラム偏移命令のアドレスとオペランドをレコードする、ことに適用する；
プッシュ命令後に第二プログラム偏移命令を加える、第二アドレスが有る再構築命令セグメントを作成する、ことに適用する；前述第二プログラム偏移命令が装置９００のエントリアドレスへ指す；
なお、再構築命令セグメントの第二アドレスと第一アドレスによりアドレス対応テーブルに一条レコードを作成することに適用する；
命令検索ユニット９０４は、前述第一アドレスによりアドレス対応テーブルにサーチすることに適用する；前述アドレス対応テーブルは、第一アドレスが指すディスパッチ待ち命令セグメントは保存された命令再構築セグメントが有るかに適用する。アドレス対応テーブルのデータはアドレスペアである；
対応レコードが見つかったら、命令検索ユニット９０４は命令実行環境キャッシュと回復ユニット９０１をコールして、キャッシュされた命令実行環境に回復する、見つかった対応アドレスへジャンプして実行を続ける（今回の再構築操作が終了）、ことに適用する；
対応レコードが見つからなければ、命令再構築ユニット９０３をコールして再構築操作をする。
【０１２０】
中に、命令再構築ユニット９０３は、逆アセンブルユニット９０３１、命令解析ユニット９０３２、命令改修ユニット９０３３とアセンブルユニット９０３４を含める。
【０１２１】
中に、再構築を終了する後に、命令再構築ユニット９０３は、命令実行環境キャッシュと回復ユニット９０１をコールして、キャッシュされた命令実行環境に回復する、再構築命令セグメントアドレスへジャンプして実行を続ける（今回の再構築操作が終了）、ことに適用する。
【０１２２】
本発明の他の実施例により、前記逆アセンブルユニット９０３１は、命令フェッチユニット９０２中に含まれできて、ディスパッチ待ち命令セグメントを獲得する時に、逆アセンブル操作をする。
【０１２３】
本分野の技術人員は、前記装置実施例の図面中のデータフローアローは、前記実施例中の具体的な操作フローを解釈するために使用される、これらの各ユニット間のデータフローに限られない、ことを理解できる、装置中の各ユニットの間はカプリィング接合関係である。
【０１２４】
上にいくつかの実施例を利用して詳細にランタイム命令再構築方法と装置を紹介したが、既存技術と比べて以下の長所が有る：
命令再構築方法を利用して命令の実行状態の時、計算デバイスの命令をモニターできる；
アドレス対応テーブルを利用して命令再構築効率を上げて、計算資源を省く；
ストレージとリード命令に対する操作は、中の目標と元アドレスを改修して、ストレージリローケイション/リダイレクトを実現する、データセキュリティを確保する；
I/O命令に対する操作は、徹底にローカルハードウエアのライト操作を阻止するために、前述I/O命令の入力命令を全て阻止する；ストレージ命令以外の入力命令を阻止することを実現できて、計算デバイス中のデータセキュリティを上げれる。
【０１２５】
ネット伝送命令に対する操作は、前述ネット伝送命令中の宛先アドレスが対応する遠地計算デバイスにセキュリティアドレスが有るかどうかを検査する；なければ、データがセキュリティ伝送するために、前述ネット伝送命令を阻止する。
【０１２６】
データセキュリティアクセス過程
図１５は本発明の一つ実施例中の計算デバイスのシステム階層見取り図。
【０１２７】
中に、計算デバイス（例えばコンピュータターミナルシステム）２００は、ユーザインタフェイスレイヤー２０１、アプリレイヤー２０２、OSカーネルレイヤー２０３、ハードウエアマッピングレイヤー２０４、セキュリティレイヤー２０５、及びハードウエアレイヤー２０６を含む。
【０１２８】
中に、ハードウエアレイヤー２０６は更にCPU２０６１、ハードディスク２０６２（ローカルストレージデバイス）及びネットカード２０６３を含む。
【０１２９】
別に、計算デバイス２００とストレージデバイス１０（又はセキュリティストレージデバイスと呼ぶ）はカプリィング接合する。
【０１３０】
本実施例中に、ストレージデバイス１０は遠地ディスクアレーとする、ネットワークを利用してハードウエアレイヤー２０６のネットカード２０６３を接続して計算デバイス２００とデータを交換する。本発明の他の実施例中に、ストレージデバイス１０は他の既知又は未知類型のストレージデバイスができる。
【０１３１】
中に、ハードディスク２０６２は他類型のローカルストレージデバイス、例えばUディスクとオプチカッルディスクなどになれる、ここに例として説明するが、限定する目的を持たない。
【０１３２】
前記階層結構を総合して、本実施例はデータセキュリティアクセス過程を提供する、以下を含む：
S1000、初期化；
S2000、データライト；及び
S2000、データリード。
【０１３３】
図１６を参照して、本発明の一つ実施例により、前記の初期化過程S1000は以下を含む：
S1010、コンピュータターミナルシステム２００とセキュリティストレージデバイス１０の通信をビルドする；
S1020、セキュリティストレージデバイス１０から当前コンピュータターミナルシステム２００に一つマッピングビットマップを同期する、例えば、コンピュータターミナルシステム２００のメモリに保存する；前述マッピングビットマップはローカルストレージデバイスがセキュリティストレージデバイスにデータをダンプしたかどうかを示す；
S1030、ステップS1020の同期が失敗すれば、セキュリティストレージデバイス１０にビットマップをビルドして初期化する、そしてコンピュータターミナルシステム２００に同期する。
【０１３４】
中に、コンピュータターミナル２００上のビットマップとストレージデバイス１０のビットマップを区分するために、下文に特に説明がなければ、コンピュータターミナルシステム２００上のビットマップは第一マッピングビットマップと呼ぶ、セキュリティストレージデバイス１０上のビットマップは第二マッピングビットマップと呼ぶ（ステップS1030は、先に第二マッピングビットマップをビルドして初期化する、次にコンピュータターミナルシステム２００に同期して第一マッピングビットマップとして保存する）。
【０１３５】
中に、ステップS1020は、ストレージデバイス１０からコンピュータターミナルシステム２００に第二マッピングビットマップを同期する操作が失敗すれば、ストレージデバイス１０とコンピュータターミナルシステム２００の接続は最初の接続と認定する。
【０１３６】
中に、ステップS1030は、コンピュータターミナルシステム２００のローカルストレージ空間をストレージデバイス１０へマッピングする、マッピング方法/関係は１セクター（又は他のストレージ基本単位）を単位に一一マッピングして、マッピングビットマップをビルドする、ことを含む。本発明の他の実施例中に、他の基本ボリュームを単位としてローカルストレージ空間からストレージデバイス１０までのビットマップをビルドする。次に図面を結合してビットマップに対する詳細説明をする。
【０１３７】
図17は本発明の一つ実施例中のビットマップ見取り図である。ローカルストレージデバイス（例えば図１５のハードディスク２０６２）上のストレージメディア３０００と、ネットワークでローカルストレージデバイスに接続したストレージデバイス１０上のストレージメディア４０００が、図面に有る。
【０１３８】
（１）ビットマップをビルドする過程は以下のとおり：
ストレージメディア４０００中にストレージメディア３０００と同じサイズのストレージ空間４０１０を一一マッピング空間としてビルドする。ストレージ空間４０１０にビットマップ４０２０を保存する、ビットマップ４０２０は一つビットマップである、１ビットは１セクタを示す、１ビットデータ（０又は１）はストレージメディア３０００に有るセクタがすでにストレージメディア４０００中のストレージ空間４０１０にダンプすることをマーク/指示する、それでビットマップもダンプテーブルと呼ぶ。ストレージデバイス１０のビットマップ４０２０をビルド終了したらコンピュータターミナルシステム２００に同期する。
【０１３９】
（２）ビットマップを更新する過程は以下のとおり：
例えば、ビットマップ４０２０に、ダンプされたセクタに１をマークし、未ダンプのセクタがマークしない；他実施例中、ダンプセクトと非ダンプセクトが使用するマークが自由に選択できる。アプリ又はOSはデータ（例えばファイル）を保存する時に、OS内部のファイルシステムは、ローカルストレージデバイスのストレージメディア３０００に幾つかストレージ空間（例えばセクタ３０４０とセクタ３０５０）を開き、当ファイルに割付けて使用される、そして、ローカルファイル割付テーブルを改変する。ファイルをダンプする（セクタ３０４０とセクタ３０５０へ記入するデータはストレージデバイス１０にダンプされる）時、ストレージメディア４０００上の同位置にセクタ４０４０とセクタ４０５０を割付けて中にダンプデータを保存する、ビットマップ４０２０のセクタ３０４０とセクタ３０５０が対応するビットデータを１にする。
【０１４０】
図１５を結合して本発明の一つ実施例により、前記のデータライト過程S2000は更に以下を含む：
S2010、アプリレイヤー２０２はOSカーネルレイヤー２０３のファイルシステムを通過してファイルライト操作請求を送信する、又はOSカーネル２０３は直接にファイルライト操作請求を送信する；或いは
アプリレイヤー２０２は直接にハードウエアマッピングレイヤー２０４にデータライト操作請求を送信する、又はOSカーネルレイヤー２０３はハードウエアマッピングレイヤー２０４にデータライト操作請求を直接に送信する；
S2020、OSカーネルレイヤー２０３はファイルライト請求をハードウエアポート命令（ハードウエア命令）に解析してハードウエアマッピングレイヤー２０４に下がる、ポート命令はライト位置（例えばセクタ）を含む；
注意が払うことが有る、ステップ２０１０はハードウエアマッピングレイヤー２０４にデータライト操作請求を直接に送信すれば、当請求はすでにハードウエアポート命令となる；
S2030、セキュリティレイヤー２０５はハードウエアマッピングレイヤー２０４からハードウエアポート命令を受信する、ポート命令のライト位置（セクタ）をストレージデバイス１０の対応ストレージアドレスへ改修する、次に、第一マッピングビットマップを更新する、例えば、前述セクタが対応するビットデータを１にして当セクタはダンプされたことを示す；セキュリティレイヤー２０５は改修後のポート命令をハードウエアレイヤーへ送信する。
【０１４１】
ライト操作が終了する後、コンピュータターミナルシステム２００にライトされたデータを保存しない、対応データはすでにセキュリティストレージデバイス１０にリダイレクトされてダンプされる。
【０１４２】
注意が払うことが有る、ローカルハードディスクにライト命令はネットハードディスクのライト命令と違えば、アドレスを改修するだけでなく、ストレージ命令も改修する必要である。
【０１４３】
本発明の他の実施例により、ライト操作S2000は尚以下を含める：
S2040、第一マッピングビットマップをストレージデバイス１０に同期して第二マッピングビットマップとして保存する、コンピュータターミナルシステム２００の第一マッピングビットマップとストレージデバイスの第二マッピングビットマップはリアルタイムで一致する。
【０１４４】
本発明の他の実施例により、システム資源を省くためにS2040はローカルコンピュータターミナルシステム２００をシャットダウンする前に統一的に一回に実行できる。
【０１４５】
図１５を結合して本発明の一つ実施例により、前記のデータリード過程S3000は更に以下を含む：
S3010、コンピュータターミナルシステム２００にストレージデバイス１０の第二マッピングビットマップを同期して第一マッピングビットマップとして保存する；
S3020、アプリレイヤー２０２はOSカーネルレイヤー２０３のファイルシステムを経過してファイルリード操作を送信する、又はOSカーネル２０３は直接にファイルリード操作請求を送信する；或いは
アプリレイヤー２０２は直接にハードウエアマッピングレイヤー２０４にデータリード操作請求を送信する、又はOSカーネルレイヤー２０３は直接にハードウエアマッピングレイヤー２０４にデータリード操作請求を送信する；
S3030、OSカーネルレイヤー２０３はファイルリード請求をハードウエアポート命令に解析してハードウエアマッピングレイヤー２０４に下がる、ポート命令はライトアドレス（例えばセクタ）を含む；
S3040、セキュリティレイヤー２０５はハードウエアマッピングレイヤー２０４からデータリード命令を受信して、リードアドレス（元アドレス）を獲得する、第一マッピングビットマップにサーチして第一マッピングビットマップのビットデータはリードアドレスがダンプアドレス（データダンプされたアドレス）であることを示せば、セキュリティレイヤー２０５はポート命令のリードアドレスをストレージデバイス１０の対応アドレスへ改修する；セキュリティレイヤー２０５は改修後のポート命令をハードウエアレイヤー２０６へ送信する。
【０１４６】
本実施例の長所が、前記リード過程はユーザの既存操作モードを影響しなく、セキュリティストレージデバイス（ストレージデバイス１０）にダンプされたデータをリードする操作を実現した。
【０１４７】
ステップS3010中、コンピュータターミナルシステム２００が起動する後、ローカルデータとセキュリティストレージデバイスのデータの一致性を保持するために、ストレージデバイス１０から第二マッピングビットマップをローカルへ同期する。
【０１４８】
本分野の技術者は、前記データのライト、リード過程及び初期化過程には、実際の需要により必要なステップを実行できる、ことを理解できる。
【０１４９】
データセキュリティアクセス方法
前記データのライト、リード過程により、次に本発明が提供するデータセキュリティストレージとリード方法を詳細に説明する。
【０１５０】
本分野の技術者は、上に図１５を結合してデータのストレージ、リード過程は理解されるために説明するが、これらに限定されない、ことを理解できる；本発明の他の実施例中に、計算デバイスの適当なレイヤーに以上説明された各ステップが実行できる。
【０１５１】
本発明の一つ実施例により、データセキュリティストレージ方法を提供する；図１８のとおり、当方法は以下ステップを含む：
S4010、ハードウエア命令を受信する；
S4020、当ハードウエア命令はストレージ命令かどうかを判断する；
S4030、ハードウエア命令はストレージ命令であれば、ストレージ命令の宛先アドレスをセキュリティストレージデバイス上の対応ストレージアドレスに改修する；
S4040、改修後のストレージ命令をハードウエアレイヤーへ送信する。
【０１５２】
本発明の一つ実施例により、ステップS4010に前述ハードウエア命令はハードウエアマッピングレイヤーから送信されたハードウエア命令である。ハードウエアマッピングレイヤーからハードウエア命令を受信することは、CPU等プロセッサに送信する全てのハードウエア命令（ポート命令）を百パーセントにフィルタできる。
【０１５３】
コンピュータはWindows OSを実行できる、Windows OS中のハードウエアアブストラクトレイヤーHALは図１５のハードウエアマッピングレイヤー２０４である。他の実施例中に、コンピュータターミナルは別のOS、例えばLinux（登録商標）、Unix又はエムべデッドOSなどを実行できる、ハードウエアマッピングレイヤーはLinux（登録商標）、Unix又はエムべデッドOSの対応レイヤーである。
【０１５４】
ステップS4010中に、前記ランタイム命令再構築方法を結合して、ハードウエア命令の受信過程は、ランタイム命令再構築方法（例えばS101-S105）を利用してハードウエア命令を獲得することを含む。別に言えば、ランタイム命令再構築方法でマシン命令を獲得する時、ストレージ命令を処理（類似な方法はS404,S405,S406などを例える）する。ランタイム命令再構築方法で最終計算結果をセキュリティストレージデバイスへリローケイションしてストレージするだけでなく、計算された中間プロシージャー（OSが作成した中間プロシージャーを含む）を全てセキュリティストレージデバイスへリローケイションしてストレージする；こんな方式でコンピュータターミナルは不完璧となる、さらにコンピュータターミナルの不完璧性を利用して情報リークを防ぐ目的を達成する。
【０１５５】
別に、ステップS4010とS4020の中にハードウエアア命令はX86命令、ARM命令、MIPS命令などがある、ターミナル計算デバイスの内に分析機能を設定して不同類型のCPU命令を処理できる。
【０１５６】
本発明の他の実施例により、ステップS4030の後に、以下を含める：
S4050、第一マッピングビットマップを更新して、宛先アドレス（セクタ）が第一マッピングビットマップに対応するビットをダンプフラッグ（例えば「１」）に設定する；すでに更新されたマッピングビットマップを前述セキュリティストレージデバイスへ同期して第二マッピングビットマップとして保存する。
【０１５７】
本実施例中に、ダンプ操作は上層アプリ及びユーザに対して完全に透明となって、既存のコンピュータ操作とアプリシステムのワークフローに影響がない。
【０１５８】
本実施例が提供する方法はコンピュータターミナルシステムに適用するだけでなく、アプリレイヤー、OSカーネルレイヤー、ハードウエアレイヤーを含む任意の計算デバイスとインテリジェントターミナルに適用する、リアルタイムで命令レベルのストレージリローケイション/リダイレクト（ハードウエアストレージ命令に基づくストレージリローケイション/リダイレクト）を実現できる。
【０１５９】
本発明の一つ実施例により、データセキュリティリード方法を提供する；図１９を参照して、当方法S5000は以下を含む：
S5010、ハードウエア命令を受信する；
S5020、当ハードウエア命令はリード命令がどうかを判断する；
S5030、ハードウエア命令がリード命令であれば、リード命令の元アドレス（リードアドレス）を獲得する、第一マッピングビットマップにより、リード命令のリードアドレスを改修して、ダンプデータと非ダンプデータのリードを実現する；及び
S5040、改修後のハードウエア命令をハードウエアレイヤーへ送信する。
【０１６０】
本発明の他の実施例により、ステップS5010の前に、当方法は以下を含める：
ストレージデバイスの第二マッピングビットマップをコンピュータターミナルシステム２００に同期して第一マッピングビットマップとして保存する。
【０１６１】
本発明の他の実施例により、ステップS5010中に、前述ハードウエア命令はハードウエアマッピングレイヤーから来る。
【０１６２】
本発明の他の実施例により、ステップS5010中に、ランタイム命令再構築方法を結合してハードウエア命令の受信過程は、ランタイム命令再構築方法（例えばS101-S105）でハードウエア命令を獲得することを含む。ちなみに、ランタイム命令再構築方法がマシン命令を取る時、リード命令を処理できる。
【０１６３】
本発明の他の実施例により、ステップS5020中に、ハードウエア命令がリード命令ではなければ、ハードウエア命令を直接にハードウエアレイヤーへ送信して実行する。
【０１６４】
本発明の他の実施例により、ステップS5030は更に以下の処理に分ける：
S5031、リード命令であれば、リード命令の元アドレスを取って、前述元アドレスはストレージデバイスのアドレスかどうかを判断する；
S5032、前述元アドレスはストレージデバイスのアドレスではなければ、第一マッピングビットマップにサーチしてマッピングビットマップのデータによりリード命令のリードアドレスを改修する。
【０１６５】
即ち、ステップS5031中に、当リード命令の元アドレスはストレージアドレスであれば、計算デバイス（例えば図15のセキュリティレイヤー２０５）は再度第一マッピングビットマップにサーチする必要がない、直接にハードウエア命令をハードウエアレイヤーへ送信して実行する。
【０１６６】
本発明の他の実施例により、ネット資源を節約するために、本発明の一部実施例中に、セキュリティデバイス10はマルチターミナルシステムの共有資源として担当できる。
【０１６７】
上に何回もデータセキュリティストレージとリード方法を命令再構築方と結合することを言及する、理解され易いために実施例によって詳細に紹介する。
【０１６８】
本発明の一つ実施例により、データセキュリティアクセス方法を提供する；図２０の通り、当方法S6000は以下を含む：
S6010、命令実行環境をキャッシュする；
S6011、第一ストレージアドレスから宛先アドレスをリードする、宛先アドレスにより、ディスパッチ/実行待ちマシン命令セグメントを獲得する；中に、ディスパッチ待ちマシン命令セグメントの最後一条命令は第一プログラム偏移命令（第一ジャンプ命令）である；
S6012、第一ストレージアドレスに第一プログラム偏移命令の宛先アドレスを保存する；
S6013、全てディスパッチ待ちマシン命令を順番に分析してアクセス命令かどうかを判断する；
S6014、アクセス命令（ストレージ命令とリード命令）であれば：
ストレージ命令に対して、ストレージ命令の宛先アドレスを対応ストレージデバイス（セキュリティストレージデバイス）のストレージアドレスに改修する、そして第一マッピングビットマップを改修する；
リード命令に対して、リード命令の元アドレスを取って、第一マッピングビットマップにサーチする、マッピングビットマップのデータを利用してリード命令のリードアドレスを改修する；
ローカルディスクライト命令とネットディスクライト命令が違えば、又はローカルディスクリード命令とネットディスクリード命令が違えば、アドレスを改修するだけでなく、対応のストレージ命令とリード命令を改修する必要が有る；
S6015、第一プログラム偏移命令を第二プログラム偏移命令に改修して第二アドレスが有る再構築命令セグメントを作成する；前述第二プログラム偏移命令が命令再構築プラットフォームのエントリアドレスへ指す；
S6016、前述命令実行環境に回復する；第二アドレスへジャンプして実行を続ける。
【０１６９】
本分野の技術者は、当実施例はただに説明するために例えたが、セキュリティリード方法、セキュリティストレージ方法、と命令再構築方法に限定されない、紹介した前記せキュリティリード方法、セキュリティストレージ方法、と命令再構築方法を需要により組合せて使用できる、ことを理解できる。
【０１７０】
データセキュリティ伝送方法
ストレージとリードは一般的にローカルストレージデバイスに対するデータ交換である；伝送は一般的にネットデバイスを利用するデータ交換である。
【０１７１】
図21のように、本発明の一つ実施例により、データセキュリティ伝送方法を提供する；以下を含む：
S7010、ハードウエア命令（例えば、ハードウエアマッピングレイヤーから来る）を受信する；
S7020、当ハードウエア命令を分析してネット伝送命令かどうかを判断する；
S7030、当ハードウエア命令は伝送命令であれば、宛先アドレスをリードする；
S7040、宛先アドレスはセキュリティアドレスかどうかを判断する；
S7050、セキュリティアドレスであれば、ハードウエア命令をハードウエアレイヤーへ送信する；なければ、当命令を拒絶する；
S7060、ハードウエアレイヤーは伝送命令とデータを宛先アドレスが対応するターミナルシステムへ送信する；
S7070、宛先アドレスが対応するターミナルシステムはデータを受信して、データセキュリティストレージ方法（上の実施例が説明した）でデータを保存する。
【０１７２】
本発明の他の実施例により、ステップS7040の中に、宛先アドレスがセキュリティアドレスか判断する方法は以下の通り：
図２２を参照して、セキュリティサーバー８２０はネットでターミナルシステム８００、８０１に接続する、ターミナルシステム８００、８０１は前記実施例が提供するデータセキュリティ伝送方法を配置する時に、すでにセキュリティサーバー８２０にレジストレーション操作を完了する。セキュリティサーバー８２０は内部にセキュリティアドレステーブルをメインテナンスして、レジストレーションした全てターミナルをレコードする。
【０１７３】
セキュリティアドレステーブルが改変する時に、セキュリティサーバー８２０は更新されたセキュリティアドレスを各ターミナルへ自動送信する、ターミナルシステム８００はアプリレイヤー８０１、OSカーネル８０２、セキュリティレイヤー８０３及びハードウエアレイヤー８０４を含む、セキュリティレイヤー８０３は当セキュリティアドレステーブルのメインテナンスを担当する。
【０１７４】
セキュリティレイヤー８０３は、宛先アドレスがセキュリティアドレステーブルに有るか分析して宛先アドレスがセキュリティアドレスであるか判断する。即ち、ステップS7040中に、宛先アドレスはセキュリティアドレステーブルに在れば、宛先アドレスはセキュリティアドレスである。
【０１７５】
前記セキュリティ伝送方法を実施することにより、木馬又は悪意ツールは機密情報を取得しても情報を伝送できない。
【０１７６】
本発明の一部実施例中には、コンピュータターミナルシステムは本発明が提供する方法の実施主体とするが、然し、任意ハンドヘルドデバイス、インテリジェンスターミナルなど、ファイル又はデータを編集、保存或いは伝送する電子デバイスは、本発明が提供するデータセキュリティアクセス及び伝送方法を応用するキャリアーと成れる。
【０１７７】
データセキュリティアクセス装置（ストレージ、読取装置を含む）
前記のデータセキュリティアクセス方法と対応して、本発明の一つ実施例により、データセキュリティストレージ装置を提供する。
【０１７８】
注意が払うことは、混乱を避けるために、本発明中に、（１）データセキュリティストレージ装置がハードウエアの形式でデータセキュリティストレージ方法を実現する装置に指す；（２）セキュリティストレージデバイスは、情報又はデータをダンプするストレージ実体（例えばディスクなど）に指す、ことである。
【０１７９】
図２３を参照して、本実施例が提供するデータセキュリティストレージ装置７１００は、受信ユニット７１１０、命令分析ユニット７１２０、命令改修ユニット７１３０と送信ユニット７１４０を含む；前述受信ユニット７１１０と命令分析ユニット７１２０はカプリィング接合する、命令分析ユニット７１２０は別々に命令改修ユニット７１３０と送信ユニット７１４０をカプリィング接合する、送信ユニット７１４０は命令改修ユニット７１３０とカプリィング接合する。
【０１８０】
中に、受信ユニット７１１０はハードウエア命令を受信することに適用する、前述ハードウエア命令はハードウエアマッピングレイヤーに送信される；
命令分析ユニット７１２０は、ハードウエア命令を分析して前述ハードウエア命令はストレージ命令かどうかを判断することに適用する：ストレージ命令であれば、命令分析ユニット７１２０は命令改修ユニット７１３０へ送信することに適用する、なければ、命令分析ユニット７１２０は送信ユニット７１４０へ送信することに適用する。
【０１８１】
送信ユニット７１４０は、受信した命令をハードウエアレイヤー７２００へ送信することに適用する。
【０１８２】
更に、本発明の他の実施例により、当データセキュリティストレージ装置は以下を含める：
更新ユニット７１５０と同期ユニット７１６０である、更新ユニット７１５０は命令改修ユニット７１３０とカプリィング接合する、同期ユニット７１６０は更新ユニット７１５０とカプリィング接合する。
【０１８３】
中に、更新ユニット７１５０は、命令改修ユニット７１３０が前述ストレージ命令を改修する後に、マッピングビットマップ中に宛先アドレスが対応するビットを改修することに適用する。本実施例中に、ストレージ命令の宛先アドレスが有るセクタが第一マッピングビットマップ中に対応ビットを「１」に設定して、ダンプ終了を示す。
【０１８４】
中に、同期ユニット７１６０は、ターミナル計算デバイスシステム（ターミナル計算デバイス）と前述セキュリティストレージデバイスの通信をビルドする、前述ターミナル計算デバイスシステムと前述セキュリティストレージデバイスの間にマッピングビットマップを同期する、ことに適用する。
【０１８５】
具体的に、ターミナル計算デバイスシステムが起動する時に、同期ユニット７１６０は、ターミナル計算デバイスシステムと前述セキュリティストレージデバイスの通信をビルドする、前述セキュリティストレージデバイスの第二マッピングビットマップを前述ターミナル計算デバイスシステムに同期する、第一マッピングビットマップとして保存する。
【０１８６】
前述セキュリティストレージデバイスの第二マッピングビットマップを前述ターミナル計算デバイスシステムに同期することが失敗すれば、セキュリティストレージデバイスとターミナル計算デバイスシステムが最初の通信することが判る、同期ユニット７１６０は、ターミナル計算デバイスシステムのローカルストレージ空間を前述セキュリティストレージデバイスにマッピングする、第一マッピングビットマップと第二マッピングビットマップをビルドする。たとえば、本実施例中に、先にセキュリティストレージデバイスに第二マッピングビットマップをビルドして、次にローカルに同期して、第一マッピングビットマップとして保存する。
【０１８７】
更新ユニット７１５０は第一マッピングビットマップ中の前述宛先アドレスが対応するビットを更新した後に、同期ユニット７１６０は更新された第一マッピングビットマップをセキュリティストレージデバイスに送信する、セキュリティストレージデバイスの第二マッピングビットマップとして保存する。
【０１８８】
前述セキュリティストレージデバイスの位置が限定しなくて、遠地ストレージデバイス又はローカルストレージデバイスができる。前述遠地ストレージデバイスは、一個計算デバイスだけにサーブする、又はマルチ計算デバイスに共有される、ことに適用する。
【０１８９】
本発明の一つ実施例により、前述ハードウエア命令はハードウエアポートI/O命令とすることができる。
【０１９０】
本発明の他の実施例により、前記のデータセキュリティリード方法に対応するデータセキュリティリード装置を提供する、図２４を参照して、データセキュリティリード装置８１００は：
受信ユニット８１１０、命令分析ユニット８１２０、命令改修ユニット８１３０及び送信ユニット８１４０を含む；中に、受信ユニット８１１０と命令分析ユニット８１２０はカプリィング接合する、命令分析ユニット８１２０は別々に命令改修ユニット８１３０及び送信ユニット８１４０とカプリィング接合する、命令改修ユニット８１３０と送信ユニット８１４０はカプリィング接合する、送信ユニット８１４０とハードウエアレイヤー８２００はカプリィング接合する。
【０１９１】
前述受信ユニット８１１０はハードウエア命令を受信することに適用する、本実施例中に、前述ハードウエア命令はハードウエアマッピングレイヤーから来る。
【０１９２】
前述命令分析ユニット８１２０は、前述ハードウエア命令を分析してリード命令かどうかを判断する、ことに適用する、リード命令であれば、リード命令の元アドレスを取って、前述元アドレスはセキュリティストレージデバイス上のアドレスかどうかを判断する。
【０１９３】
ハードウエア命令がリード命令でなければ、又は前述元アドレスはセキュリティストレージデバイス上のアドレスであれば、命令分析ユニット８１２０は前述ハードウエア命令を送信ユニット８１４０に送信する。
【０１９４】
前述元アドレスはセキュリティストレージデバイス上のアドレスではなければ、命令改修ユニット８１３０はマッピングビットマップにサーチする、マッピングビットマップのデータにより前述リード命令のリードアドレスを改修する。
【０１９５】
前記実施例中のマッピングビットマップと同じで、本実施例中が前述マッピングビットマップはローカルストレージアドレスのデータを前述セキュリティストレージデバイスにダンプするかどうかを示す、ここに余計なことを述べない。例えば、命令改修ユニット８１３０は、元アドレスが有るセクタが第一マッピングビットマップに対応するビットをサーチして、「ビット」データが１と成れば、すでにダンプされたことを示す、「ビット」データが０または「NULL」と成れば、ダンプされないことを示す。すでにダンプすれば、命令改修ユニット８１３０は、前述元アドレス（リードアドレス）を対応ダンプアドレスへ改修する、改修後のハードウエア命令を送信ユニット８１４０に送信する。
【０１９６】
更に、本発明の他の実施例により、前述データセキュリティストレージデバイスは同期ユニット８１５０を含める、同期ユニット８１５０は命令改修ユニット８１３０とカプリィング接合する。
【０１９７】
同期ユニット８１５０は、ターミナル計算デバイスシステムと前述セキュリティストレージデバイス間の通信をビルドして、ターミナル計算デバイスシステムと前述セキュリティストレージデバイス間のマッピングビットマップを同期する、ことに適用する。具体的に、同期ユニット８１５０は、ターミナル計算デバイスシステムが起動する時に、ターミナル計算デバイスシステムと前述セキュリティストレージデバイスの通信をビルドする、そして前述セキュリティストレージデバイス上の第二マッピングビットマップを前述ターミナル計算デバイスシステムに同期して、命令改修ユニット８１３０が使える第一マッピングビットマップとして保存する、
本実施例中に、前述セキュリティストレージデバイスは遠地ストレージデバイスと成れる、前述遠地ストレージデバイスはマルチターミナル計算デバイスシステムに共有される。本発明の他の実施例に前述セキュリティストレージデバイスはローカルストレージデバイスと成れる。
【０１９８】
本発明の他の実施例により、前記のデータセキュリティリード装置と前記のデータセキュリティストレージ装置は一つ装置に合弁できる、命令分析ユニットと命令改修ユニットは、ストレージ命令またはリード命令を処理できる、次に例を挙げて説明する。
【０１９９】
本発明の他の実施例により、データセキュリティストレージとリード装置を提供する。図２５のように、データセキュリティストレージとリード装置９１００は以下を含む：
命令実行環境のキャッシュと回復ユニット９１０１は、命令実行環境をキャッシュと回復することに適用する；
命令フェッチユニット９１０２は、次に実行する命令のアドレスを取る、ことに適用する、当アドレスは第一アドレスとなる；第一アドレスによりディスパッチ/実行待ちのマシン命令セグメントを獲得することに適用する；中に、ディスパッチ待ちのマシン命令セグメントの最後一条命令は第一プログラム偏移命令である；ディスパッチ待ちのマシン命令セグメントを獲得する具体的な方式はすでに説明されたが、ここに余計なことを述べない；
命令検索ユニット９１０４は、前述第一アドレスによりアドレス対応テーブルにサーチすることに適用する：
対応レコードが見つかったら、命令検索ユニット９１０４は、命令実行環境のキャッシュと回復ユニット９１０１を呼び出してキャッシュされた命令実行環境に回復する、見つかった対応アドレスへジャンプして実行を続ける（今回の再構築が完了する）、ことに適用する；
対応レコードが見つからなければ、命令再構築ユニット９１０３を呼び出して再構築操作をする。
【０２００】
中に、アドレス対応テーブルは、第一アドレスが指すディスパッチ待ち命令セグメントに保存された再構築命令セグメントが有るかどうかを示す、ことに適用する、アドレス対応テーブルのデータはアドレスペアができる。
【０２０１】
中に、命令再構築ユニット９１０３は更に以下を含む：
命令解析ユニット９１１１は、前記命令分析ユニット７１２０と命令分析ユニット８１２０の有機結合となって、前述ハードウエア命令を分析して前述ディスパッチ/実行待ちマシン命令セグメント中に順番的にハードウエア命令はストレージまたはリード命令かどうかを判断する、ことに適用する；
命令改修ユニット９１１２は、命令解析ユニット９１１１がストレージ又はリード命令を発見すれば、以下に適用する：
ストレージ命令に対して、前述ストレージ命令中の宛先アドレスをセキュリティストレージデバイスが対応するストレージアドレスへ改修する；
リード命令に対して、マッピングビットマップにサーチする、マッピングビットマップの指示データにより前述リード命令のリードアドレスを改修する；
更新ユニット９１１３は、命令改修ユニット９１１２が前述ストレージ命令を改修する後に、マッピングビットマップに有る宛先アドレスが対応するビットを改修することに適用する、リードデータはすでにダンプされたことを示す；
同期ユニット９１１４は、ターミナル計算デバイスシステムと前述セキュリティストレージデバイス間の通信をビルドする、ターミナル計算デバイスシステムと前述セキュリティストレージデバイス間のマッピングビットマップを同期する、ことに適用する。
【０２０２】
命令解析ユニット９１１１、命令改修ユニット９１１２、更新ユニット９１１３、同期ユニット９１１４が実行終わる後に、命令再構築ユニット９１０３は、第一プログラム偏移命令をプッシュ命令に置換えて、プッシュ命令には第一プログラム偏移命令のアドレスとオペランドをレコードする、ことに適用する；プッシュ命令後に第二プログラム偏移命令を挿入して第二アドレスが有る再構築命令セグメントを作成することに適用する；前述第二プログラム偏移命令は装置９１００のエントリアドレスへ指す；再構築命令セグメントの第二アドレスと第一アドレスが対応するレコードをアドレス対応テーブルにビルドすることに適用する。
【０２０３】
本発明の他の実施例により、図２６のように、命令再構築ユニット９１０３は命令解析ユニット９１１１、命令改修ユニット９１１２、更新ユニット９１１３、同期ユニット９１１４と同じレベルの並列ユニットとして、彼の機能に余計なことを述べない。図２５を参照続けて、命令再構築ユニット９１０３は、再構築命令セグメントを獲得した後に、命令実行環境のキャッシュと回復ユニット９１０１を呼び出してキャッシュされた命令実行環境に回復することに適用する、そして再構築命令セグメントのアドレスへジャンプして実行を続ける（再構築操作が終わる）。
【０２０４】
本分野の技術者は、当実施例は説明するために挙がるが、データセキュリティリード装置、データセキュリティストレージ装置と命令再構築装置の合併方式に限定しない、前記紹介された各種データセキュリティリード装置、データセキュリティストレージ装置と命令再構築装置は任意の方式で合併できる、ことを理解できる。
【０２０５】
別に、前記セキュリティストレージ方法と装置はクラウド技術と結合して、クラウド内部のデータセキュリティを確保して、クラウド計算の応用と普及を推進することができる。具体的な例は次に紹介する。
【０２０６】
本分野の技術者は、セキュリティレイヤーに実現する前記方法はOSカーネルレイヤーからハードウエアレイヤーまでの各レイヤーに完成できる、ことを理解できる。具体的な機能の実現方法は本発明の精神と範囲を脱出しない。
【０２０７】
前記実施例中に詳細に本発明が提供するセキュリティストレージ方法と装置を紹介したが、既存技術と比較して以下長所が有る：
１、データセキュリティストレージ方法は命令レベルのデータダンプ（データセキュリティダンプ）を実現する、これを基礎として、ターミナル計算デバイスシステムの全て実行周期のデータセキュリティストレージ方法を実現する、一方、木馬又は悪意ツールが機密情報を取得してもその情報を保存できない、データはずっとコントロールできる範囲内に存在する,一方、ローカルに任意機密データを保存しないから、機密人員の主動リークとパッシブリークを防止できる；
２、ハードウエアマッピングレイヤーから来たハードウエア命令を受信することで全て命令を百パーセントにフィルタできる、更にデータセキュリティを上げる。
【０２０８】
前記実施例中には本発明が提供するセキュリティリード方法と装置を詳細に紹介する、既存技術と比べて、以下の長所が有る：
１、データセキュリティリード方法とデータセキュリティストレージ方法の結合はずっとコントロールできるセキュリティ範囲内にデータを保存させる、そしてデータをセキュリティ保存（ダンプ）する後に、ダンプされたデータを読み出せることが保証できる；ローカルには任意な機密データを保存しないから、機密人員の主動リールとパッシブリークを防止できる；
２、セキュリティストレージデバイスは遠地ストレージデバイスであれば、マルチターミナルに共有されてセキュリティストレージデバイス空間の使用効率を上げる。
【０２０９】
データブラックホール処理方法
定義：
１、データブラックホールシステムは：計算デバイス実行過程中の中間データと実行結果を特定なストレージ位置に保存して計算デバイスは正常に実行することを確保できるシステムである；
２、データブラックホールターミナルは：データブラックホールシステムを配置する計算デバイスである（例えばコンピュータターミナル）、データブラックホールターミナルの実行過程が作成する中間データと結果データをすべて特定なストレージ位置にダンプする。
【０２１０】
３、リダイレクトは：コンピュータの実行過程中に、作成した中間データ又は結果をパーシスタンスする要求が有る時に、コンピュータの任意ロジックとコードを改修せずにパーシスタンスのポジションを特定なストレージポジションへ導く処理方法である。
【０２１１】
４、データライト：データパーシスタンス操作である。
【０２１２】
５、データブラックホール空間：下文に定義する。
【０２１３】
６、ブラックホールストレージ空間：下文に定義する。
【０２１４】
本発明の一つ実施例により、データセキュリティを挙げるプロシージャA１０を提供する、以下を含む：
A11、ユーザに一つデータブラックホール空間をビルドする、両種モードを含む（任意モードを選択できる）：
A111ローカル配置モード：データブラックホールターミナルはローカルデータストレージデバイスに一つデータストレージエリアを作る、当データストレージエリアはターミナルデータリダイレクトの宛先区域であり、当データトレージ区域はブラックホールストレージエリアと呼ぶ；
当データストレージエリアとユーザの対応関係について一つデータストレージエリアはマルチローカルユーザと対応する、又はマルチストレージエリアはマルチローカルユーザと対応する；
当データストレージエリアはデータブラックホールシステムだけにアクセスされる、ターミナル計算デバイスのOS又はアプリレイヤー（例えばアプリソフトウエア）にアクセスされない；
A112ネット配置モード：ネットのストレージ位置に一つデータストレージエリアを作る、当データストレージエリアはターミナルデータがリダイレクトする宛先区域である；
このデータストレージエリアとネットターミナルユーザの対応関係は、一一対応することができる；当ストレージエリアもこマシン(ローカル)のユーザと対応できる。
【０２１５】
前記ローカル配置モード又はネット配置モードでユーザにデータブラックホール空間（ブラックホール空間と呼ぶ）をビルドする。
【０２１６】
A12、ユーザとリダイレクトされたストレージ空間の対応関係をビルドする。
【０２１７】
ターミナルユーザは最初にデータブラックホールターミナルを登録する時に、データブラックホールターミナルはユーザ情報によりユーザに対応するデータブラックホールのデータストレージエリアをビルドする。
【０２１８】
A13、ターミナル計算デバイスの全てデータパーシスタンス操作をリダイレクトする。
【０２１９】
本発明の一つ実施例により、ユーザはデータブラックホールターミナルを登録する後に、データブラックホールターミナルはデータブラックホールストレージエリアの存在を確認してユーザとブラックホールストレージエリアの対応関係をビルドする、当ユーザのローカルマシン（データブラックホールターミナル）上の全てデータライト操作はデータストレージエリアへリダイレクトされる。
【０２２０】
前記過程A10を使用する後に、ブラックホール空間はユーザと対応する；ハッカーは抜け道、バックドア、木馬など悪意コードでデータ権限を取得した後に、データをコピー、ダンプ、送信、インターセプトができる。然し、周辺デイバス、ポート、ユーザ、ターミナルが送信するデータは全てデータブラックホール空間（ユーザが対応するブラックホール空間）へ導き、全て操作はデータブラックホール空間内に完成する。それで全てのデータ盗み、インターセプト、出力など作業はデータブラックホール空間内に実現する。機密（データ権限が有る）人員はデータをプライベート保留、バックアップ、送信、出力を試す時に、全てデータ操作はデータブラックホール空間内に完成する、悪意操作がリークできない。
【０２２１】
本発明の一つ実施例により、図２７のように、前記過程A10を実行できる計算デバイスはデータブラックホールサーバーと呼ぶ、データブラックホールサーバーはネットで計算ターミナル１（図２７のターミナル１）、計算ターミナル２（図２７のターミナル１）、…、計算ターミナルN（図２７のターミナルN）と接続/カプリィング接合する。データブラックホールサーバーは各ターミナルにデータブラックホールシステムを配置する、各ターミナルはデータブラックホールターミナル（図２７のデータブラックホールターミナル１、ターミナル２、．．．、ターミナルN）を成らせる。
【０２２２】
そして、ブラックホールストレージエリア（図２７のマッピングブロック１、２、．．．、N）はデータブラックホールサーバーに有る。それで、データブラックホール空間はデータブラックホールサーバーのブラックホールストレージエリアと各データブラックホールターミナルのメモリを含む、因みに、全てデータブラックホールターミナルの計算プロシージャと結果データをブラックホールストレージに保存する。データブラックホールシステムは計算デバイスの完璧性を破って、計算デバイスの不完璧性により悪意コード又は最高権限が有る機密人員はデータリークにできないデータセキュリティシステムを実現する。
【０２２３】
本発明の一つ実施例により、前記過程１０にデータブラックホール処理方法S90を提供する、図２８のとおり、以下を含む：
S91、計算デバイス（コンピュータ、ハンドヘルドデバイス、インテリジェンスターミナルなど）にデータブラックホールシステムを配置してデータブラックホールターミナルを成らせる；
S92、データブラックホール空間をビルドする、以下を含む：
１）計算デバイスのローカルに一個データストレージエリア（データブラックホールエリアと呼ぶ）、及びローカルメモリを開く；及び/又は
２）ネットの一個ストレージ位置にデータブラックホール、及びローカルメモリを開く；
S93、計算デバイスのユーザとデータブラックホール空間又は一部空間に対応関係をビルドする、例えば、ユーザがデータブラックホールターミナルを登録する時に、ターミナルユーザとデータブラックホール空間の一一対応関係をビルドする；
S94、データブラックホールターミナルはユーザ操作が作成した「データライト」を当ユーザが対応するデータブラックホール空間にリダイレクトする、例えば、当ユーザが対応するデータブラックホールストレージエリアにリダイレクトする；
S95、ローカルストレージデバイスへのデータパーシスタンス操作を阻止する、ローカルポートで非データブラックホールターミナルへデータ出力操作を阻止する、それで、データブラックホールターミナル又はデータブラックホール空間に入力するデータはデータブラックホール空間だけに存在する。
【０２２４】
本発明の他の実施例により、ステップS91とS92の内容――計算デバイスにブラックホールシステムを配置することとユーザにデータブラックホール空間をビルドすることを一つステップで完成できる。
【０２２５】
本発明の他の実施例により、ステップS93はユーザが一回目にブラックホールターミナルを登録する時のみに進行できる、又はユーザが毎回ブラックホールターミナルを登録する時に進行できる。
【０２２６】
本発明の他の実施例により、ステップS93とS94の内容は一つステップで完成できる。即ち：
ユーザが「データライト」を操作する時に、予定の対応方式で、当ユーザの「データライト」操作は当ユーザが対応する全てのデータブラックホール空間に導く。
【０２２７】
中に、予定の対応方式は固定対応ができる、例えば、ユーザ毎にブラックホール空間に一部容量のストレージ空間を割付ける。予定の対応方式は動態対応もできる、例えば、ユーザ毎にブラックホール空間に予定容量のストレージ空間を割付ける、ユーザのストレージデータは予定容量を超えれば、ユーザにもっと多いストレージ空間(例えば、予定容量の２、４又は８倍など)を割付ける。本分野の技術者は、ユーザとストレージ空間の対応方式と割付方式は需要により選択できる。
【０２２８】
本発明の一つ実施例により、前記過程A10によりユーザがデータブラックホールターミナルを登録する後に、データブラックホールターミナルはデータブラックホールストレージエリアの存在を確認してユーザとブラックホールストレージエリアの対応関係をビルドする、当ユーザはローカルマシン（データブラックホールターミナル）上の全てデータライトをデータストレージエリアへ導く。そして、全てデータリードはデータのバージョン又はユーザの選択によりストレージエリアのデータ又はローカルデータを読み取る。
【０２２９】
前記実施例中が提供するデータセキュリティ読取方法（例えばS5000）と装置（データセキュリティ読取装置８１００）により、ユーザ選択機能を提供するために適応性改修をすれる。
【０２３０】
本発明の一つ実施例により、データセキュリティ読取方法S80は以下を含む：
S8１、ハードウエア命令を受信する；
S82、当命令を分析して読取命令か判断する；
S83、読取命令であれば、マッピングビットマップの指示データの値より、読取るデータがすでにダンプされたら、そして：ユーザに選択操作機能を提供する、ユーザはストレージエリアデータ又はローカルデータを読取ることを選択できる；
ユーザの選択により、ストレージエリアデータ又はローカルデータを読取る、即ち、ユーザがストレージエリアデータを読取ることを選択する場合である；
S84、改修後のハードウエア命令をハードウエアレイヤーへ送信する。
【０２３１】
前記データセキュリティ読取方法S80の別内容とステップをデータセキュリティ読取方法S5000を参照できる、ここに余計なことを述べない。
【０２３２】
前記のように、本実施例のデータセキュリティ読取装置を適用性改修できる、たとえば、データセキュリティ読取装置８１００の命令改修ユニット８１３０をS83の実行操作に適用するように改修する、別ユニットはデータセキュリティ読取装置８１００を参考できる、ここに余計なことを述べない。
【０２３３】
シングルデータブラックホール処理方法
前記ステップS92中に、データブラックホール空間をビルドするためにローカル計算デバイスにデータストレージエリアを開く、当計算デバイスが使用するデータブラックホール処理方法はシングルデータブラックホール処理方法である。
【０２３４】
図２９aの通り、計算デバイス７０は、アプリレイヤー（又はアプリレイヤーが対応するユニット）７１、OSカーネルレイヤー（又はOSカーネルが対応するユニット）７２、ハードウエアマッピングレイヤー（又はハードウエアマッピングレイヤーが対応するユニット）７３、セキュリティレイヤー（又はセキュリティレイヤーが対応するユニット）７４、を含む、これらのレイヤー又はユニットは前の実施例の計算デバイス２００が含むユーザインタフェイスレイヤー２０１、アプリレイヤー２０２、OSカーネルレイヤー２０３、ハードウエアマッピングレイヤー２０４、セキュリティレイヤー２０５及びセキュリティレイヤー２０６と対応する、余計なことを述べない。
【０２３５】
なお、モバイル計算デバイス７０はハードウエアレイヤー７５を含む。
【０２３６】
ハードウエアレイヤー７５はCPU、ネットカード及びディスク７５aのデバイス又はユニットを含む。
【０２３７】
ディスク７５aは普通ストレージ区域とセキュリティストレージ区域７５a1を含む。
【０２３８】
当セキュリティストレージ区域７５a1は暗号化ストレージ区域となれる、データアクセスの前後にデータを暗号化復号化することが必要である。
【０２３９】
別に、前記データセキュリティリード方法（例えばS5000）とストレージ方法（例えばS4000）は独立な計算デバイスに応用する時に、前記方法はシングルデータセキュリティアクセス方法となる；当単独な計算デバイス（例えばPC）は相互独立なローカルストレージ空間とセキュリティストレージ空間が有る。
【０２４０】
例えば、シングルデータセキュリティストレージ方法は以下を含む：
ハードウエア命令を受信する；
前述ハードウエア命令はストレージ命令であれば、前述ストレージ命令の宛先アドレスを前述計算デバイス上の対応セキュリティストレージ空間のアドレスへ改修する；及び
改修後のストレージ命令をハードウエアレイヤーへ送信して実行する。
【０２４１】
例えば、シングルデータセキュリティリード方法は以下を含む：
ハードウエア命令を受信する；
前述ハードウエア命令はリード命令であれば、前述リード命令の元アドレスを取得する、第一マッピングビットマップによりリード命令のリードアドレスを改修する；及び
改修後のストレージ命令をハードウエアレイヤーへ送信して実行する。
【０２４２】
前述実施例中が提供するセキュリティストレージ装置とセキュリティリード装置（例えば、装置７１００、装置８１００、装置９１００）は、需要により不要なユニットを削除して、シングルデータセキュリティアクセス装置となる。
【０２４３】
本発明の一つ実施例により、図２９ｂの通り、計算デバイスは相互独立なローカルストレージ空間８７とセキュリティストレージ空間８８、及びシングルデータセキュリティアクセス装置８０を含む；中に、セキュリティストレージ空間はOSに対して使用不可（例えば、見えない又はアクセス不可）である、シングルデータセキュリティアクセス装置８０だけはアクセスできる；
中に、前述シングルデータセキュリティアクセス装置８０は以下を含む：
受信ユニット８１は、ハードウエア命令を受信することに適する；
命令分析ユニット８２は、前述ハードウエア命令はストレージ命令又はリード命令か判断して、判断シグナルを作成する；
命令改修ユニット８３は、前述ハードウエア命令はストレージ命令であれば、前述ストレージ命令中の宛先アドレスをセキュリティストレージ空間が対応するストレージアドレスへ改修することに適する；前述ハードウエア命令はリード命令であれば、マッピングビットマップにサーチしてリード命令のリードアドレスを改修する；前述マッピングビットマップは、ローカルストレージ空間のアドレスが対応するデータがすでに前述セキュリティストレージ空間にダンプされることを示す、マッピングビットマップは前述実施例中に詳細に説明するが、ここに余計なことを述べない；
送信ユニット８４は、改修後のアクセス命令をハードウエアレイヤーへ送信して実行する。
【０２４４】
前記計算デバイスは、更新ユニット８５を含める、命令改修ユニット８３が前述ストレージ命令を改修する後に、ユニット８５はマッピングビットマップに前述宛先アドレスが対応するビットを更新する。
【０２４５】
前記計算デバイスは、暗号化復号化ユニット８６を含める、セキュリティストレージ空間８８に進出するデータを暗号化復号化することに適する。
【０２４６】
本発明の一つ実施例により、図２９aを結合して、シングルデータブラックホール処理方法を提供する、図３０のように、以下を含む：
Sa1、計算デバイス（例えばコンピュータ、ハンドヘルドデバイス、インテリジェンスターミナルなど）にデータブラックホールシステムを配置して、データブラックホールターミナルとなる；
Sa2、データブラックホール空間をビルドする、計算デバイスのローカル空間にデータストレージエリア（データブラックホールエリアと呼ぶ）及びローカルメモリを開く、中に、データストレージエリアはデータブラックホールシステムだけにアクセスされられる、ターミナル計算デバイスのOS又はアプリにアクセスされられない；
Sa3、計算デバイスのユーザとデータブラックホール空間又は一部空間に対応関係をビルドする、例えば、ユーザがデータブラックホールターミナルを登録する時、ターミナルユーザとデータブラックホール空間の一一対応関係をビルドする；
Sa4、データブラックホールターミナルはユーザの「データライト」操作をユーザが対応するデータブラックホール空間へ導いて暗号化する、例えば、当ユーザが対応するブラックホールストレージへリダイレクトする；
Sa5、ローカルストレージデバイス（ブラックホールストレージ以外）のデータパーシスタンス操作を阻止する、及び、ローカルポートが非データブラックホールターミナルにデータを出力する操作を阻止する、それで、データブラックホールターミナル又はデータブラックホール空間に入ったデータはデータブラックホール空間だけに存在することを保証する。
【０２４７】
中に、Sa1はステップ１を示す。
【０２４８】
モバイルストレージデバイスに基づくデータブラックホール処理方法
機密人員はモバイル計算デバイス（例えば、ノートパソコン又はパネルパソコン）を操作する時に、遠地セキュリティストレージデバイス（ブラックホールストレージエリアとする）に接続不便であれば、モバイルストレージデバイスはセキュリティストレージデバイスとする。計算デバイス（モバイル計算デバイスを含む）のセキュリティをモバイルストレージデバイスのセキュリティへ移転する。
【０２４９】
本発明の一つ実施例により、図３１の通り、中に、機密人員はモバイルストレージデバイス２０で機密データを操作する、機密データはローカルに保存できなく、ネットセキュリティストレージデバイスも接続不便であれば、特定のモバイルストレージデバイスは機密データのキャリアーとする、即ち、モバイルストレージデバイスは臨時的なセキュリティストレージデバイスとする。
【０２５０】
中に、モバイルストレージデバイス２０は、ユーザインタフェイスレイヤー２１、アプリレイヤー２２、OSカーネル２３、ハードウエアマッピングレイヤー２４、セキュリティレイヤー２５及びハードウエアレイヤー２６を含む。前の実施例の計算デバイス２００が含んだユーザインタフェイスレイヤー２０１、アプリレイヤー２０２、OSカーネル２０３、ハードウエアマッピングレイヤー２０４、セキュリティレイヤー２０５及びハードウエアレイヤー２０６と対応する、余計なことを述べない。
【０２５１】
機密人員の作業は便宜にするために、本発明の前記実施例中が提供するデータセキュリティリードとストレージ方法はセキュリティストレージデバイスと整合して一つモバイルストレージデバイスをなせる、携帯デバイスとして使用する。
【０２５２】
図３２のように、本発明の一つ実施例により、モバイルストレージデバイス(モバイルストレージデバイス50)を提供して、アプリレイヤー（又はアプリレイヤーが対応するユニット）５２、OSカーネルレイヤー（又はOSカーネルレイヤが対応するユニット）５３、ハードウエアマッピングレイヤー(又はハードウエアマッピングレイヤーが対応するユニット)５４、セキュリティレイヤー(又はセキュリティレイヤーが対応するユニット)５５を含む。これらのレイヤー又はユニットは前の実施例中の計算デバイス２００が含んだユーザインタフェイスレイヤー２０１、アプリレイヤー２０２、OSカーネル２０３、ハードウエアマッピングレイヤー２０４、セキュリティレイヤー２０５及びハードウエアレイヤー２０６と対応する、余計なことを述べない。
【０２５３】
更に、モバイルストレージデバイス５０は、ハードウエアレイヤー(又はハードウエアレイヤーが対応するユニット)５６を含んで、中に、データインタフェイス５６aとセキュリティストレージ区域５６bを含む。データインタフェイス５６aはほか計算デバイス(対応のデータインタフェイスに通じて)を接続することに適用する、セキュリティストレージ区域５６bは、データセキュリティストレージとリード方法に適用するセキュリティストレージデバイスである。
【０２５４】
計算ターミナル４０は、アプリレイヤー（又はアプリレイヤーが対応するユニット）４１、OSカーネルレイヤー（又はOSカーネルレイヤが対応するユニット）４２、ハードウエアマッピングレイヤー(又はハードウエアマッピングレイヤーが対応するユニット)４３、ハードウエアレイヤー(又はハードウエアレイヤーが対応するユニット)４４を含む。中に、ハードウエアレイヤー４４は、CPU  44a、ハードディスク44b、ネットカード44c、データインタフェイス44d(例えば、USBインタフェイス)などハードユニットを含む。
【０２５５】
中に、データインタフェイス５６aはデータインタフェイス４４dとカプリィング接合する。セキュリティストレージ区域５６bはモバイルストレージデバイス５０のOSに対して使えない。
【０２５６】
モバイルストレージデバイス５０は、データインタフェイスに通じて計算ターミナル４０と接続する、計算ターミナル４０の計算資源を利用してモバイルストレージデバイスシステム(レイヤー５２〜５５を含む)の作業を終わらせる、セキュリティストレージ区域５６bにデータを保存する。
【０２５７】
中に、モバイルストレージデバイス５０は以下のデータストレージ過程を遂行する：
ステップA1、モバイルストレージデバイス５０はデータインタフェイス５６a、４４ｄに通じて計算ターミナル４０とカプリィング接合する；
ステップA2、計算ターミナル４０はリスタートする、計算ターミナル４０のCPU４４aはモバイルストレージデバイス５０が携帯するシステム(レイヤー52〜55が対応するアプリソフトウエアとシステムソフトウエア)を実行する；
ステップA3、ユーザは計算ターミナル４０のI/O(出力入力デバイス、例えば、キーボード44b)に通じてモバイルストレージデバイス５０が携帯するシステムを操作する；
ステップA4、セキュリティレイヤー５５は、ハードウエアマッピングレイヤー５４から来たハードウエア命令を受信する；
ステップA5、前述ハードウエア命令はストレージ命令又はリード命令であれば、セキュリティレイヤー５５は前述ストレージ命令の宛先アドレス又はリード命令の元アドレスを前述モバイルストレージデバイス５６ｂに対応するストレージアドレスへ改修する；及び
ステップA6、改修後のストレージ命令を計算ターミナル４０のCPU４４aへ送信する。
【０２５８】
ステップA4-A5の中に、セキュリティレイヤー５５のデータ移転ストレージ過程は前の実施例が提供するデータセキュリティストレージとリード方法が同じだから、余計なことを述べない。
【０２５９】
本実施例中に、セキュリティストレージ区域５６bと計算ターミナル４０のローカルストレージデバイス４４ｂの間にマッピング関係とテーブルをビルドする過程は以前前述データセキュリティストレージ方法に詳細な記載が有るから、余計なことを述べない。
【０２６０】
別に、本発明の前記実施例中に提供するデータセキュリティリードとストレージ方法はセキュリティストレージデバイスを一つモバイル計算デバイス(例えば、ノートパソコン又はインテリジェンス携帯電話)中に整合して、携帯デバイスとして使える。
【０２６１】
モバイルストレージデバイスに基づくデータブラックホール処理装置
前述モバイル計算デバイスとモバイルストレージデバイスは前記実施例中に提供するセキュリティストレージ装置とセキュリティリード装置(例えば、装置７１００、装置８１００、装置９１００など)を結合して、不要なユニットを削除してモバイルデータセキュリティストレージとリード方法を実現する。本領域の技術員は、前記モバイル計算デバイス及びモバイルストレージデバイスとセキュリティストレージ装置及びセキュリティリード装置の結合方式は需要により設計できる、ことを理解できる。
【０２６２】
本発明の一つ実施例により、モバイル計算デバイスを提供する。当モバイル計算デバイス(例えば、ノートパソコン又はインテリジェンス携帯電話)は、相互独立なローカルストレージ空間とセキュリティストレージ空間と；データセキュリティストレージとリード装置を含む。中に、セキュリティストレージ空間はOSに対して使えない(例えば、見えない又はアクセス不可)。
【０２６３】
中に、前述データセキュリティストレージとリード装置は以下を含む：
受信ユニットは、ハードウエア命令を受信することに適用する；
命令分析ユニットは、前述ハードウエア命令がストレージ又はリード命令であるかどうかを判断して、判断信号を作成する；
命令改修ユニットは、前述ハードウエア命令がストレージ命令であれば、前述ストレージ命令中の宛先アドレスをセキュリティストレージ空間に有る対応ストレージアドレスへ改修する；前述ハードウエアがリード命令であれば、マッピングビットマップにサーチして、ビットマップのデータによりリード命令のリードアドレスを改修する；ことに適用する；前述マッピングビットマップはローカルストレージ空間のアドレスのデータがすでに前記セキュリティストレージ空間にダンプされるかどうかを示す；
送信ユニットは、改修後のリード又はストレージ命令をハードウエアレイヤーへ送信して実行することに適する。
【０２６４】
本実施例中に、ハードウエア命令はハードウエアマッピングレイヤーから来る。本発明の他の実施例により、前述モバイル計算デバイスはなお更新ユニットを含む。更新ユニットは、命令改修ユニットは前述ストレージ命令を改修する後に、ビットマップ中の前述宛先アドレスが対応するビットを改修することに適用する。
【０２６５】
前記モバイル計算デバイス(例えば、ノートパソコン)は、個人又は企業のユーザのデータが周辺アプリに授権する後のデータセキュリティ保護に適用する。システムは個人又は企業ユーザがPC、ノートパソコンに機密データを保存することを仮定して、システムはバックドア、抜け道、木馬又は他未知の悪意コードが有るからPC/ノートパソコンのデータリークを保障できなく、同時にデバイスが落とす場合のデータセキュリティを保護できない。企業について、イントラネットからデータを導き出す時に、使用過程中にデータの保護とモニターを実現する。
【０２６６】
本分野の技術者は、前記モバイル計算デバイス(例えば、ノートパソコン)は独立なコンピュータ(例えばPC)としてもできる、ことを理解できる。
【０２６７】
本発明の一つ実施例により、モバイルストレージデバイスを提供する。当モバイルストレージデバイス(例えばUディスク)は、データインタフェイス、セキュリティストレージ空間、及びデータセキュリティストレージとリード装置を含める；前述データインタフェイスは計算デバイスとカプリィング接合することに適用する；前述計算デバイスはローカルストレージ空間を含んで、モバイルストレージデバイス上のOSを実行することに適用し、前述データセキュリティストレージとリード装置に計算資源を提供することに適用する。
【０２６８】
データセキュリティストレージとリード装置は以下を含む：
受信ユニットは、ハードウエア命令を受信する；
命令分析ユニットは、前述ハードウエアはストレージ又はリード命令であるかを判断して判断シグナルを作成する；
命令改修ユニットは、前述ハードウエア命令はストレージであれば、前述ストレージ命令の宛先アドレスをセキュリティストレージ空間の対応ストレージアドレスに改修する、ことに適用する；前述ハードウエア命令はリード命令であれば、マッピングビットマップにサーチして、ビットマップのデータによりリード命令のリードアドレスを改修する、ことに適用する；前述マッピングビットマップはローカルストレージ空間のアドレスのデータがすでに前記セキュリティストレージ空間にダンプされるかどうかを示す；及び
送信ユニットは、改修後のリード又はストレージ命令をハードウエアレイヤーへ送信して実行することに適する。
【０２６９】
本発明の他の実施例により、前述モバイルストレージデバイスは尚更新ユニットを含む、更新ユニットは、命令改修ユニットが前述ストレージ命令を改修する後に、ビットマップ中に前述宛先アドレスが対応するビットを更新することに適する。
【０２７０】
本発明の他の実施例により、ハードウエア命令はハードウエアマッピングレイヤーから来れる。
【０２７１】
前記モバイルストレージデバイス(例えば、Uディスク)には、データセキュリティストレージとリード装置を配置するUディスク/モバイルハードディスクをデータ導き出しキャリアーとして導き出されたデータセキュリティを保護する。外部に導き出されたデータがコントロールできない環境中に使用する時に、データ使用過程中の跡がないことをコアとして確保する、同時にシステムバックドア、抜け道、木馬又は他未知の悪意コードの環境中に、データのコピーとインターセプトができないことを確保する。
【０２７２】
前記実施例中に、マッピングビットマップは、ローカルストレージ空間のアドレスが対応するデータを前記セキュリティストレージ空間にダンプされるかどうかを示す、又はファイル対応テーブルの形式でローカルデータはファイルの形式で前述セキュリティストレージ空間へダンプされるかどうかを示す。
【０２７３】
本発明が提供する前記方法と装置は、既存技術と比べて、以下長所が有る：
A.  データ操作の過程追跡を実現できる、悪意コード、バックドアと木馬のデータ操作追跡機能が有る；
B.  セキュリティフィールド内部にファイル操作授権を実現する、授権後のファイルを完全にモニターできることを確保する。
C.   
D.  セキュリティフィールド間のファイル授権を実現できる、授権後に完全モニター能力を持つ、授権ファイルに対して定期、確定回数で使用、定期破壊能力を持つ；
E.  ターミナル使用データとサーバデータは全て暗号化を実現できる。
F.   
本分野の技術者(本分野の普通技術者)は、前記のデータセキュリティストレージ方法、リード方法及び伝送方法がソフトウエア又はハードウエアの形式で実現できる、ことを理解できる：
(1) ソフトウエアで実現すれば、前記方法が対応するステップはソフトウエアコードの形式でコンピュータが読めるメディアにストレージしてソフトウエア製品となる；
(2) ハードウエアで実現すれば、前記方法が対応するステップはハードウエアコード(例えば、Verilog)の形式で描画して、ファームウエア化(物理設計/レイアウト/ファブフローシートなど過程を経過する）でチップ製品（例えばプロセッサ製品）を作成する。
(3)  
具体的に、本分野の普通技術者は意識するように、本発明は一種類システム、方法又はコンピュータプログラム製品を具体に実現できる。因みに、本発明は完全ハードウエア実施例、完全ソフトウエア実施例(ファームウエア、駐在ソフトウエア、マイクロコードなどを含む)の形式で、又はソフトウエアとハードウエアの組合実施例の形式で実現できる、ここで「サーキット」、「モジュール」又は「システム」と呼ぶ。
【０２７４】
別に、本発明は、コンピュータが使えるプログラムコードを保存する任意の有形メディアに具体に実現できるコンピュータプログラム製品の形式で描画できる。
【０２７５】
コンピュータが使える又は読めるメディアの一個又はマルチ任意組合を使用できる。コンピュータが使える又は読めるメディアは、例えば、電子、マグネチック、オプチカッル、電磁,インフラレッド又は半導体のスステム、装置、設備又は伝播メディアであるが、これらに限定されない。コンピュータが具体的読めるなメディアは、電線の電気連接、ハンドヘルドコンピュータのディスク、ハードディスク、RAM、ROM、EPROM又はフラッシュメモリ、ファイブリック、CD−ROM、オプチカッルストレージデバイス、インターネット又はイントラネットを支持する伝送メディア、又はマグネチックストレージデバイスを含むが、これらに限定されない。
【０２７６】
注意が払うことは、コンピュータが使える又は読めるメディアは更に紙又はプログラムを印刷できる別の適当なメディアができる、プログラムは紙又は別のメディアに対するオプチカッルスカンで電気キャプチャされて、次に編集、翻訳又は適当な方式で処理できる、必要すれば、コンピュータメモリに保存できる。本文のコンテキストに有るコンピュータが使える又は読めるメディアは、ストレージ、通信、伝播又は伝送プログラム及び命令実行システム、装置、設備、彼らの組合を使用する任意メディアである。コンピュータが使えるメディアは、コンピュータが使えるプログラムコードを含む伝播データ信号であり、これらはベースバンドに在る又はキャリアーの一部とすることができる。コンピュータが使えるプログラムコードは任意の適当なメディアで伝送できる、これらのメディアは無線、有線、ファブリック、RFなどを含むが、これらに限定しない。
【０２７７】
本発明の操作を実行するコンピュータプログラムコードはプログラミング言語又はマルチプログラミング言語の任意組合でプログラミングされる、これらの言語は、例えば、Java（登録商標）、Smalltalk、C＋＋などのオブジェクトオリエンテッド言語と、例えば、「C」言語又は類似のプログラミング言語と似てる伝統プロシージャ言語を含む。プログラムコードは、全部がユーザコンピュータに、一部がユーザコンピュータにシングルソフトウエアパッケージとして実行する、一部がユーザコンピュータに及び一部が遠地コンピュータに実行する、或は、全部が遠地コンピュータ又はサーバーに実行する、ことができる。遠地で実行する場合、遠地コンピュータは任意類型のネット連結でユーザコンピュータに接続できる。これらのネットはローカルエリアネット（LAN）、ワイドエリアネット（WAN）、又は外部コンピュータに接続可能の連結（例えば、インターネットサーブプロバイダーが提供するインターネット）である。
【０２７８】
後の特許請求の範囲が請求する本発明の精神と範囲は脱出しなくて、前記の詳細描画した本発明を改修と改進することができる、これに注意を払って理解してください。技術方案の請求範囲は任意の挙げた特定凡例と案例に限定を受けない。
【図１】
0006317821.tif 000002
【図２】
0006317821.tif 000003
【図３】
0006317821.tif 000004
【図４】
0006317821.tif 000005
【図５】
0006317821.tif 000006
【図６】
0006317821.tif 000007
【図７】
0006317821.tif 000008
【図８】
0006317821.tif 000009
【図９ａ】
0006317821.tif 000010
【図９ｂ】
0006317821.tif 000011
【図９ｃ】
0006317821.tif 000012
【図９ｄ】
0006317821.tif 000013
【図１０】
0006317821.tif 000014
【図１１】
0006317821.tif 000015
【図１２】
0006317821.tif 000016
【図１３】
0006317821.tif 000017
【図１４】
0006317821.tif 000018
【図１５】
0006317821.tif 000019
【図１６】
0006317821.tif 000020
【図１７】
0006317821.tif 000021
【図１８】
0006317821.tif 000022
【図１９】
0006317821.tif 000023
【図２０】
0006317821.tif 000024
【図２１】
0006317821.tif 000025
【図２２】
0006317821.tif 000026
【図２３】
0006317821.tif 000027
【図２４】
0006317821.tif 000028
【図２５】
0006317821.tif 000029
【図２６】
0006317821.tif 000030
【図２７】
0006317821.tif 000031
【図２８】
0006317821.tif 000032
【図２９ａ】
0006317821.tif 000033
【図２９ｂ】
0006317821.tif 000034
【図３０】
0006317821.tif 000035
【図３１】
0006317821.tif 000036
【図３２】
0006317821.tif 000037