线性代数中的高效轮次次线性零知识论证及可随机化密文签名
线性代数零知识论证
模拟器构造与证明
在零知识论证中,我们构造了一个模拟器 SimA′,它能生成论证 A′ 的证明者的所有输出 (p0, · · · , p′i, · · · , pm)。原始论证 A 具有 SHVZK 属性,存在模拟器 SimA 可以根据给定的公共输入 CI 和挑战 e1, · · · , em,以概率 X(p0,··· ,pi,··· ,pm) 生成论证 A 的证明者的所有输出 (p0, · · · , pi, · · · , pm)。
SimA′ 的构造步骤如下:
1. SimA′ 以输入 CI 和 e1, · · · , em 运行 SimA,得到 (p0, · · · , pi, · · · , pm)。
2. 它以输入 CI、e1, · · · , em 和 (p0, · · · , pi, · · · , pm) 运行 Alg,接收 Alg 的输出 p′i。
3. SimA′ 输出 (p0, · · · , p′i, · · · , pm)。
对于每个 (p0, · · · , p′i, · · · , pm),我们考虑 Pr[SimA′ →(p0, · · · , p′i, · · · , pm)]:
[
\begin{align
}
Pr[SimA′ →(p0, · · · , p′i, · · · , pm)]&= Pr[SimA →(p0, · · · , pi, · · · , pm) 使得 pi = Fi(p′i, ei), 并且 Alg →p′i]\
&= Pr[SimA →(p0, · · · , pi, · · · , pm) 使得 pi = Fi(p′i, ei)] \cdot Pr[Alg(CI, e1, · · · , em, (p0, · · · , pm)) →p′i]\
&= X(p0,··· ,pi,··· ,pm) \cdot \frac{Y(p0,··· ,p′i,··· ,pm)}{X(p0,··· ,pi,··· ,pm)}\
&= Y(p0,··· ,p′i,··· ,pm)
\end{align
}
]
这里的概率涵盖了 SimA 和 Alg 使用的所有随机性。第二个等式成立是因为两个算法 SimA 和 Alg 使用独立的随机性。
应用于线性代数的 SHVZK 论证
应用一:z = ∑mi=1 xiYi 的 SHVZK 论证
在应用一般变换之前,我们对 z = ∑mi=1 xiYi 的 SHVZK 论证进行修改。这个修改不影响论证本身,但在证明者一侧增加了冗余计算,以便我们更容易应用一般变换。
原始的 5 轮 SHVZK 论证过程如下:
graph LR
P -->|C1,··· ,C2m−2| V
V -->|e1| P
P -->|定义 Cx′, Cy′(j), Cz′ for j ∈[1, n]| P
P -->|Cˆx, Cy′(0), Cˆz| V
V -->|e2| P
P -->|˜x, ˜r, ˜y, ˜s, ˜t| V
修改后的过程如下:
1.
步骤 (1)
:计算 Cˆxk、Cy′(0) 和 C′ℓ
- Cˆxk = Com(ˆxk, ˆrk) 对于 k ∈[1, m],其中 ˆxk $← Fnp,ˆrk $← Fp。
- Cy′(0) = Com(y′(0); s′(0)) 其中 y′(0) $← Fnp,s′(0) $← Fp。
- C′ℓ = Com(0; ˆtℓ)(∏i,k:ℓ=m+k−i−1 ∏nj=1 Cˆζ(j)k y(j)i ),其中 ˆxk = (ˆζ(1)k , · · · , ˆζ(n)k )。
2.
步骤 (2)
:使用 Cˆxk、C′ℓ 和第一个挑战 e1 计算 Cˆx 和 Cˆz
- Cˆx = ∏mk=1 (Cˆxk)ek−11 。
- Cˆz = ∏2m−2ℓ=0 C′eℓ1 ℓ。
经过计算可以证明,Cˆx 和 Cˆz 的分布在修改前后是相同的。
现在,我们可以将一般变换应用于这个修改后的 SHVZK 论证。在修改后的论证中,我们将第三步视为函数 P1(PI, CI, ρ, e1) 的输出,并且可以将 P1(PI, CI, ρ, e1) 分为两个步骤。所有与挑战 e1 相关的计算都包含在步骤 (2) 中,而不在步骤 (1) 中。因此,函数 P1(PI, CI, ρ, e1) 可以重写为 F1(P ′1(PI, CI, ρ), e1),其中 P ′1 表示步骤 (1) 的函数,F1 表示步骤 (2) 的函数。
graph LR
A[P1(PI, CI, ρ, e1)] --> B[P ′1(PI, CI, ρ)]
A --> C[e1]
B --> D[F1(P ′1(PI, CI, ρ), e1)]
C --> D
为了证明简化后的论证具有完美的 SHVZK,我们构造一个满足引理 3 条件的算法 Alg。具体来说,我们考虑引理 3 中定义的概率 X(p0,p1,p2) 和 Y(p0,p′1,p2)。由于我们使用了完美隐藏承诺方案,p0 和 p1 是独立的,p0 和 p′1 也是独立的。因此,我们得到:
[
\frac{Y(p0,p′1,p2)}{X(p0,p1,p2)} = \frac{Pr[P0 = p0] \cdot Pr[P ′1 = p′1] \cdot Pr[P2 = p2|p0, p′1]}{Pr[P0 = p0] \cdot Pr[P1 = p1] \cdot Pr[P2 = p2|p0, p1]} = \frac{Pr[P ′1 = p′1]}{Pr[P1 = p1]} = Pr[P ′1 = p′1|P1 = p1]
]
算法 Alg 的构造如下:
1. Alg 以 Cˆx、Cˆz 和 e1 作为输入。
2. 它随机选择 Cy′(0)、Cˆxk 和 C′ℓ 对于 k ∈[2, m] 和 ℓ∈[1, 2m - 2]。
3. 计算 Cˆx1 = Cˆx ∏mk=1 (Cˆxk)−ek−11 和 C′0 = Cˆz ∏2m−2ℓ=1 (C′ℓ)−eℓ1。
这样,Cˆxk 和 C′ℓ 对于 k ∈[1, m] 和 ℓ∈[0, 2m - 2] 在满足 Cˆx = ∏mk=1 (Cˆxk)ek−11 和 Cˆz = ∏2m−2ℓ=0 C′eℓ1 ℓ 的限制下是均匀分布的。我们可以很容易地检查 Alg 满足引理 3 的条件,并且由于原始论证具有 SHVZK 属性,根据引理 3,简化后的论证具有完美的 SHVZK。
我们得到以下定理:
定理 3
:将一般变换应用于 z = ∑mi=1 xiYi 的 5 轮 SHVZK 论证得到的简化 3 轮论证具有完美的完整性、完美的 SHVZK 和见证扩展仿真。
复杂度分析
:
- 所提出的论证需要 3 次移动。证明者向验证者发送 5m - 2 个承诺和 2n + 3 个域元素。
- 证明者的计算主要由 Cℓ 和 C′ℓ 对于 ℓ∈[0, 2m - 2]、Cxk 对于 k ∈[1, m] 和 y′(j) 决定。如果我们简单地计算它们,需要 2m²n + mn 次群指数运算和 mn² 次域乘法。然而,如果我们使用多指数运算技术,它们需要少于 4m²nκ / log m²n + 2mnκ / log n 次 G 中的乘法和 mn² 次域乘法,其中 κ 是 p 的大小。
- 验证者计算 12mκ / log m 次群乘法来定义 Cx′、Cz′、Cˆx 和 Cˆz,2mnκ / log m 次群乘法来定义 Cy′(j) 对于 j ∈[1, m],以及 8nκ / log n 次群乘法在验证过程中。我们可以使用批量验证技术将 8nκ / log n 次群乘法减少到 6nκ / log n 次。
应用二:z = ∑mi=1 xi ∗yi 的 SHVZK 论证
我们可以将一般变换应用于 z = ∑mi=1 xi ∗yi 的 5 轮 SHVZK 论证,以简化为相同关系的 3 轮 SHVZK 论证。基本策略与 z = ∑mi=1 xiYi 的 SHVZK 论证情况类似。
定理 4 :将一般变换应用于 z = ∑mi=1 xi ∗yi 的 5 轮 SHVZK 论证得到的简化 3 轮论证具有完美的完整性、完美的 SHVZK 和见证扩展仿真。
比较
我们将结果与其他 SHVZK 论证进行比较。对于三种类型的方程 z = ∑mi=1 xiYi、z = ∑mi=1 xi ◦yi 和 z = ∑mi=1 xiy⊤i,我们得到的 3 轮 SHVZK 论证的轮数比其他方案少,但通信开销与它们相似。在 z = ∑mi=1 xiy⊤i 的情况下,我们构建的 3 轮 SHVZK 论证的通信和计算开销是其他方案的四倍。
| SHVZK 论证 | 轮数(我们的) | 轮数(其他) | 通信(我们的) | 通信(其他) |
|---|---|---|---|---|
| z = ∑mi=1 xiYi | 3 | 8 | 5mκ′ + 2nκ | 7mκ′ + 2nκ |
| z = ∑mi=1 xi ◦yi | 3 | 6 | 8mκ′ + 2nκ | 2mκ′ + 2nκ |
| z = ∑mi=1 xiy⊤i | 3 | 5 | 8mκ′ + 2nκ | 2mκ′ + 2nκ |
| 证明者计算(我们的) | 证明者计算(其他) | 验证者计算(我们的) | 验证者计算(其他) | |
|---|---|---|---|---|
| z = ∑mi=1 xiYi | mn² + 2mnκτ / log n + 4m²nκτ / log mn | 9m²n + 12mκτ + 4mnκτ / log n | 12mκ / log m + 2mnκ / log m + 6nκ / log n | 2mκτ + 24mκτ / log m + 2mnκτ / log n |
| z = ∑mi=1 xi ◦yi | 4m²n + 16mnκτ / log n | 2m²n + 4mκτ + 4nκτ / log n | 20mκ / log m + 2nκ / log n | 8mκτ / log m + 2nκτ / log n |
| z = ∑mi=1 xiy⊤i | 4m²n + 12mκτ + 4mnκτ / log n | m²n + 4mκτ + 4nκτ / log n | 20mκτ / log m + 2nκτ / log n | 8mκτ / log m + 2nκτ / log n |
这里,xi, yi, z ∈ Fnp,z ∈ Fp,Yi ∈ Matn×n(Fp),κ′ 是 G 中群元素的大小,κ 是 Fp 中域元素的大小,τ 是以 Fp 中的乘法衡量的 G 中乘法的成本。
可随机化密文签名
引言与动机
同态加密允许任何人将密文转换为同一消息的新密文。类似地,可随机化签名可以转换为同一消息的新签名。我们将可随机化加密和签名结合成一个新的原语:给定密文上的签名,任何人在不知道签名密钥和加密消息的情况下,可以随机化密文并调整签名以适应新的加密,从而保持公开可验证性。此外,给定解密密钥和密文上的签名,可以计算(“提取”)加密明文上的签名。
在电子投票方案中,使用同态加密,用户加密他们的投票并添加证明和签名。投票中心可以将密文随机化并调整签名和证明,这样既可以防止选民证明他们的投票内容,又能保持普遍可验证性。在盲签名场景中,用户加密消息并请求对密文的签名。如果用户可以从中提取消息上的签名,并且使用可随机化签名,就可以通过随机化签名来实现不可链接性,避免签名者识别签名并破坏盲性。
新原语的定义与性质
可随机化密文签名
我们引入可随机化密文签名的概念:给定密文上的签名,任何人在不知道签名密钥和加密消息的情况下,可以随机化密文并调整签名以适应新的加密。密文和签名的对可以同时且一致地随机化。
由于将一个密文上的签名调整为另一个密文上的签名与签名的标准不可伪造性概念相矛盾,我们定义了一个较弱的概念:可随机化密文签名的不可伪造性意味着对手只能对其已经知道签名的加密消息生成签名,而不能对新消息的加密生成签名。形式上,没有对手可以在查询其选择的密文签名后,输出对解密后与所有查询密文解密结果不同的密文的签名。
可提取的可随机化密文签名
我们将原语扩展到可提取的可随机化密文签名:给定解密密钥,从密文上的签名可以提取加密明文上的签名。这使得在盲签名方案中,用户在签名者对消息的加密进行签名后,可以恢复消息上的签名。
实例化
我们给出了几个可提取的可随机化密文签名的实例,所有这些实例都基于弱假设。我们的构造使用了以下构建块:
- 用于配对友好群上语言的见证不可区分 Groth - Sahai 证明 [GS08]。
- 派生自 [Wat05] 方案并在 [BW06] 中使用的 Waters 签名。
由于 Waters 签名的验证是 Groth - Sahai 证明语言的一个陈述,这两个构建块可以顺利结合。
第一个实例在对称配对友好椭圆曲线上,并额外使用线性加密 [BBS04]。这个构造的不可伪造性和语义安全性仅依赖于决策线性假设 (DLin)。由于空间限制,一个在非对称双线性群中使用 ElGamal 加密和 Groth - Sahai 证明的 SXDH 变体的更高效实例可以在完整版本中找到。这个设置需要将 Waters 签名方案转移到非对称群。标准的 Waters 签名在计算 Diffie - Hellman 假设 (CDH) 下是安全的,而我们的变体在一个稍强的假设 CDH + 下被证明是安全的,其中第二组中有一些额外的元素。
应用
电子投票方案
我们展示了如何构建一个高效的非交互式无收据普遍可验证的电子投票方案。在这个方案中,选民不能证明他们的投票内容,从而防止了投票买卖。投票中心在收到带有有效性证明和签名的加密投票后,可以随机化密文以及相应的证明和签名,同时保持普遍可验证性。由于加密方案的语义安全性,随机化后的密文是不可链接的,因此两个由同一选民签署的有效加密投票是不可链接的,选民无法证明他们的投票内容。
盲签名方案
我们的原语还产生了一个基于标准假设的高效轮次最优盲签名方案,特别是对于经典的 Waters 签名。与其他方案不同,我们的方案中用户可以提取消息上的签名,并且通过简单地随机化签名来实现不可链接性,而不需要像其他方案那样进行知识证明。因此,盲签名与底层签名具有相同的格式,除了轮次最优外,还很短。
线性代数零知识论证与可随机化密文签名的综合分析
线性代数零知识论证的优势与挑战
线性代数中的零知识论证在多个方面展现出了明显的优势。从轮次效率来看,通过一般变换,将原本 5 轮的 SHVZK 论证简化为 3 轮论证,如在 z = ∑mi=1 xiYi 和 z = ∑mi=1 xi ∗yi 的论证中,显著减少了通信轮次,提高了效率。这对于需要快速验证的场景,如实时交易验证等,具有重要意义。
在完整性和安全性方面,简化后的论证具有完美的完整性、完美的 SHVZK 和见证扩展仿真。这意味着验证者可以确信证明者拥有正确的知识,同时又不会泄露证明者的具体信息,保障了信息的隐私性。
然而,线性代数零知识论证也面临一些挑战。从复杂度分析来看,证明者和验证者的计算开销仍然较大。证明者需要进行大量的群指数运算和域乘法,即使使用多指数运算技术,计算量仍然不容忽视。验证者在验证过程中也需要进行一定数量的群乘法运算,这可能会影响验证的速度。此外,通信开销虽然在某些情况下与其他方案相似,但在 z = ∑mi=1 xiy⊤i 的情况下,通信和计算开销是其他方案的四倍,这在资源受限的环境中可能会成为一个问题。
可随机化密文签名的创新性与局限性
可随机化密文签名是一种创新性的密码学原语,它结合了可随机化加密和签名的特性,为电子投票和盲签名等应用提供了新的解决方案。
在电子投票方案中,可随机化密文签名的应用解决了选民投票隐私和普遍可验证性之间的矛盾。投票中心可以随机化密文并调整签名和证明,使得选民无法证明他们的投票内容,防止了投票买卖,同时保持了投票结果的普遍可验证性。
在盲签名场景中,可随机化密文签名通过随机化签名实现了不可链接性,避免了签名者识别签名并破坏盲性。与其他盲签名方案相比,我们的方案中盲签名与底层签名具有相同的格式,除了轮次最优外,还更短,提高了签名的效率和实用性。
然而,可随机化密文签名也存在一定的局限性。由于其不可伪造性是一个较弱的概念,对手虽然不能对新消息的加密生成签名,但仍然可以对已知签名的加密消息进行操作。这在某些对安全性要求极高的场景中可能需要进一步的改进。此外,实例化过程中依赖的假设,如决策线性假设 (DLin) 和 CDH + 假设,虽然是相对较弱的假设,但仍然需要在实际应用中进行充分的评估和验证。
两者结合的潜在应用与发展趋势
线性代数零知识论证和可随机化密文签名的结合具有广阔的潜在应用前景。在电子政务、金融交易等领域,需要同时保障信息的隐私性和交易的可验证性。线性代数零知识论证可以用于证明交易的合法性,而可随机化密文签名可以用于保护交易双方的身份信息和交易内容。
未来的发展趋势可能包括进一步优化论证和签名的复杂度,降低计算和通信开销。例如,探索更高效的多指数运算技术和批量验证技术,以减少证明者和验证者的计算负担。同时,研究如何在更弱的假设下实现可随机化密文签名的安全性,提高其在不同环境下的适用性。
此外,随着量子计算技术的发展,传统的密码学方案可能面临挑战。未来可能需要研究基于量子抗性的线性代数零知识论证和可随机化密文签名方案,以保障信息的安全性。
总结与展望
线性代数零知识论证和可随机化密文签名是密码学领域的重要研究成果,它们分别在不同的应用场景中展现出了独特的优势。线性代数零知识论证通过简化轮次和保障安全性,提高了验证的效率和隐私性;可随机化密文签名通过结合可随机化加密和签名,解决了电子投票和盲签名等应用中的关键问题。
两者的结合为信息安全和隐私保护提供了更强大的工具。在未来的研究中,我们需要不断优化这些方案的性能,降低复杂度,提高安全性,以适应不断变化的应用需求。同时,我们也需要关注新兴技术对密码学的影响,提前做好应对准备,确保信息安全领域的持续发展。
以下是一个简单的 mermaid 流程图,展示了线性代数零知识论证和可随机化密文签名在电子交易中的应用流程:
graph LR
A[用户发起交易] --> B[使用线性代数零知识论证证明交易合法性]
B --> C[对交易信息进行可随机化加密]
C --> D[生成可随机化密文签名]
D --> E[发送密文和签名到验证方]
E --> F[验证方使用线性代数零知识论证验证合法性]
F --> G[验证可随机化密文签名]
G --> H[验证通过,完成交易]
通过以上的分析和总结,我们可以看到线性代数零知识论证和可随机化密文签名在信息安全领域具有重要的价值和广阔的发展前景。我们期待这些技术在未来能够得到更广泛的应用和进一步的发展。
超级会员免费看
9

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



