logo好方法网

一种基于区块链的车联网节点数据安全通信方法


技术摘要:
本发明涉及基于区块链的车联网节点数据安全通信方法,是将整个网络划分成大小相同的蜂窝区域,并以区域为单位设计车联网联盟链和区域间公链,确保数据可追溯性,提高数据共识效率;在车辆数据通信过程中,采用车辆身份认证保证节点间的相互信任,并根据数据的紧急性不  全部
背景技术:
: 近年来,智能车辆越来越占据汽车市场的重要位置,车联网是智能车辆的核心技 术之一,其发展可促进智能交通并提供方便的信息服务。但是定期向周围的邻居广播其当 前位置、速度和加速度等信息,这对车辆数据安全构成潜在威胁。现有的车联网架构都是中 心化,依赖可信的第三方实体,对车辆信息进行集中管理。然而,一旦中心化实体被攻击,将 会带来严重的数据安全风险,造成身份、位置、社会地位等隐私泄露。且随着传感器技术和 物联网技术的不断发展,车联网节点数据量剧增,中心化系统的架构对车联网节点数据进 行集中管理的方式使得中心实体负载过大,面临着单点故障的风险。同时,由于车联网的高 移动性、易变性等特质,也为车辆通信系统的大数据存储、智能管理和信息安全带来了巨大 挑战。因此急需研究去中心化的车联网数据通信结构,来保证用户数据的安全。 区块链技术是一种完全分布式的公共数据库或分类帐,适用于任何类型的数据交 换,具有去中心化、透明性、防篡改性等特点,因此国内外学者提出将区块链技术引入车联 网。其中,部分学者不考虑区域的划分,研究基于公有链的车联网数据通信方法,如Jiang  T 等人考虑到大数据的分布式安全存储和车辆本身可以记录所有信息,根据数据类型设计了 五类不同功能的独立区块链,提出了车辆区块链数据向外传输方法。Cebe  M等人提出了许 可区块链方法,管理所收集的车辆相关数据,设计了一个零碎分类账,用于存储车辆维护信 息、历史记录,汽车诊断报告等数据。王笠燕通过增加奖励机制,鼓励簇首主动维护、生成区 块,软件服务提供商、汽车制造商、自动驾驶汽车和云存储器四种节点共同构成一个小世界 的半分布式P2P(Peer  to  Peer)网络模型。Zhang  L等人提出了一种基于区块链的安全数据 共享方法,鼓励和激励节点参与,奖励广播公告消息和块生成的车辆加密货币。同时,部分 学者以联盟链为基础,考虑将车辆的存储和计算转移至作为记账节点执行智能合约的路侧 单位RSU(Road  Side  Unit),研究车联网数据通信系统。如Kang  J等人开发了一种安全的 P2P数据共享系统,公开审计和存储共享数据和数据共享记录。Zhang  X等人提出了一种基 于联盟区块链的数据安全共享和存储系统,根据数据贡献的频率使用数据硬币激励车辆共 享数据。王文琴提出基于区块链的去中心化的网络环境构建和共享方法,实现开放环境下 的自动驾驶云控服务的安全共享、自动驾驶相关数据的安全共享。但是这些方法没有考虑 车联网节点数量庞大和移动性,存在区块链的存储维护困难和数据通信效率较低等问题。 因此部分学者侧重将区块链网络划分区域,研究多区域下基于区块链的车联网数 据通信方法,如Madhusudan  S等人将车联网划分为若干个区域,每个区域设定一条公有链, 提出了一种区块链分支算法。汤春明和张永乐等人以城市为单位,将车联网设计为一个联 盟链,并将RSU节点分为中心节点和边界节点,实现各个城市车联网联盟链之间的数据交 换。但是这些方法没有考虑数据的分类、较难运用区块链技术实时高效处理车联网大规模 5 CN 111601258 A 说 明 书 2/7 页 节点的数据。 综上所述,现有基于区块链的车联网节点数据安全通信方法存在存储维护困难、 通信效率低、实时处理困难、存在安全隐患等问题。有鉴于此,本案由此而生。
技术实现要素:
: 鉴于上述现有方法存在着不足,本发明考虑蜂窝网络框架,提出一种基于区块链 的车联网节点数据安全通信方法,具有快速共识、数据安全、隐私保护、轻量级存储、高效通 信等特点,从而解决用户的身份验证和隐私问题,可保护车联网节点实时产生的数据,更适 用于车联网通信环境。 为了实现上述发明目的,本发明所采用的技术方案为: 一种基于区块链的车联网节点数据安全通信方法,包括如下步骤: 步骤1):将车联网划分成大小相同的蜂窝式区域,以区域为单位设计车联网联盟 链和区域间公链,通信基站、路边嵌入式设备以及车辆节点组成车联网联盟链,通信基站、 路边嵌入式设备的边缘侧设备称为边缘节点; 步骤2):车联网节点执行基于云服务器和验证组的节点身份认证,认证成功允许 其访问网络,继续执行步骤3);认证失败拒绝访问,重新执行步骤2); 步骤3):车辆节点的车载传感器对车辆进行监听,根据产生的数据进行哈希计算, 并生成数字签名和数据包;将产生的数据分为普通数据和紧急数据,普通数据以包括车辆 的位置、速度、方向、刹车状态、有效时间为主的车辆自身基本安全信息的数据,而紧急数据 以包括交通事故、道路拥堵状态、实时路况、有效时间为主的特殊信息数据;判断产生数据 的类型,若为普通数据则执行步骤4),若为紧急数据则执行步骤7); 步骤4):周围车辆接收到普通数据包,验证其数字签名;若验证通过,执行步骤5), 若验证失败,则删除当前数据后重新执行步骤3); 步骤5):车辆节点将普通数据包在所在区域内广播,并提交给所在区域内的主节 点,主节点将接收到的数据写入车联网区块的请求队列,存入区域通信交易列表并广播给 区域内的其他主节点;车联网区块的结构由区块头和区块体构成,区块头包括时间戳、随机 数、当前区块的哈希值、父区块哈希值和默克尔树根哈希值;区块体包括交易区块数据,交 易区块数据由若干数据块构成,两两交叉计算哈希值;交易区块的数据块包含可存储的若 干车辆数据条目和数据头信息,每个数据条目中的每条数据都包含时间戳、数据所有者公 钥、元数据和条目哈希,元数据包括普通数据,条目哈希是每一个数据条目中时间戳、数据 所有者公钥和元数据三类数据的总哈希值;数据头信息包含时间戳和数据块的哈希值; 步骤6):车辆节点所在区域内除了选取主节点外,还选取部分节点作为副本节点, 若主节点存在恶意行为,则在副本节点中重新挑选节点作为主节点;确定好主节点后,车联 网节点按照一致性协议来执行区域内共识机制,完成车联网区块共识;所在区域内的主节 点群中最先被验证通过的车联网区块会被保留,而其他主节点生成的车联网区块则被删 除,然后执行步骤10); 步骤7):车辆节点所在区域中的边缘节点接收到紧急数据包后,验证其数字签名, 若验证通过,则计算对该紧急数据感兴趣的区域,广播通知感兴趣区域间所有的车辆节点, 然后执行步骤8);若验证失败,则删除当前数据,跳转至步骤3); 6 CN 111601258 A 说 明 书 3/7 页 步骤8):车联网节点执行区域间共识机制,即将紧急数据提交给车联网公链的主 节点,车联网公链的主节点将接收到的紧急数据写入新车联网区块的请求队列中,并存入 公链通信交易列表内,且广播给感兴趣区域间的其他主节点; 步骤9):感兴趣区域间的主节点群中最先被验证通过的车联网区块会被保留,而 其他主节点生成的车联网区块则被删除,继续执行步骤10); 步骤10):车联网区块生成后,在每个车联网节点的列表上对数据进行更新。 进一步,所述步骤2)中的节点身份认证方法具体如下: 2.1)云服务器存储和管理车联网节点的出厂信息和真实身份,并管理认证中心CA 颁发的车联网节点假名; 2.2)车联网节点被注册后获得由认证中心CA颁发的证书,该证书包括假名、一对 公私钥以及两个哈希值; 2.3)车联网节点启动后,发送请求给CA;CA计算假名 公钥的哈希值,以及计算真 名 证书的哈希值;如果这两个哈希值相同,则CA通过车联网节点认证,执行步骤2.4);若两 个哈希值不相同则认证失败,CA记录该节点并拒绝其访问网络,重新执行步骤2); 2.4)车联网节点通过云服务器认证后可加入区块链进行数据通信,区块链网络在 各个区域内随机挑选边缘节点和车辆节点组成验证组,已经入选成为验证组的节点在下次 随机组合过程中,将不会被考虑直到所有可能的组合都遍历过为止; 2.5)如果车辆节点不是从邻居区域移动到当前所在区域的,执行步骤2.6);如果 车辆节点是从邻居区域移动到当前所在区域的,该车辆节点需通过验证组的身份认证后才 可以继续参与数据通信;若未通过验证组的认证,则区块链网络停止该车辆节点参与数据 通信的权利,重新执行步骤2.4); 2.6)如果车辆节点是新加入到区块链网络的,则该车辆节点所在的主节点发送验 证请求到其他区域的验证组;若在各个区域中都未通过验证,即认为该车辆节点的身份验 证成功,可以参与数据通信;否则不能参与数据的通信,重新执行步骤2.4)。 进一步,所述步骤2.4)中,车辆节点和边缘节点会在其通信列表中保存1个小时内 通信过的节点信息;若列表中的节点信息超出时间范围,则会被删除;边缘节点不仅相互之 间进行可通信列表的更新,而且还与车辆节点进行通信并更新可通信列表;边缘节点与车 辆节点进行通信时,边缘节点只更新车辆节点中的相同节点信息。 进一步,所述步骤2.5)中,从邻居区域移动到当前所在区域的车辆节点身份验证 方式为:车辆节点当前所在区域共同选举出的主节点向该车辆节点之前所在的区域及其周 围区域的验证组发送验证请求,验证组中只要有1个边缘节点或若干个车辆节点的可通信 列表可查询到该车辆节点信息,即认为通过该区域的验证;若该车辆节点已通过跨区之前 所在区域的验证,且在其周围区域中未能通过验证,即认为该车辆节点的身份验证成功,可 以继续参与数据通信。 进一步,所述步骤8)中区域间共识机制方法如下: 8.1)主节点群中的主节点发送准备消息到其他主节点,统一收集其他主节点返回 的认可消息; 8.2)若主节点收到的认可消息数量超过主节点群中主节点数量的2/3,则表明其 他主节点的验证通过,此时共识达成,并将车联网区块写入到全局主链,继续执行步骤 7 CN 111601258 A 说 明 书 4/7 页 8.3);若主节点接收到的认可消息不满足上述要求,则共识失败,程序退出; 8.3)如果区块链网络发现某一主节点为恶意节点时,区块链网络随机选取副本节 点中的一个节点取代当前的主节点,然后继续完成当前共识;若主节点未发现异常则不操 作。 进一步,所述步骤10)中车联网区块数据的更新方法如下:每个车联网节点上都备 份了当前区块链网络的数据,以及一张包含每个区块哈希值的列表;每当生成一个车联网 区块时,则在该列表中更新当前车联网区块的哈希值;当车辆节点从一个区域移动到另一 个区域时,删除在原有区域的区块链信息,并更新下载当前区域网络的区块链信息和数据; 当车辆节点存储量达到阈值时,则从头开始判断车联网区块的有效期; 如果区块链开头的车联网区块有效期已超过,则删除该超时的车联网区块中的所 有数据;如果区块链中间的车联网区块的有效期已超过,此时删除该车联网区块的数据,而 保留车联网区块的哈希值,然后重新跳转至步骤3)。 本发明的有益效果主要表现在: (1)本发明将整个网络划分成大小相同的蜂窝区域,并以区域为单位来设计车联 网联盟链和区域间公链,可确保数据可追溯性,提高数据共识效率; (2)在车辆数据通信过程中,采用车辆身份认证,保证节点间的相互信任,同时根 据数据的紧急性不同,将数据进行分类,数据分成区域内通信的普通数据以及在多个区域 间通信的紧急数据,并针对不同的数据分类,提出了不同的区块结构,提高了数据共识的效 率; (3)还考虑到车联网节点的运动情况,采用改进实用拜占庭容错共识方法,实现车 联网节点的数据安全通信,能够抵御集中式数据存储带来的数据安全风险。 总之,本发明针对车联网通信时存储维护困难、通信效率低、实时处理困难、存在 安全隐私等问题,可实现快速共识,能够保护数据安全和信息隐私,并降低了数据的存储空 间,提高了通信效率,相对于现有方法更适用于车联网通信环境中使用。 以下通过附图和
下载此资料需消耗2积分,
分享到:
收藏