可以安全地将未加密的密码存储到HTML5客户端数据库中吗?

问题描述

| 我假设答案是将密码存储在客户端的WEBsql数据库中,不加密是不安全的,但是我想无论如何我都会问,我要问的原因是我正在尝试将DropBox上传工具添加到网络应用程序,但是我需要使用纯文本格式的密码才能访问用户的保管箱帐户,我当然可以提出一些foobar方式来对客户端的密码进行哈希处理,并在需要时取消对它们的哈希处理,但是如果我愿意能够对它们进行散列处理,那么任何人也都可以这样做,如果是这种情况,有人可以解决吗?     

解决方法

        没有100%安全的东西。安全的目标是足够安全。您确定什么风险以及您愿意经历的痛苦程度以及找到最佳解决方案的程度。 如果必须从密码返回纯文本,则别无选择,只能使用加密而不是哈希。当然,无论用户输入还是存储密钥,您都必须将密钥放在某个地方,这样密钥就很容易受到攻击。 由于这是在客户端计算机上,因此可能容易受到网络钓鱼攻击,社会工程攻击,特洛伊木马/键盘记录程序/病毒攻击,物理安全风险等。 存储明文是一个坏主意,但除此之外,您还必须确定用户将遭受的痛苦程度。 如果成本值得,PKI令牌是一个不错的选择。否则,大多数语言都有许多可以有效使用的加密算法。     ,        不,存储纯文本密码和期限是不安全的。 假设您的用户使用密码登录到您的Web应用程序,为什么不使用该密码来加密其(带盐)的保管箱密码?从安全的角度来看,这还不令人满意,但是总比没有好。 在同一段落中使用单词“ foobar”和“ dropbox”是一个明确的信号,表明您正在寻求使用自行开发的解决方案的麻烦。您要让用户信任他们的保管箱数据的安全性,这意味着您要承担很多责任。您还要求用户违反安全性的基本法则之一:切勿将您的安全性信任第三方。 我可以提供的最佳建议是将所有与安全性相关的任务委托给专家,并由另一位专家审核该代码。