Author Topic: FYI: Queued Delegated Proof-of-Stake coin: Qointum  (Read 6356 times)

0 Members and 1 Guest are viewing this topic.

Offline CLains

  • Hero Member
  • *****
  • Posts: 2606
    • View Profile
  • BitShares: clains
Qarterd, your project looks great, but by all the evidence we have 2 years into altcoin distributions freely giving away coins does not work. When you keep 20% the image of being charitable is weakened as well. Your value proposition would be ten times stronger if you took 10% yourself and give 50% proportionally to those who donate to your cause, and targeted various communities like BitShares, NXT and Ethereum by dropping the remaining 40% on them before the donation period.

Offline santaclause102

  • Hero Member
  • *****
  • Posts: 2486
    • View Profile
Quote
In Qointum the stakeholder votes for delegates are (un)registration blocks, as opposed to transactions.
I didn't get that part.

If NXT leasing is the closest to QDPOS, what is the difference to NXT leasing then?

Offline Qarterd

  • Newbie
  • *
  • Posts: 2
  • Founder of Qointum
    • View Profile
    • Qointum
Welcome Qarterd, it will take us marketing beasts a few light years to comprehend that

Thanks! Yeah turns out trying to make new world currency isn't so simple.

It (QDPoS) obviously isn't random if it enables optimization.  How would this work?

I answered this above:

Qointum uses blockchain entropy to randomly schedule the next X minutes of delegates, and scheduled positions don't change so the network can be optimized.

How are you defining "network optimization" ?

A simple way to optimize the network is to have consecutively scheduled delegates attempt to directly connect to each other so that there's little latency between handing off block production. Then you can provide a steady stream of block updates as new transactions are included instead of dumping them all at once in a block which takes time to process.

How can you have a consensus algorithm on headers only?

It's a weak form of consensus similar to Bitcoin's PoW where SPV clients can determine the longest chain with the most work by examining block headers only, then they can verify payments using merkle trees.

In our case "Maximally Vetted Delegate Chain" is a weak form of consensus for QDPoS where SSV (Simplified State Verification) clients can determine the correct chain from block headers only, then they can verify state using merkle trees.

The algorithm isn't perfect, the Design Document details situations where concerted attacks would require new SSV clients to download a recent checkpoint file from a trusted source (ex. packaged with the SSV client). But we argue it's better to have new clients rely on a trusted checkpoint file than waste $millions in electricity costs on PoW.

« Last Edit: December 03, 2014, 03:18:41 pm by Qarterd »

Offline gamey

  • Hero Member
  • *****
  • Posts: 2253
    • View Profile

Someone brought this to my attention and I saw this line... 
Quote
new security algorithm Queued Delegated Proof-of-Stake that schedules delegates randomly ahead of time enabling network optimization

What do you mean here?  It obviously isn't random if it enables optimization.  How would this work?  How are you defining "network optimization" ?

Quote
QDPoS with its block registration system goes hand-in-hand with our header-only "Maximally Vetted Delegate Chain" consensus algorithm. By having a consensus algorithm that operates well with headers only you open yourself up to multi-chain capability (Qointum's Entangled Chains).

How can you have a consensus algorithm on headers only?   Consensus algos are all about the transactions... In fact, headers are just overhead for the transactions.    Are you using different definitions than what I am expecting?
I speak for myself and only myself.

Offline Qarterd

  • Newbie
  • *
  • Posts: 2
  • Founder of Qointum
    • View Profile
    • Qointum
I spoke to him on skype. He is a very nice person :)
I will invite him in for sure.

Thanks Evo, yeah this is the first discussion I've seen about Qointum anywhere =)

I would be interested to know more about QDPOS in relation to our DPOS.

I just read up on what the fine folk of BitShares have been doing recently, and there are some significant differences.

Take PoS and the goal of earning stake interest offline and then add two stake deposits: one for registering stake to any public address, and a larger one for registering to become a block producer at a public address. You end up with a system that resembles BitShares' DPoS. That's why this algorithm name contains "DPoS", it involves delegating the task of producing blocks to others so stake interest can be earned offline. I believe Nxt has something similar as well, they call it "Account Leasing".

I called it "Queued DPoS" to emphasize the idea that delegates are known ahead of time, instead of PoS which is fully random, and DPoS could also be fully random. BitShares has a sort of queue as well but the mechanism is entirely different. You want a balance -- too much determinism could allow delegates to collude to attack on consecutive blocks, too much randomness and you forfeit the ability for consecutive delegates to come together as a quorum for network optimization. Qointum uses blockchain entropy to randomly schedule the next X minutes of delegates, and scheduled positions don't change so the network can be optimized.

I'll head off the main argument here: yes, human voting through DPoS is an essential foundation to mitigate attacks, but it's a slow process and not entirely preventative. In order to scale across the web to thousands of smaller chains you need to automate your system as much as possible by providing game-theoretic incentives to prevent attacks.

In Qointum the stakeholder votes for delegates are (un)registration blocks, as opposed to transactions. Because they're blocks, no one has authority over your vote, you can boot up a dead branch or spin off a branch from any block and become the only delegate (provided that enough time has passed so that other delegates have been deemed inactive and forcefully unregistered on that branch). There are also wait times for (un)registration so entropy can take hold and prevent queue manipulation. Unregistration also carries a qoin penalty on the deposit as the blocks can't be discarded in blockchain compression.

QDPoS with its block registration system goes hand-in-hand with our block-header-only "Maximally Vetted Delegate Chain" consensus algorithm. By having a consensus algorithm that operates well with headers only you open yourself up to multi-chain capability (Qointum's Entangled Chains).

QDPOS looks to have a very large amount of possible delegates, DPOS has 101 delegates.

In Qointum stake assigned to a delegate is held as a deposit. Because it's a deposit we can apply all sorts of game-theoretic incentives by automatically rewarding or penalizing both stakeholders (who may vote maliciously) and delegates. For example, we can penalize double block creation to minimize branching, without relying on slower human intervention (voting). Also, we can penalize short ephemeral registrations by stakeholders to minimize block overhead. The number of delegates is then limited by the required deposit. I expect only a small percentage of qoins, maybe 10%, to be tied up in a registration deposit earning interest, as qoins must be kept liquid for storage/transaction fees and economic activity. So I'm targeting only ~200 delegates at any given time even though the upper bound is 2K delegates with 100% of qoins registered. This is for the main chain, every chain can specify its own QDPoS parameters.

If everybody can be a delegate in QDPOS as long as they have the minimum stake requirements won't this make it a lot cheaper to disrupt the network compared to DPOS?

In a manner similar to BitShares, smaller players are weeded out by tuning the minimum stake requirements so that very few entities without external votes could be reasonably expected to become delegates. You can find a safe initial setting but there's no perfect setting -- as a chain matures and its asset becomes distributed into more hands you can afford to have less of it tied up in registration deposits. This is where decentralized governance comes in with each chain's "founding qointract" -- smart contract law that lets stakeholders vote to tune the QDPoS parameters dynamically.

How does the system scale? How many transactions a second are possible?

That is outlined in the Design Document. Due to the large quantum-secure signatures and Python transaction scripting, I have a realistic target of about 5 transactions per second max (40 KB/sec, 200ms per transaction). That should be sufficient for now as even Bitcoin is only pushing 2 or 3 per second currently. There's a Python LLVM / JIT implementation by Dropbox called "Pyston" under development, it could really help us out in the future.

« Last Edit: February 05, 2015, 11:43:33 am by Qarterd »

Offline evok3d

  • Newbie
  • *
  • Posts: 6
    • View Profile
Please invite the author to do a hangout with Dan to discuss QDPOS! I'm sure both sides will benefit.

I spoke to him on skype. He is a very nice person :)

I will invite him in for sure.

Offline donkeypong

  • Hero Member
  • *****
  • Posts: 2329
    • View Profile

Offline toast

  • Hero Member
  • *****
  • Posts: 4001
    • View Profile
  • BitShares: nikolai
Please invite the author to do a hangout with Dan to discuss QDPOS! I'm sure both sides will benefit.
Do not use this post as information for making any important decisions. The only agreements I ever make are informal and non-binding. Take the same precautions as when dealing with a compromised account, scammer, sockpuppet, etc.

Offline evok3d

  • Newbie
  • *
  • Posts: 6
    • View Profile
You guys are the only community so far who have discussed this paper and platform :)

I will be speaking with the author and covering the finding in an article. Do you have any questions to forward that would be nice to include in the article (with your permission of course).

I find it very interesting indeed, though the preventative measures put into place in the case of a Quantum based attack seem rather superfluous. Should we approach such a stage, there are many bigger security issues to worry about than a cryptocurrency algorithm. I believe the other aspects are good in that it natively supports multiple chains and rewards those who have been delegated in helping the stake holders. The issue there is i am not sure whether decentralization is effected by such a move. Will it give stake holders or the systems delegated more power?

Any comments would be appreciated.

I can't speak for the whole community, only myself. But, I would be interested to know more about QDPOS in relation to our DPOS. Is it a fork of us, or a completely new implementation? It looks quite different to me. But, DPOS already involves queuing in the sense that our delegates are assigned an order in a queue to sign blocks so it's an odd name choice imo.

QDPOS looks to have a very large amount of possible delegates, DPOS has 101 delegates. Too small a number of delegates and the system risks centralization, to large a number and the delegates will not be earning enough that they would be incentivized to compete against each other for these few positions so that they can then use the earned funds to pay for improvements to the system and community. Is this the point? Do the devs plan on continuing to develop their coin themselves rather than opening it up to the wisdom of crowds in an open source manner like BitShares?

Why the move away from a democratic stake based system of voting in the delegates to positions? The great thing with DPOS is that bad actors will be voted out quickly and likely not reinstated. If everybody can be a delegate in QDPOS as long as they have the minimum stake requirements won't this make it a lot cheaper to disrupt the network compared to DPOS?

How does the system scale? How many transactions a second are possible?

Thanks for the response edilliam, i think these are great questions. I spoke to him briefly today. I will see if he can join the discussion or if we can put something together. The more people helping grow the network the better :)

Cheers

Offline edilliam

They sure got some nice neon coin logo images, I'd vote for them if they just made us some graphix:

I can make us something similar with the BitShares logo on if you want. I can go one further and make a video of them all falling into a big pile too. The work will probably take me a day or two, but the render, even on my VFX rig, could be as much as a week.

Offline edilliam

You guys are the only community so far who have discussed this paper and platform :)

I will be speaking with the author and covering the finding in an article. Do you have any questions to forward that would be nice to include in the article (with your permission of course).

I find it very interesting indeed, though the preventative measures put into place in the case of a Quantum based attack seem rather superfluous. Should we approach such a stage, there are many bigger security issues to worry about than a cryptocurrency algorithm. I believe the other aspects are good in that it natively supports multiple chains and rewards those who have been delegated in helping the stake holders. The issue there is i am not sure whether decentralization is effected by such a move. Will it give stake holders or the systems delegated more power?

Any comments would be appreciated.

I can't speak for the whole community, only myself. But, I would be interested to know more about QDPOS in relation to our DPOS. Is it a fork of us, or a completely new implementation? It looks quite different to me. But, DPOS already involves queuing in the sense that our delegates are assigned an order in a queue to sign blocks so it's an odd name choice imo.

QDPOS looks to have a very large amount of possible delegates, DPOS has 101 delegates. Too small a number of delegates and the system risks centralization, to large a number and the delegates will not be earning enough that they would be incentivized to compete against each other for these few positions so that they can then use the earned funds to pay for improvements to the system and community. Is this the point? Do the devs plan on continuing to develop their coin themselves rather than opening it up to the wisdom of crowds in an open source manner like BitShares?

Why the move away from a democratic stake based system of voting in the delegates to positions? The great thing with DPOS is that bad actors will be voted out quickly and likely not reinstated. If everybody can be a delegate in QDPOS as long as they have the minimum stake requirements won't this make it a lot cheaper to disrupt the network compared to DPOS?

How does the system scale? How many transactions a second are possible?

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc


Have quantum computers really become a viable threat to crypto or is that 99% marketing hype ?

Meaningless hype.
If it was we could implement Lamport Signatures instead of ECC (at the cost of single address use and longer pubkeys)

Offline evok3d

  • Newbie
  • *
  • Posts: 6
    • View Profile
You guys are the only community so far who have discussed this paper and platform :)

I will be speaking with the author and covering the finding in an article. Do you have any questions to forward that would be nice to include in the article (with your permission of course).

I find it very interesting indeed, though the preventative measures put into place in the case of a Quantum based attack seem rather superfluous. Should we approach such a stage, there are many bigger security issues to worry about than a cryptocurrency algorithm. I believe the other aspects are good in that it natively supports multiple chains and rewards those who have been delegated in helping the stake holders. The issue there is i am not sure whether decentralization is effected by such a move. Will it give stake holders or the systems delegated more power?

Any comments would be appreciated.

julian1

  • Guest
Javascript is nice because it's simple enough that many languages can compile down to it - Dart, Cofffeescript, Ocaml etc. Also it enables the functionality to be entirely embedded in a thin client/web wallet. Otherwise, a simple VM would be good. There's already lightweight VM in the bitshares tree, but I don't think it's connected to do anything.

Offline vikram



Have quantum computers really become a viable threat to crypto or is that 99% marketing hype ?

Meaningless hype.