Page 464 - 《软件学报》2026年第2期
P. 464
毕昌兵 等: 5G 车联网中基于区块链的半分布式消息认证加密方案 943
发送者 VMC i 区块链 接收者
各方 VMC 共识协商出
系
统 τ, E, p, q, seed 和 H 1 , H 2 , H 3 , h
初 各 VMC 生成自己的公/私钥
始 VMC 1 上传: SP, 部署合约
化 信誉值更新合约
生成信誉票证集合 CT i
{RID}
获取 Addr
Addr
*
选择 x ∈ Z q
计算 X=xP {Addr, X}
*
密 选择 y ∈ Z q 计算 Y=yP
钥 计算 py=y+skH 1 (Addr, X,
生 Y, P Pub )
成 加密得 cpy=py⊕H 3 (yX)
{Y, cpy}
解密 py=cpy⊕H 3 (xY)
计算 SK=(x, py) 生成初始信誉值 RS
计算 PK=(X, Y) 上传: <Addr, PK, RS>
{CT i }
*
选择 l ∈ Z q , 计算 L=lP
加 计算 β=H 2 (X, Y, L, m, t)
密 计算 C₁=L⊕CTᵢ, C 2 =m⊕CTᵢ
签 计算 σ=l+(x+py)β
名 {Addr, C 1 , C 2 , σ, t}
检查 t 的有效性
解
计算 L=CT i ⊕C 1 , m=CT i ⊕C 2
密 计算 α=H 1 (Addr, X, Y, P Pub )
验 计算 β=H 2 (X, Y, L, m, t)
证
验证: σP=L+β(X+Y)+αβP Pub
信 反馈消息的有用性
誉
更 收集反馈数据并上传
新 信誉值更新合约
图 2 方案流程图
表 2 符号定义
符号 描述
P Pub-i 区域 i 中 VMC i 的公钥
sk i 区域 i 中 VMC i 的私钥
k
RID i,k 区域 i 中第 个车辆的真实身份
k
Addr i,k 区域 i 中第 个车辆的区块链地址
SK i,k = (x i,k , py i,k ) 区域 i 中第 个车辆的私钥
k
PK i = (X i ,Y i ) 区域 i 中第 个车辆的公钥
k
m i 消息
σ i 对消息 m i 的签名
信誉票证
CT i
k
RS i,k 区域 i 中车辆 的信誉值
时间戳
t i
2) VMC i 为 RID i,k 分配区块链地址 Addr i,k , 允许其作为轻节点加入区块链.
3) V i,k 选择随机数 x i,k ∈ Z 作为秘密值, 计算 X i,k = x i,k P, 并发送 X i,k 和 Addr i,k 给本地 VMC i .
∗
q

