单向函数与基本假设
1. 单向函数概述
单向函数在非对称密码学中起着关键作用。简单来说,单向函数是一个映射 $f : X \to Y$,它易于计算,但难以求逆,即不存在高效算法来计算 $y \in Y$ 的原像。
如果要直接使用单向函数 $f$ 进行加密(如在 RSA 加密中对明文应用 $f$),那么 $f$ 必须属于一类特殊的单向函数,即陷门函数。陷门函数在知道某些信息(“陷门信息”,例如 RSA 方案中模数 $n$ 的因子分解)时容易求逆,而只有在陷门信息保密时才是单向的。
之前对单向函数的定义比较模糊,现在我们将精确界定这些术语。例如,“高效可计算”意味着可以通过概率多项式算法来计算解。
我们详细讨论三个例子:离散指数函数、模幂运算和模平方运算。离散指数函数不是陷门函数,但在密码学中有重要应用,如伪随机比特生成器、ElGamal 加密和签名方案以及数字签名算法(DSA)。
遗憾的是,没有证据证明这些函数确实是单向的,但可以精确陈述保证其单向性的基本假设,并且这些假设被广泛认为是正确的。为了定义单向性,我们不仅要考虑单个函数,更要考虑定义在适当索引集上的函数族。
2. 概率的表示法
对于布尔谓词 $B : X \to {0, 1}$,我们有记法 $prob(B(x) = 1 : x \leftarrow X) := prob({x \in X | B(x) = 1})$,它直观地表示当 $x$ 从 $X$ 中随机选取时,$B(x) = 1$ 的概率。我们将对概率算法使用类似的记法。
设 $A$ 是一个输入来自 $X$ 且输出在 $Y$ 中的概率算法,$B : X \time
超级会员免费看
订阅专栏 解锁全文
823

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



