1<?php 2/** 3* 4* This file is part of the phpBB Forum Software package. 5* 6* @copyright (c) phpBB Limited <https://www.phpbb.com> 7* @license GNU General Public License, version 2 (GPL-2.0) 8* 9* For full copyright and license information, please see 10* the docs/CREDITS.txt file. 11* 12*/ 13 14namespace phpbb\passwords\driver; 15 16class sha1_smf extends base 17{ 18 const PREFIX = '$smf$'; 19 20 /** 21 * {@inheritdoc} 22 */ 23 public function get_prefix() 24 { 25 return self::PREFIX; 26 } 27 28 /** 29 * {@inheritdoc} 30 */ 31 public function is_legacy() 32 { 33 return true; 34 } 35 36 /** 37 * {@inheritdoc} 38 */ 39 public function hash($password, $user_row = '') 40 { 41 return (isset($user_row['login_name'])) ? sha1(strtolower($user_row['login_name']) . $password) : false; 42 } 43 44 /** 45 * {@inheritdoc} 46 */ 47 public function check($password, $hash, $user_row = array()) 48 { 49 return (strlen($hash) == 40) ? $this->helper->string_compare($hash, $this->hash($password, $user_row)) : false; 50 } 51} 52