Microsoft PPP CHAP Extensions
RFC 2433
Network Working Group G. Zorn
Request for Comments: 2433 S. Cobb
Category: Informational Microsoft Corporation
October 1998
Microsoft PPP CHAP Extensions
Status of this Memo
This memo provides information for the Internet community. It does
not specify an Internet standard of any kind. Distribution of this
memo is unlimited.
Copyright Notice
Copyright (C) The Internet Society (1998). All Rights Reserved.
IESG Note
The protocol described here has significant vulnerabilities. People
planning on implementing or using this protocol should read section
12, "Security Considerations".
1. Abstract
The Point-to-Point Protocol (PPP) [1] provides a standard method for
transporting multi-protocol datagrams over point-to-point links. PPP
defines an extensible Link Control Protocol and a family of Network
Control Protocols (NCPs) for establishing and configuring different
network-layer protocols.
This document describes Microsoft's PPP CHAP dialect (MS-CHAP), which
extends the user authentication functionality provided on Windows
networks to remote workstations. MS-CHAP is closely derived from the
PPP Challenge Handshake Authentication Protocol described in RFC 1994
[2], which the reader should have at hand.
The algorithms used in the generation of various MS-CHAP protocol
fields are described in an appendix.
2. Introduction
Microsoft created MS-CHAP to authenticate remote Windows
workstations, providing the functionality to which LAN-based users
are accustomed while integrating the encryption and hashing
algorithms used on Windows networks.
Zorn & Cobb Informational [Page 1]
RFC 2433 Microsoft PPP CHAP Extensions Ocotober 1998
Where possible, MS-CHAP is consistent with standard CHAP. Briefly,
the differences between MS-CHAP and standard CHAP are:
* MS-CHAP is enabled by negotiating CHAP Algorithm 0x80 in LCP
option 3, Authentication Protocol.
* The MS-CHAP Response packet is in a format designed for
compatibility with Microsoft's Windows NT 3.5, 3.51 and 4.0, and
Windows95 networking products. The MS-CHAP format does not
require the authenticator to store a clear-text or reversibly
encrypted password.
* MS-CHAP provides authenticator-controlled authentication retry
and password changing mechanisms.
* MS-CHAP defines a set of reason-for-failure codes returned in
the Failure packet Message field.
3. Specification of Requirements
In this document, the key words "MAY", "MUST, "MUST NOT", "optional",
"recommended", "SHOULD", and "SHOULD NOT" are to be interpreted as
described in [2].
4. LCP Configuration
The LCP configuration for MS-CHAP is identical to that for standard
CHAP, except that the Algorithm field has value 0x80, rather than the
MD5 value 0x05. PPP implementations which do not support MS-CHAP,
but correctly implement LCP Config-Rej, should have no problem
dealing with this non-standard option.
5. Challenge Packet
The MS-CHAP Challenge packet is identical in format to the standard
CHAP Challenge packet.
MS-CHAP authenticators send an 8-octet challenge Value field. Peers
need not duplicate Microsoft's algorithm for selecting the 8-octet
value, but the standard guidelines on randomness [1,2,7] SHOULD be
observed.
Microsoft authenticators do not currently provide information in the
Name field. This may change in the future.
Zorn & Cobb Informational [Page 2]
RFC 2433 Microsoft PPP CHAP Extensions Ocotober 1998
6. Response Packet
The MS-CHAP Response packet is identical in format to the standard
CHAP Response packet. However, the Value field is sub-formatted
differently as follows:
24 octets: LAN Manager compatible challenge response
24 octets: Windows NT compatible challenge response
1 octet : "Use Windows NT compatible challenge response" flag
The LAN Manager compatible challenge response is an encoded function
of the password and the received challenge as output by the routine
LmChallengeResponse() (see section A.1, below). LAN Manager
passwords are limited to 14 case-insensitive OEM characters. Note
that use of the LAN Manager compatible challenge response has been
deprecated; peers SHOULD NOT generate it, and the sub-field SHOULD be
zero-filled. The algorithm used in the generation of the LAN Manager
compatible challenge response is described here for informational
purposes only.
The Windows NT compatible challenge response is an encoded function
of the password and the received challenge as output by the routine
Show full document text