By Gauthier Sebille
Marigold and TriliTech are pleased to announce the successful deployment of a fully working Data Availability Committees on the Ghostnet Tezos network.
To learn more about Data Availability Committees, Nomadic Labs published an excellent article explaining everything in detail.
Please note that this Community DAC is run on best-effort. We do not provide a guarantee on uptime or data lifetime storage. Hence, it should be only used for testing purposes.
Moreover, DAC is an experimental executable available since Octez v18.0. Hence, feedback is welcome!
End of disclaimer
The introduction of the Nomadic-Labs article is the best one you can find; let’s reproduce it here:
A Data Availability Committee (DAC) is a solution for scaling the transaction throughput of Tezos Smart Rollups. In summary, a DAC enables storing transaction data for a smart rollup off-chain. Rollup nodes retrieve the transaction payloads from the DAC members and import them into their Smart Rollup virtual machines, instead of retrieving them directly from Tezos blocks, and thus circumvent the data limit imposed by Tezos block sizes.
Eager to scale the transaction throughput of Tezos Smart Rollups, Marigold and Trili Tech have decided to run their shared DAC.
Here is the complete infrastructure deployed so far:
- 1 Coordinator (managed by Marigold)
- 3 Members (2 managed by Marigold and 1 by TriliTech)
- 2 Observers (1 managed by Marigold and 1 by TriliTech)
In this quick tutorial, we are going to give you the commands to:
- Push data to Community DAC
- Retrieve certificate
- Retrieve data
The first step is, of course, to post your data on the Community DAC.
DAC has been included in the Tezos Shell CLI since v18.0, you can use the
octez-dac-client binary to interact with it.
I want to post the string
Marigold and Trili Tech run Community DAC! as an example.
Get the hexadecimal representation (you can use whatever tool you want, there are many online), which is
Push the data
$ octez-dac-client send payload to coordinator https://dac-ghost-coordinator.gcp.marigold.dev/ with content "4D617269676F6C6420616E64205472696C6920546563682072756E20436F6D6D756E6974792044414321"
Which must return the
root_hash! of the stored data:
Payload stored under root hash: 00e841b90074cdd84154c0fc2e841a15a70a08c45840fc0ca8211
If you want to know more about Community DAC, please read our blogpost on Marigold website Ghostnet Community DAC is alive!