Shadowlings Defensive Tooling Smart Contracts

The problem Shadowlings solves

We want privacy! We want recoverability! And Shadowlings gives that to us and pushes the freedom to transact to a new level.

Shadowlings generates unique and disposable deposit addresses that appear to be clean EOAs but are supercharged using EIP-3074 and ERC-4337. Additionally these deposit addresses can be connected to your existing account without doxing yourself using the power of Zero Knowledge. With that you can utilize recoverability mechanisms of an existing smart account and don’t have to worry about losing access to your shadow accounts.

With this we empower users to freely and privately transact without needing to manage multiple private keys, or being bothered by the wary eyes of other participants.

Technical Highlights

  • Three Zero Knowledge Proof Circuits
  • Possible to use the contracts with a CLI or a web app
  • Local (and dockerized) EIP-3074 and ERC-4337 setup (including bundlers)
  • Gaslessly operate shadow accounts
  • Nick’s method paired with EIP-3074 for managing shadow accounts without any private keys

Challenges you ran into

  • Balancing privacy and recoverability
  • Getting started with Zero Knowledge Proofs (e.g. Zokrates, which hashing functions to use)
  • Working with EIPs that are not on a official testnet (unofficial testnet went down, required full local setup of a testnet and 4337 stack)

Technology used

  • EIP-3074 + Nick’s method
  • ERC-4337
  • Zero Knowledge Proofs via Zokrates