KeyoxideでPGP鍵の所有者証明をする


ディレクトリサービスとして、Keybaseを使用している人はちらほらいると思います。
私も無論使用しています。

KeyoxideはOpenPGP(gpg)鍵でアカウント証明するためのサービスです。
またこのサービス自体はオープンソースになっています。

Keyoxideの作成例↓

使うには

まずはgpgなどでOpenPGPの鍵を作ります。
作成方法は割愛いたします。

そしてその鍵をkeys.openpgp.orgにアップロードします。

gpg --keyserver hkps://keys.openpgp.org --send-keys <フィンガープリント>

keys.openpgp.org側からメールアドレスによる検索を有効にするためのメールが届くかもしれません。
その場合は受理しておいたほうが良いと思います。

https://keyoxide.org/ にアクセスするとこのような項目があるので、ここにフィンガープリント(keys.openpgp.orgでメールアドレスによる検索を許可した場合はメールアドレスでも可)を入れて「GENERATE PROFILE」をクリックします。

そうすると自分の名前が出てくるはずです。

証明を追加する

証明はドメイン(DNS)や、Mastodon、GitHubに対応しています。
対応しているサービスはここから確認できます → https://docs.keyoxide.org/key-management/adding-claims/

証明を追加し終わったら、鍵をkeys.openpgp.orgにアップロードします。

追加方法をいくつか紹介します。

ドメイン

証明を追加したいドメインのTXTレコードに以下の内容を追加します。

openpgp4fpr:<フィンガープリント>

そしてgpgで鍵の編集を行います。(鍵の編集の手順は以後同じ手順になります)

$ gpg --edit-key <フィンガープリント>
gpg> notation # 注釈を追加します
注釈を入力: 

注釈は以下のように入力します

[email protected]=dns:<ドメイン>?type=TXT

以下のようになるはずです。

[email protected]=dns:yuzulia.work?type=TXT

GitHub

gist.github.comへアクセスし、以下のgistを作成します。
gistは公開設定にします。

openpgp.md
This is an OpenPGP proof that connects [my OpenPGP key](https://keyoxide.org/<フィンガープリント>) to [this Github account](https://github.com/<GitHubのユーザー名>). For details check out https://keyoxide.org/guides/openpgp-proofs

[Verifying my OpenPGP key: openpgp4fpr:<フィンガープリント>]

自分のフィンガープリントや自分のGitHubユーザー名に変更します。

注釈を追加します。

[email protected]=<作成したgistのURL>

Mastodon

所有するMastodonアカウントのプロフィール補足情報に、どちらかを入力します。

ラベル 内容
OpenPGP フィンガープリント
Keyoxide KeyoxideのプロフィールURL

注釈を追加します。

[email protected]=https://<Mastodonのインスタンスアドレス>/@<ユーザー名>

確認

自分のKeyoxideのプロフィールに行き、証明が追加されていてかつ緑のチェックマークがついていれば完了です。

注釈を確認する

gpgで鍵の編集モードに入り、showprefコマンドを入力します。

$ gpg --edit-key <フィンガープリント>
gpg> showpref

証明を削除する

gpgで鍵の編集モードに入り、注釈を追加するところまで手順を進めます。

$ gpg --edit-key <フィンガープリント>
gpg> notation
注釈を入力: 

すべての証明を削除する

noneと入力します。

一つの証明を削除する

削除したい証明の注釈の先頭に-(ハイフン)をつけて削除します。
確認されるので問題がなければYで決定します。

証明を削除したら鍵のアップロードを忘れずに行ってください。