星火·链网-底层区块链平台(BIF-Core),简称星火链,是中国信息通信研究院基于区块链技术打造的一条许可公有链,是实现“星火·链网”这一国家级区块链与工业互联网协同创新新型基础设施的关键技术。
本开发手册为了使开发者更方便地操作和查询区块链,详细介绍了星火链支持的智能合约类型和 JAVA SDK,最后给出了多个智能合约示例,详细描述了部署、调用、查询等操作,供开发者参考和使用。
1. 星火链智能合约概述
星火链实现了一种支持多种智能合约的执行引擎SparkVM,支持多种高级智能合约语言,同时兼容多种虚拟机架构。目前已集成完成V8虚拟机、EVM虚拟机,很快将支持WASM虚拟机。可通过使用JavaScript、Solidity、C++(wasm)进行智能合约开发。
本手册将介绍各种语言的合约的编写环境、编写、编译等相关知识。
1.1 合约开发语言&虚拟机类型
“星火链”目前已经支持使用JavaScript、Solidity进行智能合约开发,每种开发语言实现的合约由不同的虚拟机执行,在将合约发布到链上时通过Contract type来指定虚拟机类型。针对不同类型合约语言,上链数据类型不同。具体的对应关系如下:
语言 | 合约引擎 | 类型 | 上链数据类型 |
---|---|---|---|
JavaScript | Spark-V8 | ContractType=0 | javascript代码 |
Solidity | Spark-EVM | ContractType=1 | evm opcode指令码 |
C++ | WASM | 开发中,敬请期待 |