The invention provides a method and a device for integrating dynamic type programming language on a block chain. Among them, the method includes: call bytecode, byte code stored in the block chain, chain block includes at least one node, byte code compiled by the intelligent contract, the contract and the corresponding bytecode only intelligent, intelligent contract written by dynamically typed programming language; the bytecode interpreter of bytecode get smart intelligent contract contract undefined variable types; definition of intelligent variable type contract; contract execution of intelligent variable types after definition. The invention provides a block chain integration dynamic programming language type method and device by using dynamic intelligent contract type in the block on the chain of programming languages, thus improving the block chain contract intelligent scalability.
【技术实现步骤摘要】
本专利技术涉及互联网技术,尤其涉及一种区块链上集成动态类型编程语言方法和装置。
技术介绍
比特币是一种数字货币,依据特定算法并通过大量的计算产生,比特币使用网络中众多节点构成的分布式数据库来确认并记录所有的交易行为。比特币技术中的区块链像一个数据库账本,记载所有的比特币交易记录。区块链由众多节点构成,智能合约是编写并存储在区块链各节点上的程序代码,区块链上的所有节点可以通过执行智能合约的相关操作实现相关功能。现有技术中,智能合约通过静态类型编程语言实现,例如用Solidity,与Javascript类似的专用语言,用户设备将智能合约源代码编译成字节码形式后,存储到区块链内的各个节点上。各节点调用并执行智能合约,以得到智能合约运行的结果。采用现有技术,由于静态类型编程语言的变量类型不可更改,各节点不能对智能合约进行修改和调整,因此智能合约的可扩展性不强。
技术实现思路
本专利技术提供一种区块链上集成动态类型编程语言方法和装置,通过在区块链上使用动态类型的编程语言的智能合约,从而提高了区块链上智能合约的可扩展性。本专利技术提供一种一种区块链上集成动态类型编程语言方法,包括:调用字节码,所述字节码存储在区块链上,所述区块链包括至少一个所述节点,所述字节码由智能合约编译,所述智能合约和所述字节码唯一对应,所述智能合约由动态类型编程语言编写;通过字节码解释器解析所述字节码得到所述智能合约,所述智能合约未定义变量类型;定义所述智能合约的所述变量类型;执行定义所述变量类型后的所述智能合约。在本专利技术一实施例中,所述执行定义所述变量类型后的所述智能合约之后,还包括:将所述 ...
【技术保护点】
一种区块链上集成动态类型编程语言方法,其特征在于,包括:调用字节码,所述字节码存储在区块链上,所述区块链包括至少一个所述节点,所述字节码由智能合约编译,所述智能合约和所述字节码唯一对应,所述智能合约由动态类型编程语言编写;通过字节码解释器解析所述字节码得到所述智能合约,所述智能合约未定义变量类型;定义所述智能合约的所述变量类型;执行定义所述变量类型后的所述智能合约。
【技术特征摘要】
1.一种区块链上集成动态类型编程语言方法,其特征在于,包括:调用字节码,所述字节码存储在区块链上,所述区块链包括至少一个所述节点,所述字节码由智能合约编译,所述智能合约和所述字节码唯一对应,所述智能合约由动态类型编程语言编写;通过字节码解释器解析所述字节码得到所述智能合约,所述智能合约未定义变量类型;定义所述智能合约的所述变量类型;执行定义所述变量类型后的所述智能合约。2.根据权利要求1所述的方法,其特征在于,所述执行定义所述变量类型后的所述智能合约之后,还包括:将所述智能合约执行后所述区块链状态的变化部分和所述变量类型存储到所述区块链中。3.根据权利要求1或2所述的方法,其特征在于,所述定义所述智能合约的所述变量类型之前,还包括:调用所述智能合约的应用程序编程接口API;修改所述智能合约。4.一种区块链上集成动态类型编程语言方法,其特征在于,包括:将智能合约编译为字节码,所述智能合约和所述字节码唯一对应,所述智能合约由动态类型编程语言编写,所述智能合约未定义变量类型;将所述字节码存储到所述区块链的所有节点上,所述区块链包括至少一个节点。5.根据权利要求4所述的方法,其特征在于,所述用户设备将智能合约编译为字节码之前,还包括:编写所述智能合约。6.一种区块链上集成动态类型编程语言装置,其特征在于,包括:...
【专利技术属性】
技术研发人员:周维,崔萌,徐伟,孙江涛,
申请(专利权)人:北京果仁宝科技有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。