词条 | 单向陷门函数 |
释义 | 定义单向陷门函数是有一个陷门的一类特殊单向函数。它首先是一个单向函数,在一个方向上易于计算而反方向却难于计算。但是,如果知道那个秘密陷门,则也能很容易在另一个方向计算这个函数。即已知x,易于计算f(x),而已知f(x),却难于计算x。然而,一旦给出f(x)和一些秘密信息y,就很容易计算x。在公开密钥密码中,计算f(x)相当于加密,陷门y相当于私有密钥,而利用陷门y求f(x)中的x则相当于解密。 详解1976年,美国学者Diffie和Hellman为解决密钥的分发与管理问题发表了著名论文《密码学的新方向》New Direction in Cryptography,提出一种密钥交换协议,允许在不安全的媒体上通过通讯双方交换信息,安全地传送秘密密钥,并提出了建立“公开密钥密码体制”(Public Key)的新概念。这篇文章中提出的公钥密码的思想:若每一个用户A有一个加密密钥ka,不同于解秘密钥ka’,加密密钥ka公开,ka’保密,当然要求ka的公开不至于影响ka’的安全。若B要向A保密送去明文m,可查A的公开密钥ka,若用ka加密得密文c,A收到c后,用只有A自己才掌握的解密密钥ka’对x进行解密得到m。当时他们还没有实现这种体制的具体算法。公开密钥密码基于单向陷门函数。 所谓单向函数,人们认为有许多函数正向计算上是容易的,但其求逆计算在计算上是不可行的,也就是很难从输出推算出它的输入。即已知x,我们很容易计算f(x)。但已知f(x),却难于计算出x。 在物质世界中,这样的例子是很普遍的,如将挤出的牙膏弄回管子里要比把牙膏挤出来困难得多;燃烧一张纸要比使它从灰烬中再生容易得多;把盘子打碎成数千片碎片很容易,把所有这些碎片再拼成为一个完整的盘子则很难。类似地,将许多大素数相乘要比将其乘积因式分解容易得多。数学上有很多函数看起来和感觉像单向函数,我们能够有效地计算它们,但我们至今未找到有效的求逆算法。我们把离散对数函数、RSA函数作为单向函数来使用,但是,目前还没有严格的数学证明表明所谓这些单向函数真正难以求逆,即单向函数是否存在还是未知的。 在密码学中最常用的单向函数有两类,一是公开密钥密码中使用的单向陷门函数、二是消息摘要中使用的单向散列函数。 单向函数不能用作加密。因为用单向函数加密的信息是无人能解开它的。但我们可以利用具有陷门信息的单向函数构造公开密钥密码。 |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。