GPGではサブキーを普段使いする
GPGでは、マスターキーが漏洩してしまうと、これまでマスターキーが得た信用をすべて破棄しなければならなくなる。具体的には登録されている鍵束から削除してもらわなければならない。
そんな貴重なものを普段使いしていると、誤って漏れてしまったときに困る。そのためマスターキーの代わりとなるサブキーという仕組みがある。サブキーを利用すると、サブキーはマスターキーによって署名されているので同等の効果を持ちつつ、サブキーが漏洩してもマスターキーは無事なので単に漏れた鍵を破棄するだけでマスターキーの信用は傷つかない。
そのようにサブキーは非常に便利なので、用途ごとにサブキーを追加して利用する。それとサブキーは共有せず、PCごとに別のサブキーを生成する。
しかしGitHubにGPG鍵を登録するときは1つのマスターキーで生成したサブキーはひとつにまとめなければならない。このため、
- USBメモリですべての秘密鍵を管理して持ち運ぶ
- GitHubに登録する公開鍵をエクスポートする前にすべての公開鍵を取り込む
Debianの記事ではUSBメモリを利用していたが、物理的なものなので紛失する可能性があるし面倒くさい。またGitHubの公開鍵URLで公開鍵は取り込めるので、後者の方法がいいだろう。