草庐IT

password

全部标签

php - PHP password_verify 真的安全吗?再加点盐?

我一直在阅读它的工作原理,它在减慢暴力破解尝试方面确实很酷,但它仍然让人感觉不安全。假设有人窃取了我的数据库数据,包括我所有的用户密码散列值,并且知道我使用password_hash来散列我的密码。他不能用他的字典和password_verify循环遍历我的密码来获得访问权限吗?在散列密码之前添加另一种盐是好的做法吗? 最佳答案 添加到@adeneo的回答中,bcrypt、pbkdf2、scrypt和现代密码哈希策略的要点是速度慢。是的,如果您从数据库(SQLi)中获得生成的哈希值,您可以尝试输入密码并尝试验证每个密码。但是,只是尝

php - 无法识别数据库 PHP MYSQLi 中的密码

我有一个注册表单,允许用户创建用户名和密码,然后将其存储在数据库中。10,'salt'=>mcrypt_create_iv(22,MCRYPT_DEV_URANDOM),];$email=$_POST['email'];$password=password_hash($_POST['password'],PASSWORD_BCRYPT,$options);$username=$_POST['username'];$query="INSERTINTOusers(username,email,password)VALUES(?,?,?)";$statement=$mysqli->prepa

javascript - 形成如何查找()电子邮件和密码输入

我有一个表单可以通过jQuery中的$.post()提交数据。PHP文件以这种格式返回响应:header('Content-type:javascript/json');echojson_encode(['state'=>true,'message'=>'SomeMessage']);exit;编码后看起来像这样并且工作正常:{state:true,message:'SomeMessage'}但是,我无法发送表单域。我尝试使用find()函数,但它在控制台中返回undefined。这是我的代码:$(document).ready(function(){varMember={login_

php - PHP 的 password_hash 如何生成盐?

您好,您可能知道最近引入了PHPpassword_hash内置在最新版本中。文档说:Ifomitted,arandomsaltwillbecreatedandthedefaultcostwillbeused.问题是用什么方法加盐?我很感兴趣,因为我想知道盐是否是随机创建的,以便在我存储我的散列密码时它们始终是唯一的。 最佳答案 盐是随机产生的。它们在统计上应该是唯一的。要了解如何操作,请查看theCsourcecode.在Windows上,它将尝试使用php_win32_get_random_bytes()生成盐:BYTE*iv_b

php - PHP 5.5 的新 password_hash 函数中随机生成的密码 salt 有什么用?

我刚刚阅读了PHP5.5中的新功能,它包括新的密码散列功能(http://www.php.net/manual/en/function.password-hash.php)。现在如果你看描述,它的默认操作是随机生成一个密码盐,如果你没有指定。但我看不出这有什么用。因为如果您正在对密码进行哈希处理以进行安全存储并且盐是随机的。然后,当您运行用户输入的密码字符串时,如果盐每次都不同,则每次生成的哈希值都会不同。因此,您将无法成功比较输入的有效密码与存储的密码哈希副本。那么这到底有什么用呢? 最佳答案 盐包含在哈希值中。'saltsalt

php - 在 PHP 5.4 中调用未定义函数 password_hash()

我正在尝试在我的网站中使用password_hash()函数,但出现错误Calltoundefinedfunctionpassword_hash().我检查了我的服务器详细信息在GoDaddy中,我当前的php版本是5.4。我该如何解决这个问题? 最佳答案 password_hash()在PHP5.4中不可用。这是PHP5.5中的一个新特性。在此期间,您可以使用thiscompatibilitypackreplacement.兼容包旁注:此库需要PHP>=5.3.7或向后移植了$2y修复程序的版本(例如RedHat提供的)。请注意,

php - 我们如何通过 Auth::check 在 laravel 4.2 中限制停用的用户

嗨,我已经使用laravel身份验证实现了laravel登录模块。我使用Auth::check对用户进行了身份验证,并在Auth::attempt方法中发送了用户名和密码。我在用户表中有状态列。如何限制Auth::check仅验证状态为1的用户? 最佳答案 只需将状态字段设为确认之一即可。你可以这样做:$credentials=array('username'=>$input['email'],'password'=>$input['password'],'status'=>1);if(Auth::attempt($credenti

php - 无法使用 password_verify($password, $hash)

所以我有一个注册页面和一个登录页面,注册页面工作得很好,但登录页面似乎不起作用,我似乎无法弄明白。我的数据库似乎可以正常工作,因为我能够将散列密码回显到登录页面上,这似乎与password_verify()注册页面(工作中)11];if($pass==$cPass){$stmt=$conn->prepare("INSERTINTOusers(username,pass,email)VALUES(?,?,?)");$stmt->bind_param("sss",$user,$h_p,$email);$user=$_POST['username'];$h_p=password_hash($

php - 无法获取 Laravel 注册表以使用哈希存储密码

Laravel可以正确存储用户名和电子邮件,但在我添加哈希函数时不会为密码字段保存任何内容。我的Controller代码:publicfunctionstore(){$data=Input::only(['username','email','password'=>Hash::make('password')]);$newUser=User::create($data);if($newUser){Auth::login($newUser);returnRedirect::route('profile');}returnRedirect::route('user.create')->wi

javascript - 获取 'sha512'密文的实际文本

所以我正在开发一个使用php、mysql和javascript的网站,以及使用代码“sha512”来加密成员的密码:$password=filter_input(INPUT_POST,'p',FILTER_SANITIZE_STRING);$random_salt=hash('sha512',uniqid(mt_rand(1,mt_getrandmax()),true));$password=hash('sha512',$password.$random_salt);p值来自:functionformhash(form){varpassword=randomString();varp=