pictcode / lib / Cake / Controller / Component / Auth / AbstractPasswordHasher.php @ 0b1b8047
履歴 | 表示 | アノテート | ダウンロード (1.931 KB)
1 | 635eef61 | spyder1211 | <?php
|
---|---|---|---|
2 | /**
|
||
3 | * CakePHP(tm) : Rapid Development Framework (http://cakephp.org)
|
||
4 | * Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
|
||
5 | *
|
||
6 | * Licensed under The MIT License
|
||
7 | * For full copyright and license information, please see the LICENSE.txt
|
||
8 | * Redistributions of files must retain the above copyright notice.
|
||
9 | *
|
||
10 | * @copyright Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
|
||
11 | * @link http://cakephp.org CakePHP(tm) Project
|
||
12 | * @since CakePHP(tm) v 2.4.0
|
||
13 | * @license http://www.opensource.org/licenses/mit-license.php MIT License
|
||
14 | */
|
||
15 | |||
16 | /**
|
||
17 | * Abstract password hashing class
|
||
18 | *
|
||
19 | * @package Cake.Controller.Component.Auth
|
||
20 | */
|
||
21 | abstract class AbstractPasswordHasher { |
||
22 | |||
23 | /**
|
||
24 | * Configurations for this object. Settings passed from authenticator class to
|
||
25 | * the constructor are merged with this property.
|
||
26 | *
|
||
27 | * @var array
|
||
28 | */
|
||
29 | protected $_config = array(); |
||
30 | |||
31 | /**
|
||
32 | * Constructor
|
||
33 | *
|
||
34 | * @param array $config Array of config.
|
||
35 | */
|
||
36 | public function __construct($config = array()) { |
||
37 | $this->config($config); |
||
38 | } |
||
39 | |||
40 | /**
|
||
41 | * Get/Set the config
|
||
42 | *
|
||
43 | * @param array $config Sets config, if null returns existing config
|
||
44 | * @return array Returns configs
|
||
45 | */
|
||
46 | public function config($config = null) { |
||
47 | if (is_array($config)) { |
||
48 | $this->_config = array_merge($this->_config, $config); |
||
49 | } |
||
50 | return $this->_config; |
||
51 | } |
||
52 | |||
53 | /**
|
||
54 | * Generates password hash.
|
||
55 | *
|
||
56 | * @param string|array $password Plain text password to hash or array of data
|
||
57 | * required to generate password hash.
|
||
58 | * @return string Password hash
|
||
59 | */
|
||
60 | abstract public function hash($password); |
||
61 | |||
62 | /**
|
||
63 | * Check hash. Generate hash from user provided password string or data array
|
||
64 | * and check against existing hash.
|
||
65 | *
|
||
66 | * @param string|array $password Plain text password to hash or data array.
|
||
67 | * @param string $hashedPassword Existing hashed password.
|
||
68 | * @return bool True if hashes match else false.
|
||
69 | */
|
||
70 | abstract public function check($password, $hashedPassword); |
||
71 | |||
72 | } |