Instiq
第5章 · セキュリティ·v1.0.0·更新 2026/7/6·読了目安 約12分

変更要約: 初版(主題1.10・副主題1.10.1〜1.10.4に対応)

5.3暗号化によるデータの保護

この節の要点

公開鍵技術によるデータ・通信の保護を学びます。OpenSSH クライアントの鍵管理(ssh-keygenssh-agentssh-add)、主要な暗号化アルゴリズムRSAECDSAEd25519)の特徴、SSHポート転送(ローカル/リモート)、GnuPGgpggpg-agent~/.gnupg/)によるファイルの暗号化・署名を押さえます。

101 で「鍵で SSH 接続する」ところまでは学びました。本節はその先——鍵の生成と管理を自分で行い、暗号化の仕組みを通信(SSH)とファイル(GnuPG)の両方に応用する——が範囲です。公開鍵秘密鍵のペアという1つの原理で全部つながります。

5.3.1SSH 鍵の生成と管理

  • ssh-keygen=鍵ペアの生成(ssh-keygen -t ed25519)。パスフレーズを付ければ秘密鍵ファイル自体も暗号化され、盗まれても即悪用されない。
  • アルゴリズムの特徴=RSA(伝統・広い互換性・鍵長 3072〜4096 推奨)/ECDSA(楕円曲線・短い鍵で同等強度)/Ed25519現行の推奨・高速で安全・鍵が短い)。
  • ssh-agent=復号済みの秘密鍵をメモリに保持する常駐エージェント。ssh-add で鍵を登録すれば、パスフレーズ入力はセッションで1回になり、以後の接続は自動。

5.3.2ポート転送と GnuPG

  • SSHポート転送=暗号化トンネルに他の通信を通す。ローカル転送 ssh -L 8080:db01:3306 踏み台手元の8080への接続が踏み台経由で db01:3306 へ届く(社内DBに安全に到達する定石)。リモート転送は -R で逆向き。
  • GnuPGgpg)=ファイルの暗号化・復号・署名。鍵生成 gpg --gen-key・公開鍵で暗号化 gpg -e -r 宛先 file・復号 gpg -d。鍵束は ~/.gnupg/ に保存され、gpg-agent がパスフレーズを管理。
  • 原理の対応=相手に渡すのは常に公開鍵。SSH では公開鍵をサーバーへ(authorized_keys)、GnuPG では受取人の公開鍵で暗号化し、受取人だけが秘密鍵で復号できる。

続きは無料登録で読めます

冒頭を無料で公開中。無料登録でこの節の全文と、第4章以降を含む全参考書・全問題集が読めます。