web-dev-qa-db-ja.com

有効期限付きのGPGキーの生成

指定された有効期限でGPGキーを生成する方法を探しています。 GPG/GPG2では、新しい鍵を作成するときに署名でのみ日付を設定できますが、鍵の有効期限は常にゼロに設定されます。

:public key packet:
        version 4, algo 1, created 1417388459, expires 0
        pkey[0]: [2048 bits]
        pkey[1]: [17 bits]
:user ID packet: "my user id mymail"
:signature packet: algo 1, keyid mykeyid
        version 4, created 1417688533, md5len 0, sigclass 0x13
        digest algo 2, begin of digest f0 52
        hashed subpkt 27 len 1 (key flags: 03)
        hashed subpkt 9 len 4 (key expires after 5y31d23h59m)
        hashed subpkt 11 len 5 (pref-sym-algos: 9 8 7 3 2)

GPGが有効期限を処理する理由についていくつかの議論が見つかりました( https://davesteele.github.io/gpg/2014/09/20/anatomy-of-a-gpg-key/ は良い出発点ですポイント)しかし、私はあなたの主キーに有効期限を設定する方法があるかどうかわかりません。

有効期限が設定された主キーを作成するにはどうすればよいですか?

3

アルゴとキーサイズを選択した直後にgpg2 --full-gen-keyと入力すると、次のプロンプトが表示されます。

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) 

これにより、主キーの有効性が構成されます。これはあなたが求めているものですか?

編集:GPGは単にこのフィールドを使用して有効期限を設定しないため、「expires:0」はすべてのGPG生成キーに対して完全に正常です。これは自己署名で行われます。指定されたユーザーIDが特定の公開鍵に対して有効であることを示す内部証明。ここで説明するように、これは柔軟性の理由で行われます: https://davesteele.github.io/gpg/2014/09/20/anatomy-of-a-gpg-key/

5
J.A.K.