  Multi-party data management and blockchain systems require data sharing among
participants. To provide resilient and consistent data sharing, transactions
engines rely on Byzantine FaultTolerant consensus (BFT), which enables
operations during failures and malicious behavior. Unfortunately, existing BFT
protocols are unsuitable for high-throughput applications due to their high
computational costs, high communication costs, high client latencies, and/or
reliance on twin-paths and non-faulty clients. In this paper, we present the
Proof-of-Execution consensus protocol (PoE) that alleviates these challenges.
At the core of PoE are out-of-order processing and speculative execution, which
allow PoE to execute transactions before consensus is reached among the
replicas. With these techniques, PoE manages to reduce the costs of BFT in
normal cases, while guaranteeing reliable consensus for clients in all cases.
We envision the use of PoE in high-throughput multi-party data-management and
blockchain systems. To validate this vision, we implement PoE in our efficient
ResilientDB fabric and extensively evaluate PoE against several
state-of-the-art BFT protocols. Our evaluation showcases that PoE achieves
up-to-80% higher throughputs than existing BFT protocols in the presence of
failures.
