include/freerdp/crypto/. The primary consumers are the TLS transport, NLA (CredSSP/NTLM/Kerberos), and server-side certificate configuration.
Certificate API
Header:<freerdp/crypto/certificate.h>
Lifecycle
Export
Fingerprint and hash
Subject and identity inspection
Validity
Key information
Verification
Private Key API
Header:<freerdp/crypto/privatekey.h>
Lifecycle
Key generation (since 3.16.0)
Inspection and export
NTLM / Kerberos (NLA)
FreeRDP’s NLA stack is built on WinPR’s SSPI layer (<winpr/sspi.h>) and does not expose a dedicated public API. Authentication flows are driven internally when:
- The client connects with
NLAsecurity level (the default whensettings->NlaSecurity = TRUE). - The server registers the
Logoncallback on thefreerdp_peerto validate credentials.
psPeerLogon callback (see Server Peer) provides SEC_WINNT_AUTH_IDENTITY containing the username and domain. For Remote Credential Guard, the RemoteCredentials callback delivers KERB_TICKET_LOGON and MSV1_0_REMOTE_SUPPLEMENTAL_CREDENTIAL structures.
All strings returned by
freerdp_certificate_get_* functions are heap-allocated. Release them with free().