CN110119430A - 一种智能合约管理方法、服务器及计算机可读存储介质 - Google Patents
一种智能合约管理方法、服务器及计算机可读存储介质 Download PDFInfo
- Publication number
- CN110119430A CN110119430A CN201910360620.9A CN201910360620A CN110119430A CN 110119430 A CN110119430 A CN 110119430A CN 201910360620 A CN201910360620 A CN 201910360620A CN 110119430 A CN110119430 A CN 110119430A
- Authority
- CN
- China
- Prior art keywords
- intelligent contract
- contract
- managed
- intelligence
- corresponding relationship
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请实施例公开了一种智能合约管理方法、服务器及计算机可读介质,其中方法包括:接收智能合约管理请求,所述智能合约管理请求包括待管理智能合约的主题和管理信息;根据所述智能合约管理请求触发中心智能合约,调用所述中心智能合约的管理接口;通过所述管理接口对待管理对应关系执行与所述管理信息对应的操作,所述待管理对应关系为所述待管理智能合约的主题与待管理智能合约的地址的对应关系。通过本申请实施例,可以通过中心智能合约来对其他智能合约进行增加、删除、调用、更新等管理操作,使得智能合约的管理方便快捷。
Description
技术领域
本申请涉及区块链技术领域,尤其涉及一种智能合约管理方法、服务器及计算机可读存储介质。
背景技术
在区块链环境中,每个智能合约有一个合约地址,当我们想调用这个智能合约的函数时,只能通过这个唯一的合约地址去触发。这些合约在区块链上全是去中心化的,只用地址去做索引访问,智能合约一旦发布就不能更改,当我们的功能或者函数想要修改和更新时,只能重新发布一个智能合约,会产生一个新的合约地址,当外部想要使用这个新的合约时,所有使用者需要全部更新合约地址,管理繁琐不方便。
发明内容
本申请实施例提供一种智能合约管理方法,可通过一个中心智能合约来对其他智能合约进行增加、删除、调用、更新等管理操作,使得智能合约的管理方便快捷。
第一方面,本申请实施例提供了一种智能合约管理方法,该方法包括:
接收智能合约管理请求,所述智能合约管理请求包括待管理智能合约的主题和管理信息;
根据所述智能合约管理请求触发中心智能合约,调用所述中心智能合约的管理接口;
通过所述管理接口对待管理对应关系执行与所述管理信息对应的操作,所述待管理对应关系为所述待管理智能合约的主题与待管理智能合约的地址的对应关系。
在一种可选的实施方式中,所述智能合约管理请求为添加智能合约请求,所述待管理智能合约为待添加智能合约,所述管理信息包括待添加智能合约的地址和存储指令;
所述通过所述管理接口对待管理对应关系执行与所述管理信息对应的操作,包括:
通过所述管理接口存储所述待添加智能合约的地址和所述待添加智能合约的主题之间的对应关系。
在一种可选的实施方式中,所述智能合约管理请求为更新智能合约请求,所述待管理智能合约为待更新智能合约,所述管理信息包括待更新智能合约的地址和更新指令;
所述通过所述管理接口对待管理对应关系执行与所述管理信息对应的操作,包括:
通过所述管理接口查找所述待更新智能合约的主题对应的已存储对应关系;
将所述已存储对应关系中的地址更换为所述待更新智能合约的地址。
在一种可选的实施方式中,所述智能合约管理请求为删除智能合约请求,所述待管理智能合约为待删除智能合约,所述管理信息包括删除指令;
所述通过所述管理接口对待管理对应关系执行与所述管理信息对应的操作,包括:
通过所述管理接口查找所述待删除智能合约的主题对应的已存储对应关系;
删除所述已存储对应关系。
在一种可选的实施方式中,所述方法还包括:
接收智能合约调用请求,所述调用请求包括待调用智能合约的主题和调用信息;
根据所述智能合约调用请求触发中心智能合约,调用所述中心智能合约的管理接口;
通过所述管理接口查找所述待调用智能合约的主题的已存储对应关系;
获取所述已存储对应关系中的待调用智能合约的地址;
根据所述待调用智能合约的地址和所述调用信息调用所述待调用智能合约。
在一种可选的实施方式中,所述中心智能合约包括至少一个管理接口;
所述根据所述智能合约管理请求触发中心智能合约,调用所述中心智能合约的管理接口,包括:
根据所述智能合约管理请求触发中心智能合约,调用与所述待管理智能合约的主题对应的所述中心智能合约的管理接口。
在一种可选的实施方式中,在所述接收智能合约管理请求之前,所述方法还包括:
接收中心智能合约发布请求,根据所述中心智能合约发布请求在区块链上部署所述中心智能合约。
第二方面,本申请实施例提供了一种服务器,包括:
接收单元,用于接收智能合约管理请求,所述智能合约管理请求包括待管理智能合约的主题和管理信息;
触发单元,用于根据所述智能合约管理请求触发中心智能合约,调用所述中心智能合约的管理接口;
执行单元,用于通过所述管理接口对待管理对应关系执行与所述管理信息对应的操作,所述待管理对应关系为所述待管理智能合约的主题与待管理智能合约的地址的对应关系。
在一种可选的实施方式中,所述智能合约管理请求为添加智能合约请求,所述待管理智能合约为待添加智能合约,所述管理信息包括待添加智能合约的地址和存储指令;
所述执行单元,用于通过所述管理接口存储所述待添加智能合约的地址和所述待添加智能合约的主题之间的对应关系。
在一种可选的实施方式中,所述智能合约管理请求为更新智能合约请求,所述待管理智能合约为待更新智能合约,所述管理信息包括待更新智能合约的地址和更新指令;
所述执行单元,用于通过所述管理接口查找所述待更新智能合约的主题对应的已存储对应关系;将所述已存储对应关系中的地址更换为所述待更新智能合约的地址。
在一种可选的实施方式中,所述智能合约管理请求为删除智能合约请求,所述待管理智能合约为待删除智能合约,所述管理信息包括删除指令;
所述执行单元,用于通过所述管理接口查找所述待删除智能合约的主题对应的已存储对应关系;删除所述已存储对应关系。
在一种可选的实施方式中,所述接收单元,还用于接收智能合约调用请求,所述调用请求包括待调用智能合约的主题和调用信息;
所述触发单元,还用于根据所述智能合约调用请求触发中心智能合约,调用所述中心智能合约的管理接口;
所述执行单元,还用于通过所述管理接口查找所述待调用智能合约的主题的已存储对应关系;获取所述已存储对应关系中的待调用智能合约的地址;根据所述待调用智能合约的地址和所述调用信息调用所述待调用智能合约。
在一种可选的实施方式中,所述中心智能合约包括至少一个管理接口;
所述触发单元,用于根据所述智能合约管理请求触发中心智能合约,调用与所述待管理智能合约的主题对应的所述中心智能合约的管理接口。
在一种可选的实施方式中,在所述接收智能合约管理请求之前,所述服务器还包括:
部署单元,用于接收中心智能合约发布请求,根据所述中心智能合约发布请求在区块链上部署所述中心智能合约。
第三方面,本申请实施例提供了另一服务器,包括处理器、存储器和通信模块,其中,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码来执行上述第一方面及其任一种可选方式的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行上述第一方面及其任一种可选方式的方法。
可以看出,在本申请实施例中,通过接收智能合约管理请求,其中,所述智能合约管理请求包括待管理智能合约的主题和管理信息;然后根据所述智能合约管理请求触发中心智能合约,调用所述中心智能合约的管理接口;最后通过所述管理接口对待管理对应关系执行与所述管理信息对应的操作,所述待管理对应关系为所述待管理智能合约的主题与待管理智能合约的地址的对应关系。通过本申请实施例,可以通过中心智能合约来对其他智能合约进行增加、删除、调用、更新等管理操作,使得智能合约的管理方便快捷。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。
图1是本申请实施例提供的一种智能合约管理方法的示意流程图;
图2是本申请实施例提供的一种服务器的示意框图;
图3是本申请实施例提供的一种设备示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
区块链是一种按照时间顺序将数据区块相连的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。
区块链的特性有开放、共识、去中心、去信任、透明、双方匿名、不可篡改以及可追溯等。其中,开放与透明意为任何人都可以参与到区块链网络,每一台设备都能作为一个节点,每个节点都允许获得一份完整的数据库拷贝。节点基于一套共识机制,通过竞争计算共同维护整个区块链。任一节点失效,其余节点仍能正常工作。其中,去中心化与去信任意为区块链由众多节点共同组成一个端到端的网络,不存在中心化的设备和管理机构。节点之间数据交换通过数字签名技术进行验证,无需互相信任,只要按照系统既定的规则进行,节点之间不能也无法欺骗其他节点。其中,透明与双方匿名意为区块链的运行规则是公开的,所有的数据信息也是公开的,因此每一笔交易都对所有节点可见。由于节点与节点之间是去信任的,因此节点之间无需公开身份,每个参与的节点都是匿名的。其中,不可篡改和可追溯意为每个甚至多个节点对数据库的修改无法影响其他节点的数据库,除非能控制整个网络中超过51%的节点同时修改,这是几乎不可能发生的。区块链中的,每一笔交易都通过密码学方法与相邻两个区块串联,因此可以追溯到任何一笔交易记录。
具体的,区块链可以利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算方式。因此,区块链技术不可篡改的特性从根本上改变了中心化的信用创建方式,有效提高了数据的不可更改性以及安全性。其中,由于智能合约使得所有的条款编写为程序,这些条款可在区块链上自动执行,保证了当存在触发智能合约的条件时,区块链能强制根据智能合约中的内容执行,且不受任何外力阻挡,从而保证了合约的有效性和执行力,不仅能够大大降低成本,也能提高效率。区块链上的各个节点都有相同的账本,能够确保账本记录过程是公开透明的。区块链技术可以实现了一种点对点的、公开透明的直接交互,使得高效率、大规模、无中心化代理的信息交互方式成为了现实。
本申请实施例主要应用于区块链节点服务器,而作为区块链节点服务器的类型有很多,可以是传统服务器、大型存储系统、台式电脑、笔记本电脑、平板电脑、掌上电脑、智能手机、便携式数字播放器、智能手表以及智能手环等等。其中,区块链节点服务器为根据共识机制确定的区块链网络中的其中一个服务器。应理解,由于区块链是一个去中心化的分布式数据库,所以每次处理数据都需要选出区块链网络中的其中一个服务器作为执行者来处理数据。而每次选取服务器的规则便是共识机制,本申请实施例中共识机制可以是工作量证明机制(Proof of Work,POW)、股权证明机制(Proof of Stake,POS)、瑞波共识机制(Ripple Consensus)以及授权股权证明机制(Delegated Proof of Stake,DPOS)等,在此不作限定。本申请实施例中,终端包括但不限于带通讯功能的设备、智能手机、平板电脑、笔记本电脑、台式电脑、便携式数字播放器、智能手环以及智能手表等。
在传统的智能合约管理方式中,每个智能合约有一个合约地址,当我们想调用这个智能合约的函数时,只能通过这个唯一的合约地址去触发。这些合约在区块链上全是去中心化的,只用地址去做索引访问,智能合约一旦发布就不能更改,当我们的功能或者函数想要修改和更新时,只能重新发布一个智能合约,会产生一个新的合约地址,当外部想要使用这个新的合约时,所有使用者需要全部更新合约地址,管理繁琐不方便。
参见图1,图1是本申请实施例提供的一种智能合约管理方法的示意流程图,如图1所示该方法可包括:
101:智能合约管理平台接收智能合约管理请求,上述智能合约管理请求包括待管理智能合约的主题和管理信息。
在本申请实施例中,首先在区块链上建立上述智能合约管理平台,该智能合约管理平台用于通过中心智能合约来管理区块链上的智能合约;让需要部署智能合约的用户上链,用户上链后可以通过上述智能合约管理平台部署自己的智能合约,并通过该智能合约管理平台对自己的智能合约进行管理。
具体的,该智能合约管理平台在区块链节点设备上运行。然后通过这个智能合约管理平台发布一个中心智能合约来管理其他智能合约,所有的访问者都可以访问这个中心智能合约来触发其想要访问的智能合约,当这个中心智能合约里管理的合约升级或者不使用时,外部的访问者则是无感知的,管理起来方便快捷。
其中,在上述智能合约管理平台上发布一个中心智能合约具体可以包括:智能合约管理平台接收中心智能合约发布请求,该智能合约发布请求中包括上述中心智能合约的功能信息;由于该中心智能合约适用于管理其他智能合约的,因此,上述中心智能合约的功能信息应该包括对其他智能合约的添加、更新、调用、删除等功能信息;然后上述智能合约管理平台根据上述中心智能合约发布请求在区块链上部署上述中心智能合约,得到上述中心智能合约的地址,并将上述中心智能合约及该中心智能合约的地址进行全网广播,以便用户可以通过该中心智能合约的地址部署用户的智能合约。
在本申请实施例中,当需通过上述智能合约管理平台对智能合约进行管理时,则向上述智能合约管理平台发起智能合约管理请求,该智能合约管理请求中包括待管理智能合约的主题和管理信息,以便上述智能合约管理平台在接收到上述智能合约管理请求后,可以根据主题查找到对应的智能合约,以及根据管理信息进行相应的处理。其中,上述待管理智能合约的主题可以为该待管理智能合约对应的业务或活动的名称。
举例来说,在元旦期间某商家需要在线举办元旦促销活动,该元旦促销活动以智能合约的形式进行实施,则该智能合约的主题可以为“XX店元旦促销活动”。当该商家将元旦活动促销的条款内容编辑为智能合约后,通过自己的节点终端向上述智能合约管理平台发起添加智能合约添加请求,商家的节点终端接收到商家的添加智能合约操作后,将主题“XX店元旦促销活动”、该元旦促销活动的智能合约的功能信息、商家的签名、该元旦促销活动的智能合约的地址等信息打包发送给上述智能合约管理平台,以通过智能合约管理平台来部署上述元旦促销活动的智能合约,使得商家和活动参与者可以通过上述中心智能合约的地址和该元旦促销活动的智能合约的主题“XX店元旦促销活动”,来访问上述元旦促销活动的智能合约参加上述元旦促销活动。
102:智能合约管理平台根据上述智能合约管理请求触发中心智能合约,调用上述中心智能合约的管理接口。
在本申请实施例中,上述智能合约管理平台是通过触发中心智能合约对其他智能合约进行管理的,即根据智能合约管理请求中的信息作为触发条件,来触发中心智能合约,然后对代管理的智能合约进行相应的操作,而对代管理的智能合约的操作主要是针对代管理智能合约的地址和主题的对应关系进行相应的操作。上述中心智能合约对代管理智能合约的地址和主题的对应关系进行相应的操作的功能可以通过接口来实现,因此,在本申请实施例中,上述中心智能合约具有对应的管理接口,该管理接口用于在上述智能合约平台接收到智能合约管理请求后,根据接收到的智能合约管理请求调用上述管理接口,通过该管理接口进行存储、调用、删除或更新管理接口对应的内容。
具体的,当智能合约管理平台接收到上述智能合约管理请求后,智能合约管理平台从对应的服务器中获取到上述中心智能合约的地址,然后根据中心智能合约的地址获取到上述中心智能合约的代码,执行获取到的代码,以根据上述智能合约管理请求触发中心智能合约,根据智能合约管理请求包含的信息对上述管理接口进行调用,例如根据智能合约管理请求对接口中存储的智能合约的主题和地址的对应关系进行修改、删除;或通过管理接口添加新的智能合约的主题和地址的对应关系。
103:智能合约管理平台通过上述管理接口对待管理对应关系执行与上述管理信息对应的操作,上述待管理对应关系为上述待管理智能合约的主题与待管理智能合约的地址的对应关系。
在本申请实施例中,上述中心智能合约具有用于管理智能合约的各种功能,可以通过对应的操作实现上述各种功能;上述对应的操作可以包括存储智能合约地址、智能合约的主题之间的对应关系,以实现添加智能合约的功能;更新智能合约地址、智能合约的主题之间的对应关系,以实现更新智能合约的功能;删除智能合约地址、智能合约的主题之间的对应关系,以实现删除智能合约的功能。
作为一种选的实施方式,当用户需要通过上述智能合约管理平台调用已经部署在区块链上的智能合约时,其中该智能合约调用请求中包括带调用智能合约的主题和调用信息;用户可以通过向上述智能合约管理平台发起智能合约调用请求。当上述智能合约管理平台接收到上述智能合约调用请求后,对上述调用请求进行解析得到带调用智能合约的主题和相关的调用信息。然后根据得到的带调用智能合约的主题和调用信息触发上述中心智能合约,调用中心智能合约的管理接口,并通过该管理接口查找上述待调用智能合约的主题对应的已存储对应关系;获取上述已存储对应关系中的待调用智能合约的地址;并根据上述待调用智能合约的地址和上述调用信息调用上述待调用智能合约。其中上述调用信息包括该智能合约的应用程序二进制接口(ApplicationBinary Interface,ABI)等信息,该智能合约的ABI用于指明具体调用合约中的哪一个方法。
例如,当用户想调用主题为:“元旦活动”智能合约时,首先用户通过自己的节点中端将主题:“元旦活动”、以及调用信息:智能合约的ABI等信息打包生成智能合约调用请求;然后根据上述中心智能合约的地址:0x6536Dbd4df44Fb7B85654866D91a5D9755B0046c将该调用请求发送给上述智能合约管理平台。上述智能合约管理平台接收到上述智能合约调用请求后,解析得到主题:“元旦活动”、以及调用信息,然后触发上述中心智能合约,调用中心智能合约的管理接口,查找到对应关系:元旦活动=0x6536Dbd4df44Fb7B85654866D91a5D9755B0046d;其中“元旦活动”为智能合约的主题,“0x6536Dbd4df44Fb7B85654866D91a5D9755B0046d”为该智能合约的地址,“=”表示对应关系。最后根据地址和调用信息ABI去调用智能合约,如调用该智能合约中的抽奖方法进行抽奖。
作为一种可选的实施方式,当上述智能合约管理请求为添加智能合约请求,上述待管理智能合约为待添加智能合约,上述管理信息包括待添加智能合约的地址和存储指令时;上述通过上述管理接口对待管理对应关系执行与上述管理信息对应的操作,具体可以包括:通过上述管理接口存储上述待添加智能合约的地址和上述待添加智能合约的主题之间的对应关系。
作为一种可选的实施方式,当上述智能合约管理请求为更新智能合约请求,上述待管理智能合约为待更新智能合约,上述管理信息包括待更新智能合约的地址和更新指令时;上述通过上述管理接口对待管理对应关系执行与上述管理信息对应的操作,具体可以包括:通过上述管理接口查找上述待更新智能合约的主题对应的已存储对应关系;将上述已存储对应关系中的地址更换为上述待更新智能合约的地址。
作为一种可选的实施方式,当上述智能合约管理请求为删除智能合约请求,上述待管理智能合约为待删除智能合约,上述管理信息包括删除指令时;上述通过上述管理接口对待管理对应关系执行与上述管理信息对应的操作,可以包括:通过上述管理接口查找上述待删除智能合约的主题对应的已存储对应关系;删除上述已存储对应关系。
举例来说,需要在上述智能合约管理平台上添加一个主题为“元旦活动”的智能合约,该智能合约的地址为:0x6536Dbd4df44Fb7B85654866D91a5D9755B0046d。则用户将地址:0x6536Dbd4df44Fb7B85654866D91a5D9755B0046d和主题:“元旦活动”以及存储指令代码:001打包生成添加智能合约请求,并通过上述中心智能合约的地址:0x6536Dbd4df44Fb7B85654866D91a5D9755B0046c将该请求发送给上述智能合约管理平台。当智能合约管理平台接收到上述添加智能合约请求后,触发上述中心智能合约,调用该中心智能合约的管理接口,响应上述存储指令代码:001,将对应关系:元旦活动=0x6536Dbd4df44Fb7B85654866D91a5D9755B0046d存储到上述管理接口。
当上述元旦活动的智能合约需要升级或改动时,即需要对该元旦活动智能合约进行更新时;首先获取新发布的元智能合约的新地址:0x6536Dbd4df44Fb7B85654866D91a5D9755B0046e;然后将地址:0x6536Dbd4df44Fb7B85654866D91a5D9755B0046e、主题:“元旦活动”以及更新指令代码:002,打包生成更新智能合约请求,通过上述中心智能合约的地址:0x6536Dbd4df44Fb7B85654866D91a5D9755B0046c将该请求发送给上述智能合约管理平台。当之智能合约管理平台接收到上述智能合约更新请求后,触发上述中心智能合约,调用该中心智能合约的管理接口,响应上述更新指令代码:002,将对应关系:元旦活动=0x6536Dbd4df44Fb7B85654866D91a5D9755B0046d中的地址进行替换的到新的对应关系:元旦活动=0x6536Dbd4df44Fb7B85654866D91a5D9755B0046e。
当上述元旦活动接收后,需要将上述元旦活动的智能合约删除,则可以将主题:“元旦活动”以及删除指令代码:003,打包生成删除智能合约请求,通过上述中心智能合约的地址:0x6536Dbd4df44Fb7B85654866D91a5D9755B0046c将该请求发送给上述智能合约管理平台。当之智能合约管理平台接收到上述智能合约更新请求后,触发上述中心智能合约,调用该中心智能合约的管理接口,响应上述删除指令代码:003,将对应关系:元旦活动=0x6536Dbd4df44Fb7B85654866D91a5D9755B0046d从上述管理接口删除。
作为一种可选的实时方式,由于区块链上的智能合约繁多,主题可能会重复,为了更加方便管理繁多的智能合约,可以在上述中心智能合约中维护一个“主题+接口码”与“管理接口”的对应关系;当需要对智能合约进行管理时,在管理请求中的主题后面附上接口码,然后在调用管理接口时,根据上述“主题+接口码”与“管理接口”的对应关系确定对应的管理接口,然后调用正确的管理接口对智能合约进行管理。
可以看出,在本申请实施例中,通过建立一个智能合约管理平台,该智能合约管理平台在区块链节点设备上运行。然后通过这个智能合约管理平台发布一个中心智能合约,并将该中心智能合约和该中心智能合约的地址进行全网广播,使得所有访问者都可以访问这个中心智能合约,并通过该中心智能合约在智能合约管理平台上来添加其他智能合约,以使访问者可以通过该中心智能合约来触发其想要访问的智能合约。还可以通过该中心智能合约对其他智能合约进行更新或删除的操作。通过本申请实施例,可以通过中心智能合约来对其他智能合约进行增加、删除、调用、更新等管理操作,使得智能合约的管理方便快捷。
本申请实施例还提供一种服务器,该服务器用于执行前述任一项上述的方法的单元。具体地,参见图2,图2是本申请实施例提供的一种服务器的示意框图。本实施例的服务器包括:接收单元210、触发单元220、执行单元230。
接收单元210,用于接收智能合约管理请求,上述智能合约管理请求包括待管理智能合约的主题和管理信息;
触发单元220,用于根据上述智能合约管理请求触发中心智能合约,调用上述中心智能合约的管理接口;
执行单元230,用于通过上述管理接口对待管理对应关系执行与上述管理信息对应的操作,上述待管理对应关系为上述待管理智能合约的主题与待管理智能合约的地址的对应关系。
在一种可选的实施方式中,上述智能合约管理请求为添加智能合约请求,上述待管理智能合约为待添加智能合约,上述管理信息包括待添加智能合约的地址和存储指令;
上述执行单元230,用于通过上述管理接口存储上述待添加智能合约的地址和上述待添加智能合约的主题之间的对应关系。
在一种可选的实施方式中,上述智能合约管理请求为更新智能合约请求,上述待管理智能合约为待更新智能合约,上述管理信息包括待更新智能合约的地址和更新指令;
上述执行单元230,用于通过上述管理接口查找上述待更新智能合约的主题对应的已存储对应关系;将上述已存储对应关系中的地址更换为上述待更新智能合约的地址。
在一种可选的实施方式中,上述智能合约管理请求为删除智能合约请求,上述待管理智能合约为待删除智能合约,上述管理信息包括删除指令;
上述执行单元230,用于通过上述管理接口查找上述待删除智能合约的主题对应的已存储对应关系;删除上述已存储对应关系。
在一种可选的实施方式中,上述接收单元210,还用于接收智能合约调用请求,上述调用请求包括待调用智能合约的主题和调用信息;
上述触发单元220,还用于根据上述智能合约调用请求触发中心智能合约,调用上述中心智能合约的管理接口;
上述执行单元230,还用于通过上述管理接口查找上述待调用智能合约的主题的已存储对应关系;获取上述已存储对应关系中的待调用智能合约的地址;根据上述待调用智能合约的地址和上述调用信息调用上述待调用智能合约。
在一种可选的实施方式中,上述中心智能合约包括至少一个管理接口;
上述触发单元220,用于根据上述智能合约管理请求触发中心智能合约,调用与上述待管理智能合约的主题对应的上述中心智能合约的管理接口。
在一种可选的实施方式中,在上述接收智能合约管理请求之前,上述服务器还包括:
部署单元,用于接收中心智能合约发布请求,根据上述中心智能合约发布请求在区块链上部署上述中心智能合约。
参见图3,图3是本申请实施例提供的一种设备,该设备可以为服务器,如图3所示设备包括:一个或多个处理器301;一个或多个输入设备302,一个或多个输出设备303和存储器304。上述处理器301、输入设备302、输出设备303和存储器304通过总线305连接。存储器302用于存储指令,处理器301用于执行存储器302存储的指令。
其中,该设备作为服务器使用的情况下,处理器301用于:接收智能合约管理请求,上述智能合约管理请求包括待管理智能合约的主题和管理信息;根据上述智能合约管理请求触发中心智能合约,调用上述中心智能合约的管理接口;通过上述管理接口对待管理对应关系执行与上述管理信息对应的操作,上述待管理对应关系为上述待管理智能合约的主题与待管理智能合约的地址的对应关系。
应当理解,在本申请实施例中,所称处理器301可以是中央处理单元(CentralProcessing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
输入设备302可以包括触控板、指纹采传感器(用于采集用户的指纹信息和指纹的方向信息)、麦克风等,输出设备303可以包括显示器(LCD等)、扬声器等。
该存储器304可以包括只读存储器和随机存取存储器,并向处理器301提供指令和数据。存储器304的一部分还可以包括非易失性随机存取存储器。例如,存储器304还可以存储设备类型的信息。
具体实现中,本申请实施例中所描述的处理器301、输入设备302、输出设备303可执行本申请实施例提供的一种智能合约管理方法的第一实施例中所描述的实现方式,也可执行本申请实施例所描述的服务器的实现方式,在此不再赘述。
在本申请的另一实施例中提供一种计算机可读存储介质,上述计算机可读存储介质存储有计算机程序,上述计算机程序被处理器执行时实现:接收智能合约管理请求,上述智能合约管理请求包括待管理智能合约的主题和管理信息;根据上述智能合约管理请求触发中心智能合约,调用上述中心智能合约的管理接口;通过上述管理接口对待管理对应关系执行与上述管理信息对应的操作,上述待管理对应关系为上述待管理智能合约的主题与待管理智能合约的地址的对应关系。
上述计算机可读存储介质可以是前述任一实施例上述的终端的内部存储单元,例如终端的硬盘或内存。上述计算机可读存储介质也可以是上述终端的外部存储设备,例如上述终端上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)等。进一步地,上述计算机可读存储介质还可以既包括上述终端的内部存储单元也包括外部存储设备。上述计算机可读存储介质用于存储上述计算机程序以及上述终端所需的其他程序和数据。上述计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、服务器和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、服务器和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本申请实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例上述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种智能合约管理方法,其特征在于,包括:
接收智能合约管理请求,所述智能合约管理请求包括待管理智能合约的主题和管理信息;
根据所述智能合约管理请求触发中心智能合约,调用所述中心智能合约的管理接口;
通过所述管理接口对待管理对应关系执行与所述管理信息对应的操作,所述待管理对应关系为所述待管理智能合约的主题与待管理智能合约的地址的对应关系。
2.根据权利要求1所述的方法,其特征在于,所述智能合约管理请求为添加智能合约请求,所述待管理智能合约为待添加智能合约,所述管理信息包括待添加智能合约的地址和存储指令;
所述通过所述管理接口对待管理对应关系执行与所述管理信息对应的操作,包括:
通过所述管理接口存储所述待添加智能合约的地址和所述待添加智能合约的主题之间的对应关系。
3.根据权利要求1所述的方法,其特征在于,所述智能合约管理请求为更新智能合约请求,所述待管理智能合约为待更新智能合约,所述管理信息包括待更新智能合约的地址和更新指令;
所述通过所述管理接口对待管理对应关系执行与所述管理信息对应的操作,包括:
通过所述管理接口查找所述待更新智能合约的主题对应的已存储对应关系;
将所述已存储对应关系中的地址更换为所述待更新智能合约的地址。
4.根据权利要求1所述的方法,其特征在于,所述智能合约管理请求为删除智能合约请求,所述待管理智能合约为待删除智能合约,所述管理信息包括删除指令;
所述通过所述管理接口对待管理对应关系执行与所述管理信息对应的操作,包括:
通过所述管理接口查找所述待删除智能合约的主题对应的已存储对应关系;
删除所述已存储对应关系。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收智能合约调用请求,所述调用请求包括待调用智能合约的主题和调用信息;
根据所述智能合约调用请求触发中心智能合约,调用所述中心智能合约的管理接口;
通过所述管理接口查找所述待调用智能合约的主题对应的已存储对应关系;
获取所述已存储对应关系中的待调用智能合约的地址;
根据所述待调用智能合约的地址和所述调用信息调用所述待调用智能合约。
6.根据权利要求1所述的方法,其特征在于,所述中心智能合约包括至少一个管理接口;
所述根据所述智能合约管理请求触发中心智能合约,调用所述中心智能合约的管理接口,包括:
根据所述智能合约管理请求触发中心智能合约,调用与所述待管理智能合约的主题对应的所述中心智能合约的管理接口。
7.根据权利要求1-6任一项所述的方法,其特征在于,在所述接收智能合约管理请求之前,所述方法还包括:
接收中心智能合约发布请求,根据所述中心智能合约发布请求在区块链上部署所述中心智能合约。
8.一种服务器,其特征在于,包括:
接收单元,用于接收智能合约管理请求,所述智能合约管理请求包括待管理智能合约的主题和管理信息;
触发单元,用于根据所述智能合约管理请求触发中心智能合约,调用所述中心智能合约的管理接口;
执行单元,用于通过所述管理接口对待管理对应关系执行与所述管理信息对应的操作,所述待管理对应关系为所述待管理智能合约的主题与待管理智能合约的地址的对应关系。
9.一种服务器,其特征在于,所述服务器包括处理器、存储器和通信模块,其中,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码来执行如权利要求1-5任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-5任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910360620.9A CN110119430B (zh) | 2019-04-29 | 2019-04-29 | 一种智能合约管理方法、服务器及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910360620.9A CN110119430B (zh) | 2019-04-29 | 2019-04-29 | 一种智能合约管理方法、服务器及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110119430A true CN110119430A (zh) | 2019-08-13 |
CN110119430B CN110119430B (zh) | 2023-06-30 |
Family
ID=67520360
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910360620.9A Active CN110119430B (zh) | 2019-04-29 | 2019-04-29 | 一种智能合约管理方法、服务器及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110119430B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112541756A (zh) * | 2019-09-20 | 2021-03-23 | 上海哔哩哔哩科技有限公司 | 区块链合约升级方法、装置、计算机设备及可读存储介质 |
CN112632486A (zh) * | 2019-10-08 | 2021-04-09 | 橙载(上海)信息技术有限公司 | 一种基于智能合约实现的节点间权限管理方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106919419A (zh) * | 2017-02-03 | 2017-07-04 | 中钞信用卡产业发展有限公司北京智能卡技术研究院 | 区块链上的智能合约程序的更新方法及装置 |
WO2018111295A1 (en) * | 2016-12-16 | 2018-06-21 | Hitachi, Ltd. | Blockchain monitoring and management |
CN109087104A (zh) * | 2018-08-29 | 2018-12-25 | 北京京东尚科信息技术有限公司 | 区块链智能合约管理方法和系统、计算机可读存储介质 |
US20190018947A1 (en) * | 2017-07-14 | 2019-01-17 | Alibaba Group Holding Limited | Login information data processing |
WO2019072289A2 (en) * | 2018-11-30 | 2019-04-18 | Alibaba Group Holding Limited | INTELLIGENT BLOCK CHAIN CONTRACT UPDATES USING A DECENTRALIZED DECISION |
-
2019
- 2019-04-29 CN CN201910360620.9A patent/CN110119430B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018111295A1 (en) * | 2016-12-16 | 2018-06-21 | Hitachi, Ltd. | Blockchain monitoring and management |
CN106919419A (zh) * | 2017-02-03 | 2017-07-04 | 中钞信用卡产业发展有限公司北京智能卡技术研究院 | 区块链上的智能合约程序的更新方法及装置 |
US20190018947A1 (en) * | 2017-07-14 | 2019-01-17 | Alibaba Group Holding Limited | Login information data processing |
CN109087104A (zh) * | 2018-08-29 | 2018-12-25 | 北京京东尚科信息技术有限公司 | 区块链智能合约管理方法和系统、计算机可读存储介质 |
WO2019072289A2 (en) * | 2018-11-30 | 2019-04-18 | Alibaba Group Holding Limited | INTELLIGENT BLOCK CHAIN CONTRACT UPDATES USING A DECENTRALIZED DECISION |
Non-Patent Citations (1)
Title |
---|
黄洁华等: "众筹区块链上的智能合约设计", 《信息安全研究》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112541756A (zh) * | 2019-09-20 | 2021-03-23 | 上海哔哩哔哩科技有限公司 | 区块链合约升级方法、装置、计算机设备及可读存储介质 |
CN112632486A (zh) * | 2019-10-08 | 2021-04-09 | 橙载(上海)信息技术有限公司 | 一种基于智能合约实现的节点间权限管理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110119430B (zh) | 2023-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113222752B (zh) | 基于区块链的数据处理系统、方法、计算设备及存储介质 | |
TWI723783B (zh) | 基於區塊鏈的票據實名領取方法、裝置及電子設備 | |
CN109785136A (zh) | 一种区块链的交易处理方法、客户端及区块链网络 | |
CN109003078A (zh) | 基于区块链的智能合约调用方法及装置、电子设备 | |
CN106202505A (zh) | 数据处理方法及其系统 | |
CN108446976B (zh) | 一种公积金转移方法、计算机可读存储介质及终端设备 | |
Yadav | Blockchain security | |
CN105760192B (zh) | 系统服务端业务模块的注册方法及装置 | |
TW202040478A (zh) | 基於區塊鏈的資源配置方法及裝置和電子設備 | |
TW202004597A (zh) | 基於區塊鏈的虛擬資源交付、群眾募資方法及裝置 | |
CN109949108A (zh) | 基于区块链的发票创建方法和装置、电子设备 | |
WO2020119302A1 (zh) | 基于区块链的发票创建方法和装置、电子设备 | |
CN107943599A (zh) | 红包提醒方法、装置、计算机装置及计算机可读存储介质 | |
CN110852648A (zh) | 一种数据处理方法、装置及计算机存储介质 | |
CN110119430A (zh) | 一种智能合约管理方法、服务器及计算机可读存储介质 | |
CN110135993A (zh) | Utxo模型适配智能合约账户模型的方法、设备及存储介质 | |
CN107644263A (zh) | 银行业务预约办理方法及服务器 | |
CN110458612A (zh) | 一种信息处理方法及相关产品 | |
CN109271564A (zh) | 保单查询方法及设备 | |
WO2022206438A1 (zh) | 提供跨链消息的方法和装置 | |
WO2022206439A1 (zh) | 提供跨链消息的方法和装置 | |
CN104537563B (zh) | 一种额度数据处理方法及服务器 | |
CN109325366A (zh) | 基于联盟链的业务处理方法、设备及计算机可读存储介质 | |
US20230245118A1 (en) | Point-to-point (p2p)-based data processing method and system, computing device, and storage medium | |
WO2021114075A1 (zh) | 一种基于区块链的信用评分处理方法、系统、设备及介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |