NTLM (NT LAN Manager) - это набор протоколов безопасности Microsoft, обеспечивающий аутентификацию, целостность и конфиденциальность для пользователей.

NTLM устарел для многих целей, так как он не поддерживает последние стандарты:

Разработчики должны знать, что NTLM не поддерживает какие-либо недавние криптографические методы, такие как AES или SHA-256. Он использует циклический контроль избыточности (CRC) или алгоритмы дайджеста сообщения (RFC1321) для проверки целостности, а также использует RC4 для шифрования. Получение ключа из пароля описано в RFC1320 и FIPS46-2. Поэтому приложениям обычно рекомендуется не использовать NTLM - MSDN, а вместо этого использовать Kerberos.

Несмотря на это, NTLM по-прежнему используется в корпоративных сетях, где Microsoft Active Directory предоставляет корпоративную службу каталогов для встроенной проверки подлинности Windows, когда Kerberos недоступен.

Подтверждение NTLM через HTTP довольно просто:

Request  - [unauthenticated - no user info passed]

Response - 401 Unauthorized
           WWW-Authenticate: NTLM


Request  - Authorization: NTLM <base64-encoded type-1-message>

Response - 401 Unauthorized
           WWW-Authenticate: NTLM <base64-encoded type-2-message>


Request  - Authorization: NTLM <base64-encoded type-3-message>

           Server can now check username/password against LDAP from type-3 message
Response - 200 Ok [now authenticated & authorised]