我不确定这是否是所有银行机构的标准做法,但我收到的几乎所有银行都会检查发行人的帐号(有些甚至是账户名称)。这些信息不被视为机密吗?如果不是那么忽略这个问题。
如果是,那么我想知道为什么银行公然在支票中公开发行人的帐号/名称?如果他们在您将发行的支票中打印之前至少对帐户名称和号码进行哈希处理,这会是一个好习惯吗?
我不确定这是否是所有银行机构的标准做法,但我收到的几乎所有银行都会检查发行人的帐号(有些甚至是账户名称)。这些信息不被视为机密吗?如果不是那么忽略这个问题。
如果是,那么我想知道为什么银行公然在支票中公开发行人的帐号/名称?如果他们在您将发行的支票中打印之前至少对帐户名称和号码进行哈希处理,这会是一个好习惯吗?
打算再试一次,尝试解决许多优秀的评论......
支票是指示银行从 Alice 的账户中取钱并交给 Bob 的指令。为了采取行动,银行需要知道 Alice 的账户详细信息;当它到达清算时,它们必须以某种形式写在支票上。
爱丽丝支票簿中的一张预印支票恰好上面已经写有她的帐号,纯粹是为了方便,以人类和机器可读的形式。
@IMB 首先询问这是否是一个漏洞,因为如果 Eve 拿到一张支票,她可以从中读取帐户详细信息并将其用于攻击。答案是肯定的,这是一个漏洞。
然后@IMB 询问散列帐户详细信息是否是一个很好的控制。我怀疑它们实际上是指加密,而不是散列,因为加密散列是一个相当具体的技术术语,在这里并不完全适用,但你明白了。答案也是肯定的,如果仔细完成,加密帐号(添加合适的随机数)将在很大程度上阻止 Eve 使用帐户信息。
最后@IMB 问银行为什么不这样做呢?好吧,与每个安全控制一样,您必须根据故障的影响来衡量使用它的成本,以便决定是否应该实施它。
我认为主要成本是人类无法再阅读整张支票。在当今计算无处不在的时代,这听起来不像是个问题,但银行保守且过时,他们特别喜欢人工审计流程。他们喜欢经理能够每天随机抽取一张支票并仔细检查它是如何处理的。他们喜欢能够拿出一张实物纸,向顾客挥动,然后说“不,我们没有犯错”。
额外的成本是它增加了支票清算过程的开销(客户已经讨厌这需要多长时间),如果支票的机器可读部分损坏,您将不再有备份,我想您可能会遇到监管困难关于支票的法律定义。
另一方面,风险并不大,因为银行还有其他控制措施。他们在允许人们取款之前对他们进行身份验证,并且需要的不仅仅是帐号来轻松取款。他们使用各种技术方法来阻止 Eve 打印带有 Alice 详细信息的支票。他们有保险来弥补任何损失。他们监控可疑交易的帐户活动。
最后要考虑的一件事:无论如何,Alice 必须将她的帐户详细信息告诉很多人:她的雇主(因此她得到报酬)、税务人员、自来水公司(用于直接借记)等等。她必须将其嵌入她的借记卡中。银行必须将其打印在她的对帐单上……所以 Eve 有许多其他方法来获取这些信息。
最后,银行权衡了成本和风险,得出的结论是不值得——尤其是考虑到支票使用率的下降。上次我试图用支票在商店里买东西时,他们不得不找经理,因为除了电影之外,没有一个销售助理见过这样的东西。
是的。 在支票上打印路线和帐号确实会带来一些风险,尽管这可能是可以接受的风险:
一般来说,在实践中,路由和帐号不足以从您的帐户中窃取资金,因为任何盗窃企图都可能被抓住并被撤销。
也就是说,该系统依赖于威慑,而不是预防。知道您银行帐户的路由和帐号的人可能会在未经您授权的情况下从您的帐户中提取资金。他们可能会被抓住,未经授权的交易可能会被撤销,但这是一个安全风险。
为了证明这一点,请考虑一些商家允许您使用“电子支票”通过电话付款的事实。如果你从未使用过,它的工作原理是这样的:你打电话给他们,告诉他们你的支票账户的路由代码和帐号,告诉他们你想要支付的金额,然后他们基本上会创建一个“伪造”检查此信息并获得报酬。(请理解它实际上不是伪造的,因为它是在您的授权下完成的。)它在您的银行帐户对帐单上显示为电子提款或支票付款。这怎么合法,你可能想知道?这是合法的,因为它是在您同意的情况下完成的。但这不是重点。关键是实现这一点所需的唯一信息是路由代码和帐号。如果一个诚实的商人可以做到这一点,那么一个不诚实的商人也可以。以电子和自动化方式执行此操作的人员可能会受到限制;未经您的授权这样做的人可能会被抓到,如果他们对一群人这样做并且受害者向他们的银行投诉;简而言之,威慑在实践中可能相当有效;但没有什么可以绝对阻止它。令人遗憾的是,支票清算基础设施具有某些固有的漏洞。威慑在实践中可能相当有效;但没有什么可以绝对阻止它。令人遗憾的是,支票清算基础设施具有某些固有的漏洞。威慑在实践中可能相当有效;但没有什么可以绝对阻止它。令人遗憾的是,支票清算基础设施具有某些固有的漏洞。
第二个风险是知道您的支票账户帐号的人可能会知道您账户中的余额。请参阅我对如何发生这种情况的解释(简短版本:它涉及利用商家支票验证系统,这些系统由银行提供,并且在设计上不安全)。
这些风险是当前检查系统所固有的。您对此无能为力。 如果您足够关心,您可以关闭保密漏洞,但您无法解决其他风险。
作为一般的经验法则,最好不要将您的银行帐号分享给不需要它的任何人(例如,接收您的付款)。
所有这一切都在 Personal Finance and Money Stack Exchange 网站上的以下问题中详细讨论:我的支票上的账户信息不能被轻易用于欺诈吗?. 另请参阅如果有人知道我的 IBAN 和个人详细信息,他们可以从我的银行账户中窃取资金吗?如果有人知道您的路由和帐号,请在本网站上详细说明如何从您的帐户中提取资金。尤其是Jeremy Clark 的案例。
另一种回答方式:
检查帐号和信用卡号码是一种古老的做事方式,两者都是在互联网、计算机和自动汇票服务普及之前发明的。这两种方法都使用您发送到任何地方的可重复使用的密码。(好的,它是一个帐号,但它有效)
正确的解决方案是用(最好是手持的)计算机代替支票、信用卡和借记卡,这些计算机使用非对称加密生成一次性密码/证书,这些密码/证书仅适用于商定的金额。
这就是为什么把安卓变成支付设备是有希望的,它可以有效地消除刷卡记录器的问题。问题是,他们是否/何时会在实施中使用一次性证书?
打印的支票上可能有一个二维码或类似的东西,上面有我提到的一次性证书。
将读卡器和银行视为加油站,将支票和信用卡视为汽车。如果没有人使用它,支持下一代是非常昂贵的。
PS 我不是银行、金融或安全专家,只是一名程序员。:)
诚然,银行应该实施某种散列,但是:
如果欺诈者可以找到您的帐号,他们可以很容易地制作一张假支票,并且如果他们可以对您进行社会工程签名,那么他们很有可能将其作为真实的东西假冒。有一半的时间银行甚至不检查签名,他们只是接受支票并给你钱,如果它是在那家银行提取的。
支票应该过时了,但我猜银行喜欢吃欺诈。