Author Topic: _  (Read 2679 times)

0 Members and 1 Guest are viewing this topic.

Offline CLains

  • Hero Member
  • *****
  • Posts: 2606
    • View Profile
  • BitShares: clains
it's a joy to follow bytemaster through the journey of understanding these systems, everyone else seem to be too autistic to be able to step back and evaluate the accumulated insights and remaining issues in a clear and easy to understand manner that keeps the door of progress open

this clear-sightedness why BitShares will succeed long term.

Offline gamey

  • Hero Member
  • *****
  • Posts: 2253
    • View Profile
I speak for myself and only myself.

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
All systems tend toward centralization whether planed or unplanned.  DPOS gives the end use as much control over that centralization as possible where as the other systems the small player has less control.

1) All systems are subject to the 51% attack, it is inherent in the nature of consensus itself.
2) Economics limits the number of nodes that can profitably validate for a given transaction fee.
3) Peercoin / Nxt centralizes around the largest account holders who are the only ones who can profitably validate at competitive fees.
4) Nxt supports a form of delegation (leasing)
5) Bitcoin uses Delegated Proof of Work (mining pools)

Primary weakness of DPOS is voter apathy or lack of sufficient knowledge.  A divided user base is less secure than a united user base.  These issues are being mitigated through user interface enhancements and the latest refinement to DPOS  (RDPOS, Recommend DPOS) whereby users trust others to make recommendations on whom they vote for.

Advantages on DPOS vs PPC and NXT:
1) Faster, Scales Better, Confirms Quicker
2) Accounts & TITAN make it easier to use + more private.
One of the best overviews ive seen so far
+5%

Offline bytemaster

All systems tend toward centralization whether planed or unplanned.  DPOS gives the end use as much control over that centralization as possible where as the other systems the small player has less control.

1) All systems are subject to the 51% attack, it is inherent in the nature of consensus itself.
2) Economics limits the number of nodes that can profitably validate for a given transaction fee.
3) Peercoin / Nxt centralizes around the largest account holders who are the only ones who can profitably validate at competitive fees.
4) Nxt supports a form of delegation (leasing)
5) Bitcoin uses Delegated Proof of Work (mining pools)

Primary weakness of DPOS is voter apathy or lack of sufficient knowledge.  A divided user base is less secure than a united user base.  These issues are being mitigated through user interface enhancements and the latest refinement to DPOS  (RDPOS, Recommend DPOS) whereby users trust others to make recommendations on whom they vote for.

Advantages on DPOS vs PPC and NXT:
1) Faster, Scales Better, Confirms Quicker
2) Accounts & TITAN make it easier to use + more private.
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline Empirical1

  • Hero Member
  • *****
  • Posts: 884
    • View Profile
This is quite a good brief overview

http://bitshares.org/delegated-proof-of-stake/

Quote
1.0 Background
Distributed transaction ledgers need to be secure, unambiguous and irreversible in as short of time as possible to facilitate the most robust and decentralized systems. In practice there are two different aspects to this process: selecting a unique node to produce the block and making the ledger irreversible.

1.1 Proof of Work
The first successful attempt at solving this problem was Bitcoin which used proof of work to make it computationally difficult to produce a longer ledger. Proof of work behaves like a lottery where on average one node finds a block every 10 minutes. If two nodes find a block at the same time then the network decides which block to build on top of based upon the decision of subsequent nodes. From a statistical perspective, a transaction is considered unambiguously confirmed and irreversible after 6 blocks (about 1 hour); however, the core developers require 120 blocks (about 1 day) before they consider the network sufficiently protected from the potential of a longer attack-chain emerging that the newly generated coins may be spent.

Despite it being unlikely that a longer chain could emerge, any actor with significant economic resources could potentially build a longer chain or gain enough hashing power to freeze user accounts.

1.2 Proof of Stake
There have been many variations on proof of stake, but the basic concept is that the difficulty of producing a block should be proportional to your stake (percent ownership) in the network. There have been two working systems deployed to date: Peercoin and Nxt. Peercoin uses a hybrid model where your stake adjusts your mining difficulty and Nxt uses a deterministic algorithm to select a random shareholder to generate the next block. Nxt’s algorithm adjusts the probability of being selected based upon your balance.

While Nxt and Peercoin have each solved the problem of who should generate the next block, they have not sufficiently solved the problem of making the block chain irreversibly secure in a timely manner. Peer coin requires at least 6 blocks (1 hour) and Nxt requires 10 blocks according to the information we could find. We could find no basis for the level of security provided by Nxt after 10 blocks.

We previously published a paper on Transactions as Proof of Stake in which every transaction includes the hash of the previous block in the chain. With this system the network becomes increasingly secure and irreversible by anyone as eventually every block is voted upon by every shareholder. The challenge with Transaction as Proof of Stake (TaPOS) is that it defines no way to decide who should generate the next block.

1.3 Ripple Consensus
The Ripple consensus algorithm allows a group of nodes to agree to reach consensus based upon the concept of a unique node list. The initial unique node list is like a club where 51% of the club members must vote to include a new member. Consensus will follow this core 51% and those outside have no influence. Because this club starts out “centralized” it will remain “centralized” and if it ever becomes corrupted there is nothing the shareholders can do. Like Bitcoin and Peercoin, Ripple separates shareholders from voting rights and is thus much more centralized than other systems.

2.0 Delegated Proof of Stake
Adopting the metaphor of a Decentralized Autonomous Company (DAC), decentralization means that each shareholder holds influence proportional to her stake and that a vote of 51% of the shareholders is irreversible and binding. The challenge is reaching the 51% approval threshold in a timely and efficient manner.

To achieve this goal, every shareholder may delegate their voting power to a delegate. The top 100 delegates by total votes take turns generating blocks on a defined schedule. Each delegate is allocated a time slot to produce a block. If they do not produce a block then their slot is skipped and the next delegate in line produces a block. All delegates receive pay equal to 10% of the transactions fees included in the average block. If the average block contains fees of 100 shares, a delegate will receive pay of 1 share.

It is possible that network latency could cause some delegates to fail to propagate their block in a timely manner and this would result in a chain fork. However, this is unlikely to occur because the delegate can establish direct connections to the delegate before and after them in the chain. The establishment of this direct connection to the delegate that follows you (and perhaps the one that follows him) is to make sure you get paid.

With this model new blocks can be produced every 10-30 seconds and under normal network conditions chain forks are highly unlikely or can be resolved in just a few minutes.

Quote
3.0 Attacks
There are generally two kinds of attacks that the network must defend against: denial of service and double spending. An attacker performs a denial of service by preventing some or all transactions from being included in the ledger and can be performed by anyone with 51% of the network (whether Bitcoin, Nxt, or others). A double spend attack is performed by gaining a short term advantage while the network is still attempting to reach consensus.

To defend against these attacks the network must get 51% shareholder agreement as quickly as possible.

3.1 Preventing Exclusion of Transactions
Having 100 delegates each elected by the shareholders and being required to take turns means that any transaction that is approved of by even 1% of the shareholders can be included in less than 30 minutes. This means that no delegate can benefit by excluding transactions that vote for other delegates.

3.2 Centralizing power in a few Delegates
Because each delegate has an equal vote and the top 100 are given equal weight regardless of votes delegated to them there is no ability to concentrate power by acquiring more than 1% of the vote in a single delegate.

It may be possible for a single individual or organization to control multiple delegates in the chain, but this process would involve deceiving a large percentage of the shareholders into supporting sock-puppets.

Even if 51 sock-puppets could be set up their power to disrupt the network would still be limited, quickly identified, and then remedied. Without the barriers to entry caused by proof of work, the honest majority would identify the attack and issue a fork of the code that ignored blocks produced by the attacker. It would be disruptive, but not fatal.

3.3 DDOS of Delegates
Because there are only 100 delegates it is conceivable that an attacker could perform a round-robin denial of service attack against each delegate when it was their turn to produce a block. Fortunately this particular attack is easily mitigated by the fact that the delegate is known by their public key and not their IP. This will make identifying the target for a DDOS more difficult. With the potential for direct connections between delegates it will be more difficult to interfere with the propagation of their blocks.
« Last Edit: July 23, 2014, 08:32:27 pm by Empirical1 »

MinerVato

  • Guest
_
_
« Last Edit: December 01, 2014, 06:27:55 pm by Vato_ »