クラウドにアップロードする前にファイルを暗号化する方法
クラウドストレージにアップロードする前にファイルを暗号化する手順をステップバイステップで解説し、プライバシーとデータ保護を最大化します。
クラウドアップロード前にファイルを暗号化することで、 Google Drive 、 Dropbox 、 iCloud 、 OneDrive 、 S3 、 R2 、 Backblaze B2 に保存されるのはあなただけが復号できる暗号文になります。プロバイダが見るのは意味のないデータです。選択肢として、7-Zip に強力なパスワードを組み合わせる方法( AES-256 CBC モード、大半の脅威に対して十分)、 rclone の crypt バックエンド( NaCl SecretBox 、より優れた方式)、フォルダ単位の暗号化に対応した Cryptomator ( AES-256-GCM 、透過的マウント)、コマンドライン向けの age または gocryptfs があります。どれを選ぶかはランダムアクセス、共有、モバイル読み取りの必要性によりますが、いずれも CCPA 1798.150 の暗号化セーフハーバーの範囲内に入ります。
プロバイダが鍵を持つ「保存時暗号化」では不十分な理由
主要なクラウドサービスはどこも「保存時暗号化」を謳っています。ドライブ上の AES-256 です。広告では言及されませんが、鍵を持っているのはプロバイダです。 Google は Drive を復号でき、 Apple は(2022年に一部地域で導入された Advanced Data Protection 層を除き)iCloud を復号でき、 Dropbox もファイルを復号できます。鍵管理システムに達するあらゆる令状、管理者インサイダー、または侵害はファイルに到達します。アップロード前のクライアントサイド暗号化はこれを逆転させます。プロバイダが保持するのは暗号文、あなたが保持するのは鍵となり、プロバイダへの令状は実質的に無力になります。
7-Zip によるシンプルなパスワード暗号化
最も手軽なツールは Windows / Linux 向けの 7-Zip 、 macOS 向けの Keka 、 Android 向けの ZArchiver です。ファイルを右クリックして「アーカイブに追加」を選び、形式に 7z 、暗号化方式に AES-256 、強力なパスワードを指定します。生成された .7z ファイルが暗号文です。任意のクラウドにアップロードできます。注意点は 7-Zip の既定 KDF がやや弱いことです。固定された 2^19 回の SHA-256 反復で鍵を導出するため、現代の GPU では毎秒約10万件のパスワードを試行できます。20文字以上のパスフレーズを使って補ってください。単発のアップロードには有効ですが、10 GB のファイルには不向きです。変更があるたびにアーカイブ全体を再アップロードする必要があります。
rclone crypt バックエンドによるクラウド横断同期
rclone はオープンソース( MIT ライセンス)で70以上のクラウドプロバイダと同期でき、 crypt バックエンドが NaCl SecretBox ( XSalsa20-Poly1305 )でアップロード前にファイルを暗号化します。 rclone config で1度設定しパスワードを決めれば、以降は rclone sync ~/docs crypt:bucket で透過的に暗号化されます。ファイル名も暗号化されます。鍵は rclone のローカル設定に難読化されて保存されます。ホームディレクトリを掌握された場合は復元可能なため、パスワードはパスワードマネージャーに保存し、設定ファイルは再生成可能なものとして扱ってください。 Backblaze B2 では GB あたり0.006ドル、 R2 ではエグレス無料、 Wasabi では GB あたり0.0068ドルで利用できます。
Cryptomator によるフォルダ単位の透過的暗号化
Cryptomator はオープンソースでデスクトップ版が無料です。 macOS 、 Windows 、 Linux 上で暗号化ボールトを仮想ドライブとしてマウントします。ボールトにファイルをドロップすると、 Cryptomator が AES-256-GCM で暗号化し、暗号文を Dropbox や Drive が同期する隣接フォルダに保存します。平文がクラウドに触れることはありません。各ファイルは scrypt で導出したボールトパスワードから個別の鍵を持ちます。12 MB の .docx は暗号化後も12 MB のままで、アーカイブのオーバーヘッドがなく差分同期が機能します。モバイルアプリ( iOS 1,500円、 Android 2,400円)が同じボールト形式を読み取るため、スマートフォンでは Cryptomator アプリ内で復号したファイルを参照でき、同期プロバイダには何も見えません。
age と rage による Unix コマンドライン暗号化
age (「アージュ」と発音)は Filippo Valsorda が開発した GPG の現代的な後継で、 X25519 、 ChaCha20-Poly1305 、 HKDF-SHA256 を使います。 brew install age などでインストールできます。パスワード方式では age -p -o file.age file.pdf 、公開鍵方式では age -r age1... で暗号化します。出力の .age ファイルはどこにでもアップロードできます。 rage は同一形式の Rust 実装です。 GPG と比較して age はオプションがなく、信頼の網もなく、レガシー暗号もありません。2026年の自動化パイプライン( S3 への夜間データベースバックアップなど)では、 age と SOPS または KMS 鍵を組み合わせるのが標準的なパターンです。
VeraCrypt による完全コンテナボリューム
VeraCrypt は TrueCrypt のオープンソース後継で、暗号化コンテナファイルをドライブとしてマウントします。50 GB の VeraCrypt コンテナは任意のファイルを格納し、 AES-256 または Serpent または Twofish でオンザフライ暗号化し、単一ファイルとしてアップロードされます。隠しボリュームによる合理的否認も可能です。欠点は、大きなコンテナ内のファイルを1つ変更すると Dropbox のデルタ同期が機能せず、コンテナ全体を再同期する必要がある点です。アクティブな作業セットではなく、年次スナップショットのようなアーカイブ用途に適しています。コンテナはプロバイダを変えても再暗号化不要で移行できます。
gocryptfs による Linux・macOS 日常利用
gocryptfs は FUSE ファイルシステムでセキュリティ監査済み( Quarkslab 2017年、2023年再監査)です。 Linux と macOS ( macFUSE 経由)で動作します。 gocryptfs ~/cipher ~/plain で作業ディレクトリが平文、 ~/cipher が同期される構成になります。ファイル単位の AES-256-GCM 暗号化で、ディレクトリ構造は維持されつつファイル名は EME で暗号化されます。 Java ではなくネイティブ C のため Cryptomator より高速です。クラウド同期には rclone と、重複排除バックアップには restic と自然に組み合わせられます。 GUI なしで透過的な暗号化を求める技術系 Linux ユーザーに向いています。
適切な鍵導出戦略を選ぶ
上記のツールはすべてパスワードから暗号化鍵を導出します。強度は KDF (鍵導出関数)に依存します。7-Zip は 2^19 回の SHA-256 (約50万回)、 rclone crypt は N=16384 の scrypt 、 Cryptomator は 2^15 のデフォルトパラメータの scrypt 、 VeraCrypt は50万回の PBKDF2-HMAC-SHA512 、 age パスワードモードは N=2^18 の scrypt です。Argon2id はこれらより優れていますが、 age の最新版にしか含まれていません。オフライン攻撃に耐えるために75ビット以上のエントロピーを持つパスワード(20文字のランダム文字列または6語の Diceware パスフレーズ)を選べば、 KDF の弱点は問題になりません。
ファイルメタデータへの対処
ファイルの内容を暗号化することが主目的ですが、メタデータも漏洩します。ファイルサイズ、更新タイムスタンプ、ファイル名、ディレクトリ構造はすべて情報を持ちます。 Cryptomator 、 gocryptfs 、 rclone はファイル名を暗号化しますが、 age と 7-Zip は暗号化しません。最大限のプライバシーのためには、機密ファイルを単一アーカイブにまとめ、わかりにくい名前( archive-2026-05-14.tar.gz.age )と無難な更新日時を設定してください。プロバイダにはタイムスタンプしか見えず、どのファイルを編集したかはわかりません。同僚と共有するクラウドストレージではこの水準の難読化がワークフローを壊す場合もあります。状況に応じて判断してください。
恒久的なクラウドストレージの代わりに HexaTransfer を使うケース
1人にファイルを送信して後で削除するだけなら、クラウドストレージは不要です。短命な暗号化転送の方が適しています。 HexaTransfer はクライアントサイド AES-256-GCM でサーバーに鍵が届かず、10 GB の上限と自動削除を備えています。 age で暗号化したファイルを Dropbox にアップロードし、リンクを共有し、後で削除することを忘れないようにするよりも、専用の転送ツールの方が管理が楽です。恒久的な保存には上記のツールで事前に暗号化し、一時的な共有には短命な E2EE サービスを使うという使い分けが最適です。
hexatransfer.comでお試しください — 無料、登録不要、最大10GB。
エンドツーエンド暗号化で大容量ファイルを安全に送信
エンドツーエンド暗号化で最大10GBのファイルを無料で転送。アカウント不要。ファイルはアップロード前にブラウザで暗号化されるため、他の誰にも読まれません。
ファイルを送信