我正在为我的 Django 项目实施 SMS 注册系统。像 Whatsapp 或电报信使一样,用户只需使用手机号码即可注册和登录。和 OTP 代码。
但是我在我的应用程序中发现了一个问题。
当用户输入他的号码时,我的应用程序会通过 SMS 向用户发送 OTP。他无法在 3 分钟内通过 SMS 请求新的 OTP。一个用户一天可以通过短信请求总共10个OTP。但是如果黑客编写了一个机器人来输入不同的手机号码,我的应用程序就无法检测到这一点。
例如一个机器人,它有一个包含 10000 个手机号码的字典,一个一个地输入这个数字。我的应用程序只是将带有短信的 OTP 发送到 10000 个不同的手机号码。我将不得不向我的短信服务提供商支付很多钱。
我怎样才能避免这个问题?像 Whatsapp 这样的信使如何解决这个问题?