[ Index ]

PHP Cross Reference of Unnamed Project

title

Body

[close]

/lib/pear/Crypt/ -> CHAP.php (summary)

Classes for generating packets for various CHAP Protocols: CHAP-MD5: RFC1994 MS-CHAPv1: RFC2433 MS-CHAPv2: RFC2759

Author: Michael Bretterklieber <michael@bretterklieber.com>
Version: $Revision$
File Size: 475 lines (13 kb)
Included or required:0 times
Referenced: 0 times
Includes or requires: 0 files

Defines 4 classes

Crypt_CHAP:: (4 methods):
  __construct()
  Crypt_CHAP()
  generateChallenge()
  challengeResponse()

Crypt_CHAP_MD5:: (1 method):
  challengeResponse()

Crypt_CHAP_MSv1:: (12 methods):
  __construct()
  Crypt_CHAP_MSv1()
  ntPasswordHash()
  str2unicode()
  challengeResponse()
  ntChallengeResponse()
  lmChallengeResponse()
  _challengeResponse()
  lmPasswordHash()
  _desHash()
  _desAddParity()
  response()

Crypt_CHAP_MSv2:: (4 methods):
  __construct()
  ntPasswordHashHash()
  challengeHash()
  challengeResponse()


Class: Crypt_CHAP  - X-Ref

class Crypt_CHAP

Abstract base class for CHAP

__construct()   X-Ref
Constructor

Generates a random challenge
return: void

Crypt_CHAP()   X-Ref
No description

generateChallenge($varname = 'challenge', $size = 8)   X-Ref
Generates a random binary challenge

param: string  $varname  Name of the property
param: integer $size     Size of the challenge in Bytes
return: void

challengeResponse()   X-Ref
Generates the response. Overwrite this.

return: void

Class: Crypt_CHAP_MD5  - X-Ref

class Crypt_CHAP_MD5

Generate CHAP-MD5 Packets

challengeResponse()   X-Ref
Generates the response.

CHAP-MD5 uses MD5-Hash for generating the response. The Hash consists
of the chapid, the plaintext password and the challenge.

return: string

Class: Crypt_CHAP_MSv1  - X-Ref

class Crypt_CHAP_MSv1

Generate MS-CHAPv1 Packets. MS-CHAP doesen't use the plaintext password, it uses the
NT-HASH wich is stored in the SAM-Database or in the smbpasswd, if you are using samba.
The NT-HASH is MD4(str2unicode(plaintextpass)).
You need the hash extension for this class.

__construct()   X-Ref
Constructor

Loads the hash extension
return: void

Crypt_CHAP_MSv1()   X-Ref
No description

ntPasswordHash($password = null)   X-Ref
Generates the NT-HASH from the given plaintext password.

return: string

str2unicode($str)   X-Ref
Converts ascii to unicode.

return: string

challengeResponse()   X-Ref
Generates the NT-Response.

return: string

ntChallengeResponse()   X-Ref
Generates the NT-Response.

return: string

lmChallengeResponse()   X-Ref
Generates the LAN-Manager-Response.

return: string

_challengeResponse($lm = false)   X-Ref
Generates the response.

Generates the response using DES.

param: bool  $lm  wether generating LAN-Manager-Response
return: string

lmPasswordHash($password = null)   X-Ref
Generates the LAN-Manager-HASH from the given plaintext password.

return: string

_desHash($plain)   X-Ref
Generates an irreversible HASH.

return: string

_desAddParity($key)   X-Ref
Adds the parity bit to the given DES key.

param: string  $key 7-Bytes Key without parity
return: string

response($lm = false)   X-Ref
Generates the response-packet.

param: bool  $lm  wether including LAN-Manager-Response
return: string

Class: Crypt_CHAP_MSv2  - X-Ref

class Crypt_CHAP_MSv2

Generate MS-CHAPv2 Packets. This version of MS-CHAP uses a 16 Bytes authenticator
challenge and a 16 Bytes peer Challenge. LAN-Manager responses no longer exists
in this version. The challenge is already a SHA1 challenge hash of both challenges
and of the username.

__construct()   X-Ref
Constructor

Generates the 16 Bytes peer and authentication challenge
return: void

ntPasswordHashHash($nthash)   X-Ref
Generates a hash from the NT-HASH.

param: string  $nthash The NT-HASH
return: string

challengeHash()   X-Ref
Generates the challenge hash from the peer and the authenticator challenge and
the username. SHA1 is used for this, but only the first 8 Bytes are used.

return: string

challengeResponse()   X-Ref
Generates the response.

return: string



Generated: Thu Aug 11 10:00:09 2016 Cross-referenced by PHPXref 0.7.1