CN115102703B - 基于区块链的应用共享方法、装置、设备及介质 - Google Patents
基于区块链的应用共享方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN115102703B CN115102703B CN202210680436.4A CN202210680436A CN115102703B CN 115102703 B CN115102703 B CN 115102703B CN 202210680436 A CN202210680436 A CN 202210680436A CN 115102703 B CN115102703 B CN 115102703B
- Authority
- CN
- China
- Prior art keywords
- mirror image
- image data
- shared
- edge platform
- blockchain
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3236—Cryptographic 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/3239—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开提供了一种基于区块链的应用共享方法、装置、设备及介质,涉及通信技术领域。该方法包括:通过区块链向已部署目标应用的目标供方边缘平台发起交易请求;通过链下方式接收目标供方边缘平台传输的目标应用的共享镜像数据;通过区块链读取目标供方边缘平台的共享信息,共享信息以需方边缘平台的公钥加密共享镜像数据的验证信息得到;以需方边缘平台的私钥解密共享信息,得到共享镜像数据的验证信息,根据共享镜像数据的验证信息对共享镜像数据进行验证;将验证结果发送至区块链,以使区块链记录达成共识的交易信息,实现应用在边缘平台之间的共享。通过借助临近节点的资源,就近获取镜像地址或数据,缓解网络压力。
Description
技术领域
本公开涉及通信技术领域,尤其涉及一种基于区块链的应用共享方法、装置、电子设备及计算机可读存储介质。
背景技术
通常的,当互联网网络业务提供商(Internet Service Provider,ISP)为用户提供应用时,应用采用集中部署、集中服务的方式。边缘计算是一种分布式运算的架构,将应用程序、数据资料与服务的运算,由网络中心节点,转移到网络逻辑上的边缘节点处理。
但是,在边缘计算的服务环境中,应用通常需要多次在多个不同的边缘平台上进行部署,应用的镜像和数据需要多次向边缘平台传递,镜像、数据管理和应用版本升级的压力大,服务不同步、影响用户的业务体验。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开提供一种基于区块链的应用共享方法、装置、电子设备及计算机可读存储介质,至少在一定程度上克服现有的镜像数据管理和应用版本升级压力大、服务不同步的问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的一个方面,提供一种基于区块链的应用共享方法,中心平台和边缘平台作为节点组建区块链,所述区块链的智能合约部署在所述节点上,所述方法应用于需方边缘平台侧,所述方法包括:
通过区块链向已部署目标应用的目标供方边缘平台发起交易请求,所述交易请求携带有目标应用标识和所述需方边缘平台的需方镜像存储地址;
通过链下方式接收所述目标供方边缘平台传输的所述目标应用的共享镜像数据,其中,共享镜像数据以目标供方边缘平台的镜像/数据加密密钥加密目标供方镜像存储地址保存的原始镜像数据得到;
通过区块链读取所述目标供方边缘平台的共享信息,所述共享信息以所述需方边缘平台的公钥加密所述共享镜像数据的验证信息得到;
以所述需方边缘平台的私钥解密所述共享信息,得到所述共享镜像数据的验证信息,根据所述共享镜像数据的验证信息对链下方式接收的所述共享镜像数据进行验证;
将验证结果发送至区块链,以使区块链记录达成共识的交易信息,实现应用在边缘平台之间的共享。
在本公开的一个实施例中,在所述通过区块链向已部署目标应用的目标供方边缘平台发起交易请求之前,所述方法还包括:
已部署目标应用的供方边缘平台的第一初始共享信息以所述供方边缘平台的私钥签名,并发布至所述区块链,其中,所述第一初始共享信息包括所述目标应用标识、所述目标应用在所述供方边缘平台的供方镜像存储地址、以及所述供方边缘平台的镜像数据加密密钥;
所述中心平台的第二初始共享信息以所述中心平台的私钥签名,并发布至所述区块链,其中,所述第二初始共享信息包括所述目标应用标识、中心节点标识、所述目标应用在所述中心平台的原始镜像存储地址、所述中心平台的镜像数据加密密钥和所述中心平台的原始镜像数据哈希值。
在本公开的一个实施例中,当所述需方边缘平台需要部署所述目标应用时,所述目标供方边缘平台由所述智能合约匹配,所述智能合约执行以下逻辑:
以所述供方边缘平台的公钥对所述区块链上的所述第一初始共享信息的签名信息进行验签,得到已部署所述目标应用的所述供方边缘平台的供方镜像存储地址;
若查询到至少一个所述供方边缘平台已部署所述目标应用,则计算所述需方边缘平台和至少一个所述供方边缘平台之间的距离;
确定所述距离小于预设距离且距离最小的所述供方边缘平台为所述目标供方边缘平台。
在本公开的一个实施例中,所述方法还包括:
当所述距离大于预设距离时,确定所述中心平台为所述需方边缘平台的供方平台,所述需方边缘平台从区块链上获取所述中心平台的所述目标应用的原始镜像存储地址。
在本公开的一个实施例中,所述方法还包括:
若未查询到已部署所述目标应用的所述供方边缘平台,则确定所述中心平台为所述需方边缘平台的供方平台;所述需方边缘平台从区块链获取所述中心平台的所述目标应用的原始镜像存储地址。
在本公开的一个实施例中,所述共享镜像数据的验证信息通过以下方式得到:
所述目标供方边缘平台对所述共享镜像数据的验证信息以所述目标供方边缘平台的私钥签名并发布至区块链,所述共享镜像数据的验证信息包括所述目标应用标识、所述供方镜像存储地址、所述目标供方边缘平台的镜像/数据加密密钥和所述共享镜像数据的哈希值;
以所述目标供方边缘平台的公钥对所述共享镜像数据的验证信息的签名信息进行验签,得到所述共享镜像数据的验证信息。
在本公开的一个实施例中,所述根据所述共享镜像数据的验证信息对链下方式接收的所述共享镜像数据进行验证,包括:
以所述中心平台的公钥验签所述中心平台发布的第二初始共享信息的签名信息,得到所述目标应用在所述中心平台的原始镜像数据哈希值;
对链下方式接收的所述共享镜像数据进行哈希计算,得到所述共享镜像数据的待验证哈希值;
以所述供方边缘平台的镜像/数据加密密钥解密所述共享镜像数据,得到待验证镜像数据,并对所述待验证镜像数据进行哈希计算,得到所述待验证镜像数据哈希值;
若所述共享镜像数据的待验证哈希值与所述共享镜像数据的哈希值一致且所述待验证镜像数据哈希值与所述中心平台的原始镜像数据哈希值一致,则判定验证结果为验证成功。
在本公开的一个实施例中,所述方法还包括:
若所述共享镜像数据的待验证哈希值与所述共享镜像数据的验证信息中的哈希值不一致,或所述待验证镜像数据哈希值与所述中心平台的原始镜像数据哈希值不一致,则判定验证结果为验证失败。
在本公开的一个实施例中,所述将验证结果发送至区块链,以使区块链记录达成共识的交易信息,实现应用在边缘平台之间的共享,包括:
若所述验证结果为验证成功,则所述区块链公告交易成功信息。
在本公开的一个实施例中,所述方法还包括:若所述验证结果为验证失败,则所述区块链公告交易失败信息,重新确定所述需方边缘平台的供方平台。
根据本公开的另一个方面,提供一种基于区块链的应用共享方法,中心平台和边缘平台作为节点组建区块链,区块链的智能合约部署在区块链节点上,所述方法应用于目标供方边缘平台侧,包括:
通过区块链接收需方边缘平台发起的交易请求,所述交易请求携带有目标应用标识和所述需方边缘平台的需方镜像存储地址;
通过链下方式向所述需方边缘平台发送所述目标应用的共享镜像数据,其中,共享镜像数据以目标供方边缘平台的镜像/数据加密密钥加密目标供方镜像存储地址保存的原始镜像数据得到;
以所述目标供方边缘平台的私钥对所述共享镜像数据的验证信息签名并发布至区块链,以使所述区块链根据所述共享镜像数据的验证信息生成所述目标供方边缘平台的共享信息,所述共享信息以所述需方边缘平台的公钥加密所述共享镜像数据的验证信息得到。
在本公开的一个实施例中,在所述通过区块链接收需方边缘平台发起的交易请求之前,所述方法还包括:
已部署目标应用的供方边缘平台的第一初始共享信息以所述供方边缘平台的私钥签名,并发布至所述区块链,其中,所述第一初始共享信息包括所述目标应用标识、所述目标应用在所述供方边缘平台的供方镜像存储地址、以及所述供方边缘平台的镜像数据加密密钥。
在本公开的一个实施例中,所述共享镜像数据的验证信息通过以下方式得到:
所述共享镜像数据的验证信息包括所述目标应用标识、所述供方镜像存储地址所述目标供方边缘平台的镜像/数据加密密钥和所述共享镜像数据的哈希值;
以所述目标供方边缘平台的公钥对所述共享镜像数据的验证信息的签名信息进行验签,得到所述共享镜像数据的验证信息。
根据本公开的另一个方面,提供一种基于区块链的应用共享装置,中心平台和边缘平台作为节点组建区块链,区块链的智能合约部署在区块链节点上,所述装置应用于需方边缘平台侧,所述装置包括:
交易请求发起模块,用于通过区块链向已部署目标应用的目标供方边缘平台发起交易请求,所述交易请求携带有目标应用标识和所述需方边缘平台的需方镜像存储地址;
镜像数据接收模块,用于通过链下方式接收所述目标供方边缘平台传输的所述目标应用的共享镜像数据,其中,共享镜像数据以目标供方边缘平台的镜像/数据加密密钥加密目标供方镜像存储地址保存的原始镜像数据得到;
验证信息读取模块,用于通过区块链读取所述目标供方边缘平台的共享信息,所述共享信息以所述需方边缘平台的公钥加密所述共享镜像数据的验证信息得到;
镜像数据验证模块,用于以所述需方边缘平台的私钥解密所述共享信息,得到所述共享镜像数据的验证信息,根据所述共享镜像数据的验证信息对所述共享镜像数据进行验证;
验证结果发送模块,根据验证结果生成交易,并发送至区块链,以使区块链达成共识后记录交易信息,实现应用在边缘平台之间的共享。
在本公开的一个实施例中,还包括初始信息发布模块,用于在所述通过区块链向已部署目标应用的目标供方边缘平台发起交易请求之前,已部署目标应用的供方边缘平台的第一初始共享信息以所述供方边缘平台的私钥签名,并发布至所述区块链,其中,所述第一初始共享信息包括所述目标应用标识、所述目标应用在所述供方边缘平台的供方镜像存储地址、以及所述供方边缘平台的镜像数据加密密钥;
所述中心平台的第二初始共享信息以所述中心平台的私钥签名,并发布至所述区块链,其中,所述第二初始共享信息包括所述目标应用标识、中心节点标识、所述目标应用在所述中心平台的原始镜像存储地址、所述中心平台的镜像数据加密密钥和所述中心平台的原始镜像数据哈希值。
在本公开的一个实施例中,所述目标供方边缘平台由所述智能合约匹配,
所述智能合约,用于当所述需方边缘平台部署所述目标应用时,以所述供方边缘平台的公钥对所述区块链上的所述第一初始共享信息的签名信息进行验签,得到已部署所述目标应用的所述供方边缘平台的供方镜像存储地址;
若查询到至少一个所述供方边缘平台已部署所述目标应用,则计算所述需方边缘平台和至少一个所述供方边缘平台之间的距离;
确定所述距离小于预设距离且距离最小的所述供方边缘平台为所述目标供方边缘平台;
当所述距离大于预设距离时,确定所述中心平台为所述需方边缘平台的供方平台,所述需方边缘平台从区块链上获取所述中心平台的所述目标应用的原始镜像存储地址;
若未查询到已部署所述目标应用的所述供方边缘平台,则确定所述中心平台为所述需方边缘平台的供方平台;所述需方边缘平台从区块链获取所述中心平台的所述目标应用的原始镜像存储地址。
在本公开的一个实施例中,所述共享镜像数据的验证信息通过以下方式得到:
所述目标供方边缘平台对所述共享镜像数据的验证信息以所述目标供方边缘平台的私钥签名并发布至区块链,所述共享镜像数据的验证信息包括所述目标应用标识、所述供方镜像存储地址、所述目标供方边缘平台的镜像/数据加密密钥和所述共享镜像数据的哈希值;
以所述目标供方边缘平台的公钥对所述共享镜像数据的验证信息的签名信息进行验签,得到所述共享镜像数据的验证信息。
在本公开的一个实施例中,所述验证信息读取模块,用于以所述中心平台的公钥验签所述中心平台发布的第二初始共享信息的签名信息,得到所述中心平台的原始镜像数据哈希值;
所述镜像数据验证模块,用于对链下方式接收的所述共享镜像数据进行哈希计算,得到所述共享镜像数据的待验证哈希值;
以所述供方边缘平台的镜像/数据加密密钥解密所述共享镜像数据,得到待验证镜像数据,并所述待验证镜像数据进行哈希计算,得到所述待验证镜像数据哈希值;
若所述共享镜像数据的待验证哈希值与所述共享镜像数据的验证信息中的哈希值一致且所述待验证镜像数据哈希值与所述中心平台的原始镜像数据哈希值一致,则判定验证结果为验证成功;
若所述共享镜像数据的待验证哈希值与所述共享镜像数据的验证信息中的哈希值不一致,或所述待验证镜像数据哈希值与所述中心平台的原始镜像数据哈希值不一致,则判定验证结果为验证失败。
在本公开的一个实施例中,所述验证结果发送模块,用于若所述验证结果为验证成功,则所述区块链公告交易成功信息;
若所述验证结果为验证失败,则所述区块链公告交易失败信息,重新确定所述需方边缘平台的供方平台。
根据本公开的另一个方面,提供一种基于区块链的应用共享装置,中心平台和边缘平台作为节点组建区块链,区块链的智能合约部署在区块链节点上,所述装置应用于目标供方边缘平台侧,包括:
交易请求接收模块,用于通过区块链接收需方边缘平台发起的交易请求,所述交易请求携带有目标应用标识和所述需方边缘平台的公钥和需方镜像存储地址;
镜像数据发送模块,用于通过链下方式向所述需方边缘平台发送所述目标应用的共享镜像数据,其中,共享镜像数据以目标供方边缘平台的镜像/数据加密密钥加密目标供方镜像存储地址保存的原始镜像数据得到;
验证信息发送模块,用于以所述目标供方边缘平台的私钥对所述共享镜像数据的验证信息签名并发布至区块链,以使所述区块链根据所述共享镜像数据的验证信息生成所述目标供方边缘平台的共享信息,所述共享信息以所述需方边缘平台的公钥加密所述共享镜像数据的验证信息得到。
根据本公开的另一个方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述的基于区块链的应用共享方法。
根据本公开的另一个方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的基于区块链的应用共享方法。
本公开的实施例所提供的一种基于区块链的应用共享方法、装置、设备及介质,通过区块链向已部署目标应用的临近供方边缘平台发起交易请求,供方边缘平台根据交易请求对目标应用的共享镜像数据通过链下方式传输,并将共享镜像数据的验证信息发布至区块链,并采用链上方式传输至需方边缘平台,进而通过解密后的共享信息对链下传输的共享镜像数据进行验证,保证目标应用的数据共享的合法性和数据未被篡改,有效避免大数据的频繁长距离传输为网络带来的压力,充分利用区块链的公平、安全、不可篡改等机制,保证应用的精确共享,且共享过程可记录,目标应用的镜像/数据就近获取,从而提高共享效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出相关技术中一种边缘节点应用共享的区块链架构图;
图2示出本公开实施例中一种边缘节点应用共享的区块链架构图;
图3示出本公开实施例中一种基于区块链的应用共享方法的流程图;
图4示出本公开又一实施例中一种基于区块链的应用共享方法的流程图;
图5示出本公开另一实施例中一种基于区块链的应用共享方法的流程图;
图6示出本公开实施例中一种基于区块链的应用共享方法的信令图;
图7示出本公开实施例中一种基于区块链的应用共享方法的示意图;
图8示出本公开实施例中一种基于区块链的应用共享装置示意图;
图9示出本公开另一实施例中一种基于区块链的应用共享装置示意图;
图10示出本公开实施例中一种电子设备的结构框图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
在相关技术中,图1示出了相关技术中一种边缘节点应用共享的区块链架构图。
如图1所示,系统架构包括中心节点和至少一个边缘节点,其中,中心节点也称作应用中心节点,边缘节点也称作应用边缘服务节点。中心节点包括中心平台R0,中心平台R0为边缘应用提供商ICP/ISP的应用管理平台,用于对应用的原始镜像/数据进行管理,并将应用的原始镜像/数据原始镜像存储于原始存储地址L0中。每个边缘节点包括边缘平台,边缘平台用于应用的镜像管理和部署,边缘节点各自将应用的镜像/数据存储于本地镜像存储地址上。例如图1中包括边缘节点1、2…n,边缘节点1包括边缘平台R1,边缘平台将应用的镜像/数据存储于应用本地镜像存储地址L1上,边缘节点2包括边缘平台R2,边缘平台将应用的镜像/数据存储于应用本地镜像存储地址L2上,等等,对于边缘平台的数量根据实际情况而定。
当边缘节点1需要部署应用时,边缘节点1向中心节点(如中心平台R0)发起镜像/数据请求,中心节点接收到镜像/数据请求后,向边缘节点1推送上述应用的镜像/数据,从而使边缘节点1完成应用的部署。
然而,由于镜像/数据通常较大,中心节点和边缘节点之间的大数据交互为网络带来很大的压力,同时数据出错或服务不同步的问题无法定位或追责。
鉴于此,本公开提出了一种基于区块链的应用共享方法,旨在基于区块链的公正、可信环境,借助临近边缘节点的资源,就近获取镜像/数据,利用区块链的交易机制实现应用共享。
图2示出了可以应用于本公开实施例基于区块链的应用共享方法或基于区块链的应用共享装置的示例性系统架构的示意图。
如图2所示,系统架构可以包括中心节点和至少两个边缘节点(如图中的边缘节点1、2、…n),中心节点和至少两个边缘节点组建区块链。其中,中心节点由边缘应用提供商的应用管理平台提供,中心节点包括中心平台R0,用于应用的原始镜像/数据的管理,并将应用的原始镜像/数据存储于原始镜像存储地址L0;每个边缘节点(边缘节点1、2、…n)包括边缘平台(R1、R2、…Rn),边缘平台(R1、R2、…Rn)用于应用的镜像管理和部署,并将应用的镜像/数据存储于应用本地镜像存储地址(L1、L2、…Ln)上。
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上,并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
智能合约是区块链技术中承载核心业务的关键代码实现,在区块链产业化过程中,智能合约将逐渐通用化、复杂化以及产业化,智能合约的数字资产价值将不断提升。
在图2中,边缘平台包括供方边缘平台R1和需方边缘平台R2,其中,供方边缘平台R1为已部署目标应用的边缘平台,目标应用在供方边缘平台R1存储于供方镜像存储地址L1,供方边缘平台R1根据目标应用的部署情况而定,需方边缘平台R2为需要部署目标应用的边缘平台,目标应用在需方边缘平台R2的存储地址为需方镜像存储地址L2。若所有边缘平台均未部署目标应用,则需方边缘平台R2从中心平台R0获取目标应用的镜像/数据。
本申请实施例提供的方案涉及边缘计算技术,是应用于计算机中的软件程序,利用区块链链上链下双重传输操作保证目标应用的数据共享的合法性和数据未被篡改,有效避免大数据的频繁长距离传输为网络带来的压力,充分利用区块链的公平、安全、不可篡改等机制,保证应用的精确共享,且共享过程可记录,目标应用的镜像/数据就近获取,从而提高共享效率。具体通过如下实施例进行说明:
首先,本公开实施例中提供了一种基于区块链的应用共享方法,该方法可以由任意具备计算处理能力的系统执行。
图3示出本公开实施例中一种基于区块链的应用共享方法流程图,如图3所示,中心平台和边缘平台作为节点组建区块链,区块链的智能合约部署于上述节点上,该方法应用于需方边缘平台侧,包括如下步骤:
S302、通过区块链向已部署目标应用的目标供方边缘平台发起交易请求,交易请求至少携带需方镜像存储地址以及目标应用标识。
本实施例中的目标应用为需方边缘平台需要部署的应用,需方边缘平台为目标应用的镜像/数据的需求方,目标供方边缘平台为目标应用的镜像/数据的提供方,目标供方边缘平台R1和需方边缘平台R2与中心平台R0组建区块链,中心平台R0将目标应用的镜像/数据存储于原始镜像存储地址L0。在区块链中,已部署目标应用的边缘平台可以包括多个,选取与需方边缘平台R2临近的供方边缘平台作为目标供方边缘平台R1,目标供方边缘平台R1的目标应用的镜像/数据存储于供方镜像存储地址L1。
当需方边缘平台需要部署目标应用时,需方边缘平台向区块链触发交易请求,区块链作为可信通道,将该交易请求发送至与需方边缘平台临近的目标供方边缘平台,以使目标供方边缘平台准备目标应用的镜像/数据,促进交易完成。
需要说明的是,交易请求中携带需方镜像存储地址、以及目标应用标识等。智能合约根据交易请求匹配目标供方边缘平台,并向目标供方边缘平台发送携带有需方镜像存储地址和目标应用标识的交易请求。
S304、通过链下方式接收目标供方边缘平台传输的目标应用的共享镜像数据,其中,共享镜像数据以目标供方边缘平台的镜像/数据加密密钥加密目标供方镜像存储地址保存的原始镜像数据得到。
当目标供方边缘平台接收到区块链发送的交易请求时,目标供方边缘平台对与目标应用标识对应的共享镜像数据进行处理,采用目标供方边缘平台的镜像/数据加密密钥S1加密目标供方边缘平台上目标应用的镜像/数据得到共享镜像数据,并计算共享镜像数据的哈希值H1,目标供方边缘平台通过链下方式传输共享镜像数据至需方镜像存储地址。
S306、通过区块链读取目标供方边缘平台的共享信息,共享信息以需方边缘平台的公钥加密共享镜像数据的验证信息得到。
在供方边缘平台通过链下方式将共享镜像数据传输至需方镜像存储地址的同时,目标供方边缘平台对共享镜像数据的验证信息以目标供方边缘平台的私钥签名,并发布至区块链。区块链以目标供方边缘平台的公钥对共享镜像数据的验证信息的签名信息验签,得到共享镜像数据的验证信息,并采用需方边缘平台的公钥加密共享镜像数据的验证信息得到供方边缘平台的共享信息,需方边缘平台从区块链上通过智能合约读取供方边缘平台的共享信息。
需要说明的是,共享镜像数据的验证信息包括目标应用标识Y、供方镜像存储地址L1、目标供方边缘平台的加密密钥S1和共享镜像数据的哈希值H1,共享镜像数据的验证信息用于对链下传输的共享镜像数据进行验证。
S308、以需方边缘平台的私钥解密共享信息,得到共享镜像数据的验证信息,根据共享镜像数据的验证信息对链下方式接收的共享镜像数据进行验证。
S310、将验证结果(即交易)发送至区块链,达成共识后写入区块链,以实现应用在边缘平台之间的共享。
当验证成功时,需方边缘平台向区块链发送验证成功的验证结果,以使区块链公告交易成功信息;当验证失败时,需方边缘平台向区块链发送验证失败的验证结果,以使区块链公告交易失败消息,需方边缘平台可以重新选定新的供方平台,以完成应用的部署。
本公开实施例提供的基于区块链的边缘应用共享方法,向已部署目标应用的目标供方边缘平台发起交易请求,供方边缘平台根据交易请求对目标应用的共享镜像数据通过链下方式传输,并将共享镜像数据的验证信息通过链上方式传输至需方边缘平台,进而通过解密后的共享镜像数据的验证信息对共享镜像数据进行验证,从而保证目标应用的数据共享的合法性和数据未被篡改,有效避免大数据的频繁长距离传输为网络带来的压力,充分利用区块链的公平、安全、不可篡改等机制,保证应用的精确共享,且共享过程可记录,目标应用的镜像/数据就近获取,从而提高共享效率。
图4示出本公开又一实施例中基于区块链的应用共享方法的流程图。
如图4所示,在一个实施例中,在步骤S302通过区块链向已部署目标应用的目标供方边缘平台发起交易请求之前,该方法还包括:
S401、已部署目标应用的供方边缘平台的第一初始共享信息以供方边缘平台的私钥签名,并发布至区块链,其中,第一初始共享信息包括目标应用标识、目标应用在供方边缘平台的供方镜像存储地址、以及供方边缘平台的镜像数据加密密钥;
中心平台的第二初始共享信息以中心平台的私钥签名,并发布至区块链,其中,第二初始共享信息包括目标应用标识、中心平台标识、目标应用在中心平台的原始镜像存储地址、中心平台的镜像数据加密密钥和中心平台的原始镜像数据哈希值。
需要说明的是,在通过区块链向已部署目标应用的目标供方边缘平台发起交易请求之前,供方边缘平台的第一初始共享信息的签名信息和中心平台的第二初始共享信息的签名信息发布至区块链,以供需方边缘平台在区块链查询目标应用的供方边缘平台和中心平台的信息。通常的,已部署目标应用的供方边缘平台的数量小于边缘平台的总量。
目标应用标识用于区分不同的应用,每个目标应用标识对应一个应用。
第一初始共享信息通过供方边缘平台的私钥签名,第一初始共享信息以签名方式存储于区块链,区块链以供方边缘平台的公钥验签,得到第一初始共享信息;同时第二初始共享信息通过中心平台的私钥签名,第二初始共享信息以签名形式存储于区块链,区块链以中心平台的公钥验签,得到第二初始共享信息。
在本公开的一个实施例中,如图4所示,当需方边缘平台部署目标应用时,供方边缘平台由智能合约匹配,智能合约执行以下逻辑:
S402、智能合约以供方边缘平台的公钥对区块链上的第一初始共享信息的签名信息进行验签,得到已部署目标应用的供方边缘平台的供方镜像存储地址;
S404、若查询到至少一个供方边缘平台已部署目标应用,则计算需方边缘平台和至少一个供方边缘平台之间的距离;
S406、确定距离小于预设距离且距离最小的供方边缘平台为目标供方边缘平台。
当需方边缘平台部署目标应用时,智能合约以各边缘平台的公钥对区块链上的第一初始共享数据的签名信息进行验签,以中心平台的公钥对区块链上的第二初始共享数据的签名信息进行验签,遍历验签得到的第一初始共享信息和第二初始共享信息,并从中筛选出已部署有目标应用的供方边缘平台的镜像存储地址和中心平台的原始镜像存储地址。
在一个实施例中,需方边缘平台通过智能合约在区块链中查询到至少一个供方边缘平台已部署目标应用,即可确定已部署目标应用的供方边缘平台的镜像存储地址,进一步可以通过智能合约计算需方边缘平台和已部署目标应用的边缘平台之间的距离,该距离为逻辑距离,可以采用供方边缘平台和需方边缘平台之间的传输时延或其他性能指标表征,需要说明的是,预设距离可根据实际情况而定,本申请不做具体限定。
在预设距离范围内,筛选已部署目标应用的供方边缘平台,逐个比较需方边缘平台和上述已部署目标应用的供方边缘平台之间的距离,从而得到距离小于预设距离且距离最小的供方边缘平台作为目标供方边缘平台。
本公开实施例中的基于区块链的应用共享方法,当查询到至少一个边缘平台已部署目标应用时,通过智能合约计算上述边缘平台与需方边缘平台之间的距离,进而得到在预设距离范围内且距离最小的边缘平台为供方平台,目标应用的镜像/数据可以就近获取,从而提高共享效率,有效避免大数据的频繁长距离传输为网络带来的压力。
作为本公开的一个可选实施例,如图4所示,该方法还包括:
S408、当已部署目标应用的边缘平台与需方边缘平台之间的距离大于预设距离时,确定中心平台为需方边缘平台的供方平台,需方边缘平台从中心平台获取目标应用的原始镜像存储地址。
需要说明的是,当已部署目标应用的供方边缘平台与需方边缘平台之间的距离大于预设距离时,表明该供方边缘平台与需方边缘平台之间的数据传输因长距离传输造成共享效率低的问题,故需方边缘平台可以从区块链上获取中心平台的目标应用的原始镜像存储地址,进而从原始镜像存储地址获取目标应用的镜像/数据,完成目标应用在需方边缘平台的部署。
查询区块链上的第二初始共享信息,以中心平台的公钥对第二初始共享信息的签名信息进行验签,以得到已部署目标应用的在中心平台的原始镜像存储地址,中心平台将目标应用的原始镜像数据以中心平台的私钥加密生成共享原始镜像数据,并通过链下方式传输至需方边缘平台;中心平台通过链上方式将共享原始镜像数据的验证信息以自身的私钥签名上链,区块链以中心平台的公钥验签,并以需方平台的公钥对共享原始镜像数据的验证信息加密,需方边缘平台以自身的私钥对上述信息解密,从而实现应用共享。
在一个实施例中,如图4所示,该方法还包括:
S410、若未查询到已部署目标应用的供方边缘平台,则确定中心平台为需方边缘平台的供方平台,需方边缘平台从区块链获取中心平台的目标应用的原始镜像存储地址。
本实施例的需方边缘平台在区块链中未查询到已部署目标应用的供方边缘平台,则表明边缘平台中未部署目标应用,仅在中心平台中存储目标应用的原始镜像/数据,从而确定需方边缘平台的供方平台为中心平台,需方边缘平台直接从区块链中获取中心平台的目标应用的原始镜像存储地址,进而从原始镜像存储地址获取目标应用的镜像/数据,完成目标应用在需方边缘平台的部署。
在一个实施例中,步骤S308根据共享镜像数据的验证信息对链下方式接收的共享镜像数据进行验证,包括:
以中心平台的公钥验签中心平台的第二初始共享信息的签名信息,得到目标应用在中心平台的原始镜像数据哈希值;
对链下方式接收的共享镜像数据进行哈希计算,得到共享镜像数据的待验证哈希值;
以供方边缘平台的镜像/数据加密密钥解密共享镜像数据,得到待验证镜像数据,并待验证镜像数据进行哈希计算,得到待验证镜像数据哈希值;
若共享镜像数据的待验证哈希值与共享镜像数据的哈希值一致且待验证镜像数据哈希值与中心平台的原始镜像数据哈希值一致,则判定验证结果为验证成功。
需要说明的是,需方边缘平台采用需方边缘平台的私钥解密共享信息,可以得到解密后的共享镜像数据的验证信息,共享镜像数据的验证信息包括目标应用标识、供方镜像存储地址、目标供方边缘平台的镜像/数据加密密钥、以及共享镜像数据的哈希值,以验证通过链下方式接收的共享镜像数据的数据来源。
对链下方式接收的共享镜像数据进行哈希计算,得到共享镜像数据的待验证哈希值H1’,比较待验证哈希值H1’与解密后的共享镜像数据的验证信息中的共享镜像数据的哈希值H1,若两者一致,则确认共享镜像数据传输安全、有效,共享镜像数据在传输过程中未被篡改,若两者不同,则确认共享镜像数据传输无效,验证结果为验证失败。
以解密后的共享镜像数据的验证信息中的目标供方边缘平台的镜像/数据加密密钥对链下方式接收的共享镜像数据进行解密,得到待验证镜像数据,并对待验证镜像数据进行哈希计算,得到待验证镜像数据哈希值H0’。
通过智能合约以中心平台的公钥对中心平台的第二初始共享信息的签名信息进行验签,得到中心平台的原始镜像数据哈希值H0,以根据第二初始共享信息验证共享镜像数据是否为中心平台的原始镜像数据。
验证中心平台的原始镜像数据哈希值H0与上述待验证镜像数据哈希值H0’是否一致,若一致,则表明共享镜像数据为原始镜像数据,未被修改;若不一致,则表明共享镜像数据非原始镜像,已被修改,验证结果为验证失败。当共享镜像数据的待验证哈希值H1’与共享镜像数据的哈希值H1一致且待验证镜像数据哈希值H0’与中心平台的原始镜像数据哈希值H0一致时,验证结果为验证成功。
在一个实施例中,该方法还包括:
若共享镜像数据的待验证哈希值与共享镜像数据的哈希值不一致,或者待验证镜像数据哈希值与中心平台的原始镜像数据哈希值不一致,则判定验证结果为验证失败。
在根据解密后的共享镜像数据的验证信息对共享镜像数据进行验证的情况下,采用需方边缘平台的密钥Pr2解密共享信息Pu2(Y,L1,S1,H1),得到共享镜像数据的验证信息,其中,共享镜像数据的验证信息包括目标应用标识Y、供方镜像存储地址L1、目标供方边缘平台的镜像/数据加密密钥S1和共享镜像数据的哈希值H1;
验证共享镜像数据的数据来源为供方镜像存储地址L1:数据源地址=L1;
对链下方式接收的共享镜像数据进行哈希计算,得到共享镜像数据的待验证哈希值H1’;
比较共享镜像数据的待验证哈希值H1’,若H1’=H1,则确定共享镜像数据传输安全;
采用中心平台R0的公钥Pu0验证第二初始共享信息的签名信息,得到中心平台R0的原始镜像数据哈希值H0;
采用共享镜像数据的验证信息中的供方边缘平台的镜像/数据加密密钥S1解密通过链下方式接收的共享镜像数据,得到待验证镜像数据,并计算待验证镜像数据的哈希值H0’,若H0’=H0,则确认中心平台R0的原始镜像未被修改,共享镜像数据有效,验证结果为验证成功。
在一个实施例中,步骤S310将验证结果发送至区块链,以使区块链记录达成共识的交易信息,实现应用在边缘平台之间的共享,包括:
若验证结果为验证成功,则区块链公告交易成功信息,以使区块链通过共识记录交易信息。
当根据共享镜像数据的验证信息对共享镜像数据验证成功时,区块链记录交易信息,并可以更新第一初始共享信息,如可以将已部署目标应用的需方边缘平台更新为供方边缘平台,同时,结合区块链的激励机制,通过智能合约向目标供方边缘平台提供一定的回报。
在一个实施例中,该方法还包括:若验证结果为验证失败,则向区块链发送公告交易失败信息,并重新确定需方边缘平台的供方平台。
当共享镜像数据验证失败时,需方边缘平台向区块链发送公告交易失败信息,此时,需方边缘平台尚未得到目标应用的镜像/数据,重新确定需方边缘平台的供方平台。需要说明的是,重新确定的供方平台可从步骤S404中得到的已部署目标应用的供方边缘平台中选择距离小于预设距离且距离为次小值的供方边缘平台,作为目标供方边缘平台。除此之外,重新确定的供方平台可为中心平台。
本公开实施例提供的一种基于区块链的应用共享方法,向已部署目标应用的目标供方边缘平台发起交易请求,目标供方边缘平台根据交易请求对目标应用的共享镜像数据通过链下方式传输,并将共享信息通过链上方式传输至需方边缘平台,进而通过解密后的共享信息对共享镜像数据进行验证,保证目标应用的数据共享的合法性和数据未被篡改,有效避免大数据的频繁长距离传输为网络带来的压力,充分利用区块链的公平、安全、不可篡改等机制,保证应用的精确共享,且共享过程可记录,目标应用的镜像/数据就近获取,从而提高共享效率。
基于同一发明构思,本公开实施例中还提供了一种基于区块链的应用共享方法,如下面的实施例所述。由于该方法实施例解决问题的原理与上述方法实施例相似,因此该方法实施例的实施可以参看上述方法实施例的实施,重复指出不再赘述。
图5示出本公开另一实施例中一种基于区块链的应用共享方法的流程图。如图5所述,本实施例的一种基于区块链的应用共享方法,中心平台和边缘平台作为节点组建区块链,区块链的智能合约部署在区块链节点上,该方法应用于目标供方边缘平台侧,包括:
S501、通过区块链接收需方边缘平台发起的交易请求,交易请求携带有目标应用标识和需方边缘平台的需方镜像存储地址;
S502、通过链下方式向需方边缘平台发送目标应用的共享镜像数据,其中,共享镜像数据以目标供方边缘平台的镜像/数据加密密钥加密目标供方镜像存储地址保存的原始镜像数据得到;
S503、以目标供方边缘平台的私钥对共享镜像数据的验证信息签名并发布至区块链,以使区块链根据共享镜像数据的验证信息生成目标供方边缘平台的共享信息,共享信息以需方边缘平台的公钥加密共享镜像数据的验证信息得到。
在一个实施例中,在通过区块链接收需方边缘平台发起的交易请求之前,该方法还包括:
已部署目标应用的供方边缘平台的第一初始共享信息以供方边缘平台的私钥签名,并发布至区块链,其中,第一初始共享信息包括目标应用、目标应用在所述供方边缘平台的供方镜像存储地址、以及供方边缘平台的镜像数据加密密钥。
在另一个实施例中,共享镜像数据的验证信息通过以下方式得到:
共享镜像数据的验证信息包括目标应用标识、供方镜像存储地址、目标供方边缘平台的镜像/数据加密密钥和共享镜像数据的哈希值;
以目标供方边缘平台的公钥对共享镜像数据的验证信息的签名信息进行验签,得到共享镜像数据的验证信息。
本公开实施例提供的基于区块链的应用共享方法,目标供方边缘平台接收需方边缘平台发起交易请求,目标供方边缘平台根据交易请求对目标应用的共享镜像数据通过链下方式传输,并将共享镜像数据的验证信息通过链上方式传输至需方边缘平台,进而通过解密后的共享镜像数据的验证信息对共享镜像数据进行验证,从而保证目标应用的数据共享的合法性和数据未被篡改,有效避免大数据的频繁长距离传输为网络带来的压力,充分利用区块链的公平、安全、不可篡改等机制,保证应用的精确共享,且共享过程可记录,目标应用的镜像/数据就近获取,从而提高共享效率。
下面结合附图6对基于区块链的应用共享方法进行说明。
边缘平台包括需方边缘平台R2和供方边缘平台R1,各边缘平台、以及边缘平台和中心平台之间构建区块链,通过确定目标供方边缘平台R1,实现边缘平台之间的应用共享。如图6所示,具体流程如下:
S601、供方边缘平台R1向区块链发布第一初始共享信息的签名信息Pr0(Y,H0,L0,S0);中心平台R0向区块链发布第二初始共享信息的签名信息;
S602、需方边缘平台R2通过智能合约查询、选点供方边缘平台R1为目标供方边缘平台,并向区块链触发共享请求;
S603、区块链向供方边缘平台R1发送共享请求;
S604、供方边缘平台R1根据共享请求对目标应用标识Y在目标供方镜像存储地址L1保存的原始镜像数据采用镜像/数据加密密钥S1进行加密处理,并计算共享镜像数据的哈希值H1;
S605、供方边缘平台R1将共享镜像数据的验证信息以供方边缘平台R1的私钥Pr1签名上链;
智能合约以供方边缘平台的公钥Pu1验签共享镜像数据的签名信息,得到共享镜像数据的验证信息,并以需方边缘平台的公钥Pu2对共享镜像数据的验证信息进行加密,生成供方边缘平台R1的共享信息,即共享信息Pu2(Y,L1,S1,H1);
S606、区块链向需方边缘平台R2传递共享信息Pu2(Y,L1,S1,H1);
S607、供方边缘平台R1将加密共享镜像数据链下传输至需方边缘平台R2;
S608、通过哈希计算和解密数据,验证共享镜像数据的有效性,将验证成功的向区块链公告交易;
S609、区块链达成共识、并记录交易信息。
需要说明的是,上述步骤S601供方边缘平台可以先执行S604,并合并步骤S601、S602的发布操作,即一次性发布第一初始共享信息和共享信息的并集,以尽量减少对区块链的操作。
图7示出本公开实施例中基于区块链的应用共享方法的示意图。如图7所示,作为一个具体的实施例,该方法包括:
S701a、部署有目标应用的供方边缘平台R1对第一初始共享信息以供方边缘平台的私钥签名,向区块链发布第一初始共享信息的签名信息,第一初始共享信息包括目标应用标识、供方边缘平台R1的供方镜像存储地址L1、以及供方边缘平台R1的镜像数据加密密钥S1;
S701b、中心平台R0的第二初始共享信息以中心平台的私钥签名,并向区块链发布,第二初始共享信息包括目标应用标识Y、中心平台标识Z0、目标应用在中心平台的原始镜像存储地址L0、中心平台的镜像数据加密密钥S0、以及原始镜像数据哈希值H0,Pr0(Y,Z0,S0,H0,L0);
S702、需方边缘平台R2通过智能合约查询区块链上的第一初始共享信息和第二初始共享信息,选取供方边缘平台R1为目标供方边缘平台,并触发交易请求;
S703、需方边缘平台R2通过区块链向供方边缘平台R1传递交易请求;
S704a、供方边缘平台R1采用镜像/数据加密密钥S1加密共享镜像数据;
S704b、供方边缘平台R1将共享镜像数据的验证信息以供方边缘平台R1的私钥Pr1签名上链;
智能合约以供方边缘平台的公钥Pu1验签共享镜像数据的验证信息的签名信息,得到共享镜像数据的验证信息,并以需方边缘平台的公钥Pu2对共享镜像数据的验证信息进行加密,生成供方边缘平台R1的共享信息,即共享信息Pu2(Y,L1,S1,H1);
S705a、供方边缘平台R1通过链下方式向需方边缘平台R2传递共享镜像数据;
S705b、需方边缘平台R2通过区块链读取共享信息Pu2(Y,L1,S1,H1);
S706、需方边缘平台R2从区块链读取中心平台的第二初始共享信息,Pu2(Y,Z0,S0,H0,L0);
S707、需方边缘平台R2以需方边缘平台R2的私钥Pr2对共享信息Pu2(Y,L1,S1,H1)解密,得到共享镜像数据的验证信息,并根据共享数据的验证信息和中心平台的第二初始共享信息对链下传递的加密共享镜像数据进行验证;
S708、需方边缘平台R2向区块链发送确认共享完成;
S709、区块链达成共识,并记录交易。
基于同一发明构思,本公开实施例中还提供了一种基于区块链的应用共享装置,如下面的实施例所述。由于该装置实施例解决问题的原理与上述方法实施例相似,因此该装置实施例的实施可以参见上述方法实施例的实施,重复之处不再赘述。
图8示出本公开实施例中一种基于区块链的应用共享装置图,如图8所示,中心平台和边缘平台作为节点通过智能合约组建区块链,该装置应用于需方边缘平台侧,包括交易请求发起模块801、镜像数据接收模块802、验证信息读取模块803、镜像数据验证模块804和验证结果发送模块805,其中,
交易请求发起模块801,用于通过区块链向已部署目标应用的目标供方边缘平台发起交易请求,交易请求携带有目标应用标识和需方边缘平台的需方镜像存储地址;
镜像数据接收模块802,用于通过链下方式接收目标供方边缘平台传输的目标应用的共享镜像数据,其中,共享镜像数据以目标供方边缘平台的镜像/数据加密密钥加密目标供方镜像存储地址保存的原始镜像数据得到;
验证信息读取模块803,用于通过区块链读取目标供方边缘平台的共享信息,共享信息以需方边缘平台的公钥加密共享镜像数据的验证信息得到;
镜像数据验证模块804,用于以需方边缘平台的私钥解密共享信息,得到共享镜像数据的验证信息,根据共享镜像数据的验证信息对共享镜像数据进行验证;
验证结果发送模块805,用于将验证结果发送至区块链,以使区块链记录达成共识的交易信息,实现应用在边缘平台之间的共享。
在一个实施例中,所述装置还包括未显示在附图中的初始信息发布模块,用于在通过区块链向已部署目标应用的目标供方边缘平台发起交易请求之前,已部署目标应用的供方边缘平台的第一初始共享信息以供方边缘平台的私钥签名,并发布至区块链,其中,第一初始共享信息包括目标应用标识、目标应用在目标供方边缘平台的供方镜像存储地址、以及供方边缘平台的镜像数据加密密钥;
中心平台的第二初始共享信息以中心平台的私钥签名,并发布至区块链,其中,第二初始共享信息包括目标应用标识、中心平台标识、目标应用在中心平台的原始镜像存储地址、中心平台的镜像数据加密密钥和中心平台的原始镜像数据哈希值。
在本公开的一个实施例中,目标供方边缘平台由智能合约匹配,
智能合约,用于当需方边缘平台部署所述目标应用时,以供方边缘平台的公钥对区块链上的第一初始共享信息的签名信息进行验签,得到已部署目标应用的供方边缘平台的供方镜像存储地址;
若查询到至少一个供方边缘平台已部署目标应用,则计算需方边缘平台和至少一个供方边缘平台之间的距离;
确定距离小于预设距离且距离最小的供方边缘平台为目标供方边缘平台;
当距离大于预设距离时,确定中心平台需方边缘平台的供方平台,需方边缘平台从区块链上获取中心平台的目标应用的原始镜像存储地址;
若未查询到已部署目标应用的供方边缘平台,则确定中心平台为需方边缘平台的供方平台;需方边缘平台从区块链获取中心平台的目标应用的原始镜像存储地址。
需要说明的是,共享镜像数据的验证信息通过以下方式得到:
目标供方边缘平台对共享镜像数据的验证信息以目标供方边缘平台的私钥签名并发布至区块链,共享镜像数据的验证信息包括目标应用标识、供方镜像存储地址、目标供方边缘平台的镜像/数据加密密钥和共享镜像数据的哈希值;
以目标供方边缘平台的公钥对共享镜像数据的验证信息的签名信息进行验签,得到所述共享镜像数据的验证信息。
在一个实施例中,验证信息读取模块803,具体用于以中心平台的公钥验签中心平台发布的第二初始共享信息的签名信息,得到目标应用在中心平台的原始镜像数据哈希值;
镜像数据验证模块804,具体用于对链下方式接收的共享镜像数据进行哈希计算,得到共享镜像数据的待验证哈希值;
以供方边缘平台的镜像/数据加密密钥解密共享镜像数据,得到待验证镜像数据,并待验证镜像数据进行哈希计算,得到待验证镜像数据哈希值;
若共享镜像数据的待验证哈希值与共享镜像数据的哈希值一致且待验证镜像数据哈希值与中心平台的原始镜像数据哈希值一致,则判定验证结果为验证成功;
若共享镜像数据的待验证哈希值与共享镜像数据的验证信息中的哈希值不一致,或待验证镜像数据哈希值与中心平台的原始镜像数据哈希值不一致,则判定验证结果为验证失败。
在本公开的一个实施例中,验证结果发送模块805,具体用于若验证结果为验证成功,则区块链公告交易成功信息;
若验证结果为验证失败,则区块链公告交易失败信息,重新确定需方边缘平台的供方平台。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
本实施例提供的一种基于区块链的应用共享装置,向已部署目标应用的目标供方边缘平台发起交易请求,供方边缘平台根据交易请求对目标应用的共享镜像数据通过链下方式传输,并将共享镜像数据的验证信息通过链上方式传输至需方边缘平台,进而通过解密后的共享镜像数据的验证信息对共享镜像数据进行验证,从而保证目标应用的数据共享的合法性和数据未被篡改,有效避免大数据的频繁长距离传输为网络带来的压力,充分利用区块链的公平、安全、不可篡改等机制,保证应用的精确共享,且共享过程可记录,目标应用的镜像/数据就近获取,从而提高共享效率。
基于同一发明构思,本公开实施例中还提供了一种基于区块链的应用共享装置,如下面的实施例所述。由于该方法实施例解决问题的原理与上述方法实施例相似,因此该方法实施例的实施可以参看上述方法实施例的实施,重复指出不再赘述。
图9示出本公开又一实施例中基于区块链的应用共享装置。
如图9所示,本实施例的基于区块链的应用共享装置,中心平台和边缘平台作为节点组建区块链,区块链的智能合约部署在区块链节点上,所述装置应用于目标供方边缘平台侧,包括:
交易请求接收模块901,用于通过区块链接收需方边缘平台发起的交易请求,所述交易请求携带有目标应用标识和需方边缘平台的需方镜像存储地址;
镜像数据发送模块902,用于通过链下方式向所述需方边缘平台发送目标应用的共享镜像数据,其中,共享镜像数据以目标供方边缘平台的镜像/数据加密密钥加密目标供方镜像存储地址保存的原始镜像数据得到;
验证信息发送模块903,用于以目标供方边缘平台的私钥对所述共享镜像数据的验证信息签名并发布至区块链,以使区块链根据共享镜像数据的验证信息生成目标供方边缘平台的共享信息,共享信息以需方边缘平台的公钥加密共享镜像数据的验证信息得到。
在一个实施例中,该装置还包括未显示在附图中的初始信息发布模块,用于在通过区块链接收需方边缘平台发起的交易请求之前,已部署目标应用的供方边缘平台的第一初始共享信息以供方边缘平台的私钥签名,并发布至所述区块链,其中,第一初始共享信息包括目标应用标识、目标应用在供方边缘平台的供方镜像存储地址、以及供方边缘平台的镜像数据加密密钥。
需要说明的是,共享镜像数据的验证信息通过以下方式得到:
共享镜像数据的验证信息包括目标应用标识、供方镜像存储地址、目标供方边缘平台的镜像/数据加密密钥和共享镜像数据的哈希值;
以目标供方边缘平台的公钥对共享镜像数据的验证信息的签名信息进行验签,得到共享镜像数据的验证信息。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
本实施例提供的一种基于区块链的应用共享装置,目标供方边缘平台接收需方边缘平台发起交易请求,目标供方边缘平台根据交易请求对目标应用的共享镜像数据通过链下方式传输,并将共享镜像数据的验证信息通过链上方式传输至需方边缘平台,进而通过解密后的共享镜像数据的验证信息对共享镜像数据进行验证,从而保证目标应用的数据共享的合法性和数据未被篡改,有效避免大数据的频繁长距离传输为网络带来的压力,充分利用区块链的公平、安全、不可篡改等机制,保证应用的精确共享,且共享过程可记录,目标应用的镜像/数据就近获取,从而提高共享效率。
下面参照图10来描述根据本发明的这种实施方式的电子设备1000。图10显示的电子设备1000仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图10所示,电子设备1000以通用计算设备的形式表现。电子设备1000的组件可以包括但不限于:上述至少一个处理单元1010、上述至少一个存储单元1020、连接不同系统组件(包括存储单元1020和处理单元1010)的总线1030。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元1010执行,使得所述处理单元1010执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元1010可以执行如图3中所示的中心平台和边缘平台作为节点组建区块链,区块链的智能合约部署在节点上,该方法应用于需方边缘平台侧,通过区块链向已部署目标应用的目标供方边缘平台发起交易请求,交易请求携带有目标应用标识和需方边缘平台的需方镜像存储地址;通过链下方式接收目标供方边缘平台传输的目标应用的共享镜像数据,其中,共享镜像数据以目标供方边缘平台的镜像/数据加密密钥加密目标供方镜像存储地址保存的原始镜像数据得到;通过区块链读取目标供方边缘平台的共享信息,共享信息以需方边缘平台的公钥加密共享镜像数据的验证信息得到;以需方边缘平台的私钥解密共享信息,得到共享镜像数据的验证信息,根据共享镜像数据的验证信息对链下方式接收的共享镜像数据进行验证;将验证结果发送至区块链,以使区块链记录达成共识的交易信息,实现应用在边缘平台之间的共享。
所述处理单元1010可以执行如图5中所示的中心平台和边缘平台作为节点组建区块链,区块链的智能合约部署在区块链节点上,该方法应用于目标供方边缘平台侧,通过区块链接收需方边缘平台发起的交易请求,交易请求携带有目标应用标识和需方镜像存储地址;通过链下方式向需方边缘平台发送目标应用的共享镜像数据,其中,共享镜像数据以目标供方边缘平台的镜像/数据加密密钥加密目标供方镜像存储地址保存的原始镜像数据得到;以目标供方边缘平台的私钥对共享镜像数据的验证信息签名并发布至区块链,以使区块链根据共享镜像数据的验证信息生成目标供方边缘平台的共享信息,共享信息以需方边缘平台的公钥加密共享镜像数据的验证信息得到。
存储单元1020可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)10201和/或高速缓存存储单元10202,还可以进一步包括只读存储单元(ROM)10203。
存储单元1020还可以包括具有一组(至少一个)程序模块10205的程序/实用工具10204,这样的程序模块10205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线1030可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备1000也可以与一个或多个外部设备1040(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该系统1000交互的设备通信,和/或与使得该电子设备1000能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口1050进行。并且,系统1000还可以通过网络适配器1060与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器1060通过总线1030与电子设备1000的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备1000使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。
描述了根据本发明的实施方式的用于实现上述方法的程序产品,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由所附的权利要求指出。
Claims (22)
1.一种基于区块链的应用共享方法,中心平台和边缘平台作为节点组建区块链,所述区块链的智能合约部署在所述节点上,所述方法应用于需方边缘平台侧,其特征在于,包括:
通过区块链向已部署目标应用的目标供方边缘平台发起交易请求,所述交易请求携带有目标应用标识和所述需方边缘平台的需方镜像存储地址;
通过链下方式接收所述目标供方边缘平台传输的所述目标应用的共享镜像数据,其中,共享镜像数据以目标供方边缘平台的镜像数据加密密钥加密目标供方镜像存储地址保存的原始镜像数据得到;
通过区块链读取所述目标供方边缘平台的共享信息,所述共享信息以所述需方边缘平台的公钥加密所述共享镜像数据的验证信息得到;
以所述需方边缘平台的私钥解密所述共享信息,得到所述共享镜像数据的验证信息,根据所述共享镜像数据的验证信息对链下方式接收的所述共享镜像数据进行验证;
将验证结果发送至区块链,以使区块链记录达成共识的交易信息,实现应用在边缘平台之间的共享。
2.根据权利要求1所述的基于区块链的应用共享方法,其特征在于,在所述通过区块链向已部署目标应用的目标供方边缘平台发起交易请求之前,所述方法还包括:
已部署目标应用的供方边缘平台的第一初始共享信息以所述供方边缘平台的私钥签名,并发布至所述区块链,其中,所述第一初始共享信息包括所述目标应用标识、所述目标应用在所述供方边缘平台的供方镜像存储地址、以及所述供方边缘平台的镜像数据加密密钥;
所述中心平台的第二初始共享信息以所述中心平台的私钥签名,并发布至所述区块链,其中,所述第二初始共享信息包括所述目标应用标识、中心平台标识、所述目标应用在所述中心平台的原始镜像存储地址、所述中心平台的镜像数据加密密钥和所述中心平台的原始镜像数据哈希值。
3.根据权利要求2所述的基于区块链的应用共享方法,其特征在于,当所述需方边缘平台需要部署所述目标应用时,所述目标供方边缘平台由所述智能合约匹配,所述智能合约执行以下逻辑:
以所述供方边缘平台的公钥对所述区块链上的所述第一初始共享信息的签名信息进行验签,得到已部署所述目标应用的所述供方边缘平台的供方镜像存储地址;
若查询到至少一个所述供方边缘平台已部署所述目标应用,则计算所述需方边缘平台和至少一个所述供方边缘平台之间的距离;
确定所述距离小于预设距离且距离最小的所述供方边缘平台为所述目标供方边缘平台。
4.根据权利要求3所述的基于区块链的应用共享方法,其特征在于,所述方法还包括:
当所述距离大于预设距离时,确定所述中心平台为所述需方边缘平台的供方平台,所述需方边缘平台从区块链上获取所述中心平台的所述目标应用的原始镜像存储地址。
5.根据权利要求3所述的基于区块链的应用共享方法,其特征在于,所述方法还包括:
若未查询到已部署所述目标应用的所述供方边缘平台,则确定所述中心平台为所述需方边缘平台的供方平台;所述需方边缘平台从区块链获取所述中心平台的所述目标应用的原始镜像存储地址。
6.根据权利要求2所述的基于区块链的应用共享方法,其特征在于,所述共享镜像数据的验证信息通过以下方式得到:
所述目标供方边缘平台对所述共享镜像数据的验证信息以所述目标供方边缘平台的私钥签名并发布至区块链,所述共享镜像数据的验证信息包括所述目标应用标识、所述供方镜像存储地址、所述目标供方边缘平台的镜像数据加密密钥和所述共享镜像数据的哈希值;
以所述目标供方边缘平台的公钥对所述共享镜像数据的验证信息的签名信息进行验签,得到所述共享镜像数据的验证信息。
7.根据权利要求6所述的基于区块链的应用共享方法,其特征在于,所述根据所述共享镜像数据的验证信息对链下方式接收的所述共享镜像数据进行验证,包括:
以所述中心平台的公钥验签所述中心平台发布的第二初始共享信息的签名信息,得到所述目标应用在所述中心平台的原始镜像数据哈希值;
对链下方式接收的所述共享镜像数据进行哈希计算,得到所述共享镜像数据的待验证哈希值;
以所述供方边缘平台的镜像数据加密密钥解密所述共享镜像数据,得到待验证镜像数据,并对所述待验证镜像数据进行哈希计算,得到所述待验证镜像数据哈希值;
若所述共享镜像数据的待验证哈希值与所述共享镜像数据的哈希值一致且所述待验证镜像数据哈希值与所述中心平台的原始镜像数据哈希值一致,则判定验证结果为验证成功。
8.根据权利要求7所述的基于区块链的应用共享方法,其特征在于,所述方法还包括:
若所述共享镜像数据的待验证哈希值与所述共享镜像数据的哈希值不一致,或所述待验证镜像数据哈希值与所述中心平台的原始镜像数据哈希值不一致,则判定验证结果为验证失败。
9.根据权利要求1~8任一项所述的基于区块链的应用共享方法,其特征在于,所述将验证结果发送至区块链,以使区块链记录达成共识的交易信息,实现应用在边缘平台之间的共享,包括:
若所述验证结果为验证成功,则所述区块链公告交易成功信息。
10.根据权利要求9所述的基于区块链的应用共享方法,其特征在于,所述方法还包括:若所述验证结果为验证失败,则所述区块链公告交易失败信息,重新确定所述需方边缘平台的供方平台。
11.一种基于区块链的应用共享方法,中心平台和边缘平台作为节点组建区块链,区块链的智能合约部署在区块链节点上,所述方法应用于目标供方边缘平台侧,其特征在于,包括:
通过区块链接收需方边缘平台发起的交易请求,所述交易请求携带有目标应用标识和所述需方边缘平台的需方镜像存储地址;
通过链下方式向所述需方边缘平台发送所述目标应用的共享镜像数据,其中,共享镜像数据以目标供方边缘平台的镜像数据加密密钥加密目标供方镜像存储地址保存的原始镜像数据得到;
以所述目标供方边缘平台的私钥对所述共享镜像数据的验证信息签名并发布至区块链,以使所述需方边缘平台通过所述区块链读取所述目标供方边缘平台的共享信息,所述共享信息以所述需方边缘平台的公钥加密所述共享镜像数据的验证信息得到,所述需方边缘平台以所述需方边缘平台的私钥解密所述共享信息,得到所述共享镜像数据的验证信息,根据所述共享镜像数据的验证信息对链下方式接收的所述共享镜像数据进行验证。
12.根据权利要求11所述的基于区块链的应用共享方法,其特征在于,在所述通过区块链接收需方边缘平台发起的交易请求之前,所述方法还包括:
已部署目标应用的供方边缘平台的第一初始共享信息以所述供方边缘平台的私钥签名,并发布至所述区块链,其中,所述第一初始共享信息包括所述目标应用标识、所述目标应用在所述供方边缘平台的供方镜像存储地址、以及所述供方边缘平台的镜像数据加密密钥。
13.根据权利要求11所述的基于区块链的应用共享方法,其特征在于,所述共享镜像数据的验证信息通过以下方式得到:
所述共享镜像数据的验证信息包括所述目标应用标识、所述供方镜像存储地址、所述目标供方边缘平台的镜像数据加密密钥和所述共享镜像数据的哈希值;
以所述目标供方边缘平台的公钥对所述共享镜像数据的验证信息的签名信息进行验签,得到所述共享镜像数据的验证信息。
14.一种基于区块链的应用共享装置,中心平台和边缘平台作为节点组建区块链,区块链的智能合约部署在区块链节点上,所述装置应用于需方边缘平台侧,其特征在于,所述装置包括:
交易请求发起模块,用于通过区块链向已部署目标应用的目标供方边缘平台发起交易请求,所述交易请求携带有目标应用标识和所述需方边缘平台的需方镜像存储地址;
镜像数据接收模块,用于通过链下方式接收所述目标供方边缘平台传输的所述目标应用的共享镜像数据,其中,共享镜像数据以目标供方边缘平台的镜像数据加密密钥加密目标供方镜像存储地址保存的原始镜像数据得到;
验证信息读取模块,用于通过区块链读取所述目标供方边缘平台的共享信息,所述共享信息以所述需方边缘平台的公钥加密所述共享镜像数据的验证信息得到;
镜像数据验证模块,用于以所述需方边缘平台的私钥解密所述共享信息,得到所述共享镜像数据的验证信息,根据所述共享镜像数据的验证信息对所述共享镜像数据进行验证;
验证结果发送模块,用于将验证结果发送至区块链,以使区块链记录达成共识的交易信息,实现应用在边缘平台之间的共享。
15.根据权利要求14所述的基于区块链的应用共享装置,其特征在于,还包括初始信息发布模块,用于在所述通过区块链向已部署目标应用的目标供方边缘平台发起交易请求之前,已部署目标应用的供方边缘平台的第一初始共享信息以所述供方边缘平台的私钥签名,并发布至所述区块链,其中,所述第一初始共享信息包括所述目标应用标识、所述目标应用在所述供方边缘平台的供方镜像存储地址、以及所述供方边缘平台的镜像数据加密密钥;
所述中心平台的第二初始共享信息以所述中心平台的私钥签名,并发布至所述区块链,其中,所述第二初始共享信息包括所述目标应用标识、中心节点标识、所述目标应用在所述中心平台的原始镜像存储地址、所述中心平台的镜像数据加密密钥和所述中心平台的原始镜像数据哈希值。
16.根据权利要求15所述的基于区块链的应用共享装置,其特征在于,所述目标供方边缘平台由所述智能合约匹配,
所述智能合约,用于当所述需方边缘平台部署所述目标应用时,以所述供方边缘平台的公钥对所述区块链上的所述第一初始共享信息的签名信息进行验签,得到已部署所述目标应用的所述供方边缘平台的供方镜像存储地址;
若查询到至少一个所述供方边缘平台已部署所述目标应用,则计算所述需方边缘平台和至少一个所述供方边缘平台之间的距离;
确定所述距离小于预设距离且距离最小的所述供方边缘平台为所述目标供方边缘平台;
当所述距离大于预设距离时,确定所述中心平台为所述需方边缘平台的供方平台,所述需方边缘平台从区块链上获取所述中心平台的所述目标应用的原始镜像存储地址;
若未查询到已部署所述目标应用的所述供方边缘平台,则确定所述中心平台为所述需方边缘平台的供方平台;所述需方边缘平台从区块链获取所述中心平台的所述目标应用的原始镜像存储地址。
17.根据权利要求15所述的基于区块链的应用共享装置,其特征在于,所述共享镜像数据的验证信息通过以下方式得到:
所述目标供方边缘平台对所述共享镜像数据的验证信息以所述目标供方边缘平台的私钥签名并发布至区块链,所述共享镜像数据的验证信息包括所述目标应用标识、所述供方镜像存储地址、所述目标供方边缘平台的镜像数据加密密钥和所述共享镜像数据的哈希值;
以所述目标供方边缘平台的公钥对所述共享镜像数据的验证信息的签名信息进行验签,得到所述共享镜像数据的验证信息。
18.根据权利要求17所述的基于区块链的应用共享装置,其特征在于,
所述验证信息读取模块,用于以所述中心平台的公钥验签所述中心平台发布的第二初始共享信息的签名信息,得到所述中心平台的原始镜像数据哈希值;
所述镜像数据验证模块,用于对链下方式接收的所述共享镜像数据进行哈希计算,得到所述共享镜像数据的待验证哈希值;
以所述供方边缘平台的镜像数据加密密钥解密所述共享镜像数据,得到待验证镜像数据,并所述待验证镜像数据进行哈希计算,得到所述待验证镜像数据哈希值;
若所述共享镜像数据的待验证哈希值与所述共享镜像数据的哈希值一致且所述待验证镜像数据哈希值与所述中心平台的原始镜像数据哈希值一致,则判定验证结果为验证成功;
若所述共享镜像数据的待验证哈希值与所述共享镜像数据的哈希值不一致,或所述待验证镜像数据哈希值与所述中心平台的原始镜像数据哈希值不一致,则判定验证结果为验证失败。
19.根据权利要求14~18任一项所述的基于区块链的应用共享装置,其特征在于,所述验证结果发送模块,用于若所述验证结果为验证成功,则所述区块链公告交易成功信息;
若所述验证结果为验证失败,则所述区块链公告交易失败信息,重新确定所述需方边缘平台的供方平台。
20.一种基于区块链的应用共享装置,中心平台和边缘平台作为节点组建区块链,区块链的智能合约部署在区块链节点上,所述装置应用于目标供方边缘平台侧,其特征在于,包括:
交易请求接收模块,用于通过区块链接收需方边缘平台发起的交易请求,所述交易请求携带有目标应用标识和所述需方边缘平台的需方镜像存储地址;
镜像数据发送模块,用于通过链下方式向所述需方边缘平台发送所述目标应用的共享镜像数据,其中,共享镜像数据以目标供方边缘平台的镜像数据加密密钥加密目标供方镜像存储地址保存的原始镜像数据得到;
验证信息发送模块,用于以所述目标供方边缘平台的私钥对所述共享镜像数据的验证信息签名并发布至区块链,以使所述需方边缘平台通过所述区块链读取所述目标供方边缘平台的共享信息,所述共享信息以所述需方边缘平台的公钥加密所述共享镜像数据的验证信息得到,所述需方边缘平台以所述需方边缘平台的私钥解密所述共享信息,得到所述共享镜像数据的验证信息,根据所述共享镜像数据的验证信息对链下方式接收的所述共享镜像数据进行验证。
21.一种电子设备,其特征在于,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行如权利要求1-13任一项所述的基于区块链的应用共享方法。
22.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-13任一项所述的基于区块链的应用共享方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210680436.4A CN115102703B (zh) | 2022-06-15 | 2022-06-15 | 基于区块链的应用共享方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210680436.4A CN115102703B (zh) | 2022-06-15 | 2022-06-15 | 基于区块链的应用共享方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115102703A CN115102703A (zh) | 2022-09-23 |
CN115102703B true CN115102703B (zh) | 2023-10-03 |
Family
ID=83290164
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210680436.4A Active CN115102703B (zh) | 2022-06-15 | 2022-06-15 | 基于区块链的应用共享方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115102703B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108769031A (zh) * | 2018-05-31 | 2018-11-06 | 中化能源科技有限公司 | 基于区块链的边缘计算服务的实物存证溯源系统 |
CN112349368A (zh) * | 2020-09-29 | 2021-02-09 | 福建西岸康健管理有限公司 | 基于医疗区块链的电子健康档案授权共享与管理系统 |
CN112651592A (zh) * | 2020-11-27 | 2021-04-13 | 科技谷(厦门)信息技术有限公司 | 一种基于多式联运的企业信用评估系统 |
CN113191706A (zh) * | 2021-04-02 | 2021-07-30 | 南京博雅区块链研究院有限公司 | 基于区块链的物流运输辅助系统及方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110059495B (zh) * | 2018-12-14 | 2020-11-17 | 创新先进技术有限公司 | 数据共享方法、装置及系统、电子设备 |
-
2022
- 2022-06-15 CN CN202210680436.4A patent/CN115102703B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108769031A (zh) * | 2018-05-31 | 2018-11-06 | 中化能源科技有限公司 | 基于区块链的边缘计算服务的实物存证溯源系统 |
CN112349368A (zh) * | 2020-09-29 | 2021-02-09 | 福建西岸康健管理有限公司 | 基于医疗区块链的电子健康档案授权共享与管理系统 |
CN112651592A (zh) * | 2020-11-27 | 2021-04-13 | 科技谷(厦门)信息技术有限公司 | 一种基于多式联运的企业信用评估系统 |
CN113191706A (zh) * | 2021-04-02 | 2021-07-30 | 南京博雅区块链研究院有限公司 | 基于区块链的物流运输辅助系统及方法 |
Non-Patent Citations (1)
Title |
---|
基于链上链下相结合的日志安全存储与检索;吕建富;赖英旭;刘静;;计算机科学(第03期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN115102703A (zh) | 2022-09-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210326876A1 (en) | Dedicated blockchain node devices and blockchain networks | |
CN113438289B (zh) | 基于云计算的区块链数据处理方法及装置 | |
CN110162992B (zh) | 数据处理方法、数据处理装置和计算机系统 | |
US9047490B2 (en) | Method and a system for secure execution of workflow tasks in a distributed workflow management system within a decentralized network system | |
CN110460439A (zh) | 信息传输方法、装置、客户端、服务端及存储介质 | |
CN110535648B (zh) | 电子凭证生成及验证和密钥控制方法、装置、系统和介质 | |
CN108990002A (zh) | 一种区块链数据处理方法、装置、终端及存储介质 | |
CN111314172B (zh) | 基于区块链的数据处理方法、装置、设备及存储介质 | |
CN111464315B (zh) | 数字签名处理方法、装置、计算机设备以及存储介质 | |
CN113992360A (zh) | 一种基于区块链跨链的联邦学习方法及设备 | |
JP2023524715A (ja) | ネットワーク間の識別情報プロビジョニング | |
CN102177678A (zh) | 可信和机密的远程tpm初始化 | |
US11943210B2 (en) | System and method for distributed, keyless electronic transactions with authentication | |
US11803631B2 (en) | Binding a hardware security token to a host device to prevent exploitation by other host devices | |
CN112825522A (zh) | 可信的数据传输方法、系统、电子设备、存储介质 | |
CN113706261A (zh) | 一种基于区块链的电力交易方法、装置及系统 | |
CN110599270A (zh) | 电子票据生成方法、装置和计算机设备 | |
CN112235290A (zh) | 基于区块链的物联网设备管理方法及第一物联网设备 | |
WO2021170049A1 (zh) | 一种访问行为的记录方法、装置 | |
CN116561820B (zh) | 可信数据处理方法及相关装置 | |
CN115705601A (zh) | 数据处理方法、装置、计算机设备及存储介质 | |
CN115102703B (zh) | 基于区块链的应用共享方法、装置、设备及介质 | |
CN109739875B (zh) | 核保方法、装置及系统 | |
CN111010283A (zh) | 用于生成信息的方法和装置 | |
CN112163917B (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 |