ファイルまたはディレクトリを暗号化するツールはありますか?


66

個々のファイルまたはフォルダーを暗号化する最も一般的な方法は何ですか?


質問は少し不明瞭です。ファイルを手動で暗号化および復号化しますか、その場で実行しますか?
-psusi

4
「最も人気がある」のではなく、ソリューションを要件に適合させることが役立つ場合があります(psusiの質問による)。簡単、信頼性、ネイティブ、安全、高速、オープンソースの組み合わせをお探しですか?これらのすべてまたはいくつか?
-belacqua

7
TrueCryptは、Debian / Ubuntu / Fedora / Red Hat / Arch Linux / OpenSuse / Gentoo / etcによるフリーソフトウェアまたはオープンソースは見なされていません
-JanC

回答:


46

GnuPG(GPG)は非対称および対称暗号化を使用できます。非対称暗号には、暗号化用の公開キーと復号化用の秘密キーの2つのキーが含まれます。非対称キーの使用法については、このページのdjeikybの回答を参照してください。

対称暗号化の場合、暗号化キーと復号化キーは同じです。ほとんどの人は強力なパスワードを選択するのが非常に下手であることを認識することが重要です。したがって、パスワードを使用する暗号化スキームでは、ブルートフォース攻撃を遅くするためにより多くのリソース(時間、メモリ)を必要とするキー派生関数を使用する必要があります。

GnuPGのKDFの説明については、このCrypto Stack Exchangeの投稿を参照してください。対称暗号化の使用例:

gpg --symmetric < unencrypted_file > encrypted_file

復号化:

gpg --decrypt < encrypted_file > decrypted_file

gpgデフォルトでsymkey をキャッシュすることに注意してください(文書化された動作)。これを回避するに--no-symkey-cacheは、関連する回答で説明されているオプションを使用します。

gpgのマニュアルページ


適切なキーを選択できるユーザー向けの古い回答、下記の注意を参照

単一ファイルのopenssl場合、特にセキュリティで保護されていないチャネル(電子メールなど)でファイルを送信する場合に非常に便利です。Truecryptは金銭のみが無料であるのと異なり、無料です

:ここで入力したパスワードは、1回のMD5反復で処理されます1。パスワード「123456」を選択した場合、セキュリティはほとんどありません。

暗号化:

openssl aes-256-cbc -salt -in unencrypted_file -out encrypted_file

パスワードの入力を求められます。パスワードを2回入力する必要があります。

復号化:

openssl aes-256-cbc -d -in encrypted_file -out unencrypted_file

encプログラムのマニュアルページ。

1 openssl encは、-mdオプション(デフォルトのmd5)で定義されたダイジェスト関数を使用EVP_BytesToKey()し、反復カウント1で関数を呼び出します。これは、のopensslソースにありapps/enc.cます。


パスファースなしでこれを行う方法はありますか?
アサフラヴィー

@Assaf Lavie:OpenSSLは、ファイルの最初の行からパスワードを読み取ることはできますが、キーファイルをサポートしていません。opensslのマニュアルページのセクションパスフレーズの引数を参照してください。
レーケンシュタイン

さらに、あなたはそうのように、暗号化されたテキストをコピーすることを可能にする「-a」フラグを使用することができます:「opensslのAES-256-CBC -a -塩-in unencrypted_file -out encrypted_file」
V2R

@ v2rさらに読者を追加するに-aは、入力(baseのエイリアス-base64)をbase64エンコードし、それを解読するには-aオプションを追加する必要があります。
-Lekensteyn

1
@Lucioはのaes-256エイリアスでaes-256-cbc、違いはありません。CBCは、ブロック暗号の操作モードです。enc(1)サポートされている暗号のリストについては、のマニュアルページを参照してください。
Lekensteyn

30

これにはタツノオトシゴを使用します。これはGnuPGのGnomeフロントエンドであり、nautilusとうまく統合されます。Nautilusの統合

nautilus統合を取得するにはseahorse-nautilus、ソフトウェアセンターからパッケージをインストールします:seahorse-nautilus seahorse-nautilusをインストールする


3
これは、システムでGPGキーが作成されている場合にのみ機能します
...-hhlp

3
@hhlp:djeikybの答えはその方法を説明しています。
idbrii

1
GPGキーを暗号化したい。
KI4JGT 14年

19

TrueCrypt廃止された、セキュリティ保護されていないソースで利用可能なフリーウェアのディスク暗号化ソフトウェア。


2
+ 1、encfs-GUIの有無にかかわらず、ほとんどの目的には非常に便利で十分です。
-loevborg

3
Cryptkeeperはすごい-シンプルで強力で、Dropboxで簡単にセットアップできます(askubuntu.com/questions/19613/…)。
スケイン

TrueCryptは、ライセンスの問題のためにUbuntu(またはその他の主要なディストリビューション)にパッケージ化されていません。
MagicFab

2
TrueCryptは、そのオープンソースではありません。en.wikipedia.org/wiki/...
yuric

4
「警告:TrueCryptの使用は安全ではありません」
-TrueCrypt

16

cliメソッドはGnuPGであり、おそらくtarです。これは参照用の短いガイドです。実際にドキュメントを読む必要があります。

最初の実行gpg --gen-key。プロンプトに従って、公開キーと秘密キーのペアを生成します。これで、ファイルを暗号化できますgpg -e foo.txt。これにより、というファイルが作成されfoo.txt.gpgます。GnuPGは元の暗号化されていないファイルを削除しません。それをぶらぶらするかどうかはあなた次第です。foo.txt.gpgを復号化するには、を実行しgpg foo.txt.gpgます。復号化すると、既存のファイルを上書きする前にプロンプ​​トが表示されます。

ディレクトリを暗号化する必要がある場合は、最初にtarを実行します。

tar -cf foo.tar foo/
gpg -e foo.tar

暗号化されたファイルの名前は自由に変更できます。復号化されると、元のファイル名が保持されます。


2
この方法の利点は次のとおりです。まず、追加のパッケージをインストールする必要がありません。次に、ルートアクセスが不要です。tarコマンド(xzまたはgz)に圧縮を追加します。
パンサー

12

Ubuntuがホームディレクトリを暗号化するために使用するeCryptfsもあります。

インストール時にホームディレクトリ暗号化を選択するか、$HOME/Privateデフォルトでecryptfs-setup-privateユーティリティを使用して単一のディレクトリをセットアップできます。このフォルダーは、ログイン時に自動的にマウントし、ログアウト時にアンマウントするように構成できます。内のすべてのファイルとフォルダーは$HOME/Private、再帰的に暗号化されます。


残念ながら、eCryptfsは非常に遅いです。また、最新バージョンにはいくつかのバグがあります
-ruX

それどころか、eCryptfsがgpgよりも速い場合は、デフォルトでは、gpgは暗号化の前に圧縮を試みます。そして、eCryptfsのは今もほとんどのAndroidので使用されている
Xen2050

2

「アカデミック署名」を使用して、wxWidgets GUIで楕円曲線暗号化を使用することもできます。これはオープンソースですが、リポジトリにはありません。主にECC非対称暗号化、署名、タイムスタンプを実行します。ただし、このツールには、Gnupg(RSA)を呼び出すためのメニューエントリがあり、AESやその他のアルゴリズムを提供するファイルの対称暗号化/復号化に直接アクセスできます。ホームページはこちら:https : //www.academic-signature.org

転送中のファイルを保護したり、学術文書(転写、推薦状、成績表など)にデジタル署名するためによく使用します


1

私は他のいくつかの提案を取り入れて、単純なシェルスクリプトラッパーを作成しました(怠け者用)

https://github.com/orionM/ssl-crypt-tools

楽しい


1
うーん、bashスクリプトを使用してopenssl aes-256-cbc ...使用するのではなく、あなたが知っているif [ $? -ne 0 ] ; then... fiあなただけ使用することができますか||?また、OpenSSL "*は昨年[ Heartbleed ] でいくつかの重大なセキュリティ上の欠陥を抱えていると考える人もいますが、Snowdenのドキュメントは、GPGが適切に使用された場合にNSAを妨害する数少ないプログラムの1つであることを示しています。完全な巣とひどいテストカバレッジ(情報開示:[彼は]の[s]が働く「OpenSSLを吸う;のは、それを修正しましょう」プロジェクト。)がある- jbarlowの*」。
Xen2050
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.