编者荐语:
面对多样简单利用场景的全新挑战,实用 FISCO BCOS 的智能合约语言 Liquid 提出新思路,从平安、性能、体验及定制能力登程,助力更便捷地实现业务需要,该语言已全面开源回馈社区,并在社区中成立智能合约编译技术专项兴趣小组,欢送大家共建我的项目。
以下文章来源于微众银行区块链,作者回复 Liquid 可下载 pdf 文件
关注公众号并回复【Liquid】
获取全文高清 PDF
2020 年 4 月 20 日,国家倒退改革委首次明确新型基础设施建设(简称新基建)的范畴,将区块链视为新基建的核心技术和自主翻新的重要突破口。在近期公布的国家“十四五”布局大纲中,区块链也被列入数字经济重点产业,迎来倒退“加速度”。具体到产业内容上,大纲明确指出推动智能合约、共识算法、加密算法、分布式系统等关键技术的翻新。
作为连贯区块链底层技术与事实业务的枢纽,智能合约在推动分布式应用凋敝倒退的过程中扮演着重要角色。而在智能合约的开发过程中,其编程语言是开发者表白业务逻辑的形象工具,也是构筑分布式应用的重要基石。
目前,业界已有 Solidity 语言、Move 语言及 DAML 等常见的智能合约编程语言。然而,一直多样化、复杂化的利用场景给智能合约编程语言提出全新挑战:进一步器重数据隐衷,智能合约下辖的数据需可能明确权限归属;分布式、不可篡改的执行环境要求智能合约具备更强的鲁棒性;日渐扩充的服务规模要求智能合约可能更加高效运行;为了晋升开发效率,开发过程须要对开发者更加敌对;不断涌现的跨链等新型计算范式要求可能间接提供原生形象。常见的智能合约编程语言在这些方面均存在不同水平的局限性,制约了分布式应用的进一步倒退。
微众银行区块链着眼于现有挑战,联合在区块链底层核心技术以及分布式商业利用落地的摸索实际,提出涵盖平安(Security)、性能(Performance)、体验(Experience)及定制能力(Customization)四个方面的“SPEC”智能合约编程语言设计规范。
在“SPEC”设计规范的根底上,微众银行区块链推出全新的智能合约编程语言 Liquid。
在平安方面,Liquid 反对应用加密原语对数据进行隐匿,从而确保数据安全性;反对在智能合约的编译期及运行期全方位进行平安检测,从而晋升逻辑鲁棒性。
在性能方面,Liquid 通过优化执行引擎并联合并行化等技术,让智能合约的执行效率获得长足进步。
在体验方面,Liquid 提供丰盛的周边工具及资源,让智能合约的开发过程麻利晦涩。
在定制能力方面,通过宏扩大技术,Liquid 可能在语言层提供分布式合作、跨链协同等编程模型,帮忙开发者更加便捷地实现业务需要。
本文致力于以区块链智能合约为钻研对象,对智能合约及编程语言的基本概念、存在的问题以及钻研现状进行系统性梳理,并介绍 Liquid 的设计理念及要害实现细节,供智能合约开发者交换探讨。微众银行区块链秉承多方参加、资源共享、敌对合作和价值整合的理念,将 Liquid 我的项目齐全向公众开源,并在 FISCO BCOS 开源社区中成立了智能合约编译技术专项兴趣小组(CTSC-SIG),欢送宽广企业及技术爱好者踊跃参加 Liquid 我的项目共建。