xref: /PHP-7.2/ext/standard/php_password.h (revision eab0079c)
1 /*
2    +----------------------------------------------------------------------+
3    | PHP Version 7                                                        |
4    +----------------------------------------------------------------------+
5    | Copyright (c) 1997-2018 The PHP Group                                |
6    +----------------------------------------------------------------------+
7    | This source file is subject to version 3.01 of the PHP license,      |
8    | that is bundled with this package in the file LICENSE, and is        |
9    | available through the world-wide-web at the following url:           |
10    | http://www.php.net/license/3_01.txt                                  |
11    | If you did not receive a copy of the PHP license and are unable to   |
12    | obtain it through the world-wide-web, please send a note to          |
13    | license@php.net so we can mail you a copy immediately.               |
14    +----------------------------------------------------------------------+
15    | Authors: Anthony Ferrara <ircmaxell@php.net>                         |
16    |          Charles R. Portwood II <charlesportwoodii@erianna.com>      |
17    +----------------------------------------------------------------------+
18 */
19 
20 /* $Id$ */
21 
22 #ifndef PHP_PASSWORD_H
23 #define PHP_PASSWORD_H
24 
25 PHP_FUNCTION(password_hash);
26 PHP_FUNCTION(password_verify);
27 PHP_FUNCTION(password_needs_rehash);
28 PHP_FUNCTION(password_get_info);
29 
30 PHP_MINIT_FUNCTION(password);
31 
32 #define PHP_PASSWORD_DEFAULT    PHP_PASSWORD_BCRYPT
33 #define PHP_PASSWORD_BCRYPT_COST 10
34 
35 #if HAVE_ARGON2LIB
36 #define PHP_PASSWORD_ARGON2_MEMORY_COST (64 << 10)
37 #define PHP_PASSWORD_ARGON2_TIME_COST 4
38 #define PHP_PASSWORD_ARGON2_THREADS 1
39 #endif
40 
41 typedef enum {
42     PHP_PASSWORD_UNKNOWN,
43     PHP_PASSWORD_BCRYPT,
44 #if HAVE_ARGON2LIB
45     PHP_PASSWORD_ARGON2I,
46 #endif
47 } php_password_algo;
48 
49 #endif
50 
51 
52 /*
53  * Local variables:
54  * tab-width: 4
55  * c-basic-offset: 4
56  * End:
57  */
58