2 * WPA Supplicant / shared MSCHAPV2 helper functions / RFC 2433 / RFC 2759
3 * Copyright (c) 2004-2005, Jouni Malinen <j@w1.fi>
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License version 2 as
7 * published by the Free Software Foundation.
9 * Alternatively, this software may be distributed under the terms of BSD
12 * See README and COPYING for more details.
18 void generate_nt_response(const u8
*auth_challenge
, const u8
*peer_challenge
,
19 const u8
*username
, size_t username_len
,
20 const u8
*password
, size_t password_len
,
22 void generate_nt_response_pwhash(const u8
*auth_challenge
,
23 const u8
*peer_challenge
,
24 const u8
*username
, size_t username_len
,
25 const u8
*password_hash
,
27 void generate_authenticator_response(const u8
*password
, size_t password_len
,
28 const u8
*peer_challenge
,
29 const u8
*auth_challenge
,
30 const u8
*username
, size_t username_len
,
31 const u8
*nt_response
, u8
*response
);
32 void generate_authenticator_response_pwhash(
33 const u8
*password_hash
,
34 const u8
*peer_challenge
, const u8
*auth_challenge
,
35 const u8
*username
, size_t username_len
,
36 const u8
*nt_response
, u8
*response
);
37 void nt_challenge_response(const u8
*challenge
, const u8
*password
,
38 size_t password_len
, u8
*response
);
40 void challenge_response(const u8
*challenge
, const u8
*password_hash
,
42 void nt_password_hash(const u8
*password
, size_t password_len
,
44 void hash_nt_password_hash(const u8
*password_hash
, u8
*password_hash_hash
);
45 void get_master_key(const u8
*password_hash_hash
, const u8
*nt_response
,
47 void get_asymetric_start_key(const u8
*master_key
, u8
*session_key
,
48 size_t session_key_len
, int is_send
,
50 void new_password_encrypted_with_old_nt_password_hash(
51 const u8
*new_password
, size_t new_password_len
,
52 const u8
*old_password
, size_t old_password_len
,
53 u8
*encrypted_pw_block
);
54 void old_nt_password_hash_encrypted_with_new_nt_password_hash(
55 const u8
*new_password
, size_t new_password_len
,
56 const u8
*old_password
, size_t old_password_len
,
57 u8
*encrypted_password_hash
);
59 #endif /* MS_FUNCS_H */