短配对高效阈值属性基签名方案解析
1. 基础概念
- 计算 Diffie - Hellman 问题优势 :定义敌手 $B$ 解决计算 Diffie - Hellman 问题的优势为 $Adv_{CDH}^B = Pr[B(G, p, g, g^a, g^b) = g^{ab}]$,其中概率是关于 $a$、$b$ 的选择以及算法 $B$ 的随机硬币。若对于所有概率多项式时间算法 $B$,$Adv_{CDH}^B$ 相对于输入可忽略,则计算 Diffie - Hellman 假设成立。
- 抗碰撞哈希函数 :设 $F = {H : {0, 1}^m \to {0, 1}^l}$ 是哈希函数族,其中 $m$ 和 $l$ 是安全参数 $\kappa$ 的函数且 $m > l$。定义敌手 $C$ 破坏 $F$ 抗碰撞性的优势为 $Adv_{CR}^C = Pr[(x, y) \leftarrow C(H); H(x) = H(y)]$,若对于所有概率多项式时间算法 $C$,$Adv_{CR}^C$ 可忽略,则函数族 $F$ 是抗碰撞的。
-
双线性映射
:设 $G$ 和 $G_T$ 是素数阶 $p$ 的循环群,双线性映射 $e : G \times G \to G_T$ 满足以下性质:
- 双线性:对于所有 $g \in G$ 和 $a, b \in Z_p^*$,有 $e(g^a, g^b) = e(g, g)^{ab}$。
- 非退化:给定 $g_1, g_2 \in G \setminus {1_G}$,有 $e(g_1, g_2) \neq 1_{G_T}$。
- 高效可计算。
2. 属性基签名方案构造
2.1 (t, t) - ABS 小属性域方案
-
设置阶段
:
- 设 $G$ 和 $G_T$ 是素数阶 $p$ 的群,$e : G \times G \to G_T$ 是双线性映射,$g$ 是 $G$ 的生成元。
- 从合适的抗碰撞哈希函数族中采样 $H : {0, 1}^* \to {0, 1}^{nm}$。
- 采样 $a, b \in_R Z_p^*$,设置 $g_1 = g^a$,$g_2 = g^b$。
- 对于 $1 \leq i \leq \hat{n}$,采样 $z_i \in_R Z_p^*$,设置 $h_i = g^{z_i}$。
- 采样 $h_0, u_0, \cdots, u_{nm} \in_R G \setminus {1_G}$。
- 公共参数为 ${G, G_T, e, p, g, g_1, g_2, h_0, \cdots, h_{\hat{n}}, u_0, \cdots, u_{nm}, H}$,主密钥为 ${a, b, z_1, \cdots, z_{\hat{n}}}$。
- 定义函数 $W(x) = u_0 \prod_{i = 1}^{nm} u_{i}^{x[i]}$,其中 $x$ 是长度为 $nm$ 的二进制字符串,$x[i]$ 表示 $x$ 的第 $i$ 位。
-
提取阶段
:设 $\omega_u$ 是用户的属性集,$\omega_u \subseteq U$。用户 $\omega_u$ 的私钥构造如下:
- 设 $f_u$ 是次数为 $t - 1$ 的随机多项式,使得 $f_u(0) = a$。
- 对于每个 $i \in \omega_u$,计算 $D_i = g^{f_u(i) + z_i} h_0^{z_i}$。
- 用户的私钥为 ${D_i}_{i \in \omega_u}$。
-
签名阶段
:给定签名密钥 $sk_{\omega_u}$ 和签名属性集 $\omega_s \subset \omega_u$ 且 $|\omega_s| = t$,消息 $m \in {0, 1}^*$ 的签名计算如下:
- 采样 $c \in_R Z_p^*$。
- 计算 $\rho = H(m || \omega_s)$ 和 $S = W(\rho)^c \cdot \prod_{i \in \omega_s} (D_i)^{\Delta_{i, \omega_s}(0)}$。
- 签名为 $(S, g^c)$。
-
验证阶段
:给定消息 $m$、签名 $(S_1, S_2)$ 和验证属性集 $\omega_v$ 且 $|\omega_v| = t$,验证者操作如下:
- 计算 $\hat{\rho} = H(m || \omega_v)$(注意 $\omega_s = \omega_v$)。
- 验证等式 $\frac{e(g, S_1)e(h_0 \cdot g_2^{-1}, \prod_{i \in \omega_v} h_i^{\Delta_{i, \omega_v}(0)})}{e(W(\hat{\rho}), S_2)} = e(g_1, g_2)$ 是否成立,若成立输出 1,否则输出 0。
该方案具有以下定理:
- 定理 3.11:在哈希函数 $H$ 具备上述性质的假设下,任何针对该方案的 s - EUF - CMA 敌手 $A$ 可用于构造算法 $B$ 和 $C$,它们与 $A$ 运行时间基本相同,分别解决计算 Diffie - Hellman 问题和破坏 $H$ 的抗碰撞性,且 $Adv_{CMA}^A \leq 8Q(nm + 1)Adv_{CDH}^B + Adv_{CR}^{C, H}$,其中 $Q$ 是敌手 $A$ 进行的签名查询次数,$nm$ 是哈希函数的输出长度。
- 定理 3.12:该方案是私密的。
2.2 (t, t) - ABS 大属性域方案
- 设置阶段 :除了与小属性域方案相同的参数设置外,对于 $1 \leq i \leq \tilde{n} + 1$,采样 $z_i’ \in_R Z_p^*$,设置 $h_i = g^{z_i’}$。定义函数 $T(x) = g^{x\tilde{n}} \prod_{j = 1}^{\tilde{n} + 1} h_j^{\Delta_{j, N}(x)}$,其中 $\Delta_{j, S}(x) = \prod_{k \neq j, k \in S} \frac{x - k}{j - k}$ 是拉格朗日系数,$N = {1, \cdots, \tilde{n} + 1}$。公共参数为 ${G, G_T, e, p, g, g_1, g_2, h_0, \cdots, h_{\tilde{n} + 1}, u_0, \cdots, u_{nm}, H}$,主密钥为 ${a, b, z_1’, \cdots, z_{\tilde{n} + 1}’}$。
-
提取阶段
:设 $\omega_u$ 是用户的属性集,$\omega_u \subseteq U$。用户 $\omega_u$ 的私钥构造如下:
- 设 $f_u$ 是次数为 $t - 1$ 的随机多项式,使得 $f_u(0) = a$。
- 对于所有 $i \in \omega_u$,计算 $D_i = g^{f_u(i) + z_i} h_0^{z_i}$,其中 $z_i = a i^{\tilde{n}} + \sum_{j = 1}^{\tilde{n} + 1} (z_i’ \Delta_{j, N}(i))$。
- 用户的私钥为 ${D_i}_{i \in \omega_u}$。
- 签名阶段 :与小属性域方案的签名算法相同。
-
验证阶段
:给定消息 $m$、签名 $(S_1, S_2)$ 和验证属性集 $\omega_v$,验证者操作如下:
- 计算 $\hat{\rho} = H(m || \omega_v)$(注意 $\omega_s = \omega_v$)。
- 检查等式 $\frac{e(g, S_1)e(h_0 \cdot g_2^{-1}, \prod_{i \in \omega_v} T(i)^{\Delta_{i, \omega_v}(0)})}{e(S_2, W(\hat{\rho}))} = e(g_1, g_2)$ 是否成立,若成立输出 1,否则输出 0。
该方案也有类似的安全定理:
- 定理 3.21:在与定理 3.11 相同的关于 $H$ 输出分布的假设下,任何针对该方案的 s - EUF - CMA 敌手 $A$ 可用于构造算法 $B$ 和 $C$,它们与 $A$ 运行时间基本相同,分别解决计算 Diffie - Hellman 问题和破坏 $H$ 的抗碰撞性,且 $Adv_{CMA}^A \leq 8Q(nm + 1)Adv_{CDH}^B + Adv_{CR}^{C, H}$。
- 定理 3.22:该方案是私密的。
2.3 (t, n) - ABS 方案:阈值验证
- 设置阶段 :与小属性域的 (t, t) - ABS 方案相同。
- 提取阶段 :与小属性域的 (t, t) - ABS 方案相同。
-
签名阶段
:给定签名密钥 $sk_{\omega_u}$ 和签名属性集 $\omega_s \subset \omega_u$ 且 $|\omega_s| \geq t$,消息 $m \in {0, 1}^*$ 的签名计算如下:
- 采样 $c \in_R Z_p^*$。
- 计算 $\rho = H(m || \omega_s)$,对于每个 $i \in \omega_s$,计算 $S_i = (D_i) (W(\rho))^c$。
- 签名为 ${S_i}_{i \in \omega_s}, g^c$。
-
验证阶段
:收到消息 $m$、$\omega_s$ 和签名 ${S_{1i}}_{i \in \omega_s}, S_2$ 后,验证者操作如下:
- 设 $\Omega \subset \omega_s$ 是大小至少为 $t$ 的属性集,验证者希望针对该属性集验证签名。
- 计算 $\hat{\rho} = H(m || \omega_s)$。
- 验证等式 $\frac{e(g, \prod_{i \in \Omega} S_{1i}^{\Delta_{i, S}(0)}) e(h_0 \cdot g_2^{-1}, \prod_{i \in \Omega} h_i^{\Delta_{i, S}(0)})}{e(W(\hat{\rho}), S_2)} = e(g_1, g_2)$ 是否成立,若成立输出 1,否则输出 0。
该方案的安全定理如下:
- 定理 3.31:在与定理 3.11 相同的关于 $H$ 输出分布的假设下,任何针对该 (t, n) - ABS 方案的 s - EUF - CMA 敌手 $A$ 可用于构造算法 $B$ 和 $C$,它们与 $A$ 运行时间基本相同,分别解决计算 Diffie - Hellman 问题和破坏 $H$ 的抗碰撞性,且 $Adv_{CMA}^A \leq 8Q(nm + 1)Adv_{CDH}^B + Adv_{CR}^{C, H}$。
3. 效率分析
| 类型 | 方案 | 参数大小 | 签名大小 | 配对次数 | 验证指数运算次数 | 签名指数运算次数 |
|---|---|---|---|---|---|---|
| (t, t) | 方案 1 | $\hat{n} + nm + 4$ | 2 | 3 | $t + 1$ | $t$ |
| (t, t) | 方案 2 | $\tilde{n} + nm + 5$ | 2 | 3 | $t + 1$ | $t$ |
| (t, t) | [9] | $\tilde{n} + 4$ | $2t + 1$ | 1 | $t$ | $3t$ |
| (t, t) | [5] | $\tilde{n} + d + 3$ | $t + d - k + 2$ | $t$ | $t + 2$ | 0 |
| (t, n) | 方案 3 | $\hat{n} + nm + 5$ | $n + 1$ | 3 | 1 | $2t$ |
| (t, n) | [9] | $\tilde{n} + 4$ | $2n + 1$ | 2 | $t$ | $3t$ |
| (t, n) | [5] | $\tilde{n} + d + 3$ | $n + d - k + 2$ | $t$ | $t + 2$ | $t$ |
从表格中可以看出,所有 (t, n) - ABS 方案的签名大小与签名属性数量呈线性关系,而我们的 (t, t) - ABS 方案签名大小是常数。我们的 (t, t) - ABS 和 (t, n) - ABS 构造的主要优势在于验证时的配对操作次数和签名大小与签名和验证中使用的属性集大小无关,而其他方案需要线性数量的配对操作。此外,除了 [5] 的 (t, t) - ABS 方案外,所有 ABS 方案的签名验证都需要线性数量的指数运算。
下面是 (t, t) - ABS 小属性域方案的流程 mermaid 图:
graph LR
classDef startend fill:#F5EBFF,stroke:#BE8FED,stroke-width:2px
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px
classDef decision fill:#FFF6CC,stroke:#FFBC52,stroke-width:2px
A([开始]):::startend --> B(设置阶段):::process
B --> C(提取阶段):::process
C --> D(签名阶段):::process
D --> E(验证阶段):::process
E --> F{验证通过?}:::decision
F -->|是| G([结束 - 验证成功]):::startend
F -->|否| H([结束 - 验证失败]):::startend
4. 方案扩展
4.1 在随机预言模型中减少公共参数大小
可以通过将其中一个哈希函数建模为随机预言机来减少方案的公共参数大小。这里以小属性域构造为例进行说明,类似的方法也可应用于 (t, t) - ABS 大属性域方案和 (t, n) - ABS 方案。
-
设置阶段
:
- 设 $G$ 和 $G_T$ 是素数阶 $p$ 的群,$e : G \times G \to G_T$ 是双线性映射,$g$ 是 $G$ 的生成元。
- 采样 $a, b \in_R Z_p^*$,设置 $g_1 = g^a$,$g_2 = g^b$。
- 采样 $h_0 \in_R G \setminus {1_G}$。
- 对于 $1 \leq i \leq \hat{n}$,采样 $z_i \in_R Z_p^*$,设置 $h_j = g^{z_i}$。
- 设 $H : {0, 1}^ \times Z_p^ \to G^*$ 是哈希函数,在证明中该函数被建模为随机预言机。
- 公共参数为 ${G, G_T, e, p, g, g_1, g_2, h_0, \cdots, h_{\hat{n}}, H}$,主密钥为 ${a, b, z_1, \cdots, z_n}$。
-
提取阶段
:设 $\omega_u$ 是用户的属性集,$\omega_u \subseteq U$。用户 $\omega_u$ 的私钥构造如下:
- 设 $f_u$ 是次数为 $t - 1$ 的随机多项式,使得 $f_u(0) = a$。
- 对于每个 $i \in \omega_u$,计算 $D_i = g^{f_u(i) + z_i} h_0^{z_i}$。
- 用户的私钥为 ${D_i}_{i \in \omega_u}$。
-
签名阶段
:给定签名密钥 $sk_{\omega_u}$ 和签名属性集 $\omega_s \subset \omega_u$ 且 $|\omega_s| = t$,消息 $m \in {0, 1}^*$ 的签名计算如下:
- 采样 $c, c_1 \in_R Z_p^*$。
- 计算 $g_m = H(c_1 || m || \omega_s)$。
- 计算 $S = g_m^c \cdot \prod_{i \in \omega_s} (D_i)^{\Delta_{i, \omega_s}(0)}$。
- 签名为 $(S, g^c, c_1)$。
-
验证阶段
:给定消息 $m$、签名 $(S_1, S_2, S_3)$ 和验证属性集 $\omega_v$,验证者操作如下:
- 计算 $g_m’ = H(S_3 || m || \omega_v)$(注意 $\omega_s = \omega_v$)。
- 验证等式 $\frac{e(g, S_1)e(h_0 \cdot g_2^{-1}, \prod_{i \in \omega_v} h_i^{\Delta_{i, \omega_v}(0)})}{e(S_2, g_m’)} = e(g_1, g_2)$ 是否成立,若成立输出 1,否则输出 0。
该方案有如下定理:
- 定理 5.11:任何针对上述方案的 s - EUF - CMA 敌手 $A$ 可用于构造算法 $B$,其与 $A$ 运行时间基本相同,且能解决计算 Diffie - Hellman 问题,有 $Adv_{CMA}^A \leq Adv_{CDH}^B + Q_S(Q_H + Q_S) + \frac{1}{p}$,其中 $Q_H$ 和 $Q_S$ 分别是敌手 $A$ 进行的随机预言机查询和签名查询次数,$p$ 是循环群的大小。
下面是随机预言模型下小属性域方案的流程 mermaid 图:
graph LR
classDef startend fill:#F5EBFF,stroke:#BE8FED,stroke-width:2px
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px
classDef decision fill:#FFF6CC,stroke:#FFBC52,stroke-width:2px
A([开始]):::startend --> B(设置阶段):::process
B --> C(提取阶段):::process
C --> D(签名阶段):::process
D --> E(验证阶段):::process
E --> F{验证通过?}:::decision
F -->|是| G([结束 - 验证成功]):::startend
F -->|否| H([结束 - 验证失败]):::startend
4.2 灵活阈值
为了使方案更加灵活,可以对其进行修改以支持灵活阈值,可采用以下一种或两种技术:
-
改变多项式次数
:密钥生成算法在响应每个密钥生成查询时,通过生成不同次数的多项式为每个用户赋予不同的阈值。这种泛化不会影响安全证明。
-
添加虚拟属性
:密钥生成算法可以在用户的属性集中包含 $d$ 个虚拟属性。这将允许阈值为 $t$ 的用户生成包含 $t - d$ 到 $t$ 个属性的签名。
总结
本文详细介绍了短配对高效阈值属性基签名方案,包括 (t, t) - ABS 小属性域方案、(t, t) - ABS 大属性域方案和 (t, n) - ABS 方案。通过对这些方案的设置、提取、签名和验证阶段的描述,以及相应的安全定理证明,展示了方案的安全性。效率分析表明,我们的 (t, t) - ABS 方案签名大小为常数,且 (t, t) - ABS 和 (t, n) - ABS 构造在验证时的配对操作次数和签名大小与属性集大小无关,具有明显优势。此外,还介绍了在随机预言模型中减少公共参数大小和实现灵活阈值的扩展方法,进一步提升了方案的实用性和灵活性。
以下是不同方案的特点总结表格:
| 方案类型 | 签名大小 | 配对操作次数与属性集关系 | 公共参数大小优化方式 | 阈值灵活性 |
| ---- | ---- | ---- | ---- | ---- |
| (t, t) - ABS 小属性域方案 | 常数 | 无关 | 随机预言模型 | 可通过改变多项式次数和添加虚拟属性实现 |
| (t, t) - ABS 大属性域方案 | 常数 | 无关 | 随机预言模型 | 可通过改变多项式次数和添加虚拟属性实现 |
| (t, n) - ABS 方案 | 与签名属性数量呈线性关系 | 无关 | 随机预言模型 | 可通过改变多项式次数和添加虚拟属性实现 |
超级会员免费看

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



