我应该如何安全地存储密码并在 chrome 扩展中使用 http auth
Posted
技术标签:
【中文标题】我应该如何安全地存储密码并在 chrome 扩展中使用 http auth【英文标题】:How should I securely store passwords and use http auth in a chrome extension 【发布时间】:2010-12-29 23:04:41 【问题描述】:我正在制作一个需要从安全服务器获取 xml 文件的 chrome 扩展。
我目前正在使用 XMLHttpRequest() 来调用服务器
https://username:password@mydomain.com
它返回一个我可以解析和显示的 xml 对象。我希望这个扩展不仅可以用于我的爱好,因此它需要一个选项页面来设置和存储用户名和密码。
我应该如何将用户密码存储在 chrome 中以确保安全? chrome 对每个扩展都有一个 localStorage 全局,允许扩展作者存储数据,但它以纯文本形式存储。它不允许扩展访问“记住我的密码”存储(有充分的理由)。
是否有更安全的方式来进行 http 身份验证?我目前的处理方式需要在每次调用函数时以纯文本形式在 url 中传递用户名/密码,即使身份验证会话尚未过期。
【问题讨论】:
【参考方案1】:请求密钥的问题在于,它意味着您每次启动时都必须提示(如果您存储密钥,您会遇到同样的问题)。如果您要保护的内容特别敏感,这可能是一个不错的折衷方案。
一般来说,Chrome 采用信任操作系统来保护存储这些数据的用户个人资料的理念,因此,如果您使用本地存储来存储密码,这与 Chrome 目前所做的密码自动填充、浏览器历史记录没有什么不同等。
【讨论】:
第二个声明的来源?【参考方案2】:一个想法:向用户索要一个密钥,您可以使用该密钥在将值放入 localStorage 之前对它们进行对称加密。您还可以根据他的机器/浏览器/等的某些独特方面为每个客户生成一个唯一的密钥。
【讨论】:
这个主意不错,有什么推荐的javascript加密库吗?以上是关于我应该如何安全地存储密码并在 chrome 扩展中使用 http auth的主要内容,如果未能解决你的问题,请参考以下文章