Documentation Index
Fetch the complete documentation index at: https://utexo-e7ed9bd0-feat-faucet-bot.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
Overview
Validating Lightning Signer (VLS) is an open-source Rust library for secure, self-custodial Lightning signers. Unlike hot wallets or blind signers, VLS keeps your private keys off the node and validates each signing request, ensuring only legitimate channel operations are approved.Support for a remote signer in the RGB Lightning Node is currently under active development and should be considered experimental — not yet available for production use.Progress is tracked at: github.com/RGB-Tools/rgb-lightning-node/issues/43
System Architecture
VLS splits Lightning key management into two primary components:Lightning Node
Runs the standard LN logic — channel opening, routing, HTLC management. No private keys are stored here.Remote Validating Signer
Stores private keys in a secure environment and validates each request before generating a signature. If the request fails policy checks, it denies signing.Additional Components
| Component | Description |
|---|---|
| Policy Engine | Customizable rules ensuring no suspicious requests are signed |
| UTXO Oracle (optional) | Provides chain data to detect remote breaches |
| State Storage | Secure cloud storage with anti-rollback protection |
Validation Flow
- The Lightning Node proposes a transaction or state update.
- VLS checks protocol correctness and local policy.
- If valid, the signer returns a signature. Otherwise, it rejects the request.
Why This Matters
Traditional Lightning nodes require private keys to be on the same machine that handles routing and channel logic. VLS decouples these concerns:- Reduced attack surface — a compromised node cannot access signing keys
- Policy enforcement — custom rules prevent unauthorized channel operations
- Self-custody — keys never leave the secure signing environment