/dirk

Primary LanguageGoApache License 2.0Apache-2.0

Dirk

Tag License GoDoc Lint Go Report Card

An Ethereum 2 distributed remote keymanager, focused on security and long-term performance of signing operations.

Table of Contents

Install

Binaries

Binaries for the latest version of dirk can be obtained from the releases page.

Docker

You can obtain the latest version of dirk using docker with:

docker pull attestant/dirk

Source

dirk is a standard Go module which can be installed with:

go install github.com/attestantio/dirk@latest

Usage

dirk provides an interface to wallet operations such as listing accounts and signing requests. The daemon provides a number of security measures to avoid unauthorised uses of the private keys, and protection against invalid actions (e.g. slashing events).

Although dirk can work with a single instance, it is best used with multiple instances and distributed keys. Multiple instances allow high levels of resiliency and maintainability, providing a safer operating environment.

dirk is designed to "front load" expensive operations, providing an initial period on startup where signing operations may be slower whilst it caches information such as the presence (or not) of particular accounts. One consequence of this is that dirk does not attempt to rescan its wallets for new keys created externally (although new distributed accounts are acknowledged as they are created by dirk itself).

Documentation

The following documentation is available:

Maintainers

Jim McDonald: @mcdee.

Contribute

Contributions welcome. Please check out the issues.

License

Apache-2.0 © 2020 - 2024 Attestant Limited.