3

It has been repeatedly written that staking nodes should buy DDoS protection or be at risk of losing their coins.

Can someone explain why an honest staker is at risk of losing his coins in case it gets hit by a DDoS (*)? And what happens to the "lost" coins?

  • (*) Let's assume there exist such a thing as people having access to botnets and who'd be willing to attack the Ethereum network for a variety of reason: for fun, because they'd be heavily invested in a competing crypto-currency, etc. – Cedric Martin Feb 2 '16 at 17:23
6

In the current vision of Casper Proof of Stake protocol, the validators (who are staking), when eligible, need to bet on the finality of blocks. More technically speaking, each bet has to specify for each block height: which block will most likely win, and with what probability. Validators will be constantly updating their bets, thereby converging to consensus. So if it becomes apparent that majority of other validators prefer another block (by switching to it and increasing their bets on it), you'd need to update your bet quickly, to agree with the majority, or risk being left on the losing side. Therefore, at the crucial moments, when you need to watch the consensus emerging, and participate in it, you are most vulnerable to DDOS or other downtime.

EDIT (addition on the betting time windows):

It is unclear to me how quickly the betting game can advance. Vitalik's blog article (https://blog.ethereum.org/2015/12/28/understanding-serenity-part-2-casper/) says that blocks should appear around every 5 seconds, but does not say anything about how fast the bets may be changed. The thing is - if the Casper is a contract, then it will only be able to take bets into account once they are included into blocks. Both blocks and bets are produced by a group of current validators. They would probably run some kind of combinatorial optimisation (if there is enough time) to figure out how to bet :)

  • +1 and thanks a lot Alexey... I've got another question, don't know if I should ask it here or create a new question: when you need to update your bet to agree with the honest majority, does it need to be done from the specific IP you used previously or can you do it from another IP? So is your "node" taken into account, or only your tokens/signature? Also what's the "time window" going to be, approximately, during the "crucial moments" where the consensus shall emerge? Basically I'm trying to figure out a way to protect my staking ETHs / node vs DDoS. – Cedric Martin Feb 3 '16 at 15:26
  • Betting can be done from any IP, and in fact, from many IPs. Since every bet is a special transaction, signed by a validator, all that is required is to have access to the validator's private key (for signing) and to other peers (for receiving and relaying the bets). – Alexey Akhunov Feb 3 '16 at 22:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.