CN109358859B - 在区块链网络中安装智能合约的方法、装置及存储介质 - Google Patents

在区块链网络中安装智能合约的方法、装置及存储介质 Download PDF

Info

Publication number
CN109358859B
CN109358859B CN201811128520.5A CN201811128520A CN109358859B CN 109358859 B CN109358859 B CN 109358859B CN 201811128520 A CN201811128520 A CN 201811128520A CN 109358859 B CN109358859 B CN 109358859B
Authority
CN
China
Prior art keywords
intelligent contract
source code
blockchain
encrypted
node
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
CN201811128520.5A
Other languages
English (en)
Other versions
CN109358859A (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.)
Shanghai Dianrong Information Technology Co ltd
Original Assignee
Shanghai Dianrong Information Technology Co 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 Shanghai Dianrong Information Technology Co ltd filed Critical Shanghai Dianrong Information Technology Co ltd
Priority to CN201811128520.5A priority Critical patent/CN109358859B/zh
Publication of CN109358859A publication Critical patent/CN109358859A/zh
Application granted granted Critical
Publication of CN109358859B publication Critical patent/CN109358859B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • 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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • 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/3236Cryptographic 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 using cryptographic hash functions
    • H04L9/3239Cryptographic 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 using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • 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
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/166Implementing security features at a particular protocol layer at the transport layer

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • General Business, Economics & Management (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Storage Device Security (AREA)

Abstract

本发明的实施例提供了用于在区块链网络中安装智能合约的方法,包括:在区块链节点处接收编译服务地址和加密的智能合约源代码;将所述加密的智能合约源代码和所述区块链节点的签名发送至授权服务中心,其中,所述授权服务中心上提供有与所述编译服务地址相关联的编译服务;从所述授权服务中心接收与所述加密的智能合约源代码相关联的智能合约的可执行安装文件;以及通过运行所述可执行安装文件来安装所述智能合约。此外,本发明的实施例还提供了用于在区块链网络中安装智能合约的装置以及用于实施用于在区块链网络中安装智能合约的方法的计算机可读存储介质。

Description

在区块链网络中安装智能合约的方法、装置及存储介质
技术领域
本发明的实施例涉及区块链技术,更为具体地涉及一种的用于在区块链网络中安装智能合约的方法、用于执行上述方法的装置以及一种相应的计算机可读存储介质。
背景技术
区块链(Blockchain)作为近几年兴起的新兴技术,得到了广泛的讨论和研究。区块链是用分布式数据库识别、传播和记载信息的智能化对等网络,也称为价值互联网。区块链技术包括以块结构存储数据,使用密码学保证传输和访问安全等,其能够实现数据一致性存储、反篡改、去中心的技术体系。
智能合约是一种旨在以信息化方式传播、验证或执行合同的计算机协议,其能够表现为在区块链上准确运行的计算机程序。用户终端可通过使用智能合约进行交易、共享数据、建立信任、并由区块链技术的特性保障数据的存储、读取、执行整个过程透明可跟踪、不可篡改。
目前,在大多数情况下将智能合约的源代码直接传输给各个需要安装该智能合约的区块链节点,尚不存在一种对智能合约的提供者所提供的源代码进行保护的技术方案。
发明内容
针对现有技术中所存在的技术问题,本发明的实施例的第一方面提供了一种用于在区块链网络中安装智能合约的方法,所述方法包括:
在区块链节点处接收编译服务地址和加密的智能合约源代码;
将所述加密的智能合约源代码和所述区块链节点的签名发送至授权服务中心,其中,所述授权服务中心上提供有与所述编译服务地址相关联的编译服务;
从所述授权服务中心接收与所述加密的智能合约源代码相关联的智能合约的可执行安装文件;以及
通过运行所述可执行安装文件来安装所述智能合约。
本发明的实施例的第二方面提供了一种用于在区块链网络中安装智能合约的方法,所述方法包括:
接收针对所述智能合约的安装请求,所述安装请求包括所述智能合约的安装目的地;
向与所述安装目的地相关联的区块链节点发送编译服务地址和加密的智能合约源代码;
从所述区块链节点接收所述区块链节点的签名;
根据所述区块链节点的签名对所述区块链节点的身份进行验证;以及
在所述身份验证通过的情况下,将与所述加密的智能合约源代码相关联的智能合约的可执行安装文件发送至所述区块链节点。
此外,本发明的实施例的第三方面提供了一种用于在区块链网络中安装智能合约的装置,所述装置包括:
处理器;以及
存储器,其用于存储指令,当所述指令执行时使得所述处理器执行以下操作:
在区块链节点处接收编译服务地址和加密的智能合约源代码;
将所述加密的智能合约源代码和所述区块链节点的签名发送至授权服务中心,其中,所述授权服务中心上提供有与所述编译服务地址相关联的编译服务;
从所述授权服务中心接收与所述加密的智能合约源代码相关联的智能合约的可执行安装文件;以及
通过运行所述可执行安装文件来安装所述智能合约。
再者,本发明的实施例的第四方面提供了一种用于在区块链网络中安装智能合约的装置,所述装置包括:
处理器;以及
存储器,其用于存储指令,当所述指令执行时使得所述处理器执行以下操作:
接收针对所述智能合约的安装请求,所述安装请求包括所述智能合约的安装目的地;
向与所述安装目的地相关联的区块链节点发送编译服务地址和加密的智能合约源代码;
从所述区块链节点接收所述区块链节点的签名;
根据所述区块链节点的签名对所述区块链节点的身份进行验证;以及
在所述身份验证通过的情况下,将与所述加密的智能合约源代码相关联的智能合约的可执行安装文件发送至所述区块链节点。
此外,本发明的实施例的第五方面还提供了一种计算机可读存储介质,其具有存储在其上的计算机可读程序指令,所述计算机可读程序指令用于执行根据本发明的第一方面或第二方面所述的用于在区块链网络中安装智能合约的方法。
通过依据本发明的实施例所提供的用于在区块链网络中安装智能合约的方法、用于在区块链网络中安装智能合约的装置以及相应的计算机可读存储介质能够有效地保证区块链上的智能合约的源代码的安全,保证源代码不被未授权方获取,进而使得区块链上的智能合约的源代码的隐私性得到保护。
此外,对于加密的智能合约源代码的解密以及编译均由所述授权服务中心来实施,从而免去了密钥传输的需求,进一步提高了智能合约源代码的安全性。
本发明的其他优势将在下文中进一步说明。
附图说明
结合附图并参考以下详细说明,本发明的各实施例的特征、优点及其他方面将变得更加明显,在此以示例性而非限制性的方式示出了本发明的若干实施例,在附图中:
图1示出了根据本发明的实施例的授权服务中心系统100的架构图;;
图2示出了根据本发明的实施例的对智能合约进行操作的过程200的示意图;
图3示出了根据本发明的实施例的用于在区块链网络中安装智能合约的方法300的示意流程图;
图4示出了根据本发明的实施例的用于在区块链网络中安装智能合约的方法400的示意流程图;
图5示出了根据本发明的一个实施例的用于在区块链网络中安装智能合约的装置500的示意方框图;以及
图6示出了根据本发明的另一个实施例的用于在区块链网络中安装智能合约的装置600的示意方框图。
具体实施方式
以下参考附图详细描述本发明的各个示例性实施例。虽然以下所描述的示例性方法、装置包括在其它组件当中的硬件上执行的软件和/或固件,但是应当注意,这些示例仅仅是说明性的,而不应看作是限制性的。例如,考虑在硬件中独占地、在软件中独占地、或在硬件和软件的任何组合中可以实施任何或所有硬件、软件和固件组件。因此,虽然以下已经描述了示例性的方法和装置,但是本领域的技术人员应容易理解,所提供的示例并不用于限制用于实现这些方法和装置的方式。
此外,附图中的流程图和框图示出了根据本发明的各种实施例的方法和系统的可能实现的体系架构、功能和操作。应当注意,方框中所标注的功能也可以按照不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,或者它们有时也可以按照相反的顺序执行,这取决于所涉及的功能。同样应当注意的是,流程图和/或框图中的每个方框、以及流程图和/或框图中的方框的组合,可以使用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以使用专用硬件与计算机指令的组合来实现。
在详细介绍依据本发明的具体实施方式之前,首先对本发明中用到的一些术语进行说明。
在本发明中,术语“授权服务中心”是指智能合约发行平台。例如,智能合约的提供者能够在授权服务中心中发布、许可使用智能合约,而用户能够在授权服务中心中浏览、查看、下载智能合约。
在本发明中,术语“编译服务”是指授权服务中心中具有对加密的智能合约源代码进行解密和编译的功能的服务。编译服务能够独立确定加密的智能合约源代码所使用的密钥,而且该编译服务能够根据表示密钥和加密的智能合约源代码之间的对应关系的密钥表格来准确地对加密的智能合约源代码进行解密并进行编译,以形成该智能合约的可执行安装文件,以便后续的安装操作。
在本发明中,术语“智能合约的提供者”是具有许可他人使用智能合约的权利的人或单位,例如,其能够是智能合约的作者。
在本发明中,术语“智能合约的安装目的地”是指由针对智能合约的安装请求指定的、该智能合约将被安装至的区块链节点,例如,智能合约的安装目的地能够是由安装请求指定的区块链网络中的某个区块链节点的地址。
本发明内容中的术语“统一资源定位地址”是指因特网上标准的资源的地址,又称统一资源定位符(URL:Uniform Resource Locator)或网页地址。
在展开具体的解决方案之前,本发明的申请人首先介绍一下本发明所基于的应用场景及本发明所基于的技术问题。
在现有的区块链网络之中,如果一个区块链节点需要安装某个智能合约,其将会例如从与之通信连接的授权服务中心直接获取该智能合约的源代码,然后进行编译和安装,这样使得智能合约的源代码有可能遭到泄露,也有可能被非授权方获取,也就是说,现有技术中并未对智能合约源代码进行保护。
此外,即便是对智能合约源代码进行过加密处理,但是由于还需要传输密钥信息,从而使得在传输密钥信息时密钥信息有可能被截获从而使得密钥信息泄露,进而使得加密的智能合约源代码被解密继而使得未授权方获取到智能合约源代码的,即智能合约源代码遭到泄露的风险依然存在。
总体上,本发明的实施例提供了一种用于在区块链网络中安装智能合约的方法,在该方法中,对智能合约源代码进行加密的密钥并不随着加密的智能合约源代码进行传输,而是保存在授权服务中心,授权服务中心上的编译服务在需要对加密的智能合约源代码进行解密时只需调用相关联的密钥即可,不需向任何其他方传输该密钥,从而降低了密钥被截获的可能性。具体来看,在该方法中,在区块链节点处接收编译服务地址和加密的智能合约源代码;将所述加密的智能合约源代码和所述区块链节点的签名发送至授权服务中心,其中,所述授权服务中心上提供有与所述编译服务地址相关联的编译服务;从所述授权服务中心接收与所述加密的智能合约源代码相关联的智能合约的可执行安装文件;以及通过运行所述可执行安装文件来安装所述智能合约。
通过运用上述方法并不会需要传输加密的智能合约源代码在进行加密时所使用的密钥,也就能够使得所有的区块链节点并不掌握加密的智能合约源代码的加密密钥,因而所有的区块链节点也就不可能获得未加密的智能合约源代码,进而不会造成智能合约源代码泄露。此外,能够对诸如区块链即服务平台(Blockchain as a Service:BaaS)的授权服务中心采取更为有效更具有针对性的防护措施,从而进一步降低其受到攻击的风险,也就能够进一步提高了该智能合约源代码的安全性。
此外,在本发明的实施例的方案中,通过授权服务中心(例如区块链即服务平台)为区块链节点提供经加密的智能合约源代码,并在该授权服务中心上能够通过对于该加密的智能合约源代码的解析、编译等操作来形成可执行安装文件,进而为其他有需要的区块链节点安装该智能合约提供便利。
下面,结合附图来详细说明本发明的各个实施例。
现参见图1,其示出了根据本发明的实施例的授权服务中心系统架构图。图1所示的授权服务中心系统100用于为智能合约提供授权许可的服务。如图1所示,授权服务中心系统100包括授权服务中心120。在一些实施例中,授权服务中心120可以实现为基于云的区块链即服务平台。授权服务中心系统100还包括与授权服务中心120连接的多个区块链网络140、150、160。区块链网络140、150、160中的每一个都包括多个区块链节点。例如,区块链网络140包括区块链节点1401、1402、1403。区块链网络150包括区块链节点1501、1502、1503。区块链网络160包括区块链节点1601、1602、1603。
在云应用环境中,各区块链节点可以对应于虚拟机实例,在虚拟机实例中运行相应的节点应用程序。应当理解,虽然区块链网络140、150、160被示意为各自独立,但各区块链网络也可以包括共同的区块链节点。例如,某个区块链节点既可以属于区块链网络140又可以属于区块链网络150。在图1中,区块链网络数量和区块链节点的数量是示意性的,其可以是任意数量。
继续参见图1,智能合约的提供者110向授权服务中心120提供可安装的智能合约,例如加密的智能合约源代码。智能合约的提供者110具有许可他人获取其智能合约源代码的权利。在一些实施例中,智能合约的提供者110是智能合约的作者。在一些实施例中,智能合约的提供者110可以从智能合约的作者获得许可他人获取其智能合约源代码的权利,从而智能合约的提供者110具有许可他人使用其智能合约源代码的权利。用户130通过授权服务中心120为特定的区块链节点安装某个智能合约。接着,授权服务中心120根据用户130的需求将加密的智能合约源代码和与之相关联的密钥获取信息提供至区块链节点用于安装该智能合约。
在一些实施例中,在系统构架100中的通信以及智能合约的提供者110、用户130与授权服务中心120之间的通信可以基于任何有线和/或无线网络,包括但不限于因特网、广域网、城域网、局域网、虚拟专用网络(VPN)、无线网络等等。
在一些实施例中,用户130以及区块链网络140-160中的每个区块链节点1401-1403、1501-1503、1601-1603可以是电子设备,例如固定设备(例如服务器或台式计算机),或移动设备(例如智能手机、平板电脑、便携式计算机等)。
接着,参见图2,其示出了根据本发明的实施例的对智能合约源代码进行操作的过程200的示意图。在图2中示出了用户130、授权服务中心120、区块链节点1401。应当理解,仅为了促进描述而将每个对象或功能模块示出,其中某些对象或功能模块可以存在于同一个物理实体中,或者某些对象或功能模块可以存在于基于云的虚拟环境中。例如,授权服务中心120和区块链节点1401可以均在基于云的虚拟环境中。因此,图2所示的分立对象或模块仅是示意性的,本发明在此方面不做限制。
以上描述了整个完成的过程,以下将接上附图2来描述区块链节点在安装和控制智能合约时的具体步骤。
如图2所示,授权服务中心120可选地能够从智能合约的提供者110处接收(202)可安装的智能合约,接下来,该授权服务中心120可选地能够发布(204)智能合约的基本信息,用户130能够通过例如浏览这些基本信息或者通过其他渠道获取这些基本信息,然后决定给某个或者某些区块链节点安装一个智能合约,此时,用户130能够向授权服务中心120发送(306)安装请求,该安装请求中例如包含所述智能合约的安装目的地,例如其指定将某个智能合约安装在区块链节点1401上,授权服务中心120在接收到这样的安装请求之后,将会对智能合约的源代码进行加密处理,然后生成(208)生成加密的智能合约源代码;相应地,授权服务中心120也会生成与加密的智能合约源代码相关联的编译服务地址,其中,编译服务地址用于表明该加密的智能合约源代码应该由哪个服务来进行解密和编译,授权服务中心120会将所述编译服务地址和加密的智能合约源代码提供(212)至所述安装目的地,例如区块链节点1401。通过依据本发明的实施例所提供的用于在区块链网络中提供智能合约的方法能够有效地保证区块链上的智能合约的源代码的传输安全,保证智能合约源代码不被未授权方获取,从而使得区块链上的智能合约的源代码的隐私性得到保护。
在此,编译服务地址和加密的智能合约源代码既可以在一个数据包中发送给安装目的地的区块链节点,安装的时候仅利用这个数据包即可。此时,该数据包不是整个都是加密的,该数据包有特定的格式,需不需要对其进行加密需要根据其中的内容来确定,例如其中的源代码部分一定是加密的,而其余部分可以是不加密的。例如编译服务信息。再比如该数据包还能够包含不加密的以下内容:智能合约唯一标识、该智能合约源代码的哈希值(HASH值)、该智能合约源代码的一个或多个签名、该智能合约的其他相关数据等,其中,该智能合约源代码的哈希值(HASH值)用于对于智能合约的源代码是否被修改过做校验,智能合约唯一标识用于表示该智能合约的名称或者编号等,而智能合约源代码的一个或多个签名用于表明该智能合约由哪些组织许可。
本领域的技术人员也应当理解,也可以将加密的智能合约源代码和编译服务信息独立开,即分别作为独立的数据包发送给安装目的地的区块链节点。
接下来,区块链节点(例如区块链节点1401)在接收到由诸如区块链即服务平台的授权服务中心120所提供的编译服务地址和加密的智能合约源代码之后,区块链节点1401会将加密的智能合约源代码和区块链节点1401的签名发送(402)给授权服务中心,其中,该授权服务中心上提供有与编译服务地址相关联的编译服务,以便由该授权服务中心上的编译服务来对加密的智能合约源代码进行解密和编译,从而生成(214)可执行安装文件。可选地,编译服务也能够查询区块链账本中是否已经有与该加密的智能合约源代码相对应的可执行安装文件,如果有将其查找到直接提供给相应的区块链节点也是可行的;与之相对应地,授权服务中心在获得了可执行安装文件之后,将会将该智能合约的可执行安装文件发送给(216)对应的区块链节点1401。替代地,授权服务中心120能够仅从区块链节点1401接收该区块链节点的签名,以便对该区块链节点的身份进行验证,也就是说,将加密的智能合约源代码发回给授权服务中心120并不是必须的。在此,可选地,能够将相应的可执行安装文件例如通过链路级的安全套接层(Secure Sockets Layer:SSL)加密方式来提供(216)给区块链节点1401,接下来,区块链节点1401会接收所述智能合约的可执行安装文件,再接下来,区块链节点1401通过运行所述可执行安装文件来安装(404)所述智能合约。至此,由用户130所指定的智能合约在用户130所指定的区块链节点1401上得以安装,而且在智能合约源代码从授权服务中心120传输至区块链节点1401以及从区块链节点1401传输至授权服务中心120的整个传输过程中始终处于加密的状态,由此防止其他模块来访问加密的以及解密后的智能合约源代码从而防止源代码泄密,进而使得区块链上的智能合约的源代码的隐私性得到保护。
以上从整个系统的角度阐述了依据本发明的一个实施例的整个智能合约的提供和安装过程。接下来,本申请将从具体最终安装特定的智能合约的区块链节点1401的角度来阐述依据本发明的一个实施例的用于在区块链网络中安装智能合约的方法300。
图3示出了根据本发明的实施例的用于在区块链网络中安装智能合约的方法300的示意流程图。从图3中可以看出,依据本发明的一个实施例的用于在区块链网络中提供智能合约的方法300至少包括以下四个步骤,首先,在方法步骤310中,在区块链节点处接收编译服务地址和加密的智能合约源代码,例如从区块链即服务平台接收编译服务地址和加密的智能合约源代码;接下来,在方法步骤320中将所述加密的智能合约源代码和所述区块链节点的签名发送至授权服务中心,其中,所述授权服务中心上提供有与所述编译服务地址相关联的编译服务,由此并不在需要安装智能合约的第一区块链节点1401处对加密的智能合约源代码进行任何处理,而仅仅是将该加密的智能合约源代码发送给由编译服务地址所表征的编译服务,由编译服务对加密的智能合约源代码进行解密以及编译处理;然后,在方法步骤330中,从所述授权服务中心接收与所述加密的智能合约源代码相关联的智能合约的可执行安装文件;以及最后在方法步骤340中通过运行所述可执行安装文件来安装所述智能合约。依据本发明的方法能够确保加密的智能合约的源代码在区块链节点处的安全,此外,需要安装智能合约的第一区块链节点1401并不拥有该智能合约的源代码,从而不会给智能合约的源代码的泄露带来任何合适的环境,进而保证了对于智能合约源代码的保护。
在依据本发明的一个实施例中,所述编译服务地址是与所述区块链节点通信连接的授权服务中心上的编译服务的统一资源定位符地址。其中,可选地,所述授权服务中心是区块链即服务平台。以这样的方式能够确保智能合约的发布者对于智能合约源代码的控制权限。
在依据本发明的一个实施例中,通过安全套接层信道接收所述可执行安装文件。由此能够通过安全套接层信道的物理属性来确保可执行安装文件的安全。
在依据本发明的一个实施例中,所述方法还能够包括以下步骤:即对所述加密的智能合约源代码做完整性校验;以及在所述完整性校验未通过的情况下,发送针对所述加密的智能合约源代码的源代码获取请求并且重新接收所述加密的智能合约源代码。由此能够在所接收到的加密的智能合约源代码不完整的情况下再次获取相应的智能合约源代码,提高安装智能合约的成功率。
在依据本发明的一个实施例中,所述完整性校验包括哈希值校验或GPG(GNUPrivacy Guard:GNU隐私卫士)签名校验。本领域的技术人员应当了解,其他可行的校验方法也包括在依据本发明的权利要求所要求的保护范围之内。
在依据本发明的一个实施例中,上述方法还包括:将以下各项中的至少一项发送至所述授权服务中心:智能合约唯一标识;所述智能合约源代码的哈希值;以及所述该智能合约源代码的一个或多个签名。
图4示出了根据本发明的实施例的用于在区块链网络中安装智能合约的方法400的示意流程图。从图4中可以看出,依据本发明的一个实施例的用于在区块链网络中提供智能合约的方法400至少包括以下五个步骤,首先,在方法步骤410中,接收针对所述智能合约的安装请求,所述安装请求包括所述智能合约的安装目的地;接下来,在方法步骤420中向与所述安装目的地相关联的区块链节点发送编译服务地址和加密的智能合约源代码;然后,在方法步骤430中,从所述区块链节点接收所述区块链节点的签名;接下来,在方法步骤440中根据所述区块链节点的签名对所述区块链节点的身份进行验证以及最后在方法步骤450中在所述身份验证通过的情况下,将与所述加密的智能合约源代码相关联的智能合约的可执行安装文件发送至所述区块链节点。由此使得加密的智能合约源代码所使用的密钥不需要在授权服务中心和需要安装该智能合约的区块链节点之间传输,从而降低了由于密钥泄密而引起智能合约源代码泄密的风险。
在依据本发明的一个实施例中,所述方法还包括:从所述区块链节点接收所述加密的智能合约源代码。以这样的方式能够由授权服务中心来获得所需安装的智能合约的加密的智能合约源代码。
在依据本发明的一个实施例中,所述方法还包括:根据所述加密的智能合约源代码生成所述智能合约的可执行安装文件。以这样的方式能够仅由编译服务来实施智能合约源代码的解密和编译,安全可靠,从而提高了智能合约源代码的安全保护。
在依据本发明的一个实施例中,所述方法还包括:在所述身份验证不通过的情况下,拒绝向所述区块链节点发送所述智能合约的可执行安装文件。由此能够使得冒名的区块链节点并不能获得其所请求的智能合约可执行文件,进一步提高区块链系统的安全性。
在依据本发明的一个实施例中,所述方法还包括:根据所述安装请求生成目标区块链节点列表,并且其中对所述区块链节点的签名进行身份验证进一步包括:判断所述区块链节点的签名所表示的区块链节点是否包含于所述目标区块链节点列表。由此能够确保智能合约源代码安装的准确性,防止未授权方获得智能合约可执行安装文件。
图5示出了依据本发明内容的一个实施例所提出的用于在区块链网络中运行智能合约的装置500。从图5中可以看出,该装置500包括处理器510和与处理器510耦接的存储器520。
存储器520存储有指令。指令在由处理器510执行时使得处理器510执行以下动作:
在区块链节点处接收编译服务地址和加密的智能合约源代码;
将所述加密的智能合约源代码和所述区块链节点的签名发送至授权服务中心,其中,所述授权服务中心上提供有与所述编译服务地址相关联的编译服务;
从所述授权服务中心接收与所述加密的智能合约源代码相关联的智能合约的可执行安装文件;以及
通过运行所述可执行安装文件来安装所述智能合约。
在依据本发明的一个实施例中,所述编译服务地址是与所述区块链节点通信连接的授权服务中心上的编译服务的统一资源定位符地址。
在依据本发明的一个实施例中,所述授权服务中心是区块链即服务平台。
在依据本发明的一个实施例中,通过安全套接层信道接收所述可执行安装文件。
在依据本发明的一个实施例中,当所述指令执行时还使得所述处理器执行以下操作:
对所述可执行安装文件做完整性校验;以及
在所述完整性校验未通过的情况下,发送针对所述可执行安装文件的获取请求并且重新接收所述可执行安装文件。
在依据本发明的一个实施例中,所述完整性校验包括哈希值校验或GPG签名校验。
在依据本发明的一个实施例中,当所述指令执行时还使得所述处理器执行以下操作:
将以下各项中的至少一项发送至所述授权服务中心:
智能合约唯一标识;
所述智能合约源代码的哈希值;以及
所述该智能合约源代码的一个或多个签名。
此外,存储器520还能够存储有其他指令。这些指令在由处理器510执行时使得处理器510执行以下动作:
接收针对所述智能合约的安装请求,所述安装请求包括所述智能合约的安装目的地;
向与所述安装目的地相关联的区块链节点发送编译服务地址和加密的智能合约源代码;
从所述区块链节点接收所述区块链节点的签名;
根据所述区块链节点的签名对所述区块链节点的身份进行验证;以及
在所述身份验证通过的情况下,将与所述加密的智能合约源代码相关联的智能合约的可执行安装文件发送至所述区块链节点。
在依据本发明的一个实施例中,当所述指令执行时还使得所述处理器执行以下操作:
从所述区块链节点接收所述加密的智能合约源代码。
在依据本发明的一个实施例中,当所述指令执行时还使得所述处理器执行以下操作:
根据所述加密的智能合约源代码生成所述智能合约的可执行安装文件。
在依据本发明的一个实施例中,当所述指令执行时还使得所述处理器执行以下操作:
在所述身份验证不通过的情况下,拒绝向所述区块链节点发送所述智能合约的可执行安装文件。
在依据本发明的一个实施例中,当所述指令执行时还使得所述处理器执行以下操作:
根据所述安装请求生成目标区块链节点列表,并且其中对所述区块链节点的签名进行身份验证进一步包括:
判断所述区块链节点的签名所表示的区块链节点是否包含于所述目标区块链节点列表。
此外,替代地,上述方法能够通过计算机程序产品,即计算机可读存储介质来实现。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本发明内容的各个方面的计算机可读程序指令。计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
图6示出了依据本发明内容的一个实施例所提出的用于在区块链网络中安装智能合约的装置600的示意性框图。应当理解,装置600可以被实现为实现图3中的用于在区块链网络中安装智能合约的方法300的功能。从图6中可以看出该装置600包括中央处理单元(CPU)601(例如处理器),其可以根据存储在只读存储器(ROM)602中的计算机程序指令或者从存储单元608加载到随机访问存储器(RAM)603中的计算机程序指令,来执行各种适当的动作和处理。在RAM 603中,还可存储该装置600操作所需的各种程序和数据。CPU 601、ROM602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
装置600中的多个部件连接至I/O接口605,包括:输入单元606,例如键盘、鼠标等;输出单元607,例如各种类型的显示器、扬声器等;存储单元608,例如磁盘、光盘等;以及通信单元609,例如网卡、调制解调器、无线通信收发机等。通信单元609允许该装置600通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
上文所描述的各种方法,例如用于在区块链网络中安装智能合约的方法300或者用于在区块链网络中安装智能合约的方法400可由处理单元601执行。例如,在一些实施例中,用于在区块链网络中安装智能合约的方法300或者用于在区块链网络中安装智能合约的方法400可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元608。在一些实施例中,计算机程序的部分或者全部可以经由ROM 602和/或通信单元609而被载入和/或安装到装置600上。当计算机程序被加载到RAM 603并由处理器CPU 601执行时,可以执行上文描述的用于在区块链网络中安装智能合约的方法300或者用于在区块链网络中安装智能合约的方法400中的一个或多个动作或步骤。
一般而言,本发明的各种示例实施例可以在硬件或专用电路、软件、固件、逻辑,或其任何组合中实施。某些方面可以在硬件中实施,而其他方面可以在可以由控制器、微处理器或其他计算设备执行的固件或软件中实施。当本发明的实施例的各方面被图示或描述为框图、流程图或使用某些其他图形表示时,将理解此处描述的方框、装置、系统、技术或方法可以作为非限制性的示例在硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其他计算设备,或其某些组合中实施。
虽然上面描述了本发明的各种示例实施例可以在硬件或专用电路中实现,但是上述用于区块链的数据处理设备既可以以硬件的形式来实现,也可以通过软件的形式来实现,这是因为:在20世纪90年代,一个技术改进能够很容易地对该改进属于硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是属于软件上的改进(例如对于方法流程的改进)。然而,随着技术的持续发展,如今的很多方法流程的改进几乎都能够通过将改进的方法流程编程到硬件电路中来实现,换句话说,通过对于硬件电路编程不同的程序从而得到相应的硬件电路结构,即实现了硬件电路结构的改变,故这样的方法流程的改进也可以被视为硬件电路结构的直接改进。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device:PLD)(例如现场可编程门阵列(Field Programmable Gate Array:FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片可编程逻辑器件上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compi1er)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language:HDL),而HDL也并非仅有—种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware Description Language)、Confluence、CUPL(Cornell UniversityProgramming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby Hardware Description Language)等,目前最普遍使用的是VHDL(Very-High-Speed Integrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
用于执行本发明内容的各个方面的计算机可读程序指令或者计算机程序产品也能够存储在云端,在需要调用时,用户能够通过移动互联网、固网或者其他网络访问存储在云端上的用于执行本发明内容的一方面的计算机可读程序指令,从而实施依据本发明内容的各个方面所公开的技术方案。
以上所述仅为本发明内容的实施例可选实施例,并不用于限制本发明的实施例,对于本领域的技术人员来说,本发明的实施例可以有各种更改和变化。凡在本发明的实施例的精神和原则之内,所作的任何修改、等效替换、改进等,均应包含在本发明的实施例的保护范围之内。
虽然已经参考若干具体实施例描述了本发明的实施例,但是应当理解,本发明的实施例并不限于所公开的具体实施例。本发明的实施例旨在涵盖在所附权利要求的精神和范围内所包括的各种修改和等同布置。权利要求的范围符合最宽泛的解释,从而包含所有这样的修改及等同结构和功能。

Claims (25)

1.一种用于在区块链网络中安装智能合约的方法,所述方法包括:
在区块链节点处接收编译服务地址和加密的智能合约源代码;
将所述加密的智能合约源代码和所述区块链节点的签名发送至授权服务中心,其中,所述授权服务中心上提供有与所述编译服务地址相关联的编译服务;
从所述授权服务中心接收与所述加密的智能合约源代码相关联的智能合约的可执行安装文件;以及
通过运行所述可执行安装文件来安装所述智能合约。
2.根据权利要求1所述的方法,其中,所述编译服务地址是与所述区块链节点通信连接的授权服务中心上的编译服务的统一资源定位符地址。
3.根据权利要求1或2所述的方法,其中,所述授权服务中心是区块链即服务平台。
4.根据权利要求1所述的方法,其中,通过安全套接层信道接收所述可执行安装文件。
5.根据权利要求1所述的方法,所述方法还包括:
对所述可执行安装文件做完整性校验;以及
在所述完整性校验未通过的情况下,发送针对所述可执行安装文件的获取请求并且重新接收所述可执行安装文件。
6.根据权利要求5所述的方法,其中,所述完整性校验包括哈希值校验或GPG签名校验。
7.根据权利要求1所述 的方法,所述方法还包括:
将以下各项中的至少一项发送至所述授权服务中心:
智能合约唯一标识;
所述智能合约源代码的哈希值;以及
所述智能合约源代码的一个或多个签名。
8.一种用于在区块链网络中安装智能合约的方法,所述方法包括:
接收针对所述智能合约的安装请求,所述安装请求包括所述智能合约的安装目的地;
向与所述安装目的地相关联的区块链节点发送编译服务地址和加密的智能合约源代码;
从所述区块链节点接收所述区块链节点的签名;
根据所述区块链节点的签名对所述区块链节点的身份进行验证;以及
在所述身份验证通过的情况下,将与所述加密的智能合约源代码相关联的智能合约的可执行安装文件发送至所述区块链节点。
9.根据权利要求8所述的方法,所述方法还包括:
从所述区块链节点接收所述加密的智能合约源代码。
10.根据权利要求8或9所述的方法,所述方法还包括:
根据所述加密的智能合约源代码生成所述智能合约的可执行安装文件。
11.根据权利要求8或9所述的方法,所述方法还包括:
在所述身份验证不通过的情况下,拒绝向所述区块链节点发送所述智能合约的可执行安装文件。
12.根据权利要求8或9所述的方法,所述方法还包括:
根据所述安装请求生成目标区块链节点列表,并且其中对所述区块链节点的签名进行身份验证进一步包括:
判断所述区块链节点的签名所表示的区块链节点是否包含于所述目标区块链节点列表。
13.一种用于在区块链网络中安装智能合约的装置,所述装置包括:
处理器;以及
存储器,其用于存储指令,当所述指令执行时使得所述处理器执行以下操作:
在区块链节点处接收编译服务地址和加密的智能合约源代码;
将所述加密的智能合约源代码和所述区块链节点的签名发送至授权服务中心,其中,所述授权服务中心上提供有与所述编译服务地址相关联的编译服务;
从所述授权服务中心接收与所述加密的智能合约源代码相关联的智能合约的可执行安装文件;以及
通过运行所述可执行安装文件来安装所述智能合约。
14.根据权利要求13所述的装置,其中,所述编译服务地址是与所述区块链节点通信连接的授权服务中心上的编译服务的统一资源定位符地址。
15.根据权利要求13或14所述的装置,其中,所述授权服务中心是区块链即服务平台。
16.根据权利要求13所述的装置,其中,通过安全套接层信道接收所述可执行安装文件。
17.根据权利要求13所述的装置,当所述指令执行时还使得所述处理器执行以下操作:
对所述可执行安装文件做完整性校验;以及
在所述完整性校验未通过的情况下,发送针对所述可执行安装文件的获取请求并且重新接收所述可执行安装文件。
18.根据权利要求17所述的装置,其中,所述完整性校验包括哈希值校验或GPG签名校验。
19.根据权利要求13所述的装置,当所述指令执行时还使得所述处理器执行以下操作:
将以下各项中的至少一项发送至所述授权服务中心:
智能合约唯一标识;
所述智能合约源代码的哈希值;以及
所述智能合约源代码的一个或多个签名。
20.一种用于在区块链网络中安装智能合约的装置,所述装置包括:
处理器;以及
存储器,其用于存储指令,当所述指令执行时使得所述处理器执行以下操作:
接收针对所述智能合约的安装请求,所述安装请求包括所述智能合约的安装目的地;
向与所述安装目的地相关联的区块链节点发送编译服务地址和加密的智能合约源代码;
从所述区块链节点接收所述区块链节点的签名;
根据所述区块链节点的签名对所述区块链节点的身份进行验证;以及
在所述身份验证通过的情况下,将与所述加密的智能合约源代码相关联的智能合约的可执行安装文件发送至所述区块链节点。
21.根据权利要求20所述的装置 ,当所述指令执行时还使得所述处理器执行以下操作:
从所述区块链节点接收所述加密的智能合约源代码。
22.根据权利要求20或21所述的装置 ,当所述指令执行时还使得所述处理器执行以下操作:
根据所述加密的智能合约源代码生成所述智能合约的可执行安装文件。
23.根据权利要求20或21所述的装置 ,当所述指令执行时还使得所述处理器执行以下操作:
在所述身份验证不通过的情况下,拒绝向所述区块链节点发送所述智能合约的可执行安装文件。
24.根据权利要求20或21所述的装置 ,当所述指令执行时还使得所述处理器执行以下操作:
根据所述安装请求生成目标区块链节点列表,并且其中对所述区块链节点的签名进行身份验证进一步包括:
判断所述区块链节点的签名所表示的区块链节点是否包含于所述目标区块链节点列表。
25.一种计算机可读存储介质,其具有存储在其上的计算机可读程序指令,所述计算机可读程序指令用于执行根据权利要求1至12中任一项所述的用于在区块链网络中安装智能合约的方法。
CN201811128520.5A 2018-09-27 2018-09-27 在区块链网络中安装智能合约的方法、装置及存储介质 Active CN109358859B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811128520.5A CN109358859B (zh) 2018-09-27 2018-09-27 在区块链网络中安装智能合约的方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811128520.5A CN109358859B (zh) 2018-09-27 2018-09-27 在区块链网络中安装智能合约的方法、装置及存储介质

Publications (2)

Publication Number Publication Date
CN109358859A CN109358859A (zh) 2019-02-19
CN109358859B true CN109358859B (zh) 2021-07-30

Family

ID=65347830

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811128520.5A Active CN109358859B (zh) 2018-09-27 2018-09-27 在区块链网络中安装智能合约的方法、装置及存储介质

Country Status (1)

Country Link
CN (1) CN109358859B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020172880A1 (zh) * 2019-02-28 2020-09-03 云图有限公司 一种区块链合约的数据处理方法及服务器
CN111095338B (zh) * 2019-06-28 2023-06-30 创新先进技术有限公司 用于执行不同类型区块链合约的系统和方法
CN110266501B (zh) * 2019-07-08 2022-02-11 中国联合网络通信集团有限公司 区块链节点设备及区块链网络系统
CN112927077B (zh) * 2019-09-25 2022-05-24 支付宝(杭州)信息技术有限公司 基于fpga实现合约调用的方法及装置
CN113407188B (zh) * 2021-06-03 2024-02-09 广东辰宜信息科技有限公司 智能合约的构建方法、装置、计算机设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107147704A (zh) * 2017-04-21 2017-09-08 杭州趣链科技有限公司 一种面向区块链的通用服务中间件系统
CN107943469A (zh) * 2017-11-17 2018-04-20 深圳圣马歌科技有限公司 一种智能合约的发布方法及装置
CN108536445A (zh) * 2018-03-28 2018-09-14 成都链安科技有限公司 面向区块链智能合约的高度自动化形式化验证系统及方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018006072A1 (en) * 2016-06-30 2018-01-04 Clause, Inc. Systems and method for forming, storing, managing,and executing contracts
US10356102B2 (en) * 2017-02-24 2019-07-16 Verizon Patent And Licensing Inc. Permissions using blockchain

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107147704A (zh) * 2017-04-21 2017-09-08 杭州趣链科技有限公司 一种面向区块链的通用服务中间件系统
CN107943469A (zh) * 2017-11-17 2018-04-20 深圳圣马歌科技有限公司 一种智能合约的发布方法及装置
CN108536445A (zh) * 2018-03-28 2018-09-14 成都链安科技有限公司 面向区块链智能合约的高度自动化形式化验证系统及方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Recycling Smart Contracts: Compression of the Ethereum Blockchain;Beltran Borja Fiz Pontiveros等;《2018 9th IFIP International Conference on New Technologies, Mobility and Security (NTMS)》;20180402;全文 *

Also Published As

Publication number Publication date
CN109358859A (zh) 2019-02-19

Similar Documents

Publication Publication Date Title
CN109213501B (zh) 在区块链网络中安装智能合约的方法、装置及存储介质
CN109358859B (zh) 在区块链网络中安装智能合约的方法、装置及存储介质
US11076295B2 (en) Remote management method, and device
CN102414690B (zh) 用特权签字创建安全网页浏览环境的方法和设备
CN111355726B (zh) 一种身份授权登录方法、装置及电子设备和存储介质
CN106899571B (zh) 信息交互方法及装置
CN110636043A (zh) 一种基于区块链的文件授权访问方法、装置及系统
CN109102401B (zh) 用于在区块链网络中运行智能合约的方法和装置
CN110611657A (zh) 一种基于区块链的文件流处理的方法、装置及系统
CN111741028B (zh) 业务处理方法、装置、设备及系统
KR102013983B1 (ko) 애플리케이션 무결성 인증 방법 및 인증 서버
CN113849847B (zh) 用于对敏感数据进行加密和解密的方法、设备和介质
US20140059341A1 (en) Creating and accessing encrypted web based content in hybrid applications
EP3264265A1 (en) Application protection method, server and terminal
CN112039826A (zh) 一种应用于小程序端的登录方法和装置
US20230229752A1 (en) Attestation of application identity for inter-app communications
CN113868713B (zh) 一种数据验证方法、装置、电子设备及存储介质
CN118159967A (zh) 对在隔离环境中实现的计算资源的访问的控制
CN112560003A (zh) 用户权限管理方法和装置
CN112528239B (zh) 软件自动授权的方法和装置
CN109995534B (zh) 一种对应用程序进行安全认证的方法和装置
CN108848094B (zh) 数据安全验证方法、装置、系统、计算机设备及存储介质
CN110602075A (zh) 一种加密访问控制的文件流处理的方法、装置及系统
CN110008654B (zh) 电子文件处理方法和装置
CN109697603A (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