Solidity智能合约引擎

Solidity smart contract engine

我们正在为学校项目构建自己的区块链。我的职责是在区块链上实施 Solidity 智能合约。我的想法是在验证器节点上放置一个 Solidity 智能合约引擎,但经过数周的搜索和尝试不同的引擎后,我找不到合适的引擎。您对 Solidity 智能合约引擎有什么建议吗?谢谢。

智能合约在 EVM 以太坊虚拟机中执行。 EVM 是完全隔离的,与节点没有联系。交易的验证过程在节点级别完成。所以你正在寻找的是执行这些操作的 EVM。

现在,如果您想实施区块链,最简单的方法是使用 TestRpc,它将创建内存区块链,您可以在其中部署交易和执行交易。交易验证在区块链内部完成。

我也在做同样的事情,我使用 truffle 框架和 ganache 本地区块链。部署智能合约并与之交互非常容易。

参见:truffle suite

您可以使用工厂模式并使用内置的 new 创建您自己的“引擎”。

contract RBACFactory{
    address[] public deployedEntities;

    function createEntity(string memory name, string memory mission, string memory tokenName, 
                          string memory tokenSymbol, uint rate) public {
        address newEntity = address(new Entity(name, mission, msg.sender, tokenName, tokenSymbol, rate));
        deployedEntities.push(address(newEntity));
      
    }
    function getDeployedEntities() public view returns(address[] memory) {
        return deployedEntities;
    }
}