BTC
ETH
HTX
SOL
BNB
查看行情
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt

如何给区块链打上马赛克?

麦子钱包
特邀专栏作者
本文约7182字,阅读全文需要约11分钟
5月8日晚7点,麦子钱包举办了 Math Show 的第三期,有幸邀请了 Phala 隐私网络 CEO Marvin 讲关于「如何给区块链打上马赛克?」,主持人是 PolkaWorld 联合发起人庞晓杰,以下是当晚的精彩撰录。
AI总结
展开
5月8日晚7点,麦子钱包举办了 Math Show 的第三期,有幸邀请了 Phala 隐私网络 CEO Marvin 讲关于「如何给区块链打上马赛克?」,主持人是 PolkaWorld 联合发起人庞晓杰,以下是当晚的精彩撰录。

Marvin:

我们团队比较早期便加入波卡,在去年5月份经过姜老板介绍开始使用 Substrate,所以我们和 Acala、达尔文等波卡项目也都是好朋友,都是 ala 系列的。

Phala 的特殊之处在于 Phala 的落地产品以及如何分发代币。中本聪的思想被发扬光大后,就来到了2018年,那时候我还在打工,尹航刚刚完成了 BitcoinGold 的启动和研发,我们发现了区块链的问题。

大家都知道,比特币是第一个也是最广为人知的去信任通证,主要用区块链来解决双花问题。以太坊则是扩展交易脚本、执行任意的逻辑、去信任智能合约。但只要用了区块链,数据就要公开,这导致很多需要数据保密的应用无法上链。

因为全公开、透明,所以限制了很多应用场景,敏感信息不能上链,比如以下这几种就用不了:在以太坊开发一个人和人玩的网游、做一个策略保密的 defi 合约、想要用户在区块链上身份验证。所以到现在为止,区块链99.9% 的项目落地都很艰难。为了解决这个问题,我们开始寻找解决思路,现在有多种隐私保护技术,分别能实现不同程度的保护,我们常常给隐私保护技术分成三个世代。

第一代技术的典型代表 Zcash 和门罗币,他们通过零知识证明、环签名、保密转账等技术实现了交易的隐私保护,他们的技术可以保护原生币的交易隐私。

第二代技术的典型代表是 Aztec,一个以太坊上的隐私协议,采用和 Zcash 类似的技术,可以为任何 ERC20 代币实现交易隐私。第二代技术是第一代的扩展,不过他们都只能实现交易隐私,如果涉及到图灵完备的智能合约就无能为力了。

总结一下:基于零知识证明可以实现匿名交易、有点逻辑的转账的隐私化保护,但是这远远不够。

第三代技术,我们希望把“隐私保护”的概念拓展成“机密保护”,隐私不仅指用户的交易隐私,更应该能保护智能合约中的任何机密数据不被泄漏。目前的智能合约技术,所有数据都必须完全公开,而我们希望“机密智能合约”(Confidential Smart Contract)可以如同以太坊的图灵完备智能合约一样,可以进行通用的计算,但不必暴露机密数据。

目前机密智能合约技术可以通过多方计算(MPC)与可信执行环境(TEE)实现。前者基于同态加密、零知识证明等纯密码学技术,不依赖硬件,可以高效率地应用在一些特定领域,例如可验证随机数、分布式密钥生成等,但在通用计算上有平均一百万倍的性能损失。后者基于可信计算硬件(主要是 Intel 的 CPU),但已经可以实现非常高效率的通用计算。

Phala.Network 选择了可信计算方案,致力于实现保护机密数据的、通用的图灵完备智能合约。

TEE 是什么呢?

其实就是使用硬件设计,实现一个硬件的可信第三方(trusted third party,TTP),它能够接收来自多方的隐私数据输入,诚实的执行既定逻辑,再反馈结果。这个硬件方案已经被成千上万的设备所拥有了,这就是 CPU 的 TEE(可信执行环境)。

听起来很高大上?其实每个人的手上可能都有这样的可信硬件。

比如 iPhone 的指纹功能。iPhone 有一个芯片专门做指纹验证和存储。从外部完全无法干涉整个验证流程,或者读取任何验证数据。芯片只会告诉 app 开发者一个“yes”或者”no”。而开发者只要能证明这个验证环境是完整的,便可相信指纹验证的结果。

这套东西和区块链有什么关系呢?

Phala 相当于使用这些设备中的 TEE 环境作为隐私基础设施,通过区块链调用起来,使其可以为区块链提供隐私算力,实现保密智能合约的功能。

除了数据保密能力,我们还有两个优势。第一是合约级的并行,因为非拜占庭,我们不用通过每个节点共识一次实现去信任化,可以实现极高的性能。第二个是天生支持跨链,Phala 的合约是并行执行的,需要配合智能合约之间的互操作协议实现相互调用。这个互操作协议不仅可以用于合约之间,也兼容多种跨链方式(Phala 上的转接桥、波卡的 ICMP 协议等)。

总结一下,Phala 包含一条主链与可信硬件矿工网络,未来会争取成为波卡的平行链。合约在可信节点上并行地执行,开发者以合约的形式部署转接桥与 Dapp 在网络之上。其中,主链提供了跨合约、跨链的调用,矿工提供了算力,转接桥实现了和外部区块链的通信。

波卡有这么几个标签:

是否用 substrate 开发地

是否会成为平行链

是否获得波卡大使

是否入选 Parity 的 Substrate 建设者项目

是否入选波卡轻白皮书

是否获得了 Web3 基金会 Grant

是否入选了 Web3 训练营

Phala 全部符合以上筛选标准,可以说是和波卡生态紧紧绑定了,我们希望能够为其他波卡平行链提供给区块链打马赛克的服务。

当然,现在区块链很多很多只有协议,只有币,只有链,所以我们基于 Phala 实现了一个帮助普通网站、app,帮助普通用户保护和管理自己隐私数据的产品,叫作 W3A (Web3 Analytics)。

数据是当今一切商业行为的基石,效率的提高、科技进步、产品体验的提升,都来自于对数据的炼金术。然而时至今日,数据的交易依然很难达成。

1、数据由用户产生,而如今数据的收集与利用早已被互联网公司垄断,他们通常拒绝或以高价出售数据。

2、数据可被复制,因此交付原始数据困难重重,一方面原始数据包含敏感信息,另一方面数据容易被二次贩卖。

为了填补供求之间的空白,不仅需要让用户取回数据的所有权,还需要存在一个无需信任、可以安全交易数据的渠道。互联网公司中,数据都是由产品内的 SDK 上报至后台,用于商业分析。因此 Phala 推出了 Web3.0 下的数据收集解决方案,Web3 Analytics。

我们可以看到,在数据收集分析领域,谷歌占有绝对的话语权,那么托管给谷歌去分析自己 app 的数据,让谷歌持有自己的数据,安全吗?

所以,我们通过 W3A 想改变这个现状,实现去中心化的数据收集、分析和交易平台,可以作为 Google Analytics 的去中心化升级,帮助 Web2.0 与 Web3.0 应用以极低的成本接入 Phala Network 数据交易市场。

我们调研过很多区块链项目,都使用了谷歌分析,这是被环境所迫的,因为现在没有这样的产品。

W3A 的功能包括:

– W3A-SDK:在端到端加密的前提下实现事件追踪(埋点),接入成本极低,仅需粘贴一段脚本,就可以实现 Web 端与移动端接入。

– 用户数据控制台:用户可以通过控制台管理、下载、删除个人数据,并可以管理访问授权。

– 开发者数据面板:内置大量常见的数据分析合约,提供可视化面板,并展示给开发者。

– 数据广场:市场化数据买卖,提供数据联合分析功能,允许使用内置分析模版或自定义分析合约,在获得用户授权后完成分析与支付结算。

这个产品已经上线了体验测试版,但是去中心化版本需要 Phala 主网上线后才可以真正运转起来。

有人会问,把 Web2 产品的后端改造成 Web3,是不是成本很高?有人用吗?

答案:不是!只需要几行代码,你就可以体验 Web3.0 的数据分析,大概1分钟左右的接入成本。

产品有了,那么 Phala 的通证有什么用呢?

数据交易是 Phala Network 的核心能力,Phala 将会捕获数据价值以及链上资源价值。

如图所示,在此流程中需要被商业购买的行为:

– 数据交易结算:Phala 通过智能合约实现了隐私数据的管理、分析与交易,数据分析师必须支付交易款项。

– 可信计算资源:交易中用到的可信计算算力、链上状态、链下存储等资源,均需要在 Phala 网络结算。

PHA 将会捕获这些业务价值,当然,POS 治理、社区治理也需要 PHA 来实现。

PHA 的经济设计是什么样的?

Phala 的代币,PHA 的初始分配采用了激进的分发策略,通过把80%的 PHA 分配给目标用户,实现增强产品 / 市场契合度(Product-Market Fit)、鼓励社区早期参与者并保证基础开发稳定进行。

首先,70%的 PHA 是挖出来的,那么谁来挖?就是提供隐私算力的 TEE 矿工、数据所有者(你们在座的各位)、数据开发者(Phala 开发者)。挖矿奖励释放和比特币很像,最开始最高,逐步衰减,另外我们还会根据挖矿产出通过合约实现动态算力调整,如下图:

除了挖矿,我们还有9%的 PHA 是通过锁仓 StakeDrop 形式发放的,因为 Phala 致力于成为 Web3 时代的隐私层基础设施,为了让更多人参与这场“觉醒”,我们给想要参与这场社会实验的每一位观众 PHA 作为入场券。Phala 是波卡生态,当然以波卡优先。

为了这场觉醒,Phala 一共设计了3轮 StakeDrop:第一轮面向 KSM 用户,第二轮面向 DOT 用户,第三轮面向 FIL(暂定)用户,并为此准备了共计9000万 PHA 。

在参考了 Edgeware 的 LockDrop、NuCypher 的 WorkLock、Rocco 的 WarLock 机制之后,我们觉得 LockDrop 很不错;而鉴于在 Kusama 网络无法使用智能合约实现锁仓,我们开创了一个全新的形式:StakeDrop 。参与者通过抵押手中的 KSM,提名给白名单中的验证节点,以获得 StakeDrop 点数,最终会根据 StakeDrop 点数兑换 PHA。我们不希望社区 StakeDrop 的价值被主网时间限制,因此 StakeDrop 的 PHA 在 Phala 主网上线前以 ERC20 代币的形式分发。我们将通过开源脚本持续监视记录 Kusama 链上抵押情况。若参与者的抵押符合我们的要求,则抵押期满之后,参与者可以在以太坊上领取释放的 PHA。

你们会说,为什么不直接用智能合约锁仓?

因为现在 Kusama 上没办法部署 KSM 交互的智能合约,所以先用这个办法实现好的效果。

这么设计,有三个好处:

1、无机会成本:抵押 KSM,可同时获得 KSM 的抵押收益和 PHA。

2、超低门槛:10 KSM,抵押满30天,傻瓜式操作,即可领取。

3、安全可靠:经过 Phala 官方筛选的 KSM 白名单节点,收益有保障。

什么时候开始呢?快照时间是5月15日到8月15日,因为最少要30天,所以大家一定要在7月15日之前抵押。抵押对象:Phala 白名单验证阶段。这个我们在材料中会给出列表,Phala 也会制作抵押工具。我们的合作节点基本上覆盖了国内外的主流波卡节点,感谢 Hashquark、猎币、麦子钱包、Nodeasy、Polkaworld、SSSnodes 几大中国节点对此次活动的大力支持。

这个就是核心了,我们预估每100 KSM 对应时间、PHA 的收益参考。

什么叫全网点数占阙值的比例?

就是我们理想预期是有270万个 KSM 参与这个抵押活动进来,实际参与量/270万 KSM,就是这个比例了。如果到时候超过270万 KSM,我们就从后面 FIL StakeDrop 的部分多挪过来给 KSM 的持有者。还是那句话:波卡优先。

大家可能问,抵押多长时间合适呢?这个要看个人需求,很多人想高位套现 KSM,我们也考虑到大家的需求,所以我们是支持“断点续传”的抵押机制。抵押时间与收到的奖励不是线性的,而是指数上升的,假设投入100 KSM,抵押30天,断掉前和重新抵押的都是白名单验证人,则奖励仍然是 100 KSM × 30天。但是假设你第1-29天抵押了100 KSM,第29天取消;后来从第31天开始抵押到第33天,但 NPoS 分配了100 KSM 给你的白名单验证人,奖励是白名单验证人收到的100 KSM × (29+2)天。另外人性化的部分是我们不希望有些 StakeDrop 会扣本金利息,所以大家抵押 KSM 的收益一样能领。

如果我同时抵押给了白名单验证人和非白名单验证人,怎么计算奖励?

如图:粉色点是普通的验证人,白色圈内是白名单验证人,绿色点是你的实际提名。

假设投入了100个 KSM,抵押30天:

如果90 KSM 抵押给了白名单验证人,10 KSM 给了非白名单验证人,则只会获得90 KSM * 1个月的奖励。

为什么这样做呢?因为我们考虑到有的非白名单节点的收益可能会高(波卡的收益计算十分动态)。

庞晓杰:

观众提问,矿机为什么卖这么贵?

Marvin:

我们其实不卖矿机,因为 Phala 不像很多项目那般会指定矿机,只要任何人有16年后的英特尔处理器电脑,主板支持 SGX 开启,就可以来挖。然而一般家用电脑最便宜也要3000元,所以我们自己找了一个比较便宜的主板,做了一个配置表,帮助社区粉丝组装电脑,相当于卖一个组装手工费。

至于为什么我们近期平均每台涨价200元,是因为最近受新冠肺炎影响全球休克歇业。特别是韩国、题本、菲利宾都受到了比较大的影响。导致全球 DDR 和 NAND FLASH 的价格暴涨,所以整体每个哨兵主机都有接近200元的价格上浮。

至于为什么单台哨兵明平均显价格高于集群,一是我们集群采取薄利多销的策略,也鼓励大家购买集群。二是,集群相对外观结构件的成本更低,以及分摊的销售成本、售后保险更低。

还是那句话,能免费获得 StakeDrop 就不要花钱买币,自己有闲置电脑就不要买币、买矿机。

庞晓杰:

观众提问,目前比特币交易虽然和真实身份的关联相互隔断,但是也可以通过地址ID、IP等可以追查到账户和交易的关联性,由此分析出现实情况下具体某个人的身份信息。请问区块链世界如何尽可能的保护企业和个人不想公开的个人信息?

Marvin:

首先,ip地址是从哪里获取的?其实每个网站、app 都一定记录下来大家的地址,所以你只要用了交易所、钱包,就会留下痕迹。

第一种办法,只用链上动作完成交易。

第二种办法,推动这些更能保护隐私的产品,使用 Phala 的 W3A-SDK 来收集数据,就可以做到只要你不同意,没人能动你的数据,只要你同意,他们就得在你的授权范围内使用。

庞晓杰:

观众提问,昨天阿里云被成功攻击,这种情况非常少,阿里的防护能力是有目共睹的,但是也在昨天也未能幸免。随着技术的提升,攻击能力势必会越来越大,作为隐私守门人的 Phala 该如何应对?何去何从?

Marvin:

大家要区分服务器(机器)、服务端、数据库、链上数据这几个概念。服务器被攻击是因为数据存在了保险箱,而保险箱密码被人管理,如果数据的钥匙在你自己手里,只有你自己能解开呢?

这种架构中,即使黑客攻击阿里云也没用,因为破解出来的都是加密后的数据。攻击 TEE 芯片呢?目前在严格的实验环境内有一些破解论文,但是英特尔采用了很巧妙的升级方法,只要矿工的 TEE 不更新补丁,他就会被 Phala 拒之门外,保证了不少安全性。另外,Phala 网络的价值就在于不依赖英特尔的 TEE 环境,也可以支持 AMD、ARM 等芯片的标准,因此比中心化云服务更安全。

庞晓杰:

观众提问,目前市面上也有很多的隐匿币,例如 XMR、ZEC、Dash,每个都有自己的算法与优缺点,想问 Phala 能冲出来的机会在哪呢?

Marvin:

这部份,在刚才的王婆卖瓜环节有所分享。总体来说,XMR、ZEC、Dash 提供的都是匿名币服务,而 Phala 提供的是隐私智能合约服务,就像比特币和以太坊的区别。

庞晓杰:

观众提问,Phala 的流民主机制很有新意,可以再具体说说嘛?它与当前流行的节点委员会治理(比如 EOS)有哪些优势?

Marvin:

我们觉得波卡的 NPOS 机制创新性十分厉害,所以共识和治理框架参考了很多波卡的设计,然而在三个点上,我们有独特的创新:

– 匿名投票,我们将使用保密合约完成投票,因此民主的匿名性可以保障

– 流民主投票机制和算法,充分提高投票参与率

– 将委员会改制为 DAO,提高开放程度,并通过抵押制度保证决策层的利益与社区绑定

匿名投票就不说了,只是 Phala 擅长做的事,我们讲讲流民主。

流民主起源于Bryan Ford 在1884年发表的论文《Delegative Democracy》,即针对某个议题,可以直接投票,也可以把投票权委托给一个代表,再由这个代表投票决定这个议题。

发现流民主的一个应用例子是 Google 员工通过 Google Votes 决定今天吃什么,如果某人不知道今天要吃什么,他先把决定权委托给口味相近的同事,再由这个同事决定今天吃什么。流民主的优点在于对直接民主和间接民主的折衷,既保证了足够真实、纯粹的民主,也提高投票率、能够专业、理性去解决问题。但是流民主的执行过程非常复杂,需要频繁的、实时的统计投票权。比如我和阿清臭味相投,我就可以委托她帮我投票,而且我不喜欢她时可以随时撤回,她还可以把我的票再委托别人,比如小杰,晓杰可以把我们委托的票再委托给 gavin wood,一次次传递。

但是为什么没有区块链项目这么用呢?因为链上性能问题,在流民主中,其委托关系是一个树,为了计算和更新每个节点的投票数,每次投票都需要对这个树进行先序遍历或后续遍历,其时间复杂度为O(n)。

这部分的实现技术在传统区块链中较为困难,因为流民主的计算数据庞大导致区块大小有限、gas 手续费高昂。而在 Phala 协议中,我们将采用 TEE 计算方式来解决性能问题,同时保障流民主的隐私。

另外呢,就是我们会把刘民主用在投票中,但是提名逻辑还是参考波卡的,只不过我们会尽量做到匿名化。

庞晓杰:

观众提问,作为节点服务商想参与进来的话怎么参与,方便跟我们说说 PHA 的节点模式与节点搭建方法及节点的收益分配方式吗?

Marvin:

目前 Phala 的节点配置要求其实没有确定,但是大致如下:

– 支持 SGX 的 CPU

– 其他配置与 Kusama 类似

搭建过程,我们会写成教程在测试网发布后公布,请大家期待。

庞晓杰:

感谢佟老板的分享和回答!也非常感谢参与今晚 Math Show #003 活动的“show”友们~

另外,大家也可以参与Math Show发起的“你想见到的那个他/她”活动,推荐并且助力你想在”Math Show”见到的嘉宾,有机会成为惊喜MC与你想要见到的嘉宾面对面对话哦,

链接:

http://mathshow.mikecrm.com/2QEz163

本期 Math Show #003的“show”友会就结束了,再次感谢大家的时间和聆听,我们下一期不见不散。

Polkadot
智能合约
欢迎加入Odaily官方社群