问题标签 [passwords]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
7 回答
3408 浏览

mysql - ENCODE() 和 DECODE() 是在 MySQL 中处理应用程序密码字段的“最佳”方式吗?

我正在 LAMP(erl) 堆栈上进行开发,并且知道几种存储模糊密码的方法。鉴于 MySQL 4.1.1 和 Perl 5.8,我想听听那些认为他们有最佳实践的人的意见,以及它是最佳实践的原因。

我读过的一个选项,使用 MySQL ENCODE() 和 DECODE() 函数,对我来说听起来不错……你的想法?

0 投票
9 回答
136103 浏览

security - 散列密码和加密密码之间的区别

当前对该问题的最高投票者指出:

另一个不是安全问题的问题,尽管它与安全相关,但完全无法理解散列密码和加密密码之间的区别。最常见于程序员试图提供不安全的“提醒我的密码”功能的代码中。

这个区别到底是什么?我一直认为散列是一种加密形式。张贴者所指的不安全功能是什么?

0 投票
4 回答
5539 浏览

html - Firefox中的自动完成用户/密码

我已经在 HTML 中创建了一个登录提交表单,但由于某种原因,用户/密码自动完成功能不像我在 Firefox 中所期望的那样工作。

这就是 Firefox 中发生的情况:

  • 我提供用户名和密码,然后单击登录按钮
  • 如果我想记住密码,Firefox 会提示我。我按“记住”并登录工作。(我确保在运行此测试之前删除了所有记住的密码)
  • 我注销并返回登录页面。我希望预先填写用户名和密码字段,但事实并非如此(如果 FF 只为特定 URL 存储了一个用户/密码组合,那么它会自动在您的表单中预先填写此组合)

请注意,我不(想)使用 cookie。我在 FF 密码管理器中验证了用户名和密码实际上已被存储(它们是)

这是此页面的代码:

我的代码有什么问题?如何使用我的代码自动完成以在 FF 中工作?

自动补全确实适用于例如 gmail。每次我访问 gmail 的登录页面时,电子邮件和密码字段都已正确预填。我不使用“在这台计算机上记住我”复选框,因此不使用 cookie。

我会非常感谢您的帮助。碧玉


Firefox 中启用了更新自动完成功能。我想保持 IE 兼容。

0 投票
4 回答
2429 浏览

security - 如何防止密码被保存?

我注意到在银行网站等上,我的用户 ID 没有保存(它们不像其他常用输入的东西那样出现在下拉列表中)并且没有提示它记住您的密码。这是怎么做到的?站点如何通知浏览器它们处于“特殊”或例外状态?只是好奇。

0 投票
5 回答
5279 浏览

php - 在 MySQL 中使用什么函数来散列密码?

我的 mysql 数据库中有一个包含密码列的用户表。目前,我使用 MD5 算法对用户密码进行哈希处理以存储在数据库中。现在我喜欢认为我是一个有安全意识的人。我在阅读 MySQL 文档时注意到他们不推荐 MD5 或 SHA/SHA1 散列方法,但不提供替代方法。

在 MySQL 中散列密码的最佳方法是什么?在我当前的实现中,PHP 和 MySQL 原生支持的函数将是理想和必要的。

谢谢!

0 投票
5 回答
1501 浏览

passwords - 为什么银行密码如此脆弱?

出于兴趣,因为它激怒了我,我想知道这里的某人是否会碰巧为一家银行工作,或者知道这个问题的答案。

我使用了一些在线银行网站(英国和北美),它们普遍强制执行密码模式/[\w\d]{6,8}/有时,也许你可以使用下划线,但你永远不会得到/.{6,20}/你得到的(或多或少)几乎所有您会遇到的 !banking 网站。

有人告诉我这与存储空间有关,但数学似乎不支持这一点。假设银行为您的密码记录保留影子表,假设每个帐户平均 10 个,那么密码的允许长度加倍,并且基于 8char 8bit 现有格式的字符集的位宽加倍意味着额外的11* 2*8 = 每个账户 176 字节,因此每 1M 账户约 168Mb。假设它是一个支持 100M 帐户的巨型银行 - 仍然只有 16Gb!

不可能这么简单吧?我的数字肯定是离谱的。

或者这里的答案是,银行是银行,他们没有比他们笨拙的恐龙更好的理由。

有谁知道为什么我的 www.random.com/forum 的密码比我的银行密码强的技术原因?

0 投票
2 回答
1379 浏览

svn - Subversion 中的最大密码长度是多少?

如果我将用于存储库访问的 Subversion 用户名和密码存储在文件conf夹中的文本文件中,我可以使用的最大密码长度是多少?也就是说,下面文件中的secret可以保存多久?

0 投票
3 回答
511 浏览

php - 您对存储 AWS 身份验证数据有何建议?

场景:用 PHP 编写的 Web 应用程序使用Amazon Web 服务,并且必须随身携带访问密钥 ID 和秘密访问密钥才能正常运行。是否有安全存储这些数据的最新建议和/或 API?

我的想法是根据本地服务器变量创建的密钥将其对称加密到文件中。这样一来,如果有人通过 FTP 获取文件的副本、丢失带有文件复制的笔记本电脑等,那将是 [希望] 胡言乱语。我担心的是,熟练的攻击者可以上传他们自己的脚本来解密它。

这似乎是一种常见的情况,而且我从未获得过舒适的解决方案。显然我不能使用单向哈希,因为我需要原始数据来创建 HMAC 以发送到 AWS。非常欢迎提供相关 SO 问题的链接。

0 投票
16 回答
80977 浏览

security - “双重哈希”密码是否比仅哈希一次更安全?

在存储之前对密码进行两次哈希处理是否比仅对密码进行一次哈希处理更安全或更安全?

我正在谈论的是这样做:

而不仅仅是这个:

如果它不太安全,你能提供一个很好的解释(或一个链接)吗?

另外,使用的散列函数有什么不同吗?如果您混合 md5 和 sha1(例如)而不是重复相同的哈希函数,会有什么不同吗?

注意 1:当我说“双重哈希”时,我指的是对密码进行两次哈希处理,以使其更加模糊。我不是在谈论解决冲突的技术

注意 2:我知道我需要添加随机盐才能真正确保安全。问题是使用相同的算法进行两次散列是否有助于或损害散列。

0 投票
3 回答
2712 浏览

security - 在站点之间传递凭据

我在具有两个不同域的两个不同服务器上运行两个不同站点。一个站点正在运行 Joomla,另一个站点正在运行 Moodle。我已将 Moodle 服务器配置为基于 Joomla 站点上的用户表进行身份验证,因此我们拥有用户信息的权威来源。

我想做的是:在有人登录 Joomla 站点后,提供一个指向 Moodle 站点的链接,该站点将静默登录,有点假装单点登录解决方案。Joomla 中的密码是 MD5 的,每个都有自己的秘密盐。

如何解决这个问题的第一个想法是告诉 Moodle 密码是以纯文本形式存储的,然后通过隐藏的表单输入,在他们点击链接时发送加密的密码。除了明显的安全问题外,这还意味着如果他们尝试通过 Moodle 界面登录,他们需要输入一个巨大的 MD5 字符串,因为这就是 Moodle 认为他们的密码。

我一直在考虑更改 Moodle 中的身份验证模块,以便如果提交的密码符合某些标准(例如:它是 32 个十六进制字符),那么在与 Joomla 版本进行比较之前不要对其进行 MD5 处理——问题是任何人都可以(在发现加密密码后)然后使用它登录。我需要一些特殊的方式将加密密码从 Joomla 发送到 Moodle,并向 Moodle 发出信号以区别对待该登录请求。

有什么想法吗?