区块见闻 区块见闻
Ctrl+D收藏区块见闻

DID:如何利用分布式帐本实现自主身份?_ENT

作者:

时间:

前言

每个人都有过回答“你是谁”这个问题的经验。最近一次被问到“你是谁”时,你是怎麽介绍自己的?是回答姓名与职称?或是身份证字号?还是某活动的报名序号?

当我们在尝试回答“你是谁”的时候,也正在定义我们的身份。

身份会因情境不同而不同,有时是姓名,有时是身份证字号,也有时是某个临时编号。

什么是数位身份(DigitalIdentity)?

数位身份就是以数位形式表现与储存的身份,自全球资讯网被发明以来,数位身份便跟著开始发展直到今日,网站域名、电子信箱、社群帐号等等都是数位身份的一种。

我们的日常生活离不开数位身份的使用:上社群网站发文、订演唱会门票、上PTT看废文、用GMail联络公事、用线上课程进修、用云端硬碟备份资料等等。

几乎可以说没有数位身份,就没有现代便利的生活。

自主身份出现之前,数位身份的发展大致可以分为三个阶段:

第一阶段:中心化身份(CentralizedIdentity)

数位身份第一次随著全球资讯网的流行而有了大量的需求。

如雨后春笋般冒出来的各种网站显露了一个迫切的问题:要怎麽证明你正在浏览的网站是可信任的?

一个直觉的思路是:我们可以对可信任的网站域名颁发凭证(Certificate),那么由谁来颁发?

由于颁发凭证的机构必须是具有公信力的机构,因此凭证机构(CertificateAuthority,CA)被设立,负责域名的审核与凭证的颁发。

自1995年发展至今,凭证机构现在仍是Https的骨干。

然而,CA是中心化且阶层化的(Hierarchical):

根CA(RootCA)颁发凭证给次级CA,次级CA再颁发凭证给更次级的CA,更次级的CA可以颁发凭证给注册某域名的网站,拥有凭证的域名则可以让用户信任,使用户愿意于此域名注册身份。

市场分析:欧洲央行的新通胀目标仍没有回答如何实现的问题:Gruener Fisher Investments创始人Thomas Gruener表示,欧洲央行新的对称通胀目标“很好”,但市场更感兴趣的是欧洲央行会对此采取什么行动。因此,路线图并没有变得更加具体,与过去几年的‘非常规货币政策’的区别仅限于措辞上的细微之处。他表示,这些含糊的声明表明,欧洲央行根本无法精确实现其通胀目标。在这方面,欧洲央行与美联储、英国央行和日本央行是相同的。[2021/7/15 0:55:11]

在这样阶层化的架构下,一个用户的身份可以一直往上追朔到根CA,也就是说,根CA是身份的根基。

由此可知,这样的数位身份非常依赖可信的根凭证机构,且用户的身份完全掌控于注册身份的域名拥有者,随着使用服务的增长,一个用户可能必须同时在数十个服务注册身份,身份变得破碎而脆弱。

第二阶段:联合身份(FederatedIdentity)

为了解决身份的破碎,一个直觉的思路是:让身份由数个组织组成的联盟共同管理,于联盟中任一个域名注册的身份都可以在联盟中通用,其中一个例子就是由昇阳(Sun)主导的自由联盟(LibertyAlliance,2001)。

联合身份虽然稍微解决在联盟之间身份破碎的问题,但是于联盟之外的身份仍然是破碎的,且身份仍由服务提供者掌控。

第三阶段:以用户为中心的身份(User-CentricIdentity)

这就是我们目前所在的阶段:让不同服务、不同联盟的身份互通以及给予用户更多对身份的掌控,是此阶段的目标。

若要使某一服务的身份可以在多个服务之间通用,则各家服务需要共同制定同一套规格以跨服务验证身份。

重视用户允许(UserConsent)与互通性(Interoperability)的结果使用户成为了身份的中心。

动态 | V神阐述如何进行ETH委托挖矿:V神回复网友提问“1.可以通过合约合租一个validator(平民化参与,共享投票身份)吗?2.一个客户端可以跑多个valifator (共享机器)吗?”表示,“你开一个validator,需要设置两个公钥:签名的公钥和取款的公钥。Phase 2后,不一定需要设置取款公钥,也可以设置取款合约。签名的私钥能withdraw,withdraw完成后validator里面的资金都给取款合约的地址。所以你开新的validator到时候,可以先发比如1以太币,设置取款合约,这个合约的规则是,谁deposit多少谁按照比例withdraw多少。一段时间后,你发withdraw的交易。现在因为奖励这个validator的balance是33.6以太币(加 5%),33.6以太币给合约,合约的规则分配1.05给你,8.4, 10.5和13.65 给其他的参与者。签名的私钥是你的,谁能withdraw多少的规则是合约定的。别人能看一个还未activated的validator的withdraw合约的规则,如果他们觉得是合理的,则他们能发他们的币给这个validator,这个是委托的方法。”[2019/10/22]

用户可以自行决定是否要从一个服务分享自己的身份至另一个服务,防止数位身份的破碎。

例如OpenID(2005)/OAuth(2010)/FIDO(2013)这些开发者熟知的验证(Authentication)协定就是遵循此原则的产物。

虽然用户对身份拥有更多掌控以及有更好的互通性,但用户对于中心化服务的依赖程度却更胜以往,导致服务商拥有“滥用”用户隐私的权力,例如以广告营收为主要获利来源的企业,可以在不经用户同意下便使用或贩售用户资讯,用户隐私有受到侵犯的风险。

身份的价值与厚度来自社交行为与频繁的互动,在完全理想(例如非数位)的场景下,身份应当是一个整体,并能依据情境不同而揭露不同资讯,正如同当我被询问“我是谁”时,我可以依照情境的不同给予不同的身份证明。

动态 | Cryptopia清算跟进:总资产为170万美元 清算人需向法院咨询如何支付欠款:据rnz消息,Cryptopia清算公司Grant Thornton需要就如何现款支付客户欠款向法庭寻求法律咨询,因为世界上还未有任何法律先例。来自Grant Thornton的清算人David Ruscoe和David Ruscoe发布报告称,Cryptopia目前欠款超过400万美元,而总资产为170万美元。本周,法院下达命令,允许他们使用该公司持有的比特币为清算提供资金。 据此前消息,Grant Thornton发布清算报告显示,Cryptopia欠69名无担保债权人债务超过210万美元,有担保债权人的债务超过140万美元。此外,该公司欠员工未付工资、假期工资以及无担保债务近60万美元,预计无担保债权人的数量将会增加。在今年1月份遭黑客入侵损失1600万美元后,Cryptopia目前已申请美国破产保护。[2019/6/1]

然而,我们当今使用的数位身份既脆弱也无法表达身份的厚度。

那么要如何实现一个不受任何中心化服务掌控的身份呢?

这个问题的答案一直到最近才出现?—?分散式帐本就是实现自主身份的最后一块拼图。

什么是自主身份?

自主身份(Self-sovereignIdentity)就是用户可以完全掌控且于任何服务之间互通使用的数位身份。

自主身份与当今的数位身份不同?—?自主身份锚定于分散式帐本,不被任何中心化服务掌控。

分散式帐本使数位身份具备下列特性,且正是这些特性保证了数位身份的自主性:

存在性(Existence)

中心化服务可以随时窜改数位身份的存在;分散式帐本则使身份能以去中心化识别符(DID)的形式锚定在其上且保护其不受篡改。

掌控性(Control)

动态 | 社科院法学所刊文《对“去中心化”的区块链如何监管》:中国社科院法学所赵磊在《经济参考报》发表题为《对“去中心化”的区块链如何监管》的文章。文章指出,对区块链技术的监管,应该分为两个层面:一是结合区块链技术的具体应用场景,分行业进行监管;另一是针对区块链,制定专门的技术标准,以实现区块链技术的规范、统一。而判断某种商业活动或者社会管理活动是否可以应用区块链,至少应该从以下两方面进行衡量:一方面是区块链技术只能在虚拟空间中应用;另一方面是区块链技术无论在何种场景中应用,必须符合其去中心化、共识机制与分布式记账等技术特征。[2019/1/10]

中心化服务可以完全掌控数位身份;分散式帐本使用数位签章,掌控私钥即掌控身份,且私钥由用户自行保管。

存取性(Access)

中心化服务可以轻易限制身份存取;分散式帐本是复制状态机,用户可以于任一节点随时存取身份。

透明性(Transparency)

中心化服务多为闭源专案;分散式帐本大多为开源专案,用户可以掌控软体运作的细节。

持续性(Persistence)

中心化服务有服务中断的风险;分散式帐本多由受到经济激励的节点共同维护,不易中断服务。

自主身份的技术架构

OverviewofSelf-sovereignIdentity

数位身份由识别(Identifier)、验证机制(Authentication)、凭证(Credential)这三个要素组成。

自主身份除了这三个要素,还具备了第四个要素:私钥与资料管理机制(DKMS),这是由于自主身份使用数位签章而有管理私钥的需求。

美国商品期货交易委员会公布关于如何定义加密货币已经交易完成的解释: 美国商品期货交易委员会(CFTC)已经公布了解释说明,关于如何定义加密货币已经从买方“交付”给了卖方。确认交付已经完成的的两个因素是:1. 客户有能力 (i)拥有和控制全部数量的商品,无论是以保证金,还是使用杠杆或其他融资购买,以及(ii)在交易之日起28内,自由地商业使用商品(在任何特定平台内外);以及2. 报价人及卖方(包括各自的关联方或与报价人或卖家合作的其他人士)不保留任何利益或控制任何以保证金,杠杆或其他融资方式购买的商品,在超过自交易日期起计28日后。据CFTC称,提议的解释不是最终的,需要经过90天的公众评议期。[2017/12/16]

自主身份并不是全新的发明?—?许多技术的思路基本上沿用了现有的规格,自主身份真正的创举在于制定一套通用规格:

去中心化识别符(DecentralizedIdentifier,DID),使身份能够以同一标准锚定于不同分散式帐本并且互相通用。

自主身份的四个要素之间具有如上图所示的关系,这些要素形成一个堆叠(Stack)的架构:

最底层的#1负责身份的锚定;

第二层的#2需要和底层的分散式帐本互动及负责用户资料与私钥的储存;

第三层的#3则需要使用第二层的资料以进行用户身份的验证;

成功完成验证后,最顶层的#4则可以发送各种凭证以表明用户的身份。

这种上层依赖下层且同层之间互通的架构类似TCP/IP的七层网路协定?—?各层具有各自的协定与规格,且各层之间的运作细节是抽象的。

哪些组织在推动自主身份?

由于自主身份需要一系列协定的紧密配合,因此自主身份的进展有赖于统一的规格与设计良好的协定,这需要由业界组成的非营利组织共同推动与维护。

目前有许多非营利的组织都在自主身份领域持续贡献,例如:

重启信任网路

(RebootingWebofTrust,RWoT)

全球资讯网协会的凭证社群组

(W3CCredentialCommunityGroup,W3CCCG)

去中心化身份基金会

(DecentralizedIdentityFoundation,DIF)

网际网路身份工作坊

(InternetIdentityWorkshop,IIW)

这些组织在近3年来都有非常丰硕的产出。

其中最活跃的应该就属RWoT:自2016年开始启动以来,RWoT发表超过40篇的论文、技术规格与开源程式码;RWoT孕育的技术规格也进一步提案给W3C或者IETF以进行标准化;

DID规格草稿有一大部分是奠基于RWoT的工作成果;甚至连“自主身份”这个词彙也是在RWoT被创造的。

实现自主身份的技术规格

那么自主身份架构中的各层是如何运作的?

1.去中心化识别符(DecentralizedIdentifier,DID)

DID是自主身份技术架构中最底层、也是最关键的一层?—?它负责身份于分散式帐本的写入/读取,其对于识别符的格式以及解析方法都有明确的定义,下列简述几个重要的部分:

DID(DecentralizedIdentifier)

DID是一个由数字与英文字母组成的识别符,其是唯一的且映射至一个位于某个帐本的DID文件。

DID由三个部分组成:格式(scheme)、DID方法(DIDMethod)以及DID方法特化字串(DIDMethod-specificString)。

DID方法将于下一点阐述;DID方法特化字串的产生方式则需于DID方法的规格中明确定义。

DID方法(DIDMethods)

为位于DID中的一组字串,功能为区分每个DID的解析方式?—?每一种帐本都有专属该帐本的DID方法,且其对应位于该帐本之DID文件的创建/解析规则。

例如注册于以太坊的DID会是像did:eth:12345这样的形式,DID方法需要向W3C注册以被解析器辨识。

DID文件(DIDDocument)

分散式帐本可以被想像成一个键值资料库(Key-valueDatabase)?—?DID是键值,它所对应的内容就是写入分散式帐本的DID文件(DIDDocument)。

DID文件包含:代表身份的公钥、验证协定、能与此身份互动的的服务终端等等。

DID解析器(DIDResolver)

协助更上层协定便于查询DID文件,解析器能够针对不同的DID方法进行解析,再将解析结果返回上层,上层协定不需要理会关于文件解析的细节。

DIF针对解析的需求开发了通用解析器(UniversalResolver),如此该解析器只需要部署一次,日后若有新的DID方法被注册,只需针对该方法进行扩充即可。

2.去中心化私钥管理系统(DecentralizedKeyManagementSystem,DKMS)

DKMS是用户使用自主身份的主要介面,除了与底层的DID连接之外,还需提供凭证的储存、私钥的备份等等,任务相当多元。

规格上来说,DKMS可以再细分成三个子层:

DID层(DIDLayer)

负责与更底层的分散式帐本连结以执行DID查询。

云端层(CloudLayer)

负责储存用户的个人资料供上层协定使用,例如可验证凭证。

边缘层(EdgeLayer)

负责管理私钥,同时也是让用户可以使用自主身份的去中心化应用程式(DApp)。

3.DID验证(DIDAuthentication)

目前仍尚未有任何准备成为通用标准的DID验证规格的提案,只有一份RWoT的文件深入探讨了验证流程。

DID验证的任务只有一个:就是让用户证明自己拥有某身份?—?用户只要证明自己拥有跟某个自主身份公钥匹配的私钥即可。

进行验证后便能使不同个体之间建立可信任且更长久的通讯管道,以利更上层协定交换其他资料,例如可验证凭证。

现今存在许多行之有年的验证方式,例如OAuth/OpenID等等。

类似这些验证方法,DID验证也使用挑战-回应循环(Challenge-responseCycle)进行验证:

验证者发出挑战,身份拥有者根据挑战作出回应,验证者再检验回应是否有效。

至于挑战的形式则没有明确的定义,不过我们一定都有回应挑战的经验—我们在登入某帐号前都必须输入的帐号密码就是其中一种挑战的方式。

4.可验证凭证(VerifiableCredential,VC)

VC是自主身份架构中发展最早、也是最成熟的规格。

作为自主身份架构最顶层的协定,它只有一个目的:取代用户皮夹裡的所有证件。

VC是基于密码学的数位凭证,可在不同应用程式间通用,它让身份回归到最理想的状态:身份是完整的且完全受用户掌控的,用户可以依照情境的不同而揭露不同的凭证。

由于所有自主身份都能发行与保存凭证,也就没有身份破碎的问题。

VC包含三个部分:

断言(Claims)

为关于主体的一段陈述,表示之间的关係,例如:代表小明为有间学校的学生。

凭证后设资料(CredentialMetadata)

为有关凭证的其他资讯,例如类型、发行者、发行时间等等。

证明(Proof)

为发行者对凭证内容的数位签章。

在使用VC揭露身份时,要如何避免不会暴露过多的隐私?

可验证陈述(VerifiablePresentation)便是利用零知识证明(Zero-knowledgeProof)保护凭证的进阶规格,细节容笔者于日后令撰文分析。

标签:DIDLANCOSMENTDID币DEFILANCERCOSMIC价格Instrumental Finance

以太坊交易热门资讯
OXD:UBOX DAO教你如何在元宇宙时代捕捉投资机会_ExtractoDAO Bull

元宇宙与DAO 2021年,元宇宙爆火的一年,在扎克伯格这个“最疯狂”的使徒带领下,腾讯、微软、字节等国内外互联网巨头公司纷纷投入进去,元宇宙成为了兵家必争之地,在他们的押注下.

元宇宙:金色Web3.0日报 | 微博上线TopHolder数字藏品平台_Foxdcoin

DeFi数据 1.DeFi代币总市值:1181.3亿美元 DeFi总市值数据来源:coingecko2.过去24小时去中心化交易所的交易量:46.

DAO:别怕 其实Web3.0的世界很安全_ENT

「我钱包里的ETH都没了!」今日,DeFinance创始人Arthur在社交媒体上表示其遭受鱼叉式网络钓鱼攻击.

POLK:金色观察|扒一扒BAYC融资4.5亿美元启动的元宇宙项目Otherside_CHE

YugaLabs今日宣布以40亿美元估值完成新一轮4.5亿美元融资。本轮融资由a16z领投,参投的机构中除了加密货币市场常见的AnimocaBrands、FTXVentures、Coinbase.

ADO:对比Cosmos、Polkadot、Avalanche三大异构区块链网络 真的比比特币和以太坊更好吗?_DIDO币

开放去中心化互联网的承诺正在受到第一代加密网络比特币、以太坊及其变体的性能、可用性和能源效率问题的挑战.

INT:十点路径教你如何成为一个 NFT 圈内人士_WEB3

当前随着BAYC、迪士尼等各种相关的事物持续破圈,互联网世界、投资圈中最火的概念,恐怕就是NFT了.