HTTPS client implementation in C using mutual TLS (mTLS) authentication.
- 🌱 Initializes the TLS context and seeds the random number generator
- 📜 Loads and parses certificates and private keys
- 🔌 Sets up the network connection and configures SSL settings
- 🤝 Performs the SSL/TLS handshake
- 📤 Sends an HTTP GET request to the server
- 📥 Receives and displays the server's response
- 🧹 Cleans up and frees resources
To build and run this project:
- Ensure you have CMake and a C compiler installed
- Clone this repository
- Navigate to the project directory
- Install mbedTLS
- Run the following commands:
mkdir build
cd build
cmake ..
make
./https-mtls
This project demonstrates the use of mTLS for secure communication. In a real-world scenario, you should never hardcode certificates and private keys in your source code. Instead, use secure methods to store and retrieve these sensitive credentials.
This project is licensed under the MIT License