其他
大家好!各位长期以来对我们的了解,主要是运营Libra中文社区的团队。但其实我们团队自己也针对于Libra做项目开发,产品名叫做pLIBRA,我们实现的区块链机密保护层基础设施叫做Phala.Network。我们作为初创团队,比较幸运的获得了Web3基金会提供的grant支持。因为有其他想使用Substrate框架开发或想转型到波卡生态的朋友咨询我们申请grant的相关心得,我们决定写一篇文章来汇总下心路历程,希望能帮助到大家!什么是pLIBRA?解决了什么问题首先介绍下我们申请grant的项目:pLIBRA是一个致力于通过可信计算技术保护Libra用户的隐私保护协议,也是Phala.Network的第一个应用。Phala.Network是基于可信计算技术(TEE)的机密智能合约平台,目标是为企业和用户提供机密计算、数据保护的基础设施。我们希望能通过pLIBRA,让大家看到phala.network是如何赋能主流公链、联盟链(如Libra),让他们的智能合约可以保护机密的:在以太坊等公链上,所有交易与计算数据完全公开,无法处理需要保密的商业数据与用户隐私,极大地限制了公链的应用。非许可型的联盟链数据保密能力较强,由于数据只在联盟内共享,可以对联盟外的用户设置数据访问权限。但由于数据可被复制,信任问题依然存在:联盟内成员可能有意或无意的泄密;当成员之间不希望完全共享数据时,依然需要引入可信的第三方执行业务逻辑;数据到期无法有效销毁,留下安全隐患。而拥有27亿Facebook用户基础的Libra主网,一经推出就在全球科技、金融行业引起了巨大轰动。一方面是FB给区块链带量能力实在恐怖,另一方面因为FB的种种历史丑闻导致用户、政府对其不可信。因此其用户隐私数据保护一直广受诟病:比如Libra主网的地址与Calibra钱包KYC的信息之间的绑定关系,如何保证不被泄露?如何放心的在Libra上使用智能合约、Dapp而不会担心数据被滥用?pLIBRA产品正是针对这一刚需场景设计的。为了解决以上补足,我们引入了可信计算技术,结合硬件可信计算环境(TEE)为公有以及联盟链提供可靠、高效的数据保密计算层。pLIBRA跟Substrate的关系是什么pLIBRA的底层公链Phala.Network建立在Substrate上。Phala.Network是一个区块链-TEE混合架构,来自TEE的数据会经过区块链的公开验证,从而保证系统的安全性。因此在项目初期我们既可以选择在已有公链上实现智能合约,也可以选择创造自己的公链。最终经过权衡,我们选择了在Substrate上建立公链。我们首先排除了智能合约方案。Phala.Network链上的核心逻辑是验证远程验证证明(一种x.509证书),但对于以太坊等公链上的智能合约而言,验证逻辑过于复杂,执行开销过大,因此这种方案不现实。Substrate提供了解决上面问题的方案,它模块化的实现了区块链的全部公共部分,包括网络层、共识层、无缝升级与治理等,从而我们只需要专注业务的开发。专有公链可以突破资源限制,也可以利用Rust丰富的开源生态,实现许多在EVM上无法想象的逻辑。pLIBRA与Phala.Network的愿景是为Web3.0生态提供数据保密功能,与其他链的互操作必不可少,为此我们需要借助Polkadot的跨链能力。Substrate是Polkadot的“御用”开发平台,未来会帮助我们以最低的成本,成为平行链并接入Polakdot。用Substrate开发是一种什么样的体验Substrate提供了一套十分友好的开发工具,并且配套的生态基础设施也十分丰富。稍微有一点基础的开发者都可以跟随教程,在一个小时之内启动一个简单的链。Substrate提供了丰富的模块供开发者直接使用,例如常见的Token、抵押、投票等。Substrate已经有了一套完整的基础设施,不需要编写代码就可以在Substrate