Create Ceremony Repository

This repository holds data pertaining to vaults. The primary data consists of:

  • Operation proposals

  • Operation approvals

  • Payloads

  • Trusted PGP keyring

  • Shardfiles

  • Blockchain metadata

  • Policies (such as spending rules)

  • Ceremony logs

Directives

  • MUST be a private repository

  • MUST require signed commits

Repository Structure

keys/
    all/
        fingerprint.asc
<namespace>/
    ceremonies/
        <date>/
            log.txt
            payloads/
                payload_<num>.json
                payload_<num>.json.sig
    blockchain_metadata/
        sol_nonce_address.txt
    policies/
        spending-policy.json [NOT IMPLEMENTED]
    keyring.asc
    shardfile.asc

Procedure: Setting up Repository

  1. Create a git repository using a git system such as Forgejo, GitLab, GitHub etc.

  2. Set appropriate permissions to limit who can write to the repository.

    • Require that all commits are signed using well known PGP keys
  3. Optionally set up a cron job that periodically pulls the data from the repository as a backup.