密码学灵活性及其与循环加密的关系
1. 预备知识
在深入探讨密码学灵活性之前,我们需要了解一些基本的符号、约定和概念。
- 符号与约定 :
- 若 (x) 是字符串,(\vert x\vert) 表示其长度;若 (S) 是集合,(\vert S\vert) 表示其大小。空字符串用 (\varepsilon) 表示。
- 若 (a = (a_1, \ldots, a_n)),则 ((a_1, \ldots, a_n) \leftarrow a) 表示按此形式解析 (a)。
- 除非另有说明,算法可以是随机化的。“PT” 代表 “多项式时间”。
- (y \leftarrow A(x_1, x_2, \ldots; r)) 表示在输入 (x_1, x_2, \ldots) 和随机数 (r \in {0, 1}^ ) 上运行算法 (A)。(y \overset{\$}{\leftarrow} A(x_1, x_2, \ldots)) 表示随机选取 (r) 并运行 (A)。([A(x_1, x_2, \ldots)]) 表示 (A) 在输入 (x_1, x_2, \ldots) 上的所有可能输出的集合。
- 游戏 :我们使用基于代码的游戏语言来定义和证明。一个游戏通常包含(可选的)初始化过程、响应敌手预言机查询的过程和最终化过程。以游戏 (G) 和敌手 (A) 为例,其执行过程如下:
1. 若有初始化过程,则先执行,其输出作为 (A) 的输入。
2. (A) 执行,其预言机查询由 (G) 的相应过程回答。
3. (A) 终止后,其输出作为最终化过程
超级会员免费看
订阅专栏 解锁全文
1100

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



