Libertapp

Libertapp

Censorship-resistant DApp Client

The problem Libertapp solves

After the events of 8th of August 2022, when OFAC sanctioned the whole of Tornado Cash, many popular dapp frontends started censoring their users – even though they are built upon permissionless, trustless, and decentralized underlying protocols. Some of them even get banned entirely and even the most powerful entities are often forced to comply. 🌪️

Our mission is to make the frontends of popular protocols accessible again. For everyone. First, we identified censorship attack vectors and other privacy concerns that could occur. And then, we tried to eliminate most of them with Libertapp.

We built a downloadable executable (cross-platform compatible) that runs a browsing client and is bundled with frontends of Tornado Cash, AAVE, and Uniswap. This prevents multiple vulnerabilities that limit our freedom right away and keeps the frontend accessible even if the official site gets taken down (e.g. via DNS, Browser, or Webhoster). On top, we forked all of those frontends before bundling and further improved them in terms of Privacy (removed analytics) & Censorship-resistance (removed frontend-level user censoring e.g. TRM + switched to non-censoring RPCs). The executable is on GitHub - try it out! (you may run into a security warning when opening the app, simply ignore it. On Mac, use Option + Right click -> Open). Also, see our attached demo video & pitch.

We have a dream. That one day everyone, and we mean truly everyone, can benefit from decentralized & private blockchain transactions and has the power to get rekt on shitcoin yield farms. Of course, there is so much to improve upon, but we hope to be one footstep closer to that goal now. 🕊️

Challenges we ran into

  • Tauri enforces strict Content-Security-Policy, which collided with the individual frontends’ policies and took a while to debug and get fixed.
  • Cross-platform builds are not yet supported on Tauri, so we need to use a GitHub Action with a platform matrix to build for other platforms.
  • We were initially using Radicle for VCS, but ran into so many issues and roadblocks that we had to switch to Gitlab.

Discussion