基于同态原语的数据聚合完整性方案解析
1. 网络设置与安全目标
- 网络组成 :一个由 $n$ 个对能耗高度敏感的传感器节点和一个只关注统计结果(主要是均值和方差)的基站组成的传感器网络。为了实现高效的数据处理,网络中实施了数据聚合机制。
-
时间同步
:传感器节点间的松散时间同步对于消息聚合至关重要,假设网络中有安全的时间同步方案。在指定时间,网络输出一个由报告标识符
rid唯一标识的报告。 -
节点角色
:
- 贡献者 :收集环境数据并生成原始消息。
- 聚合器 :聚合接收到的消息(可能包括自身的原始消息),生成聚合消息。
- 验证器 :验证接收到消息的完整性。基站一定是验证器,而一个节点可以扮演其中部分或全部角色。
数据通过网络进行聚合,基站最终获取聚合结果。为计算测量值的均值,基站只需获取样本总和与贡献者数量;若要计算方差,贡献者还需提供读数的平方,聚合器相应地合并这些平方值。为支持高级聚合需求,引入了权重的概念,不同节点的测量值对最终报告的贡献可以有不同的权重。
2. 同态原语
同态属性在密码学操作中有广泛应用,相关的同态原语包括同态加密、同态 MAC、同态哈希和同态签名。
-
同态加密
:用户无需解密密钥就能对密文进行代数运算以得到对应明文的指定运算结果。虽目前的全同态加密方案性能在多数应用中不具竞争力,但为聚合消息的数据保密性提供了基础。
-
同态签名
:当前方案主要针对单发送者多接收者的安全多播场景,计算开销大,不太适合无线传感器网络(WSNs)的安全数据聚合完整性。
-
同态 MAC 和同态哈希
:可有效用于构建支持带权重加法聚合的消息完整性方案。
同态 MAC 定义
:
1.
同态性
:给定两个(消息,标签)对 $(m_1, t_1)$ 和 $(m_2, t_2)$,对于任意权重 $w_1$ 和 $w_2$,可创建聚合消息 $m_a = w_1m_1 + w_2m_2$ 的有效标签 $t_a = w_1t_1 + w_2t_2$。
2.
抗选择消息攻击安全性
:在选择消息攻击下,攻击者难以创建除先前查询消息线性组合之外的有效标签。
同态 MAC 由三个概率多项式时间算法组成:
-
Sign(k, rid, mu, idu)
:贡献者节点 $u$ 为原始消息 $m_u$ 关于报告
rid
计算标签 $t_u$。
-
Aggregate((m1, t1, w1), ..., (mj, tj, wj))
:聚合器在无密钥 $k$ 的情况下,为消息 - 标签对实现同态属性,生成聚合消息的标签。
-
Verify(k, rid, m, t)
:验证器使用密钥 $k$ 和标签 $t$ 验证消息 $m$ 关于报告
rid
的完整性。
同态哈希定义
:
1.
同态性
:对于任意两个消息 $m_1$、$m_2$ 和标量 $w_1$、$w_2$,有 $H(w_1m_1 + w_2m_2) = H(m_1)^{w_1}H(m_2)^{w_2}$。
2.
抗碰撞性
:不存在概率多项式时间(PPT)攻击者能伪造满足特定条件的消息和权重组合。
3. 基于同态 MAC 的安全聚合方案
-
方案描述
:
- 消息 $m$ 由 $d$ 个 $l$ 位的段组成,消息空间为 $F_q^d$。
- 所有贡献者和验证器共享一个由 $(k_1, k_2)$ 组成的全局 MAC 密钥,需要两个伪随机函数 $R_1 : K_1 \to F_q^d$ 和 $R_2 : (K_2 \times R \times I) \to F_q$。
三个算法的具体实现如下:
-
Sign(k, rid, mu, idu)(贡献者)
:
1. $a = R_1(k_1) \in F_q^d$。
2. $b_u = R_2(k_2, rid, id_u) \in F_q$。
3. $t_u = a \circ m_u + b_u \in F_q$,其中 $\circ$ 表示两个向量在有限域 $F_q$ 上的内积。
-
Aggregate((m1, t1, w1), …, (mj, tj, wj))(聚合器)
:
1. $m = \sum_{i = 1}^{j} w_im_i \in F_q^d$。
2. $t = \sum_{i = 1}^{j} w_it_i \in F_q$。
-
Verify(k, rid, m, t)(验证器)
:
1. $a = R_1(k_1) \in F_q^d$。
2. $b = \sum_{i = 1}^{j} [w_i \cdot R_2(k_2, rid, id_i)] \in F_q$。
3. 如果 $a \circ m + b = t$,输出 “ACCEPT”;否则输出 “REJECT”。
-
讨论与比较
:
- 该方案基于 $R_1$ 和 $R_2$ 的伪随机性,可能对选择消息攻击具有安全性。为达到 80 位的安全级别,标签大小 $l$ 不应小于 80。
- 与 AB 同态 MAC 方案相比,本方案去除了不必要的部分,提高了计算性能,且不受网络编码中对 $q$ 值的限制,可安全使用 $q \geq 2^{80}$。
- 与 CCMT 方案相比,CCMT 方案的消息空间受限,标签长度与消息最大长度相同,且缺乏严格的安全证明。本方案可看作 CCMT 方案和 AB 方案的结合。
该方案的安全性依赖于 $R_1$ 和 $R_2$ 的伪随机性,可使用 AES 实现这两个函数,以提高计算效率。但同态 MAC 的一个固有缺点是所有贡献者和验证器共享一个 MAC 密钥,若传感器节点不安全,系统安全将受到威胁。
4. 基于同态哈希的两个方案
为克服同态 MAC 方案中单一全局密钥的缺点,提出了基于同态哈希的两个方案。
-
同态哈希的构造
:目前有两种同态哈希函数。
-
基于离散对数
:设 $G$ 是一个素数阶 $p$ 的循环群,离散对数问题难解,公共参数包含 $G$ 的描述和 $d$ 个随机生成元 $g_1, g_2, \cdots, g_d \in G$。则消息 $m = (m_1, m_2, \cdots, m_d) \in Z_p^d$ 的同态哈希为 $H(m) = \prod_{i = 1}^{d} g_i^{m_i}$。
-
基于整数分解
:设 $N$ 是两个安全素数的乘积,$Q_N$ 是模 $N$ 的二次剩余群,$g_1, g_2, \cdots, g_d$ 是 $Q_N$ 的生成元。则消息 $m = (m_1, m_2, \cdots, m_d) \in Z_N^d$ 的同态哈希为 $H_N(m) = \prod_{i = 1}^{d} g_i^{m_i} \bmod N$。
比较这两种函数,基于离散对数的函数哈希值大小可通过椭圆曲线密码学(ECC)降低至约 160 位,更适合 WSNs 的安全数据聚合完整性。
-
通过同态哈希实现聚合完整性 :选择基于离散对数的同态哈希函数,消息空间为 $F_p^d$($p$ 为素数且 $p \geq 2^{160}$ 以提供 80 位安全)。节点 $i$ 为原始消息 $m_i$ 计算原始哈希值 $h_i = H(m_i)$,并使用某种机制对其签名。验证器接收聚合消息 $m = \sum_{i = 1}^{j}(w_jm_i)$ 及 $j$ 对(原始哈希值,权重)$(h_i, w_i)$ 后,先验证哈希值的有效性,再通过检查 $\prod_{i = 1}^{j} h_i^{w_i} \stackrel{?}{=} H(m)$ 来验证消息的完整性。
-
通过聚合 MAC 进行认证 :假设基站是唯一的验证器,节点 $i$ 使用与基站共享的对称密钥 $k_i$ 和标准确定性 MAC(如 CBC - MAC 或 HMAC)为原始哈希值 $h_i$ 生成标签 $t_i = Mac_{k_i}(rid, h_i)$。聚合器通过计算所有标签值的异或来聚合 $j$ 个标签:$t = \oplus_{i = 1}^{j} t_i$。基站使用聚合标签 $t$ 验证所有原始哈希值的真实性,检查 $t \stackrel{?}{=} \oplus_{i = 1}^{j} Mac_{k_i}(rid, h_i)$。
总结
本文介绍了传感器网络中基于同态原语的数据聚合完整性方案,包括同态 MAC 和同态哈希方案。同态 MAC 方案通过共享全局密钥实现消息完整性验证,但存在安全风险;基于同态哈希的方案通过不同的哈希函数构造和认证机制,提高了安全性和适用性。这些方案为传感器网络的数据聚合提供了有效的安全保障。
流程图
graph TD;
A[传感器网络] --> B[贡献者];
A --> C[聚合器];
A --> D[验证器];
B --> E[生成原始消息和标签];
E --> C[聚合消息和标签];
C --> F[输出聚合消息和标签];
F --> D[验证消息完整性];
D --> G{是否通过验证};
G -- 是 --> H[接受消息];
G -- 否 --> I[拒绝消息];
表格
| 方案类型 | 优点 | 缺点 |
|---|---|---|
| 同态 MAC 方案 | 计算效率高,可结合现有方案 | 共享单一密钥,安全性受节点安全性影响 |
| 基于离散对数的同态哈希方案 | 哈希值大小可控制,适合 WSNs | 依赖离散对数问题的难解性 |
| 基于整数分解的同态哈希方案 | 计算有一定优势 | 哈希值大小大,不适合 WSNs |
基于同态原语的数据聚合完整性方案解析(续)
5. 同态哈希方案的进一步分析
-
安全性分析
- 基于离散对数的同态哈希方案的安全性主要依赖于离散对数问题的难解性。在一个素数阶 $p$ 的循环群 $G$ 中,若攻击者想要伪造一个有效的哈希值来通过验证,就需要解决离散对数问题,而目前这在计算上是不可行的。例如,当验证器验证 $\prod_{i = 1}^{j} h_i^{w_i} \stackrel{?}{=} H(m)$ 时,攻击者若想构造出满足该等式的虚假哈希值,就必须找到合适的离散对数解。
- 基于整数分解的同态哈希方案的安全性则依赖于整数分解问题的难解性。因为找到哈希碰撞在计算上等同于分解 $N$,而分解两个大素数的乘积 $N$ 是一个困难的问题。
-
性能分析
- 计算复杂度:基于离散对数的同态哈希计算涉及到指数运算,在使用椭圆曲线密码学(ECC)时,其计算复杂度相对较低。而基于整数分解的同态哈希计算,由于涉及到模幂运算和对大整数 $N$ 的处理,计算复杂度相对较高。
- 通信复杂度:基于离散对数的同态哈希函数的哈希值大小可通过 ECC 降低至约 160 位,减少了通信开销。而基于整数分解的同态哈希函数的哈希值大小与 $N$ 相同,通常较大,会增加通信负担。
6. 方案的实际应用场景
-
环境监测
- 在环境监测传感器网络中,节点需要定期收集温度、湿度、辐射等环境信息,并将数据聚合后发送给基站。同态 MAC 方案可以在保证一定安全性的前提下,通过共享全局密钥实现高效的消息完整性验证。而基于同态哈希的方案则可以进一步提高安全性,特别是在节点安全性无法得到充分保障的情况下。
-
操作步骤:
- 每个节点在指定时间收集环境数据,作为原始消息。
- 贡献者节点使用相应的方案(同态 MAC 或同态哈希)生成标签。
- 聚合器节点将接收到的消息和标签进行聚合。
- 基站作为验证器,验证聚合消息的完整性。
-
工业监控
- 在工业监控场景中,传感器网络用于监测设备的运行状态、生产数据等。由于工业环境的复杂性和对数据安全性的高要求,基于同态哈希的方案更适合。例如,在一个工厂的生产线上,多个传感器节点收集设备的运行参数,通过同态哈希方案可以确保数据在传输和聚合过程中的完整性。
-
操作步骤:
- 传感器节点实时收集工业设备的数据。
- 节点计算原始哈希值并使用聚合 MAC 等机制进行签名。
- 聚合器对哈希值和消息进行聚合。
- 中央监控系统(相当于基站)验证数据的完整性。
7. 方案的优化建议
-
密钥管理优化
- 对于同态 MAC 方案,可以采用密钥更新机制,定期更新全局 MAC 密钥,以降低因节点被攻破而导致的安全风险。
- 对于基于同态哈希的方案,可以使用密钥分层管理,不同层次的节点使用不同的密钥,提高密钥的安全性。
-
计算性能优化
- 在实现同态 MAC 方案的伪随机函数 $R_1$ 和 $R_2$ 时,可以采用更高效的算法或硬件加速技术,提高计算效率。
- 对于同态哈希计算,可以进一步优化指数运算和模幂运算的算法,减少计算时间。
8. 总结与展望
本文详细介绍了基于同态原语的数据聚合完整性方案,包括同态 MAC 和同态哈希方案。同态 MAC 方案具有计算效率高的优点,但存在共享单一密钥的安全隐患;基于同态哈希的方案通过不同的构造和认证机制,提高了安全性和适用性,特别是基于离散对数的同态哈希方案更适合无线传感器网络。
未来的研究方向可以集中在以下几个方面:
- 进一步优化方案的安全性和性能,例如寻找更高效的同态哈希函数和密钥管理方法。
- 探索方案在更多复杂场景下的应用,如物联网、智能交通等。
- 研究如何将这些方案与其他安全技术相结合,提供更全面的安全保障。
流程图
graph TD;
A[节点收集数据] --> B[生成哈希值];
B --> C[使用聚合 MAC 签名];
C --> D[聚合器聚合数据和签名];
D --> E[基站验证数据完整性];
E --> F{验证通过?};
F -- 是 --> G[数据可用];
F -- 否 --> H[数据丢弃];
表格
| 优化方向 | 具体措施 | 效果 |
|---|---|---|
| 密钥管理优化 | 同态 MAC 方案定期更新全局密钥,同态哈希方案采用密钥分层管理 | 提高密钥安全性,降低节点被攻破的风险 |
| 计算性能优化 | 采用高效算法或硬件加速技术实现伪随机函数,优化同态哈希计算算法 | 减少计算时间,提高计算效率 |
超级会员免费看
1009

被折叠的 条评论
为什么被折叠?



