PcapPlusPlus  20.08+
pcpp::SSLServerHelloMessage::ServerHelloTLSFingerprint Struct Reference

#include <SSLHandshake.h>

Public Member Functions

std::string toString ()
std::string toMD5 ()
std::pair< std::string, std::string > toStringAndMD5 ()

Public Attributes

uint16_t tlsVersion
uint16_t cipherSuite
std::vector< uint16_t > extensions

Detailed Description

A struct that contains all the elements needed for creating a Server Hello TLS fingerprinting: TLS version, Cipher Suite ID, and a list of Extensions IDs. You can read more about this in SSLServerHelloMessage::generateTLSFingerprint(). This struct contains methods to extract the TLS fingerprint itself: toString() and toMD5()

Member Function Documentation

◆ toMD5()

std::string pcpp::SSLServerHelloMessage::ServerHelloTLSFingerprint::toMD5 ( )
An MD5 hash of the string generated by toString()

◆ toString()

std::string pcpp::SSLServerHelloMessage::ServerHelloTLSFingerprint::toString ( )
A string representing the TLS fingerprint, for example: 771,49195,65281-16-11

This string has the following format: TLSVersion,Cipher,Extensions

The extension ID are separated with a "-"

◆ toStringAndMD5()

std::pair<std::string, std::string> pcpp::SSLServerHelloMessage::ServerHelloTLSFingerprint::toStringAndMD5 ( )
A pair of the string and MD5 hash (string is first, MD5 is second). If you want both this method is more efficient than calling toString() and toMD5() separately

Member Data Documentation

◆ cipherSuite

uint16_t pcpp::SSLServerHelloMessage::ServerHelloTLSFingerprint::cipherSuite

Cipher Suite ID

◆ extensions

std::vector<uint16_t> pcpp::SSLServerHelloMessage::ServerHelloTLSFingerprint::extensions

A list of extension IDs

◆ tlsVersion

uint16_t pcpp::SSLServerHelloMessage::ServerHelloTLSFingerprint::tlsVersion

TLS version