博客
关于我
去中心化身份(Decentralized ID, DID)介绍
阅读量:700 次
发布时间:2019-03-17

本文共 1553 字,大约阅读时间需要 5 分钟。

去中心化身份(Decentralized Identity, DID)作为区块链领域的一个重要概念,虽然在热度上不如一些现象级技术如跨链、DeFi等,但其潜在价值却不容忽视。微软等大厂对DID的布局,实际上也在向我们发起一种暗示。

背景与现状

中心化身份系统的本质是,用户的身份数据掌控在中心化机构手中。这种模式在现有的ICANN管理域名、PKI系统中的CA证书管理等领域得到了广泛应用。然而,这种体系存在两个核心问题:

  • 身份数据不在用户掌控:用户无法真正拥有自己的身份数据,必须依赖中心化机构完成身份认证、授权等操作。
  • 身份互通性不足:不同平台之间(如淘宝、知乎等)各自有独立的身份系统,用户需要在每个平台重新注册账户,且不存在身份数据的互通性。
  • 为了解决这些问题,**联盟身份(Federated Identity)**应运而生。微软于1999年提出的联盟身份体系为用户提供了身份的可移植性,使得如今大多数网站都能支持第三方登录(如微信、QQ、新浪微博等)。随后,身份系统逐渐向去中心化方向发展,诸如OpenID等标准的提出进一步推动了这一进程。

    尽管DID目前在区块链领域仍处于冷门状态,但其潜在价值不容忽视。微软的布局或许正是这种趋势的一种体现。


    W3C DID 标准

    W3C的DID标准为去中心化身份提供了一个全面的框架,主要包括以下要素:

  • DID标识符:类似于身份证号,具有全局唯一性。例如,did:eth:123456789abcdefg。
  • DID文档:一个JSON-LD对象,包含以下要素:
    • DID标识符
    • 加密材料(如公钥)
    • 加密协议
    • 服务端点
    • 时间戳
    • 可选的JSON-LD签名
  • 值得注意的是,DID文档中不包含用户的真实信息,身份验证需要依赖可验证声明(Verifiable Claims,VC)


    可验证声明(Verifiable Credentials)

    VC是DID体系的核心价值所在。VC类似于数字签名,需要通过一个体系进行支持。以下是VC体系的主要参与者:

  • 发行者(Issuer):掌握用户数据,能够开具VC的实体,如政府、银行、大学等。
  • 验证者(Verifier,IV):接收并验证VC,提供给用户某种服务。
  • 持有者(Holder):请求并持有VC的用户,向IV出示VC。
  • 标识符注册机构(Identifier Registry):维护DIDs数据库,如区块链或分布式账本。
  • IV验证用户的方法是:通过Holder的DID文档中的公钥验证其签名的合法性,类似于区块链上的交易签名。


    uPort项目

    uPort是一款专为去中心化应用(DApp)设计的工具和协议集合,旨在降低用户使用DApp的门槛。以下是其核心特点:

  • 用户友好性
    • uPort App类似于加密货币钱包,用户无需了解复杂的区块链概念。
    • 提供uPort ID,结合DID和以太坊账户,便于在DApp中使用。
  • 功能模块
    • 个人基本信息(如Name、Email等)。
    • VC存储与管理。
    • 辅助信息(如账号二维码、头像等)。
  • 运行机制
    • uPort通过代理机构(Issuer)获取VC。
    • VC作为对DApp操作的数字签名,类似于加密货币交易的签名。

  • DApp与uPort的结合

    目前支持uPort的DApp数量相对较少,这与DID在区块链行业仍处于萌芽阶段有关。W3C的DID标准目前也尚未完全成熟(当前版本为v0.13),因此实际应用中可能需要结合自定义方案。


    结语

    DID技术的核心价值在于它能够真正让用户掌控自己的身份数据,同时实现跨平台的身份互通性。尽管当前DID在应用场景和标准化程度上仍有待提升,但其未来的发展潜力不容忽视。uPort等项目的探索,为这一方向提供了重要实践经验,也为DID技术的落地奠定了基础。

    转载地址:http://sspez.baihongyu.com/

    你可能感兴趣的文章
    Python UTC 日期时间对象的 ISO 格式不包括 Z(祖鲁语或零偏移)
    查看>>
    python valueerror object2_python遇到错误记录
    查看>>
    python vars的作用
    查看>>
    Python vcrpy库:HTTP请求记录和重放
    查看>>
    Python virtualenv
    查看>>
    python vue3实现大文件分段续传(断点续传)--带暂停和继续功能
    查看>>
    Python WebDriver如何打印整个页面源(html)
    查看>>
    Python WebSocket自动化测试:构建高效接口测试框架
    查看>>
    Python Web开发
    查看>>
    Redis 配置文件杂项。
    查看>>
    Python web自动化测试 —— 文件上传
    查看>>
    Python web自动化测试 —— 文件上传!
    查看>>
    Python Web自动化测试开发环境搭建(附安装包与虚拟机环境)
    查看>>
    python win32api键盘_Python win32api.keybd_event模拟键盘输入
    查看>>
    python Windows显示当前鼠标坐标
    查看>>
    python Workbook 表格宽度
    查看>>
    python write报错a byte-like object is required.not str
    查看>>
    PYTHON调用大模型实现图片生成
    查看>>
    python yaml.dump 缩进错误
    查看>>
    Python yield generator
    查看>>