RGB-Tools / RGB-Tools/rgb-lightning-node
Proposal: Integrating Validating Remote Signer (VLS) in RGB Lightning Node
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 50
- Forks
- 48
- Avg merge
- 8h 52m
- Merged PRs (30d)
- 2
Description
Proposal: Integrating Validating Remote Signer (VLS) in RGB Lightning Node
At ThunderStack, we aim to provide the best possible service and security for our clients, developers, and users. To achieve this, we propose integrating the Validating Remote Signer (VLS) into the RGB Lightning Node.
Motivation
During the implementation of a cloud solution for the RGB Lightning Node (RLN), one of the primary concerns raised by users was the need for higher standards of security. Users emphasized the importance of separating the signer from the node to minimize attack surfaces and enhance key protection. To address these needs, we propose providing several deployment options for the signer, each offering different trade-offs in terms of security, usability, and control. See the use cases below for details.
Use Cases
1. Secure Remote Signer Deployment
By default, deploy the remote signer to AWS Nitro Enclaves, ensuring:
- Isolation of the signer in a hardware-secured environment.
- Protection against unauthorized access and external threats.
Reference: AWS Nitro Enclaves
2. User-Hosted Non-Custodial Signers
Provide users with:
- Scripts and documentation for hosting signers locally, ensuring full key ownership.
- Optional MPC-based signing for enterprise-grade security in cloud environments, inspired by Fireblocks custody solutions.
Reference: Fireblocks MPC API, AWS Nitro MPC
3. Mobile Wallet Integration
Enable signers to operate on mobile wallets by:
- Supporting a non-custodial architecture suitable for mobile aligning with the Greenlight framework, to keep secret keys on user's device for signing operations.
- Leveraging notification systems to wake the device for signing operations.
Reference: Breez SDK Notifications, Greenlight Key Manager
Reference Implementation
LDK VLS Implementation
The LDK VLS Implementation demonstrates the use of Lightning Development Kit (LDK) with VLS
Design Goals
- Ensure compatibility with Greenlight.
- Enhance security for both cloud-hosted and user-hosted setups.
- Introduce enterprise-level security via MPC mechanisms.
References
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names no repository files, tests, or entry points. Start by reviewing the linked LDK VLS implementation and VLS references, then define the integration scope; done would mean an agreed implementation covering the listed deployment options and Greenlight compatibility.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws, rust
- Domain
- backend, cloud, security
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100