一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据的提供方法、装置和系统与流程

2021-12-07 21:19:00 来源:中国专利 TAG:


1.本公开涉及计算机技术领域,特别涉及一种数据的提供方法、数据的提供装置、数据的提供系统和非易失性计算机可读存储介质。


背景技术:

2.物联网能够通过各种信息传感器,实时采集数据。通过各种传感器的网络接入,物联网能够实现物与物、物与人的连接,实现对物品和过程的智能化感知。物联网是一个基于互联网、传统电信网等的信息承载体,它让所有能够被独立寻址的普通物理对象形成互联互通的网络。
3.物联网系统基于真实的数据来了解真实世界的情况,因此如果无法保证数据的真实性、完整性、可靠性,系统可能会导致严重的问题。首先物联网的传感器无法保证数据的完整性和安全性,所产生的数据容易被篡改或欺骗;其次一些恶意设备通过固件或软件等伪装接入物联网。
4.因此,如何保障数据来源的安全以及数据存储的安全是物联网以及人工智能发展中需要解决的一个问题。
5.在相关技术中,利用区块链存储各传感器上传的数据来增强数据的安全度和可信度。


技术实现要素:

6.本公开的发明人发现上述相关技术中存在如下问题:只能保证区块链内注册数据的完整性,但无法检测到数据上传区块链之前是否被恶意篡改,导致物联网数据的可靠性降低。
7.鉴于此,本公开提出了一种数据的提供技术方案,能够提高物联网数据的可靠性。
8.根据本公开的一些实施例,提供了一种数据的提供方法,包括:响应于请求设备发起目标数据的获取请求,将上传目标数据的数据上传设备确定为待验证设备,将待验证设备所在验证区域中的各其他数据上传设备确定为各验证设备;根据各验证设备的历史位置与当前位置的差异,确定待验证设备是否通过验证;在待验证设备通过验证的情况下,将目标数据提供给请求设备。
9.在一些实施例中,数据上传设备的验证区域根据该数据上传设备接入时所在的位置确定,各验证设备为与待验证设备具有相同验证区域的各数据上传设备。
10.在一些实施例中,确定待验证设备是否通过验证包括:获取各验证设备在上传数据时的位置,作为其各自的历史位置;在差异小于距离阈值的情况下,确定待验证设备通过验证。
11.在一些实施例中,确定待验证设备是否通过验证包括:将各历史位置拟合为一条直线;根据各验证设备的当前位置到直线的距离,确定差异。
12.在一些实施例中,确定差异包括:根据各验证设备的当前位置到直线的距离的加
权平均值,确定差异,距离的权值与该距离相应的验证设备的信誉值正相关。
13.在一些实施例中,根据各验证设备的历史位置与当前位置的差异,确定待验证设备是否通过验证包括:根据待验证设备的信誉值是否小于信誉值阈值,确定待验证设备是否为恶意设备;在待验证设备不为恶意设备的情况下,根据各验证设备的历史位置与当前位置的差异,确定待验证设备是否通过验证。
14.在一些实施例中,待验证设备的信誉值在待验证设备通过验证的情况下增加,在待验证设备未通过验证的情况下减少。
15.在一些实施例中,各数据上传设备上传的数据通过第一智能合约,存储在区块链中;确定待验证设备是否通过验证包括:调用第二智能合约,确定待验证设备是否通过验证;将目标数据提供给请求设备包括:从区块链获取目标数据,提供给请求设备。
16.在一些实施例中,在待验证设备的信誉值大于或等于信誉值阈值的情况下,目标数据被允许上传。
17.在一些实施例中,提供方法还包括:响应于各数据上传设备接入,向各数据上传设备发送公钥和私钥;目标数据为待验证设备通过公钥加密、私钥签名后上传。
18.根据本公开的另一些实施例,提供一种数据的提供装置,包括:确定单元,用于响应于请求设备发起目标数据的获取请求,将上传目标数据的数据上传设备确定为待验证设备,将待验证设备所在验证区域中的各其他数据上传设备确定为各验证设备;验证单元,用于根据各验证设备的历史位置与当前位置的差异,确定待验证设备是否通过验证;提供单元,用于在待验证设备通过验证的情况下,将目标数据提供给请求设备。
19.在一些实施例中,数据上传设备的验证区域根据该数据上传设备接入时所在的位置确定,各验证设备为与待验证设备具有相同验证区域的各数据上传设备。
20.在一些实施例中,验证单元获取各验证设备在上传数据时的位置,作为其各自的历史位置,在差异小于距离阈值的情况下,确定待验证设备通过验证。
21.在一些实施例中,验证单元将各历史位置拟合为一条直线,根据各验证设备的当前位置到直线的距离,确定差异。
22.在一些实施例中,验证单元根据各验证设备的当前位置到直线的距离的加权平均值,确定差异,距离的权值与该距离相应的验证设备的信誉值正相关。
23.在一些实施例中,验证单元根据待验证设备的信誉值是否小于信誉值阈值,确定待验证设备是否为恶意设备,在待验证设备不为恶意设备的情况下,根据各验证设备的历史位置与当前位置的差异,确定待验证设备是否通过验证。
24.在一些实施例中,待验证设备的信誉值在待验证设备通过验证的情况下增加,在待验证设备未通过验证的情况下减少。
25.在一些实施例中,各数据上传设备上传的数据通过第一智能合约,存储在区块链中;验证单元调用第二智能合约,确定待验证设备是否通过验证;提供单元从区块链获取目标数据,提供给请求设备。
26.在一些实施例中,在待验证设备的信誉值大于或等于信誉值阈值的情况下,目标数据被允许上传。
27.在一些实施例中,提供单元响应于各数据上传设备接入,向各数据上传设备发送公钥和私钥,目标数据为待验证设备通过公钥加密、私钥签名后上传。
28.根据本公开的又一些实施例,提供一种数据的提供装置,包括:存储器;和耦接至存储器的处理器,处理器被配置为基于存储在存储器装置中的指令,执行上述任一个实施例中的数据的提供方法。
29.根据本公开的再一些实施例,提供一种非易失性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一个实施例中的数据的提供方法。
30.根据本公开的再一些实施例,提供一种数据的提供系统,包括:数据的提供装置,用于执行上述任一个实施例中的数据的提供方法;多个数据上传设备,用于向数据的提供系统上传数据。
31.在一些实施例中,提供系统还包括:区块链系统,用于存储多个数据上传设备上传的数据。
32.在上述实施例中,基于位置信息,利用验证区域内多个验证设备对提供数据的待验证设备进行联合验证。这样,能够检测数据的上传来源是否为恶意设备,从而提高物联网数据的可靠性。
附图说明
33.构成说明书的一部分的附图描述了本公开的实施例,并且连同说明书一起用于解释本公开的原理。
34.参照附图,根据下面的详细描述,可以更加清楚地理解本公开:
35.图1示出本公开的数据的提供方法的一些实施例的流程图;
36.图2示出本公开的数据的提供方法的一些实施例的示意图;
37.图3示出本公开的数据的提供方法的另一些实施例的示意图;
38.图4示出本公开的数据的提供装置的一些实施例的框图;
39.图5示出本公开的数据的提供装置的另一些实施例的框图;
40.图6示出本公开的数据的提供装置的又一些实施例的框图;
41.图7示出本公开的数据的提供系统的一些实施例的框图。
具体实施方式
42.现在将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
43.同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
44.以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。
45.对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,技术、方法和设备应当被视为授权说明书的一部分。
46.在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
47.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一
个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
48.如前所述,基于区块链的物联网数据平台无法分辨传感器为善意设备还是恶意设备,对于所有的传感设备默认为善意设备。这样,导致其他设备可能在获取数据时获取到恶意设备的数据,从而被恶意设备所欺骗。
49.针对上述技术问题,本公开可以验证从物联网设备(如传感器)获取数据的真实性、完整性。例如,可以利用区块链的智能合约验证数据来源是否可靠。还可以利用区块链的特性保证数据存储的可靠性。
50.在一些实施例中,基于物联网系统的特点,即真实世界的数据是从物联网设备连续生成的,在源设备附近往往存在各种传感设备,可以请求周围设备协同验证源设备(待验证设备)提供的数据的真实性、完整性、可靠性。
51.在不发生数据篡改或欺骗的情况下,源设备的真实数据趋势应与协作设备生成的数据趋势几乎相同。因此,通过比较源设备和区块链上协作者(即作为验证设备的协作设备)生成的数据,即可验证源设备上传数据的可靠性。协作者的数据对于验证起着关键性作用。
52.在一些实施例中,为每个数据上传设备(如传感器)设定信誉值,根据联合验证结果评定源设备是否为恶意设备,从而进行信誉值的增加或减少。信誉值作为协作中信誉的代表,信誉值高的协作设备,在比较源设备和协作设备数据时占有更高的比例。
53.这样,可以保证整个物联网系统中获取、存储数据的真实性、完整性、可靠性。例如,可以通过如下的实施例实现本公开的技术方案。
54.图1示出本公开的数据的提供方法的一些实施例的流程图。
55.如图1所示,在步骤110中,响应于请求设备发起目标数据的获取请求,将上传目标数据的数据上传设备确定为待验证设备;将待验证设备所在验证区域中的各其他数据上传设备确定为各验证设备。例如,数据上传设备为传感设备。
56.在一些实施例中,数据上传设备的验证区域根据该数据上传设备接入时所在的位置确定。各验证设备为与待验证设备具有相同验证区域的各数据上传设备。
57.例如,响应于传感设备注册接入数据的提供系统,可以根据传感设备的mac(media access control address,媒体接入控制位址),为每个传感设备分发唯一的全局身份id;可以将传感设备注册为验证设备,并将传感设备的当前所在区域设置为该传感设备的验证区域。
58.在一些实施例中,传感设备可以每隔一段固定的时间,通过网络将数据上传至数据的提供系统;数据的提供系统使用第一智能合约,将上传的数据存储在区块链中。例如,存储的数据中可以包含上传数据的的和传感设备的全局身份id、数据id、数据类型、数据的值、时间等。
59.在一些实施例中,在待验证设备的信誉值大于或等于信誉值阈值的情况下,目标数据被允许上传。例如,判定低于信誉值阈值的传感设备为恶意设备,不允许其上传数据。
60.例如,可以在提供系统初始化时,将每个传感设备的信誉值设置为初始信誉值(如100),并将每个信誉值和信誉值阈值存储在提供系统中;每次协同验证之后,根据传感设备是否通过验证更新信誉值。
61.例如,提供系统在接受到数据上传设备上传的数据后,查询该数据上传设备的信
誉值是否达到信誉值阈值;如果达到,则对上传数据进行签名验证;如果签名验证成功,标识上传数据正确,调用提供系统的私钥进行解密得到解密数据;调用第一智能合约,将解密数据存储在区块链中。
62.在一些实施例中,响应于传感设备注册接入数据的提供系统,还为传感设备分配公钥和私钥。例如,响应于各数据上传设备接入,向各数据上传设备发送公钥和私钥;目标数据为待验证设备通过公钥加密、私钥签名后上传。
63.在一些实施例中,需要获取数据的传感设备(请求设备)向提供系统发送获取数据请求,通过智能合约调用验证智能合约(第二智能合约)对待验证设备进行验证。
64.例如,请求设备需要获取某个传感设备(待验证设备)在某个时间上传的数据时,可以通过该请求设备的全局身份id、数据id访问提供系统,以请求获取数据。
65.提供系统在获取到请求设备的全局身份id和数据id后,根据待验证设备的信誉值判断其是否为恶意设备;如果不为恶意设备,调用验证智能合约,对待验证设备进行验证。
66.在步骤120中,根据各验证设备的历史位置与当前位置的差异,确定待验证设备是否通过验证。
67.在一些实施例中,可以先根据待验证设备的信誉值是否小于信誉值阈值,确定待验证设备是否为恶意设备;然后在待验证设备不为恶意设备的情况下,根据各验证设备的历史位置与当前位置的差异,确定待验证设备是否通过验证。
68.在一些实施例中,可以获取各验证设备在上传数据时的位置,作为其各自的历史位置。在差异小于距离阈值的情况下,确定待验证设备通过验证。
69.例如,将各历史位置拟合为一条直线,并根据各验证设备的当前位置到直线的距离,确定差异。可以根据各验证设备的当前位置到直线的距离的加权平均值确定差异,距离的权值与该距离相应的验证设备的信誉值正相关。
70.在一些实施例,通过验证智能合约,将时间序列数据与验证设备的在一段时间内产生的所有相关数据进行比对;通过权重计算得到验证结果;将验证结果记录在区块链上,返回验证结果和数据给智能合约。
71.例如,通过验证智能合约,找到数据生成设备(待验证设备)的验证区域,进而找到属于该验证区域的各验证设备;获取各验证设备存储在区块链上的数据,从而确认各验证设备上传这些数据时的历史位置;利用最小二乘法,将各历史位置拟合为一条直线;计算各验证设备的当前位置到该直线的垂直线的距离。
72.获取每个验证设备的信誉值,计算各自的权重;利用各权重计算各距离的加权平均值;判断加权平均值是否小于距离阈值;根据判断结果,确定待验证设备是否通过验证;将验证结果记录在区块链上,并返回给所调用的验证智能合约。
73.在一些实施例中,待验证设备的信誉值在待验证设备通过验证的情况下增加,在待验证设备未通过验证的情况下减少。例如,可以利用第三智能合约调整信誉值。
74.在步骤130中,在待验证设备通过验证的情况下,将目标数据提供给请求设备。
75.在一些实施例中,各数据上传设备上传的数据通过第一智能合约,存储在区块链中;调用第二智能合约,确定待验证设备是否通过验证;从区块链获取目标数据,提供给请求设备。
76.例如,如果验证通过,利用智能合约根据验证结果,利用待验证设备公钥对目标数
据进行加密后利用提高系统的私钥进行签名生成加密数据,然后发送给请求设备;记录请求设备的信息以及获取数据的信息至区块链上;请求设备在接收到加密数据后,进行验证签名;如果数据通过签名验证,则进行解密,获取所需的目标数据。
77.图2示出本公开的数据的提供方法的一些实施例的示意图。
78.如图2所示,传感设备接入提供系统进行注册;提供系统包含区块链系统,将注册的传感设备上传的数据存储为各区块。
79.各传感设备发送自己的mac给提供系统进行注册;提供系统根据mac地址生成唯一的身份id、公钥、私钥,并且存储在区块链上。例如,公钥作为区块链系统中身份的标识,利用签名鉴定行为发起方。
80.每个接入提供系统的传感设备既是源数据生成者也是验证设备;提供系统通过传感设备接入时所处的位置,将传感设备注册为某个验证区域的验证设备,同时初始化其信誉值。
81.图3示出本公开的数据的提供方法的另一些实施例的示意图。
82.如图3所示,在通过步骤一完成各传感设备的注册后,可以通过步骤二、三、四进行验证。
83.在步骤二中,一定时间内,处在一个验证区域内的传感设备发送自己获取得到的数据至提供系统。
84.在一些实施例中,发送的数据可以利用提供系统的公钥进行加密,保证只有提供系统能识别真实的数据。例如,上传的数据包括身份id、数据id、数据类型、数据的值、时间等。
85.提供系统根据不同验证区域的传感设备,调用智能合约1(第一智能合约)存储这段时间内各验证区域内所有传感设备的数据。根据请求设备请求的数据,各传感设备可以为源设备(待验证设备)或者验证设备。
86.在步骤三中,需求数据设备(请求设备)需要获取某个传感设备(源设备)的数据时,提供系统判断源设备的信誉值是否达到信誉值阈值。如果达到信誉值,提供系统调用智能合约获取数据,智能合约记录源设备的信息作为凭证;调用验证智能合约(智能合约2即第二智能合约)对源设备进行验证。如果通过验证,则向需求数据设备返回数据。
87.在步骤四中,根据源设备上传的数据与各验证设备上传的数据的差异是否小于差异阈值,验证源设备。
88.例如,验证智能合约通过区块链找到源设备的上传数据,以及其验证区域内所有验证设备的上传数据;通过各验证设备的信誉值计算各验证设备的权重。
89.比对各验证设备的数据的加权平均值与源设备的数据的差异,是否达到差异阈值。如果小于差异阈值,证明数据来源可靠。基于验证的结果,利用智能合约3(第三智能合约)对验证设备奖励或扣除一定的信誉值作为激励。
90.在一些实施例中,验证智能合约可以把验证结果以及数据返回给调用的智能合约;如果验证通过,调用的智能合约使用需求数据设备的私钥进行加密,利用提高系统的私钥进行签名后发送给需求数据设备;需求数据设备在获取到数据后进行验证签名、解密,最后得到数据。
91.上述实施例中,实现了对数据来源的验证,提高了数据来源的可靠性。需要获取数
据的设备通过智能合约,请求数据产生设备周围的设备协同验证的可靠性。通过比较数据产生的源设备和协同验证设备在区块链上生成的数据,验证数据是否发生了篡改或欺骗。
92.在数据传输中利用密钥进行加密,保证了传输中数据的安全性;使用区块链存储数据、数据发布者、数据验证者、数据获取者等信息保证数据存储的安全性。
93.通过引入信誉机制,每个设备存在一个信誉值,在协作验证数据中信誉值会发生变化。如果产生虚假的数据信誉值就会被扣减,信誉值过低将无法获取数据,在系统中会被忽略,从而可以激励全网设备进行真实数据的发布。
94.图4示出本公开的数据的提供装置的一些实施例的框图。
95.如图4所示,数据的提供装置4包括确定单元41、验证单元42和提供单元43。
96.确定单元41响应于请求设备发起目标数据的获取请求,将上传目标数据的数据上传设备确定为待验证设备,将待验证设备所在验证区域中的各其他数据上传设备确定为各验证设备。
97.在一些实施例中,数据上传设备的验证区域根据该数据上传设备接入时所在的位置确定,各验证设备为与待验证设备具有相同验证区域的各数据上传设备。
98.验证单元42根据各验证设备的历史位置与当前位置的差异,确定待验证设备是否通过验证。
99.在一些实施例中,验证单元42获取各验证设备在上传数据时的位置,作为其各自的历史位置,在差异小于距离阈值的情况下,确定待验证设备通过验证。
100.在一些实施例中,验证单元42将各历史位置拟合为一条直线,根据各验证设备的当前位置到直线的距离,确定差异。
101.在一些实施例中,验证单元42根据各验证设备的当前位置到直线的距离的加权平均值,确定差异,距离的权值与该距离相应的验证设备的信誉值正相关。
102.在一些实施例中,验证单元42根据待验证设备的信誉值是否小于信誉值阈值,确定待验证设备是否为恶意设备,在待验证设备不为恶意设备的情况下,根据各验证设备的历史位置与当前位置的差异,确定待验证设备是否通过验证。
103.在一些实施例中,待验证设备的信誉值在待验证设备通过验证的情况下增加,在待验证设备未通过验证的情况下减少。
104.提供单元43在待验证设备通过验证的情况下,将目标数据提供给请求设备。
105.在一些实施例中,各数据上传设备上传的数据通过第一智能合约,存储在区块链中;验证单元42调用第二智能合约,确定待验证设备是否通过验证;提供单元43从区块链获取目标数据,提供给请求设备。
106.在一些实施例中,在待验证设备的信誉值大于或等于信誉值阈值的情况下,目标数据被允许上传。
107.在一些实施例中,提供单元43响应于各数据上传设备接入,向各数据上传设备发送公钥和私钥,目标数据为待验证设备通过公钥加密、私钥签名后上传。
108.图5示出本公开的数据的提供装置的另一些实施例的框图。
109.如图5所示,该实施例的数据的提供装置5包括:存储器51以及耦接至该存储器51的处理器52,处理器52被配置为基于存储在存储器51中的指令,执行本公开中任意一个实施例中的数据的提供方法。
110.其中,存储器51例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序boot loader、数据库以及其他程序等。
111.图6示出本公开的数据的提供装置的又一些实施例的框图。
112.如图6所示,该实施例的数据的提供装置6包括:存储器610以及耦接至该存储器610的处理器620,处理器620被配置为基于存储在存储器610中的指令,执行前述任意一个实施例中的数据的提供方法。
113.存储器610例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序boot loader以及其他程序等。
114.数据的提供装置6还可以包括输入输出接口630、网络接口640、存储接口650等。这些接口630、640、650以及存储器610和处理器620之间例如可以通过总线660连接。其中,输入输出接口630为显示器、鼠标、键盘、触摸屏、麦克、音箱等输入输出设备提供连接接口。网络接口640为各种联网设备提供连接接口。存储接口650为sd卡、u盘等外置存储设备提供连接接口。
115.图7示出本公开的数据的提供系统的一些实施例的框图。
116.如图7所示,数据的提供系统7包括:数据的提供装置71,用于执行上述任一个实施例中的数据的提供方法;多个数据上传设备72,用于向数据的提供系统上传数据。
117.在一些实施例中,提供系统7还包括:区块链系统73,用于存储多个数据上传设备上传的数据。
118.本领域内的技术人员应当明白,本公开的实施例可提供为方法、系统、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质包括但不限于磁盘存储器、cd

rom、光学存储器等上实施的计算机程序产品的形式。
119.至此,已经详细描述了根据本公开的数据的提供方法、数据的提供装置、数据的提供系统和非易失性计算机可读存储介质。为了避免遮蔽本公开的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。
120.可能以许多方式来实现本公开的方法和系统。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本公开的方法和系统。用于方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。
121.虽然已经通过示例对本公开的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本公开的范围。本领域的技术人员应该理解,可在不脱离本公开的范围和精神的情况下,对以上实施例进行修改。本公开的范围由所附权利要求来限定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献