John Adler | ✨⛽ Profile picture
Blockchain skeptic. Co-founder: @CelestiaOrg, @fuellabs_. Wait, it's all data availability? Prev: @ConsenSys. The biggest ETH maxi on Twitter.
2 subscribers
Jun 23, 2022 4 tweets 2 min read
SwaySwap, a blazingly fast dex for the Fuel devnet, is out. A short thread on how Fuel @fuellabs_ eliminates the need for token approvals.

This means fewer transactions to interact with a dapp, and no infinite-approvals i.e. more secure in case of hacks.

While ETH can be *pushed* with contract calls on Ethereum, ERC-20 tokens cannot. `approve` and `transferFrom` must be used (in two separate transactions) to first approve an amount of tokens for a receiving contract to *pull*, then for the receiving contract to actually pull.
Sep 26, 2020 15 tweets 4 min read
What Avalanche is Not, Episode 3

Last episode, we discussed rewards. On today's episode, the other half of the Nakamoto Incentive: penalties. We will show how Avalanche does not provide the accountable safety property that modern PoS protocols have.

The Nakamoto Incentive is both an incentive (rewards + fees) and a disincentive (penalties for both individuals and majorities). Both are necessary for permissionless consensus protocols to function without having to heavily rely on altruism.

Sep 26, 2020 21 tweets 5 min read
What Avalanche is Not, Episode 2

Last episode, we discussed fees and how it's impossible for Avalanche's X-Chain to have non-fixed fees without making fundamental trade-offs. On today's episode: rewards, and how they're similarly impossible.

Let's start by clearing up some confusion from last time. It's not “impossible, period” to have non-fixed fees in Avalanche; rather, it's impossible without making some additional trade-offs to fundamental assumptions or guarantees provided by AC.

Sep 24, 2020 16 tweets 4 min read
What Avalanche is Not, Episode 1

This is the first in a series of tweet threads that will discuss fundamental shortcomings or pitfalls of the Avalanche Consensus protocol, and its instantiation in Avalanche. On today’s episode: fees. Now that the Avalanche mainnet has launched, “we have a secret plan that will fix this issue and we won’t tell you until mainnet” is no longer an excuse. So let’s dig in and find out which issues were actually unfixed, and more interestingly, unfixable.

Sep 13, 2020 5 tweets 2 min read
Just published "Nakamoto Consensus Requires Social Coordination and Subjectivity"

TL;DR Nakamoto Consensus, contrary to popular belief, is not objective. It has a subjective component, just like the weak subjectivity assumption required in PoS protocols.

talk.lazyledger.io/t/nakamoto-con… We've been told for years now by Bitcoin maximalists that PoS protocols require *fundamentally* stronger trust assumptions than PoW, in the form of weak subjectivity (asking a trusted third-party for a checkpoint if you've been offline for a while). We've been told a lie.
Aug 5, 2020 27 tweets 8 min read
Optimistic rollups have taken Ethereum by storm as a promising avenue for exploring different execution models and enabling dynamic heterogeneous sharing on Ethereum today.

Here’s a thread on the precursors to ORU: scaling techniques that were so close, but didn’t quite make it. I’ll be covering two techniques in this thread: the earlier “shadow chains” and the more recent “plasma rollup.” There are many more techniques (too many to enumerate) that share many common features with ORU, but none of these have the exact same properties as ORU.
Jul 31, 2020 7 tweets 5 min read
Jun 25, 2020 8 tweets 2 min read
Some analysis of the just-published token sale. A thread 👇 Be wary of claims like this that aren't backed up by a long-running public testnet. Image
Apr 21, 2020 12 tweets 4 min read
Alex describes in this episode the key attack that sharded blockchains need to deal with: data withholding.

A thread 👇

If an invalid block is created, a compact fraud proof can be produced to show this to light clients. Full nodes fully validate everything, so they are unaffected by invalid blocks. They can produce fraud proofs for light clients.

Fraud proofs are "alerts" in the Bitcoin paper.
Feb 11, 2020 6 tweets 2 min read
"Trustless validator blackmailing with the blockchain" by @nkeywal.

1/n TL;DR: after collecting some private keys (or using some other exploit), an attacker blackmails her targets. She'll generate a slashable attestation unless the target pays her

ethresear.ch/t/trustless-va… 2/n some of the 32 ETH deposit. She proves she has the key by signing a msg. The attacker can only withdraw the funds if they haven't created a slashable attestation before the target has had the chance to exit from being a validator, so this is 100% trustless for both parties.
Dec 11, 2019 12 tweets 4 min read
Yesterday saw a flurry of discussion on cryptotwitter about Gregory Maxwell's analysis of @the_matter_labs's ZK Sync. The claim is that zk rollup was proposed back in 2013, as CoinWitness.

The claim is categorically, catastrophically, wrong.

<thread>

ImageImage First, a primer on CoinWitness. It uses a "coins" data model, which is distinct from the UTXO or accounts data model.

You can think of each coin as like a channel. A coin is created by opening a multisig between a user and some operator.

bitcointalk.org/index.php?topi…
Dec 9, 2019 8 tweets 3 min read
<thread>

I want to push back on the notion that rollups with a permissioned block producer set are okay. Rollups need to be permissionless in order to have all the nice guarantees they provide---guarantees you can't have with Bitcoin side chains.

@the_matter_labs's ZK Sync (which is an otherwise incredible achievement from a stellar team) allows a majority of token holders to censor transactions arbitrarily for free (or at most, for the price of a majority of the tokens). In other words, ZK Sync is permissioned. Image
Nov 24, 2019 5 tweets 2 min read
More @ercwl reaction gifs.
Apr 27, 2019 9 tweets 3 min read
Change my mind: The Zcash $ZEC blockchain should be considered permanently corrupted. Thread 👇 In transparent blockchains, an erroneous state transition due to a bug in the client software can be rolled back. See: the Bitcoin value overflow incident.

en.bitcoin.it/wiki/Value_ove…