Ceremony

The following sections lay out the step-by-step process for orchestrating an IOTA Genesis Ceremony.

Prerequisites for Validators

  • IOTA CLI with the latest indicated version. Binaries are found attached to the Github Release page.
  • A secure Mac or Linux machine to execute the ceremony steps. Windows is not supported for the ceremony!
  • A validator machine with a public domain name that is accessible from the internet.

Process Overview

The diagram below shows the dependencies between ceremony processes and artifacts.

ceremony dependencies

The following steps are performed in the ceremony:

  • Step 1: Master of Ceremony creates a shared workspace for the ceremony.
  • Step 2: Master of Ceremony initializes the genesis repository.
  • Step 3: Validators contribute their information to the genesis repository.
  • Step 4: Master of Ceremony prepares an address swap map.
  • Step 5: Master of Ceremony prepares a delegator map.
  • Step 6: The IOTA Stardust network is shut down. A hornet snapshot is taken by the Master of Ceremony.
  • Step 7: The Master of Ceremony generates a Stardust Object Snapshot from the hornet snapshot.
  • Step 8: The Master of Ceremony re-initializes the ceremony to update the chain start time.
  • Step 9: The Master of Ceremony initializes validator delegations.
  • Step 10: The Master of Ceremony builds an unsigned checkpoint.
  • Step 11: Validators fetch blobs required for verifying and signing the checkpoint.
  • Step 12: Validators verify and sign the checkpoint.
  • Step 13: The Master of Ceremony finalizes the genesis state.
  • Step 14: Validators start up their nodes with the new genesis state.