blockstackblockstack-Trans

Gaia-2-Authentication and Gaia

2019-07-25  本文已影响1人  空乱木

FROM : https://docs.blockstack.org/storage/authentication.html

Blockstack认证是一种基于承载令牌的认证系统。从应用程序用户的角度来看,登录类似于他们熟悉的第三方认证技术。对于应用程序开发人员,该流不同于集中式登录服务(如OAuth)的典型客户机-服务器流。使用Blockstack,身份验证流程完全在客户端进行。

在本节中,您将获得身份验证系统的概述,并了解Gaia如何适应它。

身份验证和Gaia

分布式应用程序(DApp)和blockstack浏览器在身份验证流期间通过来回传递两个令牌进行通信。请求应用程序向blockstack浏览器发送一个authRequest令牌。一旦用户批准登录,blockstack浏览器就会使用authResponse令牌响应应用程序。这些令牌是JSON Web令牌,它们通过URL查询字符串传递。

当用户选择在DApp上“使用Blockstack登录”时,redirectToSignIn()方法将用户发送到Blockstack浏览器。浏览器使用身份验证令牌和应用程序私钥进行响应。

image

应用程序私钥是特定于应用程序的。它使用appDomain作为输入,从用户的标识地址私钥生成。这个密钥是确定的,这意味着对于给定的blockstack ID和域名,每次都会生成相同的私钥。应用程序的私钥在每次身份验证时与应用程序安全共享,并由blockstack浏览器加密。钥匙有三个功能:

当应用程序写入到Gaia Hub时,身份验证令牌、密钥和数据被传递到Gaia Hub。

image

令牌确保DApp具有代表用户向hub写入的授权。

上一篇下一篇

猜你喜欢

热点阅读