openid - 去中心化 ID (DID) 相对于联合身份的优势

标签 openid saml federated-identity decentralized-identity

W3C 目前正在开发去中心化 ID (DID) 标准(请参阅 here )。与现有的OpenID、SAML等联合身份认证机制相比,这个新标准有哪些优缺点?为什么组织联盟会选择 DID 而不是传统的联合身份方法?

最佳答案

好问题!

传统身份验证框架(例如 OAuth/OpenID 提供商)的实现目前(没有必要的扩展)基于以下基本假设:用户进行交易的标识符(即用户名和电子邮件地址)由中心化提供商拥有,并且本质上是借给你的。他们通常还假设您的个人和应用程序数据由提供商控制,他们可以在闲暇时访问这些数据。

另一方面,去中心化身份引入了一组非常不同的功能和模型,与现有的传统身份方案几乎 180 度 - 以下是两个最重要的组成部分:

  1. 去中心化标识符 (DID) 是一项规范,概述了使用去中心化系统的标准数据格式和框架,使用户能够独立于中心化实体创建和控制自己的标识符。这是非常强大的。这意味着您的标识符现在 1) 真正属于您,2) 不能被任意从您手中夺走,3) 它(+ 支持它的加密 key )可用于签署身份证明。这意味着您不会被平台化,不会在企业倒闭时丢失您的 ID,也不会受到声称不同意某事的实体的影响(通过您可以创建的签名证明)。

  2. 开源和标准组织(例如去中心化身份基金会 - https://identity.foundation)也在致力于去中心化身份的另一个关键组成部分:加密的个人数据存储。去中心化身份堆栈的这个组件代表了用户模型的另一个重大转变:大公司和平台提供商不再将您的所有数据保存在他们可以闲暇时访问的孤岛中,而这些数据一直受到滥用和破坏,您的数据存储在使用链接到您的去中心化标识符的 key 进行加密的个人数据存储。这意味着您可以控制您的数据以及与谁交换数据 - 在此模型中,即使是个人数据存储实例的基础设施提供商也无法访问它。

去中心化身份技术/标准将为用户提供数字世界中从未存在过的控制、隐私和安全级别,因此我对即将发生的事情感到由衷的兴奋!

更新:由于另一位评论者介绍的关于 OIDC 流程中去中心化标识符的使用的不准确之处,我必须指出,虽然 OIDC 是一个非常宽松的框架,但目前还没有批准的 OIDC 配置文件用于在官方中进行去中心化标识符交换,可靠的方式。有几个团体(我们在 Microsoft 的团队和去中心化身份基金会的各个贡献者)正在努力通过去中心化标识符的官方 OIDC 配置文件。您可以使用以下库来进行与 OIDC 兼容的 DID 身份验证交换,该库反射(reflect)了即将推出的 DID OIDC 配置文件(如果需要,我们将更新该配置文件以跟踪规范):https://github.com/decentralized-identity/did-auth-jose/blob/master/docs/OIDCAuthentication.md

关于openid - 去中心化 ID (DID) 相对于联合身份的优势,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56113106/

相关文章:

spring - 收件人端点与 SAML 响应不匹配

php - Apache 2.4 的 SAML 插件

javascript - Google 一键登录 - "No credentials avaliable"错误

android - Android 应用程序是否可以使用 Open-ID 服务?

angular - 如何在 Angular 4 中实现 OpenID

oauth-2.0 - OpenID Connect 用户信息端点使用

oauth - LDAP Provider over OpenID (Google OAuth) 后端

java - OpenSaml3 文档

single-sign-on - 如何在 OpenIG 中提出姓名请求?

asp.net-mvc-3 - MVC3 + WIF - FederationResult 丢失 "wctx"