0

私のコンピュータには、ハード ドライブ全体を暗号化するBit Lockerというプログラムがあります。ハードドライブは約 500 ギガバイトです。ただし、同じ読み取りアクション (たとえば、大きなファイルの読み込みなど) を実行するときに、このコンピューターと別の (暗号化されていない) コンピューターとの間に実際の遅延時間はまったくありません。

これがどのように可能になるのか興味があります。ディスク上のすべてが高度に暗号化されている場合、読み取りまたは表示する前にすべてを復号化するのにかなりの処理時間がかかるのではないでしょうか? 毎回 500 ギガバイトのデータを復号化すると、起動時にばかげた待ち時間が発生するため、明らかに、ディスク上のすべてが起動時に自動的に復号化されるわけではありません。ローカルの復号化されたキャッシュがどこかにある可能性があると思いますが、それはそもそも暗号化の目的を無効にしないでしょうか?

注: この特定のプログラムがそれをどのように達成するかを尋ねているわけではありません。それはほんの一例です。むしろ、暗号化されたディスクが、人間が認識できるほどのラグ タイムをほとんど (またはまったく) 発生させずに効率的に読み書きできる方法に興味があります。

ありがとうございました!

明確化:データの個々のブロックを個別に暗号化/復号化できることを知っています。ただし、(PDF や Word ファイルなどを開くことによって) 読み取りを実行するたびに、読み取り中のデータに対して復号化アルゴリズム実行する必要がある場合、これにより顕著な遅延時間が発生するようです (たとえば、はるかに「遅い」コンピューター)。ただし、そうではないようです。なぜ、どのように?

4

2 に答える 2

3

ディスクからブロックを読み取るとき、CPU は I/O が完了するのを待って、まったく何もせずに多くの時間を費やします。

CPU が他のことでビジーでないと仮定すると、前のブロックのかなりの処理を次のブロックの待機に費やす時間に合わせることができます。復号化が十分に高速であれば、適切な量のデータを読み取るための全体的な時間は、復号化の影響をほとんど受けません。「十分な速さ」は、I/O 速度に対する CPU 速度、および読み取り中に CPU がアイドル状態のコアをいくつ持っているかによって異なります。

BitLocker の復号化は十分に高速だと思います。PDF を開く場合、復号化のコストがページのレンダリングのコストと比較して取るに足らない可能性があるという 2 つ目の可能性があります。そのため、ファイルを読み取るための全体的な時間が増加したとしても、必ずしも気付くとは限りません。

于 2012-08-28T15:26:27.083 に答える
1

ドライブ全体を単一のストリームとして暗号化する代わりに、個々のデータブロックを暗号化できます。これが機能するのは、暗号化によってデータのサイズが変更されるのではなく、その内容のみが変更されるためです。これらのブロックは個別に読み取られ、オンザフライで復号化されます。

于 2012-08-28T13:33:52.623 に答える