Skip to main content

How to configure a Data Availability Committee: introduction

PUBLIC PREVIEW DOCUMENT

This document is currently in public preview and may change significantly as feedback is captured from readers like you. Click the Request an update button at the top of this document or join the Arbitrum Discord to share your feedback.

AnyTrust chains rely on an external Data Availability Committee (DAC) to store data and provide it on demand instead of using the parent chain as the Data Availability (DA) layer. The members of the DAC run a Data Availability Server (DAS) to handle these operations.

This section offers information and a series of how-to guides to help you along the process of setting up a Data Availability Committee. These guides target two audiences: Committee members who wish to deploy a Data Availability Server, and chain owners who wish to configure their chain with the information of the Committee.

When following the guides in this section, you should be familiarized with how the AnyTrust protocol works and what's the role of the DAC in the protocol. You can find more information about the AnyTrust protocol in Inside AnyTrust.

DAC configuration checklist

Here's a basic checklist of actions to complete in order to configure the DAC in your chain. You can keep this list as a reference while you go through the process of having the DA servers deployed by the members of the Committee and updating your chain's configuration:

  • Deploy all committee member DA servers needed. Gather the following information from them:
    • Public BLS key
    • URL for the RPC endpoint, through a secure communication channel
    • If enabled, URL for the REST endpoint
  • Deploy the desired mirror DA servers. Gather the following information from them:
    • URL for the REST endpoint
  • Have at least one of the DA servers be an archive DAS
  • Generate the keyset and keyset hash with all the information from the servers
  • Craft the new configuration for the batch poster
  • Craft the new configuration for your chain's nodes
  • Update the SequencerInbox contract

If you are a DAC member

Committee members will need to run a DAS. To do that, they will first need to generate a pair of keys and deploy a DAS as a committee member and, potentially, another DAS as a mirror. Find more information in How to deploy a committee member DAS and How to deploy a mirror DAS.

If you are a chain owner

Chain owners will need to gather the information from the committee members to craft the necessary information to update their chain and the batch poster (more information in How to configure the DAC in your chain). They might also want to test each DAS individually, by following the testing guides available in How to deploy a committee member DAS and How to deploy a mirror DAS.

Ask for help

Configuring a DAC might be a complex process. If you need help setting it up, don't hesitate to ask us on Discord.