Skip to content

A sample client-server TLS authentication/messenger app built with OpenSSL and Rust

License

Notifications You must be signed in to change notification settings

vhborges/rusty-tls-messenger

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Summary

A sample client-server application for TLS authentication and secure messaging, built with OpenSSL and Rust.

This project was made with the purpose of learning OpenSSL, TLS handshake and secure communication, but it can be used as a base code for any app that requires TLS communication.

Project structure

  • certs: Contains certificates and RSA keys used by the app to provide TLS authentication and message encryption, generated using OpenSSL CLI.
  • app: Contains the app's source-code.

Running

Start the server: cargo run --bin server

Provide the private-key passphrase (obviously I'll not provide my own, so you'll need to generate your own private-keys and certificates)

Start the client: cargo run --bin client

The client will send a "Hello" message to the server, then the server will ask for a message to send to the client; after that, the communication will continue indefinitely.

Reference

The following material was used for guidance:

Cyber Hashira's Youtube playlist about OpenSSL CLI

OpenSSL Rust lib documentation (especially the sample client-server TLS auth code)

About

A sample client-server TLS authentication/messenger app built with OpenSSL and Rust

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages