1.一种轻量级车联网分层区块链隐私保护方法,其特征在于,包括如下内容:
1)采用层次型分布式架构构建车联网分层区块链:包括云中心、终端层和边缘层;所述云中心提供高性能的计算服务能力和网络服务;所述终端层由车辆与对应的路边单元构成,车辆作为终端层的主要节点通过车载传感器收集周围环境信息并通过通信模块传输共享信息,所述终端层按车辆网络覆盖的地理区域划分为多个终端子区域,每个终端子区域都分别构建一个终端区块链;所述边缘层由路边设施和边缘服务器共同构建,存储每个终端区块链中交易的数据快照,边缘区块链用hashgraph结构建立多条平行区块链,每条链既能存储一个终端子区域对应的终端区块链中交易信息,又能同步其他终端子区域的交易信息,不同终端子区域间借助边缘区块链以实现跨区域的数据共享;
2)边缘区块链架构下的车辆身份隐私认证:依托构建的边缘层区块链网络,脱离中心式认证模式,由边缘区块链充当受信任的第三方角色,终端层车辆节点的身份认证注册被视为边缘区块链网络上的一种交易,采用动态生成车辆凭证的方法对车辆进行身份隐私保护验证,通过验证的车辆接入到边缘设施所管辖的终端区块链,注册验证信息存放于边缘区块链上;终端层的车辆节点首先与覆盖它们的路边单元直接交互,发送注册和认证请求,然后,路边单元再将认证请求发送至边缘区块链,以获得其他边缘设备的验证和确认,最后,借助双线性对的密码学知识对通过验证请求的车辆节点进行身份认证;
3)边缘区块链架构下的数据隐私保护:引入属性加密技术抵抗边缘服务器泄露敏感数据隐私的可能性,通过多个边缘服务器联合生成用户属性密钥,边缘区块链上所有节点包括授权节点均无法完整获得用户属性密钥,以避免密钥的外泄;所述属性加密技术,即在密文中引入随访问结构的增大呈线性增长的线性访问结构,由访问结构生成密钥策略,只有用户的属性符合密文的访问结构才能解密此密文,实现共享数据的机密性和细粒度快速访问控制。
2.根据权利要求1所述的一种轻量级车联网分层区块链隐私保护方法,其特征在于,所述步骤2)包括:
2.1)车辆用户Ui选择一个用户标识IDi,并将该标识转发给所属边缘设施BSj;
2.2)边缘设施BSj接收到用户标识IDi,将其广播给边缘区块链网络上所有其他边缘设施以待验证;一旦大多数节点通过该用户提交的验证请求,BSj就会将网络的公共参数转发给用户Ui,公共参数包括如下内容:{H1,H2,H3,P,p,e,G1,G2,g,Gen(·),Rep(·),γ}其中,H1、H2、H3为哈希函数,P为加法循环群G1的生成元,G2是循环乘法群,p是G1、G2和g=e(P,P)∈G2的素数阶,Gen()和Rep()分别是模糊提取器生物密码系统的生成函数和再生函数,γ是模糊提取器的容错率;
2.3)用户Ui在接收到公共参数后,选择a∈Zp并计算其密钥Si:
‑1
Si=(a+H1(IDi) )P
其中,Zp是模p的整数集合,a为随机数;
其公钥计算为:PKi=SiP;
用户Ui将计算出的公钥PKi转发给边缘设施BSj;
2.4)使用轻量级椭圆曲线密码体制,为边缘计算场景下的车辆节点动态生成其公钥和数字签名,以增强车辆身份隐私;
2.5)边缘设施BSj将用户Ui的包含公钥、身份IDi、数字签名的增强身份向边缘区块链进行注册及广播,以便进一步添加到分布式账本中已验证用户的跟踪中;边缘设施BSj转发网络内所有边缘设施的身份和公钥给用户Ui:[(BS1,PK1),(BS2,PK2),...,(BSj,PKj)];
2.6)用户Ui在收到边缘设施的身份及其各自的公钥后,利用模糊提取器生物密码系统的生成函数计算出(αi,βi)←Gen(fi),并加密和安全保存为以下参数:其中,fi为用户Ui的生物特征信息,利用其作为生成函数Gen(.)的输入,得到一个生物* *密钥αi和一个公开的再生参数βi,当某个输入fi 满足|fi ‑fi|<γ时,模糊提取器再生函数* *Rep(.),由fi和βi计算出αi,即αi←Rep(fi ,βi);这样从用户的生物特征中提取安全的生物密钥,无需直接存储敏感的信息;利用得到的生物密钥继续生成哈希密钥H1(αi)来对身份IDi、密码PWi和密钥Si的连接串加密生成di;反之,解密di可得到IDi、PWi,利用其生成哈希密钥H2(IDi||PWi)对收集到的边缘设施身份BSj和公钥PKj加密生成Di;从而保证移动终端即使在攻破的情况下也无法访问加密的信息。
3.根据权利要求2所述的一种轻量级车联网分层区块链隐私保护方法,其特征在于,所述步骤2.4)包括:
2.4.1)公钥的初始化:将密钥Si、密码PWi和生物特征fi作为输入,当给定的凭据正确,验证当前公钥的有效性时,生成元Pi将在尚未生成的交易中被使用,Initiate(Si,PWi,fi)→(Pi,Generate);
2.4.2)公钥的生成:若公钥过期期限λ已超期,Pi处于无效状态,则重新生成公钥
2.4.3)公钥的有效验证:根据随机生成公钥的思想,没有两个连续的公钥是相同的,对过期的公钥PKi和新生成的公钥 进行有效验证,若 则认为 有效,否则重新返回初始化;
2.4.4)数字签名的初始化:根据步骤2.4.1)‑2.4.3)的公钥随机生成算法,得到所需的密钥对{Si,PKi};
2.4.5)数字签名的生成:根据给定用户身份IDi、私钥Si、公钥PKi和用户发起的每一次交易消息m,分别计算出数字签名所需的参数F和D,并生成消息m上的签名Sigi=(F,D);签名参数的生成过程考虑交易的索引信息It;F和D的计算如下:It=H3(m),F=(It.H4(IDi).Pi)∈G1
D=(F.Pi.z.Si)∈Zp
其中,H(.)为哈希函数,z为随机数;
2.4.6)数字签名的验证:如果满足双线性配对函数,便证实所持有的签名是有效的,接收当前所持有的认证交易索引和签名,否则拒绝该认证交易。
4.根据权利要求1所述的一种轻量级车联网分层区块链隐私保护方法,其特征在于,所述步骤3)包括:
3.1)多授权中心的选择:将边缘区块链的持有者即所有路边单元节点看成多授权中心的候选项集,按随机概率每次从候选项集中选择n个节点组成授权机构,授权机构内分为授权节点和监督节点,授权节点负责初始化,生成属性密钥SK,监督节点负责审查授权节点的工作以及审查用户的属性集合;
3.2)由选出的多个授权节点联合产生属性密钥;
3.3)在密文中引入线性访问结构LSSS,设ap=(A,ρ,T)代表一种访问策略,其中A是l×n的秘密矩阵,ρ是一个将访问策略中的属性映射到属性全集中属性序列值的函数,T={aρ(1),...,aρ(l)}是属性值的集合;随机选取向量 其中sv是要分享的秘密值, 记为访问策略矩阵A的第i行向量,计算 作为访问策略中每一个属性ρ(x)的秘密分享值;若{ωx}x∈A为一组恢复系数,则有Σρ(x)∈AωxAx=(1,0,...,0),从而可以恢复秘密分享值。
5.根据权利要求4所述的一种轻量级车联网分层区块链隐私保护方法,其特征在于,所述步骤3.2)具体包括:
3.2.1)由多授权中心候选项集中的某个授权节点选择随机数t重新生成新的密钥,以用于最终生成用户的属性密钥,并使用用户公钥对随机数t加以保护,新产生的密钥和加密后的随机数t被存储到边缘区块链中;
3.2.2)由多授权中心候选项集中的另一个授权节点利用随机数t产生的密文对用户属性集的哈希值进行加密封装,以防止使用与用户不匹配的属性集生成属性密钥;
3.2.3)在用户端,利用用户私钥解密加密的属性集,由此判别用户与属性集是否相匹配,匹配成功则利用新生成的密钥为用户生成属性密钥。