W3Schools



我想知道用户将如何“登录”EOS。如果用户希望应用程序代表其与EOS区块链进行交互,则用户将需要与Web应用程序共享一些私钥。我相信这是怎么回事沙特哦弥陀.com works.

EOS似乎有一个高级权限系统,但我错过了一些关于最佳实践的指导。我相信要求用户安装像Scatter这样的扩展会增加很多摩擦,所以我不考虑它。期待更多地了解此身份验证和授权机制的工作原理。

authenticationsignin
3个回答
7

当你说要求安装扩展程序是一个“很多摩擦”时,我同意你的意思......但我们在这里处理真钱:EOS令牌。人们想要受到保护。大多数ETH采用者都有Metamask。

它让我想起互联网的开始,我们应该有一个电子邮件来注册一个帐户,而且由于人们不喜欢这样,网站开始创建恼人的用户名,最终在屁股上变得如此痛苦,因为你总是忘记。现在每个体面的服务都要求发送电子邮件,人们也很好。

好吧,我认为我们需要教育 people. Blockchain is a new topic and there's no other way around. Imagine when it get real traction and every single website utilizes Scatter identities: HTTPS://呜呜呜.YouTube.com/watch?V=06RSJ40BH还是

只需点击一下,您就会登录并且最重要受保护.

在我们的项目中,我们正在努力争取全新的用户注册流程:安装Scatter,生成密钥,将其提交给我们的服务器以创建和放置eos帐户,让用户再次打开分散并创建新的身份。没有利益相关者喜欢它,所以我正在使用一个解决方案,我们可以提高一点点,试图让这个过程更顺畅......

但我告诉他们的是,没有别的方法可以分散,人们真的需要安装一个钱包来处理他们的帐户,无论是桌面还是移动设备都没关系,但老实说像Scatter这样的扩展程序令人惊叹。

除非您想集中并保留用户密钥...您是否相信任何应用程序都可以做到这一点?或者,你甚至可以为这个应用程序创建一个帐户,并且只在那里持有最少量的令牌......最后你会得到很多帐户(比如我上面提到的用户名)......


1

您无需强制人员使用任何扩展程序。

您可以直接在浏览器中生成私钥,并将其存储为通过密码加密的本地存储HTTPS://GitHub.com/EOS IO/EOS机身-可以跟

当用户“登录”到您的应用程序时,它将从本地存储恢复私钥。钥匙永远不会上网。

实际为用户创建新帐户时,您将生成的PUBLIC密钥发送到您的服务器,以便使用您应用的帐户签署帐户创建交易。

无论如何,似乎是合理的支持 people that has an existing EOS account and wallet integrating with Scatter.

- 编辑 -

对于这个问题:如果用户清除其本地存储会发生什么?

您应始终向他们提供私钥并指示他们将其存储在安全的地方,并通过输入私钥作为登录方式,提供从那里恢复的选项。此外,您创建的帐户可能会将您的应用帐户列为50%owner and you could instruct the user to set a friend as his account recovery with the other 50%, then he could recover his account completely even in the worse case by obtaining a transaction singed by both to "reset" his owner key.


0

您可以像往常一样处理“登录”,它不一定是一种链式身份验证方法。您的数据库可以处理用户名和密钥之间的相关性。这些键可以容纳0个令牌,也不必与用户共享。

然而,当Scatter解决所有这些问题时,这似乎是很多不必要的工作。如果您想创建最佳体验,提供这两种解决方案可能是理想的,让用户决定他们想要如何处理身份验证。