对于任何特定的紧急事件εi,每个聚合者维持两个本地消息列表,分别为已转发的SER和等待转发的SER。用F表示已转发的消息列表,其中包含所有已被该车辆转发的SER,而用R表示等待转发消息列表,其中存储着还没有被发送但以后可以转发的信息。SER集F∪R包括所有与事件i相关的SER。无论何时,当聚合者接收到一个SER,他应该检查该SER是否是重复的。如果是的话,将丢弃重复的SER,否则将其放入消息列表R中。聚合者在转发之前将执行如下SER聚合(或AggregateSER)操作和SER批量验证(BatchVerify SER)操作。
8.5.5.1 SER聚合
AggregateSER用于将多个SER聚合成一个单一的SER,它包括两个步骤:句法聚合和加密聚合。
1)句法聚合:对于紧急事件i,有n个SER,由车辆Vj,j=1,…,n产生的SER消息SERji=(Typei,Loci,Vj,,,Certj),通过句法聚合可以得到SERagg=(Typei,Loci,V1,…,Vn,,…,,,…,S,Cert1,…,Certn)。
2)加密聚合:这是将多个签名和证书聚合成单一签名和证书的过程,它包括以下两个步骤:
①证书聚合:,其中。
②签名聚合:。此聚合过程如图8-4所示。在句法聚合和加密聚合之后,就可以得到聚合的SER:
。
8.5.5.2 SER批量验证
批量SER验证包括批量签名验证和批量证书验证。(www.xing528.com)
1)批量证书验证:对于给定的聚合证书,当
成立时,该证书有效。
2)批量签名验证:对于聚合签名Sigagg,消息集SERji≤i≤n和集合V中所有车辆的公钥,当e(Sigagg,g)=e(a,)×e(b,)成立时,该聚合签名正确。
如果批量验证成立,聚合者将接受列表R中的SER为有效的SER,然后转发R中聚合的SER。同时,聚合者将把R中所有的SER移至消息列表F中。一旦F中SER的数量超过k,则紧急事件εi将被接受为有效的紧急事件。上述算法可总结在算法4中。
图8-4 SER聚合:句法聚合和加密聚合
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。