OIDC 云代理与 SIOP 边缘代理

OIDC cloud agent vs SIOP edge agent

我们正在使用去中心化身份 (DID) 启动 POC(概念验证),并获得了一份讨论要使用的身份验证方法的文档:

OIDC 云代理与 SIOP 边缘代理。

我不明白那两个东西是什么?以及使用其中一种或另一种的优点或缺点是什么。

我知道 OpenId Connect 但不知道这两个,任何解释或 link 阅读将不胜感激。

谢谢

此答案假定您对 Indy、Aries、DID、可验证凭证和 OIDC 有一定的了解。我对第一组主题了解很多,但我不是 OIDC 方面的专家,所以请耐心等待 :-)。

SIOP(自行发布的 OpendID 连接提供程序)是 OIDC 的标准扩展,尽管大多数 IAM 供应商并未实施它。实施后,OIDC 依赖方 (RP) 可以使用 SIOP 协议直接联系 DID 持有者(例如身份钱包),并使用标准 OIDC 协议取回经过验证的标识符。 Decentralized Identity Foundation (DIF) 的一个项目(Interop Project)正在使用 SIOP 来实现 DID 身份验证。这里有一篇关于该方法的文章 - https://medium.com/decentralized-identity/using-openid-connect-with-decentralized-identifiers-24733f6fa636. The interop project can be found here: https://github.com/decentralized-identity/interop-project

我们在不列颠哥伦比亚省 (BC) Gov 与 Mattr Global(新西兰)合作的替代方案使用 OIDC 云代理来实施标准 OIDC 身份提供者 (OP),该身份提供者在一侧与 OIDC 对话,并使用另一端的 DID 协议 (DIDComm) 与可验证凭证持有者(同样是身份钱包)对话。我们在一侧使用标准 OIDC 客户端库来接收来自 RP 的授权请求,然后(使用 HTTP)将请求发送到 Aries Agent(基于 Indy)以与 Identity Wallet(本身是 Aries Agent -或至少一个与 DIDComm 对话的人)请求证明,并收回证明。然后 OIDC 库从声明中获取数据,将它们映射到一个 OIDC 令牌以 return 到 RP。实施假定 RP 和 IdP(OIDC 客户端库和 Aries Agent 的组合)由请求授权的组织操作。

这个 link 有两个实现的图片:https://github.com/decentralized-identity/interop-project/issues/16#issuecomment-521130043

请注意,SIOP 实现是关于验证 DID,而 OIDC 代理实现侧重于从可验证凭据中验证声明 (VC)。我们认为 VC 授权的退化案例是 DID 的证明,因此 OIDC 代理方法可能能够处理这两种情况。

这里有很好的 discussion/summary 方法的优缺点:https://github.com/decentralized-identity/interop-project/issues/9

我们(BC Gov 和 Mattr Global)的工作在这里:https://github.com/bcgov/vc-authn-oidc