面向无人机网络的属性代理签名方案

2021-12-08 03:04贺蕾马建峰魏大卫
通信学报 2021年11期
关键词:委托书控制站密钥

贺蕾,马建峰,魏大卫

(1.西安电子科技大学计算机科学与技术学院,陕西 西安 710071;2.郑州轻工业大学计算机与通信工程学院,河南 郑州 450002;3.西安电子科技大学网络与信息安全学院,陕西 西安 710071;4.西安电子科技大学陕西省网络与系统安全重点实验室,陕西 西安 710071)

1 引言

近年来,无人机(UAV,unmanned aerial vehicle)得到了广泛的应用。无人机与指挥中心、地面控制站、卫星等共同构成了无人机网络,也称为无人机指挥控制与通信网络。无人机网络以无人机应用为核心,具有高机动性、动态拓扑、间断的通信连接、有限的电力供应和不断变化的链路质量等特点[1]。无人机网络包括指挥中心、地面控制站、卫星和无人机等,如图1 所示。每架无人机隶属于一个指挥中心,且该指挥中心拥有对该无人机的最高指挥权限。当指挥中心无法与无人机进行通信时,可以通过其他指挥机构,如地面控制站、卫星等,与无人机进行通信。

无人机执行任务时,必须保证所收到命令的完整性和认证性,即保证该命令是由指挥中心或经过授权的指挥机构发出的,而且没有被篡改。通常采用数字签名来保护命令的完整性和认证性。指挥中心发送命令及其签名给无人机,无人机在对签名进行验证后,根据验证结果决定是否执行该命令。

无人机在执行远程任务时远离指挥中心,可能无法及时收到指挥中心发来的命令,甚至无法收到命令。在这种情况下,指挥中心可以使用代理签名,临时授权距离无人机较近的指挥机构(如地面控制站)对无人机进行指挥,发送命令及其签名。而在一些应用中,指挥机构想要匿名地向无人机发送命令及签名,该签名并不包含与指挥机构身份有关的信息,可以通过使用基于属性的签名(ABS,attribute-based signature)实现。

本文主要研究工作如下。

1) 定义了属性代理签名及其安全模型。

2) 提出了用于无人机网络的属性代理签名(ABPS,attribute-based proxy signature)方案。

3) 对所提签名方案进行了安全性证明,结果表明,该方案具有选择属性和选择消息攻击下存在的不可伪造性(EUF-sA-CMA,existential unforgeability under selective-attribute and chosen message attacks),并且能保护签名者的隐私。

4) 从计算开销和通信开销两方面对所提方案的效率进行了分析,并与其他相关签名方案进行了对比。结果表明,所提方案具有更少的计算开销,而其通信开销与其他方案在同一水平。

2 相关工作

Maji 等[2]定义了ABS 的安全性,构建了ABS的框架,并提出了ABS 的具体实现。在ABS 中,签名者使用属性集和相应的密钥对消息进行签名,验证者可以对签名进行验证,只有当属性集满足访问结构时,才能验证成功。Li 和Kim[3]定义了隐藏的ABS 及其安全模型,并提出了2 种基于计算Diffie-Hellman(CDH,computational Diffie-Hellman)困难问题的签名方案。Li 等[4]提出了2 种支持门限访问结构的ABS 方案,莫若等[5]提出了支持树形访问结构的可净化ABS 方案,Gu 等[6]提出了支持单调访问结构的ABS 方案。

在一些应用中,需要由多个属性权威对属性进行管理,为用户生成密钥。莫若等[7]提出了支持树形访问结构的多权威ABS 方案。Guo 等[8]也提出了多权威ABS 方案。Yang 等[9]提出了具有多个属性权威的顺序聚合ABS 方案,在该签名方案中,不同的签名者可以对同一个消息进行签名,再将签名依次进行聚合。

为降低用户使用ABS 计算签名的开销,Chen等[10]提出了2 个外包ABS 方案,并证明了这2 个方案的安全性,通过将大量的签名计算外包给签名云服务提供者,降低了签名者的计算开销。Mo 等[11]提出了基于线性秘密共享的外包ABS 方案,降低了签名者的计算开销,并证明了该方案的安全性。

为了降低计算签名和验证签名的计算开销,Cui等[12]提出了可撤销的服务器辅助的ABS 方案。在该签名方案中,服务器辅助完成签名生成和验证,以达到降低签名者和验证者计算开销的目的。而且,该签名方案还可以使被撤销的用户无法计算出签名。Xiong 等[13]也提出了服务器辅助的ABS 方案,降低了签名者和验证者的计算开销,实现了基于线性秘密共享的访问结构,并能抵御合谋攻击。张应辉等[14]提出了一种服务器辅助且可验证的ABS 方案。该方案同样降低了签名者和验证者的计算开销,能抵御合谋攻击,并且对服务器产生的部分签名进行了验证。Bao等[15]提出了一种能抵御密钥泄露的服务器辅助的ABS 方案,该签名方案需要对密钥进行更新。

Mambo 等[16]提出了代理签名。在代理签名中,通常包含3 个参与者,分别是原始签名者(OS,original signer)、代理签名者(PS,proxy signer)和验证者。原始签名者授权代理签名者代替自己计算代理签名,验证者对该代理签名进行验证。Huang等[17]提出了不需要随机预言机的代理签名方案,并对其安全性进行了证明。Wu 等[18]提出了基于身份的代理签名方案,并对其安全性进行了证明。Liu等[19]定义了ABPS 及其安全模型,提出了具体的ABPS 方案,并对方案的安全性进行了证明。Sun等[20]也提出了ABPS 方案,并分析了方案的安全性。

3 预备知识

3.1 双线性对

设G和GT是阶为素数q的循环群,G的生成元为g,若该映射满足下列要求,则映射e:G×G→GT为双线性映射。

1) 双线性:对于任意的g1,g2∈G和a,b∈Zq,有。

2) 非退化性:存在g1,g2∈G,使e(g1,g2) ≠ 1。

3) 可计算性:对于任意的g1,g2∈G,存在有效的算法能够计算出e(g1,g2)。

3.2 CDH 困难问题假设

对于未知的x,y∈Zq,给定g,g x,g y∈G,要求计算出gxy。

3.3 拉格朗日插值定理

设t(1),t(2),...,t(d)是(d−1)次多项式t(·)上的d个点,S是包含d个元素的集合,q为素数。对于任何x∈Zq,可以通过拉格朗日插值定理求出。其中,拉格朗日系数定义为。

4 系统模型

4.1 算法模型

ABPS 方案中主要包括属性权威、原始签名者、代理签名者和验证者。ABPS 方案主要由下列算法构成。

1) Setup。该算法输入为系统安全参数,输出公共参数params 和主密钥α。

2) Extract。该算法由属性权威运行,输入为公共参数params、主密钥α和用户属性集合ω,输出为用户的密钥。在ABPS 方案中,属性权威依据原始签名者属性集合ωOS和代理签名者属性集合PSω,分别为它们生成密钥skOS和skPS。

3) DelGen。该算法由原始签名者运行,用于为代理签名者生成授权。输入为params、原始签名者生成的委托书w、ω'OS和skOS,且ω'OS⊆ωOS;输出为原始签名者为代理签名者生成的授权del。

4) DelVer。该算法由代理签名者运行,用于验证原始签名者生成的授权del 是否有效,输入为params、w、ω'OS和del,输出为验证结果。若该授权是有效的,代理签名者可以基于w和del 计算代理签名;否则,代理签名者不能基于w和del 计算代理签名。

5) Sign。该算法由代理签名者运行,用于计算代理签名。输入为params、w、del、skPS和消息m,且⊆ωPS;输出为计算出的代理签名σ。

6) Verify。该算法由验证者运行,用于验证代理签名是否有效。其输入为params、w、ω'PS、m和σ,输出为布尔类型的验证结果。若该代理签名是有效的,则输出Accept;否则,输出Reject。

4.2 安全模型

ABPS 方案的安全性主要包括不可伪造性和签名者的隐私性。不可伪造性要求如下:若敌手没有属性集ω对应的密钥且ω*⊆ω,则不能计算出属性集ω*对应的签名。签名者的隐私性要求签名不泄露签名者的身份信息。

4.2.1 不可伪造性

根据文献[17-19],ABPS 方案中的敌手可分为三类,分别为AI、AII和AIII。AI只拥有原始签名者和代理签名者的公钥;AII和AIII除了拥有原始签名者和代理签名者的公钥以外,还分别拥有代理签名者的私钥skPS和原始签名者的私钥skOS。若ABPS 方案能抵御AII和AIII的攻击,则其也能抵御AI的攻击。因此,在安全模型中只考虑AII和AIII的攻击。对于不可伪造性,主要研究EUF-sA-CMA。

1) 能抵御AII攻击的EUF-sA-CMA

通过下面的游戏定义能抵御 AII攻击的EUF-sA-CMA。

初始化阶段。选择要挑战的属性集ω*,且。其中,d是预先定义的参数。

系统建立阶段。挑战者C 运行Setup 算法生成公共参数params 和主密钥,运行Extract 算法为原始签名者和代理签名者分别生成密钥对(pkOS,skOS)和(pkPS,skPS)。将params、原始签名者公钥pkOS,以及代理签名者的公钥和私钥(pkPS,skPS)发送给AII。

查询阶段。AII可以向私钥生成预言机、授权生成预言机和签名预言机分别进行多项式次数的查询。

伪造阶段。AII输出关于消息m*、属性集ω*和委托书w*的签名σ*。

若该伪造满足以下条件,则认为AII赢得了游戏。

定义1若敌手AII在上面的游戏中获胜的概率是可忽略的,则称该ABPS 方案具有能抵御AII攻击的EUF-sA-CMA。

2) 能抵御AIII攻击的EUF-sA-CMA

通过下面的游戏定义能抵御 AIII攻击的EUF-sA-CMA。

初始化阶段。选择要挑战的属性集ω*,且|ω*|≤d。其中,d是预先定义的参数。

系统建立阶段。挑战者C 运行Setup 算法生成公共参数params 和主密钥,运行Extract 算法为原始签名者和代理签名者分别生成密钥对(pkOS,skOS)和(pkPS,skPS)。将params、代理签名者公钥pkPS,以及原始签名者的公钥和私钥(pkOS,skOS)发送给AIII。

查询阶段。AIII可以向私钥生成预言机和签名预言机分别进行多项式次数的查询。

伪造阶段。AIII输出关于消息m*、属性集ω*和委托书w*的签名σ*。

若该伪造满足以下条件,则认为AIII赢得了游戏。

1) AIII从未向私钥生成预言机查询过属性集ωPS,且ω*⊆ωPS。

2) AIII从未向签名预言机查询过(m*,w*,ω*)。

3) 签名σ*是关于消息m*、属性集ω*和委托书w*的有效签名。

定义2若敌手AIII在上面的游戏中获胜的概率是可忽略的,则称该ABPS 方案具有能抵御AIII攻击的EUF-sA-CMA。

4.2.2 签名者的隐私性

通过下面的游戏对签名者的隐私性进行定义。

系统建立阶段。挑战者C 运行Setup 算法生成公共参数params 和主密钥,并将params 和主密钥发送给敌手A。

A 赢得上述游戏的优势被定义为|Pr[u'=u]−0.5|。

定义3若不存在敌手A 能以不可忽略的优势赢得上述游戏,则认为该ABPS 方案保护了签名者的隐私。

5 面向无人机网络的ABPS 方案描述

5.1 总体方案

在本文所提出的ABPS 方案中,主要包括属性权威、指挥中心、地面控制站和无人机,如图2 所示。其中,指挥中心为原始签名者,地面控制站为代理签名者,无人机为验证者。指挥中心为地面控制站生成委托书和授权,地面控制站代表指挥中心计算代理签名,并发送给无人机进行验证。方案的总体流程如下。

1) 生成公共参数和主密钥。属性权威为指挥中心和地面控制站生成密钥。

2) 指挥中心生成委托书w和授权del,并将它们发送给地面控制站。

3) 地面控制站验证收到的授权。若该授权是有效的,则可以计算代理签名;否则,不能计算代理签名。

4) 地面控制站依据收到的委托书和授权计算出消息m的代理签名。

5) 无人机收到签名后,对其进行验证,并输出验证结果。

5.2 算法描述

本文所提出的签名方案主要包括以下算法。

1) Setup

2) Extract

该算法分别为原始签名者和代理签名者生成密钥。设原始签名者和代理签名者的属性集分别为ωo和ωp,生成属性集Ω,选择(d−1)次多项式t(·),且t(0)=α。生成随机

3) DelGen

4) DelVer

代理签名者收到原始签名者发来的委托书和授权后,通过下面的验证式对该授权进行验证。若该等式成立,则认为该授权是有效的;否则,认为该授权是无效的。

5) Sign

6) Verify

验证者收到代理签名者发来的数字签名后,通过下面的验证式对该签名进行验证。若该等式成立,则认为该签名是有效的,输出布尔值Accept;否则,认为该签名是无效的,输出布尔值Reject。

6 方案分析

6.1 正确性分析

定理1本文所提出的ABPS方案具有正确性。

证明分两步对方案的正确性进行分析。首先分析DelGen和DelVer算法的正确性,然后分析Sign和Verify 算法的正确性。

1) DelGen 和DelVer 算法的正确性

2) Sign 和Verify 算法的正确性

定理1 证毕。

6.2 不可伪造性

对于不可伪造性,分别证明所提签名方案具有能抵御AII攻击的EUF-sA-CMA 和能抵御AIII攻击的EUF-sA-CMA,然后得出结论,所提签名方案具有EUF-sA-CMA。

定理2若CDH 问题是困难的,则所提ABPS方案具有能抵御AII攻击的EUF-sA-CMA。

授权生成预言机:AII可以向授权生成预言机查询委托书w和属性集ω。

若ω*不是ω的子集,B 可以获取私钥生成预言机生成的密钥,进而计算出授权。

签名预言机:AII可以向签名预言机查询消息m关于委托书w和属性集ω的签名。

定理3若CDH 问题是困难的,则本文提出的ABPS 方案具有能抵御AIII攻击的EUF-sA-CMA。

根据定理2 和定理3,可得本文提出的ABPS方案具有EUF-sA-CMA。

6.3 签名者隐私

在所提方案中,原始签名者生成的授权可以看作对委托书的签名,而且,代理签名中包含有原始签名者生成的授权。因此,对签名者隐私的保护包含对原始签名者和代理签名者的隐私的保护。

定理4本文提出的ABPS 方案保护了原始签名者的隐私。

定理5本文提出的ABPS 方案保护了代理签名者的隐私。

证明采用与定理4 类似的证明方法,可证明本文提出的ABPS 方案保护了代理签名者的隐私。

根据定理4 和定理5,可得本文提出的ABPS方案保护了签名者的隐私。

6.4 效率分析

本文从计算开销和通信开销2 个方面对所提ABPS 方案和ABPS-LXM 方案[19]、ABPS-SCX 方案[20]进行分析对比。对于计算开销,为反映无人机执行命令的实时性,本文主要分析了Sign 和Verify算法的计算耗时。计算耗时越短,则计算开销越小,无人机执行命令的实时性越高。对于通信开销,主要分析了签名的长度。签名长度越短,则通信开销越小。考虑到无人机网络的实际应用状况,选取了较少的属性进行研究。

6.4.1 计算开销

本节简要分析了不同签名方案中Sign 和Verify算法包含的一些基本运算量,主要包括幂运算、hash运算和双线性映射运算。在所提ABPS 方案的Sign算法中,计算需要进行4d 次幂运算和(d+1)次hash 运算,计算需要进行d 次幂运算,计算不需要额外运算,计算需要进行d次幂运算。因此,在Sign 算法中,总共需要进行6d次幂运算和(d+1)次hash 运算。采用同样的方法对Verify 算法进行分析,可计算出总共需要2d次幂运算,(2d+2)次hash 运算和(4d+1)次双线性映射运算。类似地,可以得出ABPS-LXM 和ABPS-SCX方案中所需的计算量。分析结果如表1 和表2 所示。

表1 不同签名方案中Sign 算法的基本运算量

实验所用计算机的CPU 为Intel i5-4590。为了便于研究和表述,假设文献[19]中n=d=2k,文献[20]中n=d,SA=SB。在实验数据的基础上,可以估算出不同签名方案中Sign 和Verify 算法的计算耗时,如图3和图4 所示。从图3 和图4 中可以发现,与ABPS-LXM 方案相比,所提ABPS 方案的Sign 和Verify 算法明显具有更少的计算开销。与ABPS-SCX 相比,所提ABPS 方案的Sign 算法的计算开销稍大,这是由于ABPS-SCX 方案在Sign 算法之前添加了代理密钥生成算法,并将大量的计算放在了该算法中,从而降低了Sign 算法的计算开销,而所提ABPS 方案和ABPS-LXM 方案都没有在 Sign 算法之前添加代理密钥生成算法;与ABPS-SCX 方案相比,所提ABPS 方案的Verify 算法明显具有更少的计算开销。总体而言,所提ABPS方案具有更少的计算开销。

本文采用jPBC(Java pairing based cryptography)[21]实现了上述基本运算,获取了这些基本运算的计算耗时,如表3 所示。

表3 基本运算的计算耗时

6.4.2 通信开销

本节对所提ABPS 方案、ABPS-LXM 方案和ABPS-SCX 方案的签名长度进行了分析,如表4 所示。从表4 中可以发现,所提ABPS 方案的签名长度与ABPS-LXM 方案和ABPS-SCX 方案的签名长度在同一水平。

表4 不同签名方案的签名长度

7 结束语

无人机在执行远程任务时,需要采用数字签名保护发送给无人机的命令,而且要保证无人机能及时收到命令和签名,保护签名者的隐私。因此,本文提出了面向无人机网络的属性代理签名方案,并对其安全性和效率进行了分析。该签名方案在选择属性和选择消息攻击下具有存在的不可伪造性,而且能保护签名者的隐私。从计算开销和通信开销两方面将所提方案与其他方案进行了对比。结果表明,所提方案的计算开销较小,通信开销与其他方案在同一水平。

猜你喜欢
委托书控制站密钥
幻中邂逅之金色密钥
幻中邂逅之金色密钥
密码系统中密钥的状态与保护*
DCS系统在机井控制中的应用
法国水师兵营旧址 曾作为法国在长江上游的控制站
科技查新委托书撰写方法与技巧
ECS-100系统控制站硬件配置及使用
为老年人办理出售房产《委托书》公证中应审查的事项
TPM 2.0密钥迁移协议研究
关于房地产委托书公证的几点思考