27、基于单个伪随机函数的超级伪随机置换构造

基于单个伪随机函数的超级伪随机置换构造

上半部分

在密码学领域,伪随机置换生成器的研究一直是一个重要的方向。本文将围绕如何从单个伪随机函数构造超级伪随机置换展开,介绍相关的概念、定理以及不同构造方式的性质。

1. 相关概念定义
  • 迭代DES方案 :(\$(J_1, \cdots, J_k))实际上是一个(k)次迭代的DES方案,其中S盒被函数(f_1, \cdots, f_k)所取代。
  • 置换的“扩展” :设(\sigma)是(I_n)的一个置换,(\sigma)的“扩展”是满足以下条件的最小整数(\lambda):对于所有(L \in I_n),方程(x \oplus \sigma(x) = L)在(I_n)中最多有(\lambda)个解。

下面通过具体例子来理解“扩展”的概念:
| 置换函数 | 扩展值(\lambda) | 原因 |
| ---- | ---- | ---- |
| 恒等函数 | (2^n) | 当(L = 0)时,方程(x \oplus x = L)有(2^n)个解 |
| 单比特旋转函数 | (2) | 对于所有(L \in I_n),方程(x \oplus \sigma(x) = L)最多有两个解,当(L = 0)时恰好有两个解 |

值得注意的是,存在一些置换的(\lambda = 1),这种置换被称为“完全映射”。

2. 重要定理

基于“扩展”的概念,有以下两个重要定理:
- 定理3.1 :设(\sigma = (\sigma(n))_{n \in \mathbb{N}})是一个置换序列,(\sigma_n \in B_n),(\lambda_n)是(\sigma_n)的扩展。如果对于所有多项式(P(n)),(\lambda_n / 2^n \to 0),那么(\$(f, f, f \circ \sigma \circ f))是一个伪随机函数生成器,其中(f)是单个伪随机函数。
- 定理3.2 :在相同的符号和条件下,(\$(f, f, f, f \circ \sigma \circ f))是一个超级伪随机函数生成器。

这两个定理解决了关于伪随机置换生成器的两个开放问题。例如,当(\sigma)是单比特旋转函数时,(\lambda_n = 2),根据定理3.2,我们可以仅使用一个伪随机函数(f)构造出超级伪随机置换生成器。

3. 定理证明思路

为了证明定理3.1和定理3.2,我们需要先证明一些基本性质。

  • (\$(f, f, f \circ \sigma \circ f))的基本性质
    • 定理4.1 :设(\sigma)是(I_n)的一个置换,(\lambda)是(\sigma)的扩展,([L_i, R_i])((1 \leq i \leq m))是(I_n)中(m)个不同元素的序列,([S_i, T_i])((1 \leq i \leq m))是(I_{2n})中(m)个不同元素的序列。那么满足(\forall i, 1 \leq i \leq m, \$(f, f, f \circ \sigma \circ f)[L_i, R_i] = [S_i, T_i])的函数(f \in F_n)的数量(H)可以通过组合评估得到。该定理的完整证明可在相关文献中找到。
  • (\$(f, f, f \circ \sigma \circ f))的伪随机性
    设(\phi)是一个区分电路,(P_1)是当(f)是从(F_n)中随机选择的函数,且(F = \$(f, f, f \circ \sigma \circ f))时,(\phi(F) = 1)的概率;(P_1’)是当(F)是从(F_{2n})中随机选择的函数时,(\phi(F) = 1)的概率。
    • 定理5.1 :对于每个具有(m)个预言门的区分电路(\phi),有(\vert P_1 - P_1’ \vert \leq \frac{6.5m^2}{\lambda 2^n} + \frac{m(m - 1)}{2 \cdot 2^n})。定理3.1是定理5.1的一个简单推论。

下面是证明(\$(f, f, f \circ \sigma \circ f))伪随机性的流程:

graph TD;
    A[定义区分电路\(\phi\)和概率\(P_1\)、\(P_1'\)] --> B[证明定理4.1];
    B --> C[根据定理4.1证明定理5.1];
    C --> D[得出\(\$(f, f, f \circ \sigma \circ f)\)是伪随机的结论];

通过以上步骤,我们可以看到如何从基本性质逐步证明(\$(f, f, f \circ \sigma \circ f))的伪随机性。在实际应用中,选择合适的置换(\sigma)对于构造有效的伪随机置换生成器至关重要。

下半部分
4. (\$(f, f, f, f \circ \sigma \circ f))的超级伪随机性

证明定理3.2的思路与定理3.1类似,同样需要先证明一个基本性质。

  • (\$(f, f, f, f \circ \sigma \circ f))的基本性质
    • 定理6.1 :设(\sigma)是(I_n)的一个置换,(\lambda)是(\sigma)的扩展,([L_i, R_i])((1 \leq i \leq m))是(I_n)中(m)个不同元素的序列,([S_i, T_i])((1 \leq i \leq m))是(I_{2n})中(m)个不同元素的序列。那么满足(\forall i, 1 \leq i \leq m, \$(f, f, f, f \circ \sigma \circ f)[L_i, R_i] = [S_i, T_i])的函数(f \in F_n)的数量(H)可以通过组合评估得到。该定理的完整证明可在相关文献中找到。
  • (\$(f, f, f, f \circ \sigma \circ f))的超级伪随机性
    设(\phi)是一个超级区分电路(具有正常和逆预言门),(P_1)是当(f)是从(F_n)中随机选择的函数,且(F = \$(f, f, f, f \circ \sigma \circ f))时,(\phi(F) = 1)的概率;(P_1^*)是当(F)是从(B_{2n})中随机选择的函数时,(\phi(F) = 1)的概率。
    • 定理7.1 :对于每个具有(m)个预言门的超级区分电路(\phi),有(\vert P_1 - P_1^* \vert \leq \frac{10.5m^2}{\lambda 2^n} + \frac{\lambda m}{2^n} + \frac{m(m - 1)}{2 \cdot 2^n})。定理3.2是定理7.1的一个简单推论。

需要注意的是,如果(\sigma)是恒等函数,(\lambda = 2^n),此时定理3.2不能得出(\$(f, f, f, f))是超级伪随机的结论,实际上可以证明(\$(f, f, f, f))不是超级伪随机的。

下面是证明(\$(f, f, f, f \circ \sigma \circ f))超级伪随机性的流程:

graph TD;
    A[定义超级区分电路\(\phi\)和概率\(P_1\)、\(P_1^*\)] --> B[证明定理6.1];
    B --> C[根据定理6.1证明定理7.1];
    C --> D[得出\(\$(f, f, f, f \circ \sigma \circ f)\)是超级伪随机的结论];
5. 两个函数的生成器性质

除了基于单个伪随机函数的构造,我们还可以研究使用两个独立伪随机函数(f)和(g)的生成器的性质。

生成器 伪随机性 超级伪随机性 原因
(\$(f, f, g))和(\$(f, g, g)) 只有三轮DES-like置换
(\$(f, g, f)) 该置换在交换输入和输出的左右半部分时是自身的逆
(\$(f, f, f, g))和(\$(f, g, g, g)) -
(\$(f, f, g, g)) -
(\$(f, g, g, f)) 该置换在交换左右半部分时是自身的逆
(\$(f, g, f, g)) -
(\$(f, f, g, f))和(\$(f, g, f, f)) -

根据这些结果,我们可以判断一些文献中声称的结果是错误的。例如,某文献中的“推论1”声称:设((f_1, \cdots, f_n))是(F_n)中的函数,(G_1 = \$(f_1, \cdots, f_n))是一个伪随机置换,那么(G_1)是超级伪随机的当且仅当(G_2 = \$(f_1, \cdots, f_{n - 1}))和(G_3 = \$(f_1, \cdots, f_{n - 2}))是伪随机置换。但我们可以看到(\$(f, f, f, g))是超级伪随机的,而(\$(f, f, f))不是伪随机的,这与该推论矛盾。

6. 总结

本文主要介绍了如何从单个伪随机函数构造超级伪随机置换生成器。通过引入“扩展”的概念,我们证明了相关的定理,表明在合适的置换选择下,(\$(f, f, f \circ \sigma \circ f))和(\$(f, f, f, f \circ \sigma \circ f))分别是伪随机和超级伪随机的。同时,我们还研究了使用两个独立伪随机函数的生成器的性质,指出了一些文献中结果的错误。这种基于单个伪随机函数的构造方式具有重要的实际意义,因为它可以减少密钥长度,提高密码系统的效率。在实际应用中,我们可以根据具体需求选择合适的构造方式,以满足不同的安全要求。

基于单个伪随机函数的超级伪随机置换构造

下半部分
4. (\$(f, f, f, f \circ \sigma \circ f))的超级伪随机性

证明定理3.2的思路与定理3.1类似,同样需要先证明一个基本性质。

  • (\$(f, f, f, f \circ \sigma \circ f))的基本性质
    • 定理6.1 :设(\sigma)是(I_n)的一个置换,(\lambda)是(\sigma)的扩展,([L_i, R_i])((1 \leq i \leq m))是(I_n)中(m)个不同元素的序列,([S_i, T_i])((1 \leq i \leq m))是(I_{2n})中(m)个不同元素的序列。那么满足(\forall i, 1 \leq i \leq m, \$(f, f, f, f \circ \sigma \circ f)[L_i, R_i] = [S_i, T_i])的函数(f \in F_n)的数量(H)可以通过组合评估得到。该定理的完整证明可在相关文献中找到。
  • (\$(f, f, f, f \circ \sigma \circ f))的超级伪随机性
    设(\phi)是一个超级区分电路(具有正常和逆预言门),(P_1)是当(f)是从(F_n)中随机选择的函数,且(F = \$(f, f, f, f \circ \sigma \circ f))时,(\phi(F) = 1)的概率;(P_1^*)是当(F)是从(B_{2n})中随机选择的函数时,(\phi(F) = 1)的概率。
    • 定理7.1 :对于每个具有(m)个预言门的超级区分电路(\phi),有(\vert P_1 - P_1^* \vert \leq \frac{10.5m^2}{\lambda 2^n} + \frac{\lambda m}{2^n} + \frac{m(m - 1)}{2 \cdot 2^n})。定理3.2是定理7.1的一个简单推论。

需要注意的是,如果(\sigma)是恒等函数,(\lambda = 2^n),此时定理3.2不能得出(\$(f, f, f, f))是超级伪随机的结论,实际上可以证明(\$(f, f, f, f))不是超级伪随机的。

下面是证明(\$(f, f, f, f \circ \sigma \circ f))超级伪随机性的流程:

graph TD;
    A[定义超级区分电路\(\phi\)和概率\(P_1\)、\(P_1^*\)] --> B[证明定理6.1];
    B --> C[根据定理6.1证明定理7.1];
    C --> D[得出\(\$(f, f, f, f \circ \sigma \circ f)\)是超级伪随机的结论];
5. 两个函数的生成器性质

除了基于单个伪随机函数的构造,我们还可以研究使用两个独立伪随机函数(f)和(g)的生成器的性质。

生成器 伪随机性 超级伪随机性 原因
(\$(f, f, g))和(\$(f, g, g)) 只有三轮DES-like置换
(\$(f, g, f)) 该置换在交换输入和输出的左右半部分时是自身的逆
(\$(f, f, f, g))和(\$(f, g, g, g)) -
(\$(f, f, g, g)) -
(\$(f, g, g, f)) 该置换在交换左右半部分时是自身的逆
(\$(f, g, f, g)) -
(\$(f, f, g, f))和(\$(f, g, f, f)) -

根据这些结果,我们可以判断一些文献中声称的结果是错误的。例如,某文献中的“推论1”声称:设((f_1, \cdots, f_n))是(F_n)中的函数,(G_1 = \$(f_1, \cdots, f_n))是一个伪随机置换,那么(G_1)是超级伪随机的当且仅当(G_2 = \$(f_1, \cdots, f_{n - 1}))和(G_3 = \$(f_1, \cdots, f_{n - 2}))是伪随机置换。但我们可以看到(\$(f, f, f, g))是超级伪随机的,而(\$(f, f, f))不是伪随机的,这与该推论矛盾。

6. 总结

本文主要围绕如何从单个伪随机函数构造超级伪随机置换生成器展开研究,具体内容总结如下:
- 核心概念引入 :引入了“扩展”的概念,它对于理解和证明后续定理起到了关键作用。通过不同置换函数的例子,如恒等函数和单比特旋转函数,我们清晰地看到了“扩展”值的差异以及其对置换性质的影响。
- 重要定理证明 :基于“扩展”概念,证明了两个重要定理。定理3.1表明在合适的置换选择下,(\$(f, f, f \circ \sigma \circ f))是伪随机的;定理3.2则进一步证明了(\$(f, f, f, f \circ \sigma \circ f))是超级伪随机的。证明过程中,先证明了相关的基本性质,再逐步推导得出最终结论,逻辑严谨。
- 多函数生成器研究 :研究了使用两个独立伪随机函数(f)和(g)的生成器的性质,通过表格清晰地展示了不同生成器的伪随机性和超级伪随机性情况,并指出了一些文献中结果的错误。

这种基于单个伪随机函数的构造方式具有重要的实际意义,因为它可以减少密钥长度,提高密码系统的效率。在实际应用中,我们可以根据具体需求选择合适的构造方式,以满足不同的安全要求。例如,如果对安全性要求较高且希望减少密钥管理的复杂度,可以选择基于单个伪随机函数的构造;如果对性能和随机性有不同的权衡需求,可以考虑使用两个伪随机函数的生成器组合。

以下是一个简单的决策流程图,帮助我们根据不同需求选择合适的构造方式:

graph LR;
    A[需求分析] --> B{安全性要求高且减少密钥管理复杂度?};
    B -- 是 --> C[选择基于单个伪随机函数的构造];
    B -- 否 --> D{对性能和随机性有不同权衡需求?};
    D -- 是 --> E[考虑使用两个伪随机函数的生成器组合];
    D -- 否 --> F[重新评估需求];

总之,通过对这些构造方式和性质的研究,我们能够更好地设计和应用密码系统,为信息安全提供更可靠的保障。

考虑可再生能源出力不确定性的商业园区用户需求响应策略(Matlab代码实现)内容概要:本文围绕“考虑可再生能源出力不确定性的商业园区用户需求响应策略”展开,结合Matlab代码实现,研究在可再生能源(如风电、光伏)出力具有不确定性的背景下,商业园区如何制定有效的需求响应策略以优化能源调度和提升系统经济性。文中可能涉及不确定性建模(如场景生成与缩减)、优化模型构建(如随机规划、鲁棒优化)以及需求响应机制设计(如价格型、激励型),并通过Matlab仿真验证所提策略的有效性。此外,文档还列举了大量相关的电力系统、综合能源系统优化调度案例与代码资源,涵盖微电网调度、储能配置、负荷预测等多个方向,形成一个完整的科研支持体系。; 适合人群:具备一定电力系统、优化理论和Matlab编程基础的研究生、科研人员及从事能源系统规划与运行的工程技术人员。; 使用场景及目标:①学习如何建模可再生能源的不确定性并应用于需求响应优化;②掌握使用Matlab进行商业园区能源系统仿真与优化调度的方法;③复现论文结果或开展相关课题研究,提升科研效率与创新能力。; 阅读建议:建议结合文中提供的Matlab代码实例,逐步理解模型构建与求解过程,重点关注不确定性处理方法与需求响应机制的设计逻辑,同时可参考文档中列出的其他资源进行扩展学习与交叉验证。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值