Забавно, искал старый тред, чтобы позвать тебя, а ты уже тут. Как другие сервера получают твой pem-файл? Ты же должен всем сообщить, мол, вот мой открытый ключ, им я подписываю свои сообщения.
эээ, это вообще не так работает. Ключ — это поле в объекте актора. У каждого уникальный. Объект актора получают по его адресу с заголовком Accept: application/activity+json. Адрес (URL) актора — его идентификатор в пределах интернета.
webfinger для случая, когда надо получить этот URL из простого username@domain. И, строго говоря, он не является официально частью ActivityPub. И мастодон нарушает спецификацию в этой части — он считает username@domain главным идентификатором пользователя, а должен считать как раз URL, который указан в поле id в объекте актора (и который возвращает webfinger). У меня эта часть правильно реализована, могу даже сделать изменяемые юзернеймы, но пока не делал.