1. 引言
在工业、医疗和军事等敏感领域中,物联网发挥着不可替代的重要作用,它通过各种传感器、智能设备及通信技术,建起严密的感知与响应体系,极大提升安全性、可靠性与应对效率。比如,物联网通过分布式光纤传感网络实时监测核电站物理入侵与设备故障[1];借助联邦学习实现隐私保护的医疗数据分析[2];从“连接”迈向“智能协同”,构建起高效的信息交互桥梁,使各军兵种、各作战单元间实现信息实时共享与无缝对接[3]等。物联网设备的认证接入需要考虑多方面因素,就前沿通用物联网技术而言,网络层面采用的分布式架构和零信任动态认证技术[4],解决中心化单点故障问题,实现动态认证。安全层面引入抗量子签名算法[5]-[7]、轻量级协议[8] [9]等,在保证安全的同时,提高认证效率;在硬件层面,利用芯片制造工艺偏差生成设备唯一硬件指纹[10]等技术,提升抗物理攻击能力。
线性同态签名[11]能在没有签名私钥的情况下,允许任何实体对已认证的数据进行线性同态运算生成新数据,并得到新数据的有效签名,其在物联网领域具有很好的应用成效[12]。而随着量子计算发展使传统签名算法面临被破解风险,尤其是敏感设备数据接入物联网中对安全性要求更高。保证接入算法安全性的同时,需要兼顾接入认证的效率,以保证实用性。基于格的抗量子线性同态签名在资源受限设备上表现优异,签名生成耗时短,认证成功率高,为物联网安全提供有力支撑,对物联网在各领域的可靠应用不可或缺。Chen等人[13]在标准模型下提出了首个格基线性同态签名,方案使用了文献[14]的两整数格相交法实现安全签名,并利用盆景树格基委派算法[15]绑定数据集标签,从而实现了标准模型下的可证明安全性。Lin等人[5]提出的格基线性同态签名方案,利用满秩差分哈希函数替代线性同态编码,相对于Chen等人提出的方案,公钥矩阵数量减少,消除了公钥尺寸的标签长度的依赖,但运算维度增加了,导致运算效率不高。特别是近年来,随着NIST后量子算法的广泛征集,大量高效格基签名算法涌现。比如,Falcon算法[5]是NIST后量子密码标准化选定的数字签名算法,基于NTRU格构建,融合快速傅里叶变换实现安全高效签名。Hawk算法[16]是基于二次型格同构[17]问题设计的NTRU型签名算法,其参数选取更小,签名运算效率更高,入选NIST算法评比第二轮。Dilithium算法[18]困难性依赖于理论上的模块学习误差(MLWE)和MSIS问题,它是基于多项式环上的高效签名算法,2022年被NIST选为量子安全签名标准。
本文综合考虑抗量子同态签名算法综合性能,根据多项式环计算的高效性,设计一种NTRU型线性同态签名算法,并结合敏感物联网设备接入,给出了线性同态签名算法应用物联网模型。通过安全性和整体性能分析,构建的方案模型可实现物联设备高效接入认证的安全性和可靠性。
2. 基础知识
本文使用粗体小写字母表示向量,如向量
。使用粗体大写字母表示矩阵,如矩阵
。
表示模
整数域。使用
表示向量的欧几里得范数(L2范数)。
2.1. 数学知识
2.1.1. 多项式环
NTRU算法的核心代数结构是有限域上的循环多项式环,标准形式为:
。
为模
的整数环(
为大素数或2的幂);
为分圆多项式(
为2的幂),作为环的零化多项式,使环中满足
,进而
,形成循环结构。
中任意多项式可表示为次数小于等于
的多项式,即元素形式为
,其中
。
2.1.2. 格与格上困难问题
格是由一组线性无关向量的所有整系数线性组合构成的向量全体。令
为
个线性独立的向量,由
生成的
维格定义为:
,其中
为矩阵
的列向量,为格的一组基,基向量的个数
定义为格的维数。
格的多项式表示:将
中多项式作为
中的向量,则
中的理想对应
中理想格。
最近向量问题(NVP):给定格
和目标向量
,找到格点
使得
最小。
定义1 SIS困难问题[14] [15]:(小整数解(short integer solution, SIS))问题:给定一个均匀随机的矩阵
以及参数
,
问题的目标是找到一个非零整数向量
,使得
且
。
定义2 NTRU-SIS困难问题[14] [15]:给定公钥
,寻找非零多项式对
,使得:
且
。
困难性:NTRU-SIS问题的困难性可归约到理想格上最短向量的最坏情况困难性,量子算法无法在多项式时间内求解,确保抗量子攻击安全。
2.1.3. Babai算法
Babai算法是格密码学中用于求解最近向量问题(Nearest Vector Problem, NVP)的经典近似算法,其核心目标是在给定格中找到与目标向量距离最近的格点。具体算法详见文献[19],Babai算法可简要的表达为:
:输入一个优质格基
和一个目标向量
。输出一个格点
,使得
相对较小。
在多项式环计算中,优质格基
是由私钥多项式生成的基,而
是由目标多项式生成的向量。
2.1.4. 离散高斯分布
离散高斯分布是定义在整数格
上的概率分布,参数为“中心
”和“标准差
”,概率质量函数为:
(1)
核心性质:当
足够大时(通常
),采样结果以高概率是格中的短向量(
);
NTRU中的采样:在
中,离散高斯采样等价于对多项式系数采样,即每个系数
(或
)独立从
采样,确保
为短多项式。
2.2. 物联网设备接入认证框架
当前基于物联网设备安全接入认证模型已经超越了简单的账号密码或单身证书的验证模式,正向自适应、自动化、去中心化和能抵抗未来威胁的方向演进。基于签名算法的常用接入认证框架设计遵循“建立认证服务中心–签发设备准入凭证–设备接入请求–认证服务中心验证–授权与会话”的概要流程来设计。
(1) 建立认证服务中心:基于云服务器或去中心化的信任机制建立的数据运算中心,实现用户身份验证、授权和数据全周期管理等。
(2) 签发设备准入凭证:认证服务中心(AS)生成签名的公、私钥对。设备向AS注册申请唯一身份标识,AS向设备签发私钥并绑定设备身份。
(3) 设备接入请求:接入设备利用自身凭证,生成一个接入认证消息,并发送至网络接入点。
(4) 认证服务中心验证:AS接收网络接入点收集的关于设备的数据信息,使用公钥信息进行验证。
(5) 授权与会话:认证通过后,AS会向网关下发授权令牌,或直接为设备生成会话密钥,并建立安全的数据通道。
当有批量设备进行接入认证时,AS在高峰期可能需要同时验证成千上万台设备的接入请求。传统的签名方案需要逐个验证每个设备的签名,计算开销巨大,容易成为性能瓶颈。
3. 基于线性同态签名的物联网设备接入认证
线性同态签名允许对多个已签名的消息进行线性组合,并生成一个新的、有效的签名。这个新签名可以被任何拥有公钥的人验证,且验证者可以确信:原始数据中的线性组合确实是由合法的签名者生成的。在物联网接入认证框架中,网关或认证中心可以将多个设备的认证请求聚合成一个请求和一个聚合签名,只需验证一次聚合签名,就能同时完成对所有设备身份的认证,极大提升效率。
3.1. NTRU型线性同态签名方案
基于格上同态签名算法具有较好的抗量子攻击特性,由于运算的复杂性致使运算效率不高。NTRU型同态签名算法是基于环多项式环上数学困难问题的简易算法,保证安全性的同时,运算效率较高,是用于设计抗量子安全的物联网认证的较好选择。本节提出一种NTRU型的线性同态签名算法,实现不同设备签名的聚合验证。
(1) 密钥生成
输入安全参数
,输出私钥
和公钥
:
a) 参数选择:根据
确定多项式环维度
、模数
。其中
,且
在
中可分解,所有的运算均在环
上进行。
b) 生成公私钥多项式:
采样可逆多项式
和随机多项式
,系数均从{−1, 0, 1}中随机选择,满足
;计算
。令私钥
,公钥
。
(2) 签名生成
:对签名消息进行预处理,进行全域哈希转成小系数多项式
。通过离散高斯采样随机短多项式
,输入私钥
,调用Babai算法,找到小范数多项式
,使得:
(2)
多项式
是误差项,且
(
很小)。输出签名消息
。
(3) 签名验证
:输入公钥
、消息
和签名
,输出“接受1”或“拒绝0”:
a) 计算
:
b) 验证
(其中
)是否成立,若成立则输出“接受1”,否则“拒绝0”。
(4) 线性同态运算
:对多个签名线性同态运算,输入公钥
,消息
及其签名
。其中
。对于整数系数
,输出组合消息
的签名
:
(3)
调用验证算法
进行验证。
a) 计算
:
b) 验证
是否成立,若成立则输出“接受1”,否则“拒绝0”。
验证算法的正确性:
单个签名的验证可得
,即
。所以
,此时对于
的上界
可以取较大的值,但需要使攻击者伪造签名的概率可忽略,则要满足
,可得
。
对于多个签名消息的聚合验证,
,进而需要验证
是否成立。
3.2. 基于线性同态签名的物联网设备接入认证模型
3.2.1. 物联网认证模型构建
线性同态签名算法应用到物联网设备的接入认证中,使接入设备从逐个验证转变为批量验证。敏感设备接入物联网需要严格的接入环境和安全的接入认证算法,在此基础上还需要考虑验证效率。本节基于上节NTRU线性同态签名算法设计的物联网设备接入认证模型如图1所示。
Figure 1. LHS-based networked device access authentication framework
图1. 基于LHS的联网设备接入认证框架
第1阶段:系统初始化与设备预配
1) 认证服务中心(AS)设置:生成同态签名方案的主密钥对(
),公钥
公开。
2) 设备注册与凭证签发:每个设备在入网时,向AS注册其唯一身份标识
。
AS使用主私钥
与设备
绑定签发一个与设备身份关联的专属同态签名私钥
,并通过安全密钥通信渠道分发至设备的安全元件中。
第2阶段:接入认证流程
1) 设备发起请求:设备
需要接入网络时,生成一个认证消息
。使用自己的同态签名私钥
中的
对消息
进行签名,得到
。
设备将认证数据
发送给网络接入网关。
2) 网关聚合:网关在短时间内(如一个时间窗口)收集到来自
个设备的认证请求:
。计算聚合消息和聚合签名:
,
(4)
3) 认证服务中心验证:
网关将聚合后的数据
以及设备数量等信息发送给AS。
AS收到后,使用主公钥
对聚合签名进行验证:
。
4) 验证结果:
如果成功,意味着AS可以确信:所有参与聚合的原始消息
都是由拥有合法私钥
的设备签名的。AS因此批准这
台设备的接入请求。
如果失败,则意味着至少有一个设备的签名无效。此时,AS可要求网关减小聚合批次重新提交验证,利用故障定位协议,查找恶意设备。
第3阶段:授权与会话建立
1) 认证通过后,AS会向网关下发授权令牌,或直接为这批设备生成会话密钥。
2) 网关通知各设备认证成功,并建立安全的数据通道。
3.2.2. 故障定位协议
设计的接入认证模型中,恶意设备的检测定位功能十分重要,本节设计一种分层认证的故障定位协议。根据设备数量
,将设备分
层
组,选取合适的正整数
,使
,且
均为整数。
1) 协议配置
设
为SHA-256哈希函数,利用AS为每个设备生成的
生成认证码
。网关对接入设备按树形划分
层,对于不大于千级的设备数,可取
。
2) 子聚合生成
利用
函数生成所有设备的认证码
,绑定对应设备生成的签名
。
第3层:将
个设备划分1个小细组,并聚合每个小组的设备签名
(
),计算该小组所有设备的认证码
,绑定
和
。
第2层:将第3层
设备为1小组划分成
个小组,并聚合每个小组的设备签名
(
),计算该小组所有设备的认证码
,绑定
和
。
第1层:聚合第2层所有小组的子聚合签名得到最终聚合签名
,计算所有
的认证码摘要
,绑定
和
。
3) 验证定位
第一次定位:AS验证总签名
失败时,要求网关上传第2层所有认证码和签名
,AS先验证每个子聚合签名的有效性,若验证
签名失败,则恶意设备就可定位在第
组。
第二次定位:AS验证
组所有签名
的有效性,若验证
签名失败,则定位恶意设备在
组内;
第三次定位:在
组内最多有2个设备,可逐一验证其签名的有效性,最终定位到恶意设备。
该故障定位协议基于SHA-256哈希函数,利用主密钥生成每一层的哈希摘要
认证码,在SHA-256哈希函数安全条件下,攻击者无法伪造。对于千级设备量的设备而言,使用构造的分组认证故障定位协议发展总签名验证失败时,最快可经过3次签名验证、最多也就经过
次验证就可定位故障设备,查找定位信息效率较高。
3.2.3. 模型密钥管理
保证设备使用的密钥安全是确保模型中签名不可伪造性的前提。设计的物联网设备接入认证模型中第一阶段的密钥分发是密钥管理的关键阶段。本节使用物理不可克隆函数PUF技术[10],将生成的设备专属密钥从AS中的静态存储到设备端的重构,并贯穿密钥的安全分发、安全存储、更新和撤销整个过程。
1) 密钥安全分发机制
密钥分发涉及到密钥封装等加密技术,PUF技术生成根密钥后,需要使用稳定的根密钥对设备专属密钥加密后分发至设备,使用的具有抗量子安全的加密算法,构建的认证接入模型采用层级化密钥分发架构。
核心层:AS生成主密钥对(
),私钥
存储于AS安全模块,公钥
利用可信安全渠道广播下发至所有网关,确保公钥的完整性和不可篡改性。
设备层:结合使用PUF技术实现设备专属密钥的分发。设备首次入网请求时,携带专属物理不可克隆标识
向AS发起注册请求,AS验证设备标识合法性,并向设备的PUF施加一个挑战
,设备PUF基于物理特性生成对应的响应
和辅助数据
,并向AS输出加密密钥
。AS基于主私钥
为设备生成专属同态签名私钥
,并利用
对
加密分发至各设备,设备接收后通过PUF验证解密,得到专属签名
。
2) 密钥存储、更新及撤销机制
密钥存储:在AS侧,主私钥采用硬件常用的硬件加密与多副本冷备份相结合的存储方式,避免物理攻击与逻辑泄露。在网关侧,仅存储主公钥与临时聚合签名缓存,不存储任何私钥,降低网关被攻击后的密钥泄露风险。在设备侧,设备专属私钥通过PUF动态生成,避免私钥以明文形式存储在易被读取的闪存/内存中,私钥仅允许签名算法调用时单次加载,用完清除。
密钥更新:模型密钥更新采用双密钥过渡期机制策略,为密钥设置专用备用位置,根据算法需要更新密钥时,在主密钥继续使用的同时,将待更新密钥加载备用位置,并设置更换过渡期,过渡期间模型可支持两套密钥使用,并在过渡期内使用旧密钥完成一次完整的设备认证后,利用新密钥重新生成接入认证消息签名,完成新旧密钥更替。
密钥撤销:密钥的撤销以证书撤销列表(CRL)记录为依据,由AS主导,关联网关与设备。AS设置不同优先级别的CRL推送策略,并定期更新列表。
当设备正常退出时,AS检测设备30日未发起接入请求,将该设备专属密钥标记“待用”,若再合法启用,需重新申请,否则加入CRL中禁用;当设备异常接入时,网关检测到设备签名验证失败次数超过5次,或AS检测到设备伪造消息,则由AS将密钥标识加入CRL禁用。当检测到大规模伪造攻击时,AS紧急使用最优先级推送CRL新增列表,同步密钥撤销信息,降低攻击扩散风险。
3.3. 性能分析
3.3.1. 模型安全性分析
物联网设备接入认证的安全性主要是防止签名的伪造和篡改。本文提出的接入认证模型是基于格线性同态签名算法设计的,其安全性一方面基于线性同态签名算法本身的抗量子攻击特性,有效抵御量子级别攻击,防止签名的伪造和篡改;另一方面是得利于线性同态运算的优良性能,在验证过程中保护设备本身数据的隐私性。
抗量子安全:设计的NTRU型线性同态签名算法,其安全性是基于NTRU-SIS困难问题,攻击者要基于算法本身伪造或篡改出一个合法的签名,即要寻找另一个非零多项式对
,使得:
且
。进一步可得
,解此多项式的困难性归约到破解NTRU-SIS困难问题上,所以算法具有良好的抗量子攻击特性。
隐私保护:在设备接入认证过程中,AS只能看到聚合结果,无法获取单个设备的敏感数据
,保护敏感数据不被第三方获取。
3.3.2. 算法运算效率分析
物联网接入认证模型的效率主要取决于线性同态签名算法本身的效率。在满足抗量子安全条件下,将本文提出的NTRU型线性同态签名方案与Chen等人[13]和Li等人[5]提出的格基线性同态签名方案进行生成效率对比分析。并与同样基于多项式运算的典型Dilithium签名方案的性能进行对比。上述方案应用于物联网接入认证,当同时处理N台设备时,不考虑故障定位协议带来的计算影响,具体签名生成及验证时间如表1所示。
由表1可知,本文设计的方案在单签名生成和验证效率上,比文献[5]和[13]提出的线性同态签名方案较优,但不如Dilithium方案高效。生成的单个签名的尺寸比文献[5]和[13]方案生成的签名尺寸小,与Dilithium方案生成的签名尺寸相近。由于本文方案和文献[5]和[13]方案均满足线性同态性,所以在进行批量验证时,先对签名进行聚合而后进行验证,其验证效率与单个签名验证效率相近,而Dilithium方案需要对N个用户逐一进行验证。本文设计的方案核心优势在于处理批量签名验证,假设在同等计算复杂度系数条件下,设安全参数
,多项式维度
,模数
,设备数量
,签名消息长度
比特,NTT乘法系数设为0.5,多项式加法系数设为0.1。设计的NTRU型方案批量验证用时约为132.4 ms,而Dilithium方案完成批量验证用时大约265.6 ms,主要原因是由于Dilithium方案的非同态性质。
Table 1. Comparative analysis of generation efficiency and performance
表1. 生成效率及性能对比分析
性能指标 |
Chen等人方案[13] |
Lin等人方案[5] |
本文方案 |
Dilithium方案[18] |
单签名生成时间 |
|
|
|
|
单签名验证时间 |
|
|
|
|
批量验证时间 |
|
|
|
|
单签名大小 |
|
|
|
|
抗量子性 |
是 |
是 |
是 |
是 |
同态性 |
是 |
是 |
是 |
否 |
参数说明:Lin等人方案中设定的格维度
,Chen等方案中设定的矩阵行数
、标签长度
。
3.3.3. 算法通信开销分析
物联网接入认证模型的通信开销主要集中于“设备–网关–AS”之间的交互。设备向网关发送认证消息和签名信息,以及网关向AS发送聚合消息和聚合签名占用大量的通信开销,AS向网关返回验证结果及授权,网关向设备返回认证结果等通信开销可以忽略不计。设单设备认证消息长度为
,针对
级别数量的验证,同样在不考虑故障定位协议产生的通信负荷时,通信开销对比分析结果如表2所示。
Table 2. Comparison and analysis of communication overhead
表2. 通信开销对比及分析
方案类型 |
单设备开销 |
N台设备总通信开销 |
结果 |
Chen等人方案[13] |
|
|
中等 |
Lin等人方案[5] |
|
|
最大 |
Dilithium方案[18] |
|
|
较小 |
本文方案 |
|
|
较小 |
由于Dilithium方案的非同态性质,在物联网千级设备认证时,需要同时处理N台设备,并通过网关转发,所以通信开销增加2倍。通过表2可以看出,再进行单台设备通信时,Dilithium方案通信开销具有较大优势,但同时处理N台设备认证时,本文方案与Dilithium方案通信开销优势相近,远小于文献[5]和[13]方案的通信开销。
3.3.4. 模型可行性分析
计算资源受限环境下的可行性:可采用转载算力的方式来解决,在签名生成过程中,Babai算法迭代求解相对比较耗时,可根据实际应用环境要求将Babai算法转载。比如,当网关算力高于设备端,可将Babai算法转载至网关,设备采样生成小多项式e并设置好运算参数后,将最复杂的运算转载网关运算。
通信资源受限环境下的可行性:针对通信环境较差的应用场景中,对方案本身选择小规模参数,压缩生成信息空间,减小设备与网关、AS之间的通信负担;采用密钥封装,将密钥集成于安全元件或是PUF中,减小AS与设备、网关之间的通信负担;分段传输聚合签名,每段适配窄带宽传输要求,降低带宽占用率。
4. 结束语
本文提出的基于线性同态签名的敏感物联设备接入认证,为大规模、高并发物联网设备接入场景提供了一种有效的解决方法。设计的NTRU型线性同态签名算法能抵御量子攻击的同时,支持数据聚合验证,有效提升物联网网关接入验证效率。相比于传统的物联网接入认证算法(比如对称签名算法等),该线性同态签名算法还存在签名生成复杂度高、通信开销大等弊端,这也是提高安全性而带来的弊端。本研究对高并发、高安全需求的物联网场景提供了一种可行的认证解决方案。
基金项目
武警工程大学基础前沿创新项目(WJY202419)。
NOTES
*通讯作者。