CN115270159A - 一种区块链的智能合约调用方法、装置设备及存储介质 - Google Patents

一种区块链的智能合约调用方法、装置设备及存储介质 Download PDF

Info

Publication number
CN115270159A
CN115270159A CN202210943374.1A CN202210943374A CN115270159A CN 115270159 A CN115270159 A CN 115270159A CN 202210943374 A CN202210943374 A CN 202210943374A CN 115270159 A CN115270159 A CN 115270159A
Authority
CN
China
Prior art keywords
contract
privacy
execution
access
plaintext
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
Application number
CN202210943374.1A
Other languages
English (en)
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 Bianjie Intelligent Technology Co ltd
Original Assignee
Shanghai Bianjie Intelligent 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 Bianjie Intelligent Technology Co ltd filed Critical Shanghai Bianjie Intelligent Technology Co ltd
Priority to CN202210943374.1A priority Critical patent/CN115270159A/zh
Publication of CN115270159A publication Critical patent/CN115270159A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Bioethics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供一种基于隐私保护的区块链智能合约调用,区块链中预先部署有隐私合约以及与其相配合的明文合约,其特征在于,方法包括以下步骤:当接收到访问隐私合约的访问请求时,确定访问账户的访问权限参数;根据访问请求获取相对应的隐私合约的访问验证信息,并通过明文合约判断访问权限参数与访问验证信息是否相匹配;若匹配,则明文合约将访问权限参数发送给隐私合约以获取调用隐私合约所需的执行参数清单;明文合约根据执行参数清单从区块链上获取对应的执行参数并发送给隐私合约;隐私合约根据执行参数完成调用并生成执行指示发送给明文合约;明文合约执行执行指示以完成隐私合约的调用。

Description

一种区块链的智能合约调用方法、装置设备及存储介质
技术领域
本发明属于区块链技术领域,具体涉及一种区块链的智能合约调用方法、装置、设备及存储介质。
背景技术
区块链是在计算机网络的节点之间共享的分布式数据库,随着技术的不断发展,区块链技术已经可以允许用户写出更精密和智能的协议,也即智能合约,来自动化地对区块链中的数据进行调用、验证、处理和/或执行,以实现不同的业务功能以及业务之间的协同工作。
然而,虽然目前已经存在很多针对区块链数据的传输和访问进行加密的技术来保证数据的安全性,但是针对合约本身的隐私安全保护技术就相对匮乏。在一般情况下,部署在区块链上的智能合约可以被任何人访问,即其内部逻辑代码处于暴露状态,因而也就无法对合约所实现的业务功能本身做到良好的保密,导致这些业务存在被抄袭、被利用、或隐私泄露等风险因素。
发明内容
为解决上述问题,提供一种区块链的智能合约调用方法、装置、设备及存储介质,本发明采用了如下技术方案:
本发明提供了一种基于隐私保护的区块链智能合约调用,区块链中预先部署有隐私合约以及与其相配合的明文合约,其特征在于,方法包括以下步骤:当接收到访问隐私合约的访问请求时,确定访问账户的访问权限参数;根据访问请求获取相对应的隐私合约的访问验证信息,并通过明文合约判断访问权限参数与访问验证信息是否相匹配;若匹配,则明文合约将访问权限参数发送给隐私合约以获取调用隐私合约所需的执行参数清单;明文合约根据执行参数清单从区块链上获取对应的执行参数并发送给隐私合约;隐私合约根据执行参数完成调用并生成执行指示发送给明文合约;明文合约执行执行指示以完成隐私合约的调用。
本发明提供的基于隐私保护的区块链智能合约调用,还可以具有这样的技术特征,其中,隐私合约为基于访问权限参数进行加密后的加密合约。
本发明提供的基于隐私保护的区块链智能合约调用,还可以具有这样的技术特征,明文合约将访问权限参数发送给隐私合约以获取调用隐私合约所需的执行参数清单的步骤还包括:明文合约将访问权限参数发送给隐私合约,并在验证隐私合约的环境安全后对该隐私合约进行解密;解密后的隐私合约在初次运行时将执行参数清单发送给明文合约。
本发明提供的基于隐私保护的区块链智能合约调用,还可以具有这样的技术特征,明文合约执行执行指示以完成隐私合约的调用之后,方法的步骤还包括:明文合约根据访问权限参数对解密后的隐私合约进行加密。
本发明提供的基于隐私保护的区块链智能合约调用,还可以具有这样的技术特征,与隐私合约对应的存储区域中预先存储有访问验证信息,访问验证信息至少包含访问权限参数与权限有效信息的对应关系;明文合约根据权限有效信息验证访问权限参数是否与访问验证信息相匹配。
本发明提供的基于隐私保护的区块链智能合约调用,还可以具有这样的技术特征,权限有效信息为权限有效期或权限有效地址。
本发明还提供了一种区块链智能合约的调用装置,区块链中预先部署有隐私合约以及与其相配合的明文合约,其特征在于,包括:确定模块,当接收到访问所述隐私合约的访问请求时,确定访问账户的访问权限参数;验证模块,根据所述访问请求获取相对应的所述隐私合约的访问验证信息,并通过所述明文合约判断所述访问权限参数与所述访问验证信息是否相匹配;调用模块,若匹配,则所述明文合约将所述访问权限参数发送给所述隐私合约以获取调用所述隐私合约所需的执行参数清单;获取模块,所述明文合约根据所述执行参数清单从所述区块链上获取对应的所述执行参数并发送给所述隐私合约;隐私合约执行模块,所述隐私合约根据所述执行参数完成调用并生成执行指示发送给所述明文合约;以及明文合约执行模块,所述明文合约执行所述执行指示以完成所述隐私合约的调用。
本发明还提供了一种区块链智能合约的调用设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的区块链智能合约的调用程序,区块链智能合约的调用程序配置为实现上述任一项的基于隐私保护的区块链智能合约调用的步骤。
本发明还提供了一种计算机可读存储介质,其特征在于,计算机可读存储介质存储有计算机可执行指令,计算机可执行指令在被处理器调用和执行时,计算机可执行指令促使处理器实现上述任一项的方法。
发明作用与效果
根据本发明的区块链的智能合约调用方法、装置、设备及存储介质,由于在验证访问账户具有访问权限后,明文合约通过访问权限参数从隐私合约获取到调用所需的执行参数清单,并由明文合约来从区块链中获取响应的执行参数并发送给隐私合约,接下来,还是由明文合约来执行调用隐私合约后生成的执行指示,来完成隐私合约所需要执行的事件。通过这样的方式,可以保证对隐私合约的调用、访问及执行均通过明文合约来进行,保证隐私条约的具体判断过程、条约内容均不可见,从而最大程度地避免了第三方获取到隐私合约的内容。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍。
图1是本发明实施例中基于隐私保护的区块链智能合约调用的流程图;
图2是本发明实施例中区块链智能合约的调用装置的框图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书一个或多个实施例中的技术方案,下面将结合本说明书一个或多个实施例中的附图,对本说明书一个或多个实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是一部分实施例,而不是全部的实施例。基于本说明书一个或多个实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书相一致的所有实施方式。相反,它们仅是与本说明书的一些方面相一致的***和方法的例子。
在本说明书使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书。在本说明书中所使用的单数形式的“一种”、“”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
<实施例>
一般认为,区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种分布式的基础架构与计算范式,根据所有权的区别可以被分为公有链、私有链、联盟链等等类型,根据是否支持编程则可以分为可编程区块链以及不可编程区块链。
其中,可编程区块链支持用户在可编程区块链网络中创建并调用一些复杂的逻辑,也即智能合约;不论是公有链、私有链还是联盟链,都可能提供智能合约的功能。区块链上的智能合约是在区块链上可以被交易触发执行的合约。智能合约可以通过代码的形式定义。
本实施例中,区块链上分别部署有隐私合约及明文合约,其中,隐私合约为用户需要隐藏执行的智能合约,明文合约则包括可以公开的业务逻辑以及用于让用户能够调用隐私合约的部分内容。
参考图1,图1是本发明实施例中基于隐私保护的区块链智能合约调用的流程图。本发明提供的基于隐私保护的区块链智能合约调用具体包括如下步骤S1至S6。
步骤S1,当接收到访问隐私合约的访问请求时,确定访问账户的访问权限参数。
步骤S2,根据访问请求获取相对应的隐私合约的访问验证信息,并通过明文合约判断访问权限参数与访问验证信息是否相匹配。
本实施例中,访问权限参数用于表示用户是否可以访问隐私合约,访问验证信息用于对访问权限参数进行验证。
在一种方案中,隐私合约可以是被加密的合约,即,其他用户既不具有对隐私合约进行访问的权限,也无法获取到隐私合约的代码。执行加密的密钥为用户的访问权限参数,隐私合约仅可以通过用户的访问权限参数解密后才能够被访问或执行。
可以理解的是,在其他方案中,访问权限参数可以不直接作为密钥使用,例如还可以通过访问验证信息对访问权限参数进行一定的处理来得到用于访问加密隐私合约的密钥。
在本实施例中,访问验证信息预先存储在与隐私合约对应的存储区域中。访问验证信息至少包含访问权限参数与权限有效信息的对应关系,该权限有效信息可以是权限有效期(例如年月日)或权限有效地址(例如IP地址)。明文合约可以通过权限有效信息来对访问权限的有效性进行验证。
步骤S3,若匹配,则明文合约将访问权限参数发送给隐私合约以获取调用隐私合约所需的执行参数清单。
本实施例中,执行参数清单为执行隐私条约所必要的执行参数的清单。例如,隐私合约用于实现的业务逻辑为“当某物品的价格低于X元时执行购买”,则执行参数清单中则包含“某物品”的价格作为执行参数。在步骤S4中,明文合约就会根据该执行参数清单从区块链中获取执行参数。
特别地,在步骤S3中,由于隐私合约处于加密状态,因此当明文合约将访问权限参数发送给隐私合约时,还会验证隐私合约的环境是否安全(例如验证是否存在非法访问),并在验证安全后对该隐私合约进行解密,从而保证隐私合约在执行时处于安全环境下。当完成解密后,隐私合约在初次运行时会将自身所需的执行参数清单发送给明文合约。
步骤S4,明文合约根据执行参数清单从区块链上获取对应的执行参数并发送给隐私合约。
在具体实现中,还可以对明文合约获取到的执行参数进行加密,例如进行同态加密,从而保护用户信息在传输过程中的安全性。
步骤S5,隐私合约根据执行参数完成调用并生成执行指示发送给明文合约。
步骤S6,明文合约执行执行指示以完成隐私合约的调用。
本实施例中,隐私合约在安全环境下运行执行参数,并将需要执行的行为作为执行指示发送给明文合约,从而使得明文合约代为执行。通过这样的方式,可以保证对隐私合约的调用、访问及执行均通过明文合约来进行,从而最大程度地避免了第三方获取到隐私合约的内容。
另外,当完成隐私合约的调用之后,明文合约根据访问权限参数对解密后的隐私合约进行加密,保证隐私合约在没有调用时处于加密状态。
相对应地,本实施例还提供了一种与上述基于隐私保护的区块链智能合约调用相对应的区块链智能合约的调用装置。如图2所示,该区块链智能合约的调用装置10包括确定模块11、验证模块12、调用模块13、获取模块14、隐私合约执行模块15及明文合约执行模块16。
确定模块11用于在接收到访问隐私合约的访问请求时,确定访问账户的访问权限参数。
验证模块12根据访问请求获取相对应的隐私合约的访问验证信息,并通过明文合约判断访问权限参数与访问验证信息是否相匹配。
调用模块13用于在验证模块12判断匹配时,控制明文合约将访问权限参数发送给隐私合约以获取调用隐私合约所需的执行参数清单。
获取模块14,控制明文合约根据执行参数清单从区块链上获取对应的执行参数并发送给隐私合约。
隐私合约执行模块15控制隐私合约根据执行参数完成调用并生成执行指示发送给明文合约。
明文合约执行模块16控制明文合约执行执行指示以完成隐私合约的调用。
本实施例所提供的区块链智能合约的调用装置10,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
本实施例提供了一种区块链智能合约的调用设备及可读存储介质,两者中存储有程序或指令,该程序或指令被处理器执行时实现如本文上述的基于隐私保护的区块链智能合约调用的步骤。
实施例作用与效果
根据本实施例提供的基于隐私保护的区块链智能合约调用、装置、设备以及存储介质,由于在验证访问账户具有访问权限后,明文合约通过访问权限参数从隐私合约获取到调用所需的执行参数清单,并由明文合约来从区块链中获取响应的执行参数并发送给隐私合约,接下来,还是由明文合约来执行调用隐私合约后生成的执行指示,来完成隐私合约所需要执行的事件。通过这样的方式,可以保证对隐私合约的调用、访问及执行均通过明文合约来进行,保证隐私条约的具体判断过程、条约内容均不可见,从而最大程度地避免了第三方获取到隐私合约的内容。
最后应说明的是:以上实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (9)

1.一种基于隐私保护的区块链智能合约调用,区块链中预先部署有隐私合约以及与其相配合的明文合约,其特征在于,方法包括以下步骤:
当接收到访问所述隐私合约的访问请求时,确定访问账户的访问权限参数;
根据所述访问请求获取相对应的所述隐私合约的访问验证信息,并通过所述明文合约判断所述访问权限参数与所述访问验证信息是否相匹配;
若匹配,则所述明文合约将所述访问权限参数发送给所述隐私合约以获取调用所述隐私合约所需的执行参数清单;
所述明文合约根据所述执行参数清单从所述区块链上获取对应的所述执行参数并发送给所述隐私合约;
所述隐私合约根据所述执行参数完成调用并生成执行指示发送给所述明文合约;
所述明文合约执行所述执行指示以完成所述隐私合约的调用。
2.根据权利要求1所述的基于隐私保护的区块链智能合约调用,其特征在于:
其中,所述隐私合约为基于所述访问权限参数进行加密后的加密合约。
3.根据权利要求2所述的基于隐私保护的区块链智能合约调用,其特征在于,所述明文合约将所述访问权限参数发送给所述隐私合约以获取调用所述隐私合约所需的执行参数清单的步骤还包括:
所述明文合约将所述访问权限参数发送给所述隐私合约,并在验证所述隐私合约的环境安全后对该隐私合约进行解密;
解密后的所述隐私合约在初次运行时将所述执行参数清单发送给所述明文合约。
4.根据权利要求3所述的基于隐私保护的区块链智能合约调用,其特征在于,所述明文合约执行所述执行指示以完成所述隐私合约的调用之后,方法的步骤还包括:
所述明文合约根据所述访问权限参数对解密后的所述隐私合约进行加密。
5.根据权利要求1所述的基于隐私保护的区块链智能合约调用,其特征在于:
与所述隐私合约对应的存储区域中预先存储有所述访问验证信息,所述访问验证信息至少包含所述访问权限参数与权限有效信息的对应关系;
所述明文合约根据所述权限有效信息验证所述访问权限参数是否与所述访问验证信息相匹配。
6.根据权利要求5所述的基于隐私保护的区块链智能合约调用,其特征在于:
所述权限有效信息为权限有效期或权限有效地址。
7.一种区块链智能合约的调用装置,区块链中预先部署有隐私合约以及与其相配合的明文合约,其特征在于,包括:
确定模块,当接收到访问所述隐私合约的访问请求时,确定访问账户的访问权限参数;
验证模块,根据所述访问请求获取相对应的所述隐私合约的访问验证信息,并通过所述明文合约判断所述访问权限参数与所述访问验证信息是否相匹配;
调用模块,若匹配,则所述明文合约将所述访问权限参数发送给所述隐私合约以获取调用所述隐私合约所需的执行参数清单;
获取模块,所述明文合约根据所述执行参数清单从所述区块链上获取对应的所述执行参数并发送给所述隐私合约;
隐私合约执行模块,所述隐私合约根据所述执行参数完成调用并生成执行指示发送给所述明文合约;以及
明文合约执行模块,所述明文合约执行所述执行指示以完成所述隐私合约的调用。
8.一种区块链智能合约的调用设备,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的区块链智能合约的调用程序,所述区块链智能合约的调用程序配置为实现如权利要求1至6中任一项所述的基于隐私保护的区块链智能合约调用的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令在被处理器调用和执行时,计算机可执行指令促使处理器实现权利要求1至6任一项所述的方法。
CN202210943374.1A 2022-08-08 2022-08-08 一种区块链的智能合约调用方法、装置设备及存储介质 Pending CN115270159A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210943374.1A CN115270159A (zh) 2022-08-08 2022-08-08 一种区块链的智能合约调用方法、装置设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210943374.1A CN115270159A (zh) 2022-08-08 2022-08-08 一种区块链的智能合约调用方法、装置设备及存储介质

Publications (1)

Publication Number Publication Date
CN115270159A true CN115270159A (zh) 2022-11-01

Family

ID=83748734

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210943374.1A Pending CN115270159A (zh) 2022-08-08 2022-08-08 一种区块链的智能合约调用方法、装置设备及存储介质

Country Status (1)

Country Link
CN (1) CN115270159A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117155536A (zh) * 2023-09-01 2023-12-01 佛山市康颐福城市服务科技有限公司 智能合约的交易管理方法、装置、设备和可读存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117155536A (zh) * 2023-09-01 2023-12-01 佛山市康颐福城市服务科技有限公司 智能合约的交易管理方法、装置、设备和可读存储介质

Similar Documents

Publication Publication Date Title
CN111090876B (zh) 调用合约的方法及装置
WO2020098377A1 (zh) 可信应用程序的远程证明方法及装置、电子设备
TWI701929B (zh) 密碼運算、創建工作密鑰的方法、密碼服務平台及設備
CN110580412B (zh) 基于链代码的权限查询配置方法及装置
EP1636664B1 (en) Proof of execution using random function
US8495383B2 (en) Method for the secure storing of program state data in an electronic device
CN113114476B (zh) 基于合约的隐私存证方法及装置
CN109347625B (zh) 密码运算、创建工作密钥的方法、密码服务平台及设备
US11831753B2 (en) Secure distributed key management system
CN101426012A (zh) 软件模块管理装置
CN115580413B (zh) 一种零信任的多方数据融合计算方法和装置
KR102543267B1 (ko) 화이트박스 암호를 이용한 암/복호화 방법 및 그 장치
US7721100B2 (en) Granting an access to a computer-based object
CN115270159A (zh) 一种区块链的智能合约调用方法、装置设备及存储介质
CN111597586B (zh) 一种区块链隐私保护方法、***及装置
CN112948789A (zh) 身份认证方法及装置、存储介质及电子设备
CN110602051A (zh) 基于共识协议的信息处理方法及相关装置
CN114666064A (zh) 基于区块链的数字资产管理方法、装置、存储介质及设备
WO2024139273A1 (zh) 联邦学习方法、装置、可读存储介质及电子设备
CN118172058A (zh) 区块链数据处理方法、装置、计算机设备、介质及产品
Catuogno et al. Guaranteeing dependency enforcement in software updates
CN117499042A (zh) 身份验证方法、装置、电子设备及存储介质
Wangham et al. Secure mobile agent system and its application in the trust building process of virtual enterprises
MacDonald et al. Cryptography

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