【技术实现步骤摘要】
基于FPGA的安全智能合约处理器的高效运算方法及装置
本说明书一个或多个实施例涉及区块链
,尤其涉及一种基于FPGA的安全智能合约处理器的高效运算方法及装置。
技术介绍
区块链技术构建在传输网络(例如点对点网络)之上。传输网络中的网络节点利用链式数据结构来验证与存储数据,并采用分布式节点共识算法来生成和更新数据。目前企业级的区块链平台技术上最大的两个挑战就是隐私和性能,往往这两个挑战很难同时解决。大多解决方案都是通过损失性能换取隐私,或者不大考虑隐私去追求性能。常见的解决隐私问题的加密技术,如同态加密(Homomorphicencryption)和零知识证明(Zero-knowledgeproof)等复杂度高,通用性差,而且还可能带来严重的性能损失。可信执行环境(TrustedExecutionEnvironment,TEE)是另一种解决隐私问题的方式。TEE可以起到硬件中的黑箱作用,在TEE中执行的代码和数据操作系统层都无法偷窥,只有代码中预先定义的接口才能对其进行操作。在效率方面,由于TEE的黑箱性 ...
【技术保护点】
1.一种基于FPGA的安全智能合约处理器的高效运算方法,包括:/nFPGA结构将存储器中已部署的电路逻辑配置文件加载至FPGA芯片上,以在所述FPGA芯片上形成用于实现虚拟机逻辑的片上处理器和操作数栈,所述操作数栈的顶部空间为关联寄存器、剩余空间为内存空间;/n所述FPGA结构将智能合约的代码程序传入所述片上处理器,使所述片上处理器将所述代码程序涉及的操作数存入所述操作数栈时,优先存入所述关联寄存器中。/n
【技术特征摘要】
1.一种基于FPGA的安全智能合约处理器的高效运算方法,包括:
FPGA结构将存储器中已部署的电路逻辑配置文件加载至FPGA芯片上,以在所述FPGA芯片上形成用于实现虚拟机逻辑的片上处理器和操作数栈,所述操作数栈的顶部空间为关联寄存器、剩余空间为内存空间;
所述FPGA结构将智能合约的代码程序传入所述片上处理器,使所述片上处理器将所述代码程序涉及的操作数存入所述操作数栈时,优先存入所述关联寄存器中。
2.根据权利要求1所述的方法,所述关联寄存器的数量为一个或多个。
3.根据权利要求2所述的方法,所述关联寄存器的数量为两个。
4.根据权利要求1所述的方法,在所述关联寄存器的数量为多个且多个关联寄存器中的操作数涉及多元运算的情况下,所述片上处理器在执行所述多元运算后并行实施下述操作:向一指定的关联寄存器写入运算结果,输出位于所述内存空间中的操作数以填充空闲的关联寄存器。
5.根据权利要求1所述的方法,所述代码程序为字节码程序。
6.根据权利要求5所述的方法,所述字节码程序由编译器对高级语言程序进行编译得到。
7.根据权利要求1所述的方法,所述片上处理器采用字节码指令集。
8.根据权利要求1所述的方法,还包括:
所述FPGA结构从所属的区块链节点处获得经过加密的隐私交易,并将所述隐私交易传入所述FPGA芯片上的解密模块以得到明文交易内容;其中,所述解密模块由所述已部署的电路逻辑配置文件在所述FPGA芯片上形成;
在所述隐私交易用于部署智能合约的情况下,所述FPGA结构从所述明文交易内容中提取所述代码程序;
在所述隐私交易用于调用智能合约的情况下,所述FPGA结构从所述明文交易内容中提取合约地址,并基于所述合约地址获取所述...
【专利技术属性】
技术研发人员:潘国振,魏长征,闫莺,郭学鹏,
申请(专利权)人:支付宝杭州信息技术有限公司,
类型:发明
国别省市:浙江;33
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。