车载网中密码混淆区建立的方法技术领域
本发明属于信息安全领域,具体涉及一种车载网中密码混淆区的建立方法。
背景技术
车载网即车载自组织网,是一种用于车辆间通信的自组织网络。车载网用于提升
道路交通的安全性、效率和驾驶的便利性。车载网主要由车辆和路边单元组成,通过车与
车、车与路边单元之间的通信,车辆可以共享速度、位置、道路状况等信息,并且享受基于位
置的服务。
由于车载网中车辆需要定期广播消息,确保消息的认证性和不可否认性显得尤为
重要。另外这些消息中包含车辆的隐私信息,如驾驶员的身份和车辆的位置记录等敏感信
息。为了保证车辆的安全性和隐私性,基于假名或群签名的技术被提出来,但攻击者仍能通
过数据挖掘和模式匹配的方法获取车辆的隐私信息。密码混淆区(CMIX)能够更好地保护车
辆的隐私,在密码混淆区的合法车辆共享一个组对称密钥,车辆发送的消息都通过组对称
密钥加密。目前实现密码混淆区的方案及存在的问题:①将组对称密钥预先加载到车辆的
安全设备中,此方案组对称密钥更新的代价较高且不能抵抗如侧信道攻击等强力攻击;②
使用完全可信的机构如路边单元来维护组对称密钥,但路边单元可能是不可信的;③使用
群密钥协商技术来生成组对称密钥,但现有的群密钥协商技术需要至少两轮来建立组对称
密钥,因此该方案在车辆运动较快的情况下不可行。
发明内容
本发明的目的在于:针对密码混淆区存在组对称密钥更新代价较高,路边单元可
能不可信等问题,提出了无需完全可信路边单元且能实现高效组对称密钥更新的密码混淆
区的建立方法。该方法将车辆分组,每个车辆分配一次性的假名用于保护车辆的隐私信息,
整个密码混淆区由一个随机选择的路边单元(RSU)管理。虽然RSU用于管理所有组,但它不
能得到组对称密钥。密码混淆区也提供一种快速更新组对称密钥的方式,保证整个密码混
淆区的安全性。
实现本发明目的的具体技术方案是:
一种车载网中密码混淆区建立的方法,包括如下实体:车辆、路边单元RSU、车辆和
路边单元信任的生成全局参数的机构即可信机构TA,密码混淆区确保车载网中消息的可认
证和不可否认,保护车辆的安全和隐私;特点是:该方法包括下列步骤:
步骤1:设置
1)、TA根据初始的安全参数选取两个阶为q的循环群G1,G2,双线性映射G1×G2
→G2,G1的生成元为g,g为循环群中的一个元素,对属于循环群的任意元素x,都存在整数k使
得x=gk,存在最小正整数q,使得gq=e,e为幺元,即g0,双线性映射满足以下性质:
①双线性:对任意的g1∈G1,g2∈G2,a,b∈Zp,均有成立;
②非退化性:g2∈G2满足不等于
③可计算性:存在有效算法,对于g2∈G2,均可计算
TA选取主密钥L个G1的元素h1,…,hL∈G1,哈希函数H1、H2、H3,分别为H1:{0,
1}*→G1,H3:G2→{0,1}l,1表示明文的比特长度;N个矩阵{As}s∈{1,…,N},s表
示1和N之间的整数,As是一个ns×(ns+2)的矩阵,ns表示群组的大小,矩阵形式如下:
2)、矩阵的具体构造过程如下:
①1≤i≤ns,i表示1和ns之间的整数,计算TA身份IDTA与ns、i的连接,表示为
计算idsi,0和idsi,1分别为哈希
值,计算和分别为idsi,0和idsi,0的承诺;
②选取整数计算的承诺
③计算哈希值
④计算asi,j表示矩阵中对应元素的值,其中1≤j≤ns,j≠i,j
为1和ns之间的整数
初始化一个安全的基于身份的签名方案IDsign,生成并公布参数
步骤2:注册
车辆需要预先加载参数Ω并注册到TA;假设车辆的真实身份是IDi,TA首先为车辆
生成一次性使用的假名池{PID1,…,PIDn};对每个假名PIDi,TA计算哈希值idi,0=H1(PIDi,
0),哈希值idi,1=H1PIDi,1并输出私钥一次性假名和对应的私钥
通过安全的加密信道传递给车辆;
RSU预先注册到TA并加载参数Ω;假设RSU的真实身份是TA计算哈希值
并且通过安全的加密信道将私钥传递给RSU;
步骤3:密码混淆区建立
建立由数个RSU覆盖的密码混淆区;从这数个RSU中随机选出一个管理RSU;具体包
括以下协议:
1)通知
①管理RSU维护一个表用于生成组公钥,协助车辆生成组私钥,表中对应的值
初始设置为矩阵中对应的参数值表示用于生成组私钥的值,
表示承诺,表示TA身份IDTA与ns、i的连接,其中i≠j,1≤i,j≤ns;
②计算的累积其中1≤j≤ns;
③计算的累积其中哈希
值为签名的一部分;
④计算Kver,Kver表示当前组对称密钥相对应的密钥版本,具体见组对称密钥分发
阶段的定义;
⑤用IDsign签名方法,计算基于的身份的签名
sidθ表示包含的身份的会话ID,Jθ表示组中车辆数量;
⑥当车辆进入通知区时,车辆检查签名是否有效,如果有效则保存
否则丢弃消息,sidθ表示包含的身份的会话ID,Jθ表示组中
车辆数量;
2)加入
车辆vi进入注册区域时,加入密码混淆区并获得其组公私钥对;
①选择最近的组,如f组,计算组中车辆数量I=Jf+1;
②选择整数并计算承诺
③计算哈希值哈希值
④计算值l的取值范围是1≤l≤ns,zI,l为广播值的一部分;
⑤计算广播值并借助将σi广播到整个密码
混淆区;
⑥计算值
生成组公钥
3)组对称密钥分发
定义Enc为加密方法,假设(r1,Ψ1),…,(rt,Ψt)为各组组公钥,具体执行如下:
①选择整数
②计算密文c=[c1,(c2,1,c3,1),…,(c2,t,c3,t)],其中
m为组对称密钥;
定义Dec为解密方法,假设Ui为第j组的第i个车辆,Ui的组私钥为zi,则将密文c解
密为组对称密钥
密码混淆区中的车辆必须使用相同的组对称密钥来加密和解密,车辆获得组对称
密钥分为两种情形,具体如下:
情形一:当第一辆车进入密码混淆区时,假设当前车辆为v1,对应的假名为PID1;
ⅰ)v1选取组对称密钥sk1,其中
ii)计算承诺
ⅲ)计算签名运用IDsign签名方法,用PID1对应的私钥对(SK1,sid1,1)签名生成
sid1表示会话ID;
ⅳ)广播并由记录;
为密钥版本,表示skI对应的承诺为SKI,skI由对应
于会话ID为sidJ的组中的第K个车辆生成,是第K个车辆用它的假名PIDT对应的私钥对
(SKI,sidJ,K)生成的签名;
情形二:对于刚加入组信息为的组的车辆vi,Jf表示f组中车辆数
量,假设组对称密钥skI对应的密钥版本为接受组对称密钥
的具体过程如下:
ⅰ)组中其他车辆用Enc将组对称密钥加密并发送给vi;
ii)vi用Dec解密接收到的密文c获得组对称密钥skI;
ⅲ)vi检查承诺如果相等则接受组对称密钥;
4)组对称密钥更新
密码混淆区中的车辆vi能够强制密码混淆区中的车辆更新组对称密钥,具体如
下:
①vi选择一个新的组对称密钥skI′,其中
②计算承诺
③vi用自己的身份PIDT对(SKI′,sidf,K)计算签名
④用Enc计算加密的密文c;
⑤将广播到整个密码混淆区中,K表示会话ID为sidf的组中的
第K个车辆;⑥当接收到消息时检验签名是否有效,如果有效,则更新密钥版本
否则终止。
⑦车辆接收到消息时检验签名是否有效,如果有效,使用Dec解密c获得skI′;
⑧车辆计算承诺如果SKI″等于SKI′则接受组对称密钥,否则终止。
表示整数集,表示1和q-1之间的整数集合。
本发明的四个协议:通知、加入、组对称密钥分发和组对称密钥更新;第一个协议
用于车辆发现密码混淆区和管理RSU维护组公钥;第二个协议用于车辆加入密码混淆区,通
过该协议,车辆获得其组公私钥对;通过第三个协议,车辆获得其组对称密钥,密码混淆区
中的车辆使用相同的组对称密钥加密解密消息;最后一个协议用于密码混淆区中的车辆更
新其组对称密钥。
本发明用于增强混淆区中的车辆的隐私性,并且不需要可信密钥分发者来分发密
钥。运用非对称加密技术使混淆区中车辆只需要拥有其他车辆的公钥,用公钥加密消息,只
有对应的私钥拥有者才能解密该消息,保证了消息的安全;使用一次性假名可以避免信息
的泄露和追踪,降低了加密混合区中的信息泄露的风险;车辆不需要一直保持在线状态,车
辆只需要一轮协商便可以获取加解密密钥对。
附图说明
图1为本发明流程图。
具体实施方式
本发明包括如下实体:车辆、路边单元(RSU)、公认可信机构(TA),密码混淆区确保
车载网中消息的可认证和不可否认,保护车辆的安全和隐私;其包括下列步骤:
步骤1:设置
输入安全参数,TA选取主密钥,生成并公布参数。具体如下:
1)输入安全参数TA选取两个阶为q的循环群G1,G2,双线性映射G1×G2→G2,G1的
生成元为g;
2)选取一个随机数κ作为主密钥,满足表示1和q-1之间的整数集合,计
算κ的承诺y,满足y=gκ;
3)选取L个G1的元素h1,…,gL∈G1;
4)选取3个哈希函数H1、H2、H3,分别为H1:{0,1}*→G1,H3:G2→{0,1
}l,l表示明文的比特长度;
5)选取N个矩阵{As}s∈{1,…,N},s表示1和N之间的整数,As是一个ns×(ns+2)的矩阵,
ns表示群组的大小,矩阵形式如下:
矩阵的具体构造过程如下:
①1≤i≤ns,i表示1和ns之间的整数,计算TA身份IDTA与ns、i的连接,表示为
计算idsi,0和idsi,1分别为哈希
值,计算和分别为idsi,0和idsi,0的承诺;
②选取整数计算的承诺
③计算哈希值
④计算asi,j表示矩阵中对应元素的值,其中1≤j≤ns,j≠i,j
为1和ns之间的整数。
6)初始化一个安全的基于身份的签名方案IDsign;
7)公布参数
步骤2:注册
车辆预先注册到TA并加载Ω。具体如下:
1)TA为车辆生IDi成一次性假名池{PID1,…,PIDn},其中1≤i≤n;
2)计算哈希值idi,0=H1(PIDi,0),哈希值idi,1=H1(PIDi,1);
3)计算生成私钥
4)TA将车辆的一次性假名和对应的私钥通过安全的加密信道发送给车辆。
RSU预先注册到TA并加载Ω。具体如下:
1)对于给定的RSU真实身份是TA计算哈希值
2)计算私钥
3)TA通过安全的加密信道将私钥di发送给RSU。
步骤3:密码混淆区建立
定义Enc为加密方法,假设(r1,Ψ1),…,(rt,Ψt)为各组组公钥,具体执行如下:
(1)选择整数
(2)计算密文c=[c1,(c2,1,c3,1),…,(c2,t,c3,t)],其中
m为组对称密钥。
定义Dec为解密方法,假设Ui为第j组的第i个车辆,Ui的组私钥为zi,则将密文c解
密为组对称密钥
密码混淆区由几个RSU组成,并从中随机选取一个管理RSU管理该密码混淆区。该
阶段包括四个协议:通告,加入,组对称密钥分发和组对称密钥更新。具体如下:
1)通知
管理RSU维护几个表每个表由对应的矩阵As构造,其中θ∈
{t,…,f},s∈{1,…,N}。具体如下:
(1)管理RSU维护一个表用于生成组公钥,协助车辆生成组私钥,表中对应的值
初始设置为矩阵中对应的参数值表示用于生成组私钥的值,
表示承诺,表示TA身份IDTA与ns、i的连接,其中i≠j,1≤i,j≤ns;
(2)计算的累积其中1≤j≤ns;
(3)计算的累积其中哈希
值为签名的一部分;
(4)计算Kver,Kver表示当前组对称密钥相对应的密钥版本,具体见组对称密钥分发
阶段的定义;
(5)用IDsign签名方法,计算基于的身份的签名
sidθ是包含的身份的会话ID,Jθ表示组中车辆数量,表表示如下:
表1生成组公钥的表
(6)当车辆进入通知区时,车辆检查签名是否有效,如果有效则保存
否则丢弃消息。
2)加入
车辆vi进入注册区域时,加入密码混淆区并获得其组公私钥对,假设车辆vi对应的
假名为PIDi,并且对应的私钥为(di,0,di,1)。具体如下:
(1)选择最近的组,如f组,计算组中车辆数量I=Jf+1;
(2)选择整数并计算
(3)计算哈希值哈希值
(4)计算l的取值范围是1≤l≤ns,zI,l为广播值的一部分;
(5)计算广播值并借助将σi广播到整个密码
混淆区;
(6)计算值生成组公
钥
密码混淆区中的车辆和更新对应的会话ID为sidf的组的组公钥和组私钥。分以
下四种情况,具体如下:
对于的情形一:当接收到σi时,它必须检查σi中所有元素的有效性,然后更新
表中的第n+1行中的元素,具体如下:
(1)检查f组的I位置是否被占用,如果不是,则执行下一步;否则,中止;
(2)选取随机稀疏的检查方程
是否成立,其中哈希值哈希值
如果等式成立,则σi中所有元素都是有效的,计算
并进入下一步;否则,中止;
(3)计算消息其中是在上的签
名,将Res广播;
(4)设置组中车辆数量Jf=I,计算值其中取
值范围为1≤l≤ns,l≠I;
(5)如果I=ns-1,初始化一个新的表
对于车辆vi的情形二:vi生成其组私钥。具体如下:
(1)vi从RSU接收消息Res,并检查的有效性;
(2)如果签名有效,则计算其组私钥
对于会话ID为sidf的组中的剩余车辆的情形三:这些车辆接收σi和Res,并且更新
他们的组公私钥对,假设车辆vJ的组私钥为组公钥为具体如下:
(1)计算哈希值和哈希值
(2)计算值
(3)检查等式是否成立。如果等式不成立则终止。否则,当vj从
接收到Res时,如果是有效的并且等于接受作为组私钥,作为
组公钥;否则终止。
对于密码混淆区中的其余车辆的情形四:
(1)只有同一组中的车辆vi可以响应会话ID为sidf的组的组公钥的有效性;
(2)其余车辆仅接收由生成的组公钥;
(3)当从接收Res并且有效时,则将作为会话ID为sidf的组公钥。
3)组对称密钥分发
密码混淆区中的车辆必须使用相同的组对称密钥来加密和解密,车辆获得组对称
密钥分为两种情形,具体如下:
情形一:当第一辆车进入密码混淆区时,假设当前车辆为v1,对应的假名为PID1。
(1)v1选取组对称密钥sk1,其中
(2)计算承诺
(3)计算签名运用IDsign签名方法,用PID1对应的私钥对(SK1,sid1,1)签名生成
(4)广播并由记录;
(5)为密钥版本,表示skI对应的承诺为SKI,skI由对
应于sidJ的组中的第K个车辆生成,是第K个车辆用它的假名PIDT对应的私钥对(SKI,
sidJ,K)生成的签名。
情形二:对于刚加入组信息为的组的车辆vi,Jf表示f组中车辆数
量,假设组对称密钥skI对应的密钥版本为接受组对称密钥
的具体过程如下:
(1)组中其他车辆用Enc将组对称密钥加密并发送给vi。
(2)vi用Dec解密接收到的密文c获得组对称密钥skI;
(3)vi检查承诺如果相等则接受组对称密钥。
如果密码混淆区中的车辆密度太低,则可能发生当vi离开注册区域时,其不能从
其他车辆接收组对称密钥,这种情况下具体执行过程如下:
(1)vi广播请求组对称密钥;
(2)消息发送者vj用Enc加密组对称密钥skI发送给vi;
(3)vi利用Dec解密获得组对称密钥;
(4)vi检查承诺如果等式相等则接受组对称密钥。
4)组对称密钥更新
密码混淆区中的车辆vi可以强制密码混淆区中的车辆更新组对称密钥,具体如
下:
(1)vi选择一个新的组对称密钥skI′,其中
(2)计算承诺
(3)vi用自己的身份PIDT对(SKI′,sidf,K)计算签名
(4)用Enc计算加密的密钥c;
(5)将广播到整个密码混淆区中,K表示会话ID为sidf的组中
的第K个车辆。
(6)当接收到消息时检验签名是否有效,如果有效,则更新密钥版本
否则终止。
(7)车辆接收到消息时检验签名是否有效,如果有效,使用Dec解密c获得skI′;
(8)车辆计算承诺如果SKI″等于SKI′则接受组对称密钥,否则终止。