一种基于区块链的数据传输方法及系统与流程

文档序号:28718709发布日期:2022-01-29 14:51阅读:135来源:国知局
一种基于区块链的数据传输方法及系统与流程

1.本发明涉及一种数据传输方法及系统,属于区块链技术领域,具体是一种基于区块链的数据传输方法及系统。


背景技术:

2.传统水务数据大多以中心化管理模式为主,但是数据权益涉及到水务集团,设备生产商和保险公司等.在此前提下,数据是否可信,数据传输和存储过程中是否被篡改成为利益涉及方痛点问题与面临的挑战。针对上述问题和挑战,现有技术利用区块链技术去中心化,不可篡改,可追溯的特性,提出了智慧水务区块链baas(blockchain as a service,区块链即服务)的构建思路和方法,较好地解决了水务数据所面临的可信度低问题。
3.但是,水表数据作为一种物联网数据,如何保证数据从终端水表采集到区块链传输过程中不被拦截甚至篡改成为了当前迫切需要解决的技术问题。


技术实现要素:

4.以下给出一个或多个方面的简要概述以提供对这些方面的基本理解。此概述不是所有构想到的方面的详尽综览,并且既非旨在指认出所有方面的关键性或决定性要素亦非试图界定任何或所有方面的范围。其唯一的目的是要以简化形式给出一个或多个方面的一些概念以为稍后给出的更加详细的描述之序。
5.本发明主要的目的是解决现有技术中所存在的技术问题,提供了基于区块链的数据传输方法及系统。该系统及方法能保证数据从终端采集到区块链传输过程中不被拦截甚至篡改,实现容易,通用性强,可适用于水表、电表等各种物联网场景。
6.为解决上述问题,本发明的方案是:
7.一种基于区块链的数据传输方法,包括:
8.将待上链数据使用区块链加密信息进行加密得到第一加密数据;
9.使用数据采集设备的原始密钥匙加密所述第一加密数据得到第二加密数据;
10.将所述第二加密数据基于nbiot协议传送至数据采集平台进行数据解析服务。
11.优选的,上述的一种基于区块链的数据传输方法,将所述第一加密数据基于tlv格式封装后再基于数据采集设备的原始密钥匙加密以得到第二加密数据。
12.一种基于区块链的数据传输方法,包括:
13.使用数据采集设备原始密钥解析接收到的数据采集设备发送的第二加密数据;
14.从解析的所述第二加密数据中读取第一加密数据以及数据采集设备的版本号信息,所述第一加密数据使用区块链加密信息进行加密得到;
15.将所述第一加密数据及数据采集设备的版本号信息发送至区块链baas服务端。
16.一种基于nbiot和区块链的数据传输系统,包括:
17.数据采集设备,通过nbiot平台与数据解析端相连,用于将待上链数据使用区块链加密信息进行加密得到第一加密数据,使用数据采集设备的原始密钥匙加密所述第一加密
数据得到第二加密数据;并将所述第二加密数据基于nbiot协议传送至数据解析服务端;
18.数据解析服务端,与数据采集设备平台以及区块链baas服务端相连,用于使用数据采集设备原始密钥解析所述第二加密数据以读取第一加密数据和数据采集设备的版本号信息;并将所述第一加密数据及数据采集设备的版本号信息发送至区块链baas服务端;
19.baas服务端,与区块链系统相连,用于根据接收到的数据采集设备的版本号信息查找所述数据采集设备对应的区块链密钥以解析所述第一加密数据并将所述待上链数据传至区块链系统。
20.优选的,上述的一种基于nbiot和区块链的数据传输系统,所述区块链加密信息基于非对称加密规则获得,具体为:
21.所述数据采集设备平台向区块链baas服端发送数据采集设备的版本信息以及设备id号;
22.区块链baas服务端根据所述版本信息以及设备id号生成密钥对,同时将密钥对中的公钥发送至所述数据采集设备平台。
23.优选的,上述的一种基于nbiot和区块链的数据传输系统,所述区块链baas服务端将版本信息、用户设备id号和密钥对持久化存储,并将用户设备与区块链系统中对应的私钥和钱包绑定配对。
24.优选的,上述的一种基于nbiot和区块链的数据传输系统,所述区块链加密信息基于对称加密规则获得,具体为:
25.所述数据采集设备平台向区块链baas服端发送数据采集设备的imei、imsi、版本号等信息;
26.区块链baas服务端根据imei、imsi、版本号等信息生成128位密钥;同时将密钥分发到所述数据采集设备平台。
27.优选的,上述的一种基于nbiot和区块链的数据传输系统,区块链baas服务端将imei、imsi、版本号与密钥持久化存储,并将用户设备与区块链系统中对应的私钥和钱包绑定配对。
28.优选的,上述的一种基于nbiot和区块链的数据传输系统,所述数据采集设备平台为用水信息采集平台,所述数据采集设备为水表。
29.优选的,上述的一种基于nbiot和区块链的数据传输系统,所述数据解析服务端与所述区块链baas服务端基于mqtt协议消息队列中间件实现。
30.因此,本发明的优点是:保证数据从终端采集到区块链传输过程中不被拦截甚至篡改,实现容易,通用性强,可适用于水表、电表等各种物联网场景。
附图说明
31.并入本文并形成说明书的一部分的附图例示了本发明的实施例,并且附图与说明书一起进一步用于解释本发明的原理以及使得所属领域技术人员能够制作和使用本公开。
32.图1例示了本发明实施例中的终端水表到区块链baas服务的传输节点以及相应协议体系示意图;
33.图2例示了本发明实施例中的基于kpi方案(非对称加密规则)秘钥生成分发示意图;
34.图3例示了本发明实施例中的基于硬件信息(对称加密规则)秘钥生成分发示意图;
35.图4例示了本发明实施例中的双重加密模型示意图。
36.将参照附图描述本发明的实施例。
具体实施方式
37.实施例
38.本实施例中的基于nbiot和区块链技术水表数据加解密模型包括水表数据从采集端到区块链baas服务传输链路中各个节点以及传输过程中所涉及多种协议共同组成的协议体系。
39.本实施例基于nbiot协议和区块链水表数据加解密模型,针对写入区块链数据(水表健康状态数据)提出了专门的数据协议标签,该方案较好的解决了前置解析服务如何在海量水表数据中区分哪些是需要写入区块链的数据。
40.本实施例中一种基于nbiot协议和区块链水表数据加解密模型,提出了两种可选加密规则,即:(1)非对称国密算法加密规则;(2)基于对称算法和硬件信息的加密规则。在选定上述加密规则的基础之上,提出一种双重加密模型保证待上链数据从水表端到区块链baas服务传输过程安全性和防篡改性。传统水表数据从水表端回传到物联网平台,在水表的内置芯片中对水表数据采用aes算法进行加密,在物联网平台对数据进行解密。本发明对此进行了改进,针对带有区块链标签数据,先采用(1)或(2)所述规则进行加密得到密文,在密文基础上在此采用aes算法进行加密。
41.下面结合附图1-4对本实施例作进一步说明。
42.如图1所示,本实施例提供的一种基于nbiot和区块链技术水表数据加解密模型,包括(1)水表数据从采集端到区块链baas服务传输链路中各个节点;(2)传输过程中所涉及多种协议共同组成的协议体系。
43.水表数据在终端智能水表产生,其传输过程包括三个步骤。
44.步骤1为水表数据经由nb卡回传到电信运营商nbiot平台,此传输步骤中,水表数据由nbiot协议进行封装;
45.步骤2为水表数据由nbiot平台回传到数据解析服务,此传输步骤中,水表数据由coap协议进行封装,且由解析服务周期性主动发送http网络请求进行抽取;
46.步骤3为水表数据由数据解析服务发送到区块链baas服务,在此步骤中,数据解析服务与区块链baas服务之间数据交互通过mqtt协议完成。
47.在本实施例中,步骤3的具体实施方法可选为以下步骤:
48.步骤301,由数据解析服务鉴别出待上链数据,将其推送到消息队列服务器;
49.步骤302,连接数据解析服务和区块链baas服务是基于mqtt协议消息队列中间件。该中间件采用具体实现技术是rabbitmq,采用的消息分发方式点对点模式,数据解析服务为生产者,区块链baas服务为消费者,生产者将数据推送到队列,消费者周期性主动拉取,确认之后将删除队列中的消息,一条消息只会发给一个消费者;
50.步骤303,由区块链baas服务从消息队列服务器上拉取水表数据,进行有效性和完整性检查,然后将其写入到区块链系统。
51.参见表1,表2所示,其中表1为数据解析服务器接收到的待解析数据,该数据为tlv格式,tlv数据格式中的tab字段标识数据类型,数据解析服务也是根据该字段来判定是为区块链数据,该字段为tag0x0a时,则该数据为区块链数据。tab的类型具体包括:tag1基础数据,tag2实时数据,tag3周期数据,tag4密集数据,tag5报警数据,tag6水表参数,tag7查询信息,tag8参数设置结果,tag9透传数据,tag0x0a区块链数据。如果是区块链数据,则将其发送到区块链baas服务,其他类型数据则发送到用水信息采集平台。
52.表1 tlv数据格式
[0053][0054]
表2是对区块链数据协议详细描述,imei和imsi是水表的标识字段,每一块水表的imei/imsi是唯一的;加密算法会根据批次号、imei或imsi来生成水表的秘钥;报警数据字段为具体要写入到区块链系统的信息。
[0055]
表2区块链数据协议描述(tag标签:0x0a)
[0056]
[0057][0058]
参见图2-4所示,本实施的核心包括提出两种可选加密规则,1、基于非对称国密算法加密规则;2、基于对称算法+硬件信息加密规则。进一步上述加密规则的基础之上,提出一种双重加密模型保证待上链数据从水表端到区块链baas服务传输过程安全性和防篡改性。本实施例中的加解密模型包括两个模块:(1)根据数据对敏感性要求分为基于kpi秘钥方案和基于硬件信息的秘钥方案;(2)根据相应的秘钥方案在水表端数据加密,在区块链baas服务端数据解密。
[0059]
参见图2所示,为基于kpi方案(非对称加密规则)秘钥生成分发流程,该方案采用ecc、sm2非对称加密算法对区块链数据加密。密钥对(公钥、私钥)由区块链baas服务按一水表一秘钥生成并分发公钥到厂商,设备使用公钥对区块链数据加密,数据传输到区块链服务使用私钥解密,具体流程如下所示:
[0060]
步骤1,厂商通过用水信息采集平台向区块链baas服务发送水表的版本批次号和水表的imei/imsi,版本号长度1字节,水表imei长度8字节;
[0061]
步骤2,区块链baas服务根据版本号、水表imei/imsi生成密钥对;
[0062]
步骤3,区块链baas服务将水表公钥分发给用水信息采集平台,再由平台转发到对应的水表;
[0063]
步骤4,区块链baas服务将版本号、水表imei和密钥对持久化存储,并将水表(imei、公钥、私钥)与水表在区块链系统(私钥,钱包)绑定配对。
[0064]
参见图3所示,为基于硬件信息(对称加密规则)秘钥生成分发流程。
[0065]
该方案采用aes、sm4对称加密算法对区块链数据加密。密钥由区块链baas服务按一水表一秘钥生成并分发秘钥到厂商,设备使用秘钥对区块链数据加密,数据传输到区块
链服务使用秘钥解密,具体流程如下所示:
[0066]
步骤1,采用aes或sm4加密算法对区块链数据加密;
[0067]
步骤2,用水信息采集平台提供imei、imsi、版本号等信息;
[0068]
步骤3,区块链baas服务根据imei、imsi、版本号等信息生成128位密钥;
[0069]
步骤4,区块链baas服务将密钥分发到用水信息采集平台;
[0070]
步骤5,区块链baas服务imei、imsi、版本号与密钥持久化存储,并将水表(imei、秘钥)与水表在区块链系统(私钥,钱包)绑定配对。
[0071]
参见图4所示,为区块链数据传输、加解密算法模型流程。该算法模型采用图2或图3所述加密规则对区块链数据加密,加密后区块链数据回传运营商平台、数据解析服务、区块链baas服务,最后再区块链baas服务中进行解密完成数据上链。具体流程如下所示:
[0072]
步骤1,(1)采用基于kpi方案加密,区块链数据使用区块链公钥加密,(2)采用基于硬件信息方案加密,区块链数据使用区块链秘钥加密,得到区块链加密数据;
[0073]
步骤2,区块链加密数据、版本号等信息和其他基础数据一起使用水表原始密钥加密,得到水表加密数据;
[0074]
步骤3,水表加密数据通过电信coap平台传送到用水采集平台数据解析服务;
[0075]
步骤4,数据解析服务使用水表原始密钥解析加密数据,将区块链加密数据及版本号、imei/imsi信息取出;
[0076]
步骤5,将步骤4取出的数据推送到区块链bass服务;
[0077]
步骤6,bass服务根据水表imei/imsi找到对应密钥解密,实现数据上链。
[0078]
由上述描述可知,本实施例中的基于nbiot和区块链技术水表数据加解密模型包括水表数据从采集端到区块链baas服务传输链路中各个节点以及传输过程中所涉及多种协议共同组成的协议体系。
[0079]
本实施例基于nbiot协议和区块链水表数据加解密模型,针对写入区块链数据(水表健康状态数据)提出了专门的数据协议标签,该方案较好的解决了前置解析服务如何在海量水表数据中区分哪些是需要写入区块链的数据。
[0080]
本实施例中一种基于nbiot协议和区块链水表数据加解密模型,提出了两种可选加密规则,即:(1)非对称国密算法加密规则;(2)基于对称算法和硬件信息的加密规则。在选定上述加密规则的基础之上,提出一种双重加密模型保证待上链数据从水表端到区块链baas服务传输过程安全性和防篡改性。传统水表数据从水表端回传到物联网平台,在水表的内置芯片中对水表数据采用aes算法进行加密,在物联网平台对数据进行解密。本发明对此进行了改进,针对带有区块链标签数据,先采用(1)或(2)所述规则进行加密得到密文,在密文基础上在此采用aes算法进行加密。
[0081]
本实施例中,尽管为使解释简单化将上述方法图示并描述为一系列动作,但是应理解并领会,这些方法不受动作的次序所限,因为根据一个或多个实施例,一些动作可按不同次序发生和/或与来自本文中图示和描述或本文中未图示和描述但本领域技术人员可以理解的其他动作并发地发生。
[0082]
注意到,说明书中对“一个实施例”、“实施例”、“示例实施例”、“一些实施例”等的引用指示所描述的实施例可以包括特定特征、结构或特性,但是每个实施例可以不必包括所述特定特征、结构或特性。而且,这样的短语不必指代同一实施例。此外,当结合实施例描
述特定特征、结构或特性时,无论是否明确描述,结合其他实施例来实现这样的特征、结构或特性将在所属领域的技术人员的知识范围内。
[0083]
提供对本公开的先前描述是为使得本领域任何技术人员皆能够制作或使用本公开。对本公开的各种修改对本领域技术人员来说都将是显而易见的,且本文中所定义的普适原理可被应用到其他变体而不会脱离本公开的精神或范围。由此,本公开并非旨在被限定于本文中所描述的示例和设计,而是应被授予与本文中所公开的原理和新颖性特征相一致的最广范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1