CN110909314A - 基于区块链的数据共享方法、装置、设备及可读存储介质 - Google Patents
基于区块链的数据共享方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN110909314A CN110909314A CN201911115036.3A CN201911115036A CN110909314A CN 110909314 A CN110909314 A CN 110909314A CN 201911115036 A CN201911115036 A CN 201911115036A CN 110909314 A CN110909314 A CN 110909314A
- Authority
- CN
- China
- Prior art keywords
- data
- user
- user information
- resource
- target multimedia
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 238000012546 transfer Methods 0.000 claims abstract description 118
- 238000004806 packaging method and process Methods 0.000 claims description 14
- 238000012795 verification Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 8
- 238000005192 partition Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000005538 encapsulation Methods 0.000 description 2
- 241000972773 Aulopiformes Species 0.000 description 1
- 235000008534 Capsicum annuum var annuum Nutrition 0.000 description 1
- 240000008384 Capsicum annuum var. annuum Species 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000001447 compensatory effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 235000015277 pork Nutrition 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 235000019515 salmon Nutrition 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/604—Tools and structures for managing or administering access control systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Technology Law (AREA)
- Databases & Information Systems (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Automation & Control Theory (AREA)
- Multimedia (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本申请公开了一种基于区块链的数据共享方法、装置、设备及可读存储介质,本申请属于计算机技术领域,该方法包括:获取第一用户设备发送的目标多媒体数据,将目标多媒体数据上链;获取第二用户设备发送的数据阅读请求;基于数据阅读请求与智能合约,确定用于阅读目标多媒体数据所需的消耗资源;根据消耗资源获取属于第二用户设备对应的第二用户信息的第一资源数据,基于第一资源数据与目标多媒体数据,生成第一区块;若第一区块上链成功,则确定第一用户设备对应的第一用户信息具备针对第一资源数据的使用权限,向第二用户信息分配针对目标多媒体数据的阅读权限。采用本申请,可以提高资源数据转移的自动性,进而提高数据查看的效率。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种基于区块链的数据共享方法、装置、设备及可读存储介质。
背景技术
随着互联网时代共享经济的兴起,无偿的知识共享已经无法满足人们的需求,因为个体所拥有的隐形知识往往需要通过长时间的积累或钻研,通常情况下他们不愿意将这些知识与他人无偿分享,那么有偿的高价值的知识共享逐渐成为一种需求,分享者在分享数据后可以获得虚拟资产的奖励,阅读者则需要提供相应的虚拟资产才能阅读共享数据。
在现有技术中,用户在查看需提供虚拟资产的共享数据时,往往需要用户通过输入密码来进行虚拟资产的转移,转移完成后才能进行查看,人工手动转移虚拟资源的方式使得查看数据的效率不高。
申请内容
本申请实施例提供一种基于区块链的数据共享方法、装置、设备以及可读存储介质,可以提高资源数据转移的自动性,进而提高数据查看的效率。
本申请实施例一方面提供了一种基于区块链的数据共享方法,包括:
获取第一用户设备发送的目标多媒体数据,将所述目标多媒体数据上链至区块链中;所述第一用户设备对应第一用户信息;
获取第二用户设备发送的数据阅读请求;所述数据阅读请求用于请求阅读所述第一用户设备所提供的所述目标多媒体数据;所述第二用户设备对应第二用户信息;
基于所述数据阅读请求,触发智能合约,根据所述智能合约确定用于阅读所述目标多媒体数据所需的消耗资源;
根据所述消耗资源获取属于所述第二用户信息的第一资源数据,根据所述第一资源数据生成所述第二用户信息针对所述第一用户信息的第一数据转移信息;
根据所述第一数据转移信息、所述第一用户信息、所述第二用户信息、所述目标多媒体数据以及所述智能合约生成第一区块;
若所述第一区块在所述区块链中上链成功,则确定所述第一用户信息具备针对所述第一资源数据的使用权限,向所述第二用户信息分配针对所述目标多媒体数据的阅读权限。
其中,所述获取第一用户设备发送的目标多媒体数据,将所述目标多媒体数据上链至区块链中,包括:
获取所述第一用户设备发送的所述目标多媒体数据;
根据所述目标多媒体数据和所述第一用户信息,生成待添加至所述区块链的目标区块;
将所述目标区块广播至所述区块链上的所有区块链共识节点;
在确定所述区块链上的所述所有区块链共识节点之间达成共识时,将所述目标区块添加至所述区块链。
其中,所述根据所述目标多媒体数据和所述第一用户信息,生成待添加至所述区块链的目标区块,包括:
从所述区块链上获取具有最大生成时间戳的区块作为父区块;
对所述目标多媒体数据进行哈希计算,得到所述目标区块的哈希值;
获取所述父区块的父区块哈希值;
根据所述目标多媒体数据和所述第一用户信息,构建默克尔树;
基于所述父区块哈希值、所述默克尔树、所述目标区块的所述哈希值、所述目标多媒体数据以及所述第一用户信息,生成待添加至所述区块链的所述目标区块。
其中,所述根据所述消耗资源获取属于所述第二用户信息的第一资源数据,根据所述第一资源数据生成所述第二用户信息针对所述第一用户信息的第一数据转移信息,包括:
根据所述消耗资源获取属于所述第二用户信息的第一资源数据,根据所述第一资源数据、转移对象的公钥以及所述第一资源数据的来源账户地址以及所述转移对象的账户地址,生成交易数据;
根据所述第二用户信息的私钥对所述交易数据进行签名,得到用户签名;
将所述交易数据和所述用户签名封装为所述第一数据转移信息。
其中,所述根据所述消耗资源获取所述第二用户信息对应的第一资源数据,根据所述第一资源数据生成所述第二用户信息针对所述第一用户信息的第一数据转移信息,包括:
根据所述消耗资源获取属于所述第二用户信息的第一资源数据,根据所述第一资源数据、转移对象的公钥以及所述第一资源数据的来源账户地址以及所述转移对象的账户地址,生成交易数据;
将所述交易数据发送至所述第二用户终端,以使所述第二用户终端基于私钥对所述交易数据进行签名,得到用户签名;
获取所述第二用户终端发送的所述用户签名,基于所述第二用户信息的公钥对所述用户签名进行验证,并在验证通过时确定所述交易数据的合法性;
在所述交易数据为合法数据时,将所述交易数据与所述用户签名封装为所述第一数据转移信息。
其中,所述来源账户地址为来源用户的账户地址;所述来源用户是指向所述第二用户信息转移过历史资源数据的用户;所述转移对象的账户地址包括共享平台的账户地址以及所述第一用户信息的账户地址;
则所述确定所述第一用户信息具备针对所述第一资源数据的使用权限,包括:
确定所述第一用户信息具备针对用户分配资源数据的使用权限,确定所述共享平台具备针对平台分配资源数据的使用权限;所述第一资源数据为所述用户分配资源数据和所述平台分配资源数据的总和。
其中,还包括:
若所述目标多媒体数据在所述区块链中上链成功,则调用所述智能合约,根据所述智能合约确定所述目标多媒体数据对应的奖励资源;
根据所述奖励资源获取属于所述共享平台的第二资源数据,根据所述第二资源数据生成所述共享平台针对所述第一用户信息的第二数据转移信息;
根据所述第二数据转移信息、所述第一用户信息、所述共享平台的信息、所述目标多媒体数据以及所述智能合约生成第二区块;
若所述第二区块在所述区块链中上链成功,则确定所述第一用户信息具备针对所述第二资源数据的使用权限。
本申请实施例一方面提供了一种基于区块链的数据共享装置,包括:
上链模块,用于获取第一用户设备发送的目标多媒体数据,将所述目标多媒体数据上链至区块链中;所述第一用户设备对应第一用户信息;
获取模块,用于获取第二用户设备发送的数据阅读请求;所述数据阅读请求用于请求阅读所述第一用户设备所提供的所述目标多媒体数据;所述第二用户设备对应第二用户信息;
第一确定模块,用于基于所述数据阅读请求,触发智能合约,根据所述智能合约确定用于阅读所述目标多媒体数据所需的消耗资源;
第一生成模块,用于根据所述消耗资源获取属于所述第二用户信息的第一资源数据,根据所述第一资源数据生成所述第二用户信息针对所述第一用户信息的第一数据转移信息;
第二生成模块,用于根据所述第一数据转移信息、所述第一用户信息、所述第二用户信息、所述目标多媒体数据以及所述智能合约生成第一区块;
第二确定模块,用于若所述第一区块在所述区块链中上链成功,则确定所述第一用户信息具备针对所述第一资源数据的使用权限;
分配模块,用于向所述第二用户信息分配针对所述目标多媒体数据的阅读权限。
其中,所述上链模块,包括:
获取单元,用于获取所述第一用户设备发送的所述目标多媒体数据;
第一生成单元,用于根据所述目标多媒体数据和所述第一用户信息,生成待添加至所述区块链的目标区块;
广播单元,用于将所述目标区块广播至所述区块链上的所有区块链共识节点;
添加单元,用于在确定所述区块链上的所述所有区块链共识节点之间达成共识时,将所述目标区块添加至所述区块链。
其中,所述第一生成单元,包括:
获取子单元,用于从所述区块链上获取具有最大生成时间戳的区块作为父区块;
计算子单元,用于对所述目标多媒体数据进行哈希计算,得到所述目标区块的哈希值;
所述获取子单元,还用于获取所述父区块的父区块哈希值;
构建子单元,用于根据所述目标多媒体数据和所述第一用户信息,构建默克尔树;
生成子单元,用于基于所述父区块哈希值、所述默克尔树、所述目标区块的所述哈希值、所述目标多媒体数据以及所述第一用户信息,生成待添加至所述区块链的所述目标区块。
其中,所述第一生成模块,包括:
第二生成单元,用于根据所述消耗资源获取属于所述第二用户信息的第一资源数据,根据所述第一资源数据、转移对象的公钥以及所述第一资源数据的来源账户地址以及所述转移对象的账户地址,生成交易数据;
第一签名单元,用于根据所述第二用户信息的私钥对所述交易数据进行签名,得到用户签名;
第一封装单元,用于将所述交易数据和所述用户签名封装为所述第一数据转移信息。
其中,所述第一生成模块,包括:
第三生成单元,用于根据所述消耗资源获取属于所述第二用户信息的第一资源数据,根据所述第一资源数据、转移对象的公钥以及所述第一资源数据的来源账户地址以及所述转移对象的账户地址,生成交易数据;
第二签名单元,用于将所述交易数据发送至所述第二用户终端,以使所述第二用户终端基于私钥对所述交易数据进行签名,得到用户签名;
验证单元,用于获取所述第二用户终端发送的所述用户签名,基于所述第二用户信息的公钥对所述用户签名进行验证,并在验证通过时确定所述交易数据的合法性;
第二封装单元,用于在所述交易数据为合法数据时,将所述交易数据与所述用户签名封装为所述第一数据转移信息。
其中,所述来源账户地址为来源用户的账户地址;所述来源用户是指向所述第二用户信息转移过历史资源数据的用户;所述转移对象的账户地址包括共享平台的账户地址以及所述第一用户信息的账户地址;
所述第二确定模块,包括:
第一确定单元,用于确定所述第一用户信息具备针对用户分配资源数据的使用权限,确定所述共享平台具备针对平台分配资源数据的使用权限;所述第一资源数据为所述用户分配资源数据和所述平台分配资源数据的总和。
其中,所述第二确定模块,还包括:
调用单元,用于若所述目标多媒体数据在所述区块链中上链成功,则调用所述智能合约,根据所述智能合约确定所述目标多媒体数据对应的奖励资源;
第四生成单元,用于根据所述奖励资源获取属于所述共享平台的第二资源数据,根据所述第二资源数据生成所述共享平台针对所述第一用户信息的第二数据转移信息;
所述第四生成单元,还用于根据所述第二数据转移信息、所述第一用户信息、所述共享平台的信息、所述目标多媒体数据以及所述智能合约生成第二区块;
第二确定单元,用于若所述第二区块在所述区块链中上链成功,则确定所述第一用户信息具备针对所述第二资源数据的使用权限。
本申请实施例一方面提供了一种计算机设备,包括:处理器和存储器;
所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所诉处理器执行如本申请实施例中的方法。
本申请实施例一方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,执行如本申请实施例中的方法。
本申请实施例通过获取第一用户设备发送的目标多媒体数据,将该目标多媒体数据上链至区块链中;该第一用户设备对应第一用户信息;获取第二用户设备发送的数据阅读请求;该数据阅读请求用于请求阅读所述第一用户设备所提供的该目标多媒体数据;该第二用户设备对应第二用户信息;基于该数据阅读请求,触发智能合约,根据该智能合约确定用于阅读该目标多媒体数据所需的消耗资源;根据该消耗资源获取属于该第二用户信息的第一资源数据,根据该第一资源数据生成该第二用户信息针对该第一用户信息的第一数据转移信息;根据该第一数据转移信息、该第一用户信息、该第二用户信息、该目标多媒体数据以及该智能合约生成第一区块;若该第一区块在该区块链中上链成功,则确定该第一用户信息具备针对该第一资源数据的使用权限,向该第二用户分配针对该目标多媒体数据的阅读权限。上述可知,通过获取用户的资源数据,基于该资源数据生成区块并上链,可以实现对该资源数据进行自动转移,用户若想拥有阅读多媒体数据的权限,无需输入该资源数据的转移密码,只需发送数据阅读请求,即可阅读该多媒体数据,可以提高资源数据转移的自动性,进而提高数据查看的效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种网络架构图;
图2a是本申请实施例提供的一种数据共享方法的场景示意图;
图2b是本申请实施例提供的另一种数据共享方法的场景示意图;
图3是本申请实施例提供的一种基于区块链的数据共享方法的流程示意图;
图4是本申请实施例提供的一种生成数据转移信息的流程示意图;
图5是本申请实施例提供的另一种生成数据转移信息的流程示意图;
图6是本申请实施例提供的一种场景示意图;
图7a是本申请实施例提供的另一种场景示意图;
图7b是本申请实施例提供的另一种场景示意图;
图8是本申请实施例提供的一种基于区块链的数据共享装置的结构示意图;
图9是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1是本申请实施例提供的一种网络架构图。如图1所示,该网络架构可以包括区块链节点和用户终端集群,所述用户终端集群可以包括多个用户终端,如图1所示,具体可以包括用户终端100a、用户终端100b、用户终端100c、…、用户终端100n。
如图1所示,用户终端100a、用户终端100b、用户终端100c、…、用户终端100n可以分别与所述区块链节点进行网络连接,以便于每个用户终端可以通过该网络连接与区块链节点进行数据交互。
如图1所示,该用户终端集群中的每个用户终端均可以集成安装有目标应用,当该目标应用运行于各用户终端中时,可以分别与上述图1所示的区块链节点之间进行数据交互。其中,该目标应用可以包括具有显示文字、图像、音频以及视频等数据信息功能的应用。
本申请实施例可以在图1所示的多个用户终端中选择一个用户终端作为目标用户终端,该目标用户终端可以包括:智能手机、平板电脑、桌上型电脑等携带显示和播放数据信息功能的智能终端。例如,本申请实施例可以将图1所示的用户终端100a作为该目标用户终端,该目标用户终端中可以集成有上述目标应用,此时,该目标用户终端可以通过该目标应用对应的业务数据平台与区块链节点之间实现数据交互。
请一并参见图2a,是本申请实施例提供的一种数据共享方法的场景示意图。在图2a中,用户终端100a可以为第一用户设备,第一用户在用户终端100a中访问目标应用后,可以在该目标应用中输入并上传该第一用户想要分享的数据(如,下象棋的方法、三文鱼的烘烤制作方法等),这里第一用户分享的数据即目标多媒体数据,该用户终端100a可以将该目标多媒体数据发送至区块链节点,区块链节点再将该多媒体数据添加至区块链100中的区块1001上,完成对该多媒体数据的上链过程,也就是说,上链后,该多媒体数据被保存在该区块链100中。
请一并参见图2b,是本申请实施例提供的另一种数据共享方法的场景示意图。在图2b中,用户终端100b可以为第二用户设备,第二用户在用户终端100b中访问目标应用后,可以在该目标应用中请求阅读所有的多媒体数据,如,该第二用户可以请求阅读图2a中第一用户上传的该多媒体数据,用户终端100b将该阅读请求发送至区块链节点,区块链节点获取到该阅读请求后,可以从区块链100中获取到区块1001,在区块1001上可以获取到该多媒体数据,基于该多媒体数据,区块链节点可以确定阅读该多媒体数据所需要的消耗资源,这里的消耗资源可以指资金或积分或优惠券或电子币等,后续,区块链节点可以从该用户终端100b中,获取到该第二用户的资源数据(也就是阅读该多媒体数据所需要的消耗资源),如,阅读该多媒体数据需要花费5个阅读币,则区块链节点可以从用户终端100b中,获取该第二用户的5个阅读币;根据该资源数据,区块链节点可以生成数据转移信息,该数据转移信息用于表征该第二用户向第一用户转移该资源数据,区块链节点基于该数据转移信息、该第一用户的信息、该第二用户的信息、该多媒体数据以及区块链的智能合约,生成区块1002,若该区块1002上链至区块链100成功,则表明该第二用户的资源数据已成功转移至该第一用户,该第一用户已拥有该资源数据的使用权限,则区块链节点可以向该第二用户分配对于该多媒体数据的阅读权限,该第二用户可以阅读该多媒体数据。
请参见图3,是本申请实施例提供的一种基于区块链的数据共享方法的流程示意图。如图3所示,该数据共享方法可以包括:
步骤S101,获取第一用户设备发送的目标多媒体数据,将所述目标多媒体数据上链至区块链中;所述第一用户设备对应第一用户信息。
本申请中,该目标多媒体数据可以包括图片、文档、文字、音频以及视频等内容,该目标多媒体数据可以为第一用户基于第一用户设备所分享的经验知识,可以由第一用户在第一用户设备中的目标应用(如,共享平台A)中输入填写,如,第一用户在第一用户设备的目标应用中分享了“如何使用JS取出最后三个字符”的经验,该经验即为该目标多媒体数据。
该第一用户设备可以将该目标多媒体数据发送至区块链节点,区块链节点可以根据该目标多媒体数据与该第一用户的信息,生成待添加至区块链的目标区块,该区块链节点将该目标区块广播至该区块链上的其他所有区块链共识节点,在确定所有区块链共识节点达成共识时,该区块链节点将该目标区块添加至该区块链中。
其中,区块链节点根据该目标多媒体数据与该第一用户的信息,生成待添加至区块链的目标区块的过程可以为区块链节点从该区块链上获取到具有最大生成时间戳的区块(也就是区块链上最新生成的区块)作为父区块,并获取到该父区块的哈希值,区块链节点对该目标多媒体数据进行哈希计算,可以得到该目标区块的哈希值,区块链节点根据该多媒体数据和该第一用户信息,可以构建默克尔树,根据该父区块哈希值、该默克尔树、该目标区块的哈希值、该目标多媒体数据以及该第一用户信息,可以生成该目标区块。
步骤S102,获取第二用户设备发送的数据阅读请求;所述数据阅读请求用于请求阅读所述第一用户设备所提供的所述目标多媒体数据;所述第二用户设备对应第二用户信息。
本申请中,第二用户可以在第二用户设备的目标应用中选择想要阅读的多媒体数据,该第二用户设备可以将该第二用户的阅读请求发送至区块链节点。
步骤S103,基于所述数据阅读请求,触发智能合约,根据所述智能合约确定用于阅读所述目标多媒体数据所需的消耗资源。
本申请中,该消耗资源可以为资金或积分或电子币或优惠券等,该消耗资源由该多媒体数据的数据类型所决定,如,数据类型为生活常识类型的多媒体数据的消耗资源比数据类型为人工智能类型的多媒体数据的消耗资源低,因为生活常识类型相比于人工智能类型,生活常识类型的数据类型等级较低。
步骤S104,根据所述消耗资源获取属于所述第二用户信息的第一资源数据,根据所述第一资源数据生成所述第二用户信息针对所述第一用户信息的第一数据转移信息。
本申请中,这里的第一资源数据对应于第二用户所请求阅读的目标多媒体数据的消耗资源,该资源数据可以为资金或积分或电子币或优惠券等,区块链节点可以根据该目标多媒体数据的消耗资源从该第二用户设备中获取到第二用户的第一资源数据。如,第二用户请求阅读的目标多媒体数据所需要的消耗资源为2元,则区块链节点可以从该第二用户设备中的该第二用户的账户中获取到2元,2元即是该第二用户的第一资源数据。后续,区块链节点根据该第一资源数据生成该第二用户信息针对该第一用户信息的数据转移信息,该数据转移信息用于表征获取到了该第二用户的第一资源数据,并将该第一资源数据转移至发送该目标多媒体数据的第一用户。其中,有关于生成第一数据转移信息的具体实施方式,可以参见后续图4或图5所对应实施例中的描述。
步骤S105,根据所述第一数据转移信息、所述第一用户信息、所述第二用户信息、所述目标多媒体数据以及所述智能合约生成第一区块。
步骤S106,若所述第一区块在所述区块链中上链成功,则确定所述第一用户信息具备针对所述第一资源数据的使用权限,向所述第二用户信息分配针对所述目标多媒体数据的阅读权限。
本申请中,区块链节点可以将该第一区块进行上链,若该第一区块上链成功,则可以确定第二用户的第一资源数据已成功转移至第一用户,则区块链节点可以确定该第一用户已拥有了针对该第一资源数据的使用权限,则区块链节点可以分配该第二用户的阅读权限,以使该第二用户可以阅读该目标多媒体数据。
其中,这里的确定所述第一用户信息具备针对所述第一资源数据的使用权限,可以包括确定该共享平台具备了分配资源数据的使用权限与确定该第一用户具备了分配资源数据的使用权限,也就是说,该第一资源数据是该第一用户分配资源数据与平台分配资源数据的总和,区块链节点可以按分配比例来对该第一资源数据进行分配,以使该共享平台与第一用户拥有该第一资源数据的部分资源数据。可以理解的是,区块链节点获取到该第一资源数据(10元),可以将该第一资源数据的部分资源数据(3元)分配至共享平台,以使该共享平台拥有该部分资源数据的权限,区块链节点可以将该第一资源数据的剩余部分资源数据(7元)分配至第一用户,以使该第一用户拥有该剩余部分资源数据的权限,这里共享平台与第一用户的分配比例即为3:7。其中,共享平台与第一用户的资源数据分配比例,可以为0:1,也可以为2:8,对于共享平台与第一用户的资源数据分配比例,本申请不做限制。
本申请实施例通过获取第一用户设备发送的目标多媒体数据,将该目标多媒体数据上链至区块链中;该第一用户设备对应第一用户信息;获取第二用户设备发送的数据阅读请求;该数据阅读请求用于请求阅读所述第一用户设备所提供的该目标多媒体数据;该第二用户设备对应第二用户信息;基于该数据阅读请求,触发智能合约,根据该智能合约确定用于阅读该目标多媒体数据所需的消耗资源;根据该消耗资源获取属于该第二用户信息的第一资源数据,根据该第一资源数据生成该第二用户信息针对该第一用户信息的第一数据转移信息;根据该第一数据转移信息、该第一用户信息、该第二用户信息、该目标多媒体数据以及该智能合约生成第一区块;若该第一区块在该区块链中上链成功,则确定该第一用户信息具备针对该第一资源数据的使用权限,向该第二用户分配针对该目标多媒体数据的阅读权限。上述可知,通过获取用户的资源数据,基于该资源数据生成区块并上链,可以实现对该资源数据进行自动转移,用户若想拥有阅读多媒体数据的权限,无需输入该资源数据的转移密码,只需发送数据阅读请求,即可阅读该多媒体数据,可以提高资源数据转移的自动性,进而提高数据查看的效率。
进一步地,请参加图4,是本申请实施例提供的一种生成数据转移信息的流程示意图。如图4所示,该流程可以包括:
步骤S201,根据所述消耗资源获取属于所述第二用户信息的第一资源数据,根据所述第一资源数据、转移对象的公钥以及所述第一资源数据的来源账户地址以及所述转移对象的账户地址,生成交易数据。
本申请中,该第一资源数据的来源账户地址可以为来源用户的账户地址,该来源用户可以为向该第二用户转移过历史资源数据的用户。如,用户A为该第二用户,该第一资源数据为10元,区块链节点从用户A的账户中获取到10元,该10元是由用户Q转给用户A的,则用户Q即为来源用户,用户Q的账户即为该来源账户地址。该转移对象可以包括共享平台与第一用户,该共享平台为该第一用户与该第二用户分享或阅读多媒体数据的平台,该转移对象的账户地址可以包括共享平台的账户地址以及该第一用户的账户地址。区块链节点可以根据转移对象的公钥,对该第一资源数据进行加密生成密文,则该转移对象在收到该加密后的第一资源数据时,需通过转移对象的私钥对该密文进行解密验证,解密成功后,才可使用该第一资源数据。区块链节点可以将该密文与第一资源数据的来源账户地址以及转移对象的账户地址,生成交易数据。
步骤S202,根据所述第二用户信息的私钥对所述交易数据进行签名,得到用户签名。
本申请中,区块链节点具有该第二用户的公钥与私钥,对上述交易数据该区块链节点可以使用该私钥对该交易数据签名,得到用户签名信息。
步骤S203,将所述交易数据和所述用户签名封装为所述第一数据转移信息。
本申请中,区块链节点可以将该交易数据与用户签名信息进行封装,将封装后的结果确定为第一数据转移信息。
本申请实施例通过获取第一用户设备发送的目标多媒体数据,将该目标多媒体数据上链至区块链中;该第一用户设备对应第一用户信息;获取第二用户设备发送的数据阅读请求;该数据阅读请求用于请求阅读所述第一用户设备所提供的该目标多媒体数据;该第二用户设备对应第二用户信息;基于该数据阅读请求,触发智能合约,根据该智能合约确定用于阅读该目标多媒体数据所需的消耗资源;根据该消耗资源获取属于该第二用户信息的第一资源数据,根据该第一资源数据生成该第二用户信息针对该第一用户信息的第一数据转移信息;根据该第一数据转移信息、该第一用户信息、该第二用户信息、该目标多媒体数据以及该智能合约生成第一区块;若该第一区块在该区块链中上链成功,则确定该第一用户信息具备针对该第一资源数据的使用权限,向该第二用户分配针对该目标多媒体数据的阅读权限。上述可知,通过获取用户的资源数据,基于该资源数据生成区块并上链,可以实现对该资源数据进行自动转移,用户若想拥有阅读多媒体数据的权限,无需输入该资源数据的转移密码,只需发送数据阅读请求,即可阅读该多媒体数据,可以提高资源数据转移的自动性,进而提高数据查看的效率。
进一步地,请参见图5,是本申请实施例提供的另一种生成数据转移信息的流程示意图。如图5所示,该流程可以包括:
步骤S301,根据所述消耗资源获取属于所述第二用户信息的第一资源数据,根据所述第一资源数据、转移对象的公钥以及所述第一资源数据的来源账户地址以及所述转移对象的账户地址,生成交易数据。
步骤S301的具体实现方式可以参见上述图4所对应实施例中的步骤S201,在此不再进行赘述。
步骤S302,将所述交易数据发送至所述第二用户终端,以使所述第二用户终端基于私钥对所述交易数据进行签名,得到用户签名。
本申请中,区块链节点具有第二用户的公钥,但未具有该第二用户的私钥,需要第二用户终端使用私钥对该交易数据进行签名。区块链节点可以将该交易数据发送至该第二用户终端,以使该第二用户终端基于第二用户的私钥对该交易数据进行签名,得到用户签名信息。
步骤S303,获取所述第二用户终端发送的所述用户签名,基于所述第二用户信息的公钥对所述用户签名进行验证,并在验证通过时确定所述交易数据的合法性。
本申请中,该第二用户终端可以将该用户签名信息发送至区块链节点,区块链节点可以根据该第二用户的公钥对该用户签名信息进行验证,确定该交易数据的是否为合法数据。
步骤S304,在所述交易数据为合法数据时,将所述交易数据与所述用户签名封装为所述第一数据转移信息。
本申请中,若上述的验证通过,则将该交易数据确定为合法数据,则区块链节点可以将该合法的交易数据与该用户签名信息进行封装,将封装后的结果确定为该第一数据转移信息。
本申请实施例通过获取第一用户设备发送的目标多媒体数据,将该目标多媒体数据上链至区块链中;该第一用户设备对应第一用户信息;获取第二用户设备发送的数据阅读请求;该数据阅读请求用于请求阅读所述第一用户设备所提供的该目标多媒体数据;该第二用户设备对应第二用户信息;基于该数据阅读请求,触发智能合约,根据该智能合约确定用于阅读该目标多媒体数据所需的消耗资源;根据该消耗资源获取属于该第二用户信息的第一资源数据,根据该第一资源数据生成该第二用户信息针对该第一用户信息的第一数据转移信息;根据该第一数据转移信息、该第一用户信息、该第二用户信息、该目标多媒体数据以及该智能合约生成第一区块;若该第一区块在该区块链中上链成功,则确定该第一用户信息具备针对该第一资源数据的使用权限,向该第二用户分配针对该目标多媒体数据的阅读权限。上述可知,通过获取用户的资源数据,基于该资源数据生成区块并上链,可以实现对该资源数据进行自动转移,用户若想拥有阅读多媒体数据的权限,无需输入该资源数据的转移密码,只需发送数据阅读请求,即可阅读该多媒体数据,可以提高资源数据转移的自动性,进而提高数据查看的效率。
请参见图6,是本申请实施例提供的一种场景示意图。如图6所示,用户A可以为第一用户,用户A可以在用户终端的共享平台中输入想要分享的数据,如图,用户A在显示界面1000a中,可以查看到该共享平台中的数据分类,用户A可以选择任一类型进行查看,在显示界面1000a中,用户A也可以点击发表按钮M来发表数据,用户A点击发表按钮M后,界面由显示界面1000a跳转为显示界面1000b,用户A可以在显示界面中选择要发表数据的内容类型,选项包括文字、图片、视频,如图,用户A可以选择文字,则界面由显示1000b跳转为显示界面1000c,用户A可以在输入框内输入想要发表的内容。用户A在输入完成并选择发表后,该用户终端可以将用户A输入的数据发送至区块链节点,区块链节点可以将该数据上链至区块链中,以使该数据被保存至区块链中。其中,区块链节点将数据上链至区块链的具体实现方式可以参见上述图3所对应实施例中的步骤S101,在此不再进行赘述。
如图6所示,用户B可以为第二用户,用户B可以在显示界面2000中选择任一多媒体数据进行阅读,如图,用户B选择上述用户A发表的数据“青椒肉丝的做法”,界面由显示界面2000跳转到显示界面2000b,用户B可以在显示界面2000b中查看到该数据的部分内容,用户B可以通过点击继续阅读按钮来对该数据的剩余内容进行查看,用户B点击继续阅读按钮,该用户终端生成数据阅读请求,并将该数据阅读请求发送至区块链节点,区块链节点从该区块链中获取到该数据,并获取到阅读该数据所需要的消耗资源,并基于该消耗资源生成用户B针对用户A的数据转移信息,区块链节点根据该数据转移信息、用户A的信息、用户B的信息以及该数据,可以生成区块,若该区块链上链成功,则区块链节点可以向用户B分配该数据的阅读权限,用户B在获得该阅读权限后,可以在显示界面2000c中阅读到该数据的全部内容。其中,基于该消耗资源生成用户B针对用户A的数据转移信息的具体实施方式可以参见上述图4或图5所对应实施例中的描述,在此不再进行赘述;区块链节点向用户B分配阅读权限的具体实现方式可以参见上述图3所对应实施例中的步骤S105-步骤S106,在此不再进行赘述。
请参见图7a,是本申请实施例提供的另一种场景示意图。如图7a所示,用户C可以为第一用户,用户C可以通过用户设备将目标多媒体数据发送至区块链节点,区块链节点可以计算出该目标多媒体数据的哈希值,区块链节点可以查询区块链100中的所有区块的哈希值,若存在与该目标多媒体数据哈希值一致的哈希值,如区块1006的哈希值与该目标多媒体数据的哈希值一致,则区块链节点可以确定区块1006中的多媒体数据与该目标多媒体数据为同一数据,则区块链节点可以确定该用户C存在抄袭行为,可以向该用户C发送警示信息,以提醒该用户C严禁抄袭。
可选地,该区块链100中,未存在与该目标多媒体数据相同的哈希值,则该目标多媒体数据可以成功上链,由于区块链100中的区块均存在上链时间戳,则用户C可以通过该时间戳维护自己的合法权利。如,用户C发现有其他用户的数据与用户C的目标多媒体数据存在大量相似内容,即有其他用户抄袭用户C的数据并上传到共享平台中以获益,因为用户C的数据上链时间戳早于其他用户的数据上链时间戳,则可以确定用户C是该数据的原创者,则用户C可以采取向共享平台投诉的方式,来维护自己的权益。
进一步地,请参见图7b,是本申请实施例提供的另一种场景示意图。如图7b所示,用户C通过用户设备将目标多媒体数据发送至区块链节点,区块链节点在将该目标多媒体数据成功上链至区块链100中后,区块链节点可以调用智能合约,基于智能合约确定该目标多媒体数据对应的奖励资源,该奖励资源可以为资金或积分,区块链节点基于该奖励资源,可以从资源数据库中获取到属于该共享平台的第二资源数据,如,该目标多媒体数据的奖励资源为6积分,则区块链节点可以从资源数据库中获取6积分,该6积分即为该第二资源数据;区块链节点根据该第二资源数据,可以生成该共享平台针对该用户C的第二数据转移信息,该第二数据转移信息用于表征该共享平台向该用户C转移第二资源数据,后续,区块链节点可以根据该第二数据转移信息、该用户C的信息、该共享平台的信息以及该目标多媒体数据和智能合约,生成区块1009,区块链节点可以将该区块1009添加至区块链100中,若添加成功,则上链成功,则可以确定该用户C已收到该奖励资源,该用户C已具备该第二资源数据的使用权限。
进一步地,请参见图8,是本申请实施例提供的一种基于区块链的数据共享装置的结构示意图。如图8所示,该数据共享装置1可以包括:上链模块11、获取模块12、第一确定模块13、第一生成模块14、第二生成模块15、第二确定模块16以及分配模块17。
上链模块11,用于获取第一用户设备发送的目标多媒体数据,将所述目标多媒体数据上链至区块链中;所述第一用户设备对应第一用户信息;
获取模块12,用于获取第二用户设备发送的数据阅读请求;所述数据阅读请求用于请求阅读所述第一用户设备所提供的所述目标多媒体数据;所述第二用户设备对应第二用户信息;
第一确定模块13,用于基于所述数据阅读请求,触发智能合约,根据所述智能合约确定用于阅读所述目标多媒体数据所需的消耗资源;
第一生成模块14,用于根据所述消耗资源获取属于所述第二用户信息的第一资源数据,根据所述第一资源数据生成所述第二用户信息针对所述第一用户信息的第一数据转移信息;
第二生成模块15,用于根据所述第一数据转移信息、所述第一用户信息、所述第二用户信息、所述目标多媒体数据以及所述智能合约生成第一区块;
第二确定模块16,用于若所述第一区块在所述区块链中上链成功,则确定所述第一用户信息具备针对所述第一资源数据的使用权限;
分配模块17,用于向所述第二用户信息分配针对所述目标多媒体数据的阅读权限。
其中,上链模块11、获取模块12、第一确定模块13、第一生成模块14、第二生成模块15、第二确定模块16以及分配模块17的具体实现方式可以参见上述图3所对应实施例中的步骤S101-步骤S107,在此不再进行赘述。
请参见图8,上链模块11可以包括:获取单元111、第一生成单元112、广播单元113以及添加单元114。
获取单元111,用于获取所述第一用户设备发送的所述目标多媒体数据;
第一生成单元112,用于根据所述目标多媒体数据和所述第一用户信息,生成待添加至所述区块链的目标区块;
广播单元113,用于将所述目标区块广播至所述区块链上的所有区块链共识节点;
添加单元114,用于在确定所述区块链上的所述所有区块链共识节点之间达成共识时,将所述目标区块添加至所述区块链。
其中,获取单元111、第一生成单元112、广播单元113以及添加单元114的具体实现方式可以参见上述图4所对应实施例中的步骤S101,在此不再进行赘述。
请参见图8,第一生成单元112可以包括:获取子单元1121、计算子单元1122、构建子单元1123以及生成子单元1124。
获取子单元1121,用于从所述区块链上获取具有最大生成时间戳的区块作为父区块;
计算子单元1122,用于对所述目标多媒体数据进行哈希计算,得到所述目标区块的哈希值;
所述获取子单元1121,还用于获取所述父区块的父区块哈希值;
构建子单元1123,用于根据所述目标多媒体数据和所述第一用户信息,构建默克尔树;
生成子单元1124,用于基于所述父区块哈希值、所述默克尔树、所述目标区块的所述哈希值、所述目标多媒体数据以及所述第一用户信息,生成待添加至所述区块链的所述目标区块。
其中,获取子单元1121、计算子单元1122、构建子单元1123以及生成子单元1124的具体实现方式可以参见上述图3所对应实施例中的步骤S101,在此不再进行赘述。
请参见图8,第一生成模块14可以包括:第二生成单元141、第一签名单元142以及第一封装单元143。
第二生成单元141,用于根据所述消耗资源获取属于所述第二用户信息的第一资源数据,根据所述第一资源数据、转移对象的公钥以及所述第一资源数据的来源账户地址以及所述转移对象的账户地址,生成交易数据;
第一签名单元142,用于根据所述第二用户信息的私钥对所述交易数据进行签名,得到用户签名;
第一封装单元143,用于将所述交易数据和所述用户签名封装为所述第一数据转移信息。
其中,第二生成单元141、第一签名单元142以及第一封装单元143的具体实现方式可以参见上述图4所对应实施例中的步骤S201-步骤S203,在此不再进行赘述。
请参见图8,第一生成模块14可以包括:第三生成单元144、第二签名单元145、验证单元146以及第二封装单元147。
第三生成单元144,用于根据所述消耗资源获取属于所述第二用户信息的第一资源数据,根据所述第一资源数据、转移对象的公钥以及所述第一资源数据的来源账户地址以及所述转移对象的账户地址,生成交易数据;
第二签名单元145,用于将所述交易数据发送至所述第二用户终端,以使所述第二用户终端基于私钥对所述交易数据进行签名,得到用户签名;
验证单元146,用于获取所述第二用户终端发送的所述用户签名,基于所述第二用户信息的公钥对所述用户签名进行验证,并在验证通过时确定所述交易数据的合法性;
第二封装单元147,用于在所述交易数据为合法数据时,将所述交易数据与所述用户签名封装为所述第一数据转移信息。
其中,第三生成单元144、第二签名单元145、验证单元146以及第二封装单元147的具体实现方式可以参见上述图5所对应实施例中的步骤S301-步骤S304,在此不再进行赘述。
请参见图8,第二确定模块16可以包括:第一确定单元161。
第一确定单元161,用于确定所述第一用户信息具备针对用户分配资源数据的使用权限,确定所述共享平台具备针对平台分配资源数据的使用权限;所述第一资源数据为所述用户分配资源数据和所述平台分配资源数据的总和。
其中,第一确定单元161的具体实现方式可以参见上述图1所对应实施例中的步骤S106,在此不再进行赘述。
请参见图8,第二确定模块16可以包括第一确定单元161,还可以包括:调用单元162、第四生成单元163以及第二确定单元164。
调用单元162,用于若所述目标多媒体数据在所述区块链中上链成功,则调用所述智能合约,根据所述智能合约确定所述目标多媒体数据对应的奖励资源;
第四生成单元163,用于根据所述奖励资源获取属于所述共享平台的第二资源数据,根据所述第二资源数据生成所述共享平台针对所述第一用户信息的第二数据转移信息;
所述第四生成单元163,还用于根据所述第二数据转移信息、所述第一用户信息、所述共享平台的信息、所述目标多媒体数据以及所述智能合约生成第二区块;
第二确定单元164,用于若所述第二区块在所述区块链中上链成功,则确定所述第一用户信息具备针对所述第二资源数据的使用权限。
其中,调用单元162、第四生成单元163以及第二确定单元164的具体实现方式可以参见上述图7b所对应实施例中获取奖励资源到分配使用权限的过程的描述,在此不再进行赘述。
本申请实施例通过获取第一用户设备发送的目标多媒体数据,将该目标多媒体数据上链至区块链中;该第一用户设备对应第一用户信息;获取第二用户设备发送的数据阅读请求;该数据阅读请求用于请求阅读所述第一用户设备所提供的该目标多媒体数据;该第二用户设备对应第二用户信息;基于该数据阅读请求,触发智能合约,根据该智能合约确定用于阅读该目标多媒体数据所需的消耗资源;根据该消耗资源获取属于该第二用户信息的第一资源数据,根据该第一资源数据生成该第二用户信息针对该第一用户信息的第一数据转移信息;根据该第一数据转移信息、该第一用户信息、该第二用户信息、该目标多媒体数据以及该智能合约生成第一区块;若该第一区块在该区块链中上链成功,则确定该第一用户信息具备针对该第一资源数据的使用权限,向该第二用户分配针对该目标多媒体数据的阅读权限。上述可知,通过获取用户的资源数据,基于该资源数据生成区块并上链,可以实现对该资源数据进行自动转移,用户若想拥有阅读多媒体数据的权限,无需输入该资源数据的转移密码,只需发送数据阅读请求,即可阅读该多媒体数据,可以提高资源数据转移的自动性,进而提高数据查看的效率。
进一步地,请参见图9,是本申请实施例提供的一种计算机设备的结构示意图。如图9所示,上述图8所对应实施例中的装置1可以应用于所述计算机设备1000,所述计算机设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,所述计算机设备1000还包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图9所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在图9所示的计算机设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
获取第一用户设备发送的目标多媒体数据,将所述目标多媒体数据上链至区块链中;所述第一用户设备对应第一用户信息;
获取第二用户设备发送的数据阅读请求;所述数据阅读请求用于请求阅读所述第一用户设备所提供的所述目标多媒体数据;所述第二用户设备对应第二用户信息;
基于所述数据阅读请求,触发智能合约,根据所述智能合约确定用于阅读所述目标多媒体数据所需的消耗资源;
根据所述消耗资源获取属于所述第二用户信息的第一资源数据,根据所述第一资源数据生成所述第二用户信息针对所述第一用户信息的第一数据转移信息;
根据所述第一数据转移信息、所述第一用户信息、所述第二用户信息、所述目标多媒体数据以及所述智能合约生成第一区块;
若所述第一区块在所述区块链中上链成功,则确定所述第一用户信息具备针对所述第一资源数据的使用权限,向所述第二用户信息分配针对所述目标多媒体数据的阅读权限。
在一个实施例中,所述处理器1001在执行所述获取第一用户设备发送的目标多媒体数据,将所述目标多媒体数据上链至区块链中时,具体执行以下步骤:
获取所述第一用户设备发送的所述目标多媒体数据;
根据所述目标多媒体数据和所述第一用户信息,生成待添加至所述区块链的目标区块;
将所述目标区块广播至所述区块链上的所有区块链共识节点;
在确定所述区块链上的所述所有区块链共识节点之间达成共识时,将所述目标区块添加至所述区块链。
在一个实施例中,所述处理器1001在执行所述根据所述目标多媒体数据和所述第一用户信息,生成待添加至所述区块链的目标区块时,具体执行以下步骤:
从所述区块链上获取具有最大生成时间戳的区块作为父区块;
对所述目标多媒体数据进行哈希计算,得到所述目标区块的哈希值;
获取所述父区块的父区块哈希值;
根据所述目标多媒体数据和所述第一用户信息,构建默克尔树;
基于所述父区块哈希值、所述默克尔树、所述目标区块的所述哈希值、所述目标多媒体数据以及所述第一用户信息,生成待添加至所述区块链的所述目标区块。
在一个实施例中,所述处理器1001在执行所述根据所述消耗资源获取属于所述第二用户信息的第一资源数据,根据所述第一资源数据生成所述第二用户信息针对所述第一用户信息的第一数据转移信息时,具体执行以下步骤:
根据所述消耗资源获取属于所述第二用户信息的第一资源数据,根据所述第一资源数据、转移对象的公钥以及所述第一资源数据的来源账户地址以及所述转移对象的账户地址,生成交易数据;
根据所述第二用户信息的私钥对所述交易数据进行签名,得到用户签名;
将所述交易数据和所述用户签名封装为所述第一数据转移信息。
在一个实施例中,所述处理器1001在执行所述根据所述消耗资源获取所述第二用户信息对应的第一资源数据,根据所述第一资源数据生成所述第二用户信息针对所述第一用户信息的第一数据转移信息时,具体执行以下步骤:
根据所述消耗资源获取属于所述第二用户信息的第一资源数据,根据所述第一资源数据、转移对象的公钥以及所述第一资源数据的来源账户地址以及所述转移对象的账户地址,生成交易数据;
将所述交易数据发送至所述第二用户终端,以使所述第二用户终端基于私钥对所述交易数据进行签名,得到用户签名;
获取所述第二用户终端发送的所述用户签名,基于所述第二用户信息的公钥对所述用户签名进行验证,并在验证通过时确定所述交易数据的合法性;
在所述交易数据为合法数据时,将所述交易数据与所述用户签名封装为所述第一数据转移信息。
在一个实施例中,所述来源账户地址为来源用户的账户地址;所述来源用户是指向所述第二用户信息转移过历史资源数据的用户;所述转移对象的账户地址包括共享平台的账户地址以及所述第一用户信息的账户地址;
则所述处理器1001在执行所述确定所述第一用户信息具备针对所述第一资源数据的使用权限时,可以包括:
确定所述第一用户信息具备针对用户分配资源数据的使用权限,确定所述共享平台具备针对平台分配资源数据的使用权限;所述第一资源数据为所述用户分配资源数据和所述平台分配资源数据的总和。
在一个实施例中,所述处理器1001还执行以下步骤:
若所述目标多媒体数据在所述区块链中上链成功,则调用所述智能合约,根据所述智能合约确定所述目标多媒体数据对应的奖励资源;
根据所述奖励资源获取属于所述共享平台的第二资源数据,根据所述第二资源数据生成所述共享平台针对所述第一用户信息的第二数据转移信息;
根据所述第二数据转移信息、所述第一用户信息、所述共享平台的信息、所述目标多媒体数据以及所述智能合约生成第二区块;
若所述第二区块在所述区块链中上链成功,则确定所述第一用户信息具备针对所述第二资源数据的使用权限。
本申请实施例通过获取第一用户设备发送的目标多媒体数据,将该目标多媒体数据上链至区块链中;该第一用户设备对应第一用户信息;获取第二用户设备发送的数据阅读请求;该数据阅读请求用于请求阅读所述第一用户设备所提供的该目标多媒体数据;该第二用户设备对应第二用户信息;基于该数据阅读请求,触发智能合约,根据该智能合约确定用于阅读该目标多媒体数据所需的消耗资源;根据该消耗资源获取属于该第二用户信息的第一资源数据,根据该第一资源数据生成该第二用户信息针对该第一用户信息的第一数据转移信息;根据该第一数据转移信息、该第一用户信息、该第二用户信息、该目标多媒体数据以及该智能合约生成第一区块;若该第一区块在该区块链中上链成功,则确定该第一用户信息具备针对该第一资源数据的使用权限,向该第二用户分配针对该目标多媒体数据的阅读权限。上述可知,通过获取用户的资源数据,基于该资源数据生成区块并上链,可以实现对该资源数据进行自动转移,用户若想拥有阅读多媒体数据的权限,无需输入该资源数据的转移密码,只需发送数据阅读请求,即可阅读该多媒体数据,可以提高资源数据转移的自动性,进而提高数据查看的效率。
此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且所述计算机可读存储介质中存储有前文提及的数据处理的计算机设备1000所执行的计算机程序,且所述计算机程序包括程序指令,当所述处理器执行所述程序指令时,能够执行前文图3到图7所对应实施例中对所述数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (10)
1.一种基于区块链的数据共享方法,其特征在于,包括:
获取第一用户设备发送的目标多媒体数据,将所述目标多媒体数据上链至区块链中;所述第一用户设备对应第一用户信息;
获取第二用户设备发送的数据阅读请求;所述数据阅读请求用于请求阅读所述第一用户设备所提供的所述目标多媒体数据;所述第二用户设备对应第二用户信息;
基于所述数据阅读请求,触发智能合约,根据所述智能合约确定用于阅读所述目标多媒体数据所需的消耗资源;
根据所述消耗资源获取属于所述第二用户信息的第一资源数据,根据所述第一资源数据生成所述第二用户信息针对所述第一用户信息的第一数据转移信息;
根据所述第一数据转移信息、所述第一用户信息、所述第二用户信息、所述目标多媒体数据以及所述智能合约生成第一区块;
若所述第一区块在所述区块链中上链成功,则确定所述第一用户信息具备针对所述第一资源数据的使用权限,向所述第二用户信息分配针对所述目标多媒体数据的阅读权限。
2.根据权利要求1所述的方法,其特征在于,所述获取第一用户设备发送的目标多媒体数据,将所述目标多媒体数据上链至区块链中,包括:
获取所述第一用户设备发送的所述目标多媒体数据;
根据所述目标多媒体数据和所述第一用户信息,生成待添加至所述区块链的目标区块;
将所述目标区块广播至所述区块链上的所有区块链共识节点;
在确定所述区块链上的所述所有区块链共识节点之间达成共识时,将所述目标区块添加至所述区块链。
3.根据权利要求2所述的方法,其特征在于,所述根据所述目标多媒体数据和所述第一用户信息,生成待添加至所述区块链的目标区块,包括:
从所述区块链上获取具有最大生成时间戳的区块作为父区块;
对所述目标多媒体数据进行哈希计算,得到所述目标区块的哈希值;
获取所述父区块的父区块哈希值;
根据所述目标多媒体数据和所述第一用户信息,构建默克尔树;
基于所述父区块哈希值、所述默克尔树、所述目标区块的所述哈希值、所述目标多媒体数据以及所述第一用户信息,生成待添加至所述区块链的所述目标区块。
4.根据权利要求1所述的方法,其特征在于,所述根据所述消耗资源获取属于所述第二用户信息的第一资源数据,根据所述第一资源数据生成所述第二用户信息针对所述第一用户信息的第一数据转移信息,包括:
根据所述消耗资源获取属于所述第二用户信息的第一资源数据,根据所述第一资源数据、转移对象的公钥以及所述第一资源数据的来源账户地址以及所述转移对象的账户地址,生成交易数据;
根据所述第二用户信息的私钥对所述交易数据进行签名,得到用户签名;
将所述交易数据和所述用户签名封装为所述第一数据转移信息。
5.根据权利要求1所述的方法,其特征在于,所述根据所述消耗资源获取所述第二用户信息对应的第一资源数据,根据所述第一资源数据生成所述第二用户信息针对所述第一用户信息的第一数据转移信息,包括:
根据所述消耗资源获取属于所述第二用户信息的第一资源数据,根据所述第一资源数据、转移对象的公钥以及所述第一资源数据的来源账户地址以及所述转移对象的账户地址,生成交易数据;
将所述交易数据发送至所述第二用户终端,以使所述第二用户终端基于私钥对所述交易数据进行签名,得到用户签名;
获取所述第二用户终端发送的所述用户签名,基于所述第二用户信息的公钥对所述用户签名进行验证,并在验证通过时确定所述交易数据的合法性;
在所述交易数据为合法数据时,将所述交易数据与所述用户签名封装为所述第一数据转移信息。
6.根据权利要求4或5所述的方法,其特征在于,所述来源账户地址为来源用户的账户地址;所述来源用户是指向所述第二用户信息转移过历史资源数据的用户;所述转移对象的账户地址包括共享平台的账户地址以及所述第一用户信息的账户地址;
则所述确定所述第一用户信息具备针对所述第一资源数据的使用权限,包括:
确定所述第一用户信息具备针对用户分配资源数据的使用权限,确定所述共享平台具备针对平台分配资源数据的使用权限;所述第一资源数据为所述用户分配资源数据和所述平台分配资源数据的总和。
7.根据权利要求6所述的方法,其特征在于,还包括:
若所述目标多媒体数据在所述区块链中上链成功,则调用所述智能合约,根据所述智能合约确定所述目标多媒体数据对应的奖励资源;
根据所述奖励资源获取属于所述共享平台的第二资源数据,根据所述第二资源数据生成所述共享平台针对所述第一用户信息的第二数据转移信息;
根据所述第二数据转移信息、所述第一用户信息、所述共享平台的信息、所述目标多媒体数据以及所述智能合约生成第二区块;
若所述第二区块在所述区块链中上链成功,则确定所述第一用户信息具备针对所述第二资源数据的使用权限。
8.一种基于区块链的数据共享装置,其特征在于,包括:
上链模块,用于获取第一用户设备发送的目标多媒体数据,将所述目标多媒体数据上链至区块链中;所述第一用户设备对应第一用户信息;
获取模块,用于获取第二用户设备发送的数据阅读请求;所述数据阅读请求用于请求阅读所述第一用户设备所提供的所述目标多媒体数据;所述第二用户设备对应第二用户信息;
第一确定模块,用于基于所述数据阅读请求,触发智能合约,根据所述智能合约确定用于阅读所述目标多媒体数据所需的消耗资源;
第一生成模块,用于根据所述消耗资源获取属于所述第二用户信息的第一资源数据,根据所述第一资源数据生成所述第二用户信息针对所述第一用户信息的第一数据转移信息;
第二生成模块,用于根据所述第一数据转移信息、所述第一用户信息、所述第二用户信息、所述目标多媒体数据以及所述智能合约生成第一区块;
第二确定模块,用于若所述第一区块在所述区块链中上链成功,则确定所述第一用户信息具备针对所述第一资源数据的使用权限;
分配模块,用于向所述第二用户信息分配针对所述目标多媒体数据的阅读权限。
9.一种计算机设备,其特征在于,包括:处理器和存储器;
所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,执行如权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911115036.3A CN110909314A (zh) | 2019-11-14 | 2019-11-14 | 基于区块链的数据共享方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911115036.3A CN110909314A (zh) | 2019-11-14 | 2019-11-14 | 基于区块链的数据共享方法、装置、设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110909314A true CN110909314A (zh) | 2020-03-24 |
Family
ID=69816663
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911115036.3A Pending CN110909314A (zh) | 2019-11-14 | 2019-11-14 | 基于区块链的数据共享方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110909314A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112015828A (zh) * | 2020-08-12 | 2020-12-01 | 上海九吾尊易信息科技有限公司 | 基于区块链的数据内容处理方法及装置 |
CN112597321A (zh) * | 2021-03-05 | 2021-04-02 | 腾讯科技(深圳)有限公司 | 基于区块链的多媒体处理方法及相关设备 |
-
2019
- 2019-11-14 CN CN201911115036.3A patent/CN110909314A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112015828A (zh) * | 2020-08-12 | 2020-12-01 | 上海九吾尊易信息科技有限公司 | 基于区块链的数据内容处理方法及装置 |
CN112597321A (zh) * | 2021-03-05 | 2021-04-02 | 腾讯科技(深圳)有限公司 | 基于区块链的多媒体处理方法及相关设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Ferrer-Gomila et al. | A fair contract signing protocol with blockchain support | |
CN113095749A (zh) | 基于区块链的物流信息传输方法、系统和装置 | |
US9202230B2 (en) | Techniques for monetizing anonymized context | |
CN110489946B (zh) | 基于区块链的版权认证方法、装置、设备和存储介质 | |
CN110288328B (zh) | 虚拟物品发送方法、接收方法、装置、设备及存储介质 | |
WO2016184298A1 (zh) | 一种应用推广方法、服务器及终端、存储介质 | |
CN109831501B (zh) | 基于区块链的信息分发方法和系统 | |
CN109005220B (zh) | 物联网终端的业务实现方法及物联网接入网关 | |
CN111324663A (zh) | 基于区块链的数据处理方法、装置、设备及可读存储介质 | |
CN113011906B (zh) | 基于多媒体信息处理方法、装置、电子设备及存储介质 | |
CN110909314A (zh) | 基于区块链的数据共享方法、装置、设备及可读存储介质 | |
CN105989511A (zh) | 业务实现方法及装置 | |
CN110660466A (zh) | 结合区块链的物联网的个人健康数据上链方法及系统 | |
CN113742601A (zh) | 内容分享方法、装置、计算机设备和存储介质 | |
CN109345416B (zh) | 一种用于记录作品间的引用关系的方法与设备 | |
CN110955905A (zh) | 基于区块链的资产转移方法、装置、设备及可读存储介质 | |
JP7475492B2 (ja) | 機密情報を保護するためのマルチパーティ計算およびk-匿名性技法の使用 | |
CN109525550B (zh) | 一种数据报文的处理方法、装置以及系统 | |
CN113114678A (zh) | 一种业务执行方法及装置 | |
US20220114276A1 (en) | Controlling a data network with respect to a use of a distributed database | |
US10482397B2 (en) | Managing identifiers | |
CN111324271B (zh) | 一种多媒体信息处理方法、装置、电子设备及存储介质 | |
US20230388120A1 (en) | Client-Side Device Bloom Filter Mapping | |
CN114331778A (zh) | 基于区块链的情报协同token分配方法、计算设备 | |
CN111125734B (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 |