如何正确屏蔽 SEPA(IBAN 和 BIC)信息?

Posted

技术标签:

【中文标题】如何正确屏蔽 SEPA(IBAN 和 BIC)信息?【英文标题】:How to mask SEPA (IBAN and BIC) information correctly? 【发布时间】:2015-04-02 15:56:15 【问题描述】:

我目前正在开发一个支付系统,用户可以使用 SEPA-debit 支付服务费用。用户只需输入一次数据,就可以在以后再次付款时选择相同的付款方式。

因此,为了让用户选择正确的借记账户,我需要显示一些关于她/他的账户的信息。在信用卡的世界中,除了卡号的最后 4 位数字外,其他所有数字都被屏蔽是很正常的,例如XXXX-XXXX-XXXX-1234

在显示 IBAN 号码时,我是否还应该隐藏除最后 4 位以外的所有数字?我应该为 BIC 做同样的事情,还是显示完整的 BIC 号码是否安全?

【问题讨论】:

【参考方案1】:

在我看来,IBAN 和 BIC 不需要屏蔽。 BIC 提供的唯一信息是特定账户所属的银行。互联网上有很多列表,其中包含每家银行的 BIC 代码。

对于 IBAN,如果出于隐私目的向第三方显示此信息,您可以将其屏蔽(与您可能希望隐藏一个人的全名并仅显示例如 John S. 而不是 John Smith 的原因相同),但即使有人窃取了您的 IBAN,如果没有您的确认,他也无能为力。如果您确认,他可以直接扣款,但通常您的银行会提前通知您,您可以拒绝。因此,欺诈的机会有限。

我还知道一些银行的移动应用程序允许您将手机的联系人连接到应用程序,您可以查看他们的银行帐户(以防您想向他们付款)

我希望这能回答你的问题。

【讨论】:

这是错误的:security.stackexchange.com/questions/6598/…,在德国,您可以使用有效的 iban 直接借记 您确实需要直接付款授权 (Einzugsermächtigung)。【参考方案2】:

使用可以通过this link使用屏蔽jquery库,

然后根据你的情况使用这些功能之一,

    如果文本字段是静态创建的:

$(document).ready(function()
  $('#rib').mask('SS00 0000 0000 0000 0000 00', 
      placeholder: '____ ____ ____ ____ ____ __'
  );
);
#rib
  height: 35px;
  border: 2px solid #CECECE;
  width:  300px;
  text-indent: 10px;
  border-radius: 3px;


#rib:focus
  border-color: black;
  outline: none
<input id="rib" name="rib" />


<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.mask/1.14.15/jquery.mask.min.js"></script>

    如果文本字段是动态创建的:

    $(document).on('focus', '#field', function () $(this).mask('SS00 0000 0000 0000 0000 00', 占位符:'____ ____ ____ ____ ____ __' ); );

【讨论】:

以上是关于如何正确屏蔽 SEPA(IBAN 和 BIC)信息?的主要内容,如果未能解决你的问题,请参考以下文章

在 asp.net 中的 Jquery 验证 BIC IBAN

从 IBAN 号码生成 BIC 号码

MariaDB 更新错误内部连接和选择

如何在数据库中表示银行账户信息?

GWT 在客户端使用 iban4j 进行验证

根据国家/地区调整银行信息表