CN109978477B - 基于区块链的智能合约版本控管系统及其方法 - Google Patents

基于区块链的智能合约版本控管系统及其方法 Download PDF

Info

Publication number
CN109978477B
CN109978477B CN201711446314.4A CN201711446314A CN109978477B CN 109978477 B CN109978477 B CN 109978477B CN 201711446314 A CN201711446314 A CN 201711446314A CN 109978477 B CN109978477 B CN 109978477B
Authority
CN
China
Prior art keywords
version
contract
control
intelligent
intelligent contract
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.)
Active
Application number
CN201711446314.4A
Other languages
English (en)
Other versions
CN109978477A (zh
Inventor
林祐德
林子圻
陈政浩
谢宏涛
陈岱铃
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Modernity Financial Holdings Ltd
Original Assignee
Modernity Financial Holdings Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Modernity Financial Holdings Ltd filed Critical Modernity Financial Holdings Ltd
Priority to CN201711446314.4A priority Critical patent/CN109978477B/zh
Publication of CN109978477A publication Critical patent/CN109978477A/zh
Application granted granted Critical
Publication of CN109978477B publication Critical patent/CN109978477B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/101Collaborative creation, e.g. joint development of products or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Abstract

一种基于区块链的智能合约版本控管系统,借由版本控管节点的控管模块将不同版本的智能合约通过控管合约注册对应的合约地址与版本号,使用节点的应用程序通过控管地址取得控管合约的实体,并通过控管合约的实体取得最新注册的版本号与合约地址,让应用程序依据取得的最新注册的版本号与合约地址取得最新版本的该智能合约的实体,以达成应用程序欲取得最新版本的智能合约的实体时,不需因智能合约的版本更新而被强迫更新的技术功效。

Description

基于区块链的智能合约版本控管系统及其方法
技术领域
本发明涉及一种版本控管系统及其方法,特别是基于区块链的智能合约版本控管系统及其方法。
背景技术
近年来,由于区块链具有难以窜改、交易透明等特性,各种基于区块链的应用便如雨后春笋般出现。其中,区块链应用于智能合约的相关技术成为备受关注的议题之一。
当区块链应用于智能合约时,实际上就是将智能合约的程序代码包含在交易的数据栏位中并发送到区块链网络,通过区块链网络中的节点将包含智能合约的程序代码制作成区块并广播该区块,以供其他节点进行验证,通过验证的区块即可发布在区块链网络。
举例而言,在Ethereum所发布的协议版本中,只要该交易没有设定收方地址(recipient),区块链网络即视此交易为发布智能合约交易,经过验证后产生对应的合约地址(contract address),该合约地址即智能合约的参照地址,使用节点的应用程序即可通过该合约地址取得该智能合约实体,并执行该智能合约。
然而,区块链应用于智能合约时,因为区块链具有难以窜改的特性,使得已发布的智能合约没有机会进行更改。因此,当智能合约可能存在错误需进行修复或智能合约需要新增功能,需重新发布修复或新增功能的智能合约。但是,一旦重新发布修复或新增功能的智能合约后,使用节点的应用程序也需相应进行更新,以取得最新的智能合约的合约地址。
综上所述,可知现有技术中长期以来一直存在当使用节点的应用程序欲取得更新版本的智能合约时,应用程序因智能合约的版本更新而被强迫更新的问题,因此实有必要提出改进的技术手段,来解决此问题。
发明内容
本发明说明一种基于区块链的智能合约版本控管系统及其方法。
首先,本发明说明一种基于区块链的智能合约版本控管系统,此系统包含:版本控管节点、多个验证节点及使用节点。其中,版本控管节点包含控管模块,用以发布不同版本的智能合约,并依据不同版本的智能合约分别产生区块链交易,其中,控管模块将不同版本的智能合约通过控管合约注册对应的合约地址与版本号,每一版本的智能合约参照先前版本的智能合约。多个验证节点用以接收该些区块链交易,该些验证节点其中之一的验证节点将该些区块链交易依次写入区块后提供其他验证节点进行验证,验证区块的验证节点将通过验证的区块发布在区块链网络中。使用节点包含应用程序,用以通过控管地址取得控管合约的实体,并通过控管合约的实体取得最新注册的版本号与合约地址,再通过取得的最新注册的版本号与合约地址取得最新版本的智能合约的实体。
另外,本发明说明一种基于区块链的智能合约版本控管方法,其步骤包括:版本控管节点发布不同版本的智能合约,并依据不同版本的智能合约分别产生区块链交易;版本控管节点将区块链交易提供区块链网络上的多个验证节点,该些验证节点其中之一的验证节点将区块链交易依次写入区块,并将区块提供其他验证节点进行验证;验证区块的验证节点将通过验证的区块发布在区块链网络中;版本控管节点的控制模块将不同版本的智能合约通过控管合约注册对应的合约地址与版本号,其中,每一版本的智能合约参照先前版本的智能合约;使用节点的应用程序通过控管地址取得控管合约的实体;应用程序通过控管合约的实体取得最新注册的版本号与合约地址;以及应用程序通过取得的最新注册的版本号与合约地址取得最新版本的智能合约的实体。
本发明所说明的系统与方法如上,与现有技术的差异在于本发明是借由版本控管节点的控管模块将不同版本的智能合约通过控管合约注册对应的合约地址与版本号,使用节点的应用程序通过控管地址取得控管合约的实体,并通过控管合约的实体取得最新注册的版本号与合约地址,让应用程序依据取得的最新注册的版本号与合约地址取得最新版本的该智能合约的实体。
通过上述的技术手段,本发明可以达成应用程序欲取得最新版本的智能合约的实体时,不需因智能合约的版本更新而被强迫更新的技术功效。
附图说明
图1为本发明基于区块链的智能合约版本控管系统的方框图。
图2为本发明基于区块链的智能合约版本控管方法的方法流程图。
图3A为本发明的第一版本智能合约的实施例示意图。
图3B为本发明的第一版智能合约所参照的储存余额指令的实施例示意图。
图3C为本发明的第二版本智能合约的实施例示意图。
图3D为本发明的控管合约的实施例示意图。
【附图标记列表】
10 区块链网络
50 控管模块
100 基于区块链的智能合约版本控管系统
110 验证节点
120 版本控管节点
130 使用节点
132 应用程序
具体实施方式
以下将配合图式及实施例来详细说明本发明的实施方式,借此对本发明如何应用技术手段来解决技术问题并达成技术功效的实现过程能充分理解并据以实施。
在说明本发明所说明的基于区块链的智能合约版本控管系统及其方法之前,先对本发明所自行定义的名词作说明,本发明所述的版本控管节点、验证节点及使用节点通过区块链网络相互连结,版本控管节点、验证节点及使用节点具有相同的元件与结构(即版本控管节点、验证节点及使用节点皆可包含控管模块与应用程序),在一实施例中,不同节点的差异在于版本控管节点拥有一组金钥对,版本控管节点借由该组金钥对针对新版本的智能合约进行签章,而后发布已签章的新版本的智能合约﹔验证节点用以验证区块链网络中其他节点所广播的区块内容﹔使用节点即为通过控管合约取得版本控管节点所发布的新版本智能合约的实体的节点,当使用节点的应用程序通过控管合约的实体取得已签章的新版本的智能合约时,会先通过该组金钥对的公钥验证已签章的新版本智能合约,若使用节点的应用程序判断已签章的新版本智能合约利用该组金钥对进行签章时,则代表已签章的新版本智能合约由版本控管节点所发布,可执行该已签章的新版本智能合约﹔若使用节点的应用程序判断已签章的新版本智能合约不是利用该组金钥对进行签证时,则代表已签章的新版本智能合约不是由版本控管节点所发布,不可执行该已签章的新版本智能合约。在另一实施例中,不同节点的差异在于版本控管节点发布新版本的智能合约﹔验证节点用以验证区块链网络中其他节点所广播的区块内容﹔使用节点即为通过控管合约取得版本控管节点所发布的新版本智能合约的实体的节点,在本实施例中使用节点的应用程序信任控管合约的实体所找到的新版本智能合约的实体,所以控管合约的实体所传回来的各种内容皆为可信内容,不需进行验证即可执行新版本智能合约。因此,本发明所述的版本控管节点、验证节点及使用节点因其执行不同的程序以及是否拥有所述金钥对而扮演不同的角色。
此外,本发明所述基于区块链的智能合约版本控管系统所包含的版本控管节点、验证节点及使用节点可以利用各种方式来实现,包括软件、硬件、固件或其任意组合,本发明的范围在此方面不受限制。在实施中提出的技术使用软件或固件可以被储存在机器可读储存介质上,例如:只读存储器(ROM)、随机存取存储器(RAM)、磁盘储存介质、光储存介质、闪速存储器装置等等,并且可以由一个或多个通用或专用的可程序化微处理器执行。
以下配合图式对本发明基于区块链的智能合约版本控管系统及其方法做进一步说明。需注意的是,以下实施例的说明以各节点所扮演的角色之间相互运行的描述,该些节点并非限缩仅能扮演验证节点、版本控管节点或使用节点,可依据每次执行的程序或是否拥有所述金钥对而为不同的节点。
请先参阅图1,图1为本发明基于区块链的智能合约版本控管系统的系统方框图,基于区块链的智能合约版本控管系统的系统100包含:多个验证节点110、版本控管节点120及使用节点130。
所述节点110的数量为N,N为大于2的正整数,每一节点110通过区块链网络10相互连线。所述区块链网络10可为网际网络、私有网络、虚拟私有网络等等。
版本控管节点120包含控管模块50,用以发布不同版本的智能合约,并依据不同版本的智能合约分别产生区块链交易,而后将该些区块链交易提供区块链网络10上的多个验证节点110。其中,版本控管节点120如何发布智能合约以及如何产生区块链交易如上所述,于此不再多加赘述。
该些验证节点110用以接收该些区块链交易,该些验证节点110其中之一的验证节点110将该些区块链交易依次写入区块后提供其他验证节点110进行验证,验证区块的验证节点110将通过验证的区块发布在区块链网络10中。更详细地说,每一验证节点110可将该些区块链交易依次写入区块,再通过区块链网络10广播包含该些区块链交易的区块,以让其他验证节点110进行验证。
为了避免智能合约被窜改,进而提高整体可靠性,多个验证节点110会持续收取区块链网络10上的区块链交易,并将该些区块链交易依次写入区块,再通过区块链网络10提供给非广播所述区块的其他验证节点110进行验证,当某一区块之后的链结的越长时,该区块则越难被窜改。在实际实施上,上述智能合约的发布技术可使用现有技术来实现,例如:Ethereum所发布的协议版本。
控管模块50将不同版本的智能合约通过控管合约注册对应的合约地址与版本号,每一版本的智能合约参照先前版本的智能合约。更详细地说,每当版本控管节点120发布新版本的智能合约,且依据新版本的智能合约所产生的区块链交易通过验证节点110的验证后,控管模块50将新版本的智能合约通过控管合约注册对应的合约地址与版本号,控管合约依据注册的时间顺序依次产生对应合约地址的版本号。其中,版本号用以定义智能合约的版本,例如:第一个进行注册的智能合约的版本为第1版,第二个进行注册的智能合约的版本为第2版。其中,控管合约记录不同版本智能合约的合约地址与版本号。
此外,每一版本的智能合约参照先前版本的智能合约。更详细地说,每一版本的智能合约皆包含控管地址,当每一版本的智能合约需参照先前版本的智能合约时,每一版本的智能合约会通过控管地址取得控管合约的实体,并通过控管合约的实体取得参照版本的智能合约的版本号与合约地址,使得每一版本的智能合约的实体通过取得的参照版本的智能合约的版本号与合约地址取得参照版本的智能合约的实体。其中,控管地址为控管合约的参照地址。因此,不同于现有技术中新版本的智能合约需包含其所参照的先前版本的智能合约的合约地址,而造成当智能合约的版本数成长过大时,需要大量储存空间以储存更新的智能合约的问题,本发明的每一版本的智能合约可通过控管合约参照先前版本的智能合约,解决上述现有技术的问题,同时使得新版本的智能合约因去除过多的变数而增加可读性。
使用节点130包含应用程序132,用以通过控管地址取得控管合约的实体,并通过控管合约的实体取得最新注册的版本号与合约地址,再通过取得的最新注册的版本号与合约地址取得最新版本的智能合约的实体。更详细地说,具有应用程序132的使用节点130欲取得最新版本的智能合约的实体时,由于具有应用程序132的使用节点130没有最新版本智能合约的合约地址,而无法取得最新版本的智能合约的实体,因此,具有应用程序132的使用节点130可通过区块链网络10以控管地址取得控管合约的实体,并通过控管合约的实体取得最新注册的版本号与合约地址,让使用节点130的应用程序132依据取得的最新注册的版本号与合约地址取得最新版本的智能合约的实体。由于控管地址固定不变,因此,当具有应用程序132的使用节点130欲取得最新版本的智能合约的实体时,可通过控管地址以及控管合约的实体取得最新版本的智能合约的实体,不需因智能合约的版本更新(即版本数持续往上累加)而被强迫更新。
此外,在使用节点130的应用程序132取得最新版本的智能合约的实体之后,欲执行最新版本的智能合约的实体时,由于最新版本的智能合约参照先前版本的智能合约,因此,最新版本的智能合约的实体通过控管地址取得控管合约的实体,并通过控管合约的实体取得指定版本的智能合约的合约地址与版本号,使得最新版本的智能合约的实体通过取得的指定版本的智能合约的版本号与合约地址取得指定版本的智能合约的实体,以执行最新版本的智能合约的实体。其中,指定版本的智能合约为最新版本的智能合约所参照的智能合约。
在一实施例中,版本控管节点120还可拥有一组金钥对,版本控管节点120借由该组金钥对针对新版本的智能合约进行签章,而后发布已签章的新版本的智能合约﹔验证节点110用以验证区块链网络10中其他节点所广播的区块内容﹔使用节点130即为通过控管合约取得版本控管节点120所发布的新版本智能合约的实体的节点,当使用节点130的应用程序132通过控管合约的实体取得已签章的新版本的智能合约时,会先通过该组金钥对的公钥验证已签章的新版本智能合约,若使用节点130的应用程序132判断已签章的新版本智能合约利用该组金钥对进行签章时,则代表已签章的新版本智能合约由版本控管节点120所发布,可执行该已签章的新版本智能合约﹔若使用节点130的应用程序132判断已签章的新版本智能合约不是利用该组金钥对进行签证时,则代表已签章的新版本智能合约不是由版本控管节点120所发布,不可执行该已签章的新版本智能合约。
接着,请参阅图2,图2为本发明基于区块链的智能合约版本控管方法的方法流程图,其步骤包括:版本控管节点发布不同版本的智能合约,并依据不同版本的智能合约分别产生区块链交易,其中,每一版本的智能合约参照先前版本的智能合约(步骤210);版本控管节点将区块链交易提供区块链网络上的多个验证节点,该些验证节点其中之一的验证节点将区块链交易依次写入区块,并将区块提供其他验证节点进行验证(步骤220);验证区块的验证节点将通过验证的区块发布在区块链网络中(步骤230);版本控管节点的控制模块将不同版本的智能合约通过控管合约注册对应的合约地址与版本号(步骤240);使用节点的应用程序通过控管地址取得控管合约的实体(步骤250);应用程序通过控管合约的实体取得最新注册的版本号与合约地址(步骤260);以及应用程序通过取得的最新注册的版本号与合约地址取得最新版本的智能合约的实体(步骤270)。通过上述步骤,即可通过版本控管节点的控管模块将不同版本的智能合约通过控管合约注册对应的合约地址与版本号,使用节点的应用程序通过控管地址取得控管合约的实体,并通过控管合约的实体取得最新注册的版本号与合约地址,让应用程序依据取得的最新注册的版本号与合约地址取得最新版本的该智能合约的实体。
此外,基于区块链的智能合约版本控管方法的步骤也可包含:最新版本的智能合约的实体通过控管地址取得控管合约的实体﹔最新版本的智能合约的实体通过控管合约的实体取得指定版本的智能合约的版本号与合约地址﹔以及最新版本的智能合约的实体通过取得的指定版本的智能合约的版本号与合约地址取得指定版本的智能合约的实体,其中,最新版本的该智能合约参照指定版本的智能合约。通过上述步骤,最新版本的智能合约的实体即可通过控管合约的实体取得最新版本的智能合约的实体所参照的指定版本的智能合约的实体,以供应用程序执行最新版本的智能合约的实体。
另外,基于区块链的智能合约版本控管方法还可包含:控管合约记录具有不同版本智能合约的该些合约地址与该些版本号。再者,基于区块链的智能合约版本控管方法可利用Ethereum所发布的协议版本进行实现。
在一实施例中,基于区块链的智能合约版本控管方法的步骤210还包含:版本控管节点借由其具有的一组金钥对针对新版本的智能合约进行签章,而后发布已签章的新版本的智能合约。在本实施例中,基于区块链的智能合约版本控管方法的步骤还可包含:应用程序通过控管合约的实体取得最新版本的智能合约的实体后,通过版本控管节点所具有的该组金钥对的公钥验证已签章的新版本的智能合约﹔若应用程序判断最新版本的智能合约利用该组金钥对进行签章时,可执行最新版本的智能合约的实体﹔若应用程序判断已签章的新版本的智能合约不是利用该组金钥对进行签章时,不可执行最新版本的智能合约的实体。
以下配合图3A至图3D以Solidity智能合约程序实施的方式进行如下说明,其中,图3A为本发明的第一版本智能合约的一实施例示意图,图3B为本发明的第一版本智能合约所参照的储存余额指令的一实施例示意图,图3C为本发明的第二版本智能合约的一实施例示意图,图3D为本发明的控管合约的一实施例示意图。
在本实施例中,SampleCoin为一假想的数位货币,并以Ethereum所发布的协议版本实现本实施例。
从图3A与图3B可知,在第一版本智能合约中,合约的拥有者可以发行货币,而货币拥有者可以发送货币给任何人,其中,第一版本智能合约的实体所参照的储存余额指令用以储存SampleCoin的余额数据。
从图3C可知,第二版本智能合约除了包含第一版本智能合约的实体之外,还增加了第一版本智能合约没有的功能,可通过函数send()判断当下区块链的区块数,在产生第一百万个区块以前,货币拥有者可以发送货币给任何人,不需收取手续费,但在产生第一百万个区块之后,每次发送货币必须收取10个SampleCoin当作手续费。
从图3D可知,每次发布新版本的智能合约,需向控管合约注册最新版本智能合约的合约地址,并通过函数register()将最新版本的版本号储存在latestVersion,因此,使用节点的应用程序可通过函数getLatestVersionAddress()即可找到最新版本的智能合约的合约地址。举例而言,假设新版本的智能合约的版本号为“2”,合约地址为“0x002”,当使用节点的应用程序欲取得该新版本的智能合约的实体时,可通过呼叫控管程序的versionRegistrar.setAddress(“2”,0x002)取得该新版本的智能合约的实体。
综上所述,可知本发明与现有技术之间的差异在于通过版本控管节点的控管模块将不同版本的智能合约通过控管合约注册对应的合约地址与版本号,使用节点的应用程序通过控管地址取得控管合约的实体,并通过控管合约的实体取得最新注册的版本号与合约地址,让应用程序依据取得的最新注册的版本号与合约地址取得最新版本的该智能合约的实体,借由此技术手段可以解决现有技术所存在的问题,进而达成使用节点的应用程序欲取得最新版本的智能合约的实体时,不需因智能合约的版本更新而被强迫更新的技术功效。
虽然本发明以前述的实施例说明如上,然其并非用以限定本发明,任何本发明所属技术领域中的技术人员,在不脱离本发明的精神和范围内,当可作些许的更动与润饰,因此本发明的专利保护范围须视本说明书所附的权利要求书所界定的范围为准。

Claims (10)

1.一种基于区块链的智能合约版本控管系统,其包含:
版本控管节点,包含控管模块,用以发布不同版本的智能合约,并依据不同版本的智能合约分别产生区块链交易,其特征在于,该控管模块将不同版本的智能合约通过控管合约注册对应的合约地址与版本号,每一版本的智能合约参照先前版本的智能合约;
多个验证节点,用以接收该些区块链交易,该些验证节点其中之一的验证节点将该些区块链交易依次写入区块后提供其他验证节点进行验证,验证该区块的该验证节点将通过验证的该区块发布在该区块链网络中﹔以及
使用节点,包含应用程序,用以通过控管地址取得该控管合约的实体,并通过该控管合约的实体取得最新注册的该版本号与该合约地址,再通过取得的最新注册的该版本号与该合约地址取得最新版本的该智能合约的实体。
2.根据权利要求1所述的基于区块链的智能合约版本控管系统,其特征在于,最新版本的该智能合约的实体通过该控管地址取得该控管合约的实体,并通过该控管合约的实体取得指定版本的该智能合约的该版本号与该合约地址,使得最新版本的该智能合约的实体通过取得的指定版本的该智能合约的该版本号与该合约地址取得指定版本的该智能合约的实体,其特征在于,最新版本的该智能合约参照指定版本的该智能合约。
3.根据权利要求1所述的基于区块链的智能合约版本控管系统,其特征在于,该控管合约记录不同版本智能合约的合约地址与该些版本号。
4.根据权利要求1所述的基于区块链的智能合约版本控管系统,其特征在于,该基于区块链的智能合约版本控管系统利用Ethereum所发布的协议版本进行实现。
5.根据权利要求1所述的基于区块链的智能合约版本控管系统,其特征在于,该版本控管节点具有一组金钥对。
6.一种基于区块链的智能合约版本控管方法,其步骤包括:
版本控管节点发布不同版本的智能合约,并依据不同版本的智能合约分别产生区块链交易,其特征在于,每一版本的智能合约参照先前版本的智能合约;
该版本控管节点将该区块链交易提供区块链网络上的多个验证节点,该些验证节点其中之一的验证节点将该些区块链交易依次写入区块,并将该区块提供其他验证节点进行验证;
验证该区块的该验证节点将通过验证的该区块发布在该区块链网络中;
该版本控管节点的控制模块将不同版本的智能合约通过控管合约注册对应的合约地址与版本号;
使用节点的应用程序通过控管地址取得该控管合约的实体;
该应用程序通过该控管合约的实体取得最新注册的该版本号与该合约地址;以及
该应用程序通过取得的最新注册的该版本号与该合约地址取得最新版本的该智能合约的实体。
7.根据权利要求6所述的基于区块链的智能合约版本控管方法,还包含:
最新版本的该智能合约的实体通过该控管地址取得该控管合约的实体﹔
最新版本的该智能合约的实体通过该控管合约的实体取得指定版本的该智能合约的该版本号与该合约地址﹔以及
最新版本的该智能合约的实体通过取得的指定版本的该智能合约的该版本号与该合约地址取得指定版本的该智能合约的实体,其特征在于,最新版本的该智能合约参照指定版本的该智能合约。
8.根据权利要求6所述的基于区块链的智能合约版本控管方法,还包含:该控管合约记录不同版本智能合约的该些合约地址与该些版本号。
9.根据权利要求6所述的基于区块链的智能合约版本控管方法,其特征在于,该基于区块链的智能合约版本控管方法通过Ethereum所发布的协议版本进行实现。
10.根据权利要求6所述的基于区块链的智能合约版本控管方法,其特征在于,该版本控管节点具有一组金钥对。
CN201711446314.4A 2017-12-27 2017-12-27 基于区块链的智能合约版本控管系统及其方法 Active CN109978477B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711446314.4A CN109978477B (zh) 2017-12-27 2017-12-27 基于区块链的智能合约版本控管系统及其方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711446314.4A CN109978477B (zh) 2017-12-27 2017-12-27 基于区块链的智能合约版本控管系统及其方法

Publications (2)

Publication Number Publication Date
CN109978477A CN109978477A (zh) 2019-07-05
CN109978477B true CN109978477B (zh) 2022-12-23

Family

ID=67071646

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711446314.4A Active CN109978477B (zh) 2017-12-27 2017-12-27 基于区块链的智能合约版本控管系统及其方法

Country Status (1)

Country Link
CN (1) CN109978477B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110427385B (zh) * 2019-08-02 2022-06-10 中国工商银行股份有限公司 区块链数据更新方法、相关节点及区块链
CN111797106B (zh) * 2020-06-24 2023-09-01 北京荷月科技有限公司 一种兼容多版本合约并行的合约权限设置方法和系统
CN111813441B (zh) * 2020-09-10 2021-02-02 腾讯科技(深圳)有限公司 智能合约发布方法、装置、计算机可读介质及电子设备
CN111932260B (zh) * 2020-09-18 2021-01-26 杭州趣链科技有限公司 一种智能合约版本的管理方法、设备及可读存储介质
CN111932215B (zh) * 2020-09-18 2023-09-29 杭州趣链科技有限公司 一种智能合约版本的管理方法、设备及可读存储介质
CN112148794A (zh) * 2020-09-23 2020-12-29 京东数字科技控股股份有限公司 智能合约的版本管理方法、装置和存储介质
CN112527781B (zh) * 2020-12-23 2022-07-15 上海万向区块链股份公司 一种智能合约数据迁移方法及系统
CN113760353B (zh) * 2021-08-27 2024-01-02 浙商银行股份有限公司 一种区块链智能合约版本控制方法及区块链系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6511201B1 (ja) * 2016-02-23 2019-05-15 エヌチェーン ホールディングス リミテッドNchain Holdings Limited ブロックチェーンにより施行される洗練された取引のためのレジストリ及び自動管理方法
US20170344988A1 (en) * 2016-05-24 2017-11-30 Ubs Ag System and method for facilitating blockchain-based validation
CN107145521B (zh) * 2017-04-10 2019-05-21 杭州趣链科技有限公司 一种面向区块链多级智能合约的数据迁移方法
TWM553025U (zh) * 2017-08-03 2017-12-11 國泰人壽保險股份有限公司 合約管理系統
US20210174432A1 (en) * 2018-08-07 2021-06-10 Perpetual Altruism Limited Computer implemented method and system for updating a database system for a blockchain version control system; computer implemented methods of auctioning an item for a seller, and computer implemented method of updating a smart contract
CN113760353B (zh) * 2021-08-27 2024-01-02 浙商银行股份有限公司 一种区块链智能合约版本控制方法及区块链系统

Also Published As

Publication number Publication date
CN109978477A (zh) 2019-07-05

Similar Documents

Publication Publication Date Title
CN109978477B (zh) 基于区块链的智能合约版本控管系统及其方法
TWI614713B (zh) 基於區塊鏈的智能合約版本控管系統及其方法
CN107577427B (zh) 用于区块链系统的数据迁移方法、设备和存储介质
US11914712B1 (en) Blockchain based secure naming and update verification
JP7411011B2 (ja) セキュアな投票及び配布に利用されるブロックチェーンが実装された計数システム及び方法
US20220108285A1 (en) Methods and Systems for Object Validated Blockchain Accounts
CN110442652B (zh) 一种基于区块链的跨链数据处理方法及装置
CN107077557B (zh) 软件应用程序发布和验证的方法及装置
CN107171810B (zh) 区块链的验证方法及装置
CN111512591A (zh) 可跟踪密钥区块链账本
US20210049715A1 (en) Blockchain-based data procesing method, apparatus, and electronic device
US11367055B2 (en) Decentralized pooled mining for enabling proof-of-work on blockchains
CN110597916B (zh) 基于区块链的数据处理方法、装置、存储介质及终端
WO2019190394A1 (en) Methods of distributing software across a network and distribution systems
EP4070221A1 (en) Cross-partition calls in partitioned, tamper-evident data stores
CN110225012B (zh) 一个基于联盟链的外包数据的拥有权检查和更新方法
CN113988857A (zh) Nft交易方法、交易系统、计算机可读存储介质及终端设备
CN113706313A (zh) 基于区块链的融资方法、系统及计算机可读存储介质
CN114127724A (zh) 针对多副本存储的完整性审计
CN112258188B (zh) 一种区块链交易的处理方法、装置、设备及系统
WO2022082360A1 (zh) 数字资产转移系统
CN110933155B (zh) 一种新型区块链网络
CN113064899B (zh) 资产类证券型通证交易凭证的存储方法、装置和电子设备
WO2022219209A1 (es) Nuevo paquete de contenido de datos, sistema y procedimiento, para la actualización segura en redes de registros distribuidos
CN115392475A (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40007524

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant