技术沙龙第四期-分布式身份

洁洁:

我来分享个简单点的

洁洁:

就是did

洁洁:

分布式数字身份的英文缩写

洁洁:

拥有分布式身份不止是人,包括组织,甚至未来也包括物品。这些人或者组织、物品不简单依靠于原先中心化权威机构,无法被拿走或者删除,而且是终身携带的身份。

洁洁:

国际电子技术委员会将“身份”定义为“一组与实体关联的属性”。数字身份通常由身份标识符及与之关联的属性声明来表示,分布式数字身份包括:分布式数字身份标识符和数字身份凭证(声明集合)两部分。

洁洁:

分布式数字身份标识符(DID)是由字符串组成的标识符,用来代表一个数字身份,不需要中央注册机构就可以实现全球唯一性。通常,一个实体可以拥有多个身份,每个身份被分配唯一的DID值,以及与之关联的非对称密钥。不同的身份之间没有关联信息,从而有效地避免了所有者身份信息的归集。

洁洁:

所以每个人都可以拥有多个did

洁洁:

比如这样,不同身份不同did

洁洁:

“声明(claims)”是指与身份关联的属性信息,这个术语起源于基于声明的数字身份,一种断言(assert)数字身份的方式,独立于任何需要依赖它的特定系统。声明信息通常包括:诸如姓名,电子邮件地址、年龄、职业等。

声明可以是一个身份所有者(如个人或组织)自己发出的,也可以是由其他声明发行人发出的,当声明由发行人签出时被称为可验证声明。用户将声明提交给相关的应用,应用程序对其进行检查,应用服务商可以像信任发行人般信任其签署的可验证声明。多项声明的集合称为凭证(credentials)。

洁洁:

这种身份和传统的帐号有啥区别?

洁洁:

这种身份最大的好处是可以证明某个东西是我发的

洁洁:

传统身份可以被盗用,可以根据系统漏洞被仿冒…甚至dba直接往数据库插句话,你都没法否认

洁洁:

did只要守住自己的私钥,没有对内容签名。全网都可以轻松验假

洁洁:

did是怎么做到的呢?

洁洁:

其实很简单。 did生成的时候会生成一个document们的放在区块链上。这个document当中,就有这个身份的公钥。

洁洁:

所以每次发言的时候,把发言内容用私钥签个名一起发出去。

洁洁:

别人就可以轻松认定,这句话是你发出的。

洁洁:

其他人没有私钥是没办法轻松完成这个签名动作。哪怕是dba他也做不到。

洁洁:

所以在区块链的网络当中,私钥是不比当初常规系统中密码更加重要的东西。

洁洁:

现在基于这种特性,最成熟的应用是可验证声明,简称vc

洁洁:

可验证声明(Verifiable Credential)提供了一种规范来描述实体所具有的某些属性,实现基于证据的信任。DID持有者,可以通过可验证声明,向其他实体(个人、组织、具体事物等)证明自己的某些属性是可信的。同时,结合数字签名和零知识证明等密码学技术,可以使得声明更加安全可信,并进一步保障用户隐私不被侵犯。

洁洁:

这是一张大致示意图

洁洁:

像现在的绿码应用,其实是很容易钻空子

洁洁:

用上vc就可以轻松解决这些问题

洁洁:

目前w3c对这种身份做了定义

洁洁:

分散标识符(DID)是一种新型的标识符,它是全局惟一的、可解析的、高可用性的,并且可以通过密码验证。DID通常与加密材料(如公钥和服务端点)相关联,用于建立安全的通信通道。DID对于任何有利于自我管理、加密可验证标识符(如个人标识符、组织标识符和物联网场景中的标识符)的应用程序都非常有用。例如,目前W3C可验证凭据的商业部署大量使用分散的标识符来标识人员、组织和事物,并实现许多安全和隐私保护保证。

洁洁:

最后给大家看看did标识的结构是什么样的