Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add optional packet encryption #2030

Draft
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

Measurity
Copy link
Collaborator

@Measurity Measurity commented Apr 27, 2023

  • Add RSA API for creating and loading private/public key pairs
  • Add AES API for symmetric encryption of packets
  • Add negotiation between client and server (encrypted using RSA) for which password to use for AES packet encryption
  • Make packet encryption optional via server configuration

Ideally would use DTLS, which prevents decryption of all (recorded) messages (if the private key is ever leaked). But I leave that as a future improvement.

Closes #1996

@Measurity Measurity force-pushed the packet-encrypt branch 9 times, most recently from 43c26fe to 15c8e2b Compare April 27, 2023 21:47
@Measurity Measurity changed the title Added optional packet encryption Add optional packet encryption May 13, 2023
@tornac1234 tornac1234 added the Area: netcode Related to packet serialization and networking algorithms label Dec 23, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area: netcode Related to packet serialization and networking algorithms
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Packet encryption using RSA
2 participants