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.
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.