RealDevSquad / RealDevSquad/website-backend
Establish secure communication between Discord Service and Website Backend
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
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
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