web-dev-qa-db-ja.com

秘密鍵なしでPGP暗号化ファイルを復号化することは可能ですか?

自分のPGPキー(RSA/1024)を15年以上使用してきました。そのキーは、インターネット上で長い間私の身元であり、巨大なデータの暗号化にも使用されます。

最近、私の同僚は私に言った:「あなたはより良い暗号化を得るために2048ビットを、または最高を得るために4096ビットを作成するべきです」。秘密のPGP鍵の場合、4096ビットが1024ビットより優れていることを示すドキュメントは見つかりませんでした。私が間違っている?

私のプライベートには有効期限がありません。古いものにセキュリティ上の問題がない場合、新しいものに切り替えたくありません。一方、私は常に秘密鍵を安全なパスワードで安全な場所に保管しています。秘密鍵がなくてもデータを復号化できますか?

1
ne3suszr

1024ビットより大きいキーを使用することをお勧めします ですが、暗号化サブキーをより大きなものに置き換えて、同じ署名キーを保持することができます(GPG IDの範囲で)。 GPG鍵ペアは、事実上、複数の個別の鍵で構成されます(すべて同じ証明書鍵で署名されています、C in usage)。

これにより、古いキーで暗号化されたすべてのデータにアクセスできなくなることに注意してください。データを再暗号化するか、古い暗号化キーを保持することができます。

2048ビットの暗号化サブキーを4096ビットのキーに置き換える例を次に示します。

$ gpg --edit-key [email protected]
gpg> key 1

sec  rsa2048/10627915E34373B1
     created: 2019-12-27  expires: 2021-12-26  usage: SC
     trust: ultimate      validity: ultimate
ssb* rsa2048/520DD5D5DC5F1214
     created: 2019-12-27  expires: 2021-12-26  usage: E
[ultimate] (1). Test Test <[email protected]>

gpg> addkey
[snip]
RSA keys may be between 1024 and 4096 bits long.
What keysize do you want? (2048) 4096
Requested keysize is 4096 bits
[snip]
sec  rsa2048/10627915E34373B1
     created: 2019-12-27  expires: 2021-12-26  usage: SC
     trust: ultimate      validity: ultimate
ssb* rsa2048/520DD5D5DC5F1214
     created: 2019-12-27  expires: 2021-12-26  usage: E
ssb  rsa4096/29F957A70823378C
     created: 2019-12-27  expires: 2020-12-26  usage: E
[ultimate] (1). Test Test <[email protected]>

gpg> delkey
Do you really want to delete this key? (y/N) y

sec  rsa2048/10627915E34373B1
     created: 2019-12-27  expires: 2021-12-26  usage: SC
     trust: ultimate      validity: ultimate
ssb  rsa4096/29F957A70823378C
     created: 2019-12-27  expires: 2020-12-26  usage: E
[ultimate] (1). Test Test <[email protected]>
1
raindev