ファイルをGocryptfsで暗号化する方法

gocryptfs-encryption-featured

企業がセキュリティやプライバシー基準を厳格に守らなくなった現在、暗号化はほぼ必需品となっています。クラウドに保存したデータのセキュリティが本当に気になる場合、そして本当にクラウドに保存する必要がある場合は、アップロードする前に暗号化することが最善です。

Gocryptfsは、Goで書かれた暗号化されたオーバーレイファイルシステムで、go-fuse FUSEライブラリの上に構築されています。フルディスク暗号化システムとは異なり、gocryptfsはファイルを個別に暗号化し、チャンクされたAES-GCM(Galois Counter Mode)を使用し、ファイル名にはAES-EME(ECB-Mix-ECB)を使用して暗号化します。また、クロスプラットフォーム互換性があるため、どのプラットフォームでもファイルにアクセスできます。

このチュートリアルでは、Gocryptfsを使用してファイルを暗号化する方法を説明します。

インストール

Linux

Gocryptfsはdebパッケージとして提供されており、DebianおよびUbuntuのリポジトリで利用可能です。つまり、次のコマンドで簡単にインストールできます:

sudo apt install gocryptfs

Arch Linuxでも同様です。Pacmanを使用してgocryptfsをインストールできます:

sudo pacman -S gocryptfs

他のLinuxディストリビューションでは、Githubサイトからバイナリファイルをダウンロードできます。

Mac

macOSでgocryptfsを使用するには、まずHomebrewをインストールする必要があります:

/usr/bin/ruby -e"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

次に、次のコマンドを使用してgocryptfsをインストールします:

brew install gocryptfs

Windows

GocryptfsはFUSEのサポートがないため、Windowsではネイティブにサポートされていません。ただし、cppcryptfsは、Windows用にC++で実装されたgocryptfs暗号化オーバーレイファイルシステムであり、Windowsで動作させることができます。こちらのビルド指示に従ってください。

gocryptfsを使用してファイルを暗号化する

gocryptfsを使用するには、最初に2つの空のフォルダーを作成する必要があります:

mkdir encrypted plain

次に、gocryptfsを初期化します:

gocryptfs -init encrypted

最後に、”encrypted”フォルダーを”plain”フォルダーにマウントします:

gocryptfs encrypted plain

これで、”plain”フォルダーに置いたファイルは暗号化され、”encrypted”フォルダーに保存されます。

例えば、暗号化されたファイルをDropboxに保存し、Homeディレクトリの”Private”フォルダーにマウントする場合、次のコマンドを実行できます:

cd  
mkdir ~/Dropbox/encrypted ~/Private  
gocryptfs -init ~/Dropbox/encrypted  
gocryptfs ~/Dropbox/encrypted ~/Private

Privateフォルダーに置いたファイルはすべて”Encrypted”フォルダーに暗号化され、Dropboxサーバーにアップロードされます。

SiriKali – gocryptfsを使用するためのGUIツール

SiriKaliは、gocryptfsや他の標準で暗号化するために使用できるGUIツールです。これはLinux、macOS、Windowsで利用可能ですが、Windowsバージョンはgocryptfsをサポートしていません。

  1. SiriKaliのウェブサイトに行き、自分のシステムに適したパッケージをダウンロードします。Linuxパッケージはソースを提供しており、抽出してビルドできます。また、さまざまなディストリビューション用に独自のリポジトリも用意されています。

  2. Ubuntuで、ターミナル内で次のコマンドを実行します:

sudo sh -c "echo 'deb http://download.opensuse.org/repositories/home:/obs_mhogomchungu/xUbuntu_18.04/ /' > /etc/apt/sources.list.d/home:obs_mhogomchungu.list"

コマンドが終了したら、次のコマンドを実行してキーを「信頼」し、更新を許可するのが良いでしょう。

wget -nv https://download.opensuse.org/repositories/home:obs_mhogomchungu/xUbuntu_18.10/Release.key -O Release.key  
sudo apt-key add - < Release.key  
sudo apt-get update  
sudo apt-get install sirikali
  1. 現在、SiriKaliがインストールされ、メニュー内で利用できるはずです。クリックして開きます。

  2. SiriKaliはVeraCryptに似たウィンドウを開き、画面の下部にオプションがあります。ボリュームの作成、ボリュームのマウント、更新、お気に入りの管理、最後にメニューがあります。

sirikali-go-min

  1. ここでGocryptfsをクリックしてボリュームを作成できます。

siri-create-min

  1. ボリュームに好きな名前を付け、キーはパスワードを表します。パスワード、パスワードとキーファイル、GNOME Walletなど、さまざまなオプションがあります。必要に応じて選択してください。簡単に推測されないパスワードを使用することを忘れないでください。

オプションボタンの下には、暗号化レベルやファイル名をランダム化する必要があるかどうかの詳細があります。

siri-create-options-min

  1. 完了すると、新しく作成したフォルダーがSiriKaliアプリケーションに表示されます。ここをクリックして、暗号化したいファイルをコピーすることができます。

siri-open-folder-min

  1. 終了したら、もう一度クリックして「ボリュームをアンマウント」を選択してください。

どのレベルの暗号化を使用していますか?データをオープンにして誰でもアクセスできるようにしていますか、それともロックダウンしていますか?コメントセクションでお知らせください。また、より良い代替手段についての知識があれば教えてください。