【问题标题】:What will be best practice in case of OTP one time password如果使用 OTP 一次性密码,最佳做法是什么
【发布时间】:2017-05-09 18:39:28
【问题描述】:

我正在 Android 应用中添加 OTP。通过一个编辑文本,用户将输入他的手机号码,并通过短信网关提供商获得 otp。 请告诉我上述情况发送 otp 和验证 otp 的最佳方法是什么?为什么 ? GET 还是 POST 方法?

【问题讨论】:

  • 如果您认为 GET 或 POST 是您最大的问题,那么您对 ​​http、安全性或 Web 服务的了解还不够,无法安全地实施。
  • 不,我已经问过描述情况的最佳方法是什么。
  • 是的。这个问题在你正在做的大计划中完全不重要。两者之间的唯一区别是服务器上的大约 1 行代码(如果有的话)以及电话号码是否出现在日志中。它不重要。但如果你不知道这一点,你就不应该实现这个功能。
  • 为了敏感数据的安全,我们可以在传输层上使用加密。
  • 如果你认为这才是最重要的,那么你就是在证明我的观点。

标签: android post get one-time-password


【解决方案1】:

要验证 OTP,您应该使用 POST,因为在 GET 中参数是可见的,为了确保安全,您可以使用 https 连接来验证 OTP 服务(前提是您的 Web 服务支持它)。为了进一步安全,您可以在客户端加密您的 OTP,并在验证之前在服务器端解密。

【讨论】:

  • 如果您使用 HTTPS,实际上两者都对外部不可见。然后你也不需要加密它,因为 HTTPS 会为你加密它。那么您可能遇到的唯一可见性问题是您的服务器是否自动记录所有请求,因为获取数字可能在日志中。
  • @Gabe Sechan 使用 get 方法,如果有人知道后端 api url,那么他可以开始用手机发送 otp 多次
  • @user6313669 你可以用任何一种方法做到这一点。 POST 没有什么能阻止它。
  • 好的,您知道如何防止这种情况发生吗?
猜你喜欢
  • 2012-06-08
  • 2012-11-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-20
  • 1970-01-01
相关资源
最近更新 更多