20 #ifndef WINPR_SSPI_NTLM_COMPUTE_H
21 #define WINPR_SSPI_NTLM_COMPUTE_H
25 #include "ntlm_av_pairs.h"
31 #ifdef WITH_DEBUG_NTLM
39 void ntlm_output_channel_bindings(
NTLM_CONTEXT* context);
41 void ntlm_current_time(BYTE* timestamp);
44 SECURITY_STATUS ntlm_compute_lm_v2_response(
NTLM_CONTEXT* context);
45 SECURITY_STATUS ntlm_compute_ntlm_v2_response(
NTLM_CONTEXT* context);
47 void ntlm_rc4k(BYTE* key,
size_t length, BYTE* plaintext, BYTE* ciphertext);
48 void ntlm_generate_client_challenge(
NTLM_CONTEXT* context);
49 void ntlm_generate_server_challenge(
NTLM_CONTEXT* context);
50 void ntlm_generate_key_exchange_key(
NTLM_CONTEXT* context);
51 void ntlm_generate_random_session_key(
NTLM_CONTEXT* context);
52 void ntlm_generate_exported_session_key(
NTLM_CONTEXT* context);
53 void ntlm_encrypt_random_session_key(
NTLM_CONTEXT* context);
54 void ntlm_decrypt_random_session_key(
NTLM_CONTEXT* context);
56 BOOL ntlm_generate_client_signing_key(
NTLM_CONTEXT* context);
57 BOOL ntlm_generate_server_signing_key(
NTLM_CONTEXT* context);
58 BOOL ntlm_generate_client_sealing_key(
NTLM_CONTEXT* context);
59 BOOL ntlm_generate_server_sealing_key(
NTLM_CONTEXT* context);
62 BOOL ntlm_compute_message_integrity_check(
NTLM_CONTEXT* context, BYTE* mic, UINT32 size);