Page 123 - 《软件学报》2026年第1期
P. 123
120 软件学报 2026 年第 37 卷第 1 期
太坊在区块链领域的影响力巨大, 许多区块链软件直接或间接采用了以太坊的技术框架. 其次, 围绕 Solidity 语言
的开发资源和工具链相当丰富, 活跃的开发者社区提供了大量的学习资源和支持, 使得该语言在智能合约开发中
占据了重要位置. 其次是 Go 语言, 其支持量仅次于 Solidity. 这主要归功于 Hyperledger Fabric, 这是一个在企业级
区块链领域广泛应用的框架, 具有较高的影响力. Fabric 的许多核心模块和功能都是使用 Go 语言开发的, 因此在
国产的区块链软件架构中, 往往能看到 Fabric 的影子. 此外, Fabric 还支持使用 JavaScript 和 TypeScript 开发链码
(即智能合约), 这进一步扩大了它的适用范围和影响力. 随着区块链技术的发展, 对性能和可扩展性的需求日益增
加, Java 和 C++这两种传统编程语言也被越来越多地用于开发智能合约. 这两种语言在处理大规模数据和高并发
场景方面表现优异, 尤其是在需要跨平台部署的应用中, 它们的优势更为明显. Java 和 C++的技术成熟度和广泛的
开发者基础, 也将使它们成为智能合约开发的热门选择.
现象 18: 一些小众的智能合约编程语言也得到了国产区块链软件的支持. 例如, Scala 作为一种在大数据处理
领域颇具影响力的语言, 广泛应用于如 Spark 这样的框架中. 随着区块链与大数据技术的逐渐融合, 支持 Scala 使
得区块链能够更方便地与大数据技术整合. Swift 则是苹果公司开发的编程语言, 在苹果的生态系统中有广泛应
用. 随着区块链技术在移动端的发展, 支持 Swift 有助于区块链应用与苹果设备上的软件进行无缝集成与交互.
见解 7: 随着对性能和可扩展性需求的上升, Java 和 C++作为传统编程语言, 越来越多地被用于智能合约开发.
这两种语言在处理大规模数据和高并发场景中表现优异, 表明市场对高效能解决方案的需求正在推动对区块链项目
这些成熟技术的关注; 一些小众语言如 Scala 和 Swift 的引入, 表明区块链技术正在与其他领域 (如大数据和移动端
应用) 逐步融合. 这种趋势不仅扩大了区块链技术的应用场景, 也为开发者提供了更多选择, 增强了市场的多样性.
3.4.2 合约执行引擎
智能合约执行引擎是智能合约系统的核心组件, 负责读取、解析和执行智能合约的代码. 它根据预定的规则
和逻辑处理输入数据, 进行相应的计算和状态更改, 并最终输出执行结果. 国产区块链软件中所使用的合约执行引
擎可以大致分为 4 类: 虚拟机类、容器类、新兴格式类以及其他类型. 每种类型下包含的具体执行引擎以及对应
的区块链软件如表 8 所示.
表 8 智能合约执行引擎分类
执行引擎类型 具体执行引擎 区块链软件
蚂蚁链, 长安链, 百度链, 趣链, 天河链, FISCO BCOS, 星火链, 树图链, BSC, Z-Ledger, 迅雷链, 万
EVM 纳链, Chain33, IRITA, ONTology, CKB, IRISnet, PlatON, Mixin, 磁云数字区块链M0, 延安链, 文昌
链, 泰安链, 武汉链, 安顺链, 唯链, 之江链
JVM Z-Ledger, RepChain, Chain33, Aelf
NeoVM NEO, ONTology
Native 百度链, 之江链
XVM 百度链
虚拟机类 HVM 趣链
BVM 趣链
GraalVM 京东链
NVM 星云链
CKB-VM CKB
CVM 至信链
MYVM 之江链
TVM 波场链
Docker 长安链, 华为链, Z-Ledger, Aelf, 梧桐链
容器类
Kubernetes 华为链
[132] 蚂蚁链, 长安链, FISCO BCOS, 华为链, 迅雷链, 万纳链, Chain33, BubiChain, IRITA, ONTology,
WASM
新兴执行格式类 PlatON, 磁云数字区块链M0, 中移链, 延安链, 文昌链
SC-Runtime 海峡链

