You are viewing a single comment's thread from:

RE: The History of Delegated Proof-of-Stake (DPOS)

in #blockchain5 years ago (edited)

Yes, Ripple was looked at, but it's been quite a few years and I don't remember much about what consensus protocol it had back in 2013. I don't think it was particularly interesting, or I think I would recall it.

From the BitShares point of view, the ability to "ripple" a trade across multiple markets was definitely interesting, and I'm occasionally surprised that the Ripple feature was never directly implemented in BitShares (although someone wrote an arbitrage bot on BitShares that did that, but pocketed the arbitrage rewards).

Sort:  

@blocktrades I look at your rep and is #74 at the moment. Do you think an improvement to the STEEM DPOS could be to use the reputation as threshold for being considered for the witness election process?

The current protocol lets an user with a 25 rep become a witness, so it was pretty easy for Justin Sun to impose sockpuppets by just "brutforce". That would be ok 4 years ago, but after several years, maybe it could have been a good idea to require a certain rep treshold for any user to be elegible as witness.

That would be a "proof of human" also for witnesses.

The current rep system on Steem was developed as a quick bandaid for spam problems. It's pretty broken as a system for real reputation. It's interesting you bring this up, though, because one of the main things I want to introduce to Steem is a reputation system that really works.

The tech I'm talking about also has many implications besides reputation as well. I've spent the last couple of years kicking around the applications for it and trying to decide where to find an initial home for these ideas and the corresponding software implementation. With Steem finally having a chance to be a true decentralized platform for idea exchange, I decided this was an ideal place to introduce it and I'm looking forward to setting up a team to develop it.

@blocktrades I hope you can develop such an improved reputation system and use it to filter fake suckpuppet witnesses in the future.

The combined reputations of the voters for a witness is certainly a candidate for a signal that this isn't just a hostile take over by a single entity.

The absolute number of votes to somehow weight the net weight of the Steem Power would also make this kind of attack harder.

Since reputation is currently only really a measure of the value of the upvotes an account has received (and downvotes), the more benefit a user gets from a high reputation, the more chance there is of them buying votes and self upvoting etc.
The effects on Proof of Brain also have to be considered.
A truly effective reputation algorithm would be great, but I am not sure it can be done without some kind of KYC.

I very much believe it's possible to create a reputation system without what is traditionally known as KYC and I plan to write more on that topic in the future, once I have some free time again.

Great ok, I look forward to it. The majority of examples I have seen so far which are used to determine important (life changing) outcomes are the kind seen in the Chinese social credit system, which obviously goes too far down the route of centralisation. As soon as outcomes are based on reputation, I think there is a need to ensure that the reputation applies to a unique person or entity. I know that Voice (EOS) uses a patented system for identity involving multiple phones, but I personally don't like systems that force users to own a specific piece of hardware, especially when there are well known health risks (documented over decades by countless scientific studies) relating to elements of the tech. :/

I'd be interested in an algorithm that sorted humans from bots and gave accounts a kind of real human score. How many apps so they use? Bio data to from input devices like phones, range of non automated behaviors. Something very hard to fake.

I follow a company called Biocatch which does invisible security for banks. Their systems are proprietary and patented but worth reading their public details.

Such ideas have been suggested in the past, but an attacker can easily distribute his Steem Power over many sockpuppet accounts to counter that.

This is interesting.

As I was reading some of the responses above, I was wondering if there was any real way to determine "good" from "bad" stake, and how that may implicate witness voting.

Based on your explorations of a potential 'reputation system that actually works', and the original comment from @argsolver above -- would using a new reputation index as a criteria for running a witness be an effective way to do it? Or would another path, such as maybe applying some kind of bonus/penalty to the effective stake being used to vote witnesses work?


Regardless.. Definitely eager to hear more background / context on DPoS, as well as your (and @theoretical's ) thoughts on future improvements / different protocols.

Here I define "REDPOS" as a DPOS protocol evolution thanks to the reputation factor.

Many witnesses create a new account for their witness (so their blog/main account is separate form their witness/alt account). The rep can be circumvented (and augmented) by one or two high-rep/high SP accounts.. so while the timing of the puppet accounts' rise to witness may take a little longer, it's still possible to bypass such a limitation.

Regardless, the best part about a blockchain is that anyone can be a witness with enough support from the "community".. limiting by rep is an arbitrary barrier to entry that may make potential adopters shy away from the "eliteist" protocol/restriction on becoming a witness..

Just my $0.02

limiting by rep is an arbitrary barrier to entry

Like any treshold is arbitrary, of course. The intention is to help constitute a "proof of human". With no barrier, it is proven that 30 suckpuppet accounts can be created by one entity and take control of STEEM just by means of SP brute-force.

STEEM is a blockchain, but it is also a 4 year old HUMAN community, so there should be ways to incorporate the human factor or the "proof of human" on the witness electoral process.

It could be a "non-issue" to create a witness account with non-rep like 4 years ago. But now in my opinion, it just doesn't make sense to allow such a thing.

If REP can be gamed as factor, at least it demands some effort/time and time is a factor that could be used to protect the chain in case of an attack.

Agree that there can/should be a barrier, but Rep is not the correct one. It's too easily "gamed" .. that's all I'm saying, which I guess I didn't explain well enough. Read the whitepaper and you'll know what I mean. It's pretty simple math for why Rep isn't a true barrier when you factor in someone with enough SP to auto-elect witnesses.

STEEM has the advantage that no witness knew they were "mining REP" for 4 years. So if you implement a better REP system (perhaps taking parameters such as account age) and then convert the current DPOS protocol into a REDPOS one you should get a stronger blockchain.

Wont be perfect, but sure better.

Ouch. I don't mean to be rude by shutting down this trail, but I can't continue. There's too much wrong with your thoughts. No one has ever "mined rep".

Reputation is purely built on who your upvotes are from (or the SP they're allocating toward your posts), and the rep of those who are commenting on your posts (or at least that was a thing way back when).. this is why voting bots were dangerous. You'd get a huge rep bump simply for having a "whale" (or voting bots) with high rep vote one time on your post.

Rep is not the right tools. Trust me. Pick something else...

Reputation is purely built

@blocktrades already explained that the current REP system on STEEM was coded as a "bandaid".

On a REDPOS protocol, as REP would be a significant aspect of the witness rank, I think it's pretty obvious that it should be better coded (a REP system that really works).

However the current REP bandaid would be enough to take out Justin's sock-puppet witnesses and that's why I consider there is real potential for a protocol improvement for a (so called) social blockchain.