草庐IT

locality-sensitive-hash

全部标签

php - password_hash 的盐存储在哪里?

根据(相对)新的PHP文档:password_hash函数使用随机盐(我们不应该担心..O_O),所以如果我理解正确,盐必须存储在某个地方,否则用户在注册到网站后将无法登录(不同的盐=>不同的哈希值。)函数文档没有说明与数据库交互的任何信息,并且由于我认为存储每个用户的数据只能通过数据库进行扩展,那么该函数到底在哪里存储随机盐?像session数据这样的txt文件? 最佳答案 让我们从其他人告诉你的例子中学习:$options=['cost'=>11,'salt'=>'abcdefghijklmnopqrstuv',];echopa

php - 间歇性 simplexml_load_file() : I/O warning on local Joomla site

我刚刚开始在本地主机上运行的joomla开发站点的所有页面上出现间歇性错误。完整的警告是:警告:simplexml_load_file():I/O警告:无法在/site/libraries/joomla/language/language中加载外部实体“/site/language/en-GB/en-GB.xml”。第1354行的php奇怪的是它是间歇性的,刷新几次通常会解决问题。是否存在可能导致此问题的代码问题或其他原因? 最佳答案 让我把它放在这里以防万一有人会用谷歌搜索答案,并且非线程安全libxml_disable_enti

PHP password_hash() password_verify() 最大密码长度?

我可以在PHP5.5password_hash()和password_verify()中使用的最大密码长度是多少? 最佳答案 好的,让我们来看看这个。函数确实有密码长度限制。就像PHP中的所有字符串一样,它被限制为2^31-1个字节。需要明确的是,PHP无法处理比这更大的任何事情(至少在今天)。所以功能本身是有限的。但是底层的加密算法呢。BCrypt仅限于处理密码的前72个字符。然而,这通常不是问题asexplainedinthisanswer.所以简而言之,是的它确实有一个有效的限制(它只会使用默认且唯一的算法“使用”前72个字符

php - 让我的网站更安全,我使用的 password_hash 是否正确?

这个问题在这里已经有了答案:SecurehashandsaltforPHPpasswords(14个答案)关闭7年前。我有一个非常小的网站,最近我一直在努力让它更安全,我过去常常以纯文本形式存储我的密码。我认为我做的是对的,但作为一个“业余”程序员,我想确定一下所以我问你们,专业人士当用户注册时,我执行:password_hash($their_password,PASSWORD_DEFAULT)并将其存储在用户表的“密码”列中。我使用PASSWORD_DEFAULT因为根据php.net这似乎是最好的。Notethatthisconstantisdesignedtochangeove

php - 如何在没有过滤器列表的情况下使用 Locale::acceptFromHttp?

locale_accept_from_http是ICUAPI的基本包装器uloc_acceptLanguageFromHTTP但是PHP/PECL实现似乎存在根本性缺陷,因为它使用系统的整套语言环境而不是将列表作为参数?例如,假设用户有HTTP_ACCEPT_LANGUAGE=zh-HK;q=0.2,fr,即用户阅读繁体中文或法语,更喜欢后者。例如,您有一个新闻网站,提供繁体中文和简体中文的文章。使用APILocale::acceptFromHttp只会返回fr。输出:string(2)"fr" 最佳答案 正确,PHP包装了ICU的

php - curl 导致 SSL : unable to get local issuer certificate

按照此答案在MacOSYosemite上安装HomebrewPHP5.5后steps,我发现我可以连接到外部SSL主机,这之前提示我“错误编号:56错误字符串:SSLRead()返回错误-9806”。此问题已得到修复。但现在,在我的日常工作中,我遇到了另一个与另一个主机有关的SSL问题:CanvasAPI。在终端上运行以下Curl(使用OSX原生curl)curl-v-H"Accept:application/json"-H"Content-type:application/json"-XGET\-d'{"userid":"mohit","password":"password"}'h

php - 如何启用 PHP Locale 类

我正在使用PHP5.4.18并尝试使用Locale对象。我尝试了以下调用:$locale=locale_accept_from_http($_SERVER['HTTP_ACCEPT_LANGUAGE']);$locale=Locale::acceptFromHttp($_SERVER['HTTP_ACCEPT_LANGUAGE']);我分别收到“调用未定义函数”和“ClassLocalenotfund”错误。我在某处发现需要启用php_intl扩展。我这样做了。我也看过语言环境手册(http://www.php.net/manual/en/class.locale.php),但没有提到

php - 什么密码强度被认为足以与 password_hash 函数一起使用?

据我了解,新PHPpasswordhashingextension最重要的功能之一(或一般的bcrypt)是算法的速度,它大大减慢了暴力攻击方法。但它仍然以一定的速度运行,这对于字典攻击和暴力破解弱密码来说肯定足够了,[据说]短于六个字母数字字符。所以我想知道,它为什么这么慢,尤其是-哪种密码强度被认为可以安全使用。“你能想象的那么强大”不是答案,因为密码强度始终是安全性和可用性之间的权衡——所以,我正在寻找可以被认为是安全的,甚至是面向future的最小强度。请注意,我是一个实践者-因此,基于具体数字的确定答案比冗长而空洞的理论推理和不确定的结论更可取。进一步澄清,假设最坏的情况:用

php - Laravel 中的 Bcrypt 与 Hash

我想创建一个函数或类似Cron的东西来执行一个链接(在Laravel中),带有类似密码的东西。我有两个解决方案。但是哪个更好用:选项1(哈希):选项2(加密):此代码已被广泛描述。更好用我的意思是更安全/更安全,或者那种恍惚中的东西。谢谢! 最佳答案 您的第二个选项不是bcrypt。Laravel的Crypt类使用AES加密。如前所述inthedocumentation:LaravelprovidesfacilitiesforstrongAESencryptionviatheMcryptPHPextension.据我所知,您无需能够

php - 使用 password_hash 时生成的哈希的最大长度?

我在用password_hash($password,PASSWORD_BCRYPT);加密密码以存储在数据库中。正如我所读,生成的哈希值没有长度限制,但我需要知道最大长度,以便我可以使用它来定义我的数据库中可以适合所有密码哈希值的字段(在最坏的情况下)。如果我将明文密码的长度限制为20个字符,password_hash()结果会是多长时间? 最佳答案 来自password_hashdocumentation:Thefollowingalgorithmsarecurrentlysupported:PASSWORD_DEFAULT-U