Skip to content

Implement DKG contracts #10

Description

@jannikluhn

Implement the contracts necessary to run DKG on-chain. This includes

  • a bulletin board contract where DKG messages are posted
  • a key registry where keypers can register their poly eval encryption keys

The bulletin board contract should

  • follow four phase model (dealing, accusations, apologies, finalization)
  • accept messages from keyper set members if sent during the correct phase and before finalization
  • vote on success during finalization
  • support retries if finalization doesn't succeed
  • not do message validation on-chain

The key registry contract should allow keypers to

  • register their encryption key
  • update their encryption key

Additionally, there should be a benchmark to calculate the gas usage of the DKG contract in the best and worst case as a function of the number of keypers.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions