CN112883436A - 智能合约专用芯片装置及执行方法、区块链节点装置 - Google Patents
智能合约专用芯片装置及执行方法、区块链节点装置 Download PDFInfo
- Publication number
- CN112883436A CN112883436A CN202110172980.3A CN202110172980A CN112883436A CN 112883436 A CN112883436 A CN 112883436A CN 202110172980 A CN202110172980 A CN 202110172980A CN 112883436 A CN112883436 A CN 112883436A
- Authority
- CN
- China
- Prior art keywords
- intelligent contract
- unit
- execution
- code
- contract execution
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000012795 verification Methods 0.000 claims description 32
- 230000001133 acceleration Effects 0.000 claims description 5
- 230000005540 biological transmission Effects 0.000 claims description 3
- 238000004891 communication Methods 0.000 abstract description 10
- 230000002452 interceptive effect Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供一种智能合约专用芯片装置及执行方法、区块链节点装置。其中,该智能合约专用芯片装置包括:接口单元、调度单元、密码学单元、片内存储单元以及智能合约执行单元;所述密码学单元用于在智能合约执行过程中进行密码学操作;所述调度单元用于在智能合约执行过程中实现各个单元之间的交互调度和控制操作;所述智能合约执行单元用于根据接收的智能合约代码和智能合约的目标数据进行智能合约执行操作,并返回智能合约执行结果数据。采用本发明公开的智能合约专用芯片装置,能够避免用户隐私数据和智能合约代码被恶意读取和泄露,保证了芯片装置与区块链节点主机的数据通信和智能合约代码的真实性及完整性,从而提高了智能合约执行的安全性。
Description
技术领域
本发明涉及计算机应用领域,具体涉及一种智能合约专用芯片装置及执行方法。另外,还涉及一种区块链节点装置。
背景技术
随着网络技术的快速发展,区块链相关技术逐渐完善成熟。越来越多的企业开始将区块链相关技术作为重点内容来研究。区块链可以被看做一个特殊的共享数据库,其主要特征在于存储于其中的数据或信息,具有不可伪造、可追溯以及集体维护等特点。以区块链技术为基础构建数字“信任”基础,并将其纳入未来数字基础设施中,可以为数字信息提供坚实的“信任”平台,构建可靠的“合作”机制,结合各行各业的具体应用,具有广阔的运用前景。智能合约作为区块链技术的重要扩展和补充,由区块链主链发起、执行、管理和终止。因此与区块链相同,智能合约本质上是一段可由计算机执行的程序,在通用计算机处理上执行。当前广泛应用的区块链技术方案通常是在现有的通用硬件计算平台上,通过软件开发的方法部署区块链与智能合约技术。所使用的通用硬件计算平台包括桌面电脑和服务器,其底层硬件平台为通用桌面或服务器处理器(比如X86、ARM、POWER指令集架构的桌面或服务器处理器等)、以及与之配套的存储器件和外设器件。硬件计算平台还需要通用操作系统对底层硬件平台提供驱动和管理,并为上层应用软件提供软件基础平台。常见的操作系统包括Windows操作系统、linux操作系统。在操作系统的软件平台之上,区块链和智能合约作为应用软件通常是使用高级语言编写,通过编译或者解释的方式在操作系统的软件平台上运行的。
目前,区块链和智能合约作为应用软件通常是使用高级语音编写,通过编译或者解释的方式最终映射为通用处理器上的一组机器码指令顺序执行。然而,由于通用处理器以及通用计算平台的主要设计考量是适配广泛多样的应用,其指令集和软硬件架构更多从适配应用的通用性和兼容性出发,并未对某类特定应用有针对性的优化。尤其是,智能合约在执行过程中往往涉及到用户的身份信息和账户信息等隐私数据,其运行过程需要在一个安全可信的环境中进行,来保障合约的执行结果有效可信,用户的隐私数据不被窃取和暴露。现有基于通用计算平台的区块链智能合约方案,从硬件平台到操作系统和应用程序各个层面均可能存在安全风险和漏洞。智能合约执行过程易遭受恶意攻击,导致智能合约执行结果不可信或用户隐私数据泄露。因此如何设计一种安全可靠的智能合约专用芯片装置成为本领域研究的重要课题。
发明内容
为此,本发明提供一种智能合约专用芯片装置及执行方法,以解决现有技术中存在的智能合约专用芯片装置可能存在安全风险和漏洞,导致智能合约执行过程的安全性和可靠性较低的问题。
本发明提供一种智能合约专用芯片装置,包括:接口单元、调度单元、密码学单元、片内存储单元以及智能合约执行单元;
所述密码学单元,用于在智能合约执行过程中进行相应的密码学操作;
所述调度单元,用于控制所述密码学单元与区块链节点主机进行密钥协商,对所述区块链节点主机发送的智能合约代码密文进行解密,以及对所述接口单元接收到的智能合约代码及其数字签名进行验签操作,验签成功后,将解密后得到的明文数据中包含的智能合约代码存储于所述片内存储单元,并将所述明文数据中包含的智能合约账户信息、智能合约的指令地址发送到所述智能合约执行单元;以及用于控制所述密码学单元将所述智能合约执行单元返回的智能合约执行结果数据以及智能合约账户信息进行加密,对智能合约执行结果密文进行签名操作,并控制所述接口单元将所述智能合约执行结果密文及其数字签名发送至所述区块链节点主机;
所述智能合约执行单元,用于根据所接收到的智能合约代码和智能合约对应的目标数据进行相应的智能合约执行操作,并返回相应的智能合约执行结果数据。
进一步的,所述片内存储单元,用于存储或缓存所述智能合约代码和所述智能合约对应的目标数据;所述目标数据包括:所述智能合约的输入参数、所述智能合约的用户账户信息、智能合约的指令地址、智能合约运行过程中产生的临时数据结构、所述智能合约执行结果数据及目标配置参数中的至少一种。
进一步的,所述接口单元,用于与芯片装置外部的所述区块链节点主机进行数据通信;接收所述区块链节点主机的发送的所述智能合约代码和所述智能合约对应的目标数据,以及向所述区块链节点主机返回相应的所述智能合约执行结果数据。
进一步的,所述密码学单元包括:密钥管理模块、真随机数生成模块、非对称加密算法模块、对称算法模块以及杂凑算法模块;
所述密码学单元具体用于:基于所述密钥管理模块生成并保存智能合约专用芯片装置对应的目标密钥;基于所述真随机数生成模块产生密码学操作过程中对应的随机数;基于所述非对称加密算法模块进行密钥协商,并在签名验签过程中执行对应的非对称加解密运算;基于所述对称算法模块对所述接口单元所接收的对称加密的数据密文进行解密操作,并对所述接口单元所发送的数据明文进行对称加密操作;基于所述杂凑算法模块生成进行签名验签过程中所需的数据摘要。
进一步的,所述智能合约执行单元包含至少一个。
进一步的,所述接口单元、所述调度单元、所述密码学单元、所述片内存储单元以及所述智能合约执行单元通过总线连接,所述总线用于提供智能合约专用芯片装置内部数据的传输通道。
所述密码学操作包括密钥管理、密钥协商、签名验签以及加密解密中的至少一种操作类型。
本发明还提供一种智能合约的执行方法,包括:
基于调度单元控制密码学单元与区块链节点主机进行密钥协商,并对所述区块链节点主机发送的智能合约代码密文进行解密;根据解密后的智能合约代码明文中所包含的数字签名对智能合约代码进行验签操作;验签成功后,将智能合约代码明文存入片内存储单元;
基于所述调度单元控制密码学单元对所述区块链节点主机发送的智能合约执行信息密文进行解密;并将所获得的智能合约执行信息明文发送至智能合约执行单元;根据智能合约执行信息明文中的智能合约代码地址从所述片内存储单元中获取相应的合约代码段,并加载至所述智能合约执行单元;
基于所述智能合约执行单元根据所获得的所述合约代码段以及智能合约执行信息执行当前智能合约,并将当前智能合约执行结果数据返回到所述调度单元;
基于所述调度单元控制加密单元对智能合约执行结果数据进行加密,以及对智能合约执行结果密文进行数字签名操作;将所述智能合约执行结果密文及其数字签名发送至接口单元,并由所述接口单元发送至所述区块链节点主机。
本发明还提供一种区块链节点装置,包括:区块链节点主机和智能合约专用芯片装置;
所述区块链节点主机,用于根据用户需求加载智能合约代码,并将相应的智能合约代码密文通过电学接口单元发送至智能合约专用芯片装置的接口单元;以及用于根据智能合约执行需求,将相应的加密后的智能合约执行信息密文发送至所述智能合约专用芯片装置的接口单元;
所述智能合约专用芯片装置用于:基于调度单元控制密码学单元与所述区块链节点主机进行密钥协商,并对所述区块链节点主机发送的所述智能合约代码密文进行解密;根据解密后的智能合约代码明文中所包含的数字签名对智能合约代码进行验签操作;验签成功后,将智能合约代码明文存入片内存储单元;
基于所述调度单元控制密码学单元对所述区块链节点主机发送的智能合约执行信息密文进行解密;并将所获得的智能合约执行信息明文发送至智能合约执行单元;根据智能合约执行信息明文中的智能合约代码地址从所述片内存储单元中获取相应的合约代码段,并加载至所述智能合约执行单元;
基于所述智能合约执行单元根据所获得的所述合约代码段以及智能合约执行信息执行当前智能合约,并将当前智能合约执行结果数据返回到所述调度单元;
基于所述调度单元控制加密单元对智能合约执行结果数据进行加密,以及对智能合约执行结果密文进行数字签名操作;将所述智能合约执行结果密文及其数字签名发送至接口单元,并由所述接口单元发送至所述区块链节点主机。
进一步的,所述的区块链节点装置,还包括:智能合约加速板卡;所述智能合约加速板卡用于固定安装所述智能合约专用芯片装置以及相应的电源模块;所述智能合约专用芯片装置与所述区块链节点主机通过电连接器连接。
采用本发明所述的智能合约专用芯片装置,能够通过应用芯片装置上部署的密码学单元进行加解密操作,使该芯片装置与外部的区块链节点主机之间的数据通信均通过密文进行,保证了用户隐私数据和智能合约代码不被恶意读取和泄露。通过应用芯片装置上部署的密码学单元的签名验证操作,保证了芯片装置与区块链节点主机的数据通信和智能合约代码的真实性及完整性,使得智能合约实现安全可信的执行,从而提高了智能合约执行的安全性和可靠性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获取其他的附图。
图1为本发明实施例提供的一种智能合约专用芯片装置的结构示意图;
图2为本发明实施例提供的一种智能合约专用芯片装置中密码学单元的组成示意图;
图3为本发明实施例提供的一种智能合约的执行方法的流程示意图;
图4为本发明实施例提供的一种区块链节点装置的组成示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获取的所有其他实施例,都属于本发明保护的范围。
本发明旨在通过专用硬件设计构建一种实现安全可信执行的智能合约专用芯片装置,通过在芯片装置内应用密码学专用硬件的加解密操作,使该芯片装置与区块链节点主机的数据通信均通过密文进行,保证了智能合约的安全可信执行。
下面基于本发明所述的智能合约专用芯片装置,对其实施例进行详细描述。如图1所示,其为本发明实施例提供的一种智能合约专用芯片装置的结构示意图,具体实现过程包括以下部分:接口单元104、调度单元102、密码学单元101、片内存储单元105以及智能合约执行单元103。所述接口单元104、所述调度单元102、所述密码学单元101、所述片内存储单元105以及所述智能合约执行单元103通过总线106连接,所述总线106用于提供智能合约专用芯片装置内部数据的传输通道。
所述密码学单元101,用于在智能合约执行过程中进行相应的密码学操作。所述调度单元102,用于控制所述密码学单元101与区块链节点主机进行密钥协商,对所述区块链节点主机发送的智能合约代码密文进行解密,以及对所述接口单元104接收到的智能合约代码及其数字签名进行验签操作,验签成功后,将解密后得到的明文数据中包含的智能合约代码存储于所述片内存储单元105,并将所述明文数据中包含的智能合约账户信息、智能合约的指令地址发送到所述智能合约执行单元103;以及用于控制所述密码学单元101将所述智能合约执行单元103返回的智能合约执行结果数据以及智能合约账户信息进行加密,对智能合约执行结果密文进行签名操作,并控制所述接口单元104将所述智能合约执行结果密文及其数字签名发送至所述区块链节点主机。
所述智能合约执行单元103,用于根据所接收到的智能合约代码和智能合约对应的目标数据进行相应的智能合约执行操作,并返回相应的智能合约执行结果数据。需要说明的是,在具体实施过程中,可根据具体应用场景的性能需求,智能合约专用芯片装置上所包含的智能合约执行单元103数量可以为1个或者多个,在此不做具体限定。
所述片内存储单元105,用于存储或缓存所述智能合约代码和所述智能合约对应的目标数据。其中,所述目标数据包括:所述智能合约的输入参数、所述智能合约的用户账户信息、智能合约的指令地址、智能合约运行过程中产生的临时数据结构、所述智能合约执行结果数据及目标配置参数中的至少一种。
所述接口单元104用于与芯片装置外部的所述区块链节点主机进行数据通信;接收所述区块链节点主机的发送的所述智能合约代码和所述智能合约对应的目标数据,以及向所述区块链节点主机返回相应的所述智能合约执行结果数据。
图2为本发明实施例提供的一种智能合约专用芯片装置中密码学单元的组成示意图。
在本发明实施例中,所述密码学单元101可包括密钥管理模块1011、真随机数生成模块1012、非对称加密算法模块1013、对称算法模块1014以及杂凑算法模块1015。具体的,所述密钥管理模块1011用于生成和存放智能合约专用芯片装置所使用的密钥;所述真随机数生成模块1012用于产生各类密码学操作过程中所需的随机数;所述非对称加密算法模块1013用于进行密钥协商,以及进行签名验签过程中所需的非对称加解密运算;所述对称算法模块1014用于对接口单元104所接收的对称加密的数据密文进行解密,并对接口单元104所发送的数据明文进行对称加密;所述杂凑算法模块1015用于生成进行签名验签过程中所需的数据摘要。
所述密码学单元101具体可用于基于所述密钥管理模块1011生成并保存智能合约专用芯片装置对应的目标密钥;基于所述真随机数生成模块1012产生密码学操作过程中对应的随机数;基于所述非对称加密算法模块1013进行密钥协商,并在签名验签过程中执行对应的非对称加解密运算;基于所述对称算法模块1014对所述接口单元104所接收的对称加密的数据密文进行解密操作,并对所述接口单元104所发送的数据明文进行对称加密操作;基于所述杂凑算法模块1015生成进行签名验签过程中所需的数据摘要。其中,所述密码学操作包括密钥管理、密钥协商、签名验签以及加密解密中的至少一种操作类型。
采用本发明实施例所述的智能合约专用芯片装置,能够通过应用芯片装置上部署的密码学单元进行加解密操作,使该芯片装置与外部的区块链节点主机之间的数据通信均通过密文进行,保证了用户隐私数据和智能合约代码不被恶意读取和泄露。通过应用芯片装置上部署的密码学单元的签名验证操作,保证了芯片装置与区块链节点主机的数据通信和智能合约代码的真实性及完整性,使得智能合约实现安全可信的执行,从而提高了智能合约执行的安全性和可靠性。
与上述提供的一种智能合约专用芯片装置相对应,本发明还提供一种智能合约的执行方法。由于该方法的实施例相似于上述智能合约专用芯片装置实施例,所以描述得比较简单,相关之处请参见上述智能合约专用芯片装置实施例部分的说明即可,下面描述的智能合约的执行方法的实施例仅是示意性的。请参考图3所示,其为本发明实施例提供的一种智能合约的执行方法的流程示意图。
本发明所述的一种智能合约的执行方法具体包括如下步骤:
步骤301:基于调度单元控制密码学单元与区块链节点主机进行密钥协商,并对所述区块链节点主机发送的智能合约代码密文进行解密;根据解密后的智能合约代码明文中所包含的数字签名对智能合约代码进行验签操作;验签成功后,将智能合约代码明文存入片内存储单元。
步骤302:基于所述调度单元控制密码学单元对所述区块链节点主机发送的智能合约执行信息密文进行解密;并将所获得的智能合约执行信息明文发送至智能合约执行单元;根据智能合约执行信息明文中的智能合约代码地址从所述片内存储单元中获取相应的合约代码段,并加载至所述智能合约执行单元。
步骤303:基于所述智能合约执行单元根据所获得的所述合约代码段以及智能合约执行信息执行当前智能合约,并将当前智能合约执行结果数据返回到所述调度单元。
步骤304:基于所述调度单元控制加密单元对智能合约执行结果数据进行加密,以及对智能合约执行结果密文进行数字签名操作;将所述智能合约执行结果密文及其数字签名发送至接口单元,并由所述接口单元发送至所述区块链节点主机。
采用本发明实施例所述的智能合约的执行方法,能够通过应用芯片装置上部署的密码学单元进行加解密操作,使该芯片装置与外部的区块链节点主机之间的数据通信均通过密文进行,保证了用户隐私数据和智能合约代码不被恶意读取和泄露。通过应用芯片装置上部署的密码学单元的签名验证操作,保证了芯片装置与区块链节点主机的数据通信和智能合约代码的真实性及完整性,使得智能合约实现安全可信的执行,从而提高了智能合约执行的安全性和可靠性。
与上述提供的智能合约专用芯片装置及执行方法相对应,本发明还提供一种区块链节点装置。由于该区块链节点装置的实施例相似于上述智能合约专用芯片装置及执行方法实施例,所以描述得比较简单,相关之处请参见上述智能合约专用芯片装置及执行方法实施例部分的说明即可,下面描述的区块链节点装置仅是示意性的。如图4所示,其为本发明实施例公开的一种区块链节点装置的组成示意图。
该区块链节点装置可以包括:区块链节点主机401和智能合约专用芯片装置402。所述区块链节点主机401,用于根据用户需求加载智能合约代码,并将相应的智能合约代码密文通过电学接口单元104发送至智能合约专用芯片装置402的接口单元104;以及用于根据智能合约执行需求,将相应的加密后的智能合约执行信息密文发送至所述智能合约专用芯片装置402的接口单元104。
所述智能合约专用芯片装置402用于基于调度单元控制密码学单元101与所述区块链节点主机401进行密钥协商,并对所述区块链节点主机401发送的所述智能合约代码密文进行解密;根据解密后的智能合约代码明文中所包含的数字签名对智能合约代码进行验签操作;验签成功后,将智能合约代码明文存入片内存储单元105;基于所述调度单元102控制密码学单元101对所述区块链节点主机401发送的智能合约执行信息密文进行解密;并将所获得的智能合约执行信息明文发送至智能合约执行单元103;根据智能合约执行信息明文中的智能合约代码地址从所述片内存储单元105中获取相应的合约代码段,并加载至所述智能合约执行单元103;基于所述智能合约执行单元103根据所获得的所述合约代码段以及智能合约执行信息执行当前智能合约,并将当前智能合约执行结果数据返回到所述调度单元102;基于所述调度单元102控制加密单元对智能合约执行结果数据进行加密,以及对智能合约执行结果密文进行数字签名操作;将所述智能合约执行结果密文及其数字签名发送至接口单元104,并由所述接口单元104发送至所述区块链节点主机401。
在具体实施过程中,还可包括智能合约加速板卡。所述智能合约加速板卡用于固定安装所述智能合约专用芯片装置402以及相应的电源模块;所述智能合约专用芯片装置402与所述区块链节点主机402通过电连接器连接。
以上所描述的实施例仅仅是示意性的,其中所述作为分离部件说明的单元或模块可以是或者也可以不是物理上分开的,作为单元或模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种智能合约专用芯片装置,其特征在于,包括:接口单元、调度单元、密码学单元、片内存储单元以及智能合约执行单元;
所述密码学单元,用于在智能合约执行过程中进行相应的密码学操作;
所述调度单元,用于控制所述密码学单元与区块链节点主机进行密钥协商,对所述区块链节点主机发送的智能合约代码密文进行解密,以及对所述接口单元接收到的智能合约代码及其数字签名进行验签操作,验签成功后,将解密后得到的明文数据中包含的智能合约代码存储于所述片内存储单元,并将所述明文数据中包含的智能合约账户信息、智能合约的指令地址发送到所述智能合约执行单元;以及用于控制所述密码学单元将所述智能合约执行单元返回的智能合约执行结果数据以及智能合约账户信息进行加密,对智能合约执行结果密文进行签名操作,并控制所述接口单元将所述智能合约执行结果密文及其数字签名发送至所述区块链节点主机;
所述智能合约执行单元,用于根据所接收到的智能合约代码和智能合约对应的目标数据进行相应的智能合约执行操作,并返回相应的智能合约执行结果数据。
2.根据权利要求1所述的智能合约专用芯片装置,其特征在于,所述片内存储单元,用于存储或缓存所述智能合约代码和所述智能合约对应的目标数据;所述目标数据包括:所述智能合约的输入参数、所述智能合约的用户账户信息、智能合约的指令地址、智能合约运行过程中产生的临时数据结构、所述智能合约执行结果数据及目标配置参数中的至少一种。
3.根据权利要求1所述的智能合约专用芯片装置,其特征在于,所述接口单元,用于与芯片装置外部的所述区块链节点主机进行数据通信;接收所述区块链节点主机的发送的所述智能合约代码和所述智能合约对应的目标数据,以及向所述区块链节点主机返回相应的所述智能合约执行结果数据。
4.根据权利要求1所述的智能合约专用芯片装置,其特征在于,所述密码学单元包括:密钥管理模块、真随机数生成模块、非对称加密算法模块、对称算法模块以及杂凑算法模块;
所述密码学单元具体用于:基于所述密钥管理模块生成并保存智能合约专用芯片装置对应的目标密钥;基于所述真随机数生成模块产生密码学操作过程中对应的随机数;基于所述非对称加密算法模块进行密钥协商,并在签名验签过程中执行对应的非对称加解密运算;基于所述对称算法模块对所述接口单元所接收的对称加密的数据密文进行解密操作,并对所述接口单元所发送的数据明文进行对称加密操作;基于所述杂凑算法模块生成进行签名验签过程中所需的数据摘要。
5.根据权利要求1所述的智能合约专用芯片装置,其特征在于,所述智能合约执行单元包含至少一个。
6.根据权利要求1所述的智能合约专用芯片装置,其特征在于,所述接口单元、所述调度单元、所述密码学单元、所述片内存储单元以及所述智能合约执行单元通过总线连接,所述总线用于提供智能合约专用芯片装置内部数据的传输通道。
7.根据权利要求4所述的智能合约专用芯片装置,其特征在于,所述密码学操作包括密钥管理、密钥协商、签名验签以及加密解密中的至少一种操作类型。
8.一种智能合约的执行方法,其特征在于,包括:
基于调度单元控制密码学单元与区块链节点主机进行密钥协商,并对所述区块链节点主机发送的智能合约代码密文进行解密;根据解密后的智能合约代码明文中所包含的数字签名对智能合约代码进行验签操作;验签成功后,将智能合约代码明文存入片内存储单元;
基于所述调度单元控制密码学单元对所述区块链节点主机发送的智能合约执行信息密文进行解密;并将所获得的智能合约执行信息明文发送至智能合约执行单元;根据智能合约执行信息明文中的智能合约代码地址从所述片内存储单元中获取相应的合约代码段,并加载至所述智能合约执行单元;
基于所述智能合约执行单元根据所获得的所述合约代码段以及智能合约执行信息执行当前智能合约,并将当前智能合约执行结果数据返回到所述调度单元;
基于所述调度单元控制加密单元对智能合约执行结果数据进行加密,以及对智能合约执行结果密文进行数字签名操作;将所述智能合约执行结果密文及其数字签名发送至接口单元,并由所述接口单元发送至所述区块链节点主机。
9.一种区块链节点装置,其特征在于,包括:区块链节点主机和智能合约专用芯片装置;
所述区块链节点主机,用于根据用户需求加载智能合约代码,并将相应的智能合约代码密文通过电学接口单元发送至所述智能合约专用芯片装置的接口单元;以及用于根据智能合约执行需求,将相应的加密后的智能合约执行信息密文发送至所述智能合约专用芯片装置的接口单元;
所述智能合约专用芯片装置用于:基于调度单元控制密码学单元与所述区块链节点主机进行密钥协商,并对所述区块链节点主机发送的所述智能合约代码密文进行解密;根据解密后的智能合约代码明文中所包含的数字签名对智能合约代码进行验签操作;验签成功后,将智能合约代码明文存入片内存储单元;
基于所述调度单元控制密码学单元对所述区块链节点主机发送的智能合约执行信息密文进行解密;并将所获得的智能合约执行信息明文发送至智能合约执行单元;根据智能合约执行信息明文中的智能合约代码地址从所述片内存储单元中获取相应的合约代码段,并加载至所述智能合约执行单元;
基于所述智能合约执行单元根据所获得的所述合约代码段以及智能合约执行信息执行当前智能合约,并将当前智能合约执行结果数据返回到所述调度单元;
基于所述调度单元控制加密单元对智能合约执行结果数据进行加密,以及对智能合约执行结果密文进行数字签名操作;将所述智能合约执行结果密文及其数字签名发送至接口单元,并由所述接口单元发送至所述区块链节点主机。
10.根据权利要求9所述的区块链节点装置,其特征在于,还包括:智能合约加速板卡;所述智能合约加速板卡用于固定安装所述智能合约专用芯片装置以及相应的电源模块;所述智能合约专用芯片装置与所述区块链节点主机通过电连接器连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110172980.3A CN112883436A (zh) | 2021-02-08 | 2021-02-08 | 智能合约专用芯片装置及执行方法、区块链节点装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110172980.3A CN112883436A (zh) | 2021-02-08 | 2021-02-08 | 智能合约专用芯片装置及执行方法、区块链节点装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112883436A true CN112883436A (zh) | 2021-06-01 |
Family
ID=76056169
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110172980.3A Pending CN112883436A (zh) | 2021-02-08 | 2021-02-08 | 智能合约专用芯片装置及执行方法、区块链节点装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112883436A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109040133A (zh) * | 2018-09-27 | 2018-12-18 | 上海点融信息科技有限责任公司 | 在区块链网络中安装智能合约的方法、装置及存储介质 |
CN110245506A (zh) * | 2019-05-30 | 2019-09-17 | 阿里巴巴集团控股有限公司 | 基于区块链的智能合约管理方法及装置、电子设备 |
CN111738859A (zh) * | 2020-07-08 | 2020-10-02 | 支付宝(杭州)信息技术有限公司 | 区块链一体机及区块链网络 |
CN111931251A (zh) * | 2020-07-01 | 2020-11-13 | 陈子祺 | 一种基于区块链的可信计算芯片 |
US20200387893A1 (en) * | 2017-01-16 | 2020-12-10 | Enrico Maim | Methods and systems for executing smart contracts in secure environments |
-
2021
- 2021-02-08 CN CN202110172980.3A patent/CN112883436A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200387893A1 (en) * | 2017-01-16 | 2020-12-10 | Enrico Maim | Methods and systems for executing smart contracts in secure environments |
CN109040133A (zh) * | 2018-09-27 | 2018-12-18 | 上海点融信息科技有限责任公司 | 在区块链网络中安装智能合约的方法、装置及存储介质 |
CN110245506A (zh) * | 2019-05-30 | 2019-09-17 | 阿里巴巴集团控股有限公司 | 基于区块链的智能合约管理方法及装置、电子设备 |
CN111931251A (zh) * | 2020-07-01 | 2020-11-13 | 陈子祺 | 一种基于区块链的可信计算芯片 |
CN111738859A (zh) * | 2020-07-08 | 2020-10-02 | 支付宝(杭州)信息技术有限公司 | 区块链一体机及区块链网络 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108632284B (zh) | 基于区块链的用户数据授权方法、介质、装置和计算设备 | |
CN110110548B (zh) | 基于加密芯片的可信执行环境下文件加密存储的相关方法 | |
US10904231B2 (en) | Encryption using multi-level encryption key derivation | |
US20220006617A1 (en) | Method and apparatus for data storage and verification | |
CN106899571B (zh) | 信息交互方法及装置 | |
KR20140099325A (ko) | 글로벌 플랫폼 규격을 사용하는 발행자 보안 도메인에 대한 키 관리 시스템 및 방법 | |
CN110868291B (zh) | 一种数据加密传输方法、装置、系统及存储介质 | |
EP3457309A1 (en) | Processing method for presenting copy attack, and server and client | |
KR20150045790A (ko) | 신뢰 보안 플랫폼 모듈을 이용한 보안 애플리케이션 인증 및 관리 방법 및 장치 | |
CN107911221B (zh) | 固态盘数据安全存储的密钥管理方法 | |
CN108416224A (zh) | 一种数据加解密方法及装置 | |
CN113946863A (zh) | 数据加密存储方法、系统、设备及存储介质 | |
CN114666368B (zh) | 电力物联网的访问控制方法、装置、设备及存储介质 | |
CN114553566B (zh) | 数据加密方法、装置、设备及存储介质 | |
US9135449B2 (en) | Apparatus and method for managing USIM data using mobile trusted module | |
CN115758332A (zh) | 一种交易分组方法和区块链节点 | |
CN117157623A (zh) | 结合容器化应用程序使用时保护秘密的系统和方法 | |
CN111490876B (zh) | 一种基于usb key的通信方法和usb key | |
CN112883436A (zh) | 智能合约专用芯片装置及执行方法、区块链节点装置 | |
CN114697113A (zh) | 一种基于硬件加速卡的多方隐私计算方法、装置及系统 | |
CN111046440B (zh) | 一种安全区域内容的篡改验证方法及系统 | |
CN114553557A (zh) | 密钥调用方法、装置、计算机设备和存储介质 | |
CN114520735A (zh) | 一种基于可信执行环境的用户身份鉴定方法、系统及介质 | |
CN115134113B (zh) | 平台数据安全认证方法、系统、终端及存储介质 | |
JP7385025B2 (ja) | 暗号化コプロセッサにおけるエンティティ固有の暗号化コードの実行 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB03 | Change of inventor or designer information |
Inventor after: Li Xiaoyue Inventor after: Hu Zhenyuan Inventor after: Dong Jin Inventor after: Ren Changrui Inventor after: Zhang Bo Inventor after: Chen Yi Inventor before: Li Xiaoyue Inventor before: Hu Zhenyuan |
|
CB03 | Change of inventor or designer information |