Advanced
Nat Emodi@emodi
11/28/2022

What are benefits of on-chain vs off-chain allowlists using Merkle roots? I understand that Merkle roots are more gas efficient vs other on-chain approaches, but why are on-chain Merkle allowlists better than off-chain? Merkle roots don't seem to provide better security or transparency; maybe I'm missing something

In reply to @emodi
rekdaus@rekdaus
11/28/2022

most mints can hit the contracts directly. makes sense if you just need an allowlist guard, involved use-cases such as signature based minting can warrant taking it off-chain otherwise, agreed - on-chain allowlists don't improve observability, given merkle roots intentionally obfuscate their leaves

In reply to @emodi
11/28/2022

But how would an off-chain allowlist work?

In reply to @emodi
ian@ian
11/28/2022

I’ve always opted for off-chain lists vs merkle roots. Doesn’t require a transaction to add a new wallet address. Pretty much every drop I’ve been a part of has a ton of last minute wallet additions that would be a pain to do with merkle design.

In reply to @emodi
tim 🥝@timdaub
11/28/2022

The most structurally efficient allow list implementation is one where the issuer signs lazily mintable allowanced and a contract ecrecovers them. Merkle trees require #depth bytes32 as partial proof! A generalization can be the EIP-4973 consensual minting function „give“ (but it‘s not super gas optimized)