あなたはある点では正しく、別の点では間違っています。
右: キーに失効証明書を追加するための正しい関数を見つけました。addCertification 関数は、失効証明書を PGP キーに追加するために使用する必要があります。
間違い: この関数では、公開鍵の所有者以外の誰かによって署名された失効証明書を追加することはできません (これはあなたの仮定だと思います)。
誰でも署名した任意の証明書を PGP キーに追加できます。添付された証明書がキーに関連する影響を与えるかどうかは別の問題です。
たとえば、私の秘密鍵によって生成された失効証明書をあなたの公開鍵に添付できます。しかし、これはあなたのキーが取り消されたことを意味しますか? 要するに、いいえ、そうではありません。これは、対応する秘密鍵によって署名された失効証明書によってのみ公開鍵を失効させることができ、鍵が失効したと言う前にこれを検証するのはそれぞれの実装 (たとえば、GPG のような暗号化プログラム) 次第であるためです。
あなたの場合、公開鍵には任意の数の失効証明書が添付されている可能性があります。ただし、対応する秘密鍵 (おそらく所有していて、できれば秘密である) によって署名された失効証明書のみが、実際にそれを失効させる効果があります。
とはいえ、自分の鍵を失効させたという事実を世界中に、つまり鍵サーバーを介して伝えたい場合は、最初に自分の秘密鍵で署名された失効証明書を生成し、それを自分の公開鍵に添付する必要があります (効果的に取り消す)、この取り消されたキーをキーサーバーにアップロードします。キーサーバーは、キーを持っている場合はそのコピーにキーをマージし、このキーを知っている他のキーサーバーに伝達します。すべてがうまくいけば、数日かそれ以上で、取り消された鍵は、鍵をアップロードした鍵サーバーに直接または間接的に接続された鍵サーバー全体で利用できるようになります。