上周出了一条消息,互联网之父 Tim Lee 发布了一个去中心化的平台,叫 Solid。 这条消息在区块链圈子内,广为传播,消息是这样的:
很多人就会问, Solid 是一种区块链吗? 大家一看到 “去中心化”,便直接关联上区块链,可见前一阵子区块链科普力度之大。
首先,Solid 不是区块链,这毋庸置疑。
其次,这条新闻的标题有两个错误:1. Tim Lee 老人家不是互联网的爹,他是 Web 万维网的爹。互联网的爹是好多人,其受孕、怀胎及生产过程极为曲折,要列出爹来有一长串。2. Solid 不是一个平台,而是一套技术规范。
Solid 是一套基于 W3C 的去中心化技术规范。
按虚岁来说,Tim Berners-Lee 老人家已经 64 了今年。1989 年他设计 HTTP 的时候,目的是发明一个人们协作和交换思想的平台,原本就是要搞去中心化的。但儿大不由爷,Web 后来疯狂生长,早已不是老爷子期望的那样纯洁。
老爷子的不满,主要是针对那些互联网巨头们,比如 Google、Facebook 之流。Tim 认为他们扰乱了互联网的平等,他期待的那个 “人人皆能发声,人人都被听到” 的 Web 理想国,并未实现。 这就好像一个英明君主打下了江山后,给子民们平均了地权,人人有饭吃,过了一阵子再一看,冒出一堆大地主来,还有无数的无地流民,君主就不大爽。
所以多年来,Tim 老爷子一直在努力推动互联网平权。
2017 年,Tim 就行动了,成立了一个创业公司叫 Inrupt,公司在波士顿,看来他从英国搬到美国来了。公司所研发的技术,就叫 Solid。
Solid 是 Social Linked Data 几个字的首字母缩写,从这可以看出, Solid 其实是针对社交网站的技术。
现在,人们用微博,用 Facebook,都需要一遍遍的注册,将自己 Profile 信息录入网站。之后,在使用过程中,自己的喜好、习惯、日程、朋友就都进入了微博与 Facebook 的数据库。这些社交网站,近乎垄断了个人互联网的天下。
这让 Tim 感到愤怒 - 我的数据,凭什么给你 Facebook 啊? 我在设计 HTTP、HTML 的时候,没想养虎为患啊。
而 Solid 就要改变这一切,其思路是,人人都可以拥有一个数据 POD,这个 POD 可以架设在自家的服务器上,也可以由第三方网站托管。
当用户访问网站,比如 Facebook 网站的时候,就不用注册了,只需通过 Facebook 调用自家服务器上 POD 的 URI。 当然需要 Facebook 支持 Solid 协议。这就有点象 OPENID 了,今天我们也可以用 Facebook 的 ID 去登录其它网站啊。是的,有点类似 OPENID, 但 Solid 所用的技术,叫 Webid,是 2000 年 TIM 就设计出来的。webid 不仅提供访问认证,还提供权限控制,控制 Facebook 所能够访问的数据内容。
Webid 协议,基于非对称加密技术,这是 Solid 技术与区块链技术略有些像的地方。
不仅如此,更颠覆的是,当你用自己的 POD 登录了 Facebook 后,你所留下的内容,包括帖子、评论、照片什么什么的,一概不存在 Facebook 服务器上,而是直接送回到自己的 POD 上存储。 每次要看内容, Facebook 都要到你的 POD 去调取信息。
互联网的数据与应用,彻底分开了。这就是 Solid 被称为去中心化的原因。
但这个去中心化与区块链完全不一样。 Solid 只是将互联网应用与数据的统一中心给拆分了,Solid 并不负责数据的一致性问题。
Solid 所构建的网络,并非 P2P 网络,P2P 的精要在于众多机器们,平等的共享各种资源。而 Solid 只是数据的互联协议,实现了数据的去中心化存储。但这种去中心化存储,与分布式存储并不是一个概念,分布式存储追求的是一致性。
Solid 的去中心化存储,可理解为,各人的数据,各人自己存储去,不必一个中心的服务器来统一存储,和包产到户是一个概念。
Solid 规范中,举了一个例子,你在社交网站上对一张照片做评论,那么评论数据就存在了你自己家服务器的 POD 上,这个评论有一个 URI,而且还指定了这个 URI 的 Target URI,也就是评论针对照片的 URI。 代码如下:
这样,当你打开微博后,若是你关注了 100 个博主,100 个博主新发了 100 条消息,那么微博服务器就要去 100 个不同的服务器,去取这 100 条消息。若是 100 条消息下,各自跟了 10 条评论,那么你浏览完毕所有消息与评论,就要去 1100 个服务器取 1100 条信息。这就是所谓 Linked Data,互联的数据。
所以,现在的网络条件是否支持,是个问题。
所以,对于电商网站这样需要做交易的,需要处理事务,依赖关系型数据库的,Solid 就未必适用了。
无论如何拭目以待吧,Tim 老人家要搞的是 Facebook 的巨头们。 而互联网技术也是一个 “去中心化” 的生态,祖师爷出来未必好使,Facebook 之所以做大成为巨头,那也是群众们的选择。Tim 老人家要为群众平权,但群众未必买账,这种故事在历史上,一遍遍的重演。