1.本发明涉及车联网终端。
背景技术:2.目前市场上已有的车联网终端(tbox)上传数据基本都为明文数据,且数据存在被篡改的风险,对于这些数据,数据使用方无法确认数据的有效性,数据无法溯源。若tbox上报的数据被篡改或人为发送错误数据至tsp(汽车远程服务提供商)平台,平台无法确认数据是否来自车辆,这样的话,这些数据也就失去了可运营的价值。
技术实现要素:3.本发明的目的在于提供一种支持区块链的车联网终端,支持区块链技术,对车辆数据进行签名上传,确保数据的有效性。
4.实现上述目的的技术方案是:
5.一种支持区块链的车联网终端,包括:主控芯片、通讯模组和安全加密芯片,其中,
6.所述主控芯片持续采集车辆数据,加入时间戳,上报至所述通讯模组;
7.所述安全加密芯片验证所述通讯模组有效性,并对车辆数据进行hash(哈希值)计算,得到hash值;
8.所述通讯模组根据hash值和车辆数据,构建一次交易数据;
9.所述安全加密芯片对一次交易数据计算签名数据;
10.所述通讯模组根据签名数据,构建二次交易数据。
11.优选的,所述通讯模组将二次交易数据和车辆数据传输给tsp平台,
12.tsp平台将二次交易数据传至区块链平台,形成区块链数据;
13.业务存证平台从通讯模组获取车辆数据,从区块链平台获取区块链数据,进行验证。
14.优选的,所述安全加密芯片包括:认证模块、hash模块和签名模块,其中,
15.所述认证模块接收到来自所述通讯模组的认证请求,计算有效性,返回认证结果;
16.认证通过后,所述安全加密芯片创建密钥并返回给所述通讯模组;
17.所述hash模块对车辆数据进行hash计算,返回hash值;
18.所述通讯模组利用密钥对车辆数据打包,结合hash值构建一次交易数据;
19.所述签名模块对一次交易数据计算签名数据。
20.优选的,密钥为ecdsa(椭圆曲线数字签名算法)密钥。
21.优选的,采用以太坊编码协议构建一次交易数据。
22.优选的,构建二次交易数据,包括:
23.将签名数据进行拆解v/r/s;
24.将一次交易数据加入v/r/s后以太坊编码协议构建二次交易数据。
25.优选的,所述主控芯片通过can(控制器域网)收发器采集车辆数据。
26.本发明的有益效果是:本发明通过加入支持区块链技术,对车辆数据进行签名上传,有效防止数据被篡改,同时使得tbox上报的所有数据具有可追溯性。
附图说明
27.图1是本发明的车联网终端的结构框图;
28.图2是本发明的车联网终端的工作流程框图;
29.图3是本发明的车联网终端的业务流程示意图。
具体实施方式
30.下面将结合附图对本发明作进一步说明。
31.请参阅图1-2,本发明的支持区块链的车联网终端,包括:主控芯片(mcu)1、通讯模组(mpu)2和安全加密芯片(se)3。
32.主控芯片1通过can收发器持续采集车辆数据,通过rtc(实时时钟)加入时间戳,上报至通讯模组2。其中,通讯模组2与主控芯片1通过uart(universal asynchronous receiver/transmitter,通用异步收发传输器)和spi(serial peripheral interface,串行外设接口)通信,并且主控芯片1通过gpio(通用输入输出)口控制通讯模组2的供电与重启,备用电池通过电源电路分别给主控芯片1和通讯模组2供电,主控芯片1通过i2c(集成电路总线)连接安全加密芯片3,可对数据进行加解密。通讯模组2通过spi连接安全加密芯片3,对数据进行hash校验和数据签名。
33.另外,还包括电源模块,电源模块包括主电源和备用电池,若发生事故时,主电源损毁,立即启用备用电池,确保数据上传正常进行。
34.安全加密芯片3验证通讯模组2有效性,并对车辆数据进行hash计算,得到hash值。通讯模组2根据hash值和车辆数据,构建一次交易数据。安全加密芯片3对一次交易数据计算签名数据。通讯模组2根据签名数据,构建二次交易数据。
35.通讯模组2将二次交易数据和车辆数据传输给tsp平台。tsp平台将二次交易数据传至区块链平台,形成区块链数据;业务存证平台从通讯模组2获取车辆数据,从区块链平台获取区块链数据,进行验证。
36.安全加密芯片3包括:认证模块、hash模块和签名模块。
37.认证模块接收到来自通讯模组2的认证请求,计算有效性,返回认证结果。对于验证无法通过的通讯模组2,无法使用安全加密芯片3中应用。
38.认证通过后,安全加密芯片3创建密钥并返回给通讯模组2。
39.hash模块对车辆数据进行hash计算,返回hash值。
40.通讯模组2利用密钥对车辆数据打包,结合hash值构建一次交易数据;
41.签名模块对一次交易数据计算签名数据。
42.具体地,如图3,如下:
43.1)根据自定义认证算法,通讯模组2发送认证请求至安全加密芯片3,安全加密芯片3根据算法计算通讯模组2有效性,并应答认证结果。
44.2)本方案使用fiscobcos(金盟链),算法使用ecdsa,在第一次使用安全加密芯片3时,通讯模组2需发送指令至安全加密芯片3,创建ecdsa密钥;
45.3)通讯模组2接收车辆数据,对数据进行协议打包(如gb32960协议),并对打包数据进行交易数据构建。
46.设置data:
47.a)使用keccak256计算"savehash(string,string)"的hash,取前四个byte得到值0x130a8182;
48.b)计算车辆打包的原始数据传入se计算hash作为value;
49.c)上述hash值再次传入se计算的hash作为id;
50.d)将0x130a8182、id编码、value编码组合到一起,得到data值(id编码在前,value在后);
51.e)使用abi(全称application binary interface,是调用智能合约函数以及合约之间函数调用的消息编码格式定义)编码,对上述结果进行编码;
52.f)根据以太坊编码协议(rlp),构建交易数据。
53.4)mpu将上述rlp数据传入se,计算签名数据。将得到的签名数据进行拆解v/r/s。将上述rlp数据加入v/r/s后再次计算rlp,再次构建交易数据。
54.5)mpu将上述构建的交易数据和元数据上传至tsp平台。
55.6)业务存证平台可根据业务需求,分别从区块链平台和tsp平台获取存证数据和元数据,元数据可通过计算hash和区块链hash做比对,确认数据的有效性。再经过对区块链数据的验签,确保数据由tbox产生。
56.以上实施例仅供说明本发明之用,而非对本发明的限制,有关技术领域的技术人员,在不脱离本发明的精神和范围的情况下,还可以作出各种变换或变型,因此所有等同的技术方案也应该属于本发明的范畴,应由各权利要求所限定。
技术特征:1.一种支持区块链的车联网终端,其特征在于,包括:主控芯片、通讯模组和安全加密芯片,其中,所述主控芯片持续采集车辆数据,加入时间戳,上报至所述通讯模组;所述安全加密芯片验证所述通讯模组有效性,并对车辆数据进行hash计算,得到hash值;所述通讯模组根据hash值和车辆数据,构建一次交易数据;所述安全加密芯片对一次交易数据计算签名数据;所述通讯模组根据签名数据,构建二次交易数据。2.根据权利要求1所述的支持区块链的车联网终端,其特征在于,所述通讯模组将二次交易数据和车辆数据传输给tsp平台,tsp平台将二次交易数据传至区块链平台,形成区块链数据;业务存证平台从通讯模组获取车辆数据,从区块链平台获取区块链数据,进行验证。3.根据权利要求1所述的支持区块链的车联网终端,其特征在于,所述安全加密芯片包括:认证模块、hash模块和签名模块,其中,所述认证模块接收到来自所述通讯模组的认证请求,计算有效性,返回认证结果;认证通过后,所述安全加密芯片创建密钥并返回给所述通讯模组;所述hash模块对车辆数据进行hash计算,返回hash值;所述通讯模组利用密钥对车辆数据打包,结合hash值构建一次交易数据;所述签名模块对一次交易数据计算签名数据。4.根据权利要求3所述的支持区块链的车联网终端,其特征在于,密钥为ecdsa密钥。5.根据权利要求3所述的支持区块链的车联网终端,其特征在于,采用以太坊编码协议构建一次交易数据。6.根据权利要求5所述的支持区块链的车联网终端,其特征在于,构建二次交易数据,包括:将签名数据进行拆解v/r/s;将一次交易数据加入v/r/s后以太坊编码协议构建二次交易数据。7.根据权利要求1所述的支持区块链的车联网终端,其特征在于,所述主控芯片通过can收发器采集车辆数据。
技术总结本发明公开了一种支持区块链的车联网终端,包括:主控芯片、通讯模组和安全加密芯片,所述主控芯片持续采集车辆数据,加入时间戳,上报至所述通讯模组;所述安全加密芯片验证所述通讯模组有效性,并对车辆数据进行hash计算,得到hash值;所述通讯模组根据hash值和车辆数据,构建一次交易数据;所述安全加密芯片对一次交易数据计算签名数据;所述通讯模组根据签名数据,构建二次交易数据。本发明支持区块链技术,对车辆数据进行签名上传,确保数据的有效性。的有效性。的有效性。
技术研发人员:王营 耿炎 闫楠
受保护的技术使用者:芯安微众(上海)微电子技术有限公司
技术研发日:2022.06.21
技术公布日:2022/11/1