Giter Site home page Giter Site logo

Reputation data-type about nostr HOT 9 OPEN

nostr-protocol avatar nostr-protocol commented on July 20, 2024 3
Reputation data-type

from nostr.

Comments (9)

fiatjaf avatar fiatjaf commented on July 20, 2024 5

My proposal is to have an event format like

{
  "id": "...",
  "kind": 7,
  "tags": [
    ["p", "pubkey-of-person-being-rated"],
    ["honest", 97],
    ["judge", 90],
    ["driver", 25],
    ["any-other-category", 12]
  ],
  "content": "Paul is great person, but not good with cars."
}

Apps can decide which tags they will use. The basic ones most apps would care about are "honest" and "judge". "honest" means this is not a thief or scammer or whatever. "judge" means how much we trust their judgement of others, so we can inherit their judgements of others (and also someone that marks us as a good "judge" can inherit our judgements and also this next person's judgements, and so on).

from nostr.

fiatjaf avatar fiatjaf commented on July 20, 2024 1

Sock-puppetry can be dealt with by relays offering verification services "verified by legit-verify-relay.com"

I think this kind of thing fits nicely in my proposal above. You just need a relay (and it doesn't have to be a relay, can be any service or entity of any kind) to have a known Nostr pubkey and publish its own reputation events. If my service anti-thief-attestation.com wants to assert the Nostr key "abcdef" is not a thief they can just publish an event tagging that key as ["honest", 100]. And people who trust anti-thief-attestation.com can just query their reputation events.

Even if the user doesn't know anti-thief-attestation.com, the BUber client can query their reputation events in the background and show that to the user like "you don't know this guy, but our partners have said he is good".

from nostr.

fiatjaf avatar fiatjaf commented on July 20, 2024

While the network is small it doesn't make much sense ot implement deep recursion, although that is not super hard to do, but all those decisions are to be taken by the user and clients, I just want an event format flexible enough.

Many people (@Kukks, @nGoline?) have expressed their opinion that putting some cost on judgements make them worth more (because prevents sibyl attacks?). I think proof-of-work or other things are generic enough that they can be added to any event, for example, as a tag ["coinsfrozen", "address"] (I have no idea of how to do this) or something else. These need other NIPs I think.

from nostr.

arcbtc avatar arcbtc commented on July 20, 2024

Datatype sounds perfect!
I'm not sure about spam protection relying on PoW/payments
Sock puppetry can be limited using Dolus Proof of Account, and relays can blacklist spammers and their feedback?

from nostr.

fiatjaf avatar fiatjaf commented on July 20, 2024

By dofus proof-of-account you mean proving you are someone on Twitter and stuff like that?

That can be done with a scheme like https://github.com/fiatjaf/nostr/pull/15/files, but instead of relying on relays I think it can just be a purely client-side thing (although relays may also use these to limit user access etc if they want) added to event kind 0. Along with name, picture and about you add a thing like "accounts": { "twitter": "fiatjaf" } and then the client searches your Twitter description for your Nostr pubkey. This needs a different NIP since it has also multiple use cases.

from nostr.

FruityWelsh avatar FruityWelsh commented on July 20, 2024

It would make sense to me that signing the rating would also be part of the data type too right?
So then the client can decide which ratings they want to trust (so maybe they only trust friends reviews for examples, or people with high cumulative trust).

from nostr.

fiatjaf avatar fiatjaf commented on July 20, 2024

Yes, that's my idea too.
Keep in mind everything inside the "tags" is signed.

from nostr.

danlatorre avatar danlatorre commented on July 20, 2024

We've talked about this idea for Secure Scuttlebutt SSB on Planetary. And I've heard it come up every so often on many social projects. It's deceptively complex to maintain high trust in the quality of reputation amidst groups of people conspiring to game the system. There is a big lesson to learn from Advogato, a FLOSS developer social network & reputation system that launched back in the day (1999) any new effort should examine where they left off:

Advogato Has Failed
Posted 24 Apr 2007 at 05:21 UTC by [bwtaylor]
https://web.archive.org/web/20210212022243/https://web.archive.org/web/20170628190710/http://www.advogato.org/article/928.html

from nostr.

earonesty avatar earonesty commented on July 20, 2024

this is great, imo. simple and readable and usesful.

from nostr.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.