Last active
February 7, 2022 20:06
-
-
Save liamzebedee/c1bb4f79b67b3e7a39215b7ac3a80771 to your computer and use it in GitHub Desktop.
Ideas on Trust, PageRank, Networks/Communities and how Blockchain can make us closer
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This is design based on gut feeling. | |
PageRank lets us normalise relationships in a network. | |
With a blockchain, we can have an immutable ledger of edges. | |
We can use PageRank for reputation and identity? | |
People make votes | |
ie.: | |
a -> b | |
a -> b | |
a -> b | |
b -> c | |
Sybil attacks are an interesting area: | |
we can generate an unlimited number of identities | |
and create an infinite number of votes moderated by the economics of it | |
what else can we do with pagerank? | |
normalisation: | |
take all a node's votes | |
normalise the value they ascribe | |
ie 1000 vA == 1 vB if A is always making with 1000x more weight in their votes | |
the principal eigenvector is an interesting score of relativity | |
in pagerank, it represents the relative importance of a page | |
can we incentivise social connectivity? | |
PageRank on the network = get the relative integration of each node in terms of connected to other nodes | |
Something like the Gini coefficient | |
Something about X > 0.5 then we trust. It's a threshold system. | |
A : 0.8 | |
B : 0.2 | |
something like that: | |
We are looking at the clusters of the network and summarising them | |
ABCD = 0.5 | |
DEHIJ = 0.5 | |
Maybe we can use subjective logic? | |
Use the threshold as an uncertainty value | |
We want to be able to trust any person | |
To do that, we need to follow a line of trust | |
We want to incentivise social connectivity (?) | |
Direct votes are worth more than foreign votes (?) | |
Trust in A from B's perspective: | |
direct trust relations? = that | |
none? | |
is there a route to A? | |
[graph routing ew] | |
what if I transfer some of my trust to them only when I invite them? | |
digital empathy or something | |
if there isn't: | |
a priori | |
join the network | |
Liam invites Marijn | |
This is a trust contract: | |
I'm staking my reputation onto Marijn | |
There is some threshold hit for Marijn being trusted by other people now | |
For example: | |
I invite Marijn, and stake my EMP on him | |
Now Marijn makes some interactions | |
The ideal is that interactions are free | |
If Marijn does something good, I get rewarded, and the people who trust me get rewarded | |
The more closely connected our good actions are, the more weight in the network or something | |
Imagine you digitse the relationships of geopolitics for example | |
Big clusters (hierarchy of power: head of state -> government officials --> citizens) | |
Are the big clusters as trusted as smaller ecentralized clusters | |
Then later, we can stake our EMP on interactions | |
Thus, if someone screws someone else over, we can arbitrate the EMP or something | |
The importat thing to guard against, is mob mentality and tyranny of the majority | |
So you basically can allow a threshold value of the majority you will allow | |
If you imagine multiple independent communities that aren't connected yet by an EMP edges | |
We can tell this literally by constructing the graph and seeing which networks aren't connected | |
The threshold value represents the collective weight of the network must stake to vote in this | |
Collectively speaking: | |
PageRank over one network, get each node's relative weight of their vote. | |
How? We assume this exists, and the pagerank is somehow bootstrapping mechanism for EMP allocation. Also keeps it equitable with new entrants. | |
The networks can partition if there's a major failure in the arbitration process? | |
In doing so, the stakes are destroyed for both parties. | |
So, how to trust someone? | |
Within your network, it is your trust in them moderated by their past actions moderated by the people that have reported them. | |
REDUCE | |
FOCUS | |
Reduce: | |
Your trust in them | |
Their past actions | |
Moderated by | |
The people that have reported them | |
How do we achieve the last point? | |
What if two people are in two networks? Then how does their reputation work? Is it global or just network-specific... | |
I guess it's relative to each network. | |
Each path even. | |
All people give varying levels of trust to varying amounts of people | |
And you see these visuals and patterns emerging on a grander scale | |
Focus: | |
how can we know how much to trust another person? | |
Based on: | |
- our senses and gut instinct | |
- the situation in which we meet them | |
- who introduced us to them | |
- what we know about their past | |
how do we establish trust? | |
trust is reliability | |
re-liability - the idea that we make ourselves liable multiple times for someone else | |
ie. we stake something in the relationship, and it ?pays off? | |
What is the payoff? | |
If I trust you will pay me back, in future you can ask something of me. | |
Or maybe you will have better recommendation from me for someone who DOESNT KNOW YOU. | |
basically the payoff is always socially external(?) | |
We build up trust over our lifetimes | |
We lose it when we fail people | |
The more trust, the less overhead in communication | |
Communication = collaboration | |
Something something resourcefulness, leverage, history of humanity. | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
A scalable reputation and trust coordination protocol | |
Liam Zebedee - 25 Oct 2018 | |
=== | |
There are many reputation tokens, but we're not there yet. We want something that is an immutable log of someone's behaviour. But not for dystopian purposes - only arising from natural need. | |
We want to establish more trust with people, but not solely based in economic stake - ETH as a staked currency would make trusting people a costly action, which eliminates the benefits. | |
We could implement it as a separate reputation token. The problem then, is how do we coordinate the minting of the token - the whole value of a reputation protocol is that it is universal: being malicious in one domain should affect your reputation in all. | |
Lastly, Sybil attacks are always noted: how can we achieve the properties, while mitigating the risk of many generated identities and claims to trust from gaming the system? | |
## Proposed design | |
People are identified by their address. | |
Thesis: Trust is reliability. Trusting someone is reputable, means you can repeat liability on yourself that they will act reputably. | |
Liability in this case is represented as a token stake. | |
Acting reputably is up to the reader. This proposal assumes it is some protocol interaction which was good. | |
Trust token is minted when two people bond. Consider actors Alice and Bob. | |
Alice -> BOND(Bob) | |
Bob -> BOND(Alice) | |
Ledger: | |
From To | |
----- --- | |
Alice Bob | |
Placing bonds with people is akin to creating a mutual stake. | |
Problem 1: How do we mint the reputation token? | |
When a bond is created, this is where reputation is minted. The `from` actor will create bond tokens for the `to` actor. | |
The amount does not matter for now. It can be normalised. | |
Problem 2: How do we find out how much we trust any actor? | |
Using something like subjective logic, we can calculate a value for our trust in any node based on how we know the other nodes. | |
The key is that we must have a path between two nodes. | |
Question: what is a priori trust? | |
Subjective logic lets us contend with this question in a different frame: uncertainty. Trust itself can be a setting on the client. | |
Problem 3: How do we stop Sybil attacks? | |
If someone can submit mass bonds to one actor, they achieve nothing. However |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment