对称加密算法和非对称加密算法

        比如说我们去银行存钱取钱,用到密码,密码是基于数学的,我们来讨论下关于密码学的问题:
        有一种加密算法叫做对称加密,对称加密是以前比较常见的一种加密方式。所谓对称加密的意思是说假如有一个人A,他想把一个信号m传递给B,他不能直接将这个信息传递给B,否则会有人可能会窃听。于是通过一些算法,比如通过加一个数字e变成了一个新的数字C,他把C传递给B,B接收到C之后再减去那个e就会得到原来的数字m。

对称加密算法和非对称加密算法


       比如想要传递2  e=1 2+1=3    B接收到3之后3-1=2    ,于是我们就知道m了
在这个过程中,我们将

  • m称为明文,就是我们希望表达的含义
  • C我们称之为密文,就是我们可以公开传递的一个信息
  • e就是**,**是要保密的,我们不可以告诉其他人

        算法其实可以比较复杂,不一定是加一个数字,他可能是m乘以e得到一个数字得到C,我们得到C之后可以除以e。也可以是m的e次方,得到一个数字,我们再开e次根号就可以了。算法可以非常复杂,但是再复杂也存在被窃听的可能,因为可以穷举,比如他一次又一次的尝试以前的算法,他还可以通过数字的频率,比如在英文的26个字母中,在一段话中出现的频率不一样,他只要截取到足够多的密文,一次又一次的尝试,他就可以把你的**给试出来,所以**是不保险的。

        于是人们就想能不能我们发一段文字之后就换一个**。再发一段文字,我再换一个**,这样别人就不知道我说的是什么了。但是问题是**的分发又成为了一个问题,你怎么才可以把这个e安全的传给B,你派一个人去传这样 的效率很低,你打电话给B,B有可能会被监听。所以**分发是一件非常麻烦的事情,那么现在的量子保密通信就可以实现**分发的保密性。

        那么除了这种对称加密以外,现在比较流行的一种算法叫做非对称加密。A想把一个信息m传递给B。首先B先干这么一件事情。B生成两个有相互关系的数字,这两个有相关性的数字,一个叫做e,一个叫做d。那么这个e就叫做公钥,公共的钥匙,而这个d就叫做私钥,私人的钥匙。然后B先把这个e公钥传递给A,可以通过公开的方式传递,这样的话我不怕你窃听。我告诉你公钥是什么,然后这个A通过这种公钥e的某一个算法得到一个密文C。然后再通过公开的方式将这个密文传递给B,那么这个不对称性就体现在这个地方了。通过密文求解原文的过程,不是减去e,而是要减去d,通过减去一个d我们就可以得到明文m。也就是说,这个d和e是有一定的关系的,我经过加密的时候,我是用的e对数字进行加密,我解密的时候呢,需要用到d数字进行解密
        我传递公钥的过程的我不怕你窃听。因为就算是你窃听了,你也不会知道这个**是什么。所以你窃听了我的公钥和密文之后,你依然无法得到明文,这个就是非对称加密的方式。

对称加密算法和非对称加密算法

        那么非对称加密是基于什么样的一个数学原理呢?我们接下来的时间会来介绍一种典型的非对称加密方式,叫做RSA加密算法。敬请期待!

        撒花✿✿ヽ(°▽°)ノ✿!!!