RealDevSquad / RealDevSquad/website-backend

Establish secure communication between Discord Service and Website Backend

Open
#2,379 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
74
Forks
276
Avg merge
1d 26m
Merged PRs (30d)
14

Description

Description:

We need to implement a secure, two-way communication channel between the Discord service and the website backend. This communication will be encrypted using RSA key pairs (public and private keys). The system will require two pairs of keys, one for each direction of communication.

Details:

Two-way Encryption:
  • We will generate two RSA key pairs:
    • One for the Discord service to encrypt messages sent to the website backend.
    • Another for the website backend to encrypt messages sent to the Discord service.
Public & Private Keys:
  • Public Key will be shared between the services for encryption.
  • Private Key will remain secure on each service (Discord and Website Backend) to decrypt the received messages.
Key Management:
  • RSA key pairs will be securely stored on both the Discord service and website backend servers.
  • Proper management and rotation of keys will be implemented to ensure ongoing security.
Communication Process:
1. Sending Messages:
  • The sender encrypts the message using the recipient’s public key.
  • The recipient decrypts the message using their corresponding private key.
2. Receiving Messages:
  • The sender encrypts the response message with the recipient's public key.
  • The recipient decrypts the response using their private key.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the Discord-service communication entry points in this JavaScript backend and checking how secrets or configuration are currently managed. Define the two-way message flow, RSA key storage and rotation requirements, and the expected handling of encrypted requests and responses. Done means both directions communicate securely with separate key pairs and the key-management behavior is documented and tested.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, nodejs
Domain
api, backend, security
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.