首页 资讯 正文

堪比脸书Libra的微软加密货币项目 你意识到它的重要性了吗?

白话区块链 2019年07月30日 12:14

我们每个人都需要拥有自己的一套数字身份,来安全地、私密地存储我们数字身份相关的所有信息。这套自有的数字身份必须易于使用,只有用户本人才能完全控制身份数据的存储和使用。

—Ankur Patel,微软身份部门首席产品经理

当你通过支付宝来租借共享充电宝或租车时,如果你的芝麻信用分达标,可以享受免押金政策。这个信用分,是基于你在支付宝生态里的消费行为数据而得出的。这些数据都存储在支付宝服务器中,你自己可能也未必清楚,而数据的使用也并不需要你知晓或授权。

如果你希望自己的个人信息、学位文凭、在职情况等个人资料,以加密的形式安全地保存在多个节点而非某个机构手中,别人或机构需要查询你的相关信息时,都必须经你授权,查询结果以你认可的形式提供给对方。

早前,白话区块链的《区块链与比特币的“头号大厂铁粉”:微软》一文中,就着重提到了微软这个 DID 项目对其的重要战略意义。比特猫日报 FM 对此也有一个语音版的播报:点此收听:微软应用区块链技术实现去中心化身份

事实上,不久前微软发布的 ION(Identity Overlay Network 身份覆盖网络) 在业界得到了广泛热议,ION 正是一个去中心化身份 DID(Decentralized ID)的实现。

微软的 DID 代表了大型互联网公司公开拥抱去中心化技术给我们展开了利用 DID 技术来搭建未来身份账号体系的一个宏伟蓝图。

01
什么是 DID?

根据 W3C 的定义,DID 是用于可验证的、自我治理的数字化身份体系,DID 独立于任何中心化注册机构、身份提供者或证书颁发机构。

在实现上,一个标准的 DID 分成三部分:

在上面这个例子中,“did” 是前缀,“example” 是一个 DID 方法,后面 “123456789abcdefghi” 是具体的 DID 身份标识。

什么是 DID 方法?DID 方法是定义如何访问 DID 文档的途径,可以理解成一种 DID 的实现。根据 W3C 注册中心的最新文档,目前有 28 种已经注册的 DID 方法,包括知名的 ION、uPort、IPLD 等等。DID 方法大多对应一个区块链网络,比如 ION 就对应于比特币网络。

上面例子中的“did:example:123456789abcdefghi”是指通过 example 网络或区块链来提供的身份, example 在 W3C 中主要用于示例作用。

一个 DID 可以存储这个 ID 的相关数据,正式的名称叫 DID 文档

02
DID 怎么用?

谈到 DID,通常就离不开可验证声明(Verified Claim)。目前,大部分 DID 示例场景都是可验证声明。举个例子,“张三是上市公司员工”就是一个可验证声明。

那可验证声明用在什么场景中呢?下面,白话区块链(ID:hellobtc)将举两个例子来说明。

楼宇的门禁系统是一个典型的 DID 应用,访客提前使用自己的 DID 申请授权,访问公司认可的任一员工使用自己的 DID 接受申请,访客来访时使用自己的 DID 就可以顺利进楼了。

或者,用户去车行租车,通常要求用户提供押金,以降低运营风险,但是对于某些资质好的用户可以提供免押金要求,比如上市公司或是大型国企的员工。

上述功能在 DID 网络中如何运行呢? 以租车需要提供的证明为例:

方法1:用户提供上市公司或者是大型国企的工作工卡,这是最直接的方法,但是用户会暴露一定程度的隐私,即会向租车方提供并不必要的工作信息。

方法2:通过 DID 可验证声明来证实,用户提供的 DID 文档中声明了此用户属于上市公司或大型国企的员工,租车行可以去向颁发机构验证,验证结果只会返回一个“是/否”的结果,不需要返回用户具体的工作信息,因此在满足业务需求的同时,用户保留了自己的隐私。

在上面例子中,车行需要向声明(Claim)的颁发机构(Issuer)去验证结果,颁发机构一般是一个守信的第三方,比如 LinkedIn。用户在获取可验证声明时候,可能需要向颁发机构提供自己的工卡证明,颁发机构则可以生成可验证声明提供给用户使用。

03
DID 是如何实现的?

前面提到,DID 是通过不同的 method(方法)来实现。method 提供了访问 DID 的方法,以最近微软发布的 ION(Identity Overlay Network)为例。

ION 通过实现 Sidetree 协议来访问比特币网络。由于比特币是一个处理速度比较慢的网络,ION 通过在比特币第二层进行批量合并的方式,将大量 DID 操作合并成一个上链操作,将修改的数据实体存在 IPFS ,数据实体的哈希存在比特币网络的方式,来实现 DID 数据的可信存储。

与所有基于 Sidetree 的 DID 网络一样,ION 包括三大功能: 一系列核心 Sidetree 逻辑模块、基于比特币网络的读写适配器和在节点之间复制数据的 CAS 协议(例如IPFS)。这三大体系共同创建了在现有比特币之上的第二层 DID 网络,ION 可以支持每秒数千甚至数万个操作。

由于比特币上链需要交易费,维护 ION 节点也需要成本,但目前 ION 并没有公布完整的经济运行机制。ION 可以向进行 DID 数据操作的用户收费,但是这个收费能不能覆盖 ION 网络运行成本还是个问题。当然,微软完全可以自行承担 ION 网络的运行成本,但这又与 DID 去中心化运行的初衷相离了。

在使用上,微软推出的 DID 和目前的支付宝扫码租用充电宝的流程可能相类似。

据微软宣称:微软认证器(Microsoft Authenticator App)每天有数百万用户用来进行身份验证,微软计划下一步将会在应用中支持去中心化身份并进行测试,在用户同意的情况下,通过这一应用来管理用户身份数据并作为加密密钥,此时只有 ID 保存在链上,身份数据则是用密钥加密后保存在链下的 ID Hub 中。

04
DID 和以前中心化的系统有什么区别?

简单来说,基于区块链的 DID 是用户在互联网数字化的价值体现。从实现的角度看,实现上述入住或租车场景可能只需要极少行代码的智能合约即可实现,且不需要依赖公司的任何资源。不过,按照区块链的常见的做法,用户“授权”查询的操作需要支付小额的 Gas 费,以支持背后执行智能合约以及将数据入链的矿工。

DID 默认是匿名的,有点类似实名认证之前的手机 SIM 卡,从技术角度看它具有唯一性且不可伪造。由于运营商把控了发卡,因此要群控一堆账号需要一定的工作量证明。即使 SIM 卡不做实名,因为其唯一性和不可伪造,也是各个 App 所需的优质的真实身份标识。

跟 SIM 卡不同的是,用户完全掌控自己的匿名身份。用户的数据可以有选择地加密保存在区块链上,比如用户的学历证明,只需要用户自己和对应的权威 DID 可以访问数据的详细资料,而查询方将只会看到权威 DID 对用户学历证书认可的签名,从而保证了数据的安全性。

通过 DID,用户可以向访问的系统提供有限的信息。比如只提供昵称 Hellobtc,避免用户注册一个系统就要重复地暴露自己大量隐私数据。用户也可选择将自己部分物理身份,比如社交账号,与 DID 关联。如果将身份信息和 DID 关联,就可以实现刷脸入住酒店等功能 。

在隐私方面,DID 可以有选择地公开自己的隐私数据。比如打车时,仅向对方公布自己的打车历史记录及信用。由于区块链本质是匿名并且部分数据是可加密的,这个在技术上不难实现,而这一切(仅公开对方需要的信息)可以通过智能合约来自动完成,不需要像 Android 安装应用的时候,提示用户需要做出复杂的授权选择。

05
小结

DID 成为互联网的基础设施之后,如果跟智能合约关联并支持跨链应用,用户就可以很方便利用去中心化网络去联系到一辆同城共享汽车,而共享司机也可以查看下单的 DID 信用信息决定是否接单。

用户可以给一个餐厅的 DID 执行外卖合约,餐厅接单之后,智能合约会自动触发送货员的 DID 执行送货的合约,之后所有结算自动进行,中间也不需要一个中心化组织来协调。

由于区块链的不可篡改特性,自然形成了用户的信用记录。

对于 LinkedIn 这样的职场记录,一个用户要通过 DID 形成自己的工作履历,需要每份经历得到相关同事(DID)的证明及认可。由于信息不可篡改,承担证明的同事会更重视信息的真实性,从而会形成非常有价值的数据沉淀。

DID 将会是推动信息互联网到价值互联网转型的一个重要开始。