web-dev-qa-db-ja.com

ハードウェアで暗号化されたフラッシュデバイスが安全である可能性はありますか?

まず、フラッシュデバイス(ペンドライブ)をBitlockerなどのソフトウェアで暗号化する方法を理解しているという事実から始めます。簡単に言うと、暗号化キーは、暗号化および復号化中にユーザーが指定するパスワードで、このソフトウェアは人間とハードウェア間のプロキシのようなものです。

  1. ハードウェアで暗号化されたペンドライブの場合、これはどうですか?例えば。 これ 。 1つalwaysは、そのようなデバイス用のドライバー/ソフトウェアのインストールを必要としますか?

  2. どうすれば安全ですか?暗号化キーはどこに保存されますか?結局のところ、それは物理的にデバイスの内部にある必要があります-さらに、暗号化されていません。では、どうすれば安全ですか?

誰かがそれを説明できますか?

2
Tom

ハードウェアで暗号化されたペンドライブの場合、これはどうですか?例えば。 これ 。 1つalwaysは、そのようなデバイス用のドライバー/ソフトウェアのインストールを必要としますか?

うん、一般的にそのようなデバイスは特別なドライバーを必要とします。ドライバーは、デバイスの読み取り専用で暗号化されていないパーティションに含まれます。リンクしたデバイスは、かなり新しい特定のWindowsおよびMacOSバージョンでのみ動作します。ただし、通常のフラッシュドライブは、ドライバーをまったくインストールしなくてもWindows 98に戻って何でも問題なく動作します。

実際、すべての透過的な(つまり、通常のファイルブラウザーを使用してデータを操作し、通常のファイルシステムにマウントされている)暗号化にはドライバーが必要です。 BitLockerには、サポートされているすべてのバージョンのWindowsに存在するドライバーがあり、BitLockerでフラッシュドライブを暗号化すると、Windowsのバージョンおよびエディションでフラッシュドライブへの読み取り専用アクセスに必要なドライバーを格納するために、暗号化されていない小さな領域が予約されますBitLockerはまだありません。ドライバーは必ずしもカーネルモードである必要はありません-FuseドライバーをサポートしているOSでは、それらを使用できますが、Fuseには独自のカーネルモードドライバーが既にあります。

どうすれば安全ですか?暗号化キーはどこに保存されますか?結局のところ、それは物理的にデバイスの内部にある必要があります-さらに、暗号化されていません。では、どうすれば安全ですか?

なぜ暗号化キーはどこにでも平文で保存されるのですか?!?実際のデータ暗号化キー-「マスター」キー-は、ドライバーの一時メモリ以外の場所にプレーンテキストで保存されることはなく、可能な限り短時間で保存されることが理想的です。マスターキーが永続的に保存される唯一の方法は暗号化され、マスターキーの暗号化に使用されるキーはパスワードから導出されます(強力で遅いパスワードハッシュ機能を使用)。もちろん、Webサイトのパスワードがどこにも保存されないように、パスワード自体も決してどこにも保存されません。マスターキーをパスワードから直接派生させるのではなく、パスワード派生キーでマスターキーを暗号化(「ラップ」)する理由は、すべてのデータを復号化および再暗号化する必要なく、パスワードを変更できるためです。 (マスターキーを再暗号化する必要があるだけです)。

暗号化されたボリュームのロックを解除するプロセスは、次のようになります。

  1. ソフトウェアにパスワードを入力します。
  2. ソフトウェアは強力なハッシュ関数を使用してパスワードを実行し、パスワード検証値を生成します。
  3. ソフトウェアは、パスワード検証が保存されているものと一致することを確認します。そうでない場合は、間違ったパスワードを入力しました。ベリファイアはプレーンテキストで保存されますが、その唯一の目的は、ユーザーが正しいパスワードを入力したかどうかを確認することです。ベリファイアを変更しても、データを解読することはできません(実際、データを解読するのが難しくなります)。
  4. ソフトウェアはパスワードが正しい(ベリファイアが一致する)ことを記録するため、別のパスワードハッシュアルゴリズム(別のソルトを使用した同じアルゴリズム、または別のアルゴリズムで完全に実行される可能性があります)を通じてパスワードを実行します。
  5. この2番目のパスワードハッシュアルゴリズムの出力は対称キーとして扱われ、マスターキーの復号化に使用されます。復号化されたマスターキーは、ソフトウェア(通常はドライバー)のRAMにのみ保存されます。
  6. このソフトウェアを使用すると、書き込みおよび読み取り時にマスターキーを透過的に使用して暗号化および復号化し、ドライブ上のデータにアクセスできます。
  7. ドライブをロックまたはイジェクトすると、ソフトウェアがマスターキー(およびパスワード)をメモリから削除します。

永続的に保存されるのは、暗号化されたデータ、暗号化されたマスターキー、およびパスワード検証のみです。パスワード検証機能を使用して、元のパスワードを取得したり、マスターキーを復号化することはできません。マスターキーは、それ自体が暗号化されている間は、データの復号化に使用できません。攻撃者がパスワードを入手できない限り、データは安全です。

もちろん、キーロガーなどでは、入力時にパスワードを取得できることに注意してください。また、マスターキーはソフトウェアのメモリに保存する必要があるため、攻撃者はソフトウェアのメモリを読み取ることができます(独自の特権の高いソフトウェアを使用するか、RAM =チップ)もドライブを復号化できます。

2
CBHacking

デバイスには、USBからのみ実行できる読み取り専用ソフトウェアが付属している場合があります。これにより、ウイルスなどから保護できます。

いつものように(ドキュメントがないため、これは推測です)、ランダムなキーがディスク暗号化用に生成され、キーは パスワードベースのキー導出関数 を使用してパスワードで暗号化されます。

パスワードはキーボードで入力されるため、安全ではありません。または、コンピューターと同じくらい安全であると言えます。

たとえば、PCにはキーストロークを保存するキーロガーがある場合があります。キーボードの代わりに、マウスを使用してクリックする必要があるスクリーンキーボードを使用する可能性があると主張できます。もちろん、専用の攻撃者がクリック位置も保存する可能性があります。これを軽減するために、ソフトウェアは文字の位置をランダム化する場合があります。ただし、より専用の攻撃では、アクションに気付いたときに、画面のクリック位置の周囲をスナップショットする場合があります。

このすべてを軽減するには、ドライブがLinuxで動作する場合、ブート可能CDを Tails として使用します。その後、あなたはより安全になります。

1
kelalaka