KeyManager
- class mtf.network_port.tls.key_manager.KeyManager
A class to handle key management operations, including logging TLS key material and maintaining a dictionary of key material for debugging and verification purposes.
- Attributes:
keylog_file_path (str): The path to the file where key material will be logged. file_cleared (bool): A flag indicating whether the key log file has been cleared. key_material_dict (dict): A dictionary to store key material with specific labels.
- __init__(keylog_file_path)
- default_keylog_callback(connection, key_material)
Callback function to handle logging of TLS key material.
This function is called whenever TLS key material is generated or received. It writes the key material to a log file and updates a dictionary with the key material for each recognized label.
- Parameters:
connection (SSL.Connection) – The SSL/TLS connection object associated with the key material.
key_material (bytes) – The key material to log, which includes the label and associated key.
- Returns:
None
- log_key_material_dict()
Log the contents of the key material dictionary.
This function prints each label and the associated key material stored in the key_material_dict. It helps in debugging and verifying the key material collected during the TLS sessions.
- Returns:
None