-1

为网站实施临时交易密码功能的最佳做法是什么?

例如,在银行/金融场景中,例如 - 将资金从一个账户转移到另一个账户时,需要交易密码 - 进行交易时,需要交易密码 - 等等。

密码应该是临时的并且是基于时间的,即这个密码在 x 分钟后不应该工作。

你会推荐什么算法?您是否建议跟踪使用过的密码,即在某个商店中存储使用过的密码?

一些网站使用 OneTimePassword 设备。除此之外,请强调您认为可能合适的任何其他策略。

欢迎任何其他想法/建议/算法。

编辑:基于来自“lassevk”的问题

  1. 密码将通过电子邮件/电话/短信传达。
  2. 不涉及第三个站点。

我需要这个来为应用程序中的关键点提供额外的安全级别。这也可以称为“AuthenticationCode”。

4

2 回答 2

0

更新问题后编辑

好吧,一种方法是将其简单地存储在会话变量中,这将使其在服务重新启动时强制消失。

此外,您需要在其上设置一个计时器,基本上您将过期时间+密码存储在某处,并且每当您检查密码时,如果过期时间是过去,您就没有密码,只需将其清除即可。

如果您将其封装在一些基本代码中,不仅检查是否给出了正确的密码,那么它需要能够回答yesnono 密码,以便您可以向用户提供适当的消息。


几个问题:

  • 您将如何将临时密码传达给用户?短信?
  • 是同一个站点的密码,还是为另一个链接的站点创建的?(即,您的银行主站点生成或获取密码,您使用该密码登录或授权另一个相关站点上的交易?)

如果答案是:

  • 通过网站
  • 不,同一个网站

那有什么意义呢?你希望从中获得什么?实现此功能的具体标准或目标是什么?

于 2009-01-05T07:01:21.603 回答
0

嗯 它确实因机构而异

基于会话创建财务 PIN 将是更安全的策略,而不是创建适用于特定时间段的 FPIN。

如果您有资源向 FPIN 发送短信,那么最佳做法是在每次交易之前生成 FPIN,并将 FPIN 发送给用户,这类似于 2FA。

问候阿泽姆。

于 2009-01-05T07:08:20.217 回答