PARSEC consensus algorithm


#1

In a proof of work consensus system like Bitcoin, the miner are incentivized to contribute with mining-power to the system because he can get fresh new coins, when he solves the puzzle.

How the nodes will be incentivized in a PARSEC consensus system to contribute and participate in the consensus mechanism ?

How the network is protected against sybil attacks ?


#2

Only a subset of nodes (elders) will participate in the PARSEC consensus. To become an elder, a node first provides resources to the network for an extended period. This is intended to provide Sybil resistance.


#3

Hello drehb, thank you very much for your response.

as i understand your answer right, this means that when somebody starts a blockchain using PARSEC consensus instead of proof of work consensus then the user (node) must fulfill a condition to participate in the mechanism. For example to hold always an amount of coins (if its a cryptocurrency). In Cryptocurrencies the term is called Masternode or like you call them “Elder”. So there are 2 different classes of users (nodes) in a PARSEC network, although all users can publish transactions but only elders are involved in the consensus mechanism.

In this medium publication from maidsafe it says

“Therefore, PARSEC has been designed not requiring controllers, trusted nodes or any such centralised components, provided that the focus is permissionless networks, Free of charge.”

but are not the elders a kind of trusted nodes and is not the investment to become an elder a fee or a permission to participate in the mechanism ? please correct if i am wrong.


#4

@drehb’s answer seems to be directed at the implementation of PARSEC in the safe network. For blockchains (which the safenetwork is not one of) then each implementation will have to implement the consensus in a framework that provides protection from participating “nodes” being made up of bad actor new “nodes” that can then attack the consensus. And PARSEC can be of use in that consensus of the action to take against bad acting “nodes” can be performed.

PARSEC does provide the mathematical provable consensus component. No need for authorities/controllers etc. But there is obviously a need to control the new nodes becoming a part of the consensus. Safe does this the way @drehb mentioned.


#5

Hi rob,

thank you for your post. As i understand :
The PARSEC consensus mechanism have to be embeded in a framework in order to be protected against sybil attacks. Maidsafe does this in the sense that certain conditions must be fulfilled before a node can participate. The node must have performed for the network and have a certain age before participating in PARSEC. Correct ?


#6

The PARSEC consensus mechanism have to be embeded in a framework in order to be protected against sybil attacks. Maidsafe does this in the sense that certain conditions must be fulfilled before a node can participate. The node must have performed for the network and have a certain age before participating in PARSEC. Correct ?

Spot on!

Also,

PARSEC has been designed not requiring controllers, trusted nodes or any such centralised components

still stands. We have the requirement that all nodes are elders before they get involved in the decision process with PARSEC, but no-one node is ever trusted within PARSEC. So node ageing is more of a screening process to make Sybil attacks expensive, but the only trust given to elder nodes is the trust to be part of decisions. They must still be part of a supermajority of agreeing nodes to make any impact on the network :smile:


#7

Hello Pierre,

thank you very much for the explication. I am thinking about if PARSEC would be working also for Blockchains instead of proof of work as consensus mechanism and be a trustless, permissionless and cencorship resistant network.


#8

I think it could, but you would need to have your own Sybil prevention mechanism. Proof of work gives you consensus + Sybil resilience. PARSEC just gives you consensus. You could do Proof of stake + PARSEC if you wanted.


#9

What you think about Masternodes , like PIVX has ?
This could be flexible configurated.


#10

I don’t know enough about it to comment :wink:


#11

Hello Pierre,

as i see PARSEC is in alpha mode and programed in RUST. We are interested to use it as consensus mechanism in Blockchain.

Is PARSEC in this form ( https://github.com/maidsafe/parsec ) operative as consensus mechanism for blockchains ?

What has to be done to use it as consensus mechanism in blockchains ?
Is there somebody who can help us to do the neccassary ? Would like to get in touch


#12

I think you would need to solve the problem of selecting the nodes for concensus and avoiding sybil attacks.

PARSEC doesn’t do that for you.

If I wanted to build a distributed ledger I’d look for ways to implement it on top of SAFE Network rather than try to fit PARSEC into a proof of work/stake based node selection. You could fork SAFE to achieve this, but then you’d lose the benefit of network size in defending against attacks, so better together IMO.

I’m not an expert in though, so maybe there are improved versions of blockchain that would benefit from PARSEC that in not aware of.


#13

In fact the protection against the sybil attacks in Safe has other pillars such as randomness and that the number of nodes that can enter in the network, at any given time, is limited.
A node not only has to be elder to participate in the consensus but its placement in a specific section is random. Moreover, time to time, it is repositioned in another section in a totally random way. In addition, if he tries to relocate voluntarily he is punished.

Using Parsec as a consensus in a blockchain will need a system that reduces the number of nodes participating in the next block consensus, could be a random selection system as Algorand or a limited number of supernodes, and a protection against sybil attacks, for example POS.


#16

Hello Pierre,
as i told you we are thinking about to make a PARSEC version as consensus algorythm for Blockchain-technology.
So i want to ask you

is PARSEC a horizontal consensus algorythm ?
does PARSEC protects against double spend ?
has PARSEC a timestamp in its consensus ?

i appriciate your time and looking forward to your answer
kind regards
Laizess


#17

Hi @laizess,

is PARSEC a horizontal consensus algorythm ?

I’m not sure what you mean by horizontal

does PARSEC protects against double spend ?

Yes. That’s what it’s designed for (order consensus protocol)

has PARSEC a timestamp in its consensus ?

No.