(57)【要約】      （修正有）【課題】大容量記憶媒体においてデータの暗号化／復号化を行う方法を提供する。【解決手段】関連キーを含む多数の異なる暗号化／復号化アルゴリズムを、ハードディスクドライブにおけるブロック／セクターのような、媒体の異なる記憶エリアで利用でき、それによってデータの安全性をかなり増す。加えて、データの安全性を更に増すため前記キーを乱数と組み合わせる方法、ブロック／セクター番号が関連キーと乱数を含むアルゴリズムを選択するために使用され、ｅメール、ネットワークトラフィックなど、及び別のタイプの電子データを暗号化／復号化するためにも利用できる。確定したキーキャリアに関連して確定したオペレーションシステム及び／または環境を、ディスクシステムのマスターブートレコードを変えることによって選択するためにも使用される。【選択図】図２
2011141883.tif 000002
【特許請求の範囲】
【請求項１】
大容量記憶媒体への又は大容量記憶媒体からのデータストリームの暗号化（暗号にする、スクランブルする）／復号化（復号する、逆スクランブルする）方法であって、データストリームが複数のデータ項目から成り、各それぞれのデータ項目がデータストリームに含まれる一意の関連した物理的アドレスをもち、該物理的アドレスが、それぞれの関連したデータ項目を記憶又は検索できる、大容量記憶媒体における場所を画定する方法において、
大容量記憶媒体を複数のセグメントに分割し、各それぞれのセグメントが、連続して物理的にアドレス可能で読取り可能で／書込み可能である記憶場所を備え、各それぞれのセグメントが、大容量記憶媒体の下方の物理的アドレス及び上方の物理的アドレスによって境界決めされ、それぞれ下方の物理的アドレス及び上方の物理的アドレスの各々が、各それぞれのセグメントの一部であり、
複数の暗号化／暗号化アルゴリズムを、大容量記憶媒体を分割する複数のセグメントの各それぞれのセグメントと関連付け、複数の暗号化／暗号化アルゴリズムの同一のものが異なるセグメントに関連付けでき、
複数の暗号化／復号化キーを、大容量記憶媒体を分割する複数のセグメントの各それぞれのセグメントと関連付け、
データストリームが大容量記憶媒体に向って流れる場合には、各それぞれの関連したデータ項目の物理的アドレスを、大容量記憶媒体を分割しているそれぞれの下方の物理的アドレス及びそれぞれの上方の物理的アドレスと比較し、それにより関連した物理的アドレスの該当する境界セグメントを特定し、
特定したセグメントを用いて、そのセグメントの関連した暗号化アルゴリズム及び相応する関連した暗号化キーを選択して、データ項目を暗号化した後、関連した物理的アドレスで規定したアドレスで、大容量記憶媒体にデータ項目を記憶し、
データストリームが大容量記憶媒体から流れる場合には、各それぞれの関連したデータ項目の物理的アドレスを、大容量記憶媒体を分割しているそれぞれの下方の物理的アドレス及びそれぞれの上方の物理的アドレスと比較し、それにより物理的アドレスの該当する境界セグメントを特定し、
特定したセグメントを用いて、関連した復号化アルゴリズム及び相応する関連した復号化キーを選択して、データ項目を復号化した後、大容量記憶媒体からデータ項目を転送し、
前記アルゴリズム及び前記関連したキーを選択する段階が、
前記上位アドレス限界と下位アドレス限界を対で並べることによって、複数のアドレス可能なエリアの複数のスパンをコレクションする段階と；
一つのアルゴリズムが大容量記憶媒体のアドレス可能エリアの一つ以上のスパンに使用できるように、複数のアドレス可能なエリアの複数のスパンの可能性を除外しない、複数の前記アルゴリズムの一つだけに、複数のアドレス可能なエリアのスパンの前記コレクションにおける一入力がリンクされるようにリンキングを行う段階と；
データ項目のアドレスを、前記コレクションにおける前記上位アドレス限界と下位アドレス限界の全てと比較し、それによって前記データ項目の前記アドレスを包囲する上位アドレス限界と下位アドレス限界の対を検知可能に探索する段階と；
前記データ項目のアドレスの包囲についての情報を含んだ信号又はメッセージを発生し、それにより複数のアドレス可能なエリアのスパンとアルゴリズムとのリンキングを用いることによって、複数の前記暗号化／復号化アルゴリズムの適切な一つを識別する段階；
を含むこと
を特徴とする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データを安全に暗号化（暗号にする）、スクランブル、復号化（復号する）及び逆スクランブルする方法、更に詳しくは、大容量記憶バスによって、デジタルカメラ、デジタルサウンド／ビデオレコーダー（コンピューターシステムと称する）に接続された、ディスクユニット、テープユニットまたは別の電子的／機械的／光学的な大容量記憶媒体（大容量記憶装置）のような、大容量記憶装置に書き込むか、それから読み取る時、安全にデータの暗号化及び復号化する方法に関するものである。
【背景技術】
【０００２】
コンピューターシステムは、大容量記憶装置にプログラムとデータを記憶している。そのような記憶データへの権限のないアクセスが知られており、その脅威が増している。そのような記憶情報を保護する通常の方法は、コンピューターシステムのユーザーからユーザーネームとパスワードを要求することで、それによってデータに対する権限のないアクセスを避けている。
【０００３】
標準的なユーザー確認方法がないと、権限のない人間が大容量記憶装置に記憶された情報のどの部分にもアクセスしても、殆ど気付かなく；権限のない人間が、（外部の大容量記憶ユニットを具備した数個のシステムにおいて、とても簡単に）コンピューターから記憶装置を取り外すことができ、その記憶装置を別のコンピューターシステムの中に入れて、大容量記憶ユニットに記憶された情報を読み込み／使い、任意にデータを変更すること（不正手段）さえもする。大容量記憶データの盗みは実質的に増加しており脅威である。
【０００４】
情報を大容量記憶媒体に記憶する前に、暗号化によって情報を安全にすることが知られている。暗号化されたファイルまたはデータセグメントは、それらを使用する前に、復号化しなければならない。データが書き込まれて記憶ユニットに戻される時、データを再び暗号化しなければならない。このプロセスは、ユーザーにとって特別な手順を運用させることになるが、そのような予防措置が使用にとても効果的であるため、よく利用されている。
【０００５】
また殆んどのコンピューターオペレーティングシステムでは、現在処理中の情報の作業ファイル（スワップファイル、テンポラリーファイル）を使用するように構成されている。機密データは作業ファイル内に利用可能なように残ることができる。ユーザーがジョブを終了して、データがディスクに書き込まれて、暗号化され、安全になったと思っても、その分野の専門家はデータと資料を作業ファイルから抜き取ることができる。
【０００６】
それらの作業コピーが削除された時でも、普通は削除が大容量記憶媒体でエリアをマークするだけで、データを自由に使えて、消去していないので、作業コピーは未だ修復可能である。確実にデータを消去するには、媒体をランダムデータで何度も書き込まなければならず、それで確実に大容量記憶媒体の削除部分で利用可能な情報をなくすようにしている。この手順は大容量媒体の機密である。上記の例が媒体の磁気タイプに関して典型的なものであり、電子／機械／光学的な媒体とは異なっており；書き込みはフラッシュ媒体（flash media）の寿命を劇的に縮めるので、フラッシュ媒体へ何回も書き込んで戻すことはできない。
【０００７】
それらの手順は、大量のコンピュータープロセッシング及び特別に設計されたソフトウェアの使用を含んでいる。
【０００８】
ソフトウェア暗号化プログラムを使用すると、それを処理する時、割り当て済み暗号化キーが露呈される。権限のない人間、ウィルスプログラム、スパイプログラムなどが、それらの露呈したキーを使用して、記憶されたデータを復号化し得る。
【０００９】
大容量記憶データを安全にして上記いくつかの欠点を避けるために、大容量記録装置における全ての記録データを暗号化し、そのような大容量記録装置から読み出される全てのデータを復号化することが可能であることは知られている。
【００１０】
この考えの利点は、大容量記憶装置における全てのデータが、常に暗号化されることである。これは専用プログラムを実行させ、大容量装置へ、またそれからのデータストリームを処理することによって、達成される。
【００１１】
しかし前記のプログラムを記憶しても、暗号化できない。なぜなら大容量記録装置に記録された情報を復号化できるようにするためには、コンピューターシステムがプログラムの実行を読み取り、スタートできるようにする必要があるからである。もし大容量記録装置に記憶された全ての情報を、暗号化しようとすれば、そこに記憶されたデータを暗号化しないで、プログラムを第二記録装置に記憶させる必要がある。そのようなシステムにおける別の明らかな欠点は、暗号化／復号化プロセスの際に、計算機リソースに対して要求すると、コンピューターシステムのユーザーのためのプロセッサリソースを多く失わせ、暗号化キーを使用する時に暗号化キーを露呈したままになる。
【００１２】
米国特許明細書第5,513,262号（van Rumpt 等.）は、電子装置をコンピューターシステムと大容量記憶装置を接続するバスに挿入することによって、コンピューター内の大容量記憶装置を往来して送信されるデータを、暗号化し復号化する電子装置を開示している。
【００１３】
接続バスは、例えばハードディスクドライブコントローラーに関する指令コードを流す。指令は、電子装置によって認識され、装置は指令を変えないで通し、その間にコードが電子装置の中の大容量記憶装置を往来する時、データはフライにおいて暗号化／復号化される。
【００１４】
暗号化／復号化は、暗号化／復号化アルゴリズム（DSE）と暗号化／復号化キーを電子装置の中を通るデータストリーム（データの流れ）に供給することによって、達成される。しかしその明細書では、キーを安全な方法で符号化／復号化装置に入れる方法を開示していない。
【００１５】
一つの可能な解決手段は、ユニットの中でハードコード化されるキーであるが、もし例えば使用したキーが偶然に露出されるなら、置換可能なキーがより好ましい。暗号化／復号化装置の製造は、全ての使用コードのトラックを保持必要もあり、もし例えば使用する電子装置が破損すると、記録データにアクセスするためにはそれを取り替えなければならない。従って、ハードコード化キーを特別な装置にリンクさせるインデックスが必要で、それ自体の安全性に危険がある。
【００１６】
キーの置換は、キーをコンピューターシステムから電子装置へ、コンピューターと大容量記憶装置との間の相互連結バスを介して転送することを含んでいる。その手段はコンピューターシステム内の中央プロセッサユニットを具備している。コンピューターシステムに寄生する、ウイルス、ワームまたはトロイの木馬コード（Trojan code）のような不当なソフトウェアが、キーの転送時に乗っ取られ、暗号化が危険にさらされ得る。
【００１７】
英国特許出願明細書GB 2,264,374は、ホストコンピューターと大容量記憶装置との間に挿入される別の装置を開示している。データが数個のデータバッファの間を流れ、それは低速テープ記録システムに受け入れ可能であるが、装置の構造は最新の高速ハードディスクドライブに役立たない。更に符号化／復号化は記憶部分におけるデータブロック機構に依存し、それにより暗号化／復号化装置コンピューターシステムを独立させる。しかしその特許明細書は、個別端子を開示しており、そこではコンピューターに中央プロセッシングユニットを具備してなく、オペレーターが暗号化／復号化キーを符号化／復号化装置に直接入れることができる。スマートカードのような個別キー記憶媒体からの個別チャンネル供給キーを使用しても、データストリームを危険にさらし、そして／または操作され得る。
【００１８】
従来技術の主な欠点の一つは、これまで知られている全ての方法が一つのアルゴリズムと一つのキーを、記憶媒体の全内容に利用していることである。等しいデータの集合が、キーと使用されている暗号化方法を解読するために使用できる同じパターンで、暗号化しようとしている。シナリオを描写する簡単な例は、英語“is”が例えば“ce”に暗号化される。“is”が英語のテキストにおいてよくあるフレーズであること、この二文字の組み合わせが文章内でかなりよく出る第二のフレーズであること、を認識することによって、この観察とパターンは使用されているコードを解読する助けになる。
【発明の開示】
【発明が解決しようとする課題】
【００１９】
添付した特許請求の範囲と本発明の実施形態の例に記載した本発明は、コンピューターシステムまたは類似のシステム環境において大容量記憶媒体を往来する、暗号化／復号化データを記録及び検索できるように、改善した方法を提供する。
【課題を解決するための手段】
【００２０】
本発明は、多数の暗号化／復号化アルゴリズム及びキーの一つで、大容量記録媒体におけるアドレス付け可能なエリアに配置されたデータを、暗号化、復号化できる方法を提供し、そこでデータ項目に使用されている現行のアルゴリズム及びキーの選択が、大容量記録媒体において前記アドレス可能エリアをスパン化する上位アドレス限界と下位アドレス限界の物理的なアドレスを基にする。
【００２１】
本発明の実施形態による装置の構成は、フライにおいてｅメールまたは別のタイプの電子メッセージを暗号化／復号化のために使用できる。キー及びそれに対応するアルゴリズムは、公開キーと私用キーを提供するシステムにできる。この方法で、ｅメールによる人の連絡が、彼等独自の私用キーと、メッセージを公開キーとアルゴリズムで暗号化して情報を交換することによって、メッセージに対する保護チャンネルを確立することができる。
【発明の効果】
【００２２】
本発明の好ましい実施形態において、同じ大容量記憶媒体に記憶された時でも、異なるオペレーティングシステムを全体的に独立且つ分離でき、適切なキーをそのオペレーティング環境のために本発明による装置に挿入すると、コンピューターシステムの中にだけロードできるような、方法を提供する。本発明の一実施例において、コンピューターシステムのユーザー／管理者が、キーを保護チャンネル上の暗号化／復号化装置に転送するキーキャリアに記憶され暗号化された独自のキーを有する。この構成は、ユーザー／管理者に独自のデータファイルと許容オペレーティング環境にアクセスできるようにする。そのようなキーが装置から削除されると、本発明の好ましい実施形態により実行される可能な動作が、以下の中の一つであり得、それはコンピューターを閉じること、直ぐにコンピューター内のプログラムの実行を停止すること、事前に決められた時間間隔の後でプログラムの実行を停止させるか、またはコンピューターシステムを再ブートするまで、コンピューターを作動させたままにすることである。この点で、ブートが再びスタートする時、キーが必要になる。本発明の特別な実施形態による方法は、従来技術を超えてコンピューターサーバーシステム内のデータの安全性を実質的に改善したものである。
本発明の特徴は、キーを本発明の実施形態において動作する暗号化／復号化アルゴリズムに与えるため、安全で干渉しない方法を提供することである。
【図面の簡単な説明】
【００２３】
【図１】本発明の実施例の一例の概略図。
【図２】暗号化／復号化キーをスマートカード、または別のタイプのキーのキャリアから、本発明による装置へ伝えるための保護チャンネルの概略図。
【図３】本発明の好ましい実施例による電子装置における機能装置の概略的なレイアウトと相互接続の図。
【図４】本発明の一実施例による暗号化プロセス。
【図５】本発明の一実施例による暗号化プロセスの図。
【図６】本発明による暗号化プロセスの好ましい実施例。
【図７】図３に示された本発明の実施例によるコンパレーターシステムの概略図。
【図８】ディスクシステムのマスターブート記録を交換可能な本発明によるシステム。
【発明を実施するための形態】
【００２４】
大容量記憶装置が、（ケーブル、銅、またはファイバーなどのような）大容量記憶バスによって、コンピューターシステムに接続され、大容量記憶バスがデータ、制御コード及び、大容量記憶装置とコンピューターシステムとの間の状況コードを伝える。
【実施例１】
【００２５】
そのようなバスシステムと、この目的に私用されるプロトコルに幾つかのタイプがある。それらの一例は、SCSI、IDE、AT、ATA、USB、Fire Wire、Fiber Channelなどである。それらのバスのタイプは、本技術の専門家によく。知られている
【００２６】
本発明は、それらバスプロトコルの一つかそれ以上を使用できる。
【００２７】
本発明の実施例による電子装置１３が、図１に示されている。大容量記憶バスは、装置１３を通して、コンピューターに連絡しており、装置１３がバスセグメント１１を介してコンピューター１０と連絡する第一端部１２と、バスセグメント１５を介して大容量記憶バス装置１６と連絡する第二端部１４とを備えている。バスセグメント１５は典型的に、本技術の専門家とって明らかなように、標準的な大容量記憶バスプロトコルを使用している。バスセグメント１１は、セグメント１５と同じプロトコルを使用できるが、別に例えば直列バスにでき、その際セグメント１５が並列バスである。装置１３が何らかの方法で、データを受けるか、またはコンピューターシステム１０を大容量記憶装置１６にリンクさせる両方の端部を往来するようにデータを伝達する。セグメント１１を介してコンピューターシステム１０から送信されたデータは、装置１３におけるフライで暗号化され、大容量記憶装置１６からセグメント１５を介してコンピューター１０へ送信されたデータが、同じ装置１３におけるフライで復号化される。本発明の実施例において、セグメント１１とセグメント１５は異なるバスプロトコルを利用しており、装置１３も二つのプロトコルの間の翻訳プログラムとして役立ち、同時にフライにおいてユーザーデータを暗号化／復号化する。
【００２８】
本発明によると、装置１３は異なる方法で構成できる。例えば図３に示したような機能装置は、ハードディスクコントローラーの組込部分として構成できる。この場合、バスセグメント１１は典型的に、大容量記憶バスである。
【００２９】
バス１５は典型的に、ハードディスクドライバーシステムに直接接続するように画定される。
【００３０】
本発明による実施例の別の例において、装置１３はコンピューターシステムのマザーボードの一部になるように設計された回路である。典型的にバスセグメント１１は、マザーボードの内部バスを画定することにより実行されるか、マザーボード、例えばダイレクトメモリーアクセスチャンネル（Direct Memory Access channel）におけるプログラム可能な入力／出力装置との接続に合わせて作られている。バスセグメント１５は大容量記憶バスである。
【００３１】
コンピューターシステムと大容量記憶装置との間で転送されるデータを、二つのカテゴリー：コマンド／コントロールコードとユーザーコードに分けることができる。コマンド／コントロールコードはすべて、状況コード、フォーマッティングコード及び、大容量記憶媒体のデータ編成を特定するコードを含んだ、大容量記憶装置のコマンド／コントロールに関する情報であり、そのオペレーションを行うためのもので、そのロケーションを媒体などに使用するためのものである。
【００３２】
コマンド／コントロールコードが、バス１１から装置１３の第一端部１２を介して読み込まれ、そして暗号化または復号化なしで（しかし、ここでは場合によって選択的に行われる）、バス１５への第二側部１４に関する装置１３によって読み込まれる。大容量記憶装置コントローラーが、大容量記憶装置の製造仕様に関連してそれらのコマンド／コントロールに作用する。選択的な指示コマンド／コードの構成が装置１３に作用して、装置１３の内部で暗号化キー、アルゴリズムと、別の操作関数及び特徴を選択する拡張コントロール／コードを送信するために使用される。
【００３３】
そのようなコマンド／コントロールコードを認識する方法の方式を、普通は大容量記憶バスプロトコルで特定される。
【００３４】
しかし、いくつかの大容量バスプロトコルにおいて、コマンド／コントロールコードを拡張して、装置１３に作用させることが不可能である。本発明の実施例の別の例において、大容量記憶媒体における未使用エリア、典型的に記憶装置制限（隠れエリア）において、データの幾つかのブロックを“借りる”ことが可能である。装置１３はコンピューターへの接続ウィンドウのようなエリアを使用でき、本技術の専門家にとって明らかなように、そこでコマンド／コントロールコードを拡張するのと同じ方法を使用できる。コンピューターシステムと装置１３は、メッセージ（コマンド、指示、データなど）をウインドウを通して互いに読み込み、書き込みできる。
【００３５】
図３を参照すると、ユーザーデータは大容量記憶媒体に記憶されるデータである。DES、AESなどのような暗号化アルゴリズムを上手く文書化するため、暗号化と復号化が、入力としてユーザーデータを送信することによって行われる。本発明によると、暗号化／復号化装置１３が、装置１３において、電子暗号化／復号化回路セクションを構成している別々のハードウエアセクション４１ａ、４１ｂ、４１ｎに接続する内部暗号バス（internal crypto bus）３２を有しており、装置１３はユーザーデータインプットフローに互いに結びつく特別なアルゴリズムを実行させ、装置１３の内の内部バスを介して、装置制御部分３０の監視の下に、第一端部１２と第二端部１４を往来させるように流す。本技術の専門家にとって、各アルゴリズム例えば最大速度の考察のために例えば有線プロセッサ構成において、４１ａ、４１ｂ、４１ｎが既知のアルゴリズムのどれか一つを実行するが、特に軍事的な用途、衛星通信など（例えばスクランブルアルゴリズム）の特別な要求に関しても特別に発展的な解決手段が、実行できることは、容易に理解されよう。
【００３６】
本発明のまた別の実施例において、アルゴリズムをマイクロコントローラー構成部において実行することができ、特定のアルゴリズムを選択する動作が、マイクロコントローラーにおいて別々のプログラムカウンター内容をロードすることによって実行される。前記プログラムカウンター内容の各々は、共通のプログラムメモリーに記憶された各アルゴリズムのスタートアドレスに対応している。プログラムメモリーは、例えばコンピューターシステム１０によりパワーアップ時間で初期化される、固定した非揮発性メモリーまたはランダムアクセスメモリーであり得る。そのような転送も、暗号化でき、且つ／または本技術の専門家にとって明らかに、正確な証認手続を受けることができる。
【００３７】
大きな大容量記憶装置は、データを編成してコンピューターシステムによって管理できるようにし、ユーザーまたはアプリケーションプログラムに関する機能ファイルシステムを提供する必要がある。一般的に、基本フォーマットは媒体のブロック／セクター分割である。一般的に、ファイルシステムのように機能的な大容量記憶ソリューションを構成するため、大容量記憶媒体上のエリア内にアドレス可能ユニットを具備したアドレス可能エリアを有する必要がある。大容量記憶媒体におけるアドレス可能エリアは普通、媒体の連続する物理的なアドレス可能エリアであり、アドレス可能エリアのスパンを定義する下位アドレスと上位アドレスによって制限される。大容量記憶システムは通常、例えば異なるタイプの記憶エリアとシステムを定義する理論層の階層に配置される。その一例がRAIDディスクシステム定義である。そのようなエリアに対するアドレスは通常、論理アドレスに関連する。本発明において全ての基準がアドレス、すなわち媒体における物理的アドレスの最下位レベルである。本発明の実施例は、全ての種類の論理記憶層とシステムを物理的媒体の頂部で使用できる。
【００３８】
本発明の好ましい実施例によると、そのようなアドレス可能エリア（ブロック／セクター）は、それ独自の暗号化キー及び／またはアルゴリズムによって暗号化できる。装置１３におけるブロック４０は、ブロック／セクター番号のようなエリアのアドレスを受け、大容量記憶装置１６に記憶されるか、それから読み出されるデータ項目に関するアドレス（エリア内のサブアドレス）との数の比較を基に、セクション４１ａ、４１ｂ、...、４１ｎにおいて実行されるアルゴリズムの一つを選択する。図７は、コンパレーター回路４０を図示している。データのブロックの先頭アドレスと終端アドレス（媒体におけるアドレス可能エリアの制限）を、“Start Block”と“Stop Block”として個々にコンパレーター４０に記憶する。ユーザーデータ項目のアドレス（エリア内のサブアドレス）を受けると、ユーザー項目アドレスを前記“Start Block”と“Stop Block”アドレスと比較する。もしユーザーデータ項目アドレスが、“Start Block”と等しいか、それよりも大きく、ユーザーデータ項目アドレスが“Stop Block”と等しいか、それよりも少ないと、コンパレーター回路４０におけるブール演算ANDがこの状態を検知して、“is mine”信号をアルゴリズムセクション４１ａ、４１ｂ、...、４１ｎの一つへ送信し、それらは特に“is mine”信号で、真であればアルゴリズムを動作できるように接続される。また信号が偽であれば、前記のアルゴリズムの実行を止める。
【００３９】
本発明の実施例において、配線プロセッサアルゴリズムセクション４１ａ、４１ｂ、...、４１ｎが、アルゴリズムセクションにあるのと同じ数のメモリーセルを具備したメモリーエリアを含んでいる。“is mine”信号を特定のアルゴリズムセクションにリンクさせることは、アルゴリズムセクションの数、でなければ０のアドレスを有したセルに論理１を入れることによって、行われる。各コンパレーターからの各“is mine”信号を、“is mine”信号の数のような対応するアドレスと組み合わせることによって、アルゴリズムの選択は相互交換プログラム可能である。
【００４０】
マイクロコントローラーによるアルゴリズム選択の実施例において、関連する“is mine”信号を有したプログラムカウンターの関連する適切な内容が、選択及び相互交換可能なプログラミングを行うことができる。
【００４１】
比較配列法（comparison arrangement）がコンパレーター回路４０においてｎ回繰り返され、ｎ個のセクションの各々に対して一回、アルゴリズムを実行する。
【００４２】
図４は、データ要素（ブロック／セクターまたはアドレス可能エリア）の暗号化の一例を図示しており、そこではデータが異なっても、同じキーが使用される。
【００４３】
図５は、図４のような同じ暗号化方式を図示しているが、この例ではデータ要素の中の二つが同じであり、同じキーを使用している。従って暗号化データ要素が同じであり、安全性にリスクがあり得るパターンを構成する。
【００４４】
本発明の好ましい実施例において、コマンド／コントロールコード内のブロック／セクター番号の情報または、特別なアドレス可能エリアに関するコマンドに与えられるアドレス可能エリアについての情報が、ブロック／セクター／アドレス可能エリアに関して独特の任意に発生する数と共に、キーを選択するために使用される（ブロック／セクター／アドレス可能エリアの数とランダム発生表の組み合わせ、もしキーが加算または減算などに関するシンボルであれば、もしキーが数字などであれば、組合せが連結のように構成できる）。この概要は図６で図示されている。
【００４５】
任意に生成した数字が、データの二つの同一ブロック（またはデータのシーケンス）が、図５に示したように同一暗号化されないために使用される。乱数を生成し、ブロック／セクター／アドレス可能エリアの番号によって、アドレス付けされた装置１３内部の表に記憶される。本発明の実施例には、二つの段階、第一段階でコンパレーター回路４０において発生する選択信号“is mine”によって、第二段階でブロック／セクター／アドレス可能エリアの番号で、アドレス付けされる多数の表がある。この構成は、同じブロック／セクター／アドレス可能エリアの番号に関連する同じ乱数を提供し、それによって同じデータ要素の適切な暗号化／復号化を確実なものとし、もし同じデータ要素が発生しても図６のようにキーを使用して、同時に完全なランダムパターンをデータの暗号化フローに提供する。表の内容は、マイクロコントローラー５における装置１３の内部で生成できる。
【００４６】
図３を参照すると、データブロック（データのシーケンス）をディスクに書き込むため、コンピューターがディスクコントローラーに知らせる必要があり、そこでブロック／セクターの番号によるデータを書き込む。暗号化／復号化装置は、装置１３の一部分１２を介してブロック／セクター／アドレス可能エリアの番号と共に、コマンドを受け取る。装置１３のプロトコル解釈部分３０が、これをコマンドとして認識し、装置１３の部分１４へ、その内部データ経路を介して供給する。プロトコル部分３０もこの情報を記憶しており、それを装置１３の内部のコンパレーター回路４０へ、上記のように（“Start Block”と“Stop Block”アドレス、ユーザーデータ項目のアドレスなど）送る。
【００４７】
コンピューターが書き込みコマンドを送信する時、プロトコル部分３０が書き込みコマンドを部分１４へ送信し、プロトコル部分３０をデータ転送するためにセットする。そして、コンピューターがデータ送信を始める。プロトコル部分３０が、部分１２からバス１１を介してデータを収集し、それを32ビット（内部暗号バス３２のサイズであるが、そのサイズに限定されない）に積算し、データを暗号バス３２へ通す。コンパレーター回路４０は適切なアルゴリズムセクションと関連キーを操作可能にし、データを暗号バス３２上で適切なアルゴリズムセクション４１ａ、４１ｂ、...、及び４１ｎを通らせる。
【００４８】
データが大容量記憶装置１６から読まれる時、コンピューターが読み込みコマンドを送信し、プロトコル部分３０がデータフローを配列して、上記と類似の方法で、装置１３の内部の適切な復号機能によりデータが大容量記憶装置からコンピューターへ読めるようにする。
【００４９】
読み込み／書き込みデータ通信が始まる時、異なるアルゴリズム（“Start Block”と“Stop Block”アドレス）で暗号化される、大容量記憶媒体におけるアドレス可能エリアに記述するコンパレーターのセットを収容したコンパレーターセクション４０が、現行セクターに対応する出力信号“is name”を送り、それによって適切なアルゴリズムセクション４１ａ、４２ｂ、...、４１ｎと関連キーを選択する。
【００５０】
暗号化／復号化アルゴリズム４１ａ、４２ｂ、...、または４１ｎが、それらをビットサイズ、アルゴリズムの使用に関して整えるデータの収集を始める。適切な数のビットが集められると、データが、コンパレーター回路４０によって選択された現行アルゴリズムセクション４１ａ、４１ｂ、...、４１ｎを通して送信される。暗号化／復号化の後、データが暗号バスビットサイズに分割され、現行アルゴリズム４１ａ、４１ｂ、...、４１ｎの出力から送信されて暗号バス３２へ戻り、プロトコル部分３０へ下がり、データをバス１５または１１のビットサイズに分割し、データをコンピューター１０（復号化）または大容量記憶装置（暗号化）へ送信する。新しいデータブロックが始まると、暗号化セクション４１ａ、４１ｂ、...、４１ｎも、コンパレーターから情報を得、ＣＢＣまたは安全性を広げるために別の符号化機能を使用できる。
【００５１】
プロトコル部分３０は、必要な“ハンドシェーク”信号も全て送り出し、それはバスセグメント１１及び１５の一部である。
【００５２】
本発明による方法は、一定の暗号化／復号化アルゴリズムに記述するように限定されるものではない。セクション４１ａ、４１ｂ、...、４１ｎが、データのアルゴリズムまたはスクランブルの何れのタイプでも、全て実行できる。本発明の好ましい実施例において、各セクション４１ａ、４１ｂ、...、４１ｎが、特別なアルゴリズムに関連するキーについて記憶“スロット”を有する。
【００５３】
本発明の最高形式の実施例において、図１及び図２に示したような装置を実行し、信号“is mine”がコンパレーター回路４０によって選択された現行アルゴリズムを実行するセクション４１ａ、４１ｂ、...、４１ｎを選択する時、キーがメモリー割り当ての際に各セクション４１ａ、４１ｂ、４１ｎに、相互交換可能且つ取り替え可能に配置され、それは図７に示しているコンパレーターシステムによって選択される。
【００５４】
本発明の好ましい実施例による暗号化／復号化システムを初期設定することは、記憶媒体の異なるブロック／セクターまたはアドレス部分に使用するため、スタートブロックアドレス、ストップブロックアドレス、キー及びそのアルゴリズムセクション４１ａ、４１ｂ、...、４１ｎのインジケーターを提供することを含んでいる。図２はスタートブロックアドレス、ストップブロックアドレス、キー及びアルゴリズムインジケーターを含んだ、スマートカード６３ａ（キーキャリア）を読み取るスマートカードリーダー６１ａを具備したシステムを示している。この情報を装置１３に提供する別の手段、赤外線通信リンクまたは無線リンク６２ｂなどが、本発明によると使用できる。
【００５５】
装置１３が起動する時、内部マイクロコントローラー５１がキーキャリア６３ａからキーを集める。マイクロコントローラーがキーを、安全セクション４２を介して適切な暗号化セクションへ送信する。もしマイクロコントローラー５１が誤動作コード実行中にスタートしても、安全セクションは、キーが破壊されるのを防止する。マイクロコントローラーは、コンパレーター値もロードする。
【００５６】
内部ラム３１（ランダムアクセスメモリー）は、大容量記憶装置のアドレス部分と同じ方法で構成されている。それにより本発明に関連して装置の共通の特徴全てが、ラムの内容に適用できる。
【００５７】
上記のような機能性を利用するため、上記のような拡張コードがデータのブロックを往来するか、ラム３１またはバスセグメント１１を介して往来するか、大容量記録装置１６をバスセグメント１５を介して往来して転送するために利用できる。ラム３１にアクセスする別の方法は、それをディスク境界線の外のメモリー場所として使用することで、それによって、たとえ隠れていても、ディスクシステムの一部のようにメモリーにアクセスする。それらの動作はプロトコル部分すなわち装置コントローラー３０によって制御される。
【００５８】
ラム３１ができる一つの動作は、例えばラムが満杯の時、中断を内部マイクロコントローラー５１に送信することである。マイクロコントローラー５１はその時にラム３１からのデータを読み込むことができ、データをプロセッシングする。マイクロコントローラーは、ラム３１に書き込むこともできる。コンピューターシステム１０は、ラム３１からのデータを読むこともできる。簡単な通信プロトコルを生成することによって、マイクロコントローラー５１と通信できる。本発明の好ましい実施例において、そのようなプロトコルが実行され、またマイクロコントローラー５１が、コンピューターシステム１０を介してマイクロコントローラーとキーキャリア６３、６５の両方への通信チャンネルと、装置１３の内部に直接つながる通信チャンネルを有している。それらの通信チャンネルは、キーキャリア６３、６５にキーをロードするため、並びにアルゴリズムセクション４１ａ、４１ｂ、...、４１ｎにキーをロードするために使用される。
【００５９】
いずれを実行しても、ラム３１は幾つかの有利な適用法で利用できる。本発明の一実施例において、ラムはｅメールまたは別のタイプの電子データ、ファイル、ネットワークトラフィックなどを、ラム３１にロードし。一つの選択セクション４１ａ、４１ｂ、...、４１ｎにおいてラムの内容を暗号化し、暗号化したデータを読み込んでコンピューターシステム１０へ戻し、そこでデータに対する更なる動作が行われる。もしデータの長さがラム３１の長さがラム３１のサイズを超えるなら、通信プロトコルがデータと通信プロトコルを分割して、データの最後まで上記のようなプロセスを介して、データの別のセクションをループする。
【００６０】
暗号化ｅメールまたは別のタイプのデータは例えば復号化する必要があると、コンピューターシステム１０の使用が、ｅメールデータまたはデータをラム３１にロードする必要がある。そして装置１３が好ましいアルゴリズムを実行し、復号化されたｅメールをコンピューター１０へ戻すように転送する。この操作用のキーは、安全システムを提供する公用／個人用のキーシステムであり得、安全システムはそこで、本発明によるとキーが暗号化されて、本開示の記載されたような装置１３へ転送される時に、キーを決して見せない。
【００６１】
本発明の重要な特徴は、暗号化したキーを確実に取り扱えるようにすることである。本発明の好ましい実施例において、先ずキーをコンピューターシステム１０からマイクロコントローラーへ転送する。その時、装置１３がキーを選択的に暗号化でき、そしてマイクロコンピューター５１が転送でき、暗号化したキーをキーキャリア６３、６５、例えばスマートカードにロードし、この簡単な方法で本発明による方法が、保護チャンネルを提供し、システム内で使用される暗号化した暗号化キーを転送する。
【００６２】
本発明の重要な特徴は、スマートカードのようなキーキャリアで暗号化したキーを使用することである。キーキャリアが技術的に、“隠れ”データ内容をキャリア内に入れる。この特徴は、キーの安全性を高める。キーキャリア記述の更に重要な特徴は、キーキャリア自体にセッションのためのランダム暗号化キーを生成させることが可能なことである。この方法で、全てのキープロセスが人によるどのような動作の介入もなしに進行し、それによってキーの安全性が、また更に増す。
【００６３】
キーを運ぶキーキャリア６３、６５が、保護通信チャンネル６０を介して装置１３へ直接接続される。キー装置インターフェース６１は、例えば専用のスマートカードリーダーであり得る。別のタイプのキャリアに関して、それはＩＲトランシーバー、無線トランシーバー、または別な類似の装置にすることができる。
【００６４】
キーが、外部装置６５または６３に記憶されている。装置１３の内部、非揮発性メモリー５２、５３にキーデータを記憶する方法もあり、ユーザーは認証手続を使用して、それらのキーを操作可能にする（この手続は別の安全プロダクトと共に行うことができる）。
【００６５】
本発明は、キーキャリア６３、６５を往来するデータを暗号化することによって、外部キーのロードを保護する。本発明は、キーキャリア６３、６５の検知後、装置１３が公開キーをキーキャリア６３、６５に送信する。そしてキーキャリア６３、６５が公開キーによって、装置１３に対するセッションキーを暗号化して、装置１３とキーキャリア６３、６５が通信を開始する。別の方法が、キー交換方式（例えばDiffie-Hellman）を使用して、セッションキーを定義する。セッションキーは、通信チャンネル６０において全てのデータを暗号化する。本発明は、チェックメッセージをキーキャリア６３、６５へ送信し、確実にキーキャリア６３、６５とキー装置インターフェース６１がオンライン状態のままである。このチェックメッセージが、ランダム時間間隔で、充分なデータと共に送信され、確実にキー装置インターフェース６１とキーキャリア６３、６５と装置１３が、互いに認証できる。もしキーキャリア６３、６５が不規則性を検知すると、停止される。もし装置１３が不規則性を検知すると、停止される。この方式以外、キーが寿命パラメータを有する。このパラメータは装置１３に、キーを削除した後にどの位長い周期でキーが装置１３で“存続（live）”するかを示す。キーが削除されると、本発明により、寿命が予定時間周期に達する前に、装置１３がキーを停止しない。キーまたはキー装置インターフェース６１により“変更”をその他全て検知でき、装置１３に全てのキーを停止させる。停止は、キーが装置１３からの削除を検知できて、装置１３がキーによって定義された保護エリアにもはやアクセスしないことを意味している。
【００６６】
ここで図８を参照すると、本発明はデータ中断機能も実行でき；それはセクター／ブロックをタグ付けし、ラム３１の内部に内容を記憶し、そして内容を変更するか、または変えることができ、ホストコンピューターシステム１０へ送信される。この機能によって、ディスクシステム上で分割表を選択し、分割表を変えてキーのセットに適合させることができ；例えば別のキーセットがシステムを異なるオペレーティングシステムでブートすることができる。一つにキーユニットが、オペレーティングシステム１を起動でき、別のキーユニットがオペレーティングシステム２を起動でき、オペレーティングシステム１及び２がハードディスクドライブにおいて、互いに分離されている。
【００６７】
これは本社のコンピューターにおいて有利な機能であり、一人以上のユーザーが必要とする別のコンピューターは専門的にデータのアクセス及び保護を必要とする。
【００６８】
図８に示したように、ハードディスクドライブ１６を記憶部分の幾つかの独立した分離エリアに分割できる。ＭＢＲ（Master Boot Record）は必要な情報を入れており、システムがブートされる時、コンピューターシステムが最初にロードされる。ＭＢＲの内容がコンピューターシステムに、オペレーティングシステムをハードディスクドライブからロードする方法を指示する。同じハードディスクドライブにおいて異なるオペレーティングシステム用のＭＢＲを、本発明の実施例によると、暗号化キーと共に例えばスマートカードに記憶できる。上記のように、スマートカード上のＭＢＲを、ラム３１にロードでき、暗号化し、そしてドライブ１３に接続したハードディスクドライブ１６のＭＢＲとして使用される。
【００６９】
本発明は、コンピューターシステムの２段階ブート化法も提供する。第一に、（装置１３において、非揮発性メモリー５２または、スマートカードのようなキーキャリアに記憶される）プログラムコードセグメントを、ユーザー／管理者に認証のための方法を与えるホストコンピューターシステム１０へ送信する。第二に、認証が成功した後、マスターブートセクターをハードディスクドライブからコンピューターへダウンロードする。
【００７０】
本発明は、大容量記憶媒体のアドレス可能な部分に、異なるアルゴリズムと暗号化／復号化キーで記憶されたデータを暗号化／復号化する方法を提供することによって、大容量記憶装置の安全性を増す。
【００７１】
本発明の一つの特徴は、記憶媒体の特定のアドレス可能な部分に一つのキーと一つのアルゴリズムを提供することである。
【００７２】
本発明のまた別の特徴は、特定のキーとアルゴリズムで記憶媒体のそのようなアドレス可能な部分を、暗号化する時、符号化の後に媒体に設定されたパターンのランダム化のためのキーと共に、乱数を提供することによって、もし連続データレコードが等しく、同じキーとアルゴリズムで暗号化されても、安全性を増すことである。媒体のアドレス可能部分のアドレスまたはブロック／セクター番号についての情報によって選択される乱数で暗号化されたデータを復号化する時、使用される特定の乱数を回復させる表に、乱数が記憶されている。
【産業上の利用可能性】
【００７３】
本発明は、特定のオペレーティングシステムとオペレーティング環境を、ハードディスクからコンピューターシステムへ確実にダウンロードするシステムも提供し、そのコンピューターシステムは異なるオペレーティングシステム用のデータファイルと、コンピューターシステムのユーザーとの間も物理的、論理的に完全に分離できる。本発明は、例えばサーバーにおけるデータシステムが盗まれるか削除されて、別のコンピューターシステムへ転送される時、サーバーハードディスクにおけるデータにアクセスするのを防止する、暗号化／復号化方法を提供する。
【００７４】
本発明の別の特徴は、本発明による装置とキーのキャリアとの間に、キーを転送する暗号化した通信チャンネルを提供することである。
【図１】
2011141883.tif 000003
【図２】
2011141883.tif 000004
【図３】
2011141883.tif 000005
【図４】
2011141883.tif 000006
【図５】
2011141883.tif 000007
【図６】
2011141883.tif 000008
【図７】
2011141883.tif 000009
【図８】
2011141883.tif 000010