4 ms·
That's surprisingly simple for a Byzantine fault-tolerant protocol. Some random thoughts: - Adding or removing validators is not covered - Validators must rem
by tveita 5y ago
That's surprisingly simple for a Byzantine fault-tolerant protocol. Some random thoughts:
- Adding or removing validators is not covered
- Validators must remember every spent output for every transaction they've ever signed. I get the impression that their benchmark implementation ignores persistence. Arguably that's ok when you're looking at throughput and not latency.
- Issuing conflicting transactions can easily make an output unspendable - a potential implementation hazard for clients if they e.g. automatically retry a transaction.
- I had some doubts whether their sharding strategy not allowing inputs from multiple keys was realistic, but thinking about it you can easily issue multiple transactions to gather into an intermediate key if necessary. The verifier doesn't strictly speaking need to store the outputs anywhere, it just has to remember that the input was spent, which is what makes it shard so nicely.
- You'd probably want publish a transparency log to actually detect byzantine attacks
e: - the receiver also must verify that it hasn't received the same transaction before
Overall A+ not a blockchain.