Community-Based Account Verification: The Radical Version

in #trust7 years ago

I tend to get my best ideas while taking a shower or right before going to bed. This idea came up a couple nights ago and I thought it was interesting enough to discuss in more detail. Up to this point, my previous ideas have been rebuffed by the fact that attackers can simply create new accounts to take advantage of the weak "Proof-of-Brain" standard.

I was initially chasing for a solution to the inequality problem, but the real problem with Steem is that of account legitimacy. There is a built in assumption that any account is a good actor. A bad assumption if you are trying to build a secure system that rewards users for good behavior in the community.


check-2160904_640.png

The real issue is verifying whether or not the community trusts the account


Now account verification is not a new idea. There are self social media sites that showcase their verified users and tie those users with a single identity. But their verification process requires a small pool of employees selected by the company making the whole process inherently centralized. There is also the desire to tie an account with an identity.

However, we don't need to be that strict. Rather than argue for one account, one identity, we argue for whether or not we trust an account as a legitimate contributor to the community and deserving of rewards. We don't care if they have a face to tie to their account unless they claim to be a particular individual. Which may or may not be part of the verification process depending on the individual.

In order to verify identities, we need a small group of individuals, initially, to begin verifying accounts. However, these individuals shouldn't be selected by a single organization but the entire community at large. One might look at the witnesses, but these initial verifiers, should be independent of witnesses. They can still be witnesses, but being a witness shouldn't be a requirement or an expectation. While it might be good to have people that have technical experience, we simply need people that the community "trusts" to make good decisions.

To select these top-level verifiers, all the members of the community simply elect them as they would a witness, with votes expiring after 12 months, with the possibility of renewal after 6 months. This is to prevent the voices of dead accounts from being heard.

An arbitrary number of these top-level verifiers would be selected, with those selected having the greatest percentage of stake to their names. People would be able to vote for an unlimited number of people (although this might be limited for practical reasons). For me, a reasonable amount of top-level verifiers would be 10. That might seem like a small number, but it really isn't once we go through the verification process.

These top-level verifiers are now verified. They are the only members who are verified within the community at this point. This verification appears to be legitimate as it requires a lot of trust to be selected as one of the Top 10 most trustworthy members of the entire community. But, what about the other members of the community that are still unverified?

Well, this is easy. They simply need 2 of the top-level verifiers to explicitly trust them. Imagine each account needing a certain minimal amount of trust to verified. The top-level verifier is able to fill 50% of that trust quota. Pretty simple. This explicit vote of trust would also last for 12 months, with the possibility of renewal after 6 months.

But the sheer number of accounts is so large and growing that it would be nearly impossible for these top-level verifiers to verify all of these accounts and continually renew their votes. Thus, we need more verifiers. Thus, we have secondary level verifiers. These people are folks who have at least 2 votes of trust from top-level verifiers. These folks also have the ability to help verify accounts, but because they weren't directly elected, we shouldn't trust them as much.

Thus, secondary level verifiers are able to fill 25% of the trust quota. Thus, accounts can now be verified by much more than simply one of the 10 top-level verifiers. Now, you can be verified by either the top-level verifiers, the secondary-level verifiers, or a combination of the two. As long as you fill 100% or more of your trust quota, you are a verified and trusted member of the community.

We can continue to extend these levels of verifiers. An n-ary level verifier would be someone whose trust quota is filled by verifiers who are of the (n-1) level and above. Any n-ary level verifier is able to fill ((1/2)^n)% of the trust quota. Now depending on your implementation you may want to restrict the number of levels that you allow trust to be distributed in such a manner. Anymore than 6-8 levels might be excessive but depends on the size and degree of participation of the respective community.

Also note that verification is not a permanent status. At any time, one of the verifiers votes could expire, or depending on poor behavior, a verifier may opt to revoke their vote of trust. Depending on the level of the verifier, this could cause a chain reaction of accounts becoming unverified. Thus it is important for all users to stay involved and diverse the sources of their verification.

This encourages good behavior and participation in the network. Those who attempt shady things in the background and don't contribute to the community will never be verified. Certain community members who like to revenge "flag" or reward pool rape may stop their behavior in order to maintain their verified status. Or they may not. Which leads us to the "radical" part of this proposal.

Only verified members will be allowed to earn rewards and cast votes reflective of their weight in Steem Power. Unverified members can still transfer money and purchase/trade Steem and SBD and power up, but they will have zero interaction or influence over the new Steem being mined. This makes the weak "Proof-of-Brain" standard into a stronger standard. Granted such a system requires active participation, but vastly decreases one's ability to simply buy some Steem and start farming with a massive number of accounts.

Now, this idea isn't completely novel. From what I understand, @ned's idea of oracles do sound similar to my top-level verifiers although it is a little unclear what else oracles can and can not do. The part about locking rewards from unverified accounts is novel and why I call this proposal "radical".

Now granted there are a lot of "entitlistas" on this platforms who feel they deserve to make rewards independent of their role in the community. But I must ask why should these people be rewarded? They help no one but themselves. If you do engage in the community, you shouldn't be concerned. If you are concerned, chances are that you are less involved with the community than you think you are.

Trust needs to be earned and that's what makes this system secure and worthy of the "Proof-of-Brain" moniker. In the current system, you don't really have to prove anything other than having slightly more intelligence than a hamster and access to a computer.

So, I open up the conversation to the floor. I want to hear your ideas, your proposals, your concerns. What I don't want to hear is apathy or computer generated bot spam. I'm still giving away SBD, so I will give up to 10 of the best comments 10% of the SBD. If I only deem 3 comments to be prize worthy, each commenter gets 33%. Make sense?

Thanks again for taking the time to read this. If you simply skipped to the last paragraph for some reason, I hope that reading this last paragraph was a positive experience for you. To all, have a great day and to those in America, enjoy your sports holiday.

Sources:

Image

Sort:  

Here's two problems I see:

  • How does the system make sure no one is missed? You can't just wait for somebody to stumble over a new user's blog. You'd have to have verifiers checking blogs of unverified users all the time to see if their blog is up to standard (and that's after you check the 230,000+ current accounts).
  • If you have to get verified to earn, a lot of people won't want to try Steemit. Right now it's discouraging enough how hard it is to earn when you first start out. A possible fix would be to lock the "Claim Rewards" button until they are verified but if they never are verified it would waste that reward 😕

If you could solve those problems it would be a great idea. 😀

So, given the size of the current system, I am still uncertain whether or not such a proposal is worth actually implementing. It's more of a thought experiment (maybe something that can work with SMTs or another blockchain). But given the distributed system, there will be pressure from the community for those verified to verify others in order to maintain their status as verifiers.

So, we might have 10 top-level verifiers, but as they verify others, it should be relatively quick and easy to verify 60-70% of the network with the current rules. You simply start out with quality content, a verifier finds you and then resteems your quality content so that other verifiers can see it. Sure it might not be immediate, but it eliminates rewards farming significantly.

Also, the current interface of Steemit and the other apps is poor. Those might need to be improved before a proposal like this ever goes forward. But again, I really think this would work better in a experimental, less developed ecosystem (SMT, new blockchain).

What you mention in your second point is a possible fix for the lacking part of @greer184's post. It would still give enough sense of reward to new users in order for them to join the network. And it also helps with the first point, it would encourage the users to reach out to verifiers in case they are missed. Also, if said users have earned any meaningful amount of rewards it chances are little that they would be missed by all of the tiers of verifiers.

I'm interested in exploring the use of this idea for a different system entirely, I think it's an interesting way to deal with the problem of authority and

The problem is that it relies heavily on the first round of choices being good, that is the 10 top-level verifiers. It also gives them a huge job. You go some way to deal with that but I think it needs further development.

Also, love this term you might have just coined here - entitlistas 😂 I'm stealing it!

Yeah, that's the biggest issue especially with the apathetic voters problem. People may not care enough to wisely and carefully choose their top-level folks. And I'm sure you could find some pay to support scheme somewhere in there. I kind of stole this idea from how websites are granted certificates (with some tweaks).

Also feel free to spread the term "entitlista". I also kind of borrowed that from N. Taleb's term "fragilista". All the best artists steal.

All the best artists steal.

Artists and theorists 😉 damn straight

Yes you'd have to mitigate against poor and apathetic choices, and using market forces is the order of the day, so something to investigate there. Would love to see your take on that in part 2!

If someone could solve the apathetic voter problem that would make the world a better place. It's a very hard problem. It would also fix DPoS's only real flaw (in my opinion).

It's an important idea, and very interesting proposal. Stake weighted voting combined with transparency of verification are the things that make me doubtful that this would work well in practice though.

I think accounts with high stakes would find it easier to be verified, and would in fact rise to be the top-level verifiers quite easily if they wished. People support large stake holders in return for reciprocal votes already, and I expect this would just present another avenue for this dynamic to play out.

If the verification could be anonymous, it might work, but I understand that's not possible (and would have its own drawbacks, such as censorship even if it was).

The expiring votes is good though. That would at least impose an ongoing bribary cost for those who abuse the platform.

Sure, accounts with high stakes would find it easier to be verified but unless there is collusion with multiple whales at the top and the minnows votes in large enough numbers, but parties should be represented. If top-level verifiers misbehave, they can lose their jobs and if lower-level verifiers misbehave it puts pressure on the top-level guys to appease their constituents.

Unfortunately with apathetic voters and disorganized minnows, we already see issues with voting for witnesses that have something other than the status quo in mind.

But at the same time, if abuse still occurs under this system, it means the stake weight of the community supports abuse. At that point it may just be time to abandon ship and figure a way to establish a fairer way to start a new blockchain that is less susceptible to the problems of early uneven distributions.

Thinking about it further, I think as you say, it seems about as good as it gets using any stake weighted system.

Perhaps rather than just having verified/non-verified status though, maybe all users could have a verification score based on their trust quota, and this represents an additional factor in determining their influence over reward pool allocation?

In this way new accounts could work towards improving their verification status gradually, until they have full (100%) trust. So for example somebody with 100SP and 50% trust would have the same influence over the reward pool as somebody with 50SP and 100% trust.

This trust score could also be shown beside all accounts instead of the unreliable Reputation Score we have now.

Thanks for presenting a great idea!

Sure, something like that could work. That would allow newer users to start earning something sooner as they would only need a single lower-level verifier to allow them to start exercising their influence rather than requiring a bunch of verifiers to unlock the privilege of earning.

My only concern is that the lower and lower we go in the verification hierarchy, the more likely we are to see abuse from the lower level verifiers. This would require a vigilant community which we are kind of lacking now. But, I think this is a better compromise if we were to implement this kind of system on the Steem blockchain.

@greer184
I have been on steemit for quit along now a time period of almost 8 months during this span of time i always used to surf steemit by not only posting my own content, and upvoting other peoples content but i used to do research on steemit how do some people earn such a great no of upvotes and sbds if their content is not worth that. Then i got many many accounts on steemit who were steeming just for money and how i realised that was when i used to watch their account transactions.

Now what i suggest the steemit community for the verification process is: the 10 member authentication is the genuine now what we need to do is 2 layer authentication . The 2nd layer being a pannel of 5 members who will authenticate the accounts of users whose SP goes above 55 or 60 . The 5 member will keep an eye on the transaction of those users and that will decide the genuenity of the users.

And i think 2 layer authentication is the best way to avoid bogus accounts on steemit.

Thanks ...

Well the above proposal allows for multiple layers. Do you want a separate group to keep the 10 top-level verifiers in check? How do we select this additional layer?

The additional layer security to be provided to the accounts that belong to whales of the community whose SP crosses 5000 . We need to verify their accounts with additional details like PAN perminant acc no. Or any other document issued by a registered authority. I think that will do our work.

Thanks!!

That requires centralized authorities. That would run counter to the blockchain.

We all want Steemit to be here and grow with each post. While it's growing each minute what we are compromising on is quality.

Agree with your inputs and the verification can also have a minimum posts criteria (say 15 blogs or 50 posts) with at least 50% of them upvoted by witnesses. This will ensure quality and genuine content here. Also I see there are bots that points out if content is copied so maybe someone with 3 such warnings might just have to start again.

Those are just my thoughts and I feel they are quite practical more so when we need quality with the growing quantity

I don't think the witnesses need to be involved with the verification unless they want to since they are busy producing the blocks and looking over code updates. As for a requirement on the minimum number of posts, that may reduce the quality of those posts. If we keep the number of posts indeterminate, then maybe someone who starts out with an amazing post gets verified faster than someone who does a good post as they shown a distinct taste for quality right off the bat. It would depend on the verifier.

The one issue with quality, however, is how we define it. With verifiers it is completely subjective. You could comb out some blatant copies using bots as you mentioned, but bots can't always catch everything. Our friends at Google and Facebook are finding that out.

There's something about getting ideas while taking a shower... Same happens to me too! Considering how slow the current verification is... Like for example my friend hasn't been verified for 4 days and counting. Community based verification would make sense.

So, the verification I'm talking about is about showing that is account is good-actor who contributes to the community rather than spam. I'm not sure how Steem does their verification, or why it takes so long, but I'm sure that HF20 should fix these problems given that they have been working so long on it and it's been 8+ months since the last Hard Fork (significant code upgrade).

But I guess this could speed things up as you could care less about rigorously checking accounts. You still might want a way to prevent the massive creation of accounts outside of this system, however.

Ok got you.

Yes,
Your idea is good and genuine. There must be some sort of varification related to accounts.
1, it will create transparency and accountability.
2,it will keep check and prevent the horse trading, mule accounts or sorrogate accounts.
3,it make system (steemit) more stable.
4,it will help minnows to grow and make good and legitimate content.
5,it will increase the security of systems. Prevent the system shaking from spaculators.
There are simple and online methods of varification which don't need any spacific moderators, like the passport system, which I think every one on steemit.com may be having and is authentic documentation. As steemit is a secure network. I think no body will have any hesitation about the security and privacy issues.
You are producing great ideas, no Metter where you are getting!!!! Anycase in our India all musicians claim they had got best tunes while having show!!!!!!
I am already in your debt. Thanks a lot @personz

I am pretty new here. That being said I still don't know how current verification system works. Who verifies new accounts and what is the criteria for verification. If you can explain that to me, I might be able to give you more insightful view on the system you are proposing.

Option #1: You give Steemit, Inc. a phone number and email, they give you a little Steem, plus access to your account (after a while).
Option #2: You simply gather enough Steem and create an account through one of the many services that access the blockchain. A little more technical with some cost, but faster.

In both cases, the account is never truly "verified." For verification, think about the blue checkmark that famous people get on Twitter. Something like that, but less centralized and for everyone. We currently do not do this. This means once you get your account or accounts, you can begin spamming the network, or vote farming with little resistance because no one really knows that these accounts exist or really cares about policing these accounts.

Ok, I will come back with a comment later, I have to leave now so I would have to write in a hurry which I would like to avoid.

Loading...

Coin Marketplace

STEEM 0.19
TRX 0.15
JST 0.029
BTC 63191.19
ETH 2615.47
USDT 1.00
SBD 2.73