-
m-relay<kayabanerve:matrix.org> We could have each block mined specify a voting key. Once x% of blocks over some n block period include it, where x >= 51, the system activates. Each mined block is one vote usable in a BFT consensus protocol. Votes expire after 24h, and the protocol stops if blocks with voting keys drop below 51%.
-
m-relay<kayabanerve:matrix.org> Nodes which opt-in only follow descendants of the finalized chain. If a hash power spike by an adversary occurs, causing a reorg, so long as the participating honest nodes maintain 51% of hash power *over time*, they'll reorg the chain back. If an adversary can maintain 51% for an extended period of time, that's its own issue and worth halting over.
-
m-relay<kayabanerve:matrix.org> The main issue is there's no cost to equivocate and finalize two distinct blocks. You'd need to have some time delay to probabilistically detect equivocations and halt upon it.
-
m-relay<kayabanerve:matrix.org> Or we hardfork in slash mechanics and build a proper consensus layer.
-
m-relay<kayabanerve:matrix.org> I only through out the off-chain ideas because they're likely better received.
-
m-relay<kayabanerve:matrix.org> *threw
-
m-relay<chaser:monero.social> I like the light design, but PoS ain't PoS without slashing, and definitely not without stakes :) (I'm still not convinced by Ouroboros)
-
m-relay<kayabanerve:matrix.org> It doesn't have to be "PoS" if it's argued a valid finality layer.
-
moneromoooWhat is slashing in this context ?
-
sech1I think it's something to do with punishing misbehaving PoS nodes
-
m-relay<kayabanerve:matrix.org> Slashing refers to burning the stake of misbehaving nodes who put up stake as evidence they wouldn't misbhehave.
-
m-relay<kayabanerve:matrix.org> I think if we do want to discuss a slash-less finality layer, which can be done entirely off-chain, it'd best to posit it as a centralized entity issuing checkpoints which 51% of known miners agree to follow. The entire security commentary can be done against the black boxed centralized entity, with a way to decentralize it (last 100 miners) discussed after.
-
m-relay<kayabanerve:matrix.org> If you assume the network is synchronous with a latency of 2 minutes (which honestly is probably the case without a full net split/eclipse attack), then you do get a solution where at worst, finality halts (halting services requiring finality) and only if network synchrony is broken, a panic.
-
m-relay<kayabanerve:matrix.org> I wonder if there's existing research on the time to detect equivocations somewhere. I'd assume so.
-
m-relay<kayabanerve:matrix.org> I'll probably type up sketches on this in a MRL issue and try to nerdsnipe Rucknium.