查看原文
其他

Blockstack 中国负责人 Gavin:通过 DID 标准解决数据孤岛及隐私安全问题

一块+ 一块Plus社区 2020-11-11
嘉宾:Gavin | Blockstack 中国技术社区负责人,底层代码贡献者
主持人:刘吉洋| Rebase 社区负责人


昨晚,一块+、Blockstack 、Spartan Group 组织了一场主题为「 Web3.0:开发者的黄金时代」的线上 AMA,邀请 Blockstack 中国技术社区负责人,底层代码贡献者 Gavin 跟大家分享 Blockstack 对 Web3 的理解以及团队对 DApp 的想法。


以下为 Blockstack Gavin 在本次 AMA 中回答整理。





刘吉洋 :欢迎 Gavin 老师,你是如何进入区块链行业又做了 Blockstack 公链的?

 

Gavin : 大家好,我是 Gavin。我是 Blockstack 中国技术社区负责人,亚洲第一位员工。目前也是浙大的一名硕士,研究深度学习方向。

 

在18年初,我加入了浙江大学的 Bithacks 极客社区,这个社区的大部分成员都是 CS 背景的技术大牛,那是我第一接触区块链方面的技术。Bithacks 社区每周四会有一个技术分享,内容从分布式架构到经济学治理非常全面。


因为我以前有 ICPC 和各种编程比赛的经历,我从高中开始参加程序设计竞赛,对于程序设计、算法方面基本功非常扎实。所以大约半年的时间,我个人对于区块链方面的技术领域就已经有比较全面的了解。


我比较喜欢也很认同区块链项目的开源精神和去中心化的社区精神。相比较区块链技术,我对于区块链更感兴趣的是开放包容的精神内涵。我们技术人员日常接触到的就是项目开源,社区治理公开等等行为。这类特点与现有商业模式下的项目或公司都有很大的不同。这种开放包容的技术氛围可以让我快速成长。


一直以来,我有在开源社区贡献代码的习惯,在这个过程中接触到了Blockstack这个项目,Blockstack 是钻研  Web 3.0 最早的项目之一。


Blockstack 本质上是一个用户控制的互联网软件。为开发人员提供许许多多工具,可以帮助他们开发安全的去中心化的应用。开发者可以在平台上实现简易、快速和安全地开发区块链相关应用。

       


而用户在使用中不会担心隐私数据被滥用,Blockstack 完整的去中心化的计算网络是全球性的,对世界上任何人都开放。

 

在 Blockstack 上,每个用户都拥有专属的私人数据锁柜保存和加密用户信息,保障用户数据安全和不被滥用,用户不再需要相信大公司会尊重和保护他们的个人数据,真正实现无法作恶。

 

同时,Blockstack 也鼓励用户在平台上的各个应用之间分享,打破 Web 2.0 时代巨头平台对用户数据的垄断。


后来发现了 Blockstack 项目以及团队的价值观我非常认可,所以加入到 Blockstack,现在也是他们在中国的第一位员工。


 

刘吉洋 : 我知道 Blockstack 是 Web3.0 架构中一个“全栈”的角色,我的理解是 Web3.0 架构中的组件我都做。有意思的是 Blockstack 称自己为去中心化的计算网络,不像很多项目似乎听起来是以区块链为中心,Blockstack 似乎不是,虽然它用到了。

你可以给用户介绍一下什么是 Blockstack 吗,介绍一下 Blockstack 对 Web3.0 有什么独特的理解吗?


Gavin:  Blockstack 通过对现有互联网基础设施做升级与改造实现用户拥有自己的数据隐私。实现的方法是通过三层的架构设计:顶层的分布式身份、底层的隐私存储、以及中间层的路由层。

BlockstackV1 是没有智能合约的,区块链用于解决去中心化身份的核心字段存储。所以 Blockstack 不是以区块链为核心的,可能由于其发布了代币所以大家会认为这是一个公链项目吧。

 

我认为 Blockstack 对于 Web3.0 独特的理解是:区块链技术本身不复杂而且技术壁垒也远比其他领域(例如人工智能)小,我们要做的是如何通过技术设施的架构与组件的设计来对现有互联网的基础设施进行升级与改造,而不是从0到1的变革。


Blockstack 的全栈架构就是针对现有互联网出现的数据孤岛、隐私安全等问题设计的。Blockstack ID 想要通过 DID 标准解决数据孤岛,隐私存储注重升级现有存储基础设施,解决隐私安全。


刘吉洋: Blockstack 还有很多独特的部分,我们来一个个看。首先是独特的技术架构选择,我感觉是不重新造轮子,用好现有的技术基础设施,比如存储  Gaia,这一部分可以介绍一下吗?

 
Gavin: 为了更清晰地让大家了解隐私存储的问题,我给大家举个例子,比如说你在博客网站上发了篇文章,那这篇文章的数据其实是保存在该博客网站的服务器里的,当博客网站的服务器后台意外崩掉的时候你的文章可能会损坏或者丢失。

而如果你使用 Gaia 的话,你的文章数据会永远以某种格式存储在你自己的服务器中,你可以通过特定的方式将数据找回并重新发布这篇文章。这就是 Gaia 存在的意义。
 
从技术上来说 Gaia 和 Blockstack 的 DID 系统是一起设计的,Gaia 实现了基于 Blockstack DID 体系下的私有数据存储。Gaia 的底层是基于 mongodb 的封装,上层通过身份授权模块实现数据库与 Blockstack DID 的链接。
 
不重新造轮子的部分是 Gaiahub,一个可以部署到任意云服务平台的用户数据存放站。比如现在大家可以使用 Dropbox、亚马逊云来部署 Gaiahub,这样的话就可以实现用户的数据用户自己保管。

由于存储在 Gaia 里面的数据可以是加密的,所以中心化云服务商也是无法获取你的明文数据的。

刘吉洋 :上面说不重新造轮子,但对于智能合约 Blockstack 似乎重新造了个轮子。以太坊算是普及了智能合约的概念,虽然没什么智能,不过这个概念深入人心。

很多新的公链都会支持用以太坊的 Solidity 去写合约,而 Blockstack 发明了一个新的智能合约语言 Clarity,可以介绍一下 Clarity 和 Clarity 的特点吗,另外,为什么不用 Solidity 呢?

 
Gavin: Blockstack 团队对于分布式领域理解要比区块链领域的研究要深入得多而且早得多,早在7、8年前团队内核心成员就已经基于分布式计算甚至分布式二层计算网络(后来衍生出 Layer2)在国际期刊上发表了相关研究。

Blockstack 团队一直没有特别看好智能合约以及后续的衍生品发展。
 
Blockstack 发布新的智能合约的原因是原有 DApp 的计算模式以及商业逻辑受到了一定的限制,而且 Blockstack 分布式身份原有上链的方式是使用比特币脚本,随着 DID 的数据多样化,比特币已经无法容纳未来 DID 的发展需求,所以选择使用原生智能合约来辅助解决这个问题。
 
Clairty 是一个基于 Lisp 的进行修改的语言,比较大的一个区别是 Lisp 本身是解释性语言,不需要编译。在执行检查的过程中可以很好的模拟与预测出某段程序的内存映射,从而给予最真实的反馈。

这点与 Solidity 区别很大,以太坊的核心就是底层虚拟机,所以近年来 Solidity 也好,底层虚拟机也好,多层计算网络也好都在不停的发展。而 Blockstack 核心并不是智能合约,而是一整套的互联网产品升级的方案,Clairty 也是为这整个框架服务的一个组件。

 

刘吉洋 :2020年初,Blockstack 提出共识算法 Stacks 的 2.0 版本,使用传输证明 PoX(Proof of Transfer)代替燃烧证明 PoB(Proof of Burn),社区似乎很买账,代币涨了不少,可以介绍一下这个共识吗?



Gavin: Blockstack 原有 PoB 共识选择燃烧比特币(发送比特币到特定废弃地址)获取 STX(Blockstack 原生代币)的出块概率。

这个过程与 PoW 很像,但是不需要消耗电能,消耗的比特币社区的生态资源(因为 BTC 在我看来是不可再生资源)与比特币的威信(整个 Blockstack 需要信任比特币才会以比特币作为类似电能的消耗资源)。

PoB 的缺点在于对于比特币社区的伤害,因为燃烧的比特币相当于永久销毁。


PoX 在 PoB 的基础上,将燃烧的比特币以一定比例返还给持币用户,返还的方式是直接通过比特币交易分配给每个满足条件的持币用户。
 
但是比特币交易周期长而且有消耗,所以持币用户需要满足流动代币大于系统总流动代币的 0.02%,也就是说一个周期内,最多会有5000个持币用户可以获得这个比特币返还的收益。

这样的话既保护了比特币社区的生态资源,又将持币用户与挖矿联系在了一起,将生态联系得更紧。
 

刘吉洋 : DID 似乎在是 Blockstack 中占据了很重要的角色,可以介绍一下什么是 DID,DID 有多重要,在 Blockstack 如何使用,以及在外面的世界有使用的场景吗?Blockstack ID 绑定 DID 是不是中心化的?

 
Gavin: 想象一个场景,你拿着杭州市民卡可以去医院享受医保,可以去地铁站坐地铁,可以去共享自行车服务站骑自行车等等。

市民卡其实就是一种特殊的 DID,这个身份可以跨越多个服务场景、多个数据源而无需注册身份验证等等步骤就可以享受服务,其原因是多方平台对于这个 DID 的信任而达成的共识 —— 因为这个是政府颁发的有效公民证件。

 

对于企业而言,没有政府这种中心化机构,所以需要制定一种标准。现在大家比较认可的是 W3C 的 DID 标准,Blockstack 也是该标准的贡献机构之一。标准里面包含了 DID 的标识符规范、DID 的可验证声明。

DID 的可验证声明可以跨平台公布,比如说我在 A 平台获得的授权信息可以通过 DID 的可验证声明传递到 B 平台。

那么 DID 的作用就很大了,对于借贷、医疗等等数据孤岛很严重的行业都会有本质上的商业模式的改变。
 
Blockstack ID 对应的 DID 是去中心化的,但是现阶段的可验证声明仅仅在系统内部 DApp 之间达成了共识,与外界的交互还没有成功的案例。这个也是现阶段分布式身份发展的一个共同特点,阻力大进展缓慢。
 

刘吉洋 :来一个非技术问题,这个问题很直接:合规到底是一个 Feature 还是一个 bug。我觉得合规对主流用户是一个很好的广告效应,还有很多益处。

这里我想讨论的是,花这么大的精力去做合规会不会给一个创业公司带来很大的创新阻力?


Gavin: 一定会的。但是为什么我们还坚持花很大的经理去做合规呢?


因为,当一个公司你想建立并维护10年甚至更多的时候,就会权衡行业内的大方向问题与短期内的阻力,合规就是其中非常重要的一环。

 

之前提到了 Blockstack 的路线选择是互联网升级而不是区块链革命,Blockstack 如果想和互联网巨头合作,没有通过 SEC 是绝对不可能的。

 

Blockstack 有一个价值观就是,我们要先把那些困难的事情做好。所以,在技术方面,我们事先把基础层的扩容性问题解决,然后推出了一些开发者的开发工具;在监管方面,我们也是沿用了类似的价值观,比如说我们是美国第一个获得 SEC 批准、能够做公开发行的区块链项目。

 

这就相当于是做一个小型的 IPO 一样。在我们提交的文件中,就包括必要的、有关于 Blockstack 的所有信息,还有一些报表还有相关的披露,所有的人都可以查看。



大家可以将合规性看作是我们的一个竞争优势。因为如果大家关注 Telegram 和最新的 Enigma 的话就会发现,这两个项目都遭遇 SEC 的一些强制执行或者是和解。比如说 Enigma 是要求将投资者的资金退回,而 Telegram 可能会上法庭。


这些都是我们不希望看到的,我们是希望能够完全的合规。这可以说是我们一个独特之处,和其他的很多的项目都不一样。

 

由于我们的合规做法,所以就这个阶段而言,我们的通证是没有办法在美国的市场进行交易的,我们也正在努力看怎么解决这个问题。


就通证的交易情况来说,主要是在美国外的市场进行交易,我们也上了一些交易所,包括币安和一些其他交易所。另外,我们现在也致力于扩大项目在国内市场以及海外市场的知名度。

 

刘吉洋 : 回到应用层面,我曾经浏览过基于 Blockstack 开发的 DApp,看着很开脑洞,可以展示几个有趣的 DApp 吗,最好展示一下这些 DApp 如何实现了 Web3.0 的愿景,以及如何发挥了 Blockstack 的优势?现在已经上线的 DApp 中,有没有用到智能合约的?


Gavin: 一个去中心化博客(https://app.sigle.io),数据存储在你自己的 Gaiahub 中。不用担心中心化数据库崩掉的情况,如果出现了,可以使用小工具直接从 Gaiahub 把文章提取出来并且重新排版导出文档。


这个非常小的例子有两点值得大家回味,第一点是去中心化应用其实已经被智能合约类占据了太多,但是智能合约类的应用的缺点相信开发者都知道,太慢了。


但是 Blockstack 的架构会使得其应用与现阶段互联网的应用效率相同。这就是Blockstack 想迈出的第一步,让人们接受数据隐私并且不影响他们日常的生活。

 

第二点是 Gaia 可以非常灵活地解决日常生活中应用产生的数据,从而实现未来 Web3.0 的初级形态。智能合约距离普通群众还是太远了,因为壁垒太多了。

 

因为智能合约的开发是在 StackV2 阶段,预计会在3月末4月初会上线测试网,所以上线的所有 DApp 没有使用过智能合约。

 

刘吉洋 : Blockstack 一直在使用 App Mining 激励开发者开发 DApp,最近看到 App Mining 计划停止了,我觉得停止也合理,因为很难去给 DApp 排名,容易作弊。这块你如何看?

另外这也引出了我的另外一个问题,就是不能让开发者发币,那就没有激励的媒介了,所以我觉得平台应该提供开发者发币的能力。这点你如何看?


Gavin: 近一年来 Blockstack 生态的应用数量由原来的20个变成了400个,这个 App-Mining 一定在其中起到了很大的一个作用。
 
但是近几个月头榜的应用质量在某些评判标准下并不高,所以我们团队打算重新制定规则,重新规划一下后续的社区激励发展。
 
Clarity 可以写 Token 的逻辑,你写过 Solidity,应该了解的,Blockstack 官方也会出类似的 Token Template 提供给社区。
 
至于平台应不应该激励或者禁止开发者发币,我认为 Blockstack 团队在未来的一段时间会致力于将社区去中心化,所以这个应该也不会强制性采取措施。

刘吉洋 : 个人开发者如何参与 Blockstack 的开发,以及你觉得 Blockstack 这个平台对于不同技术栈的开发者的机遇在哪里呢?


Gavin: 我觉得有3个优势。

首先,第一点是 Blockstack 的技术栈非常适合互联网开发者,开发的组件让你一点也找不到区块链的痕迹。
 
然后,第二点是因为 Blockstack 的产品相比较重智能合约的应用更能让普通人接受也更易于传播。效率快、身份系统很容易理解,这些特点是现阶段去中心化应用不具备的特点。
 
最后,第三点就是针对中国的开发者或者团队。Blockstack 的在中国的应用生态还处于早起阶段,先起步的团队总会有一些优势,比如更快地获得更多中国区的激励份额,也会有更多的机会接受顶级基金的孵化等等。

并且新的激励计划很快就要来了,亚洲也会有相应的基金会扶持,机遇应该就是我说的以上的这些吧。

目前 Blockstack 非常适合程序员快速参与进来,个人参与 Blockstack 的开发其实也很容易,学习的方法大致有两种——
 
1. 通过看书、阅读白皮书、网站等搜集足够多的资料,再自行汇总和连接起这些知识,整合成一个较为完整的知识体系。

例如:https://docs.blockstack.org/ 里面会教你怎么开发简单的应用,复杂一些的需要去看其他应用的源码来学习。
 
2. 找一个在区块链领域足够专业的人,为你理清基础的知识点,搭建一个学习框架,然后再不断地进行补充性学习,往这个框架里填充。
 
由于 Blockstack 相关的信息较为零散,尤其是技术内容,因此第二种方法效率显然更高。
 
在这里简单介绍一下由我和一块链习共同打造《 Blockstack:从开发入门到技术实战》训练营课程。第一期将于3月15日也就是本周日开班,不收学费,只为了让更多的开发者更了解 Blockstack,从而更好的参与进去!

       
每周学习两节课程+课后练习两次代码作业。在1个月的时间里,从了解 Blockstack 必须要知道的基础概念再到实战代码演练。

并在课程尾声举行线上的班级小组 Hackathon 实战挑战赛,帮你从 0 到 1 搭建去中心化存储框架及应用框架,并且充分掌握 Blockstack 技术栈,构建属于自己的去中心化应用。
 
我们虽然不收学费、课程费,但为了保证大家的学习效果,有这样一项费用:


    

现在很多人喜欢的学习方法大概就会是这样:找到1个社群,一起来做一件大家都感兴趣的事情。
 
我们要做的事情就是:第一期,招募一个50人的小班社群,大家一起来学习《 Blockstack:从开发入门到技术实战》课程。感兴趣的同学可以扫码,或者点击「阅读原文」报名了解,并参加!

本次活动由一块+和 Blockstack ,Spartan Group 联合举办,非常感谢合作伙伴 CypherJump 的支持,感谢区块律动、金色财经、碳链价值、星球日报、巴比特、陀螺财经、鸵鸟区块链、橙皮书、加密谷、UniCoin、博链财经、世链财经等媒体,以及链节点、Rebase、BTCU、币乎、DeFi Labs、巴韭特、密码极客、野花说、无涯、币扑、HashBang、DoraHacks、BitRun 等社区的大力支持。
更多阅读:| 郑重告之:Blockstack 开发实训营第一期学员招募    正式启动!Blckstack 首期课程介绍:从开发入门到技实践
| Substrate,帮你构建自定义区块链的库

扫码关注公众号,回复“1”加入开发者社群

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存