为什么其他敏感数据不显示时,密码框总是空白?

信息安全 密码
2021-08-30 04:39:03

据我所知,密码框和 PIN 码总是以某种方式隐藏起来,以防止人们在您输入密码时偷看您的肩膀。但是,我在 Web 表单中输入的其他重要信息(信用卡号、社会保险号等)我也想保护以防被套牢。

作为一个具体的例子,在 Steam 或 Amazon 中输入您的登录密码会被正确地屏蔽,但在购买时输入您的信用卡号会显示为纯文本。直觉上,感觉就像您想要空白任何可能被盗的东西,包括信用卡信息。

有什么特别的原因为什么通常只隐藏密码而没有其他敏感数据?

4个回答

我不认为这是关于秘密信息与敏感信息的关系,例如“秘密信息被掩盖而敏感信息不被掩盖”。(区别是有问题的;许多秘密也需要共享)。

我认为 cc 和 ssn 信息没有被空白有几个原因。它们不是硬事实,但仍然有一些:

  1. 做其他人都在做的事情,这并不让用户感到惊讶。密码早在网络表单出现之前就已经出现并且已经被屏蔽了。因此,当它们用于登录表单时,它们也被屏蔽了。当在线业务和管理出现时,现有技术(纸质表格)要求不加掩饰地输入敏感信息(显然),因此 Web 表格做出了同样的选择。

  2. 如果您没有看到您输入的内容,则很容易出错并输入错误的数字。在密码错误的情况下,这只是有点烦人,您会得到即时反馈;在其他错误敏感数据的情况下,这可能会产生尚不清楚的进一步后果(例如,由于 SSN 错误或付款未通过而向政府办公室提出的请求被拒绝 - 尽管在 cc 和 ssn 情况下, 这通常是通过查看校验和是否正确并在不正确时提供立即反馈来对冲的)

  3. 许多人不知道自己的cc号码是从记忆中复制出来的,而是从实际的信用卡中复制下来的。所以无论如何,旁观者都可以看到这个数字。空白输入字段对保护客户端的号码没有多大帮助,因此不值得由 2 引起的额外困难。

  4. 影响 - 被盗的抄送号码不一定与被盗密码具有相同的影响,特别是如果您认为通过回头看窃取的信息很可能会被认识您的人(同事、家人、同学)窃取等)并出于非常具体的原因想要您的密码,这会产生个人后果。OTOH,即使他们对您的 cc 号码感兴趣,您也不必承担经济损失,因为 cc 公司可能会覆盖它。出于同样的原因,您不介意让服务员或店员看到您的信用卡,即使他可以复制并卖给其他人……

不过,第 4 点可能不适用于其他类型的敏感信息。

这是因为我们在这里处理两种类型的信息:敏感信息秘密信息

  • 敏感信息是从安全/隐私角度来看具有一定意义的数据,如果落入坏人之手肯定会导致一些问题。但是,您的 SSN、信用卡号、照片等数据并不是秘密:第三方需要访问这些数据,无论是处理您下的订单还是确认您的身份。

  • 另一方面,秘密信息是任何人都不需要出于任何原因访问的信息。没有人需要您的密码来做任何事情,因此该字段通常被屏蔽。

理想情况下,您希望所有内容都被屏蔽,但如果您这样做,则需要考虑可用性问题。归根结底,您总是不得不妥协,而使用这两个类别作为过滤器只是一种常见的方法。

数据安全方面存在许多持续存在的问题。这是其中之一。

TL;DR:责备信用卡行业。

根本原因是错误的概念,即通过提供您的身份,您也授予您的授权这是建立信用卡的可怕基础,也是为什么情况像今天这样糟糕的原因。

你的身份(信用卡号、SSN 等)永远不需要保密,因为你是谁不是秘密您不能对在线商家保密,因为他们必须向您运送您购买的东西。您不能对任何使用信用卡的商家保密,因为商家希望您的银行给他们钱。你永远无法对税务人员保密。而且你不想对你的健康提供者保密,他们需要你的病史来治疗你的问题。

当信用被发明时,这不是一个大问题。人们相互认识,双方在交易中相互信任。但是该系统非常容易被滥用,以至于欺诈行为如滚雪球般失控。

信用卡交易非常有利可图。为了不让人们害怕使用他们不安全的信用卡,支付卡行业 (PCI) 成功地将责任转移到商家身上,称“他们没有保证您的信用卡号码安全”,同时否认了整个系统建立在有缺陷的信任前提之上。(我将所有责任归咎于信用卡行业,因为他们为了保护他们的利润而使这种安全混乱长期存在。)

解决方案是将您的身份与您的授权分开。如果身份在未经授权的情况下一文不值,人们不必害怕泄露自己的身份。

但是,当存在不受信任的中间人的可能性时,您如何授予授权?有一个坏方法和一个好方法。不好的方法是密码。通过证明您知道一个秘密,您可以授权使用您的身份。但如今,普通密码与普通信用卡号码一样存在问题。如果您将您的秘密告诉商人,然后商人将其传递给银行,那么该链条上任何地方的中间人都可以复制您的秘密并伪造您的授权。

安全地授予您授权的唯一好方法是使用质询-响应。这解决了整个问题,除了我们人类无法在我们的头脑中进行有效的挑战响应。芯片卡和 EMV 协议的引入已经很好地克服了这一问题。该卡完成了接受挑战和产生响应的所有艰苦工作。为了增加安全性,可以将卡设计为在没有 PIN 的情况下不生成有效响应。

在这个玫瑰色的世界中,您不仅不再需要保护信用卡号码,也不需要保护响应,因为它是挑战所独有的。

有一天,我们可能会到达那里。但目前,EMV 仍然不完美。因为它只能使用小金触点进行通信(有时是射频),而手机和计算机没有与芯片卡通信的通用能力,所以没有很好的方法使用 EMV 在网络浏览器上授权交易或通过电话。(一些欧洲银行正在使用袖珍芯片阅读器,但这些设备很笨拙,需要用户执行额外的步骤,即输入一堆数字作为挑战并输入他们的响应。)因此,目前,网络交易是仍然不安全地依赖静态 CVV 号码,这相当于密码。

这也不能解决任何非信用问题。访问医疗记录、网站和其他所有需要授权的东西都有同样的问题,需要一个好的解决方案。有许多像 OAuth 这样的中途解决方案,但正如 Yahoo! 的违规行为所表明的那样,它们并不是好的解决方案。无论出现什么解决方案,它们都将在标准委员会中被公司争相争夺利润。想要控制和获得后门访问的竞争政府;想要构建基础设施等的技术公司。已成定局的是,妥协不会既安全又互操作。

一旦解决了这些问题,并将类似的解决方案应用于医疗保健、网站身份等,我们可能会看到被屏蔽的密码框的终结。我给它至少 50 年才能到达那里,如果有的话。

尽管 User1301428 的回答很好地解释了密码和其他类型的敏感数据之间的区别,但还有一个技术原因:HTML 输入标签(以及其他平台中的任何等价物)。

自从 Internet Explorer 2(早在 1995 年,以及其他所有浏览器的第一个版本)开始,不起眼的输入标签就支持type="password"了,几乎每个浏览器都会屏蔽文本。从头开始重新创建该标签行为的所有内容,因为原因通常也会模仿该行为。

但是没有“信用卡”或“ssn”类型。因此,虽然开发人员将其作为网络(或其他)平台的一部分免费获得,但他们必须为他们使用密码类型(违反现在普遍的期望,即有多个输入框来分解数字)或实现它手动获取其他数据。然后,当您看不到数字时,正确输入一个 9-16 位数字的整个业务......是的。