SearcharxivSearch

arXiv subjects

Aditya Asgaonkar

Publications and source records attributed to Aditya Asgaonkar.

5 recordsLinked to original sources

A Fast Confirmation Rule for the Ethereum Consensus Protocol

A Confirmation Rule is an algorithm run by network nodes to determine whether a block will remain permanently in the canonical chain. The only Confirmation Rule currently available in Ethereum's consensus protocol, Gasper, is FFG finalization. While it tolerates asynchronous network conditions, it is slow: in the best case, a transaction takes 13 to 19 minutes to confirm, depending on when it is submitted. We devise a Fast Confirmation Rule (FCR) for Gasper that, under synchrony and the assumptions stated in this paper, achieves a best-case confirmation time of 12 seconds, a single slot, providing an order-of-magnitude improvement over FFG finalization. The rule is complementary to finalization: users who trust synchrony obtain fast confirmations, while finalization remains available as a fallback that tolerates asynchrony. Gasper is an ebb-and-flow protocol: it combines LMD-GHOST, a fork-choice rule providing fast progress under synchrony, with FFG-Casper, a finality gadget providing finality under partial synchrony. The main technical difficulty is to reason jointly about these two components, so that a block confirmed by LMD-GHOST cannot be filtered out by FFG-Casper's rules. We prove that the rule satisfies both safety, confirmed blocks remain canonical, and monotonicity, a confirmed block remains confirmed at all future times.

cs.DC

Formal Verification of the Ethereum 2.0 Beacon Chain

We report our experience in the formal verification of the reference implementation of the Beacon Chain. The Beacon Chain is the backbone component of the new Proof-of-Stake Ethereum 2.0 network: it is in charge of tracking information about the validators, their stakes, their attestations (votes) and if some validators are found to be dishonest, to slash them (they lose some of their stakes). The Beacon Chain is mission-critical and any bug in it could compromise the whole network. The Beacon Chain reference implementation developed by the Ethereum Foundation is written in Python, and provides a detailed operational description of the state machine each Beacon Chain's network participant (node) must implement. We have formally specified and verified the absence of runtime errors in (a large and critical part of) the Beacon Chain reference implementation using the verification-friendly language Dafny. During the course of this work, we have uncovered several issues, proposed verified fixes. We have also synthesised functional correctness specifications that enable us to provide guarantees beyond runtime errors. Our software artefact is available at https://github.com/ConsenSys/eth2.0-dafny.

cs.PL

Three Attacks on Proof-of-Stake Ethereum

Recently, two attacks were presented against Proof-of-Stake (PoS) Ethereum: one where short-range reorganizations of the underlying consensus chain are used to increase individual validators' profits and delay consensus decisions, and one where adversarial network delay is leveraged to stall consensus decisions indefinitely. We provide refined variants of these attacks, considerably relaxing the requirements on adversarial stake and network timing, and thus rendering the attacks more severe. Combining techniques from both refined attacks, we obtain a third attack which allows an adversary with vanishingly small fraction of stake and no control over network message propagation (assuming instead probabilistic message propagation) to cause even long-range consensus chain reorganizations. Honest-but-rational or ideologically motivated validators could use this attack to increase their profits or stall the protocol, threatening incentive alignment and security of PoS Ethereum. The attack can also lead to destabilization of consensus from congestion in vote processing.

cs.CR

Token Curated Registries - A Game Theoretic Approach

Token curated registries (TCRs) have been proposed recently as an approach to create and maintain high quality lists of resources or recommendations in a decentralized manner. Applications range from maintaining registries of web domains for advertising purposes (e.g., adChain) or restaurants, consumer products, etc. The registry is maintained through a combination of candidate applications requiring a token deposit, challenges based on token staking and token-weighted votes with a redistribution of tokens occurring as a consequence of the vote. We present a simplified mathematical model of a TCR and its challenge and voting process analyze it from a game-theoretic perspective. We derive some insights into conditions with respect to the quality of a candidate under which challenges occur, and under which the outcome is reject or accept. We also show that there are conditions under which the outcome may not be entirely predictable in the sense that everyone voting for accept and everyone voting for reject could both be Nash Equilibria outcomes. For such conditions, we also explore when a particular strategy profile may be payoff dominant. We identify ways in which our modeling can be extended and also some implications of our model with respect to the composition of TCRs.

cs.GT

Solving the Buyer and Seller's Dilemma: A Dual-Deposit Escrow Smart Contract for Provably Cheat-Proof Delivery and Payment for a Digital Good without a Trusted Mediator

A fundamental problem for electronic commerce is the buying and selling of digital goods between individuals that may not know or trust each other. Traditionally, this problem has been addressed by the use of trusted third-parties such as credit-card companies, mediated escrows, legal adjudication, or reputation systems. Despite the rise of blockchain protocols as a way to send payments without trusted third parties, the important problem of exchanging a digital good for payment without trusted third parties has been paid much less attention. We refer to this problem as the Buyer and Seller's Dilemma and present for it a dual-deposit escrow trade protocol which uses double-sided payment deposits in conjunction with simple cryptographic primitives, and that can be implemented using a blockchain-based smart contract. We analyze our protocol as an extensive-form game and prove that the Sub-game Perfect Nash Equilibrium for this game is for both the buyer and seller to cooperate and behave honestly. We address this problem under the assumption that the digital good being traded is known and verifiable, with a fixed price known to both parties.

cs.CR