0%

【密码学】RSA密码体制(一)

0x00 关于公钥密码学

公钥密码体制 VS 对称密码体制

之前学到的加密方案(如AES、DES)均属于对称密码体制,也就是说加密过程与解密过程使用的是同一个密钥\(K\)。这样的特性使得对称密码体制在使用中存在一定的不便与漏洞:Alice(加密者)与Bob(解密者)必须在使用密钥前通过一种保险的手段就密钥\(K\)达成共识。如果共识协商的过程不够安全,就可能会导致密钥\(K\)泄露,进而导致后续的加密信息泄露。而且这里存在一个悖论:如果我们可以找到一种绝对安全的传递密钥\(K\)的方法,为什么不可以仅通过这种方法来传递所有要加密的消息呢?

对于对称密码体制中存在的安全问题,公钥密码体制的想法是:也许可以找到一个密码体制,使得由给定的\(e_k\)\(d_k\)是计算不可行的。这样的话,加密规则\(e_k\)是一个公开的密钥(公钥),Alice无需通过事先与Bob协商即可将消息加密发送给Bob,而唯一拥有解密规则\(d_k\)的Bob是唯一可以解密消息的人。这样就避免了对称密码体制中由提前协商带来的安全问题。

我们应该注意到的是,公钥密码体制得以安全运行的前提是由给定的\(e_k\)\(d_k\)是计算不可行的,而事实上包括RSA在内的公钥密码都不能做到这一点,它们的安全性源于在有限的时间内,使用有限的计算资源,由给定的\(e_k\)\(d_k\)是计算困难的。 也就是说,公钥密码体制无法提供无条件安全性

扯的有点多,浪费了不少时间

公钥密码体制 -> 陷门单向函数

把公钥密码体制抽象为一种陷门单向函数。

  • 单向函数:一个函数容易计算但难于求逆。
  • 陷门:包含容易求出逆函数的秘密信息。
  • 陷门单向函数:一个单向函数,但在具有特定陷门的知识后容易求逆。