Minimalist integration Cartesi Rollups & Espresso Sequencer

Hello everyone! I’d like to give an update about my experimentations so far.

First of all, I’ve got some things running, and code and details can be checked in my rollups-espresso Github repo.

I’d like to summarize the current state of affairs here, in terms of value and strategy:

  • As a minimalistic integration, I’d like to remind you all that the approach I am following is to only use Espresso as a DA. This is much simpler to implement IMHO, and I’d say it’s not that far from actually working (disconsidering arbitration, of course). With this approach, Cartesi DApps work as they do now, with DApps having the option of also using data sent to Espresso (for which just the Espresso block hash is sent to L1). This is useful to allow larger sets of data, but does not help applications that need a lot of transactions (for that, we will still depend on deploying to Optimism or Arbitrum to take advantage of their sequencers)
  • AFAIU, this approach can be directly used for some other DA’s, in particular Syscoin and IPFS (although I personally do not consider IPFS to be a DA solution)
  • This experiment is already exercising the use of the Dehashing Device (for now, just a quick hack illustrating how it would be used). My idea is that with other examples (Syscoin, IPFS, hopefully EigenDA), we can narrow down what we think is reasonable and start to actually implement it for real

Aside from that, using Espresso as a sequencer currently sounds as a completely different ballgame for me. I feel that it will require much more substantial changes to how things work, and I confess I don’t quite understand it yet (such as how to use L1 assets, or how to integrate with smart contracts in general). Nevertheless, this is clearly the end game, and what Espresso was built for, so we should keep it in mind.

1 Like