Marigold: layer-2 scaling for Tezos

Gabriel Alfour
Feb 4, 2019 · 4 min read

An introduction to Marigold

Current blockchain networks offer strong guarantees of correctness and resistance to censorship. In exchange, they are slow and too expensive to run applications at scale. Marigold is a layer-2 project that trades off censorship resistance for speed and low fees, enabling applications that scale.

How Marigold works: extending Plasma

Marigold is so far based on Plasma, a layer-2 solution where smart contracts are encoded to enable fraud proofs, allowing arbitrary computation to be safely executed off-chain. Vitalik Buterin and Joseph Poon introduced this idea in 2017.

Dealing with mass exits

A common concern around Plasma design is avoiding the “mass exit” problem.

  1. Users can assign their exit rights to another user (an exit-delegate)
  2. When an exit-delegate leaves, all of their delegators’ funds leave at the same time
  3. A vote to move to another Marigold chain to minimize the interruption of service by an exit (with the goal of no interruption at all in the best case)

Watching the chain

Another concern is that the system’s security relies on all users of Marigold watching the system for misbehavior. To avoid a free-rider problem, making an operation on Marigold will require solving a challenge, which amounts to checking that a few operations in the previous blocks are valid.

Deploying Marigold

The project’s main focus is on enabling developers from all horizons to start hacking and building on Marigold as soon as possible.

Smart Contract Language for Marigold

Given the public beta-version of Marigold will support arbitrary contracts (rather than only transfers), a smart-contract language tailored to developing applications on Marigold is in development.

Easy deployment

A key design goal of Marigold is to make the deployment process as frictionless as possible for other developers. For users of contracts, making two signed API calls to a web-server is all that is needed, which makes it easy to build a Marigold-powered app, or a backend using Marigold for parts of its logic.

Smart Contract Language for Tezos

But first, project resources are dedicated to a new smart contract language for Tezos. What currently exists was sufficient for the Marigold prototype. However, the contracts needed for the full feature set described above require more because of their additional complexity.

The future

Right now, the focus is on building a platform that enables scalable applications on Tezos. But after the platform is built, the project will move to add capabilities to the core of Marigold and building applications and a developer ecosystem on the platform.

Improving the Core

Once built, the project will integrate state-of-the-art research.

Attracting Applications

We plan to attract a wide range of applications to the platform.


For those interested in learning more about Marigold: {}. More details to come.

Image for post
Image for post


Tezos: the self-amending cryptographic ledger

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store