CTU-Core is a Netty-based Java client-server application that facilitates communication between clients and servers with advanced encryption methods such as SSL, TLS, compression, and other features.
To get started with CTU-Core, please follow these steps:
- Clone the repository onto your local machine.
- Open the project in your preferred Java IDE.
- Use your IDE's build tools to build the project.
If you prefer, you may use Maven in your project by including the following packages.
Check Example Server / Example Client for details on how to configure the client and/or server.
You can now generate your SSL & TLS vis this file GenerateSSLCerts
OR
- Install OpenSSL on your machine if you don't already have it. You can download OpenSSL from the official website or use your system's package manager.
- Open a command prompt or terminal window.
- Navigate to the directory where you want to generate the certificate and key files.
- Generate a private key using OpenSSL: This command generates a 2048-bit RSA private key and saves it to a file named server.key.
openssl genrsa -out server.key 2048- Create a self-signed SSL/TLS certificate using OpenSSL: This command generates a self-signed X.509 certificate and saves it to a file named server.crt. The certificate is valid for 365 days from the current date.
openssl req -new -x509 -key server.key -out server.crt -days 365- You can now place both the server.key and server.crt files in the server's running directory. Additionally, you should place the server.crt file in the client's running directory.