草庐IT

Passwords

全部标签

php哈希密码创建

我想使用php创建一个商业网站,我想确保我拥有的用于用户散列密码的代码足够强大,可以避免暴力攻击。请注意,我的服务器及其php版本不支持blowfish,因此我正在尝试找出一种散列密码的合适方法。$pw="12341234";$salt='randomchars';$initial=sha1($pw);$hashed=md5($salt.$initial);还有什么我应该考虑的吗?任何想法将不胜感激! 最佳答案 你想要http://www.openwall.com/phpass/ 关于p

php - 至少包含 8 个字符和至少 1 个非字母数字字符的密码的正则表达式

如果用户更改密码,我正在尝试在PHP中进行检查,他们的新密码必须为8个或更多字符,并且至少有1个非字母数字密码。我应该如何检查它以及正则表达式是什么?检查长度是简单的部分strlen>=8。我的问题是正则表达式。即使经过多年的计算机科学学习,我对正则表达式真的一无所知。谢谢 最佳答案 尝试这样的事情来检查他们是否使用了非字母数字字符:if(!preg_match('/[^A-Za-z0-9]+/',$password)||strlen($password)如果$password不包含至少一个不在列表中的字符(字母数字字符)。

PHP password_hash 检查两个哈希值

如果我有两个使用password_hash创建的密码哈希功能,我如何判断它们是否来自相同的基本密码?我知道它每次都使用不同的盐。我没有纯文本。例如:$2y$10$M6CnjqaxuUKNhg84T8NpLeylkUrvP1pzoZNhBWfpSzP2zJneuS1re和$2y$10$ZSlQNIbsLWfj7JLCSkvFLeS/adH.KnGZTgA1BcvyPXl7BEn7GhREO都来自散列test.如果将这两个散列作为参数,我该如何编写一个返回true的函数?这可能吗?所以:会输出:TRUEFALSE 最佳答案 不可以,除非

php - 我应该在哈希后加密我的密码吗?如果是这样如何正确地做到这一点?

我试图更好地了解散列和加密,但是我偶然发现了我在Google中似乎找不到的问题,因为Google一直提供我已经阅读过的散列和加密的基本区别。更多的是,很多人在StackOverflow中提问,他们不知道加密和散列之间的区别,这让SO的搜索引擎排名靠前。这没有回答我的问题,也没有帮助我。所以我想确定一些关于散列密码和加密密码的事情。现在假设我想保护一个新注册用户..我需要先过滤它。(因无关而跳过)在获得“安全”形式的密码后,我对其进行哈希处理。$安全密码;//已经填入安全密码。$hash=password_hash($safePassword,PASSWORD_ARGON2I);然后将其

php - 生成注册激活 key 时如何防止冲突?

我正在研究一个大项目的注册系统。注册成功后,服务器会生成一些激活key,将其添加到用户行并通过电子邮件发送给用户。为此目的使用一些密码生成器类。问题是(我知道这听起来很抽象,但我只是想知道),如何避免重复生成pass?我的意思是,将来生成器是否有可能创建数据库表中已经存在的激活key?我应该在key生成后检查重复项吗? 最佳答案 我建议使用Text_Passwordpackage来自梨。不要试图重新发明这个轮子。不要强制密码严格唯一。强制执行实际上不太安全。考虑一下,如果我尝试将密码设置为xyzzy而网站告诉我不能,这意味着现在我知

php - 如何用 PHP 密码保护上传的 PDF

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭7年前。Improvethisquestion我有一个网络应用程序,用户可以在其中上传PDF文档。是否有可用于密码保护PDF文件的PHP库?我需要库来保留原始PDF的所有方面(即大小、字体、分辨率等)。

php - 将 crypt() salt 存储在数据库中以进行密码比较是否安全

请原谅我,我对密码安全和加密完全陌生......我在比较使用php的crypt()函数(使用blowfishhasing方法)加密的存储密码与用户输入时遇到问题。我发现可以比较密码的一种方法是存储加密期间使用的盐,然后加密用户输入并将其与存储的密码进行比较。这是一种安全的做事方式吗?还是有更好(更安全)的方法?谢谢。 最佳答案 PHP生成散列的函数会将盐包含在生成的散列值中。所以如果你存储这个散列值,你就已经存储了盐。验证函数只需提取此盐并再次使用它进行验证即可。这种方法是安全的,盐不是secret。PHP5.5版将内置对BCryp

php - 更新用户时对 Laravel 空密码进行哈希处理

当我更新我的模型绑定(bind)表单时$user->update(Input::all())我的密码字段被重新哈希处理,即使它是空的。我已将我的User.php类设置为自动散列该字段,但不应跳过它,因为该字段为空吗? 最佳答案 在这种情况下你可以使用:Input::except('password')所以在你的Controller中你可以这样做:if(trim(Input::get('password'))==''){$data=Input::except('password');}else{$data=Input::all();}

php - 生成没有这些字符的随 secret 码 "l1o0"

我需要根据条件生成随secret码:允许使用除“l1o0”以外的所有字符长度为8到12个字符我试过的代码:functiongenerateRandomPassword(){//Initializetherandompassword$password='';//Initializearandomdesiredlength$desired_length=rand(8,12);for($length=0;$length如何避免这4个字符=>"l1o0"?原因:这4个字符有时会使用户感到困惑。谢谢! 最佳答案 请不要使用当前提供的任何其他答

php - 使用 crypt(),我的应用程序如何验证随机生成盐的密码?

我一直在查看PHP'scryptfunction和Stackoverflow上的一些questions,我正在尝试找出加盐和散列密码。我在PHP社区页面上找到了这个:类似的东西与:这是另一个question的摘录:However,thePHPcrypt()functioncanuseavarietyofdifferenthashestocomputethehash.Whenyouprefixyoursaltwith"$1$"yougetahashwithanMD5.Whenyouprefixwith$2$yougetacryptwithblowfish,whichismoresecur