mirror of
https://github.com/nostr-protocol/nips.git
synced 2024-12-23 08:55:52 -05:00
90 lines
2.3 KiB
Markdown
90 lines
2.3 KiB
Markdown
NIP-56
|
|
======
|
|
|
|
Reporting
|
|
---------
|
|
|
|
`optional`
|
|
|
|
A report is a `kind 1984` event that signals to users and relays that
|
|
some referenced content is objectionable. The definition of objectionable is
|
|
obviously subjective and all agents on the network (users, apps, relays, etc.)
|
|
may consume and take action on them as they see fit.
|
|
|
|
The `content` MAY contain additional information submitted by the entity
|
|
reporting the content.
|
|
|
|
Tags
|
|
----
|
|
|
|
The report event MUST include a `p` tag referencing the pubkey of the user you
|
|
are reporting.
|
|
|
|
If reporting a note, an `e` tag MUST also be included referencing the note id.
|
|
|
|
A `report type` string MUST be included as the 3rd entry to the `e` or `p` tag
|
|
being reported, which consists of the following report types:
|
|
|
|
- `nudity` - depictions of nudity, porn, etc.
|
|
- `malware` - virus, trojan horse, worm, robot, spyware, adware, back door, ransomware, rootkit, kidnapper, etc.
|
|
- `profanity` - profanity, hateful speech, etc.
|
|
- `illegal` - something which may be illegal in some jurisdiction
|
|
- `spam` - spam
|
|
- `impersonation` - someone pretending to be someone else
|
|
- `other` - for reports that don't fit in the above categories
|
|
|
|
Some report tags only make sense for profile reports, such as `impersonation`
|
|
|
|
`l` and `L` tags MAY be also be used as defined in [NIP-32](32.md) to support
|
|
further qualification and querying.
|
|
|
|
Example events
|
|
--------------
|
|
|
|
```json
|
|
{
|
|
"kind": 1984,
|
|
"tags": [
|
|
["p", <pubkey>, "nudity"],
|
|
["L", "social.nos.ontology"],
|
|
["l", "NS-nud", "social.nos.ontology"]
|
|
],
|
|
"content": "",
|
|
...
|
|
}
|
|
|
|
{
|
|
"kind": 1984,
|
|
"tags": [
|
|
["e", <eventId>, "illegal"],
|
|
["p", <pubkey>]
|
|
],
|
|
"content": "He's insulting the king!",
|
|
...
|
|
}
|
|
|
|
{
|
|
"kind": 1984,
|
|
"tags": [
|
|
["p", <impersonator pubkey>, "impersonation"]
|
|
],
|
|
"content": "Profile is impersonating nostr:<victim bech32 pubkey>",
|
|
...
|
|
}
|
|
```
|
|
|
|
Client behavior
|
|
---------------
|
|
|
|
Clients can use reports from friends to make moderation decisions if they
|
|
choose to. For instance, if 3+ of your friends report a profile for `nudity`,
|
|
clients can have an option to automatically blur photos from said account.
|
|
|
|
|
|
Relay behavior
|
|
--------------
|
|
|
|
It is not recommended that relays perform automatic moderation using reports,
|
|
as they can be easily gamed. Admins could use reports from trusted moderators to
|
|
takedown illegal or explicit content if the relay does not allow such things.
|