GPGキーの作成方法を記載します。
Table of Contents
1 rng-toolsでランダム値を更新する
gpgを作成する場合に以下のメッセージが出る場合があります。マウス操作等でランダム値へのノイズを発生させてやることで解消されますが、SSH経由の場合はマウス操作できません。
Not enough random bytes available. Please do some other work to give
そこでrng-toolsでランダム値を更新します。
$ sudo apt install -y rng-tools $ sudo rngd -r /dev/urandom
2 interactiveモードで作成する
gpg –gen-keyでGPGキーを作成します。
$ gpg --gen-key
秘密鍵が${HOME}/.gnupg/secring.gpgに、公開鍵が${HOME}/.gnupg/pubring.gpgに作成されます。
gpg: keyring `/home/hiroom2/.gnupg/secring.gpg' created gpg: keyring `/home/hiroom2/.gnupg/pubring.gpg' created
デフォルトの"(1) RSA and RSA"にします。
Please select what kind of key you want: (1) RSA and RSA (default) (2) DSA and Elgamal (3) DSA (sign only) (4) RSA (sign only) Your selection?
デフォルトの"2048"にします。
RSA keys may be between 1024 and 4096 bits long. What keysize do you want? (2048)
デフォルトの"key does not expire"にします。yを押します。
Please specify how long the key should be valid. 0 = key does not expire <n> = key expires in n days <n>w = key expires in n weeks <n>m = key expires in n months <n>y = key expires in n years Key is valid for? (0) Key does not expire at all Is this correct? (y/N) y
名前、e-mail、コメントを入力します。名前の入力は必須です。
You need a user ID to identify your key; the software constructs the user ID from the Real Name, Comment and Email Address in this form: "Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>" Real name: hiroom2 Email address: hiroom2@example.com Comment: hiroom2 gpg key
Oを押します。
Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? O
パスワードを入力します。空でも良いです。
Enter passphrase: Repeat passphrase:
GPGキーが作成されました。
generator a better chance to gain enough entropy. ..+++++ .............+++++ gpg: /home/hiroom2/.gnupg/trustdb.gpg: trustdb created gpg: key 65F355D9 marked as ultimately trusted public and secret key created and signed. gpg: checking the trustdb gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model gpg: depth: 0 valid: 1 signed: 0 trust: 0-, 0q, 0n, 0m, 0f, 1u pub 2048R/65F355D9 2016-08-14 Key fingerprint = 95CF BBE0 C638 93EB 7E77 C427 A093 6A22 65F3 55D9 uid hiroom2 (hiroom2 gpg key) <hiroom2@example.com> sub 2048R/FEC8326F 2016-08-14
3 batchモードで作成する
gpgコマンドの設定ファイルを作成します。
$ cat <<EOF > gpg.txt %pubring ${HOME}/.gnupg/pubring.gpg %secring ${HOME}/.gnupg/secring.gpg Key-Type: RSA Subkey-Type: RSA Key-Length: 2048 Subkey-Length: 2048 Expire-Date: 0 Name-Real: hiroom2 Name-Email: hiroom2@example.com Name-Comment: hiroom2 gpg key Passphrase: mypassphrase %commit EOF
gpg –gen-key –batchでGPGキーを作成します。
$ gpg --gen-key --batch gpg.txt ......+++++ .....+++++ +++++ .........+++++