Automated TLS Transmission Cost Testing Scripts - crt26/PQC-LEO GitHub Wiki

Testing Scripts Overview

The TLS handshake transmission cost testing suite is implemented by the standalone get_pqc_tls_bytes.py script in the scripts/test_scripts directory. It uses the certificates generated by tls_generate_keys.sh and the project-managed OpenSSL and OQS-Provider builds.

get_pqc_tls_bytes.py

This script measures the bytes transferred during local TLS 1.3 handshakes for PQC, Hybrid-PQC, and classical configurations. It starts an OpenSSL s_server on 127.0.0.1:4433, connects with OpenSSL s_client, and extracts the handshake byte counts reported by the client. Every PQC/Hybrid-PQC signature and KEM pairing and every classical signature, key-exchange-group, and ciphersuite combination is tested with both one-way and mutual authentication.

The script prompts for a Machine-ID and writes three final CSV files, separated into PQC, Hybrid-PQC, and classical results, under test_data/results/tls_handshake_bytes/machine_x. These files are already structured and are not processed by parse_results.py. The script accepts no command-line arguments and is intended to be run directly after tls_generate_keys.sh has generated the required CA, server, and client credentials.

⚠️ **GitHub.com Fallback** ⚠️