Page 463 - 《软件学报》2026年第2期
P. 463
942 软件学报 2026 年第 37 卷第 2 期
RID 向本地 VMC RID
b) 为本区域车辆生成部分私钥: 当车辆发送真实身份 请求生成部分密钥时, 在确认了
的合法性后, 为其分配区块链地址、生成部分私钥以及设定初始信誉值, 并上传到区块链. 此外, VMC 在本地数据
<Addr,RID>, 保证方案的可追溯性.
库存储车辆地址和真实身份的键值对列表
c) 信誉票证 CT 发放: 为保证传输信息的机密性, 本文设计全局加密信誉票证 CT , 并设置了短暂的时间窗口.
在不同的时间段, VMC 需要为信誉值大于阈值的车辆发放最新的信誉票证.
d) 反馈结果收集: VMC 需要收集来自车辆的评价反馈结果, 并在验证反馈者身份的合法性后将反馈结果上
传到区块链上, 调用部署在区块链上的智能合约计算出车辆最新的信誉值.
(2) 车辆 V k (vehicle): 车辆装有内置的车载单元 OBU (on board unit), 具备一定的计算和存储能力, 可以存储车
辆的隐私数据, 并提供简单的密码运算. 假设 OBU 支持 5G 网络协议, 是一种防篡改的设备, 它为车辆提供无线通
信能力. 每个车辆作为轻节点加入区块链, 具有访问区块链上数据的权限.
(3) 区块链 (blockchain): 本文采用区块链的类型是联盟链, 它由每个区域的 VMC 共同维护, 区块链上存储有
<Addr,RS > 列表, 通过区块链的共识算法, 每个区域的 VMC 能同步车辆的 <Addr,RS > 信息以及每个域的 VMC
公钥. 另外, 通过区块链上部署的智能合约可以实现信誉值更新等.
(4) 5G 基站 (5G base station, 5G-BS): 为 IoV 提供高速率的信息传输, 由于 5G 基站的存在, 可以实现 V2VMC
和 V2V 之间的快速通信. 假设 5G 网络能够很好地覆盖所有区域, 且传输速度足够快.
3.2 系统假设
本文提出的半分布式认证加密方案基于一些合理的假设, 在一定条件下可以满足. 这些假设分别如下.
(1) 存储在车辆 OBU 中的秘密数据不可能被其他人获得, 也不能被篡改.
(2) 由 5G-BS 提供的 5G 网络足以覆盖所有地域, IoV 的各部分时间保持同步.
(3) 大部分车辆在与其他车辆通信后做出的反馈是客观诚实的.
4 方案设计
本文所提的方案总共包括系统初始化、密钥生成、加密签名、解密验证和信誉值更新这 5 个阶段. 方案整体
流程如后文图 2 所示. 本文中使用的符号见后文表 2.
4.1 系统初始化
(1) 假设共有 N 个 VMC, 组成的集合表示为 {VMC i |i = 1,2,...,N}. 各区域的 VMC 通过共识机制协商生成椭
圆曲线 E、安全参数 τ、大素数 p和q, 随机种子 Seed 以及 3 个抗碰撞 Hash 函数 H 1 , H 2 , h.
(2) VMC i 选择随机数 sk i ∈ Z 作为自己的私钥, 计算对应的公钥 P Pub-i = sk i P. 初始化生成的系统公开参数为
∗
q
SP = {p,q,P,H 1 ,H 2 ,h,P Pub-1 ,P Pub-2 ,...,P Pub-i }.
(3) 各方 VMC 通过共识算法选举代表成员 (假设选择 VMC 1 ) 部署如算法 1 所示的信誉值更新合约, 将系统
参数 SP 上传到区块链.
(4) 各区域的 VMC 利用协商的随机种子 Seed, 使用如图 3 所示的反向哈希链生成信誉票证集合 {CT i |i =
2
i i h (Seed) = h(h(Seed)) = CT n−1 . 另外, 为了加密的安全
1,2,...,n}, 其中 h (Seed) 表示对 Seed 执行过 次哈希运算, 如
性, CT i 仅在时间范围内有效, 例如在时间 T 0 −T 1 内的有效信誉票证为 CT 1 . VMC 定期为信誉值大于阈值的合法
用户发放最新的信誉票证 CT i , 用户可以通过检查等式 h i−(i−k) (CT i ) = CT i−k 是否成立来检查 VMC 更新的 CT i 是否
′
有效. 当 CT i 全部耗尽的时候, VMC 协商新的 Seed 执行相同的操作进行下一轮的加密通信.
4.2 密钥生成
i
车辆集合定义为 {V i,k |i = 1,2,...,N;k = 1,2,...,n}, 其中 表示车辆所属的域, k 表示车辆的序号. 假设每个 V i,k
RID i,k RID i,k 由汽车出厂商在生产时为车辆设置. V i,k 生成密钥的步骤如下.
,
拥有唯一且不重复的真实身份标识
1) V i,k 发送 RID i,k 给当地的 VMC i VMC i 检查 RID i,k 的合法性. 若合法, 则进入下一步; 否则终止.
,

