浅谈RSA非对称加密算法

1.对称加密的弊端

  首先要说的就是对称加密与非对称加密的概念,什么是对称加密?
对称加密就是密文的发送者与接收者拥有的解**匙是相同的。假设,徐家辉需要给他的部长发送一个很重要的文字,但是他不希望别人知道这是什么意思,嘻嘻,因为其中可能包含不可告人的秘密,那么怎么办?他想了这么一个办法:那天中午他屁颠屁颠跑去告诉他部长,我晚上需要·给你发送消息,然后经过加密了,我的密文你只需要减去250就是解密过程了。好,在这期间他两都知道了解密方式,那么徐家辉发送了770,他的部长接收。哦哦,原来是这个意思啊。简述一下过程:在他发送密文并且加密的过程我们都看到了,他两是同时拥有私钥的,而且这个私钥是同一个东西,第一他们需要首先商量秘钥,虽然加密解密过程容易理解,但是也体现了两个弊端:

  1. 秘钥需要事先商量。麻烦
  2. 秘钥只有一个,安全度不够高。

2.RSA非对称加密原理

那么解决办法来了:徐家辉动了歪脑筋,
MemodN=c M^{e} mod N =c
cdmodN=M c^{d} mod N =M
  他先给部长扔给一个一个打开的锁,然后部长将他发送的内容加锁,然后发送再由徐家辉解锁,由于加密的过程使用公钥,解密过程使用私钥,私钥并没有在传输过程中进入网络,这样是不是就很安全?而且加密过程使用了公钥传输,解锁私钥非常容易,但是没有私钥解锁却非常困难。好了,说到这里就基本有了RSA非对称加密的模型了。那么照样例子来实现。
浅谈RSA非对称加密算法
图中M就是待加密的信息,徐家辉先将公式传给部长,然后部长放入M返回c,然后徐家辉通过私钥解密。好啦,就是这么一个过程了。

3.生成私钥与公钥