Note
このドキュメントは2026-02-27 02:30にPLaMo Translation Modelを使用して自動翻訳されました。
FEP-044f: 同意を尊重した引用投稿
Warning
このドキュメントは原文から内容が欠落しています。
下位互換性に関する考慮事項
(このセクションは非規範的です。)
この仕様書では、ActivityPubクライアントがこの提案を実装する際に、汎用のActivityPubサーバーソフトウェアに追加機能を実装する必要がないよう、細心の注意を払って設計されています。
特に、この理由から、承認スタンプはAcceptアクションそのものではなく、独立したオブジェクトとして定義されています。実際、ActivityPub仕様ではRejectやUndoアクションがAccept自体を無効にする規定がないため、これは適切な承認スタンプとしては機能しません。
ActivityPub仕様上はDeleteアクティビティの対象としてAcceptを指定することは技術的に禁止されていませんが、このような事例は見当たらず、fediverse全体で適切に処理されない可能性があります。このため、私たちはActivityPubクライアントが直接管理できる独立したオブジェクトを採用することにしました。例えば、Acceptアクションを送信する前にCreateアクティビティで承認スタンプを作成し、通常の削除メカニズムを使用してこれを削除できるようにしています。
検討した代替案として、引用投稿の承認状況を確認するための専用エンドポイントを使用する方法がありました。この方法では承認検証機能を別システムに外部化できますが、サーバー側に新たなコンポーネントを追加する必要があるため、本仕様書で説明する方式を採用しました。
後方互換性に関する考慮事項
(このセクションは規範的ではありません)
このFEPを実装していないクライアントにとって、引用投稿は通常の投稿と同様に扱われ、明示的な関連付けはありません。これは引用元の投稿がコメントなしで中継されるよりは望ましい状態ですが、依然として重要な意味論的文脈が不足しています。
したがって、引用投稿を作成する際には、その内容に引用元の投稿への参照を含める必要があります。例えば、<span class=\"quote-inline\"><br/>RE: <a href=\"https://example.com/users/alice/statuses/1\">https://example.com/users/alice/statuses/1</a></span>のように追加することが推奨されます。
quote-inlineのような専用クラスを使用することで、投稿に引用が添付されていることを検出した場合に冗長な情報を隠すことが可能になります。
セキュリティに関する考慮事項
(このセクションは規範的ではありません)
現行のFEPを実装していないサーバーでも、特に負荷分散を抑制する仕組みを提供することなく、通常通り引用を行うことができます。これについては残念ながら対処の余地がありません。ただし、現行のFEPを実装しているサーバーでは、こうした引用を表示しないように拒否するべきです。これにより、本FEPで規定された制御メカニズムを実装する意義が維持されます。
現行のFEPでは引用投稿の可視性に関する動作は規定されていませんが、実装時には誤って許可されていないユーザーに引用内容が表示されないよう特に注意を払う必要があります。具体的には、ユーザーブロックやフォロー関係に基づく制限などが確実に適用されるようにすべきです。同様に、発見可能性・検索性・プライバシー設定(例えばFEP-5feb)なども尊重する必要があります。サードパーティサーバーによる意図しない情報漏洩のリスクを軽減するため、引用元投稿よりも広範な視聴者に公開可能な投稿を許可しないことが推奨されます。
承認済みの引用投稿を効果的に取り消すには、引用投稿者のサーバーがそのオーディエンスに到達するための協力が必要です。つまり、権限を取得した悪意のあるサーバーは意図的に取り消し通知を転送しないようにすることが可能です。ただし、善意のサーバー間での引用取消機能や、機会的な承認検証による取消確認は、情報伝達が不十分なサードパーティサーバーが存在する状況においても有用です。
QuoteAuthorizationオブジェクトに返信内容のハッシュやコピーを追加しないことで、悪意ある行為者が分割領域設定を利用して、異なるアクターに対して同じアクティビティの異なるバージョンを送信する可能性があります。ただし、これはActivityPubのほぼすべての文脈において既に懸念事項であり、この情報をQuoteAuthorizationオブジェクトに含めることには以下のような多くの欠点があります:
- 実装が大幅に複雑化する
- 事後的にJSON-LD表現を変更することが不可能になる
- QuoteAuthorizationオブジェクトが公開参照可能な場合、機密情報が漏れる可能性がある
実装状況
- Smithereenは、常に許可される引用ポリシーを提供し、引用投稿の作成をサポートするほか、
QuoteRequestに対する応答としてQuoteAuthorizationを生成しますが、現時点では引用の検証や承認スタンプの要求はサポートしていません - Mastodon 4.4ではリモート引用投稿の検証と表示機能が追加されました。バージョン4.5では、引用投稿の作成機能と、自動承認を基本とした引用ポリシー設定(
as:Public、著者のフォロワーコレクション、または誰も許可しないオプション)をサポートする予定です
参考文献
- [RFC-2119] S. Bradner, Key words for use in RFCs to Indicate Requirement Levels
著作権
CC0 1.0 Universal(パブリックドメイン献呈)
このFediverse Enhancement Proposalの著者は、法律で許される範囲内において、本著作物に関するすべての著作権および関連する権利を放棄しています。