CN111698108B - 数据传递方法及装置 - Google Patents
数据传递方法及装置 Download PDFInfo
- Publication number
- CN111698108B CN111698108B CN201910189090.6A CN201910189090A CN111698108B CN 111698108 B CN111698108 B CN 111698108B CN 201910189090 A CN201910189090 A CN 201910189090A CN 111698108 B CN111698108 B CN 111698108B
- Authority
- CN
- China
- Prior art keywords
- data
- invitation
- target data
- server
- equipment
- 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
- 238000000034 method Methods 0.000 title claims abstract description 105
- 230000005540 biological transmission Effects 0.000 title claims abstract description 33
- 238000005516 engineering process Methods 0.000 claims abstract description 5
- 238000012795 verification Methods 0.000 claims description 52
- 238000013507 mapping Methods 0.000 claims description 48
- 238000012546 transfer Methods 0.000 claims description 47
- 230000008569 process Effects 0.000 description 20
- 238000010586 diagram Methods 0.000 description 11
- 238000004364 calculation method Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 238000009434 installation Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/126—Applying verification of the received information the source of the received data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
-
- 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/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种数据传递方法,包括:接收局域网内的中心设备广播的针对目标数据的数据邀请;采用区块链技术来验证数据邀请的合法性;在确定数据邀请合法后,从中心设备处获取目标数据。本发明一并公开了相应的装置。
Description
技术领域
本发明涉及网络通信技术领域,尤其涉及一种数据传递方法及装置。
背景技术
物联网设备日益普及,由此带来的数据传递的效率问题日益引起人们的重视。例如,一个固件在一千万台设备中完成了部署,如果要对固件进行升级,那么每一台设备都需要从服务端下载固件升级包并在本地完成安装。若固件升级包的大小为10MB,那么一千万台设备的固件升级需要在网络中传输100TB(10MB*10^7)的数据量。随着物联网设备的进一步普及,数据传递尤其是固件升级场景下的固件升级包的传递会给网络以及服务端带来越来越大的压力。
因此,需要提供一种高效的数据传递方法。
发明内容
为此,本发明提供一种数据传递方法及装置,以力图解决或至少缓解上面存在的问题。
根据本发明的第一个方面,提供一种数据传递方法,包括:接收局域网内的中心设备广播的针对目标数据的数据邀请;采用区块链技术来验证所述数据邀请的合法性;在确定所述数据邀请合法后,从所述中心设备处获取所述目标数据。
根据本发明的第二个方面,提供一种数据传递方法,包括:向局域网内的设备广播针对目标数据的数据邀请;接收所述设备发送的针对所述目标数据的数据获取请求;基于所述数据获取请求,向所述设备发送所述目标数据。
根据本发明的第三个方面,提供一种数据传递方法,在区块链系统的记账节点中执行,包括:接收设备发送的数据邀请验证请求,所述验证请求包括待验证的数据邀请的校验信息,所述数据邀请为所述设备从局域网内的中心设备处接收;根据所述校验信息来验证所述数据邀请的合法性;以及将验证结果返回给所述设备,以便所述设备在确定所述数据邀请合法后,从所述中心设备处获取目标数据。
根据本发明的第四个方面,提供一种计算设备,包括:至少一个处理器;和存储有程序指令的存储器,当所述程序指令被所述处理器读取并执行时,使得所述计算设备执行如上任一项所述的数据传递方法。
根据本发明的第五个方面,提供一种数据传递系统,包括:请求设备、中心设备和服务端,其中,所述请求设备和所述中心设备位于同一个局域网;所述请求设备、中心设备、服务端分别适于执行如上所述的第一种、第二种、第三种数据传递方法。
根据本发明的数据传递方案,将局域网内已获取到目标数据的一部分设备设置为中心设备,中心设备可以向局域网内的其他设备广播针对目标数据的数据邀请,其他设备可以从中心设备处获取目标数据。相较于从服务端获取数据的现有方案,本发明的数据传递方案显著缓解了数据传递给公网带来的带宽压力。
本发明的数据传递方案具有弹性升级能力,可以根据局域网内的设备的数量、目标数据传递的时限要求等因素,来确定该局域网内的中心设备的数量,从而保证局域网内的设备获取目标数据的速度和稳定性。
根据本发明的数据传递方案,请求设备在接收到中心设备广播的数据邀请后,需要请求服务端来验证数据邀请的合法性。只有当服务端确定数据邀请合法后,请求设备才可以向中心设备请求目标数据。在本发明的数据传递方案中,请求设备在向中心设备请求目标数据之前,需要得到服务端的认证和许可,从而保证了数据传递过程的安全性,增强了服务端对设备的管控。
根据本发明的技术方案,采用区块链技术来验证数据邀请的合法性,以实现请求设备与中心设备之间的鉴权,增强请求设备与中心设备之间的信任程度。
进一步地,本发明的数据传递方案通过为局域网内的数据传递设置比公网数据传递更低的数据对价,来鼓励请求设备接收局域网内的数据邀请,从而缓解公网的带宽压力。通过设置数据补贴,数据补贴的额度随数据发布时间递减,以鼓励设备在获取到目标数据后第一时间邀请其他设备获取目标数据。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
图1示出了根据本发明一个实施例的数据传递系统100的示意图;
图2示出了根据本发明一个实施例的数据传递过程的示意图;
图3A~3D示出了根据本发明四个实施例的设备从服务端处获取数据的过程的示意图;
图4示出了根据本发明一个实施例的基于多条数据获取记录所构造的默克尔树的示意图;
图5示出了根据本发明一个实施例的数据传递方法500(中心设备侧)的流程图;
图6示出了根据本发明一个实施例的数据传递方法600(请求设备侧)的流程图;
图7示出了根据本发明一个实施例的数据传递方法700(服务端侧)的流程图;以及
图8示出了根据本发明一个实施例的计算设备800的示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据办发明一个实施例的数据传递系统100的示意图。如图1所示,系统100包括服务端和位于多个局域网内的设备。应当指出,虽然图1所示的系统100仅包括两个局域网,两个局域网内分别包括4个、8个设备,但是,本领域技术人员可以理解,在实践中,系统100可以包括任意数量的局域网,每个局域网内可以部署任意数量的设备,本发明对系统100所包括的局域网的数量、以及每个局域网内所部署的设备的数量均不做限制。
局域网(Local Area Network,LAN)是在一个局部的地理范围内(例如家庭、学校、办公室、写字楼、商场等),将设备互相联接起来所组成的通信网,局域网内的设备可以共享诸如打印机和存储设备之类的计算资源。
局域网内的设备(设备1~12)例如可以是桌面电脑、笔记本电脑等个人配置的计算机,也可以是手机、平板电脑、智能可穿戴设备等智能移动终端,还可以是还可以是智能窗帘、智能门禁、智能家电等物联网(Internet of Things,IoT)设备等,本发明对局域网所包括的设备的种类及型号不做限制。
由于局域网覆盖的地理范围较小,局域网内设备通信延迟时间短,且传输速率通常比广域网(Wide Area Network,WAN)快得多。例如,局域网内的数据传输速率可以达到10Mb/s~10Gb/s,而广域网的主干线速率国内仅为64kb/s或2.048Mb/s。
实践中,用户可以根据需要来设置局域网。例如,在某个办公楼内配置一个路由器,从而在该办公楼的区域范围内创建了一个局域网。连接至该路由器的设备即为该局域网内的设备。该路由器具有一个全球唯一的公网IP,局域网内的每个设备均具有一个在该局域网范围内唯一的私网IP。局域网内的设备之间可以通过私网IP进行通信;局域网内的设备可以通过路由器与局域网外的设备进行通信,局域网内的设备在与外部设备进行通信时,该设备的私网IP对外部设备不可见,而是以路由器的公网IP来与外部设备通信。
图1中的服务端用于向设备提供数据服务,例如,数据服务包括向设备推送消息、向设备提供固件安装包或应用软件安装包的下载服务、向设备提供图像视频资源等,但不限于此。本发明对服务端的具体配置情况不做限制,例如,服务端具体可以配置为一台或多台物理服务器,或者一个或多个部署于物理服务器中的计算实例,等。
为了避免服务端分别单独向各个设备传递数据所带来的网络压力,本发明提供一种更加高效的数据传递方案。为了更清楚地描述本发明的技术方案,在本说明书中,将局域网内的设备区分为中心设备和请求设备。中心设备为已经接收到数据,并且在局域网中发送广播邀请其他设备来己处获取数据的设备。请求设备为局域网中尚未接收到数据的设备。
需要说明的是,局域网中可能存在既不是中心设备,也不是请求设备的设备。例如,一个请求设备从中心设备处获取到数据后,没有在局域网中广播数据邀请,那么该设备此时既不是中心设备,也不是请求设备。为了方便叙述,本说明书中将这种设备记为静默设备。需要说明的是,本发明的数据传递方法主要涉及中心设备与请求设备之间的数据传递过程,与静默设备关系不大。因此,本说明书仅从中心设备和请求设备的角度来描述本发明的数据传递方法,不再对静默设备做过多描述。
在本发明的实施例中,服务端首先向少量设备传递数据,接收到数据的设备将作为内各自所属的局域网的中心设备。中心设备以接收到的数据为目标数据,在其所属的局域网内广播针对目标数据的数据邀请。局域网内的其他设备(请求设备)接收到数据邀请后,验证数据邀请的合法性(例如请求服务端来验证数据邀请的合法性)。在确定数据邀请合法后,从中心设备处获取目标数据。这样,请求设备可以从局域网的中心设备处获取目标数据,从而大大缓解了数据传递给公网带来的带宽压力。
进一步地,可以根据局域网内的设备的数量、目标数据传递的时限要求等因素,来弹性调整局域网内中心设备的数量。当局域网内的设备较多、目标数据传递的时限要求较紧时,请求设备在从中心设备处获取到目标数据后,可以将该请求设备也设置为中心设备,与原有的中心设备一起在局域网内广播数据邀请,向局域网内的其他设备提供目标数据传递服务。
例如,如图1所示,服务端向局域网1中的设备1、以及局域网2中的设备5传递数据。设备1、设备5在接收到数据后,将作为各自所属局域网的中心设备,即,设备1作为局域网1的中心设备,设备5作为局域网2的中心设备。
随后,设备1以刚接收到的数据作为目标数据,在局域网1内广播针对该目标数据的数据邀请,以邀请其他设备(设备2~4)从设备1处获取目标数据。尚未获取到目标数据的设备2~4均为请求设备。设备2在接收到设备1广播的数据邀请后,请求服务端验证数据邀请的合法性。在确认数据邀请合法后,设备2向设备1发送数据获取请求,从设备1处获取目标数据。设备3、设备4获取目标数据的过程与设备2类似,此处不再赘述。
设备5以从服务端接收到的数据作为目标数据,在局域网2内广播针对该目标数据的数据邀请,以邀请其他设备(设备6~12)从设备5处获取目标数据。由于局域网2中的设备数量较多,因此,在设备6接受设备5的数据邀请,验证数据邀请合法并从设备5处获取到目标数据后,可以将设备6也设置为中心设备,与设备5一同在局域网2内广播针对目标数据的数据邀请。局域网2中尚未获取到目标数据的设备7~12均为请求设备,每一个请求设备都可以接收到中心设备5和中心设备6广播的数据邀请。设备7~12例如可以按照收到广播的时间先后来决定从哪个中心设备处获取目标数据。例如,设备7先接收到设备6的广播,因此,设备7将从设备6处获取目标数据;设备9先接收到设备5的广播,因此,设备9将从设备5处获取目标数据,…。最终的目标数据传递结果可以是,设备7、8从设备6处获取目标数据,设备9~12从设备5处获取目标数据。
在本发明的实施例中,系统100可以采用区块链技术,实现为区块链系统。现有的区块链系统按照开放程度可以划分公有链、联盟链和私有链,这三种类型的区块链系统开放程度依次减小、吞吐量依次增大。在本发明的实施例中,考虑到设备的数量较多,即同一时刻需要获取数据的设备较多;设备需要在服务端上完成注册才可以接受服务端提供的数据服务;中心设备发出的数据邀请的合法性由服务端来验证等因素,系统100优选地实现为联盟链。
区块链系统中的节点可以划分为记账节点和非记账节点。记账节点参与共识,负责验证区块链中的交易并保存交易记录;非记账节点不参与共识,仅享受区块链系统带来的服务。对应于本发明的数据传递系统100,服务端为区块链系统中的记账节点,负责验证中心设备发出的数据邀请的合法性,并保存各设备的数据获取记录;设备为区块链系统中的非记账节点,可以从服务端或中心设备处获取数据。
图2示出了根据本发明一个实施例的数据传递过程的示意图。图2中,设备1和设备2位于同一个局域网内。
在步骤S201中,设备1从服务端处获取数据。这里的“数据”可以是待服务端下发的任意数据,本发明对数据的种类、格式、大小等均不做限制。例如,数据可以是纯文本格式(txt等)的待推送的消息,压缩文件格式(zip、rar等)的固件安装包、应用软件安装包,jpg、png等格式的图像,avi、mpeg等格式的视频等,但不限于此。
需要说明的是,设备1从服务端处获取数据的方式有多种,本发明对设备1从服务端处获取数据的具体方式不做限制。图3A~3D示例性的示出了四种从服务端获取数据的方式。
在图3A中,数据为待服务端推送的消息。当服务端产生需要推送的消息时,服务端执行步骤S201a,将该消息推送至设备1。图3所示的数据传递过程由服务端主动发起,设备1无需向服务端发出请求。
在图3B中,数据为待服务端下发的消息。设备1定期或基于用户发出的指令,执行步骤S2011b,向服务端请求新消息。服务端基于设备1发来的请求,执行步骤S201b,将设备1的上次请求到本次请求的时间段内产生的消息作为新消息,发送至设备1。
在图3C中,数据为固件升级包。当设备1上线(例如连网或登录)后,执行步骤S2011c,向服务端发送自身的固件版本号。服务端接收设备1上报的固件版本号后,执行步骤S2012c,检查该版本号是否为最新版本号。若不是,则执行步骤S2013c,通知设备1发现新版本,并询问设备1是否升级固件。若设备1选择升级,则执行步骤S2014c,向服务端发送固件升级请求。服务端收到固件升级请求后,执行步骤S201c,向设备1发送固件升级包。
在图3D中,数据为固件升级包。设备1定期或基于用户发出的指令,执行步骤S2011d,向服务端请求固件的最新版本号。随后,在步骤S2012d中,服务端将最新版本号发送至设备1。随后,在步骤S2013d中,设备1判断自身的固件版本号与接收到的最新版本号是否相同,若不相同,则执行步骤S2014d,向服务端发送固件升级请求。服务端收到固件升级请求后,执行步骤S201d,向设备1发送固件升级包。
需要说明的是,图3A~3D示出了设备1从服务端获取数据的四种方式,但本领域技术人员可以理解,设备1从服务端获取数据的方式不限于此四种,且不论具体采用何种方式,总是呈现出步骤S201(S201a~S201d)的结果,即,设备1从服务端获取了数据。
在步骤S202中,服务端存储设备1的数据获取记录。
步骤S202中存储设备1的数据获取记录,可以便于在后续步骤S205中,服务端根据已存储的数据获取记录来验证设备1所发出的数据邀请的合法性。需要说明的是,步骤S202是一个可选的步骤。当本发明的数据传递系统实现为区块链系统时,服务端为区块链系统中的记账节点,设备为区块链系统中的非记账节点,这种情况下,服务端处需要存储各设备的交易记录,即,服务端需要执行步骤S202,存储设备1的数据获取记录。当然,在其他实施例中,也可以不执行步骤S202,相应地,在后续步骤S205中,服务端需要采用其他方法(例如下文所描述的通过比对映射值的方法)来验证验证设备1所发出的数据邀请的合法性,而无法根据数据获取记录来验证数据邀请的合法性了。
另外,需要说明的是,虽然在图2所示的实施例中,步骤S201、S202依次执行,但是,步骤S201、S202之间没有严格的执行顺序。在其他的实施例中,也可先执行步骤S202,再执行步骤S201;或并行执行步骤S201与S202。本发明对步骤S201、S202的执行顺序不做限制。
数据获取记录例如可以包括设备1的标识、数据版本号、数据获取时间、数据内容的映射值等,但不限于此。设备1的标识即为标识设备1的唯一字符串;数据版本号用于表示数据的新旧程度,例如,固件或应用软件型数据通常用版本号来表示安装包的发布时间先后;数据获取时间为服务端向设备1发送数据的时间(在一些实施例中,也可以包括设备1向服务端发送数据请求的时间);数据内容的映射值为按照预设的映射算法来对数据内容进行映射所得到的值。映射算法例如可以是哈希算法(例如MD5、SHA256等)、Base64编码算法等,但不限于此。
根据一种实施例,服务端可以采用默克尔树(Merkle Tree)来存储数据获取记录。默克尔树是一种树形数据结构,其可以是二叉树,也可以是多叉树,本发明对默克尔树的分叉类型不做限制。
图4示出了基于多条数据获取记录所构造的默克尔树的示意图。图4所示的默克尔树为二叉树,在该树中,每条数据记录对应于默克尔树中的一个叶节点(Leaf)。多条数据获取记录Log1、Log2、Log3、Log4经过映射生成多个映射值Hash(Log1)、Hash(Log2)、Hash(Log3)、Hash(Log4),将这多个映射值分别作为对应的叶节点A、B、C、D的值,即,有
Value(A)=Hash(Log1)
Value(B)=Hash(Log2)
Value(C)=Hash(Log3)
Value(D)=Hash(Log4)。
对叶节点的值两两进行映射,以逐级生成各非叶节点的值,并最终得到默克尔树的根节点(Root)的值(根节点的值简称“根值”)。例如,节点E的值为对节点A和节点B的值进行映射所得到的值,节点F的值为对节点C和节点D的值进行映射所得到的值,根节点Root的值为对节点E和节点F的值进行映射所得到的值,即,有
Value(E)=Hash[Value(A)+Value(B)]
Value(F)=Hash[Value(C)+Value(D)]
Value(Root)=Hash[Value(E)+Value(F)]
需要说明的是,图4中的默克尔树采用哈希算法构建,但是,本领域技术人员可以理解,构建默克尔树所采用的映射算法可以是哈希算法,也可以是诸如Base64等任意映射算法。根据一种实施例,由于哈希算法是单向映射算法,无法从数据获取记录的哈希值反推出数据获取记录的原始数据内容,因此为保护数据获取记录的隐私性,图4所示的实施例优选地采用哈希算法来构建多条数据获取记录的默克尔树。
需要说明的是,尽管在图4所示的实施例中,一个叶节点对应于一条数据获取记录,但是,本发明并不限定一条数据获取记录所对应的叶节点的个数,一条数据获取记录可以对应于一个叶节点(通常是优选的实施例),也可以对应于多个叶节点。例如,一条数据获取记录包括设备1的标识、数据版本号、数据获取时间、数据内容的映射值,可以将设备1的标识和数据版本号对应生成一个叶节点的值,将数据获取时间和数据内容的映射值对应生成一个叶节点的值,即,该条数据获取记录对应于两个叶节点。
需要说明的是,默克尔树仅为服务端存储数据获取记录的一种方式,本领域技术人员可以理解,除了默克尔树之外,还可以采用其他数据结构来存储数据获取记录,本发明对数据获取记录的具体存储方式不做限制。
在步骤S201设备1从服务端处获取到数据之后,设备1将作为局域网中的中心设备,以获取到的数据为目标数据,执行步骤S203。
在步骤S203中,设备1在其所在的局域网内广播针对目标数据的数据邀请,以邀请局域网内尚未获取到目标数据的请求设备从设备1处获取目标数据。
针对目标数据的数据邀请包括设备1的地址(例如IP地址)、数据版本号和校验信息。校验信息用于对数据邀请的合法性进行校验。根据一种实施例,校验信息包括目标数据标识和目标数据的映射值。根据另一种实施例,校验信息包括目标数据获取记录。若服务端采用默克尔树存储数据获取记录,校验信息还包括目标数据获取记录所对应的目标叶节点标识,目标叶节点标识即为目标数据获取记录所对应的默克尔树的叶节点的标识。
设备2(请求设备)接收到中心设备广播的数据邀请后,执行步骤S204。
在步骤S204中,设备2将数据邀请的校验信息上传至服务端,以请求服务端验证该数据邀请的合法性。
在步骤S205中,服务端根据接收到的校验信息来验证数据邀请的合法性。
服务端验证数据邀请的合法性所采用的方法根据校验信息内容而有所不同。根据一种实施例,数据邀请的校验信息包括目标数据标识和目标数据的映射值。服务端在接收到校验信息后,首先根据目标数据标识来进行查找,以获取目标数据标识所对应的数据内容。随后,计算数据内容的映射值。若计算出的映射值与接收到的目标数据的映射值相同,则确定数据邀请合法,否则确定数据邀请不合法。
根据另一种实施例,数据邀请的校验信息包括目标数据获取记录。服务端在接收到校验信息后,判断目标数据获取记录是否存在于已存储的多条数据获取记录中,若是,则确定数据邀请合法,否则确定数据邀请不合法。
进一步地,若服务端采用默克尔树存储多条数据获取记录,则数据邀请的校验信息除了包括目标数据获取记录之外,还包括目标数据获取记录所对应的目标叶节点标识。服务端在接收到校验信息后,首先,计算目标数据获取记录的映射值。随后,根据目标叶节点标识和计算出的映射值来计算默克尔树的根植。若计算出的根植与默克尔树的根节点处存储的数值相同,则确定数据邀请合法,否则确定数据邀请不合法。
例如,参见图4,数据邀请的校验信息包括目标叶节点标识C和目标数据获取记录Log_obj。服务端计算目标数据获取记录的映射值,计算出的映射值为Hash(Log_obj)。随后,根据计算出的映射值Hash(Log_obj)和目标叶节点标识C来逐层计算出默克尔树的根节点的值,即根值。根值的计算方法有多种,本发明对根值的具体计算过程不做限制。以下列出根值的两种计算过程。
计算过程1:
获取节点D、E的值Value(D)和Value(E)。
将计算出的映射值Hash(Log_obj)作为目标叶节点C的值,记为Value(C’)=Hash(Log_obj)。需要说明的是,为了对合法性验证过程中产生的节点的计算值和节点原本存储的值进行区分,在本发明的实施例中,将某一节点X原本存储的值记为Value(X),将合法性验证过程中产生的节点X的计算值记为Value(X’),即,采用单引号来区分合法性验证过程中产生的计算值和节点原本存储的值。
随后,根据Value(C’)和节点D的值Value(D),计算出节点F的值,Value(F’)=Hash[Value(C’)+Value(D)]。
随后,根据Value(F’)和节点E的值Value(E),计算出根值Value(Root’),Value(Root’)=Hash[Value(E)+Value(F’)]。
计算过程2:
获取节点A、B、D的值Value(A)、Value(B)和Value(D)。
将计算出的映射值Hash(Log_obj)作为目标叶节点C的值,记为Value(C’)=Hash(Log_obj)。
根据Value(C’)和节点D的值Value(D),计算出节点F的值,Value(F’)=Hash[Value(C’)+Value(D)]。
根据节点A的值Value(A)和节点B的值Value(B),计算出节点E的值,Value(E’)=Hash[Value(A)+Value(B)]。
随后,根据Value(E’)和Value(F’),计算出根值Value(Root’),Value(Root’)=Hash[Value(E’)+Value(F’)]。
实践中,默克尔树所包括的节点通常很多,因此,在验证数据邀请的合法性的过程中,根值的计算过程通常有多种,本领域技术人员可以自行选定根值的计算路径,本发明对根值的具体计算过程不做限制。
在计算出根值Value(Root’)后,判断该值与默克尔树的根节点处存储的数值Value(Root)是否相同,若相同,则确定数据邀请合法,否则确定数据邀请不合法。
需要说明的是,在以上描述的实施例中,通过判断目标数据获取记录是否存在于已存储的多条数据获取记录中,来判断针对目标数据的数据邀请是否合法。在其他的实施例中,也可以不根据数据获取记录,而是根据其他类型的记录例如恶意攻击记录来判断数据邀请是否合法。若采用恶意攻击记录,则需要判断设备1的标识是否在已存储的恶意攻击记录之列,若存在,则确定数据邀请不合法;若不存在,则确定数据邀请合法。具体地,多条恶意攻击记录也可以采用默克尔树来存储,相应地,服务端也可以按照与上述实施例类似的方法,通过计算根值来判断设备1是否存在恶意攻击记录。本发明对此不再做过多阐述。
根据一种实施例,在确定所述数据邀请不合法后,将发出数据邀请的中心设备标识以及数据邀请所针对的目标数据标识发送至局域网内的其他设备,以告知其他设备发送数据邀请的该中心设备为恶意设备,该中心设备传递的目标数据为恶意数据,以便用户对局域网中的设备采取安全保护措施。例如,不再接受该中心设备发送的数据邀请,删除从中心设备处获取的目标数据,等。
在步骤S206中,服务端向设备2返回数据邀请的合法性验证结果。若数据邀请合法,则允许设备2从设备1处获取目标数据,设备2接下来执行步骤S207;若数据邀请不合法,则表明设备1具有恶意,此时不允许设备2从设备1处获取目标数据。
在步骤S207中,设备2向设备1发送针对目标数据的数据获取请求。
在步骤S208中,设备1基于数据获取请求,向设备2发送目标数据。根据一种实施例,设备1可以根据实际情况选择合适的传输协议,采用选定的传输协议来向设备2发送目标数据。传输协议例如可以是SSH(secure shell)协议、FTP(File Transfer Protocol)协议、HTTP(HyperText Transfer Protocol)协议等,但不限于此。
设备2获取到目标数据后,执行步骤S209,将目标数据获取完成的状态信息发送至服务端。状态信息例如包括设备2的标识、目标数据的版本号、目标数据获取时间、目标数据的映射值等,但不限于此。
随后,在步骤S210中,服务端生成设备2获取目标数据的数据获取记录并进行存储。设备2获取目标数据的数据获取记录例如包括设备2的标识、目标数据的版本号、目标数据获取时间和目标数据的映射值。该数据获取记录例如可以作为一个叶节点存储于默克尔树中。
需要说明的是,虽然图2仅输出了设备2这一个请求设备,但是本领域技术人员可以理解,除了设备2之外,局域网中还有其他的请求设备,这些请求设备获取目标数据的过程与设备2获取目标数据的过程类似,此处不再赘述其他请求设备的数据传递过程。
基于图2所示的数据传递过程,将局域网内以获取到目标数据的设备1设置为中心设备,中心设备可以向局域网内的其他设备(设备2)广播针对目标数据的数据邀请,其他设备可以从中心设备处获取目标数据。相较于从服务端获取数据的现有方案,本发明的数据传递方案使得设备可以从局域网内获取目标数据,从而显著缓解了数据传递给公网带来的带宽压力。
在区块链系统的一些实施例中,设备使用区块链提供的服务,需要支付一定的费用。费用可以以gas(燃料)为单位来进行计数。本发明的数据传递系统也可以实现为区块链系统,相应地,在本发明的数据传递方案中,设备获取数据需要向数据提供方支付相应的费用。
根据一种实施例,为了鼓励设备在局域网内获取数据,本发明设计了数据对价机制。在该机制中,设备获取数据需要向数据提供方支付相应的对价,即,若设备从局域网内的中心设备处获取数据,则需要向中心设备支付相应的对价;若设备从服务端获取数据,则需要向服务端支付相应的对价。对于同一条数据,从中心设备处获取数据时向中心设备支付的对价小于从服务端处获取数据时向服务端支付的对价,从而鼓励请求设备接收局域网内的数据邀请,以缓解公网压力。
根据一种实施例,为了鼓励设备在获取到数据之后作为中心设备第一时间邀请其他设备获取数据,本发明涉及了补贴机制。在该机制中,服务端对中心设备进行补贴,补贴的具体数额根据中心设备广播数据邀请的时间和服务端发布数据的时间来确定,广播数据邀请的时间与数据的发布时间之差越小,数据补贴越大。
以上从系统的角度阐述了本发明的数据传递方法,以下将分别从中心设备、请求设备、服务端三个执行主体的角度来阐述本发明的数据传递方法。
图5示出了根据本发明一个实施例的数据传递方法500的流程图,方法500在中心设备处(例如图1中的设备1、设备5、设备6,图2中的设备1)执行。如图5所示,方法500始于步骤S510。
在步骤S510中,向局域网内的设备广播针对目标数据的数据邀请。
根据一种实施例,目标数据为从服务端或局域网内的其他中心设备处获取。
根据一种实施例,数据邀请包括校验信息,以便对数据邀请的合法性进行验证。
步骤S510与前述步骤S203相同,步骤S510的具体实施步骤可以参考前述关于步骤S203的相关描述,此处不再赘述。
随后,在步骤S520中,接收设备发送的针对目标数据的数据获取请求。
步骤S520与前述步骤S207相对应,步骤S520的具体实施步骤可以参考前述关于步骤S207的相关描述,此处不再赘述。
随后,在步骤530中,基于数据获取请求,向设备发送目标数据。
根据一种实施了步骤S530进一步包括:确定传输协议;采用所确定的传输协议来向请求设备发送目标数据。
步骤S530与前述步骤S208相同,步骤S530的具体实施步骤可以参考前述关于步骤S208的相关描述,此处不再赘述。
根据一种实施例,方法500还包括:接收请求设备支付的数据对价,该数据对价小于请求设备从服务端处获取目标数据时向服务端支付的对价。
根据一种实施例,方法500还包括:接收服务端发放的数据补贴,数据补贴根据中心设备广播数据邀请的时间和服务端发布目标数据的时间来确定,广播数据邀请的时间与目标数据的发布时间之差越小,数据补贴越大。
图6示出了根据本发明一个实施例的数据出那地方法600的流程图,方法600在请求设备(例如图1中的设备2~4、设备7~12,图2中的设备2)处执行。如图6所示,方法600始于步骤S610。
在步骤S610中,接收局域网内的中心设备广播的针对目标数据的数据邀请。
根据一种实施例,中心设备处存储的目标数据为从服务端或其他中心设备处获取。
步骤S610与前述步骤S203相对应,步骤S610的具体实施步骤可以参考前述关于步骤S203的相关描述,此处不再赘述。
随后,在步骤S620中,采用区块链技术来验证数据邀请的合法性。
根据一种实施例,数据邀请包括校验信息,步骤S620进一步包括:将校验信息上传至服务端,以便服务端根据校验信息来验证数据邀请的合法性,其中,服务端为区块链系统中的记账节点;以及接收服务端返回的验证结果。
根据一种实施例,校验信息包括目标数据标识和目标数据的映射值,步骤S620进一步包括:将目标数据标识和目标数据的映射值发送至服务端,以便服务端:获取目标数据标识所对应的数据内容,计算数据内容的映射值,若计算出的映射值与目标数据的映射值相同,则确定数据邀请合法。
根据一种实施例,校验信息包括目标数据获取记录,步骤S620进一步包括:将目标数据获取记录发送至服务端,以便服务端:判断目标数据获取记录是否存在于已存储的多条数据获取记录中,若是,则确定数据邀请合法。
步骤S620与前述步骤S204~S206相对应,步骤S620的具体实施步骤可以参考前述关于步骤S204~S206的相关描述,此处不再赘述。
随后,在步骤S630中,在确定数据邀请合法后,从中心设备处获取目标数据。
根据一种实施例,步骤S630进一步包括:向中心设备发送针对目标数据的数据获取请求;采用中心设备所确定的传输协议来获取目标数据。
步骤S630与前述步骤S207、S208相对应,步骤S630的具体实施步骤可以参考前述关于步骤S207、S208的相关描述,此处不再赘述。
根据一种实施例,在步骤S630之后,还包括步骤S640(步骤S640未在图6中示出)。在步骤S640中,将目标数据获取完成的状态信息发送至服务端,以便服务端生成本次获取目标数据的数据获取记录并进行存储。
步骤S640与前述步骤S209相同,步骤S640的具体实施步骤可以参考前述关于步骤S209的相关描述,此处不再赘述。
根据一种实施例,方法600还包括:向中心设备支付数据对价,其中,数据对价小于从服务端处获取目标数据时向服务端支付的对价。
图7示出了根据本发明一个实施例的数据传递方法700的流程图,方法700在服务端(例如图1、图2中所示的服务端)处执行。如图7所示,方法700始于步骤S710。
在步骤S710中,接收请求设备发送的数据邀请验证请求,验证请求包括待验证的数据邀请的校验信息,数据邀请为请求设备从局域网内的中心设备处接收。
步骤S710与前述步骤S204相对应,步骤S710的具体实施步骤可以参考前述关于步骤S204的相关描述,此处不再赘述。
随后,在步骤S720中,根据校验信息来验证数据邀请的合法性。
根据一种实施例,校验信息包括目标数据标识和目标数据的映射值,步骤S720进一步包括:获取目标数据标识所对应的数据内容;计算数据内容的映射值;若计算出的映射值与目标数据的映射值相同,则确定数据邀请合法。
根据一种实施例,校验信息包括目标数据获取记录,步骤S720进一步包括:判断目标数据获取记录是否存在于已存储的多条数据获取记录中,若是,则确定数据邀请合法。
根据一种实施例,多条数据获取记录采用默克尔树存储,默克尔树的每个叶节点对应于一条数据获取记录,叶节点处存储有对应的数据获取记录的映射值;校验信息还包括目标数据获取记录所对应的目标叶节点标识,步骤S720进一步包括:计算目标数据获取记录的映射值;根据目标叶节点标识和所述映射值来计算默克尔树的根值;若计算出的根值与默克尔树的根节点处存储的数值相同,则确定数据邀请合法。
根据一种实施例,在确定数据邀请不合法后,将发出数据邀请的中心设备标识以及数据邀请所针对的目标数据标识发送至局域网内的其他设备。
步骤S720与前述步骤S205相同,步骤S720的具体实施步骤可以参考前述关于步骤S205的相关描述,此处不再赘述。
随后,在步骤S730中,将验证结果返回给请求设备,以便请求设备在确定数据邀请合法后,从中心设备处获取目标数据。
步骤S730与前述步骤S206相同,步骤S730的具体实施步骤可以参考前述关于步骤S206的相关描述,此处不再赘述。
根据一种实施例,方法700还包括步骤S740(步骤S740未在图7中示出)。在步骤S740中,接收请求设备发送的目标数据获取完成的状态信息;根据状态信息生成本次获取目标数据的数据获取记录并进行存储。
步骤S740与前述步骤S209、S210相对应,步骤S740的具体实施步骤可以参考前述关于步骤S209、S210的相关描述,此处不再赘述。
根据一种实施例,方法700还包括:向中心设备发放数据补贴,数据补贴根据中心设备广播数据邀请的时间和所述目标数据的发布时间来确定,中心设备广播数据邀请的时间与目标数据的发布时间之差越小,数据补贴越大。
图8示出了根据本发明一个实施例的计算设备800的示意图。如图8所示,计算设备800包括处理器810和存储器820。存储器820中存储有程序指令,当程序指令被处理器810读取并执行时,使得计算设备800执行本发明的数据传递方法500、600或700。
需要说明的是,根据存储器820中所存储的程序指令的不同,计算设备800可以实现为本发明的中心设备、请求设备或服务端。当存储器820中存储有用于执行本发明的数据传递方法500的指令时,计算设备800可以实现为本发明的中心设备;当存储器820中存储有用于执行本发明的数据传递方法600的指令时,计算设备800可以实现为本发明的请求设备;当存储器820中存储有用于执行本发明的数据传递方法700的指令时,计算设备800可以实现为本发明的服务端。
这里描述的各种技术可结合硬件或软件,或者它们的组合一起实现。从而,本发明的方法和设备,或者本发明的方法和设备的某些方面或部分可采取嵌入有形媒介,例如可移动硬盘、U盘、软盘、CD-ROM或者其它任意机器可读的存储介质中的程序代码(即指令)的形式,其中当程序被载入诸如计算机之类的机器,并被所述机器执行时,所述机器变成实践本发明的设备。
在程序代码在可编程计算机上执行的情况下,计算设备一般包括处理器、处理器可读的存储介质(包括易失性和非易失性存储器和/或存储元件),至少一个输入装置,和至少一个输出装置。其中,存储器被配置用于存储程序代码;处理器被配置用于根据该存储器中存储的所述程序代码中的指令,执行本发明的数据传递方法。
以示例而非限制的方式,可读介质包括可读存储介质和通信介质。可读存储介质存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息。通信介质一般以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并且包括任何信息传递介质。以上的任一种的组合也包括在可读介质的范围之内。
在此处所提供的说明书中,算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与本发明的示例一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组件可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的而非限制性的,本发明的范围由所附权利要求书限定。
Claims (23)
1.一种在局域网中执行的数据传递方法,所述局域网包括多个设备,所述多个设备中的任意一个设备作为请求设备时,执行所述数据传递方法的以下步骤:
接收局域网内的中心设备广播的针对目标数据的数据邀请,所述中心设备处存储的目标数据为从服务端或局域网内的其他中心设备处获取;
采用区块链技术来验证所述数据邀请的合法性;
在确定所述数据邀请合法后,从所述中心设备处获取所述目标数据;以及
作为所述中心设备,与原有的中心设备一起在所述局域网内广播所述数据邀请,以便向所述局域网内的其他设备提供所述目标数据的传递服务。
2.如权利要求1所述方法,其中,所述数据邀请包括校验信息,所述采用区块链技术来验证所述数据邀请的合法性的步骤包括:
将所述校验信息上传至服务端,以便服务端根据所述校验信息来验证所述数据邀请的合法性,其中,所述服务端为区块链系统中的记账节点;以及
接收服务端返回的验证结果。
3.如权利要求2所述的方法,其中,所述校验信息包括目标数据标识和目标数据的映射值,所述验证所述数据邀请的合法性的步骤包括:
将所述目标数据标识和目标数据的映射值发送至服务端,以便服务端:获取所述目标数据标识所对应的数据内容,计算所述数据内容的映射值,若计算出的映射值与所述目标数据的映射值相同,则确定所述数据邀请合法。
4.如权利要求2所述的方法,其中,所述校验信息包括目标数据获取记录,所述验证所述数据邀请的合法性的步骤包括:
将所述目标数据获取记录发送至服务端,以便服务端:判断所述目标数据获取记录是否存在于已存储的多条数据获取记录中,若是,则确定所述数据邀请合法。
5.如权利要求1所述的方法,其中,所述从所述中心设备处获取所述目标数据的步骤包括:
向所述中心设备发送针对所述目标数据的数据获取请求;
采用所述中心设备所确定的传输协议来获取所述目标数据。
6.如权利要求1所述的方法,其中,在所述从所述中心设备处获取所述目标数据的步骤之后,还包括:
将目标数据获取完成的状态信息发送至服务端,以便服务端生成本次获取目标数据的数据获取记录并进行存储。
7.如权利要求1所述的方法,还包括:
向所述中心设备支付数据对价以获取所述目标数据,其中,所述数据对价小于从服务端处获取所述目标数据时向服务端支付的对价。
8.一种局域网中应用的数据传递方法,所述局域网包括多个设备,所述多个设备中的任意一个设备作为中心设备时,执行所述数据传递方法的以下步骤:
向局域网内的设备广播针对目标数据的数据邀请;
接收所述设备发送的针对所述目标数据的数据获取请求;
基于所述数据获取请求,向所述设备发送所述目标数据,其中,所述设备在获取所述目标数据后作为所述中心设备,与原有的中心设备一起在所述局域网内广播所述数据邀请,以便向所述局域网内的其他设备提供所述目标数据的传递服务。
9.如权利要求8所述的方法,其中,所述目标数据为从服务端或其他设备处获取。
10.如权利要求8所述的方法,其中,所述数据邀请包括校验信息,以便对所述数据邀请的合法性进行验证。
11.如权利要求8所述的方法,其中,所述向所述设备发送所述目标数据包括:
确定传输协议;
采用所述传输协议来向所述设备发送所述目标数据。
12.如权利要求8所述的方法,还包括:
接收所述设备支付的数据对价,所述数据对价小于所述设备从服务端处获取所述目标数据时向服务端支付的对价。
13.如权利要求8所述的方法,还包括:
接收服务端发放的数据补贴,所述数据补贴根据广播数据邀请的时间和服务端发布所述目标数据的时间来确定,广播数据邀请的时间与目标数据的发布时间之差越小,数据补贴越大。
14.一种数据传递方法,在区块链系统的记账节点中执行,所述方法包括:
接收设备发送的数据邀请验证请求,所述验证请求包括待验证的数据邀请的校验信息,所述数据邀请为所述设备从局域网内的中心设备处接收;
根据所述校验信息来验证所述数据邀请的合法性;以及
将验证结果返回给所述设备,以便所述设备在确定所述数据邀请合法后,从所述中心设备处获取目标数据,并在获取所述目标数据后作为所述中心设备,与原有的中心设备一起在所述局域网内广播所述数据邀请,以便向所述局域网内的其他设备提供所述目标数据的传递服务。
15.如权利要求14所述的方法,其中,所述校验信息包括目标数据标识和目标数据的映射值,所述根据所述校验信息来验证所述数据邀请的合法性的步骤包括:
获取所述目标数据标识所对应的数据内容;
计算所述数据内容的映射值;
若计算出的映射值与所述目标数据的映射值相同,则确定所述数据邀请合法。
16.如权利要求14所述的方法,其中,所述校验信息包括目标数据获取记录,所述根据所述校验信息来验证所述数据邀请的合法性的步骤包括:
判断所述目标数据获取记录是否存在于已存储的多条数据获取记录中,若是,则确定所述数据邀请合法。
17.如权利要求16所述的方法,其中,所述多条数据获取记录采用默克尔树存储,默克尔树的每个叶节点对应于一条数据获取记录,所述叶节点处存储有对应的数据获取记录的映射值;
所述校验信息还包括目标数据获取记录所对应的目标叶节点标识,所述根据所述校验信息来验证所述数据邀请的合法性的步骤包括:
计算所述目标数据获取记录的映射值;
根据所述目标叶节点标识和所述映射值来计算所述默克尔树的根值;
若计算出的根值与所述默克尔树的根节点处存储的数值相同,则确定所述数据邀请合法。
18.如权利要求14所述的方法,还包括:
在确定所述数据邀请不合法后,将发出所述数据邀请的中心设备标识以及所述数据邀请所针对的目标数据标识发送至所述局域网内的其他设备。
19.如权利要求14所述的方法,还包括:
接收所述设备发送的目标数据获取完成的状态信息;
根据所述状态信息生成本次获取目标数据的数据获取记录并进行存储。
20.如权利要求14所述的方法,还包括:
向所述中心设备发放数据补贴,所述数据补贴根据中心设备广播数据邀请的时间和所述目标数据的发布时间来确定,所述中心设备广播数据邀请的时间与目标数据的发布时间之差越小,数据补贴越大。
21.一种计算设备,包括:
至少一个处理器;和
存储有程序指令的存储器,当所述程序指令被所述处理器读取并执行时,使得所述计算设备执行如权利要求1-7中任一项所述的方法、或如权利要求8-13中任一项所述的方法、或如权利要求14-20中任一项所述的方法。
22.一种数据传递系统,包括:
中心设备、请求设备和服务端,其中,所述中心设备和所述请求设备位于同一个局域网;
所述中心设备、请求设备、服务端分别适于执行如权利要求8-13、1-7、14-20中任一项所述的方法。
23.如权利要求22所述的系统,为区块链系统,其中,所述服务端为所述区块链系统中的记账节点,所述中心设备和所述请求设备为所述区块链系统中的非记账节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910189090.6A CN111698108B (zh) | 2019-03-13 | 2019-03-13 | 数据传递方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910189090.6A CN111698108B (zh) | 2019-03-13 | 2019-03-13 | 数据传递方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111698108A CN111698108A (zh) | 2020-09-22 |
CN111698108B true CN111698108B (zh) | 2023-11-21 |
Family
ID=72474968
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910189090.6A Active CN111698108B (zh) | 2019-03-13 | 2019-03-13 | 数据传递方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111698108B (zh) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102413057A (zh) * | 2011-12-22 | 2012-04-11 | 北京新媒传信科技有限公司 | 一种互联网中提供业务应用的方法和系统 |
CN103108051A (zh) * | 2013-02-27 | 2013-05-15 | 上海够快网络科技有限公司 | 一种从云端服务器同步共享文件的方法 |
CN103442288A (zh) * | 2013-08-30 | 2013-12-11 | 广州市动景计算机科技有限公司 | 一种跨设备数据内容处理方法、装置和系统 |
CN105554141A (zh) * | 2015-12-24 | 2016-05-04 | 小米科技有限责任公司 | 智能设备资源管控方法及装置 |
CN106685713A (zh) * | 2016-12-26 | 2017-05-17 | 努比亚技术有限公司 | 一种处理配置参数的方法和装置 |
CN108737071A (zh) * | 2018-05-18 | 2018-11-02 | 成都理工大学 | 一种基于区块链的WLAN mesh安全接入方法 |
JP2018197832A (ja) * | 2017-05-25 | 2018-12-13 | 日本電信電話株式会社 | ブロックチェーン更新システム、サーバ装置、クライアント装置、ブロックチェーン更新方法、およびプログラム |
CN109257440A (zh) * | 2018-10-29 | 2019-01-22 | 南京南瑞信息通信科技有限公司 | 一种基于服务注册中心的服务发现和客户端负载均衡方法 |
CN109274652A (zh) * | 2018-08-30 | 2019-01-25 | 腾讯科技(深圳)有限公司 | 身份信息验证系统、方法及装置及计算机存储介质 |
CN109286599A (zh) * | 2017-07-20 | 2019-01-29 | 北京展讯高科通信技术有限公司 | 数据安全防护方法、智能设备、服务器及可读存储介质 |
CN109409891A (zh) * | 2018-11-14 | 2019-03-01 | 湖北文理学院 | 课件分享方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10122661B2 (en) * | 2016-06-10 | 2018-11-06 | Salesforce.Com, Inc. | Messaging systems and methods that employ a blockchain to ensure integrity of message delivery |
-
2019
- 2019-03-13 CN CN201910189090.6A patent/CN111698108B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102413057A (zh) * | 2011-12-22 | 2012-04-11 | 北京新媒传信科技有限公司 | 一种互联网中提供业务应用的方法和系统 |
CN103108051A (zh) * | 2013-02-27 | 2013-05-15 | 上海够快网络科技有限公司 | 一种从云端服务器同步共享文件的方法 |
CN103442288A (zh) * | 2013-08-30 | 2013-12-11 | 广州市动景计算机科技有限公司 | 一种跨设备数据内容处理方法、装置和系统 |
CN105554141A (zh) * | 2015-12-24 | 2016-05-04 | 小米科技有限责任公司 | 智能设备资源管控方法及装置 |
CN106685713A (zh) * | 2016-12-26 | 2017-05-17 | 努比亚技术有限公司 | 一种处理配置参数的方法和装置 |
JP2018197832A (ja) * | 2017-05-25 | 2018-12-13 | 日本電信電話株式会社 | ブロックチェーン更新システム、サーバ装置、クライアント装置、ブロックチェーン更新方法、およびプログラム |
CN109286599A (zh) * | 2017-07-20 | 2019-01-29 | 北京展讯高科通信技术有限公司 | 数据安全防护方法、智能设备、服务器及可读存储介质 |
CN108737071A (zh) * | 2018-05-18 | 2018-11-02 | 成都理工大学 | 一种基于区块链的WLAN mesh安全接入方法 |
CN109274652A (zh) * | 2018-08-30 | 2019-01-25 | 腾讯科技(深圳)有限公司 | 身份信息验证系统、方法及装置及计算机存储介质 |
CN109257440A (zh) * | 2018-10-29 | 2019-01-22 | 南京南瑞信息通信科技有限公司 | 一种基于服务注册中心的服务发现和客户端负载均衡方法 |
CN109409891A (zh) * | 2018-11-14 | 2019-03-01 | 湖北文理学院 | 课件分享方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111698108A (zh) | 2020-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10873451B2 (en) | Content delivery network processing method, content delivery network, device, and storage medium | |
CN110291757B (zh) | 用于提供简化帐户注册服务、用户认证服务的方法及利用其的认证服务器 | |
US8799309B2 (en) | Verifying network delivery of information to a device based on physical characteristics | |
EP1922615B1 (en) | Distributed caching of files in a network | |
JP5902820B2 (ja) | ピアツーピアコンテンツ配信システムにおけるピアによって受信されたコンテンツの完全性の確認 | |
EP3316544A1 (en) | Token generation and authentication method, and authentication server | |
CN104506510A (zh) | 用于设备认证的方法、装置及认证服务系统 | |
CN108881308A (zh) | 一种用户终端及其认证方法、系统、介质 | |
CN108768672B (zh) | 数据处理方法、装置及存储介质 | |
US11356839B2 (en) | Location verification and enforcement for content access devices | |
US11961074B2 (en) | Method and system for a network device to obtain a trusted state representation of the state of the distributed ledger technology network | |
US8423656B2 (en) | Push gateway systems and methods | |
KR100722253B1 (ko) | 센서네트워크 환경에 적합한 센서 인증 시스템 및 방법 | |
CN116032937A (zh) | 一种边缘计算设备算力交易方法及系统 | |
CN105991610B (zh) | 登录应用服务器的方法及装置 | |
CN111698108B (zh) | 数据传递方法及装置 | |
WO2002089407A2 (en) | Accounting in peer-to-peer data communication networks | |
CN1885768B (zh) | 一种环球网认证方法 | |
US20160044028A1 (en) | Message authentication | |
US8881241B2 (en) | Method of and system for implementing privacy control | |
KR101709159B1 (ko) | 인터넷 프로토콜을 사용하는 무선 데이터 통신 서비스 방법및 장치 | |
CN110049067B (zh) | 会话密钥的传输方法、设备及计算机可读存储介质 | |
CN112333134A (zh) | 密码安全的动态第三方资源 | |
EP3949449B1 (en) | Authentication method and apparatus | |
CN114499965B (zh) | 一种基于pop3协议的上网认证方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40036888 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |