DeterministicESPAsyncWebServer v6.27.1
Zero-allocation, bounded-execution async HTTP server for ESP32
Loading...
Searching...
No Matches
ntlm.h File Reference

NTLMv2 response computation (MS-NLMP §3.3.2) for the SMB2 client (DETWS_ENABLE_SMB). More...

#include "ServerConfig.h"

Go to the source code of this file.

Detailed Description

NTLMv2 response computation (MS-NLMP §3.3.2) for the SMB2 client (DETWS_ENABLE_SMB).

The auth core: from the user's password and the server's CHALLENGE (the 8-byte server challenge

  • the target-info AV_PAIR blob), compute the NtChallengeResponse and the session base key that seed SESSION_SETUP. Built on the KAT-verified MD4 / MD5 / HMAC-MD5 (smb_md.h). Pure, zero heap.

    NThash = MD4(UTF-16LE(password)) NTOWFv2 = HMAC-MD5(NThash, UTF-16LE(Uppercase(user) + domain)) temp = 0x01 0x01 Z(6) Time(8) ClientChallenge(8) Z(4) TargetInfo Z(4) NTProofStr = HMAC-MD5(NTOWFv2, ServerChallenge(8) + temp) NtChallengeResponse = NTProofStr(16) + temp SessionBaseKey = HMAC-MD5(NTOWFv2, NTProofStr)

Verified against the MS-NLMP §4.2 worked example (test_ntlm).

Author
Douglas Quigg (dstroy0)
Date
2026

Definition in file ntlm.h.