暗号化ファイルシステムの作成
EncFSを利用するにあたり、まずはソースディレクトリとマウント先ディレクトリーを作成する必要があります。マウント先ディレクトリーが暗号化ボリュームとなります。
ディレクトリーの作成について
ソースディレクトリーとマウント先ディレクトリーの作成場所はどこでも良いですが、そのディレクトリーにアクセスするユーザーがアクセスできる場所を選び、作成したディレクトリーに適切なアクセス権を設定しておいてください。自分しかアクセスしない場合は、自分のホームディレクトリー以下にディレクトリーを作成するとよいでしょう。
作成例
今回は自分のホームディレクトリー直下に「EncryptFolder」ディレクトリーを作成し、ボリュームのマウント先はホームディレクトリー直下の「DecryptVolume」にします。ちなみにユーザー名は「ubuntu」です。
注意
既存のソースディレクトリーを指定しないでください。1.encfsの実行
端末を起動し以下のコマンドを実行します。encfs ~/EncryptFolder ~/DecryptVolume
2.ソースディレクトリーの作成
以下のようにディレクトリーの作成を尋ねられるので、「y」キーを入力して「エンター」キーを押します。ディレクトリ "/home/ubuntu/EncryptFolder/" が存在しません。作成しますか? (y,n)
以下のようにディレクトリーが作成されます。
3.マウント先ディレクトリーの作成
同じく以下のようにディレクトリーの作成を尋ねられるので、「y」キーを入力して「エンター」キーを押します。ディレクトリ "/home/ubuntu/DecryptVolume" が存在しません。作成しますか? (y,n)
以下のようにディレクトリーが作成されます。
4.モードの選択
モードを選択します。スタンダードモード:何も入力せず「エンター」キーを押します。
パラノイアモード:「p」を入力して「エンター」キーを押します。
エキスパートモード:「x」を入力して「エンター」キーを押します。
各モードについては後述します。
5.作成完了
作成が完了すると、暗号化ボリュームがマウントされます。スタンダードモードを選択した場合
パスワードを2回入力すれば完了です。適当に意訳します。
「パスワードを入力してください。パスワードを忘れると別手段で復号化する仕組みはないため、忘れないでください。ちなみにパスワードは後で変更できます。パスワードを変更する場合はencfsctlコマンドを利用してください。」
パラノイアモードを選択した場合
パスワードを2回入力すれば完了です。適当に意訳します。
「警告! External IV Chainingが有効になっています。そのためハードリンクは利用できなくなります。muttやprocmailなどハードリンクを利用するアプリは利用できなくなります。処理を中止するなら「Ctrl + C」キーを押してください」
「パスワードを入力してください。パスワードを忘れると別手段で復号化する仕組みはないため、忘れないでください。ちなみにパスワードは後で変更できます。パスワードを変更する場合はencfsctlコマンドを利用してください。」
エキスパートモードを選択した場合
自分で暗号化設定を行います。対話形式で設定を選択していきます。
もし選択肢や設定を途中で間違えた場合、「Ctrl +C」キーを押せば処理を中止できます。
もう一度最初から手順を実行して下さい。
選択した設定によっては、省略される項目があります。
事前に「暗号化の設定について」を参照しておくと良いでしょう。
1.暗号アルゴリズムの選択
暗号アルゴリズムを選択します。使用する暗号アルゴリズムの数値を入力して、「エンター」キーを押します。
2.鍵サイズの入力
鍵サイズを入力します。選択した暗号アルゴリズムにより、入力できる鍵サイズが異なります。
AES
Blowfish
入力したら「エンター」キーを押します。
3.ブロックサイズの入力
ブロックサイズを入力します。選択した暗号アルゴリズムにより、入力できるブロックサイズが異なります。
デフォルトの1024byteで良ければ、何も入力せず「エンター」キーを押します。
AES
Blowfish
入力したら「エンター」キーを押します。
4.ファイル名の符号化方式の選択
ファイル名の符号化方式を選択します。使用するファイル名の符号化方式の数値を入力して、「エンター」キーを押します。
5.Filename IV chaining
「Filename IV chaining」を使用する場合、何も入力せず「エンター」キーを押します。使用しない場合は、「n」を入力して「エンター」キーを押します。
適当に意訳します。
「この機能を有効にすると、ファイル名の暗号化はファイルのフルパスに応じて変化します。」
6.Per-file initialization vectors
「Per-file initialization vectors」を使用する場合、何も入力せず「エンター」キーを押します。使用しない場合は、「n」を入力して「エンター」キーを押します。
適当に意訳します。
「この機能を有効にすると、8byteファイルサイズが増えます。パフォーマンスに大した影響はありませんが、ブロックサイズに依存する処理を行うアプリではパフォーマンスが低下する可能性があります。」
7.Filename to IV header chaining
「Filename to IV header chaining」を使用しない場合、何も入力せず「エンター」キーを押します。使用する場合は、「y」を入力して「エンター」キーを押します。
適当に意訳します。
「この機能を有効にすると、ファイルの中身の暗号化はファイルのフルパスに応じて変化します。もしファイル名を変更すると、EncFSによる再暗号化が完了するまで復号化できなくなります。またハードリンクがサポートされなくなります。」
8.Block authentication code headers
「Block authentication code headers」を使用しない場合、何も入力せず「エンター」キーを押します。使用する場合は、「y」を入力して「エンター」キーを押します。
適当に意訳します。
「この機能を有効にすると、ブロックの妥当性を検査できるようになります。ただしパフォーマンスに大きな影響を与え、遅くなります。」
9.Add random bytes to each block header
ランダムバイト数を入力します。入力できるバイト数は0~8byteです。
適当に意訳します。
「この機能を有効にすると、パフォーマンスに影響を与えますが「8.」のチェックサムを加工しセキュリティーの強度を上げます。とは言え、「Per-file initialization vectors」でも同じ利点が得られるので、そちらを使ったほうがパフォーマンスが良いです。」
数値を入力して、「エンター」キーを押します。
10.File-hole pass-through
「File-hole pass-through」を使用する場合、何も入力せず「エンター」キーを押します。使用しない場合は、「n」を入力して「エンター」キーを押します。
適当に意訳します。
「ファイルホールが作られた時に暗号化されたブロックを書き込まないようにします。」