#author("2022-05-18T23:09:58+09:00","default:k1rou","k1rou")
*GnuPG とは [#p52c1c84]
**名称 [#d2230cb7]
-GNU Privacy Guard
-GNU PG
-GPG
**概要 [#c22bbc7a]
-https://www.gnupg.org/
-[[GPL]]([[OSS]])
-[[OpenPGP]]に準拠
**動作環境 [#q767c2d1]
-Unix
-Windows
-macOS
*実装する機能 [#abfa9721]
-[[S/MIME]]
-[[SSH]]
*サポートする暗号化アルゴリズム [#x55fadb9]
**[[共通鍵暗号方式]] [#p148f16a]
-[[Twofish]]
-[[3DES]]
-[[AES]]
-[[Camellia]]
**[[公開鍵暗号方式]] [#n1847005]
-[[RSA]]
-[[Elgamal]]
-[[ECDH]]
**[[ハッシュ]]関数 [#of6aab44]
-[[SHA-2]]
**[[デジタル署名]] [#wd0b26ca]
-[[DSA]]
-[[ECDSA]]
-[[EdDSA]]
*操作(Liniux) [#lecfca91]
***インストール [#ac25c1dd]
-Debian系
apt-get install gnupg2
**公開鍵の管理 [#m6eca4ff]
-鍵ペアの作成
--プロンプトで質問に答えて作成 ※ver.2.1.17以降
gpg --full-generate-key
gpg --full-gen-key
→~/.gnupg ディレクトリにキーリング(鍵)が作成される(公開鍵: pubring.kbx/秘密鍵: trustdb.gpg)
--デフォルトのパラメータで作成 ※標準的な方法
gpg --gen-key
gpg --generate-key
--プロンプトで質問に答える必要ない
quick-generate-key <user-id>
quick-gen-key
-作成済の鍵を確認
gpg --list-keys
-鍵の失効証明書の作成
gpg -o <revoke-filename> --gen-revoke <email-address>
-鍵を無効にする ※失効証明書のファイルを使う
gpg --import <revoke-filename>
**ファイルの暗号化(公開鍵) [#r33c9cc8]
-公開鍵をエクスポート
gpg -o <(out)pubkey-filename> -a --export <email-address>
-公開鍵をインポート
gpg --import <pubkey-filename>
-インポートした公開鍵に署名
gpg --sign-key <email-address>
-ファイルを暗号化(公開鍵)
gpg -e -a -r <email-address> <target-file-name>
-ファイルを復号(暗号鍵)
gpg <encrypted-file-name>
**ファイルの暗号化(共通鍵) [#ae4a6dcd]
-ファイルを暗号化
gpg -c <file-name>
-ファイルを復号
gpg <file-name>
gpg --decrypt <encrypted-file-name>
**ファイルの署名 [#p468ba65]
-ファイルに署名
gpg -o <(out)signed-filename> --sign <target-filename>
-署名されたファイルを検証
gpg --verify <signed-filename>
*関連サイト [#te2e94d3]
-gpgコマンドの使い方 (2019.1.30)~
https://qiita.com/kanatatsu64/items/bc05ed460eae5a4cb69e
*関連用語 [#cb0967f3]
-[[暗号化]]
-[[PGP]]