設定 - GPG
概要
GPG (GNU Privacy Guard) は、OpenPGPの仕様に基づく暗号化ソフトウェアである。
電子メール、ファイルの暗号化、電子署名の作成と検証に広く使用されている。
GPGは公開鍵暗号方式を採用しており、各ユーザは公開鍵と秘密鍵のペアを持つ。
公開鍵は他者と共有され、秘密鍵は厳重に保管する。
例えば、AliceがBobにメッセージを送信する場合、AliceはBobの公開鍵でメッセージを暗号化して、Bobは自身の秘密鍵で復号する。
電子署名の仕組みは逆で、送信者が自分の秘密鍵でメッセージに署名して、受信者は送信者の公開鍵で署名を検証する。
これにより、メッセージの真正性と完全性を確認できる。
信頼の輪 (Web of Trust) はGPGの概念であり、ユーザは他者の鍵に署名することで信頼を表明して、これらの署名が連鎖することで信頼のネットワークが形成される。
例えば、AliceがBobの鍵を信頼して、BobがCarolの鍵を信頼している場合、Aliceは間接的にCarolの鍵を信頼できる可能性がある。
使用例として、ソフトウェア開発者がソースコードやリリースに署名する場合がある。
これにより、ユーザはダウンロードしたソフトウェアが本物であり、改竄されていないことを確認できる。
鍵の管理において、秘密鍵の漏洩を防ぐために強力なパスフレーズの使用や物理的なセキュリティ対策が推奨される。
また、失効証明書を作成して、安全な場所に保管することにより、鍵が漏洩した場合に対応できる。
また、VivaldiやChromium等のWebブラウザは、KDE Walletでパスワードファイルを暗号化する。
KDE Walletでは、GPGキーでファイルを暗号化する方法をサポートしている。
KGPG
KGPGとは
KGPGは、KDE Plasma環境向けのGPGフロントエンドであり、GUIを通じて、鍵の管理、暗号化、復号、署名等の操作を行うことができる。
鍵リングの管理、鍵サーバとの連携、ファイルやクリップボードの暗号化 / 復号、電子署名の作成と検証の機能がある。
GPGキーの生成
まず、KGpg Assistantを起動する。
[KGpg Assistant]の起動画面で、[Next]ボタンを押下する。
kgpg
- [GnuPG Binary]画面で、gpgコマンドのフルパスを初期設定の/usr/bin/gpg2のままにして、[Next]ボタンを押下する。
- GPGの設定ファイルを作成するため、[Create Config]ボタンを押下する。
- [Configuration File]画面で、GPGの設定のフルパスを初期設定の~/.gnupg/gpg.confのままにして、[Next]ボタンを押下する。
- [Done]画面で、[Finish]ボタンを押下する。
- [Key Generation]画面で、[Name]項目を入力して、[OK]ボタンを押下する。
- 鍵のパスフレーズを入力して、[OK]ボタンを押下する。
- ~/.gnupgディレクトリにGPGキーファイルが生成される。
gpgコマンド
鍵の生成
対話式でGPGキーを生成する。
gpg --gen-key
鍵の名前を入力する。
Real name: <任意の名前 例: suse>
E-mailを入力する。
Email address: <任意のメールアドレス 例: suse@localhost>
O(オー)を入力する。
Change (N)ame, (E)mail, or (O)kay/(Q)uit? O
鍵のパスフレーズを入力して、[OK]を選択する。
X Window (X11) / Compositor (Wayland) が有効な場合は、ウインドウが表示される。
┌──────────────────────────────────────────────────────┐ │ Please enter the passphrase to │ │ protect your new key │ │ │ │ Passphrase: ________________________________________ │ │ │ │ <OK> <Cancel> │ └──────────────────────────────────────────────────────┘
再度、パスフレーズを入力して、[OK]を選択する。
┌──────────────────────────────────────────────────────┐ │ Please re-enter this passphrase │ │ │ │ Passphrase: ________________________________________ │ │ │ │ <OK> <Cancel> │ └──────────────────────────────────────────────────────┘
~/.gnupg/gpg.confファイル (GPGキー) が生成される。
pub rsa2048 2018-06-07 [SC] [expires: 2020-06-06] B7262B75DD4F7BFFEFC9ACF527362358E961C720 uid suse <suse@localhost> sub rsa2048 2018-06-07 [E] [expires: 2020-06-06]
鍵の表示
登録されている公開鍵と秘密鍵のリストを表示する。
# 公開鍵のリストを表示する場合 gpg --list-keys # 秘密鍵のリストを表示する場合 gpg --list-secret-keys