使用私钥和公钥的用户注册和注册

问题描述 投票:0回答:1

我正在尝试创建一个react native应用,用户可以在不使用密码或电子邮件的情况下登录。这个想法是在注册时,我们捕获用户的手机号码,使用OTP对其进行验证,并在验证之后创建一个RSA公钥/私钥对。私钥保留在用户电话上,而公钥发送到后端(使用HTTPS API)。以后的所有内容都使用私钥/公钥加密。

为了将来登录并识别用户,我们基本上使用手机号码+公钥。

我的问题纯粹是从安全角度出发-在没有常规用户名/密码类型的情况下,上述方法安全吗?使用这种方法是否有任何弊端?

是否已经使用此方法的框架/应用程序?

android react-native security
1个回答
0
投票

也许要考虑的几件事:

[私钥如何存储,如果清除了应用程序数据或安装了应用程序,会发生什么?如果私钥丢失,这可能会使用户冻结。

[如果有人更改了电话号码怎么办?如果他们只需要私钥对其进行更新,那么将其绑定到有意义的电话号码上即可吗?

如果私钥丢失,并且您只需要重新生成电话号码,就可以想象一个情况,即电话号码被盗用然后帐户被模拟。

除了将公钥标记为系统中的无效密钥外,其他任何方法都无法撤销密钥。如果将密钥标记为已泄露,则与电话通话的每个需要加密或验证数据的终结点都需要意识到这一点。

可能很明显,但是如果应用程序上没有其他密码,则可以访问手机的任何人都可以访问该频道。

© www.soinside.com 2019 - 2024. All rights reserved.