Closed4

公開鍵のnotationが鍵束とキーサーバとで矛盾してしまった

zundazunda

現在の状態

手元の鍵束

MastodonへのnotationとTwitterへのnotationを追加した後Twitterへのnotationを消した。

$ gpg --list-keys --with-sig-list --list-options show-notations F60960D80B224382CA8D831CB56C20316D6E8279
pub   rsa3072 2020-06-24 [SC] [expires: 2022-06-24]
      F60960D80B224382CA8D831CB56C20316D6E8279
uid           [ultimate] zunda <zundan@gmail.com>
sig 3        B56C20316D6E8279 2021-03-01  zunda <zundan@gmail.com>
sig 3    N   B56C20316D6E8279 2021-02-17  zunda <zundan@gmail.com>
   Signature notation: proof@metacode.biz=https://mastodon.zunda.ninja/@zundan
sig 3        B56C20316D6E8279 2020-06-24  zunda <zundan@gmail.com>
sub   rsa3072 2020-06-24 [E] [expires: 2022-06-24]
sig          B56C20316D6E8279 2020-06-24  zunda <zundan@gmail.com>

キーサーバーの公開鍵

上記の状態でgpg --send-keyしたはずだがTwitterへのnotationが残っている状態の公開鍵が取得される。

$ curl -sL https://keys.openpgp.org/vks/v1/by-fingerprint/F60960D80B224382CA8D831CB56C20316D6E8279 | gpg --show-key --with-sig-list
pub   rsa3072 2020-06-24 [SC] [expires: 2022-06-24]
      F60960D80B224382CA8D831CB56C20316D6E8279
uid                      zunda <zundan@gmail.com>
sig 3        B56C20316D6E8279 2021-03-01  zunda <zundan@gmail.com>
sig 3    N   B56C20316D6E8279 2021-03-01  zunda <zundan@gmail.com>
   Signature notation: proof@metacode.biz=https://twitter.com/zundan/status/1366266732046770176
sig 3    N   B56C20316D6E8279 2021-02-17  zunda <zundan@gmail.com>
   Signature notation: proof@metacode.biz=https://mastodon.zunda.ninja/@zundan
sig 3        B56C20316D6E8279 2020-06-24  zunda <zundan@gmail.com>
sub   rsa3072 2020-06-24 [E] [expires: 2022-06-24]
sig          B56C20316D6E8279 2020-06-24  zunda <zundan@gmail.com>

OpenPGP.jsでの確認

少なくとも[0].users[0].selfCertifications[1].notationsにTwitterへのnotationが存在する。

Keyoxideでの確認

notationが無いように見える。

https://keyoxide.org/F60960D80B224382CA8D831CB56C20316D6E8279

zundazunda

キーサーバーと鍵束の公開鍵を合わせる

キーサーバーから得られる公開鍵と鍵束の公開鍵とで状態が矛盾してしまったのは、手元の公開鍵をバックアップから戻したりしているうちにnotationの追加の履歴がキーサーバーのものと矛盾してしまったからではないかと想像している。キーサーバーから公開鍵を取得しなおして、notationを希望の状態にもっていけないか試してみる。

鍵束の公開鍵のバックアップ

$ gpg --export --armor F60960D80B224382CA8D831CB56C20316D6E8279 > 20210302-remobed-twitter.asc

キーサーバからの公開鍵の同期

$ gpg --recv-keys F60960D80B224382CA8D831CB56C20316D6E8279
gpg: key B56C20316D6E8279: "zunda <zundan@gmail.com>" 1 new signature
gpg: Total number processed: 1
gpg:         new signatures: 1
$ gpg --list-keys --with-sig-list --list-options show-notations F60960D80B224382CA8D831CB56C20316D6E8279
pub   rsa3072 2020-06-24 [SC] [expires: 2022-06-24]
      F60960D80B224382CA8D831CB56C20316D6E8279
uid           [ultimate] zunda <zundan@gmail.com>
sig 3        B56C20316D6E8279 2021-03-01  zunda <zundan@gmail.com>
sig 3    N   B56C20316D6E8279 2021-02-17  zunda <zundan@gmail.com>
   Signature notation: proof@metacode.biz=https://mastodon.zunda.ninja/@zundan
sig 3        B56C20316D6E8279 2020-06-24  zunda <zundan@gmail.com>
sig 3    N   B56C20316D6E8279 2021-03-01  zunda <zundan@gmail.com>
   Signature notation: proof@metacode.biz=https://twitter.com/zundan/status/1366266732046770176
sub   rsa3072 2020-06-24 [E] [expires: 2022-06-24]
sig          B56C20316D6E8279 2020-06-24  zunda <zundan@gmail.com>

Twitterへのnotationの削除

$ gpg --edit-key F60960D80B224382CA8D831CB56C20316D6E8279
gpg (GnuPG) 2.2.19; Copyright (C) 2019 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Secret key is available.

sec  rsa3072/B56C20316D6E8279
     created: 2020-06-24  expires: 2022-06-24  usage: SC  
     trust: ultimate      validity: ultimate
ssb  rsa3072/164F21FF001C8CD1
     created: 2020-06-24  expires: 2022-06-24  usage: E   
[ultimate] (1). zunda <zundan@gmail.com>

gpg> notation
Enter the notation: -proof@metacode.biz=https://twitter.com/zundan/status/1366266732046770176
No notations on user ID "zunda <zundan@gmail.com>"

gpg> quit

あれれ?

zundazunda

notationの確認は--check-sigsの方が良いかも

$ gpg --check-sigs --list-options show-notations F60960D80B224382CA8D831CB56C20316D6E8279
pub   rsa3072 2020-06-24 [SC] [expires: 2022-06-24]
      F60960D80B224382CA8D831CB56C20316D6E8279
uid           [ultimate] zunda <zundan@gmail.com>
sig!3        B56C20316D6E8279 2021-03-01  zunda <zundan@gmail.com>
sig!3    N   B56C20316D6E8279 2021-02-17  zunda <zundan@gmail.com>
   Signature notation: proof@metacode.biz=https://mastodon.zunda.ninja/@zundan
sig!3        B56C20316D6E8279 2020-06-24  zunda <zundan@gmail.com>
sig!3    N   B56C20316D6E8279 2021-03-01  zunda <zundan@gmail.com>
   Signature notation: proof@metacode.biz=https://twitter.com/zundan/status/1366266732046770176
sub   rsa3072 2020-06-24 [E] [expires: 2022-06-24]
sig!         B56C20316D6E8279 2020-06-24  zunda <zundan@gmail.com>

gpg: 5 good signatures
このスクラップは2021/03/06にクローズされました