Skip to main content

2.1 什么是互联网身份

为了访问互联网计算机上运行的应用程序并与之交互,用户通常需要进行身份验证。在互联网计算机上进行身份验证的最常用方法之一是通过互联网身份验证。

互联网身份(II)(https://identity.ic0.app/ )是互联网计算机支持的区块链验证框架。用户通过创建身份“锚”开始该过程,他们为其分配兼容的加密启用设备,例如笔记本电脑上的指纹传感器、手机上的面部识别系统或便携式 HSM,例如 YubiKey 或 Ledger 钱包。此后,他们可以使用分配给其锚点的任何设备注册并验证在互联网计算机上运行的 Dapp。这提供了高度的便利性,允许用户以非常低的阻力对 Dapp 进行身份验证,同时还受益于高级别的安全性,并且无需自己直接管理或处理密钥材料。该系统为用户提供了一定程度的隐私,通过确保每当锚点用于与 Dapp 交互时,Dapp 会看到为该 Dapp 专门生成的虚拟名称,从而防止 Dapp 在他们使用的各种 Dapp 中跟踪用户。用户可以根据需要创建任意数量的身份锚。

与大多数身份验证方法不同,用户无需设置和管理密码或向 Dapp 或互联网身份事提供任何个人识别信息。

技术如何运作

互联网身份建立在现代 Web 浏览器和操作系统支持的 Web 身份验证 (WebAuthn) API 以及为互联网计算机提供动力的“链钥加密”框架之上。 本质上,互联网计算机使用其主链密钥对分配给每个锚的设备内的公钥列表进行签名,客户端代码(例如在 Web 浏览器中运行)知道该公钥列表。

与互联网身份集成的 Dapp 会提示用户使用身份锚进行身份验证。 如果用户还没有身份锚,则很容易创建一个并向其添加身份验证方法。 有关更多详细信息,请参阅如何使用互联网身份。 对于添加的每个设备,都会生成一对加密密钥(私钥和公钥)。 公钥存储在互联网计算机区块链上,而私钥与任何控制访问权限的生物特征数据一起被锁定在身份验证设备内。 向身份锚添加多个身份验证设备允许用户跨所有设备访问 Dapp。

当用户访问使用互联网身份进行身份验证的 Dapp 时,他们首先指定他们想要使用的身份锚。 在使用分配的设备使用身份锚进行身份验证后,他们的浏览器连接到互联网身份并生成用于该 Dapp 的会话密钥。 最后,要求用户授权访问 Dapp。

用户的浏览器下载授权,然后将用户重定向到 Dapp。 Dapp 验证来自互联网身份的授权,并以应用程序特定的匿名身份(我们称之为化名)授予用户访问权限。 在内部,用户为每个 Dapp 使用不同的化名,但任何单个 Dapp 的化名在用户的所有设备上都是相同的。 特定用户的所有设备简单地代表他们可以用来验证其互联网身份锚的不同方法。

用户可以根据需要注册任意数量的身份锚,以实现冗余或不同目的。 例如,用户可以创建一个用于 SocialFi 或 GameFi 的锚,以及另一个用于纯 DeFi 的锚。 比如说,他们可能只会对在他们的 SocialFi 和 GameFi 锚中添加面部识别感到舒服,并且只会使用更安全的便携式 HSM 设备,例如 YubiKeys 和 Ledger 钱包以及纯 DeFi锚。

另见: