最新のフラッシュドライブのウェアレベリングは非常に複雑なトピックであり大手メーカーはすべて独自のアルゴリズムを考案しているため、一般的な答えを出すのは困難です、しかし私はしようとします。
- 最近のすべてのフラッシュドライブには、OSにアドバタイズされているよりも多くのフラッシュスペースがあります。フラッシュのセクションには、ウェアレベリングと不良セクターの交換にのみ使用されます。これらは、オペレーティングシステムインターフェイスからフラッシュドライブにアクセスできません。
- ブロックは、回転メディアと比較して大きいです。サイズが数MBの消去ブロックがあるのは珍しいことではありません。
- ウェアレベリングは、ブロックあたりの書き込み数averageを同じに維持しようとします。最新のフラッシュドライブでは統計モデルが使用されているため(ファイルはランダムではない方法で自然に書き込まれることが期待されます)、これは短期的にはブロックあたりの書き込み数が同じになることを意味しません。
- 一部のフラッシュコントローラは、フラッシュよりも高速であるため、フラッシュに書き込む前にデータを圧縮します。これにより、ベンチマークでの書き込み速度が向上します。特に、フラッシュドライブに
\0
バイトを書き込んでフラッシュドライブを消去しようとした場合は特にそうです。
したがって、特定のブロックが上書きされたことが保証されている点はありませんが、その可能性は高くなります。では、どのようにしてフラッシュメディアを適切に管理して、特定の敵に対する機密情報の損失を防ぐのでしょうか。
- リムーバブルメディアに保存されるデータを安全な方法で暗号化します。機密データを扱う企業では、あらゆる種類のリムーバブルメディアを暗号化する必要があります(許可されている場合)。
- 暗号化されていないメディアを取得できないように破棄する必要がある場合は、物理的に内部のすべてのフラッシュチップを含むデバイスを破棄します。フラッシュチップを複数のピースに変換するフォレンジックテクニックについては知りません。
- USBフラッシュドライブではなくSSDを扱っている場合は、ATAの安全な消去を実行してみてください。主要メーカーにとって、これらは正しく実装されているようです。
- フラッシュドライブを再利用する必要がある場合、次の最良のオプションは、ドライブにrandomデータを完全に満たすことです回。 Linuxでは、
shred
ユーティリティまたはdd if=/dev/urandom of=/dev/flashdrive bs=1M
を使用できます。 shred
は、複数のパスを実行できるので素晴らしいです。ウェアレベリング用に予約されているセクターを上書きする可能性を高めるには、複数のパスが必要です。