私はこれにかなり困惑しています。
私はWindowsVistaを使用しており、 truecrypt バージョン6.2aのシステム暗号化とC:のみの起動前認証を実行しています。暗号化されていないD:があります。
knoppix の使用マシンをLinuxで起動し、dd
コマンドを使用して、暗号化されたC:ドライブを同じブロックサイズのUSBドライブパーティションにバイトごとにコピーしました。
Windows Vistaを再起動し、truecrypt GUIを使用して、マウントするボリュームとしてUSBドライブパーティションを選択しました(\Device\Harddisk1\Partition2
)。次に、「読み取り専用としてマウント」、「バックアップヘッダーを使用」、「起動前認証なしでシステム暗号化を使用してパーティションをマウント」などのオプションの任意の組み合わせを試しました。私はこの最後のオプションが機能することを期待していました。ただし、パスワードを入力すると、「パスワードが間違っているか、TrueCryptボリュームではありません」というメッセージが表示されるたびに入力します。
だから、質問:
どうもありがとう。
これは非常に重要です! TrueCryptシステム暗号化パーティションにTRUECRYPTヘッダーが含まれていません。非システムTruecrypt暗号化パーティションまたはファイルコンテナには、ファイル/パーティションの最初の128ブロックにヘッダーが含まれ、最後の128ブロックにバックアップコピーが含まれます。したがって、バックアップヘッダーなしでsysten暗号化パーティションを復号化することは不可能です。システムパーティションのヘッダーは、hddの最初のトラックの最後のブロックにあります。ヘッダーをバックアップできます。
dd if =/dev/sdx of = header.img bs = 512 count = 1 skip = 62
パーティションバックアップにアクセスする場合は、パーティションを同じサイズのプライマリパーティションから別のHDDに複製し、起動可能としてマークする必要があります。次に、ヘッダーを復元する必要があります。最初に、最初のトラックが空かどうかを確認します。
sfdisk -l/dev/sdy
最初のパーティションがブロック63以上で階層化されている場合は問題ありませんが、ブロック番号が小さい場合は続行できません。ヘッダーを復元する
dd if = header.img of =/dev/sdy bs = 512 count = 1 seek = 62
「起動前認証なしでシステム暗号化を使用してパーティションをマウントする」を使用して、バックアップされたシステムパーティションにアクセスできます。
理論的には、Truecryptシステムパーティションを標準のTruecryptパーティションまたはファイルコンテナに変換できますが、暗号化されたヘッダーの一部のバイトを変更する必要があります。 (ヘッダーを復号化し、変更して再度暗号化します) http://www.truecrypt.org/docs/?s=volume-format-specification バイト124および252
ロックが解除されたら、C:パーティションをUSBディスクに複製し、Windowsに戻ったときにTrueCryptを使用して再暗号化してみてください。
Knoppixの場合:
truecrypt --text --keyfiles="" --protect-hidden=no --mount-options=system --filesystem=none /dev/sdxN
ここで、sdxNはC:\ドライブであり、おそらくsda1です。
パスワードを入力すると、ファイルシステムをマウントせずにボリュームがマウントされます(クローン作成に必要)。次に、それをUSBディスクにクローンします(USBディスクがsdb1であると仮定します):
ntfsclone -o /dev/sdb1 /dev/mapper/truecrypt1
Truecryptボリュームをアンマウントします
truecrypt -d
sdb1は、sda1の暗号化されていないクローンになりました。 TrueCryptのWindowsでは、暗号化に使用したのと同じ手順に従いますsda1。
C :(システム)パーティションを暗号化しませんが、暗号化されたパーティションをUSBドライブのext2/ext3ファイルシステムのファイルにコピーできると思います。
最初のテストとして、暗号化されたパーティションをLinuxからマウントできることを確認する必要があります(ntfsの場合は読み取り専用でマウントします)。それが機能する場合は、そのパーティションのイメージをファイルにマウントできるはずです。
たとえば、usbパーティションが/ mnt/largeにマウントされていて、暗号化されたC:パーティションがドライブ/ dev/sdaの2番目のパーティションである場合、次のようなことができます。
(最初にsda2をアンマウントします)
dd if =/dev/sda2 of =/mnt/large/sda2_image
これには、/ mnt/largeにマウントされたパーティションをsda2のサイズより少し大きくする必要があることに注意してください。また、C :(システムパーティション)が4GBを超える可能性があるため、/ mnt/largeのファイルシステムはおそらくlinuxext2またはext3ファイルシステムである必要があります。
イメージファイルが作成されたら、truecryptにイメージファイル(/ mnt/large/sda2_image)をマウントするように指示します。残念ながら、Windowsを再起動すると、このイメージファイルに直接アクセスすることはできません。