Gnu Privacy Guard (GPG) の一番お手軽な使い方として、ファイルをパスワードで暗号化/復号化する方法。
GPG本体をインストールしなくても、Windows版のGitをインストールしていればGPGの一部が含まれています(Git/bin/gpg.exe)。単純にファイルをパスワードで暗号化したいだけ、程度の用途であればこれで十分です。
- ファイルを暗号化する
> gpg -c file.txt
暗号化時のパスフレーズは、ひらがなや漢字等も含めることができます。
なるべく長く、覚えやすいパスフレーズにしましょう。
これで file.txt.gpg という暗号化ファイルが作成されます。
-a オプションを追加して暗号化した場合は file.txt.asc という ASCII 形式の暗号化ファイルができます。
- ファイルを復号化する
> gpg file.txt.gpg
これで file.txt という平文のファイルが出来上がります。
- Emacsと連動させる
拡張子が .gpg のファイルは Emacs から透過的に扱えます。
ファイルを開く時にパスフレーズを入力すれば、自動的に復号化してくれます。
ちなみに、ASCII 形式の暗号化ファイルの場合は、全選択し、
M-x epa-decrypt-region
で復号化できます。
同様に、平文のファイルのある部分を選択し、
M-x epa-encrypt-region
とすれば、ファイルの一部分だけを暗号化できます。
- 暗号化方式についての補足
上記で説明したGPGの共通鍵暗号は、デフォルトの暗号化方式としてCAST5が採用されています。
自分の利用しているPCの設定が知りたければ -v オプションを付加することで、以下のように暗号化方式が表示されます。
gpg: using cipher CAST5
暗号化方式を変更するには --cipher-algo オプションを利用します。
例えば AES256 で暗号化する場合は、
> gpg --cipher-algo AES256 -c -v file.txt
のようにします。
サポートされている暗号化方式はヘルプで見ることができます。
私の環境では下記の7種類がサポートされていました。
3DES, CAST5, BLOWFISH, AES, AES192, AES256, TWOFISH
暗号化の基本的な理論は下記の書籍が参考になりました。
古代暗号の歴史から解説されていますが、第4章、第5章を読めば「共通鍵暗号」「公開鍵暗号」の基本的な仕組みが分かります。
- 作者: 辻井重男
- 出版社/メーカー: 講談社
- 発売日: 2012/06/12
- メディア: 文庫
- クリック: 3回
- この商品を含むブログ (5件) を見る