Skip to content

RunOnFlux/ssp-relay

Repository files navigation

SSP Relay

codecov
DeepScan grade
CodeFactor


Overview

SSP Relay is the communication backbone of the SSP Wallet ecosystem, enabling seamless interaction between SSP Wallet and SSP Key. By acting as a secure relay server, it facilitates synchronization, multisignature transaction management, and reliable communication without ever compromising private keys or sensitive data.

Key Features

  • Secure Communication: Ensures encrypted and authenticated data transfer between SSP Wallet and SSP Key.
  • Multisignature Support: Powers the 2-of-2 multisignature architecture, enhancing the security of user transactions.
  • True Self-Custody: Operates without storing or accessing private keys, maintaining the user's self-custody.
  • Scalable and Reliable: Built with modern technologies to handle large-scale usage efficiently.

Requirements

To run SSP Relay, ensure your environment meets the following prerequisites:

  • Node.js: Version 20 or higher
  • MongoDB: A running MongoDB instance for data storage and processing

Installation

Follow these steps to set up and run SSP Relay:

  1. Clone the Repository

    git clone https://github.com/RunOnFlux/ssp-relay.git
    cd ssp-relay
  2. Install Dependencies
    Use Yarn to install the necessary packages:

    yarn install
  3. Configure MongoDB
    Ensure you have a MongoDB instance running and accessible. Update the configuration file with the appropriate MongoDB connection details.

  4. Start the Service
    Run the following command to start the SSP Relay server:

    yarn start

    By default, the service will start at http://127.0.0.1:9876.


Usage

SSP Relay is designed to work seamlessly with SSP Wallet and SSP Key. It plays a critical role in:

  1. Synchronization: Facilitating secure exchange of public keys between SSP Wallet and SSP Key.
  2. Transaction Signing: Relaying partially signed transactions for final signing and broadcast.

For more details on how SSP Relay integrates with SSP Wallet and SSP Key, refer to the SSP Documentation.


Development

Running in Development Mode

To run SSP Relay in development mode, use:

yarn dev

Testing

SSP Relay includes a suite of tests to ensure reliability. Run the tests using:

yarn test

Contribution

We welcome contributions to improve SSP Relay! Please review the Contributing Guidelines before getting started.


Important Links


Disclaimer

By using SSP Relay, you agree to the terms outlined in the Disclaimer. SSP Relay is a part of the SSP ecosystem and should be used in conjunction with SSP Wallet and SSP Key for optimal performance and security.