Delegated Head Network
This document details the behaviour of so-called Delegated Hydra Head Network.
A Delegated Hydra Head Network comprises the following type of actors:
- Operator nodes with low expected downtime, probably operated by some company or organisation with enough resources to host this service,
- Client nodes, either DApp instances, or mobile/personal wallets, which might not be always online and possibly can come and go.
Client nodes want to be able to interact with each other efficiently, at a low cost, using standard Cardano (L1) transactions. They are willing to trust at least one Operator to run a full Hydra and Cardano node on their behalf, in effect trading some trust for efficiency. They interact with other clients in a single head using the Hydra API and retain ownership of signing keys for transactions submitted to the Head.
Client nodes, may come and go offline without hampering progress of the Hydra Head. The safety of their funds rely on having at least one honest Operator node with whom they can interact but importantly, they do not relinquish keys for spending funds inside the Head.
Operator nodes hold the Hydra keys used by the protocol to sign snapshots, and the Cardano keys used to progress the Head State Machine on L1. Each of them can sport 100s of client connections through (possibly short lived) WebSocket connections.
This deployment model has the undesirable property of requiring trust from clients to operators and custodianship of funds committed to the Head. In effect, it's a simple way to create a Side-chain-a-la-carte with the Operators being responsible for its safety and liveness. Such "alternative chains" can be easily created and deployed in an ad-hoc way without requiring the complexity associated with "classic" Side-chains.
This deployment model could be interesting in scenarios where:
- The Hydra nodes can be fully trusted, either because of their identity, reputation, or lack of personal interest in the purpose of the Head,
- There's a need to scale the involved parties to the 100s or 1000s, something which is not possible on a normal head.