Decentralised State —Building a private system of justice
This is still a in-development concept. To contribute, criticise and collaborate : https://github.com/jucasoliveira/settlementIO
If you have some sort of political beliefs and use social media to follow one of your favourite Youtuber / Blogger / Influencer / Streamer , you always step into the same complaints a lot of them use nowadays, that they were demonetised, blocked, banned, from the platforms that nowadays produce thousand of jobs direct and indirectly. Despite of this social media “stars” complaints, must of the social media platforms produce a wide range of complaints of how their review system are broke or being exploited by third parties corporate, politics groups , activists , etc.
There is some identifiable problems when we look at this situation. First of them it’s to know and trust if the users of the platform are telling the truth and respecting the policies of the company. The second it’s the third parties there can use the nuances of the platforms terms to exploit and steal money or do harm to those users getting their accounts blocked/banned. Third it’s the content reviewer of the platform that can use a biased motivation to accept the complaint and move forward to do harm to those users.
When I stop to think about a solution for this particular issue I’ve saw that , even that companies like Facebook and Google hire more people to review their content, the scale of the data to be reviewed will grow exponentially that’s will be hard to achieve a good level of reviews without any problems regarding misleading on the result of the content being reviewed, the way the content review works it’s coming to a huge lack of solutions to improve it.
So how we trust on platforms that being failing to protect the users who have being using it fairly and punishing those who are using their products on a wrong way?
Lets look about it: a company like Google have their “term of usage” of YouTube, this terms enforce how the users can use the platform , who you get paid creating content inside it, and your rights and duties where using it and, when you accept it, it becomes a contract between the platform and the user. So to comply with the content being reported or copyright clammed, the rules must be clear and applied fairly.
Looking to this issue, we can see that’s more than only Youtubers complaining they are being demonetised, or some streamer got banned from Twitch for wrong reasons, we talking about how laws, on digital world, are being enforced on a private environment using, basically, the same process behaviours of the real world.
Brehon Law
When I started to research and start to think a broader approach that could have expected results on the matter, I decided to expand my questions to another industries … And I’ve figure out that what I was trying to achieve it was creating a process that could , in fact, use it as a place where judgements regarding not only content, but even normal disputes, could be held and achieve a better result where all the parts agree.
So my first approach, as a stateless wannabe, was to look at the past , to history , to figure out some sort of process that the State as we know haven’t take part on the law making , judgment or results on a dispute. The far I could find it was the Brehon Law.
Brehon Law was an ancient Irish legal system that survived until the early 17th. This native legal system was fully developed prior to, and continued in spite of, Christian, Danish, and Anglo-Norman invasions of Ireland; although it was, somewhat, disrupted by each event. Although the exact date of inception of the Law is unknown, the existing evidence would suggest that it was developed during the Bronze Age (2,300 to 900 BC). There is also evidence that would suggest that the major development of, at least, a rudimentary form of the Law took place between the 18th and 13th century BC.
But this rudimentary system could work on 2019 , where we have more complex and different laws not only from companies, but between countries? With the use of the internet, a broader judgment system can be made. So I’ve gathered the most interesting points on Brehon Law to start defining the kind of approach I want to achieve on the system I want to create.
- As laws of users, law could not be changed without public approval
- Any modification of existing laws or enactment of new ones could only be achieved in open forum of the assembled people
- Although certain individuals could campaign for a specific law, it took a majority vote of all free persons to effect enactment
- The Brehons, although often improperly described as Judges, were actually arbitrators and legal advisors to the ruler
Define a law that can be use by companies, governments, and other entities its not that simple. If you see that with the EU law makers making wrong decisions and ruling against its own people (Article 13), creating a law of users that’s acceptable among all users would be basically impossible. We’re talking about a system over the internet that could reach thousand of people, with different culture and motives. So looking at the point 1 , I’ve decided that this system do not want to generate any new laws, but accept the law that's the dispute will take place. Unfortunately , I had to discard the possibility to implement the point 2 and 3, but perhaps at the end of this paper we still can have a happy ending for that.
Even that the point 2 and 3 are, at this point, unachievable, when I looked to point 4, I saw a opportunity that could bring people to the system.
To a dispute, ruled by a law made from a third party , have a satisfactory result they must have not one , but a number of odd individuals working as arbitrators(Brehons) which don’t know each other , making on their on discrepancy analysing the law and dispute the which the latter is claiming and giving their final opinion, made our last point possible to be achievable. So to test this idea, I’ve tried to apply it onto know problems of our society nowadays.
Fake news
The term that’s very notable today it’s now new to our eyes when we study how the information is spread. The human inability to pass the information with accuracy , or our natural behaviour to select the information we want helps to spread miss information , and for those who understand it, using people to spread lies it’s the perfect weapon of the post-truth.
Post-truth and fake news are largely use to achieve political power, using to manipulate public opinion and the factual truth. Seeing that, some organisations are trying to tackle the problem creating “fact-checks” to seek the truth.
But how do we ensure that ‘fact-checks’ organisation doesn’t have bias , while the same organisations are news papers with notable bias towards a political spectrum?
Not knowing and being sceptical among a peer it’s the better way to policy yourself to do what is right among the rules that follow, to not been appointed as a fraud and loose credibility, and this is the worst scenario a news outlet would face. And there is some solutions to that.
The first solution would incentives a numerous organisations to create their own ‘fact-check’ , to dispute what is right or wrong among the information, but nowadays we already have this scenario, and still leading us to miss information. But, given a decentralised ‘fact-check’ using number of odd individuals ,which don’t know each other, to a give a insight of the fact and gathering the feedback and taking the majority to give a result, how we can acquire a level of reputable result which can be trusted?
Only relying on the fear of the individual to avoid it’s bias and give a feedback with the lack of it still not optimal solution, people still can give their biased result , because base on a majority vote system, you only ensuring majority, and not unbiased. To avoid this to happen , a decentralised system it’s need to give the individual a rate , where this rate will define it’s power of vote, seeking to punish those who act unfairly on this system.
VAR
Yes , you have read this correctly , the video assistance referee. A new introduction to the rules of this sport tradition that is football. The var introduced a new referee assistance that, in the event of a possible miss judgment of the rulers at the field , to require a new evaluation of the decision made during the match.
The professional football have been over decades trying to tackle problems of wrong referee decisions on the field, rather been because of interpretation of the rules, bias towards one team and , also , corruption.
VAR is, nonetheless, the latest case where , to avoid the wrong decisions to be made which would change the course of a football match, trying to ensure more fair and accurate final result of the game.
Looking at the VAR , can’t we relate on what we are achieving? VAR uses a 3rd referee which calls the 1st referee when a dodgy scenario on the game appears, the decision on the game is , at the end, ensure by not one, but 4 different individuals, looking on the rules which a game comply.
A the end, the goal of this rule is using peers, with the knowledge of some rule , to argue and get into a conclusion of a possible dispute. This is a good example on a good dispute management , but still rely only on a feel peers (on that case it’s a good scenario to implement) and doesn’t have a model that could scale in other scenarios.
At the end of my brainstorming, I’ve saw a good opportunity and realise that what I was looking for to achieve it was to create a protocol that could be widely used over the internet and to a various number of platforms, that could be a changing on the way we approach to solve problems on platforms or even though to speed up settlement disputes, but I still having more questionings.
How a result of a dispute on this protocol would be enforced, and why those participating on the dispute analyses would give their time to review a third party dispute?
To solve the problem regarding the result , I should have a place that the generated result should be immutable and retrievable, having that achieved , we could grantee that the participants which helps solve the dispute could be remunerated. The solution it was decentralisation trough a blockchain.
Using blockchain we can generate Smart Contracts, that’s enforce the results of a dispute, and to record the Smart Contracts on the blockchain we need to issue a fee. As we have many SmartContrat-based blockchains / cryptocurrency, I won’t need to create a new one, but yet create a protocol that runs on top of any of those platforms to generate the results and also remunerate the arbitrators.
Goal
The goal it’s to create a DAO(Decentralized Autonomous Organization) using a Level 2 settlement algorithm described on this paper , being able to create a Concurrency based on smart contracts where the dispute will be issued, reviewed and the result recorded , using digital signature, third party reviewers and law abide owners. To achieve this Goal , the Level 2 settlement algorithm that will be used it’s called Punitive Proof-of-Adequacy
1. Punitive Proof-of-Adequacy
The punitive Proof-of-Adequacy is a type of “Layer 2” settlement algorithm protocol that operates on top of a blockchain-based smart contract network that aims to use a distributed consensus to achieve a result on a settlement dispute. In PoA protocol there is an earlier level of consensus, where the peers who hold the PoA act creating a network channel ( a Pool ) , assigning an odd n P2P curators(Reviewers) connected to the network, giving them access on a settlement dispute via various combinations of random selection of Reputations, thus generating a smart contract of the result of the dispute , using the fees to be shared among peers curators and the creator, known as Witness, of the next block.
In able to record on a blockchain, PoA have little to none participation, and The Witness can be any Index smart contract-based network.
1.1 Process
When a Reporter file a settlement against the Appealer , the Issuer(I) receive the dispute, then sends to the network the settlement to be reviewed(r), at this moment a bounty can be issued. It’s from the discreet of the I to notify the Appealed of the settlement dispute in course, if don’t, it must be send the information. eg.:
settlementIssued = {
data : `<SETTLEMENT PROCESS>`,
issuer: '688A044D54361D5762100BD1E6559AF4',
reporter: '4A12FE7C3773A2B801BFFEB341A77949',
appealer : '39AAF3FEF253178E15963B9CC27DA138'
}The request it’s sent to Assignment Pool , where the Issuer will accept a number(n) of r , where this n it’s odd quantity of minimum of 7, to a maximum of 25 of r, who requested to be assigned to review the content issued. The r assigned to the content to be reviewed are designated based on the following :
- Position on the assignment pool
- Reputation
- Waiting time
After the designation, the content receive a feedback of the n assigned peer R, and the final result it’s settled. The Result then it’s sent back to PoA algorithm to record it on a blockchain.
The PoA send a data to a pool of results, to be recorded on a blockchain. The data must contain:
- The Review reference/data Result of the settlement
- The price distribution among the winners of the voting settlement added 60% of the bounty issued and reduced by the Witness fee G = pd + (b? b*(60/100) : 0) — wf, if there is any.
- The Witness Total settlement fee attached to 40% fo a bounty issued SF = wf + (b? b*(40/100): 0) , if there is any,
- The hash of all reviewers which was on the settlement
- The hash of the writing witness.
settlementResult = {
RR: '4A12FE7C3773A2B801BFFEB341A77949',
G : `${pd + (b*(60/100) - wf)}`,
SF : `${wf + (b*(40/100))}`,
RW : ['CC54BD37BED550B4F756284A9FF42B4E', '79E9BBAE4E3C33C4EC16E1CCB303EE0B', 'CD47C54AFED2B25F833610FDB8875908',
'0AFB3728EC8AEB70B2B13FB1B6E714E2', '39AAF3FEF253178E15963B9CC27DA138', '92238FEAF3A982CF7D42D6C8FB52D804',
'688A044D54361D5762100BD1E6559AF4'],
W: 'F56146D752AA1B96CB455B59FC017FD9'
}G is the total Grant of the Result, pd = price distribution, b = bounty , SF = Witness settlement fee, wf = Witness fee
A Witness it’s assigned to generate a block on the blockchain via PoS, PoW or the Witness Assignment Logic. Then it will take n data from the pool of results and record it on the blockchain
1.1.1 In a nutshell :

- A dispute is made to the network following a certain rule is being request.
- One peer of the network , defined as Issuer, will register the dispute and request to other peers to be assigned.
- Peers request to assign as a Reviewer to the dispute, and a odd number of Reviewers will be chosen by the issuer.
- Peers granted the availability it will be sorted by their position on the pool , reputation and waiting time on the network.
- Reputations are defined on the previous actions the peers made.
- The result generates a Smart Contract.
- The dispute results is informed back, allowing to be appealed.
1.2 Appeal
A Appeal of the Result can be issued and restart the process , generating a new data to be recorded on the block referring the hash of the last Result.
If the result it’s the same, the settlement it’s closed and It can’t be Appealed again(appealFowardResult).
If the Appeal it’s giving a different result, but the algorithm request a another appeal process to be retrieve the result of the Issuer. Depending of the result, it’s fires the punitive algorithm which will reduce the Reputation and a charge fee to be deducted of the loosing peer reviewers, adding the charge on the prize of the next settlement dispute of the Issuer(appealBlockingResult).
The reviewers charged can’t appeal, as they aren’t one of the 3 p2p actors with this level of permission.
appealFowardResult = {
LR: `F56146D752AA1B96CB455B59FC017FD9`,
RR: '4A12FE7C3773A2B801BFFEB341A77949',
G : `${pd + (b*(60/100)) - wf}`,
SF : `${wf + (b*(40/100))}`,
RW : ['CC54BD37BED550B4F756284A9FF42B4E', '79E9BBAE4E3C33C4EC16E1CCB303EE0B',
'CD47C54AFED2B25F833610FDB8875908', '0AFB3728EC8AEB70B2B13FB1B6E714E2', '39AAF3FEF253178E15963B9CC27DA138',
'92238FEAF3A982CF7D42D6C8FB52D804', '688A044D54361D5762100BD1E6559AF4'],
W: 'F56146D752AA1B96CB455B59FC017FD9'
}
appealBlockingResult = {
WR: '39AAF3FEF253178E15963B9CC27DA138',
LR: 'F56146D752AA1B96CB455B59FC017FD9',
RR: '4A12FE7C3773A2B801BFFEB341A77949',
G : `${pd + (b*(60/100)) - wf}`,
SF : `${wf + (b*(40/100))}`,
RW : ['CC54BD37BED550B4F756284A9FF42B4E', '79E9BBAE4E3C33C4EC16E1CCB303EE0B', 'CD47C54AFED2B25F833610FDB8875908',
'0AFB3728EC8AEB70B2B13FB1B6E714E2', '39AAF3FEF253178E15963B9CC27DA138', '92238FEAF3A982CF7D42D6C8FB52D804',
'688A044D54361D5762100BD1E6559AF4'],
W: 'F56146D752AA1B96CB455B59FC017FD9'
}1.3 Assignment pool
When a R request a settlement for a review , the Issuer will gets the first reviewer available on the Pool (P) of assignment and ask for a review, then the reviewer it’s sent to the end of the P. The position on the assignment pool are defined by time connected on the network, and the position is distributed among the peers. Having the top position on the Assignment Pool doesn’t automatically grants the reviewer the assignment from the Issuer, it’s only a another measurement used to define the assignee of a dispute.
_A_ = _I_.get((reviewer) => reviewer.position )
1.3.1 Assignment Ordination
In order to keep the pool assignment with the must trustful result as possible, the Reputation of n R should be differentiated, getting the advantage of distributing n assignees on a single review by a range of experienced R to new one(or still pool trustable) on the peer network. This range are defined by the R reputation (defined on section Reputation). To control and maintain the trustful of the network the votes will be weight by the assignee reputation, giving the system a controlled and better results of the reviews. Doing that, the aiming it’s to avoid misleading engagement or vicious behaviour from more experienced peer users, avoid power centralisation among the reputation peers, and give a more honest result of the review. The weight of the votes it’s referred on the Vote System Weight section.
1.3 Bounty
Bounty it’s a additional fee inserted on the settlement dispute , created to enable the possibility of a Issuer to require a faster result on a dispute is generated. A dispute with an added bounty it gains priority on top of any other dispute on the network.
1.4 Reputation
A Range of reputation(rp) it’s given to the R , these are “Trustful”, “MidLevel”, “Non-Trustful” and “Undesirable”. When a new R is created, a “Non-Trustful” level is assign to it’s status. The more engaged
1.5 Waiting time
While in the pool, the R will record it’s waiting time, which means the time it connected to the network and hasn’t been granted a assigment. The waiting time is a metric used when a Issuer recieves request of assigment of the peers R
1.6 Vote System && Weight
The reviewer will recieve the settlement and the I rules and define if the settlement it’s on favor or against the Reporter. After the reviewer gives it’s vote, the I will require for the next assignee reviewers on the P, having this reviewer a different level of Reputation(as seen on Assignment Ordenation). After the minimum of 7 votes, the algorithm checks if the settlement have a result, if not it will assing another reviewer until the next odd n of votes and check for the result, having this behaviour until n of votes it’s 25.
This P it’s responsible to queue the assignees to be assign to a next settlement. The quantity of R to be assigned(A) will be the minimum of 7, to a maximum of 25.
A A must have assignees distributed on the following reputation : R[‘Trustfull’] = 25% , R[‘MidLevel’] = 30%, R[‘Non-Trustfull’] = 45%. The reputation defines the power of the vote of each assignees. The “Non-Trustful”(ntt) it’s the benchmark voter, where “MidLevel” has 1.5*ntt vote power , and the “Trustful” R having 2.5*ntt vote power.
1.7 Result
The result of a dispute will generate a Smart Contract to be recorded.
1.8 Pool of Results
All the results will be queue on a pool to be consumed.
1.9 Reputation gratifications/punishment
After the result it’s defined , the Reputation algorithm it’s fired, analysing the voters and the outcomes of the result. When analysed, the algorithm it grants the gratification, which is gave by taking the total fee and spreading the value to the winner voters and the amount divided by the peers Reputation.
1.10 Benefit of doubt
A settlement dispute must have a trustful result, and for that, a settlement have to be reviewed by a odd n of Reviewers(R). To ensure a result it’s trustful, the algorithm allow the benefit ouf doubt of any settlement result, and this doubt it’s granted to the 3 p2p actors. They are the 2 parts on the dispute, the Reporter and the Appealer, and the law abiding Issuer, who defines the rules where a settlement dispute is going on. The amount of benefit ouf doubt it’s determined by it’s own cryptocurrency blockchain network, but in able to avoid fraud it’s recommended to follow the instructions on this paperwork.
2. Rules of the settlement
The Rules of the settlement it’s defined by the Issuer, so the PoA defines this actor the single source of truth when a Benefit of doubt it’s on.
3. Actors
3.1 Issuer
It’s the peer who has access to the PoA network to send the Settlement dispute over the pool of assigment and accept Reviewers request to it. The Issuer can be either the Reporter, Appealer or a network access holder, such as companies who wish to create their private PoA network.
3.2 Reporter
Who’s generate the dispute to be distributed by the Issuer.
3.3 Reviewer
The first n users connected to the platform who selfAssign the review lock the analysis of that content and give their result, the distribution of the review it’s held by the Witness, who assign the review on the pool and check the Reviewer poor-of-integrity, based on the issuer internal policies. The users can’t know each others , so that the system works a non-trustful nodes.
3.4 Witness
The Witness it’s the algorithm(miner) which will hold the distribution of the Issuer content for review trough the Reviewers , defined by location , reputation, proof-of-stake. Once the Reviews are issued, Witness algorithms take the reviewers result, and record the content result on the Chain, working as a notary book for consultation by the Issuer. Therefore the prize value are divided between the Reviewers and credit on their account, which will be paid monthly/weekly. A Witness node who insert the Review first it’s granted the fee charged from the Issuer. The Issuer can be a Witness for the chain.
3.5 Appealer
Users/reporters who have a settlement result against their will, can appeal te result of the review and a new request are issued. n appeals can be granted by settlement , defined by default of by the Issuer. It’s from the discreet of the I to notify the Appealer of the settlement dispute in course, but the Appealer must be notified after the result. And the I must inform the network if the Appealer were notified when the settlement dispute were post in course
4. Security measurement
How to secure the block
5. Pros
Company can use the platform where the pool of nodes to be reviewed can give more returns for the content Reviewers Platform can be onPrem or onCloud. Reviews can be more reliable.

6. Cons
Who review the Reviewer
Develop how the platform will receive the content from the Issuer and deliver it to the Reviewer
Define how a appeal must be accepted by a Reviewer. A punitive proof-of-adequacy must be implemented in full to enforce the need of the reviewer be trustful on his/her review(also can work for managing the user behaviour)