I propose an idea for a distributed reputation system for Bitcoin. It is based on a "marking" of the public transaction history. Here is how it would work:
Every Bitcoin transaction can be voted either positive, neutral, or negative. Only addresses directly involved in said transaction can tag said transaction. Comments can be attached to the vote.
An address' reputation can be the sum of (positive votes x BTC amount) - (negative votes x BTC amount). Each address owns their own votes.
Since the transaction history is public to all, transaction amounts can be easily verified. All that is needed is transaction tagging. In order to avoid coupling this functionality into Bitcoin, it should ideally be part of a standalone package and call Bitcoin externally (or at the very least, should probably not be part of the Bitcoin core API). That is why Bitcoin needs to be standardized into an API so that third-party apps such as this can be developed; I understand that JSON is a step in this direction, but it has security risks and cannot be public by default. Perhaps what is needed is a tiered approach so that public data can be publicly exposed by default, whereas the full JSON lib needs to be unlocked.
This is just an idea that popped into my head, and I thought that I should write it down. What do you guys think? Please write down your own ideas here, as well!
It seems easily verifiable to tag transactions like that.